湖南信息職業(yè)技術(shù)學(xué)院電子工程學(xué)院 黃亞輝
基于單片機(jī)的小車方向控制的研究與設(shè)計(jì)
湖南信息職業(yè)技術(shù)學(xué)院電子工程學(xué)院 黃亞輝
設(shè)計(jì)采用單片機(jī)作為自動往返小車的控制核心,控制小車的啟停、速度、位置等,在設(shè)計(jì)過程中可采用光電傳感器檢測標(biāo)志線,超聲波傳感器可檢測小車的位置,開關(guān)式霍爾傳感器可檢測車的速度和距離。本次設(shè)計(jì)的簡易智能電動車,采用AT89C52單片機(jī)作為小車的檢測和控制核心;采用紅外線接收對管來檢測路上感應(yīng)到的黑色軌道線,從而把反饋到的信號送單片機(jī),使單片機(jī)按照預(yù)定的工作模式可控制小車預(yù)先設(shè)計(jì)好的路線或軌道行駛。
單片機(jī);小車;方向控制;設(shè)計(jì)
根據(jù)本設(shè)計(jì)的要求,確定如下方案:以AT89C52單片機(jī)為核心的控制電路,采用模塊化的設(shè)計(jì)方案,運(yùn)用光電傳感器、金屬探測傳感器、超聲波傳感器組成不同的檢測電路,實(shí)現(xiàn)小車在行駛中自動尋跡、躲避障礙物、測量里程等問題[2]。并將測量數(shù)據(jù)傳送至單片機(jī)進(jìn)行處理,單片機(jī)根據(jù)檢測的數(shù)據(jù)實(shí)現(xiàn)對小車的智能控制。要求小車在自動行駛過程中能夠及時(shí)、靈活地避開障礙物.具體要求如下[3]:如果小車前方無障礙物,小車直走;如果僅在小車右前方有障礙物,小車向左拐彎;如果僅在小車左前方有障礙物,小車向右拐彎;如果小車直前方有障礙物,小車后退并右轉(zhuǎn)。
圖1 總體框圖
我們需要擅長處理多開關(guān)量的標(biāo)準(zhǔn)單片機(jī),而不能用精簡I/O口和程序存儲器的小體積單片機(jī),我們選定了89C52單片機(jī)作為本設(shè)計(jì)的主控裝置,52系列單片機(jī)具有功能強(qiáng)大的位操作指令,I/O口均可按位尋址,程序空間多達(dá)4K對于本設(shè)計(jì)也綽綽有余。
針對要求,這臺小車的車體選用現(xiàn)成的市售玩具車改裝而成,采用霍爾傳感器,使用時(shí)只需要在車輪上安裝小的磁鐵[4]。小車行駛過程中,霍爾傳感器通過粘貼在車輪上的磁塊對轉(zhuǎn)動圈數(shù)進(jìn)行檢測,每轉(zhuǎn)動一周產(chǎn)生一個(gè)低脈沖,通過單片機(jī)計(jì)數(shù)可得到脈沖個(gè)數(shù),這樣可得小車轉(zhuǎn)動圈數(shù)即得到轉(zhuǎn)速,再根據(jù)車輪周長可計(jì)算出小車前進(jìn)或后退的距離。采用超聲波傳感器,超聲波傳感器可以給單片機(jī)提供精確的位置信號。單片機(jī)根據(jù)發(fā)射和接收到的超聲波的時(shí)間差來判斷小車離擋板的距離,根據(jù)這個(gè)距離再發(fā)出轉(zhuǎn)向調(diào)整控制,實(shí)現(xiàn)小車的正常運(yùn)行。為完成設(shè)計(jì)要求,我們使用了很多傳感器包括“紅外傳感器”“紅外對管”使這臺小車有了“視覺”和“觸覺”,我們還為這臺小車安裝了“大腦”——“單片機(jī)控制系統(tǒng)”通過以上努力,基本可以使這臺小車可以按我們設(shè)定的路線運(yùn)行[5]。
(1)晶振電路。單片機(jī)要工作必須有一個(gè)外部的時(shí)鐘源,這個(gè)時(shí)鐘源由外部晶振產(chǎn)生,具體電路見的CY1、C8、C9,在電路板晶振和電容要靠近18腳和19腳放置。(2)復(fù)位電路。S12的復(fù)位是由外部的復(fù)位電路來實(shí)現(xiàn)的。復(fù)位引腳RST通過一個(gè)斯密特觸發(fā)器用來抑制噪聲,在每個(gè)機(jī)器周期的S5P2,斯密特觸發(fā)器的輸出電平由復(fù)位電路采樣一次,然后才能得到內(nèi)部復(fù)位操作所需要的信號[6]。
圖2 控制系統(tǒng)設(shè)計(jì)圖
檢測障礙物的距離可以根據(jù)要求通過尾部的電位器旋鈕進(jìn)行調(diào)節(jié)。能正確的按照遙控指令進(jìn)行啟動、左轉(zhuǎn)、右轉(zhuǎn)、停止;在進(jìn)行尋跡調(diào)試時(shí)發(fā)現(xiàn)在駛出軌道左面時(shí)能快速靈敏的駛回原軌道,但在駛出右面時(shí)有時(shí)不能駛回原軌道,反應(yīng)不是很靈敏,后來發(fā)現(xiàn)右面的紅外對管的反射距離沒有左面的反射距離大,最后我們決定采用墊高右面的軌道來達(dá)到右面紅外對管的反射距離,經(jīng)過這一處理基本可以達(dá)到尋跡的要求了。
先應(yīng)用C52單片機(jī)產(chǎn)生能夠控制直流電機(jī)旋轉(zhuǎn)方向等各種控制信號,后利用這些控制信號去實(shí)現(xiàn)對直流電機(jī)的旋轉(zhuǎn)方向等的控制;因此本模塊所設(shè)計(jì)的控制函數(shù)可以用作功能模塊被后續(xù)模塊直接調(diào)用。在進(jìn)行微機(jī)控制系統(tǒng)設(shè)計(jì)時(shí),除了系統(tǒng)硬件設(shè)計(jì)外,軟件設(shè)計(jì)在微機(jī)控制系統(tǒng)設(shè)計(jì)中占重要地位。對于本系統(tǒng),軟件尤為重要。為了完成任務(wù),在進(jìn)行軟件設(shè)計(jì)時(shí)采用程序設(shè)計(jì)方法叫模塊程序設(shè)計(jì)法。模塊程序設(shè)計(jì)法的主要優(yōu)點(diǎn)是:第一,單個(gè)模塊比起一個(gè)完整的程序易于編寫及調(diào)試;第二,模塊可以共存,一個(gè)模塊可以被多個(gè)任務(wù)在不同條件下調(diào)用;第三,模塊程序允許設(shè)計(jì)者分割任務(wù)和利用已有程序,為設(shè)計(jì)者提供方便。
基礎(chǔ)層實(shí)現(xiàn):電源模塊可選擇將市電轉(zhuǎn)換成直流+5V電源給整個(gè)系統(tǒng)供電,顯示器件選用LCDl602、四位一體數(shù)碼管或點(diǎn)陣??刂破饕笫褂冒存I控制,直流電機(jī)驅(qū)動模塊可選擇三極管構(gòu)成的H橋驅(qū)動電路,利用按鍵控制單片機(jī)發(fā)送PWM波,控制電機(jī)的運(yùn)行模式。
提高層實(shí)現(xiàn):在基礎(chǔ)層實(shí)現(xiàn)基礎(chǔ)上,控制器可以選用紅外遙控解碼或者藍(lán)牙串口控制,利用控制器控制單片機(jī)發(fā)出不同的PWM波,控制電機(jī)的多種運(yùn)行模式。
研究層實(shí)現(xiàn):在提高層實(shí)現(xiàn)基礎(chǔ)上,加入紅外傳感器自動尋跡功能、超聲波傳感器自動避障功能或自行設(shè)計(jì)其他功能(見圖3)。
圖3 軟件設(shè)計(jì)流程圖
本系統(tǒng)用一片小型單片機(jī)完全能實(shí)現(xiàn)預(yù)定功能,幾乎沒有復(fù)雜的外圍電路器件,結(jié)構(gòu)簡單可靠,硬件、軟件代價(jià)都較低,系統(tǒng)成本預(yù)算較低。
[1]程叢叢,田為民. 基于單片機(jī)的智能循跡小車[J].山東工業(yè)技術(shù),2017,21(07):2.
[2]朱婷,葉?。逃龣C(jī)器人小車循跡部分的設(shè)計(jì)與改進(jìn)[J].電子技術(shù)與軟件工程,2017,17(05):260-261.
[3]卜文東,華凱,馬草原,白耀武,孫榮琛.基于紅外傳感器智能小車的設(shè)計(jì)[J].電子世界,2017,14(03):134-136.
[4]田蔚.基于單片機(jī)控制的智能送料小車的硬件電路設(shè)計(jì)[J].企業(yè)技術(shù)開發(fā),2016,19(13):42-44.
[5]索南尖措,楊建,周歡歡,楊倩.基于STC89C52單片機(jī)的智能小車的設(shè)計(jì)[J].信息安全與技術(shù),2016,22(04):67-69.
[6]王勇申,初俊博,孫恒震,郝政,韓特,劉崢.智能小車的設(shè)計(jì)與應(yīng)用[J].科技傳播,2016,21(07):170-171.
黃亞輝(1990—),男,湖南益陽人,大學(xué)本科,助教,研究方向:智能控制與機(jī)器人應(yīng)用技術(shù)。