丁 楠,姚建紅
(常熟理工學(xué)院 汽車工程學(xué)院,江蘇 常熟 215500)
近年來,隨著社會(huì)經(jīng)濟(jì)的飛速發(fā)展,高層建筑逐漸增多.然而,由于人們消防意識(shí)的匱乏,導(dǎo)致高層火災(zāi)事故時(shí)有發(fā)生.又由于高層建筑的特殊結(jié)構(gòu),消防員很難在第一時(shí)間趕到火源位置滅火.隨著人工智能浪潮的席卷,無人循跡小車的技術(shù)支持越來越成熟,將無人循跡小車與消防滅火相結(jié)合,設(shè)計(jì)循跡滅火小車,無疑是高層建筑火災(zāi)問題的合理解決方案.此外,在一些高?;馂?zāi)現(xiàn)場,例如化工廠、易燃易爆的生產(chǎn)廠房乃至加油站,消防滅火工作對消防員的生命安全威脅極大,無人循跡滅火小車也是解決這一類火災(zāi)的合理選擇[1].為此,本文針對無人循跡滅火小車深入研究,完成無人循跡滅火小車整體系統(tǒng)結(jié)構(gòu)、硬件、軟件等各部分的設(shè)計(jì)工作,并通過試驗(yàn),驗(yàn)證所設(shè)計(jì)的無人循跡滅火小車的循跡、滅火等相關(guān)功能.
方案最終采用4個(gè)輪子的傳統(tǒng)小車,前面兩個(gè)輪子分別連接兩個(gè)直流電機(jī),后兩個(gè)輪子通過一根軸承連接,并通過前輪帶動(dòng),直流電機(jī)上的軸承前轉(zhuǎn)和后轉(zhuǎn)控制小車的前進(jìn)和后退,而它的差速轉(zhuǎn)動(dòng)控制小車的轉(zhuǎn)向.小車的車身上裝備了紅外、超聲波、溫度等傳感器,這些傳感器將從外部收集獲取信息再傳遞給單片機(jī)分析,最終由單片機(jī)控制小車完成相應(yīng)操作[2].智能循跡滅火小車組成如下:(1)主控制器單元:以STC89C52作為主控制芯片,對車身上的傳感器接收到的周圍環(huán)境信息進(jìn)行分析,再控制小車行駛.(2)信息采集模塊:由循跡、超聲波避障模塊、紅外避障模塊、溫度傳感器等多個(gè)傳感器共同作用,實(shí)現(xiàn)智能循跡小車的信息采集任務(wù),并把采集的信息供主控制單元分析.(3)互動(dòng)單元:由遙控按鍵模塊、蜂鳴器等構(gòu)成,通過直觀的信息和操作者產(chǎn)生互動(dòng).(4)控制模塊:單片機(jī)通過對外部環(huán)境的分析控制小車運(yùn)動(dòng)并且在遇到火源時(shí)能夠控制風(fēng)扇轉(zhuǎn)動(dòng)實(shí)現(xiàn)滅火操作.圖1為本次智能循跡小車的系統(tǒng)框架圖.
圖1 系統(tǒng)框架圖
單片機(jī)電路是此次設(shè)計(jì)成功與否的核心關(guān)鍵,通過單片機(jī)芯片對傳感器所收集的數(shù)據(jù)進(jìn)行運(yùn)算和分析處理[3],并得出最優(yōu)的結(jié)果,通過發(fā)出指令控制小車實(shí)現(xiàn)相應(yīng)功能.STC89C52作為TX-1C單片機(jī)實(shí)驗(yàn)板上最常使用的單片機(jī)型號(hào)為人所知.圖2為對應(yīng)芯片的電路原理圖.
圖2 STC89C52單片機(jī)
循跡模塊的設(shè)計(jì)就是要小車能夠識(shí)別出黑線并且沿著黑線行駛,本次設(shè)計(jì)中采用的是三路TCRT5000紅外反射光電傳感器.小車在行駛的過程中位于車身底板的紅外發(fā)射器向周圍環(huán)境發(fā)射紅外光波,當(dāng)發(fā)出的紅外線遇到了非黑色的地面時(shí)會(huì)出現(xiàn)漫反射現(xiàn)象,而當(dāng)檢測到黑線時(shí),紅外光會(huì)被黑線吸收,這個(gè)時(shí)候的紅外接收器就接受不到發(fā)射的光線.由于這一特性黑線寬度應(yīng)該大于兩紅外發(fā)射探頭的距離.在紅外探頭接收到紅外信號(hào)時(shí),會(huì)根據(jù)對應(yīng)的紅外探頭產(chǎn)生低電平給單片機(jī),單片機(jī)處理分析后控制小車進(jìn)行相應(yīng)的轉(zhuǎn)向[4].圖3為循跡電路的原理圖.
圖3 循跡電路
避障部分設(shè)計(jì)主要以紅外避障為主,通過紅外發(fā)射管和紅外接收管進(jìn)行相應(yīng)的操作.當(dāng)紅外發(fā)射管發(fā)射后,遇到障礙物會(huì)被反射回來,同時(shí)被紅外接收管接收.此時(shí)單片機(jī)接收到這一信息,分析處理后控制電機(jī)轉(zhuǎn)速,再由電機(jī)差速改變小車轉(zhuǎn)向,從而有效避開障礙物.此外還外加了超聲波避障模塊,與紅外避障類似,超聲波模塊根據(jù)超聲波的特性發(fā)射以后接觸障礙物反彈,從而發(fā)現(xiàn)障礙物,實(shí)現(xiàn)轉(zhuǎn)向功能,圖4為避障電路原理圖.
圖4 避障電路
對于火焰信息的檢測,我們采用溫度傳感器進(jìn)行溫度檢測.由于溫度傳感器檢測到溫度后其中的熱敏電阻阻值會(huì)發(fā)生變化,從而改變總體電路的電阻,導(dǎo)致最后單片機(jī)控制風(fēng)扇啟動(dòng)實(shí)施滅火操作,圖5為滅火驅(qū)動(dòng)電路的原理圖.
圖5 滅火驅(qū)動(dòng)電路
智能循跡小車在避障時(shí)能夠通過紅外感應(yīng)探頭檢測前方是否有障礙物.如果有,那么單片機(jī)會(huì)自動(dòng)控制小車改變運(yùn)動(dòng)軌跡來躲避障礙物防止發(fā)生碰撞,與此同時(shí)蜂鳴器也會(huì)因?yàn)閱纹瑱C(jī)接收到路況障礙物的信息而發(fā)出報(bào)警信號(hào)[5].具體表現(xiàn)在當(dāng)小車檢測前方有障礙物時(shí)會(huì)將這一信息傳遞給單片機(jī),此時(shí)的單片機(jī)分析處理后會(huì)產(chǎn)生一個(gè)高電平將三極管導(dǎo)通從而引發(fā)“bell”蜂鳴器導(dǎo)通報(bào)警,圖6為蜂鳴器報(bào)警電路原理圖.
圖6 蜂鳴器報(bào)警電路
本次設(shè)計(jì)采用的電機(jī)驅(qū)動(dòng)芯片為L293D電機(jī)驅(qū)動(dòng)芯片.由于很多市面上的遙控車都采用直流電機(jī)來控制小車運(yùn)動(dòng),直流電機(jī)的特點(diǎn)是存在兩個(gè)控制端,并且能夠通過輸入電平的改變來控制電機(jī)的轉(zhuǎn)動(dòng)[6].由于單片機(jī)自身管腳輸入的電壓是極其微弱的,不足以帶動(dòng)電機(jī)轉(zhuǎn)動(dòng)從而控制小車運(yùn)動(dòng),所以采用驅(qū)動(dòng)芯片來解決這一問題.為了實(shí)現(xiàn)小車的調(diào)速功能,我們采用了L293D這款芯片,圖7為L293D型號(hào)電機(jī)驅(qū)動(dòng)電路原理圖.
圖7 L293D型號(hào)驅(qū)動(dòng)電機(jī)電路
主控制模塊其實(shí)是將各個(gè)傳感器傳遞來的信息加以綜合分析,提出最優(yōu)的解決方案,并進(jìn)行相應(yīng)的行動(dòng).當(dāng)按下開關(guān)后,顯示器上顯示數(shù)字1則為循跡功能.此時(shí)小車會(huì)沿著黑線循跡.當(dāng)按下主控制板右下角的按鈕時(shí),顯示器上顯示的數(shù)字變成了2,此時(shí)實(shí)現(xiàn)的功能為紅外避障,即遇到障礙物自動(dòng)避開.再按一次按鈕,數(shù)字相應(yīng)變成3,此時(shí)可以通過遙控器對小車進(jìn)行前進(jìn)后退轉(zhuǎn)向的操作.
主程序控制要求能夠合理調(diào)節(jié)各模塊的功能和需求,避免出現(xiàn)錯(cuò)誤沖突,圖8為主控制程序流程圖.
對于循跡模塊的程序,將底部的3個(gè)探頭從左往右假設(shè)為P1,P2,P3,當(dāng)P2檢測到黑線而P1,P3沒有檢測到時(shí)說明小車是正對著黑線的,這個(gè)時(shí)候就執(zhí)行前進(jìn)的指令.如果P1檢測到黑線說明小車位于黑線的左側(cè),這個(gè)時(shí)候就執(zhí)行向右轉(zhuǎn)的指令.另外P3檢測到黑線說明小車位于黑線的右側(cè),此時(shí)發(fā)出向左轉(zhuǎn)的指令.根據(jù)以上設(shè)計(jì)來防止小車偏移,圖9為循跡程序流程圖.
首先將寫好的程序放到編譯器里進(jìn)行編譯運(yùn)行,看是否有語法錯(cuò)誤,如果有就進(jìn)行修改.由于小車的功能不止一個(gè),很容易出現(xiàn)一個(gè)功能的代碼錯(cuò)誤導(dǎo)致這個(gè)車沒法行動(dòng).同時(shí)也很難排查具體的問題.因此將每一個(gè)模塊所要實(shí)現(xiàn)的功能寫成一個(gè)代碼進(jìn)行考錄,分別測試對應(yīng)的單個(gè)代碼能否實(shí)現(xiàn)相應(yīng)的功能,如果可以再將所有的代碼放入總程序中進(jìn)行綜合測試.
圖8 主控程序流程圖
圖9 循跡程序流程圖
首先我們將各個(gè)元器件焊接完成,檢查是否焊接牢固,打開電源,看主板上綠色的電源指示燈是否點(diǎn)亮,能點(diǎn)亮就說明小車可以開始工作,也說明焊接部分沒有問題.接著在程序端口上進(jìn)行設(shè)置,考錄程序進(jìn)行相應(yīng)的操作.
在檢測紅外循跡探頭是否工作時(shí),可以在攝像頭下觀察紅色二極管是否有光.如果有光說明探頭安裝沒有問題.如果發(fā)現(xiàn)小車偏離軌道,那么可能是循跡模塊的靈敏度未設(shè)置好,因?yàn)楹诰€并不是不反射紅外線而是反射效果遠(yuǎn)差于白線.若在地面沒有反應(yīng),可以檢測循跡探頭以及單片機(jī)內(nèi)部的排阻是否焊反,如果都沒有問題,那么就可能是靈敏度的問題.如果小車在地面上且沒有黑線的情況下能夠直行說明循跡探頭沒有問題.另外一種情況是原地打轉(zhuǎn)的現(xiàn)象,這種情況若發(fā)生在沒有黑線的地面上,且小車底部前端的循跡探頭指示燈沒有亮,說明它沒有檢測到地面,即默認(rèn)檢測到黑線,此時(shí)小車控制其轉(zhuǎn)彎,需將靈敏度逆時(shí)針旋轉(zhuǎn).由于小車本身多功能的實(shí)現(xiàn)十分耗電,所以小車整體對電壓的要求很高.起初小車能夠?qū)崿F(xiàn)相關(guān)的操作,但一段時(shí)間后會(huì)發(fā)現(xiàn)小車開關(guān)開啟后,顯示屏上的數(shù)字不斷閃爍,電機(jī)也時(shí)停時(shí)轉(zhuǎn),這一現(xiàn)象最后通過萬用表測得電源兩端電壓遠(yuǎn)遠(yuǎn)小于額定的工作電壓6 V,所以需要及時(shí)對電池進(jìn)行充電來供應(yīng)單片機(jī)正常工作.如果發(fā)現(xiàn)小車無法避障,那么和循跡的檢測一樣,可用手機(jī)拍攝小車底盤前端的紅外發(fā)射器是否發(fā)光,如果發(fā)光說明紅外裝置正常工作,如果沒有說明紅外模塊沒有焊接正常,甚至是其本身存在著問題,需要及時(shí)更換.
本文設(shè)計(jì)的無人循跡小車以STC89C2為主控制單元,對各個(gè)模塊傳感器的信息進(jìn)行分析,并發(fā)布命令完成小車的循跡、避障等相應(yīng)功能.同時(shí),在本次設(shè)計(jì)的應(yīng)用技術(shù)層面上添加了滅火功能,可應(yīng)用于某些傳統(tǒng)消防滅火技術(shù)不易實(shí)現(xiàn)的場合.本設(shè)計(jì)為智能車技術(shù)、特殊場合滅火等問題的研究奠定了技術(shù)基礎(chǔ),具有一定的實(shí)際意義.