馮國文,王 彬,王籽涵,劉世運,黃健俊,徐天如,郭海港(山東科技大學 山東 青島 266590)
(1)數據采集模塊,主要由火焰采集模塊和避障模塊構成,實現了滅火機器人的對各類參數的采集,是控制器核心部分。
(2)信息處理單元,用單片機作為信息處理單元,實現對數據的采樣及數據分析運算,并發出控制指令。
(3)人機交互單元,由按鍵及顯示單元組成。按鍵實現人機交互;顯示采用LCD1602 液晶模塊,可以提供豐富、直觀、友好的信息界面。
(4)控制模塊,控制模塊主要由電機驅動電路、滅火模塊等組成,實現對驅動電機運轉及開啟風扇滅火。

圖1 滅火機器人系統框圖
圖1 中,數據采集模塊對障礙物方位、火焰數據進行采集,并將數據送給MCU進行數據處理。MCU根據接收的信息發出控制指令控制電機或風扇工作,顯示單元可顯示當前滅火的次數和行進狀態。按鍵用于用戶啟動滅火機器人。
由于我們在智能車滅火時所經過的路徑是不確定的但同時又要求小車精準的到達目的地,所以我們選用了直流減速電機。直流減速電機轉動時機械扭矩比較大,而且體積小,重量輕,使用也方便。我們經過對比后選擇的直流電機減速比為1:78,電機在減速后速度可達為350r/min。滅火智能車車輪我們采用的直徑為8cm,因此最大速度V=2r·v=2*3.14*0.04*300/60=0.942m/s,這個速度在測試時已經足夠快;實現滅火工作的是采用3.3V空心杯電機驅動風扇,試驗所采用的火源為小蠟燭產生的火焰,火勢較小,空心杯電機產生的風力足夠在幾秒內滅火。
火焰測量電路是用來控制二極管檢測火源點的,該電路設計時采用紅外接收二極管,它的探測角度足夠大,為60度,能探測到光波長度在750納米~1000納米內的紅外光,當紅外光波長在880納米左右時,其靈敏度達到最大值。紅外接收二極管能夠將外界檢測到的紅外光的強弱變化轉化為電流的變化再通過測試電阻兩端的電壓數值的變化。外界紅外光越強,數值越??;紅外光越弱,數值越大。
本設計對障礙物的檢測采用E18-D50NK型號的紅外傳感器。E18-D50NK傳感器是一種紅外線反射式接近開關傳感器,用于物體的反射式檢測,該傳感器具有體積小,功耗低,應用方便,穩定可靠等優點。該傳感器輸出信號為數字量,所以我們不需要進行A/D轉換,便可直接與stc15w4k系列芯片的I/O口相連,當單片機檢測到障礙物時信號線輸出為低電平,正常時為高電平。
我們在這里選用STC15W4K32S4單片機為核心,配合直流微型電機、電機接口電路,電壓調整電路,八路信號收發器,調試接口等電路組成系統板電路。
程序設計語言有三種:機器語言、匯編語言和高級語言。本系統就選用了C語言來編制本設計的程序。使用C語言,大大減少程序的指令,可以快速地完成本設計的程序。滅火機器人的軟件部分可以分成主程序設計、尋火模塊、避障模塊、控制模塊等。
本設計軟件方框圖如圖2所示,小車初始化后主程序開始判斷是否有火源,若沒有火,小車直線行駛,進行避障,繼續尋找火源;若有火就調用尋火程序模塊,找到火源并滅火。

圖2 滅火小車系統流程圖
單片機不斷讀火焰傳感器的信號,當有火時,單片機判斷火源位置。當左邊的兩個傳感器有信號時,單片機控制電機左轉;當右邊的兩個傳感器有信號時,單片機控制直流電機右轉;當中間的遠紅外接收二極管有信號時,單片機控制電機直行;當中間的近紅外接收二極管有信號時,主程序調用滅火模塊熄滅火焰。
單片機采集紅外光電對管的信號,判斷障礙的位置。沒有障礙,小車就直行尋光。有障礙時,首先判斷前面有無火源,如果有火源就進行避障,會影響滅火。在判定沒有火源時,(1)兩個傳感器都有信號,小車停止,后退之后右轉90°;(2)右邊傳感器有信號時,就停下來再左轉45°;(3)當左邊傳感器有信號時,小車停下并右轉45°。
我們在電路板焊接完進行上電測試時,發現電源指示燈沒有亮,然后聞到了燒焦味,穩壓芯片用手一摸很燙,我們趕緊關掉電源。最后發現穩壓芯片接反了。還有在避障傳感器調試的時候,發現只安裝一個避障傳感器時無法準確判斷遇到的障礙物的方向,我用程序無法調試,所以就無法控制小車,后來經過調試發現在小車車頭左右各裝一個傳感器就可以準確的解決問題了。同時,在于各個高校的同學一塊比賽的過程中,我們也看到了與別人的差距,也更加激勵我們不要墨守成規,拘泥于課本的知識和方法,要積極開發創新能力,更大的進步。