宋音來 陸嘉鑫
(南京師范大學泰州學院電力工程學院,江蘇泰州 225300)
智能小車具有環(huán)境監(jiān)測、數(shù)據處理和運行規(guī)劃等多種功能,是將計算機、傳感器和自動控制技術融為一體的一門學問,是新時代下一個極具發(fā)展前景的產業(yè)。
現(xiàn)如今隨著汽車行業(yè)的迅猛發(fā)展,推動著車輛從基本驅動功能向智能化方向發(fā)展,無人駕駛、快速響應、自動避讓等都是世界各國想要攻克的難題,世界各大汽車公司也正致力于“高度自動駕駛技術”的實用化研發(fā)與產業(yè)化發(fā)展。日本日產和三菱汽車公司發(fā)布了一款汽車防撞裝置,基本實現(xiàn)了汽車正前方防止碰撞和自動躲避障礙物的功能。在汽車安全性能上,日本的日產、豐田和本田等汽車公司推出的汽車產品就做得非常突出,具有車距離控制、車道定位和障礙物報警等專門為行車安全設計的功能[1]。
智能小車是一個復雜而又龐大的系統(tǒng),其控制核心是內部的控制芯片。用多種傳感器來采集外部環(huán)境信息并將接收到的信息傳給主控制器,然后由控制器來控制其各個模塊執(zhí)行相應的動作。智能小車的制造成本相對來說比較低廉,在我們的日常生活中有著十分廣泛的運用。
圖1 智能小車的硬件總設計框圖
智能小車設計的硬件結構,其主要包括STC89C52單片機、電機驅動調速模塊、電源設計與小車對應三大功能的功能模塊設計。硬件總設計框圖如圖1所示。
采用STC89C52單片機,其功耗低、性能高,具有32個I/O端口[2]。電機驅動模塊L298其內部結構為雙H橋電路,通過I N P U T 1 和I N P U T 2 口控制輸出口O U T P U T 1 和O U T PU T 2 的輸出電平,即可控制小車左側兩個電機的正、反轉與停止。若高電平為1,低電平為0,INPUT1和INPUT2對應01時左電機正轉,10時左電機反轉,00時左電機停轉。L298芯片的INPUT3和INPUT4口則控制小車右側電機。循跡模塊和避障模塊使用LM393芯片,當小車越來越靠近障礙物時,單片機接受到低電位,則表示避障紅外傳感器感應到有障礙,反之,高電位時,則右避障紅外傳感器沒有感應到有障礙。紅外遙控模塊主要負責接收紅外遙控器發(fā)射的紅外信號, 并將信號傳送至單片機,單片機通過處理分析接收到數(shù)據值來判斷相應的遙控器按鍵值,實現(xiàn)對小車不同運動狀態(tài)的控制。電源模塊采用LM7805降壓芯片,通過該芯片將7.4V的電壓降到5V,用于滿足芯片的供電要求。
小車的運行方式主要包括自動循跡、自動避障、遙控、沿壁功能等四種[3]。其功能選擇是依據小車檔位調節(jié)轉換功能,即通過手動按壓按鈕的方式調節(jié)小車檔位,1檔對應循跡功能,2檔對應避障功能,3檔對應遙控功能。只需要判斷按鍵所按次數(shù),1次為循跡檔,2次為避障檔,3次為遙控檔,4次又返回循跡檔,以此往復,對應的檔位再調用對應功能的函數(shù)。
圖2 自動循跡
圖3 紅外避障
圖4 紅外遙控
自動循跡,小車沿著黑線行駛,當黑線位于車頭兩側傳感器的中間時,則小車直行;當小車頭部左邊的紅外傳感器壓到黑線時,右邊沒有壓線,小車將會向左轉微轉一定角度,左右兩側紅外傳感器并不斷檢測是否已經不再壓線,直到不再壓線小車才會停止左轉,而變?yōu)橹毙?當左右兩側傳感器同時接收不到紅外信號時,小車立即停車,防止小車誤操作而損壞。Left_1_led與Right_1_led分別為小車底盤左右兩邊傳感器檢測信號,分別用0和1表示,0為有信號(即未能檢測到有黑線),1為無信號(即檢測到有黑線),流程設計如圖2所示。
自動避障,自動避障傳感器位于車頭兩側,當車頭左右兩側的紅外傳感器都無信號時,則表示小車前方無障礙,此時小車直行;當小車左側傳感器接收到信號,右側無信號時,則表示小車左側有障礙,右側沒有障礙,此時小車右轉一定角度,直到左邊傳感器不再有信號后小車直行;當左右兩側傳感器都接收到信號時,則表示小車左右兩側都有障礙,此時小車應當后退,并通過左右兩個傳感器檢測小車兩側是否有障礙,如果左側無障礙,小車左轉,右側無障礙,右轉。LeftIRBZ與RightIRBZ分別為小車左右兩側紅外傳感器檢測信號,用0和1表示,0表示檢測到有障礙,1表示沒有檢測到信號,如圖3所示。
紅外遙控是通過對應按鍵碼值完成相應動作,按下不同的按鍵就可以控制小車前后左右移動和停止了。在ControlCar( )函數(shù)中定義Type參數(shù)的某一值表示的是紅外遙控器上的某一按鍵的碼值。Type=1時,按鍵碼值為46,控制小車前進;Type=2時,按鍵碼值為15,控制小車后退;Type=3時,按鍵碼值為44,控制小車左轉;Type=4時,按鍵碼值為43,控制小車右轉;Type=5時,按鍵碼值為40,控制小車停止,如圖4所示。
改變小車紅外感應裝置的方向,將方向改為相對正前方向外45度角,即此時的紅外感應裝置不僅可以感應前方是否有物體,又可感應兩側是否存在物體。檢測到左邊存在墻壁時,右轉一定角度,并直行一定時間,再左轉檢測墻壁是否存在變化,若無變化則重復以上操作,從而實現(xiàn)檢測左邊是否沿著墻壁。LeftIRBZ與RightIRBZ分別為小車頭部左右兩側紅外傳感器信號,0表示檢測到有障礙,1表示沒有檢測到有信號。通過設置一變量值來判斷小車的狀態(tài),小車未碰到墻壁應直行;小車右邊有墻,小車沿著右邊墻壁行駛;小車左邊有墻,小車應當沿著左邊墻壁行駛,詳見圖5所示。
圖5 沿壁程序
智能小車是一個可以自由移動的智能機器人,比較適合在人們無法工作的地方工作,也可取代人們完成一些繁雜或危險性質的工作。作為現(xiàn)代自動控制領域內十分偉大的一項發(fā)明,智能小車已經和我們的生產生活密不可分。
智能小車是由STC89C52單片機控制,來實現(xiàn)循跡、避障、遙控以及沿壁這四項功能,是智能汽車未來自動駕駛的發(fā)展趨勢,推動未來智能汽車的發(fā)展。