齊建家++王騰飛
摘要:設(shè)計(jì)了一種自主導(dǎo)航車(chē),以O(shè)penWrt嵌入式Linux系統(tǒng)作為導(dǎo)航車(chē)的控制核心,包含電源模塊、電機(jī)驅(qū)動(dòng)電路、GPS模塊,超聲波測(cè)距模塊及相應(yīng)軟件設(shè)計(jì)方案。通過(guò)GPS模塊確定位置信息,結(jié)合超聲波測(cè)距檢測(cè)路面狀況,處理器內(nèi)部程序控制直流電機(jī)的轉(zhuǎn)速以及轉(zhuǎn)向和伺服電機(jī)進(jìn)行導(dǎo)航車(chē)行進(jìn)方向控制,從而使小車(chē)能夠沿著規(guī)劃軌跡自動(dòng)行駛,實(shí)現(xiàn)小車(chē)自主導(dǎo)航的目的。試驗(yàn)結(jié)果表明,整個(gè)系統(tǒng)的電路結(jié)構(gòu)簡(jiǎn)單,可靠性高,程序運(yùn)行穩(wěn)定,實(shí)現(xiàn)了預(yù)期的自主導(dǎo)航功能。
Abstract: The paper designs an autonomous navigation vehicle based on OpenWrt used embedded Linux control system as the core of the car navigation, including power module, motor drive circuit, GPS module, ultrasonic ranging module and the corresponding software design. It determines the location information through the GPS module, combined with ultrasonic detection of pavement condition, internal processor program controls DC motor speed and steering, vehicle navigation control and direction of the servo motor, so that the car can achieve automatic driving along the trajectory planning, car navigation purposes. The test results show that the whole system has simple circuit structure, high reliability, stable program operation, and achieved the desired autonomous navigation function.
關(guān)鍵詞:自主導(dǎo)航;智能車(chē);GPS定位;OpenWrt
Key words: autonomous navigation;intelligent vehicle;GPS positioning;OpenWrt
中圖分類(lèi)號(hào):P228.4 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1006-4311(2017)21-0139-02
0 引言
GPS自動(dòng)導(dǎo)航小車(chē)作為移動(dòng)機(jī)器人的一種,搭配上各種車(chē)載傳感器,感知周?chē)沫h(huán)境,小車(chē)通過(guò)獲取GPS衛(wèi)星定位接收模塊和電子羅盤(pán)發(fā)出的數(shù)據(jù),規(guī)劃小車(chē)的行駛路徑,同時(shí)系統(tǒng)自動(dòng)多次校正行駛方向與行駛距離。系統(tǒng)成本低而精度高。
GPS地面自主導(dǎo)航車(chē)的組成單片機(jī)控制是一個(gè)實(shí)現(xiàn)現(xiàn)代工業(yè)自動(dòng)化的典型系統(tǒng),它主要由運(yùn)動(dòng)機(jī)構(gòu)、控制部分、信息處理部分及輔助部分四大部分組成,其中控制部分是整個(gè)車(chē)導(dǎo)航過(guò)程的核心,常被稱(chēng)為其運(yùn)動(dòng)的心臟。其主要根據(jù)上位機(jī)傳遞過(guò)去的一系列經(jīng)緯度信息,通過(guò)GPS衛(wèi)星定位模塊實(shí)時(shí)獲取當(dāng)前位置信息,并根據(jù)目標(biāo)位置信息實(shí)時(shí)調(diào)整應(yīng)該行進(jìn)的方向和速度,同時(shí)使用超聲波距離傳感器探測(cè)前方的障礙物,并及時(shí)避過(guò),控制器輸出PWM信號(hào)控制直流電機(jī)和舵機(jī)從而控制了導(dǎo)航車(chē)的行進(jìn)速度和方向。
1 導(dǎo)航車(chē)硬件設(shè)計(jì)
導(dǎo)航車(chē)以RT3052為控制核心,硬件包括電源管理模塊、電機(jī)驅(qū)動(dòng)模塊、GPS導(dǎo)航模塊、舵機(jī)轉(zhuǎn)向模塊、超聲波障礙檢測(cè)模塊、GPRS通信模塊、上位機(jī)控制軟件和手機(jī)端遙控軟件,其中上位機(jī)控制軟件使用C#編寫(xiě),與控制核心通過(guò)中間服務(wù)器(有公網(wǎng)IP地址)中轉(zhuǎn)通信。導(dǎo)航車(chē)總體框圖如圖1所示。
智能車(chē)采用RT3052作為系統(tǒng)的控制核心,它負(fù)責(zé)各個(gè)模塊之間的相互協(xié)調(diào)工作,接收來(lái)自GPS衛(wèi)星定位模塊獲取到的位置信息,電子指南針的信息和三軸加速度傳感器的信息,采用慣性導(dǎo)航算法對(duì)這些信息進(jìn)行處理,形成合適的控制量,對(duì)轉(zhuǎn)向/動(dòng)力電機(jī)進(jìn)行控制,保證導(dǎo)航車(chē)能安全有效地到達(dá)目標(biāo)點(diǎn)。同時(shí)在行駛的過(guò)程中還通過(guò)UDP協(xié)議把運(yùn)行過(guò)程中的關(guān)鍵信息發(fā)送到上位機(jī)軟件,由上位機(jī)軟件進(jìn)行監(jiān)視和控制。
電源管理模塊:導(dǎo)航車(chē)通過(guò)一個(gè)2S鎳氫電池給直流電機(jī)和轉(zhuǎn)向舵機(jī)供電,同時(shí)鎳氫電池經(jīng)過(guò)穩(wěn)壓慮波電路給控制核心板各個(gè)傳感器供電,以減小動(dòng)力電路和控制電路之間的干擾。
電機(jī)驅(qū)動(dòng)模塊:電機(jī)驅(qū)動(dòng)部分由一個(gè)直流有刷電機(jī)和兩個(gè)微型伺服電機(jī)組成,直流有刷電機(jī)使用大功率MOS控制,由處理核心發(fā)送PWM信號(hào)控制電機(jī)的轉(zhuǎn)速和轉(zhuǎn)向。伺服電機(jī)使用半雙工串口通信,半雙工串口經(jīng)緩沖電路轉(zhuǎn)換成TTL電平串口與處理核心通訊,處理核心通過(guò)控制兩個(gè)伺服電機(jī)的位置參數(shù)對(duì)前后輪的轉(zhuǎn)向進(jìn)行控制,更加靈活地轉(zhuǎn)向。
GPS導(dǎo)航模塊:使用雙模北斗衛(wèi)星定位模塊,控制系統(tǒng)核心通過(guò)全雙工異步串口協(xié)議與GPS模塊進(jìn)行通信,并實(shí)時(shí)解析出當(dāng)前的經(jīng)緯度信息。
超聲波障礙檢測(cè)模塊:由于超聲波也是一種聲波,其聲速C與溫度有關(guān)。在使用時(shí),如果溫度變化不大,則可認(rèn)為聲速是基本不變的。常溫下超聲波的傳播速度是334米/秒,但其傳播速度V易受空氣中溫度、濕度、壓強(qiáng)等因素的影響,其中受溫度的影響較大,如溫度每升高1℃,聲速增加約0.6米/秒。如果測(cè)距精度要求很高,則應(yīng)通過(guò)溫度補(bǔ)償?shù)姆椒右孕Uū鞠到y(tǒng)正是采用了溫度補(bǔ)償?shù)姆椒ǎ?。已知現(xiàn)場(chǎng)環(huán)境溫度T時(shí),超聲波傳播速度V的計(jì)算公式為:V=331.45+0.607T。聲速確定后,只要測(cè)得超聲波往返的時(shí)間,即可求得距離。
電子指南針模塊:使用數(shù)字羅盤(pán)IC,控制系統(tǒng)核心通過(guò)I2C協(xié)議實(shí)時(shí)讀取導(dǎo)航車(chē)的方向信息。
轉(zhuǎn)向舵機(jī)模塊:由于道路情況復(fù)雜,導(dǎo)航車(chē)需要不停地調(diào)整轉(zhuǎn)向以適應(yīng)環(huán)境的變化,轉(zhuǎn)向舵機(jī)模塊為導(dǎo)航車(chē)的方向控制執(zhí)行機(jī)構(gòu)??刂葡到y(tǒng)核心通過(guò)對(duì)外圍傳感器獲得的一系列信息進(jìn)行分析計(jì)算,輸出PWM信號(hào)來(lái)控制舵機(jī)的方向,以準(zhǔn)確地按照預(yù)定規(guī)劃的路徑行駛。
三軸加速度傳感器傳感器部分:由三軸加速度傳感器來(lái)獲得車(chē)體姿態(tài)和加速度,由電子指南針獲得車(chē)體方向,GPS衛(wèi)星定位模塊獲得地理位置信息,超聲波測(cè)距傳感器獲得周?chē)系K物情況。
通信部分由控制核心openwrt掛載USB 3G網(wǎng)卡,通過(guò)有公網(wǎng)IP地址的服務(wù)器與電腦端上位機(jī)之間實(shí)現(xiàn)數(shù)據(jù)通信,在保證了連接可靠性的同時(shí)去除了傳統(tǒng)遙控的距離限制。
車(chē)體結(jié)構(gòu)部分使用一個(gè)直流有刷電機(jī)驅(qū)動(dòng)四個(gè)輪子。前后兩個(gè)轉(zhuǎn)向機(jī)構(gòu),能夠更加靈活地改變車(chē)的姿態(tài),可適應(yīng)復(fù)雜的地形。
2 導(dǎo)航車(chē)的軟件設(shè)計(jì)
電腦端上位機(jī)使用C#語(yǔ)言編寫(xiě),調(diào)用百度地圖API獲取衛(wèi)星地圖信息,并根據(jù)道路信息和周?chē)ㄖ镄畔⑦M(jìn)行路徑規(guī)劃。同時(shí)實(shí)時(shí)接收導(dǎo)航車(chē)的詳細(xì)信息,進(jìn)行導(dǎo)航路徑參數(shù)的下載、上傳,和導(dǎo)航車(chē)的運(yùn)動(dòng)以及模式控制。
手機(jī)端APP與導(dǎo)航車(chē)之間同樣經(jīng)公網(wǎng)服務(wù)器與導(dǎo)航車(chē)通訊,控制導(dǎo)航車(chē)的運(yùn)行模式和運(yùn)動(dòng)姿態(tài)。手機(jī)端APP仿照賽車(chē)游戲的控制界面,充分考慮手動(dòng)模式的易操作性。
導(dǎo)航車(chē)的運(yùn)行模式有航跡規(guī)劃模式、自主導(dǎo)航模式、手動(dòng)控制模式、回家模式。
其中航跡規(guī)劃模式中航跡規(guī)劃任務(wù)由上位機(jī)軟件處理:上位機(jī)軟件根據(jù)導(dǎo)航車(chē)的位置信息在視圖里顯示附近的衛(wèi)星地圖,根據(jù)導(dǎo)航車(chē)的起點(diǎn)和要到達(dá)的終點(diǎn)和衛(wèi)星地圖的路況在中途添加一系列中間點(diǎn),構(gòu)成完整路徑信息并發(fā)送到導(dǎo)航車(chē)。
手動(dòng)控制模式中導(dǎo)航車(chē)在行進(jìn)過(guò)程中會(huì)緩存之前走過(guò)的點(diǎn),在行進(jìn)方向改變時(shí)候會(huì)記錄轉(zhuǎn)彎點(diǎn),并去除路徑中的直線(xiàn)點(diǎn),最后獲得路徑信息。
自主導(dǎo)航模式中導(dǎo)航車(chē)根據(jù)上位機(jī)傳輸或者手動(dòng)行駛過(guò)程得到的路徑信息進(jìn)行行駛速度以及方向控制,同時(shí)由超聲波傳感器測(cè)量前進(jìn)方向的障礙物距離,并在保證最終目標(biāo)點(diǎn)不變的前提下適當(dāng)?shù)剡M(jìn)行局部路徑的重新規(guī)劃同時(shí)提醒上位機(jī)。
在導(dǎo)航車(chē)與上位機(jī)連接丟失或者上位機(jī)強(qiáng)制切換模式到回家模式時(shí)候,導(dǎo)航車(chē)會(huì)以啟動(dòng)時(shí)候的位置為終點(diǎn),原路返回。
其主程序流程圖如圖2。
■
3 結(jié)束語(yǔ)
本文設(shè)計(jì)的自主導(dǎo)航車(chē)獲取上位機(jī)發(fā)送的路徑信息后,在進(jìn)行導(dǎo)航的同時(shí)進(jìn)行避障的同時(shí),將車(chē)的各種信息通過(guò)GPRS網(wǎng)絡(luò)傳輸?shù)诫娔X端,由上位機(jī)軟件進(jìn)行分析控制。該控制系統(tǒng)運(yùn)用了嵌入式Linux、單片機(jī)、GPS衛(wèi)星定位、電子羅盤(pán)、超聲波測(cè)距、直流電機(jī)、PWM調(diào)速等技術(shù),基本實(shí)現(xiàn)了GPS導(dǎo)航車(chē)輛的要求,如果將智能車(chē)技術(shù)與互聯(lián)網(wǎng)、云計(jì)算等技術(shù)結(jié)合在一起,實(shí)現(xiàn)最優(yōu)路徑規(guī)劃,那么將有望解決城市交通擁堵難題,如果城市專(zhuān)門(mén)劃出一條公交道路,則完全可以實(shí)現(xiàn)公交車(chē)無(wú)人駕駛化。
參考文獻(xiàn):
[1]陳淑艷.移動(dòng)機(jī)器人履帶行走裝置的構(gòu)型與機(jī)動(dòng)性能研究[D].揚(yáng)州:揚(yáng)州大學(xué),2008.
[2]陳孟元.基于圖像識(shí)別的循跡智能車(chē)設(shè)計(jì)[J].重慶理工大學(xué)學(xué)報(bào),2013.
[3]隆文革,王艾倫.便攜式四輪履機(jī)器人的設(shè)計(jì)與仿真[J].機(jī)床與液壓,2008,36(1).
[4]何希才,薛永毅.傳感器及其應(yīng)用實(shí)例[M].北京:機(jī)械工業(yè)出版社,2004.
[5]孫寶元,楊寶清,主編.傳感器及其應(yīng)用手冊(cè)[M].北京:機(jī)械工業(yè)出版社,2004.
[6]王密,郭丙軒,雷霆,李德仁.車(chē)載GPS導(dǎo)航系統(tǒng)中GPS定位與道路匹配方法研究[J].武漢測(cè)繪科技大學(xué)學(xué)報(bào),2000(03):248-251,256.
[7]匡翠林,劉經(jīng)南,趙齊樂(lè).低軌衛(wèi)星與GPS導(dǎo)航衛(wèi)星聯(lián)合定軌研究[J].大地測(cè)量與地球動(dòng)力學(xué),2009(02):121-125.
[8]楊元喜,張雙成,高為廣.GPS導(dǎo)航解算中幾種非線(xiàn)性Kalman濾波的理論分析與比較[J].測(cè)繪工程,2005(03):4-7,25.
[9]邵婷婷,馬建倉(cāng),胡士峰,王超.電子羅盤(pán)的傾斜及羅差補(bǔ)償算法研究[J].傳感技術(shù)學(xué)報(bào),2007(06):1335-1337.
[10]侯鴻斌.嵌入式通用運(yùn)動(dòng)控制系統(tǒng)的研究與應(yīng)用[D].華南理工大學(xué),2010.