李 罡,劉 庶,張慧杰,趙夢(mèng)冉
(白城師范學(xué)院 機(jī)械與控制工程學(xué)院,吉林 白城 137000)
智能探險(xiǎn)車的研究、開發(fā)和應(yīng)用涉及傳感技術(shù)、電子技術(shù)、機(jī)械技術(shù)和智能控制技術(shù)等.智能探險(xiǎn)車可以按照預(yù)先設(shè)定的程序,在某一環(huán)境中自主運(yùn)行,可應(yīng)用于科學(xué)勘探等領(lǐng)域,無需人為操控便可達(dá)到預(yù)期目標(biāo),將會(huì)是今后社會(huì)發(fā)展需求的一個(gè)新方向.智能機(jī)器人能夠做很多事情,凡不適合由人直接完成的任務(wù),均可由機(jī)器人來代替,并且不受溫度、濕度等條件影響.尤其是在一些危險(xiǎn)或惡劣的環(huán)境條件下工作,人類無法介入特殊情況下的任務(wù),智能探險(xiǎn)車就可以發(fā)揮它的作用.但目前這些方面的開發(fā)利用還不夠完善,仍有許多地方等待著去開發(fā)研究.智能探險(xiǎn)車作為一種應(yīng)用型人工智能產(chǎn)品,它的開發(fā)前景非常巨大,相當(dāng)于一個(gè)平臺(tái),可以在它的基礎(chǔ)上搭載任何想要實(shí)現(xiàn)的功能.因此,設(shè)計(jì)一款多功能的、適應(yīng)各種地形、各種場(chǎng)合的智能探險(xiǎn)車,無論對(duì)于軍事領(lǐng)域、科研領(lǐng)域還是生活領(lǐng)域都具有非比尋常的意義[1].
智能探險(xiǎn)車的主要功能是輔助進(jìn)行掃雷、探測(cè)、偵察,并具有GPS導(dǎo)航功能,能夠根據(jù)設(shè)定的路線進(jìn)行勘測(cè),同時(shí)能夠自動(dòng)規(guī)避障礙物.智能探險(xiǎn)車采用了多種類型傳感器,通過STM32 單片機(jī)進(jìn)行控制,硬件系統(tǒng)主要包括主控模塊、驅(qū)動(dòng)模塊和傳感器檢測(cè)部分等.本設(shè)計(jì)的研究內(nèi)容是在目前智能小車基礎(chǔ)上進(jìn)行改進(jìn)和完善,讓它能夠應(yīng)用在多個(gè)領(lǐng)域,使探險(xiǎn)車的工作效率更高,安全性更加有保障,完成掃雷、探測(cè)、偵察等一系列危險(xiǎn)的工作任務(wù)[2].本設(shè)計(jì)的智能探險(xiǎn)車系統(tǒng)結(jié)構(gòu)框圖如圖1所示.
圖1 智能探險(xiǎn)車系統(tǒng)結(jié)構(gòu)框圖
采用STM32F407單片機(jī)作為主控系統(tǒng),STM32是32位微控制器,內(nèi)部時(shí)鐘系統(tǒng)強(qiáng)大,外部中斷和定時(shí)器豐富便于控制,相比51 系列單片機(jī),其運(yùn)行速度更快,外設(shè)更加強(qiáng)大.能夠?qū)崿F(xiàn)對(duì)各個(gè)元器件的精準(zhǔn)控制和接收處理器件反饋的外界信息,這對(duì)智能探險(xiǎn)車的正常運(yùn)行起著關(guān)鍵作用,因?yàn)橹悄芴诫U(xiǎn)車要實(shí)時(shí)精準(zhǔn)監(jiān)測(cè)外界環(huán)境,從而進(jìn)行相應(yīng)的動(dòng)作應(yīng)答[3].
系統(tǒng)驅(qū)動(dòng)部分采用TB6612FNG電機(jī)驅(qū)動(dòng)模塊來驅(qū)動(dòng)電機(jī).該電機(jī)驅(qū)動(dòng)模塊可以同時(shí)對(duì)兩個(gè)直流電機(jī)進(jìn)行雙向控制,有較強(qiáng)的輸出能力,在運(yùn)行性能和能耗方面也有一定優(yōu)勢(shì),具有集成度高、體積小、高效率和高性能的特點(diǎn).本探險(xiǎn)車采用四輪驅(qū)動(dòng),保證了足夠的動(dòng)力,通過調(diào)節(jié)輸入TB6612FNG 的PWM信號(hào)進(jìn)行直流電機(jī)的調(diào)速,從而實(shí)現(xiàn)探險(xiǎn)車基本的直行、轉(zhuǎn)彎、后退運(yùn)動(dòng)功能[4].
避障模塊采用US-100 超聲波測(cè)距模塊進(jìn)行測(cè)距避障.該避障模塊可自行設(shè)置探險(xiǎn)車的避障距離,探險(xiǎn)車與障礙物之間距離小于避障距離時(shí)進(jìn)行避障,并具有GPIO、串口等多種通訊方式,集成看門狗功能,性能穩(wěn)定、工作可靠.給輸入/輸出口TRIG至少一個(gè)10 μs的高電平信號(hào),模塊會(huì)自動(dòng)發(fā)送8個(gè)40 kHz的方波,自動(dòng)檢測(cè)是否有信號(hào)返回,然后輸入/輸出口ECHO 會(huì)輸出一個(gè)高電平,高電平持續(xù)的時(shí)間就是超聲波從發(fā)射到返回的時(shí)間.從而利用如下公式計(jì)算出與障礙物的距離:
其中:d 表示探險(xiǎn)車與障礙物的距離;t 表示高電平時(shí)間;v 表示聲速(v 的取值為340 m/s).根據(jù)測(cè)出與障礙物的距離,實(shí)現(xiàn)單片機(jī)對(duì)探險(xiǎn)車運(yùn)動(dòng)的控制及避障.
智能探險(xiǎn)車需要具有自主導(dǎo)航功能,能夠根據(jù)設(shè)定的路線進(jìn)行勘測(cè),通過GPS 導(dǎo)航,可以實(shí)現(xiàn)在地圖中放置坐標(biāo)點(diǎn)建立小車行駛路徑,小車啟動(dòng)GPS智能導(dǎo)航后,根據(jù)地圖中建立的行駛路線自動(dòng)導(dǎo)航行駛.因此,選用ATK1218-BD GPS 北斗雙模定位模塊定位更快、更精準(zhǔn),該模塊自帶備用電池,可保存星歷數(shù)據(jù),掉電后重新上電,可在幾秒內(nèi)恢復(fù)定位[5].
探險(xiǎn)車可實(shí)時(shí)觀測(cè)周圍環(huán)境,向監(jiān)控終端回傳圖像信息.因此,采用市面所售的無線迷你型攝像機(jī),體積小,安裝簡單,通過手機(jī)可實(shí)時(shí)觀察未知的環(huán)境進(jìn)行安全探測(cè).同時(shí),不需要網(wǎng)絡(luò)也可實(shí)時(shí)拍攝,解決了戶外探險(xiǎn)無網(wǎng)絡(luò)的難題.其帶有夜視功能,當(dāng)探險(xiǎn)車進(jìn)入未知洞穴也能夠清晰觀測(cè)內(nèi)部環(huán)境.將攝像頭安裝在自由度為2 的舵機(jī)臂上,彌補(bǔ)了攝像頭只能180°攝像的不足,通過遙控進(jìn)行舵機(jī)的轉(zhuǎn)動(dòng),實(shí)現(xiàn)360°無死角觀察.
顯示模塊采用IIC通訊OLED液晶屏模塊,功能強(qiáng)大,能夠顯示探險(xiǎn)車的行車信息,引腳少,便于布線.
現(xiàn)有的一些智能車作業(yè)工作范圍有限,往往只能在一些坡度較小、地勢(shì)平緩的地帶進(jìn)行作業(yè),遇到山高坡陡、險(xiǎn)峻的地勢(shì)就只能由人來完成.為了能更好地適應(yīng)多種地形,在車身上安裝了機(jī)械裝置,能夠翻越陡坡,越過窄溝,彌補(bǔ)以往智能小車只能在比較平坦地勢(shì)作業(yè)的不足.機(jī)械裝置由機(jī)械臂構(gòu)成,能夠模擬人手臂攀爬的動(dòng)作在一些復(fù)雜地形上進(jìn)行工作[6].
本系統(tǒng)通過撥碼開關(guān)來選擇運(yùn)行程序.當(dāng)撥到開關(guān)1運(yùn)行GPS自主導(dǎo)航行駛功能,按照規(guī)劃好的路線行駛,在地圖中放置坐標(biāo)點(diǎn)建立小車行駛路徑,小車啟動(dòng)GPS 智能導(dǎo)航后,根據(jù)地圖中建立的行駛路線自動(dòng)導(dǎo)航行駛,若沿途遇到障礙物,小車會(huì)自動(dòng)規(guī)避障礙物,然后繼續(xù)按建立的路徑行駛.當(dāng)撥到開關(guān)2可手動(dòng)遙控行駛[7].系統(tǒng)主程序流程圖如圖2所示.
圖2 主程序流程圖
US-100 超聲波測(cè)距模塊價(jià)格低廉,并且能夠較準(zhǔn)確測(cè)量與障礙物之間的距離,避障程序模塊采用的US-100超聲波測(cè)距模塊,可根據(jù)聲波測(cè)距原理來實(shí)現(xiàn)避障,其工作流程圖如圖3所示.
圖3 超聲波避障子程序流程圖
基于STM32設(shè)計(jì)的智能探險(xiǎn)車采用了多種模塊,在制作智能探險(xiǎn)車初期是對(duì)每個(gè)模塊進(jìn)行單獨(dú)調(diào)試.只有在確保每個(gè)模塊都能正常工作并完成指定任務(wù)的前提下,才能進(jìn)行總體設(shè)計(jì)與聯(lián)調(diào).每個(gè)模塊都需要軟件和硬件的互連,以確保模塊的正常運(yùn)行并執(zhí)行分配給它的功能.主要包括硬件部分調(diào)試、軟件部分調(diào)試和整機(jī)調(diào)試等幾個(gè)方面[8].
3.1.1 硬件焊接
單片機(jī)的硬件焊接相對(duì)來說比較簡單,但在焊接過程中的一點(diǎn)小失誤就可能造成系統(tǒng)無法正常工作,給后面的調(diào)試檢測(cè)環(huán)節(jié)帶來不便,而且還要注意焊點(diǎn)之間不能相連,否則可能導(dǎo)致硬件被燒壞.
3.1.2 硬件調(diào)試
首先實(shí)現(xiàn)的是要讓小車能夠正常行駛,然后逐個(gè)調(diào)試其他器件,確保功能都可以實(shí)現(xiàn).讓探險(xiǎn)車通過GPS 自動(dòng)導(dǎo)航規(guī)劃路線是一個(gè)難點(diǎn),往往不能按照指定的路線行駛,坐標(biāo)易偏移,可以通過數(shù)據(jù)源轉(zhuǎn)換,更換精度更高的GPS模塊來解決問題.
軟件部分調(diào)試主要完成了對(duì)超聲波模塊輸入/輸出信號(hào)的處理計(jì)算進(jìn)行避障,對(duì)小車進(jìn)行調(diào)速,GPS的路徑規(guī)劃,經(jīng)過不斷的程序測(cè)試達(dá)到良好的調(diào)試效果.
智能探險(xiǎn)車聯(lián)調(diào)是一個(gè)繁雜的過程,為更接近于室外探險(xiǎn)環(huán)境,需要在室內(nèi)鋪設(shè)復(fù)雜地形.由于地面環(huán)境復(fù)雜,探險(xiǎn)車在行駛過程中時(shí)常會(huì)出現(xiàn)上不去陡坡、GPS信號(hào)丟失等問題.因此,需要不斷進(jìn)行程序優(yōu)化,不斷改變相應(yīng)的硬件及軟件,使硬件和軟件可以很好地配合,經(jīng)過多次實(shí)驗(yàn)測(cè)試才使得探險(xiǎn)車在場(chǎng)地內(nèi)正常行駛,最終實(shí)現(xiàn)相應(yīng)的功能.設(shè)計(jì)并組裝完成后的智能探險(xiǎn)車實(shí)物如圖4所示.
圖4 智能探險(xiǎn)車實(shí)物圖
經(jīng)過設(shè)計(jì)與調(diào)試,本智能探險(xiǎn)車最終實(shí)現(xiàn)四個(gè)功能:(1)可以遙控探險(xiǎn)車行駛,人為遙控想要到達(dá)的指定地點(diǎn)進(jìn)行工作;(2)當(dāng)探險(xiǎn)車遇到障礙物后可以自動(dòng)轉(zhuǎn)向,然后按照規(guī)劃好的路徑行駛;(3)探險(xiǎn)車遇到陡坡時(shí)可通過機(jī)械臂越過;(4)通過GPS導(dǎo)航,可以實(shí)現(xiàn)在地圖中放置坐標(biāo)點(diǎn)建立小車行駛路徑,小車啟動(dòng)GPS智能導(dǎo)航后,根據(jù)地圖中建立的行駛路線自動(dòng)導(dǎo)航行駛.
智能探險(xiǎn)車采用光、電、無線通信等技術(shù)進(jìn)行綜合設(shè)計(jì),采用多種類型的傳感器,通過STM32 單片機(jī)進(jìn)行控制,實(shí)現(xiàn)了智能探險(xiǎn)功能.智能探險(xiǎn)車工作效率高、安全性能好,能夠應(yīng)用于多個(gè)領(lǐng)域,可以完成掃雷、探測(cè)和偵察等一系列危險(xiǎn)的工作任務(wù).