宋音來 陸嘉鑫
(南京師范大學(xué)泰州學(xué)院電力工程學(xué)院,江蘇泰州 225300)
智能小車具有環(huán)境監(jiān)測、數(shù)據(jù)處理和運(yùn)行規(guī)劃等多種功能,是將計(jì)算機(jī)、傳感器和自動(dòng)控制技術(shù)融為一體的一門學(xué)問,是新時(shí)代下一個(gè)極具發(fā)展前景的產(chǎn)業(yè)。
現(xiàn)如今隨著汽車行業(yè)的迅猛發(fā)展,推動(dòng)著車輛從基本驅(qū)動(dòng)功能向智能化方向發(fā)展,無人駕駛、快速響應(yīng)、自動(dòng)避讓等都是世界各國想要攻克的難題,世界各大汽車公司也正致力于“高度自動(dòng)駕駛技術(shù)”的實(shí)用化研發(fā)與產(chǎn)業(yè)化發(fā)展。日本日產(chǎn)和三菱汽車公司發(fā)布了一款汽車防撞裝置,基本實(shí)現(xiàn)了汽車正前方防止碰撞和自動(dòng)躲避障礙物的功能。在汽車安全性能上,日本的日產(chǎn)、豐田和本田等汽車公司推出的汽車產(chǎn)品就做得非常突出,具有車距離控制、車道定位和障礙物報(bào)警等專門為行車安全設(shè)計(jì)的功能[1]。
智能小車是一個(gè)復(fù)雜而又龐大的系統(tǒng),其控制核心是內(nèi)部的控制芯片。用多種傳感器來采集外部環(huán)境信息并將接收到的信息傳給主控制器,然后由控制器來控制其各個(gè)模塊執(zhí)行相應(yīng)的動(dòng)作。智能小車的制造成本相對來說比較低廉,在我們的日常生活中有著十分廣泛的運(yùn)用。

圖1 智能小車的硬件總設(shè)計(jì)框圖
智能小車設(shè)計(jì)的硬件結(jié)構(gòu),其主要包括STC89C52單片機(jī)、電機(jī)驅(qū)動(dòng)調(diào)速模塊、電源設(shè)計(jì)與小車對應(yīng)三大功能的功能模塊設(shè)計(jì)。硬件總設(shè)計(jì)框圖如圖1所示。
采用STC89C52單片機(jī),其功耗低、性能高,具有32個(gè)I/O端口[2]。電機(jī)驅(qū)動(dòng)模塊L298其內(nèi)部結(jié)構(gòu)為雙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 的輸出電平,即可控制小車左側(cè)兩個(gè)電機(jī)的正、反轉(zhuǎn)與停止。若高電平為1,低電平為0,INPUT1和INPUT2對應(yīng)01時(shí)左電機(jī)正轉(zhuǎn),10時(shí)左電機(jī)反轉(zhuǎn),00時(shí)左電機(jī)停轉(zhuǎn)。L298芯片的INPUT3和INPUT4口則控制小車右側(cè)電機(jī)。循跡模塊和避障模塊使用LM393芯片,當(dāng)小車越來越靠近障礙物時(shí),單片機(jī)接受到低電位,則表示避障紅外傳感器感應(yīng)到有障礙,反之,高電位時(shí),則右避障紅外傳感器沒有感應(yīng)到有障礙。紅外遙控模塊主要負(fù)責(zé)接收紅外遙控器發(fā)射的紅外信號(hào), 并將信號(hào)傳送至單片機(jī),單片機(jī)通過處理分析接收到數(shù)據(jù)值來判斷相應(yīng)的遙控器按鍵值,實(shí)現(xiàn)對小車不同運(yùn)動(dòng)狀態(tài)的控制。電源模塊采用LM7805降壓芯片,通過該芯片將7.4V的電壓降到5V,用于滿足芯片的供電要求。
小車的運(yùn)行方式主要包括自動(dòng)循跡、自動(dòng)避障、遙控、沿壁功能等四種[3]。其功能選擇是依據(jù)小車檔位調(diào)節(jié)轉(zhuǎn)換功能,即通過手動(dòng)按壓按鈕的方式調(diào)節(jié)小車檔位,1檔對應(yīng)循跡功能,2檔對應(yīng)避障功能,3檔對應(yīng)遙控功能。只需要判斷按鍵所按次數(shù),1次為循跡檔,2次為避障檔,3次為遙控檔,4次又返回循跡檔,以此往復(fù),對應(yīng)的檔位再調(diào)用對應(yīng)功能的函數(shù)。

圖2 自動(dòng)循跡

圖3 紅外避障

