SICK LMS511开发及数据结构分析、坐标转换
生活随笔
收集整理的這篇文章主要介紹了
SICK LMS511开发及数据结构分析、坐标转换
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
SICK LMS511開發(fā)及數(shù)據(jù)結(jié)構(gòu)分析、坐標轉(zhuǎn)換
最近公司有新上的項目,開始接觸激光掃描儀,型號SICK LMS511。
獲取數(shù)據(jù)
在網(wǎng)上看了一些資料,有通過SICK自帶的軟件看了一下激光掃描儀的配置,實際上可以將激光掃描儀視作socket server,只要用自己熟悉的語言編寫client程序就可以了。因為現(xiàn)在是項目的初期階段,我用python簡單寫了個程序作為測試用途,后期為方便與其他程序?qū)?#xff0c;可能會換C#或Java。
// An highlighted block def startclient():""":return:"""BUFSIZE = 40000ADDR = (HOST, PORT)while True:data = input('>')#data = '02 73 52 4E 20 4C 4D 44 73 63 61 6E 64 61 74 61 03'if not data:breakbites = getcmd(data)cmdstring = bytearray(bites, encoding='utf-8')print(cmdstring)tcpclisocket = socket(AF_INET, SOCK_STREAM)tcpclisocket.connect(ADDR)tcpclisocket.send(cmdstring)pcddata = tcpclisocket.recv(BUFSIZE).decode()print(pcddata)caldata(pcddata)tcpclisocket.close() def getcmd(hexstring):""":param hexstring::return:"""hexstring = hexstring.replace(" ", "")if (len(hexstring) % 2) != 0:hexstring += " "bits = ""for x in range(0, len(hexstring), 2):bits += chr(int(hexstring[x:x + 2], 16))return bits上面的程序包含了指令格式轉(zhuǎn)換、向socket server發(fā)送指令及數(shù)據(jù)接收。向激光掃描儀發(fā)送的單次測量指令為:
02 73 52 4E 20 4C 4D 44 73 63 61 6E 64 61 74 61 03這樣可以從激光掃描儀中獲取一次數(shù)據(jù),形式如下:
sRA LMDscandata 0(版本號) 1(設(shè)備號) 11740A4(序列號) 0 0(設(shè)備狀態(tài)) 174C(指令計數(shù)) BB30(掃描計數(shù)) C1E6D829(開始時 間) C1E72134(發(fā)送時間) 0 0(數(shù)字量輸入) 3F 0(數(shù)字量輸出) 0(保留) 1388(5000HZ) 168(每次掃描頻率) 0(沒有編碼器) 1(輸出通道1) DIST1(回波層) 40000000(系數(shù))00000000(系數(shù)偏移量) AAE60(開始角度) 1388(角度分辨率) 51(掃描點個數(shù)) 380(第一個掃描點,單位mm) 388 386 37A 36D 35F 35E 35C 35D 35B 354 361 34C 324 32E 33F 32F 34A 345 347 33A 32B 32F 339 33D 33C 33C 33C 33B 337 339 311 309 304 331 30B 30D 333 331 320 332 331 331 331 32E 32F 332 330 332 331 331 334 336 337 335 337 337 336 33C 338 339 341 340 33F 341 344 344 352 17D 147 142 13C 136 130 12D 129 123 121 11D 119 113 0 0 0 0 0 0上述是獲取到的數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu),上述的數(shù)據(jù)是在極坐標下的數(shù)據(jù),知道每個點的距激光掃描儀中心點的距離和角度,那么可以根據(jù)公式轉(zhuǎn)成直角坐標系下的數(shù)據(jù)
效果圖對比
可以看出來基本上是吻合的。
代碼資源:https://download.csdn.net/download/baidu_33251089/10755381
總結(jié)
以上是生活随笔為你收集整理的SICK LMS511开发及数据结构分析、坐标转换的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 基于AUTOSAR开发工具链的AUTOS
- 下一篇: Python控制台英汉-汉英电子词典(代