通過串口理解RPLIDRA的通訊協議
主要介紹一下學習記錄2中沒有解決的問題,特別感謝思嵐科技官方售后,非常負責,
在串口除錯程序中,發現雷達連接到電腦上之后開始轉動,但是一連接上串口除錯工具就停止轉動了,官方給出的解決辦法是串口連接之后更改DTR的勾選狀態,雖然咱也不知道DTR是干嘛的,但試試總沒有錯,
我發現之前使用的cutecom串口除錯工具不支持Modem的選擇,無法打開和關閉dtr,于是改用Comtransmit串口除錯工具,這個工具比minicom那些好用多了,直接類似于win下的可視化的除錯界面,
一種支持dtr、rts等modem的linux系統下的串口除錯工具comtransmit下載地址:
鏈接: https://pan.baidu.com/s/1IAJCmOYJJ3Af-q3jBs34Nw 密碼: 8v8q
下載下來的是個deb檔案,直接雙擊打開安裝就好了,

該串口除錯助手比cutecom助手多了一個modem的框框,這個里面有dtr、trs、dcd、一堆格式,具體參考網頁,
其主要內容如下:
DCD :載波檢測,主要用于Modem通知計算機其處于在線狀態,即Modem檢測到撥號音, 處于在線狀態,
RXD:此引腳用于接收外部設備送來的資料;在你使用Modem時,你會發現RXD指示燈在閃爍,說明RXD引腳上有資料進入,
TXD:此引腳將計算機的資料發送給外部設備;在你使用Modem時,你會發現TXD指示燈在閃爍,說明計算機正在通過TXD引腳發送資料,
DTR:資料終端就緒;當此引腳高電平時,通知Modem可以進行資料傳輸,計算機已經準備好,
DSR:資料設備就緒;此引腳高電平時,通知計算機Modem已經準備好,可以進行資料通訊了,
RTS:請求發送;此腳有計算機來控制,用以通知Modem馬上傳送資料至計算機;否則,Modem將收到的資料暫時放入緩沖區中,
CTS: 清除發送;此腳由Modem控制,用以通知計算機將欲傳的資料送至Modem,
RI : Modem通知計算機有呼叫進來,是否接聽呼叫由計算機決定
測驗通訊協議時,先將a1雷達上電,然后雷達開始轉動,此時設定好波特率等資訊后點擊open按鈕,會發現雷達停止轉動,然后點擊dtr前面的小框,發現雷達重新上電開始轉動,此時在發送A5 20會發現我們可以接收到雷達的資料,剛開始會接收到a5 5a 00 00 40 81的起始應答報文,后面就是雷達接收到的資料報文,資料報文通過結合通訊協議決議,可以提取出距離和角度資訊,
思嵐雷達的通訊協議可以從思嵐雷達官網下載,不同的報文接受到的資料格式不同,了解資料協議后可以從串口角度對雷達資料進行保存和提取,需要串口接收到的資料保存到陣列中,在根據通訊協議中資料存盤位置進行下一步決議,
如果除錯程序中出現serial open fail報錯,還是因為沒有串口權限,可參考前文,給串口進行權限,即可解決,
sudo chmod 666 /dev/ttyUSB0
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/202236.html
標籤:其他
上一篇:SVN Error: Can‘t connect to host xxxxx‘: 由于目標計算機積極拒絕,無法連接,的最快解決辦法