圖4 紅外遙控
自動(dòng)循跡,小車沿著黑線行駛,當(dāng)黑線位于車頭兩側(cè)傳感器的中間時(shí),則小車直行;當(dāng)小車頭部左邊的紅外傳感器壓到黑線時(shí),右邊沒有壓線,小車將會(huì)向左轉(zhuǎn)微轉(zhuǎn)一定角度,左右兩側(cè)紅外傳感器并不斷檢測是否已經(jīng)不再壓線,直到不再壓線小車才會(huì)停止左轉(zhuǎn),而變?yōu)橹毙?當(dāng)左右兩側(cè)傳感器同時(shí)接收不到紅外信號(hào)時(shí),小車立即停車,防止小車誤操作而損壞。Left_1_led與Right_1_led分別為小車底盤左右兩邊傳感器檢測信號(hào),分別用0和1表示,0為有信號(hào)(即未能檢測到有黑線),1為無信號(hào)(即檢測到有黑線),流程設(shè)計(jì)如圖2所示。
自動(dòng)避障,自動(dòng)避障傳感器位于車頭兩側(cè),當(dāng)車頭左右兩側(cè)的紅外傳感器都無信號(hào)時(shí),則表示小車前方無障礙,此時(shí)小車直行;當(dāng)小車左側(cè)傳感器接收到信號(hào),右側(cè)無信號(hào)時(shí),則表示小車左側(cè)有障礙,右側(cè)沒有障礙,此時(shí)小車右轉(zhuǎn)一定角度,直到左邊傳感器不再有信號(hào)后小車直行;當(dāng)左右兩側(cè)傳感器都接收到信號(hào)時(shí),則表示小車左右兩側(cè)都有障礙,此時(shí)小車應(yīng)當(dāng)后退,并通過左右兩個(gè)傳感器檢測小車兩側(cè)是否有障礙,如果左側(cè)無障礙,小車左轉(zhuǎn),右側(cè)無障礙,右轉(zhuǎn)。LeftIRBZ與RightIRBZ分別為小車左右兩側(cè)紅外傳感器檢測信號(hào),用0和1表示,0表示檢測到有障礙,1表示沒有檢測到信號(hào),如圖3所示。
紅外遙控是通過對應(yīng)按鍵碼值完成相應(yīng)動(dòng)作,按下不同的按鍵就可以控制小車前后左右移動(dòng)和停止了。在ControlCar( )函數(shù)中定義Type參數(shù)的某一值表示的是紅外遙控器上的某一按鍵的碼值。Type=1時(shí),按鍵碼值為46,控制小車前進(jìn);Type=2時(shí),按鍵碼值為15,控制小車后退;Type=3時(shí),按鍵碼值為44,控制小車左轉(zhuǎn);Type=4時(shí),按鍵碼值為43,控制小車右轉(zhuǎn);Type=5時(shí),按鍵碼值為40,控制小車停止,如圖4所示。
改變小車紅外感應(yīng)裝置的方向,將方向改為相對正前方向外45度角,即此時(shí)的紅外感應(yīng)裝置不僅可以感應(yīng)前方是否有物體,又可感應(yīng)兩側(cè)是否存在物體。檢測到左邊存在墻壁時(shí),右轉(zhuǎn)一定角度,并直行一定時(shí)間,再左轉(zhuǎn)檢測墻壁是否存在變化,若無變化則重復(fù)以上操作,從而實(shí)現(xiàn)檢測左邊是否沿著墻壁。LeftIRBZ與RightIRBZ分別為小車頭部左右兩側(cè)紅外傳感器信號(hào),0表示檢測到有障礙,1表示沒有檢測到有信號(hào)。通過設(shè)置一變量值來判斷小車的狀態(tài),小車未碰到墻壁應(yīng)直行;小車右邊有墻,小車沿著右邊墻壁行駛;小車左邊有墻,小車應(yīng)當(dāng)沿著左邊墻壁行駛,詳見圖5所示。

圖5 沿壁程序
智能小車是一個(gè)可以自由移動(dòng)的智能機(jī)器人,比較適合在人們無法工作的地方工作,也可取代人們完成一些繁雜或危險(xiǎn)性質(zhì)的工作。作為現(xiàn)代自動(dòng)控制領(lǐng)域內(nèi)十分偉大的一項(xiàng)發(fā)明,智能小車已經(jīng)和我們的生產(chǎn)生活密不可分。
智能小車是由STC89C52單片機(jī)控制,來實(shí)現(xiàn)循跡、避障、遙控以及沿壁這四項(xiàng)功能,是智能汽車未來自動(dòng)駕駛的發(fā)展趨勢,推動(dòng)未來智能汽車的發(fā)展。