基于單片機(jī)的水下機(jī)器人定位系統(tǒng)
本課題研究的機(jī)器人工作在大約40 m深的漿液下,為了防止水煤漿由于長時間的存貯而沉淀,他能在按照預(yù)先規(guī)劃的軌跡行走時完成攪拌功能。在這種條件下,一個很重要的問題就是機(jī)器人定位功能的實現(xiàn),用來實時了解其具體位置。本機(jī)器人定位系統(tǒng)采用多路超聲波傳感器測距,然后采用三點定位法,把測距信息轉(zhuǎn)化為機(jī)器人的位置信息。超聲波作為一種無接觸檢測方式,與激光、紅外以及無線電測距相比,在水煤漿中可以比較容易地穿透水煤漿達(dá)到測距的目的,且精度較高。
本文引用地址:http://www.ex-cimer.com/article/87628.html 超聲波測距系統(tǒng)
1.1 超聲波測距原理
超聲波測距原理一般采用時間度量法,計算公式為:
式中D(m)為超聲波傳播的距離,v(m/s)為超聲波在介質(zhì)中傳播的速度,t(s)為超聲波在介質(zhì)中傳播的時間。而超聲波在介質(zhì)中傳播的速度由介質(zhì)的性質(zhì)和溫度T(℃)決定,由此可得到水中超聲波的波速為:
1.2 超聲波測距的硬件系統(tǒng)
系統(tǒng)硬件框圖如圖1所示,其設(shè)計為分布式控制系統(tǒng)。在本系統(tǒng)中USR1為超聲波發(fā)射傳感器,USR2,USR3,USR4為接收傳感器,他是型號為JSS-03的液下專用超聲波傳感器,該傳感器既可做接收用同時也可做發(fā)射用,其靈敏度高,額定脈沖工作電壓高,瞬時輸出功率大。溫度傳感器選用DS18B20,該傳感器具有單總線、抗干擾、測溫范圍寬(-55~+125℃)、適合遠(yuǎn)距離惡劣環(huán)境測溫的特點。在本系統(tǒng)中使用的單片機(jī)(MCU0,MCU1,…MCU4)均選用51系列單片機(jī)AT89C52。
當(dāng)系統(tǒng)處于工作狀態(tài),由MCU0每隔3 s產(chǎn)生一個脈沖,信號經(jīng)過放大激發(fā)信號發(fā)生器ST-3A,然后觸發(fā)超聲波發(fā)生器USR1;同時給MCU2,MCU3,MCU4的中斷INT0一個低電平,使他們開始計時。當(dāng)接收超聲波傳感器接收到發(fā)射超聲波傳感器發(fā)出的信號后,立即把產(chǎn)生的接收信號傳給單片機(jī),中間的信號調(diào)理過程為一級放大(放大100倍)、帶通濾波、二級放大(放大50倍)、電壓比較、光電隔離,其中電壓比較的基準(zhǔn)電壓可調(diào),當(dāng)信號電壓高于基準(zhǔn)電壓時使MCU的INT1中斷。INT0中斷和INT1中斷的時間間隔即為發(fā)射與接收傳感器間的時間,他存儲在單片機(jī)固定的RAM中。而溫度傳感器DS18B20是分時完成對環(huán)境溫度的測量的,采用嚴(yán)格的時序單片機(jī)進(jìn)行雙向通訊。單片機(jī)把溫度信息存在他的固定RAM中。
1.3 超聲波測距的軟件系統(tǒng)
要完成對機(jī)器人的位置信息的測量就要求把存儲在單片機(jī)RAM內(nèi)的時間信息和溫度信息采集到上位機(jī)中,然后把這些信息融合起來得到機(jī)器人的確切坐標(biāo)。工控機(jī)與下位機(jī)采用串口通訊方式,通訊協(xié)議為MODBUS協(xié)議。同時上位機(jī)采用VC 6.0作為開發(fā)工具,工控機(jī)的軟件程序采用模塊化編程,程序主要由串口通訊模塊、三點定位模塊、數(shù)據(jù)庫模塊及界面模塊組成,其循環(huán)通訊的流程如圖2所示。
2 實 驗
2.1 實驗準(zhǔn)備
為了驗證程序的可靠性和對比兩種超聲波發(fā)射傳感器在定位過程中的效果,做了水下定位實驗,該實驗是在9 m×7 m的長方形水池中進(jìn)行的,水深25 cm左右。在實驗之前在水平面內(nèi)建立直角坐標(biāo)系,同時在r=3 300 mm的圓周上均勻放置三個超聲波接收傳感器,其坐標(biāo)(單位:mm)分別為(3 300,0)、(-1 650,2 858)、(-1 650,2 858),在實驗過程中超聲波發(fā)射傳感器在此圓周內(nèi)移動。
根據(jù)以前一系列的實驗結(jié)果,在本次實驗的軟件系統(tǒng)中對測距程序按下式進(jìn)行了修正:(單位:mm)
2.2 實驗結(jié)果
(1)JSS-03型超聲波發(fā)射傳感器
該傳感器的最佳發(fā)射頻率為10 kHz,發(fā)射面為一個平面,波束角為60°,其指向性很強(qiáng),在此定位系統(tǒng)中,3個接收傳感器都能夠收到該發(fā)射傳感器的信號,但在其波束角內(nèi)的接收傳感器接收的信號比其他兩個強(qiáng),這就影響了接收傳感器觸發(fā)時的靈敏性。
如圖3所示,中間的實線圓為經(jīng)過非線性優(yōu)化過的發(fā)射傳感器的移動軌跡,半徑為3 204 mm,這些定位點分散在軌跡圓的周圍,外側(cè)的虛線圓為偏離原點最遠(yuǎn)點所在的圓,內(nèi)側(cè)的虛線圓為距離原點最近的點所在的圓,最大誤差為8.08%,這些誤差主要來自于發(fā)射中心產(chǎn)生的誤差和測距產(chǎn)生的誤差。
(2)LYF-20型圓周發(fā)射傳感器
復(fù)制的最佳發(fā)射頻率為22 kHz,發(fā)射面為圓柱面,他的優(yōu)點就是對于三個接收傳感器而言發(fā)射中心是固定的,并且他們接收的信號強(qiáng)弱一致,但他的指向性不強(qiáng),由于信號分散,故其發(fā)射的信號弱于JSS-03型傳感器。如圖4所示。由于從發(fā)射源頭就避免了發(fā)射中心產(chǎn)生的誤差,所以他的定位精度較高,主要誤差來自于測距誤差,其優(yōu)化后的軌跡圓半徑為3 154 mm,最大誤差為3.78%。在此可以看出,頻率對超聲波的測距是有很大影響的,頻率越大,精度越高。
3 結(jié) 語
從實驗結(jié)果看出,定位系統(tǒng)是可行的,有較高的可靠性,并且本系統(tǒng)的實時性可達(dá)1 s,其精度也可以達(dá)到我們預(yù)期的效果,但是硬件系統(tǒng)還有提升的空間。研究內(nèi)容對水下機(jī)器人的定位,信號的采集,數(shù)據(jù)的遠(yuǎn)距離傳輸?shù)榷加袇⒖純r值。
評論