資料介紹
描述
您的 Arduino 項目需要快速且廉價的激光測距儀模塊嗎?
當(dāng)然,你可以使用專門的模塊來完成這項任務(wù),但它們中的大多數(shù)價格都很高。VL53L0X/VL53L1X 模塊價格便宜,但視野非常大。
所以我找到了一個解決方案:使用便宜的“X-40”激光卷尺作為激光測距儀。這些設(shè)備的成本為 20 美元或更低,它們可以測量距離高達 40m,精度約為 3mm。但是有兩個問題 - 無法從磁帶上獲取讀數(shù)并且測量速度很慢 - 低于 1 Hz。
為了解決這個問題,我對該激光卷尺進行了逆向工程,并為激光測距儀模塊的 STM32 MCU 編寫了自己的固件。測量速度對我來說很重要,我可以達到 ~60 Hz,但最大穩(wěn)定距離降低到 ~6 m(最大范圍為 37 m,但我沒有測試)。
距離測量精度可以從 1 毫米到 10 毫米不等,具體取決于目標(biāo)顏色和距離。
模塊尺寸:25x13x50 毫米。
重要通知:您將丟失原始固件,因此該設(shè)備以后不能用作激光卷尺!
請注意,“X-40”激光卷尺可以有不同版本的激光測距儀模塊,我的固件只支持其中的一部分!
“X-40”并不是帶有此類模塊的激光卷尺的唯一名稱 - 我知道存在幾種不同的帶有合適模塊的中國激光卷尺。
第 1 步:拆卸激光卷尺
讓我們拆開激光卷尺,從中得到一個激光測距儀模塊。
您需要從外殼上擰下 7 個螺絲:
拆卸的激光卷尺:
您可以在設(shè)備外殼內(nèi)看到小型激光測距儀模塊。您需要從模塊上斷開帶狀電纜并從外殼中取出模塊:
請注意,模塊標(biāo)記為“701A”。我的固件只支持“512A”和“701A”模塊版本。一些用戶確認(rèn)“703A”模塊也可以工作(我沒有測試過)。
UPD 11/2019:
注意:發(fā)現(xiàn)較新的“x-40”激光卷尺帶有“M88B”模塊。在 MCU 附近的 PCB 上標(biāo)記為“88B”。該模塊基于 STM32F0 MCU(它具有 QFN-32 封裝)。我的固件不支持這些模塊!
UPD 10/2021:
注意:增加了對 U85 模塊的支持:見鏈接!它們用于現(xiàn)代類型的激光卷尺。
如果支持您的模塊,則需要從模塊上拆下電源線。
第 2 步:對激光測距儀模塊進行編程
您需要將專用固件寫入模塊的 MCU 以獲得所需的功能。
1. 首先,您需要焊接一些用于對 MCU 進行編程的電線。引腳排列如圖所示:
連接鍵盤連接器的針腳 7-8 - 需要通電。
線“GND”和“Vbat”必須連接到電源。電源電壓范圍為+2.7...+3.3V。為模塊供電時,“Vdd”線必須有 +3.5 V。
“GND”、“SWDIO”、“SWCLK”、“NRST”線必須連接到 ST-LINK 編程器。“NRST”線很重要——MCU的原始固件被鎖定,所以進入MCU進入編程模式需要這條線。
有些程序員有這條線,有些(便宜的)沒有,但是有一個解決這個問題的方法。
另外,有些編程器(如原來的“ ST-LINK/V2 ”)需要“Vbat”線與編程器的“VCC/TVCC”線相連。
連接示例(此程序員沒有“NRST”行):
2. 將“ST-LINK 實用程序”安裝到 PC。如果您沒有使用該軟件的經(jīng)驗,網(wǎng)上有很多教程。
您需要配置實用程序(目標(biāo) -> 設(shè)置):
如果您的編程器有“NRST”輸出,您只需打開電源并在實用程序中按“Target -> Connect”即可。
如果它沒有這樣的行,您需要執(zhí)行以下步驟:
- 打開電源。
- 將模塊的“NRST”線連接到 GND。
- 在實用程序中按“目標(biāo) -> 連接”。
- 快速斷開“NRST”線與 GND 的連接。
- 實用程序必須顯示連接
Yon 必須得到這樣的圖片:
3. MCU flash 被鎖定讀取,所以需要關(guān)閉“Read Out Protection”。在這一步您將丟失原始固件!
打開目標(biāo)->“選項字節(jié)”菜單。必須有這樣的設(shè)置:
將“讀出保護”切換為“禁用”,然后按“取消全選”按鈕,然后按“應(yīng)用”按鈕。嘗試重新啟動模塊(通過斷開電源)。
按目標(biāo) -> 連接。日志窗口中必須有關(guān)于成功連接的信息,并且您必須看到內(nèi)存內(nèi)容 - 用 0xFF 填充。現(xiàn)在您可以將自定義固件加載到 MCU。
4.需要的固件放在這里:https ://github.com/iliasam/Laser_tape_reverse_engineering/tree/master/Code/Firmware_dist_calculation_fast
為您的模塊選擇合適的 HEX 文件并使用“ST-LINK 實用程序”將其下載到 MCU Flash。
第 3 步:將激光測距儀模塊連接到 Arduino
您需要將電線或一些連接器焊接到板上的 TX 焊盤:
請參見下面的連接示意圖。
首先,您需要檢查測距儀模塊是否正常工作。在這一步您不需要將OLED顯示器連接到Arduino - 只需將激光測距儀模塊的TX線連接到Arduino的TX線,并將模塊的電源線連接到+ 3V電源。
創(chuàng)建空草圖并將其加載到 Arduino。在 Arduino IDE 中打開“串行監(jiān)視器”。選擇波特率:250000
如果測距儀模塊工作正常,您將獲得相同的數(shù)據(jù):
DIST;01937;AMP;0342;TEMP;1223;VOLT;115 DIST;01937;AMP;0343;TEMP;1223;VOLT;115 DIST;01938;AMP;0343;TEMP;1223;VOLT;115 DIST;01938;AMP ;0343;溫度;1223;伏特;115
事實上,這個測試最好使用專門的 USB-UART 轉(zhuǎn)換器。在其實用程序中選擇 256000 波特率(它是 x-40 MCU 的真實波特率)。
其次,您需要將完整的原理圖與顯示器組裝在一起。
將激光測距儀模塊的 TX 線連接到 Arduino 的 RX 線(在將程序加載到 Arduino 時需要斷開該線)。
如果一切正常,您將得到相同的結(jié)果:
您可以看到顯示 3 個數(shù)字:
- "COUNT" - 接收值的計數(shù)器
- “AMPL” - 信號的幅度。下面的符號條(“<--->”)以圖形方式顯示幅度(以對數(shù)刻度)。
- 最大值 - 以米和毫米為單位的距離。
第 4 步:調(diào)零
首次啟動后,需要校準(zhǔn)激光測距儀模塊。
您需要在距離模塊一定距離處放置一些白色物體。對于測距儀模塊,到該物體的距離將變?yōu)榱憔嚯x。要開始校準(zhǔn)過程,您需要從激光卷尺連接鍵盤并按最低按鈕。模塊將發(fā)出兩次嗶聲 - 在校準(zhǔn)開始和結(jié)束時(校準(zhǔn)持續(xù)時間接近 10 秒)。
現(xiàn)在您可以使用此激光測距儀模塊。
鏈接:
1. Github——逆向工程結(jié)果和源碼。
2. Habr.com - 谷歌翻譯的關(guān)于激光卷尺逆向工程過程的文章。
對不起我的英語 - 我來自非英語國家。
- 手持式激光測距儀產(chǎn)品介紹 9次下載
- 使用Arduino的超聲波測距儀
- 高精度激光測距儀原理圖.PDF 181次下載
- TDC-GP22激光測距儀應(yīng)用指南
- 2021年單點激光測距儀模塊廠家名單 19次下載
- 激光測距儀的發(fā)展?fàn)顩r如何及激光測距的開發(fā)資料概述 96次下載
- 相位式激光測距儀的概述及其改進設(shè)計 30次下載
- DDS技術(shù)在數(shù)字激光相位測距儀中的應(yīng)用 24次下載
- 相位式激光測距儀的改進設(shè)計 60次下載
- 用于智能汽車的小型LD激光測距儀 8次下載
- 脈沖激光測距儀的設(shè)計-課程設(shè)計 34次下載
- DIY基于攝像頭的激光測距儀 67次下載
- 用于智能汽車的小型LD激光測距儀 226次下載
- 測距儀中新型的脈沖激光光源
- 超聲波倒車測距儀( 本科試題)
- YXC有源晶振,頻點50MHZ,超小體積2520封裝,應(yīng)用于激光測距儀 1213次閱讀
- 基于51單片機的超聲波測距儀設(shè)計 2539次閱讀
- 使用SRF05和ATtiny85的超聲波測距儀 2195次閱讀
- 超聲波測距儀/聲納測距系統(tǒng)的電路分享 2400次閱讀
- 基于SRF05和ATtiny85實現(xiàn)的超聲波測距儀設(shè)計 2443次閱讀
- 基于硅光電倍增管的直接ToF測距系統(tǒng)設(shè)計 6011次閱讀
- 激光測距儀的原理_激光測距儀是怎樣工作的 1w次閱讀
- 激光測距儀使用方法 2.7w次閱讀
- 激光測距原理與方法 1.2w次閱讀
- 激光測距傳感器的分類與應(yīng)用 3066次閱讀
- 全站型電子測距儀的用途及使用注意事項說明 6128次閱讀
- 激光測距儀的特點及應(yīng)用范圍 9764次閱讀
- 汽車道閘跟激光測距有什么關(guān)系? 5952次閱讀
- 激光測距儀的簡單實現(xiàn)解決方案 1.1w次閱讀
- 淺談激光測距儀的原理及使用方法 8795次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數(shù)據(jù)手冊
- 1.06 MB | 532次下載 | 免費
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費
- 3TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費
- 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
- 6.40 MB | 227次下載 | 免費
- 6迪文DGUS開發(fā)指南
- 31.67 MB | 194次下載 | 免費
- 7元宇宙底層硬件系列報告
- 13.42 MB | 182次下載 | 免費
- 8FP5207XR-G1中文應(yīng)用手冊
- 1.09 MB | 178次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33566次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關(guān)電源設(shè)計實例指南
- 未知 | 21549次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅(qū)動電路設(shè)計》 溫德爾著
- 0.00 MB | 6656次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537798次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191187次下載 | 免費
- 7十天學(xué)會AVR單片機與C語言視頻教程 下載
- 158M | 183279次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論
查看更多