基于μC/OS-Ⅱ系統(tǒng)的智能尋跡模型車的設(shè)計(jì)與實(shí)現(xiàn)
智能車輛是當(dāng)今車輛工程領(lǐng)域研究的前沿,它體現(xiàn)了車輛工程、人工智能、自動(dòng)控制、計(jì)算機(jī)等多個(gè)學(xué)科領(lǐng)域理論技術(shù)的交叉和綜合,是未來(lái)汽車發(fā)展的趨勢(shì)。以往智能小車在軟件設(shè)計(jì)上多采用單程序控制,不利于智能車在外部環(huán)境改變時(shí)做出快速反應(yīng),為使智能車系統(tǒng)反應(yīng)更為快速,該智能車應(yīng)用μC/OS-Ⅱ系統(tǒng),該系統(tǒng)適合小型控制系統(tǒng),具有執(zhí)行效率高、占用空間小、實(shí)時(shí)性能優(yōu)良等特點(diǎn)。且選用功耗較低、資源更為豐富的AVR系列ATmega16單片機(jī)作為核心控制單元。
采用紅外探測(cè)法實(shí)現(xiàn)尋跡功能,即將紅外光電傳感器固定在底盤前沿,利用其在不同顏色的物體表面具有不同的反射性質(zhì)的特點(diǎn),在小車行駛過(guò)程中不斷地向地面發(fā)射紅外光,單片機(jī)就是否收到反射回來(lái)的紅外光為依據(jù)來(lái)確定黑線的位置和小車的行走路線。并在后輪上粘上均勻分布的黑白條紋,根據(jù)光電反射原理,測(cè)量車速。為保證智能車在行駛過(guò)程具有良好的操穩(wěn)性和平順性,控制系統(tǒng)對(duì)直流電機(jī)驅(qū)動(dòng)控制提出了較為理想的解決方案。
1 硬件系統(tǒng)的設(shè)計(jì)及實(shí)現(xiàn)
智能車的硬件部分以AVR系列ATmega 16單片機(jī)為核心控制器,由核心控制單元、電源管理模塊、路徑識(shí)別模塊、轉(zhuǎn)向控制模塊、電機(jī)驅(qū)動(dòng)模塊和速度及路程檢測(cè)模塊等組成。智能車控制系統(tǒng)總體結(jié)構(gòu)如圖1所示。
1.1 核心控制單元
智能車采用ATmage 16型單片機(jī)作為主控CPU其主要特點(diǎn)為高性能、低功耗、高性價(jià)比,資源豐富,并且支持高級(jí)語(yǔ)言編程,在運(yùn)行速度。內(nèi)存容量,內(nèi)部功能模塊集成化等諸多方面比MCS-51系列先進(jìn)。在智能車系統(tǒng)設(shè)計(jì)中,單片機(jī)的I/O資源分配如下:PB3,PD7為伺服電動(dòng)機(jī)的PWM控制信號(hào)輸出引腳;PD0~PD3為驅(qū)動(dòng)電機(jī)正反轉(zhuǎn)引腳;路徑識(shí)別系統(tǒng)經(jīng)排線由PA0~PA6輸入至單片機(jī)。
1.2 電源管理模塊
為避免電機(jī)等器件對(duì)系統(tǒng)產(chǎn)生干擾,智能車的各功能模塊單獨(dú)供電。采用12 V蓄電池為直流電機(jī)供電,將12 V電壓降壓、穩(wěn)壓后給單片機(jī)系統(tǒng)和其他芯片供電。相對(duì)于其他類型的電源,蓄電池具有較強(qiáng)的電流驅(qū)動(dòng)能力以及穩(wěn)定的電壓輸出性能??紤]到蓄電池的體積大,在車體設(shè)計(jì)時(shí)留出了足夠的空間。
在穩(wěn)壓時(shí),采用兩片7812芯片將電壓穩(wěn)壓至12 V后給直流電機(jī)供電,然后采用2576將電壓穩(wěn)至5 V。2576的輸出電流最大可到3 A,完全滿足系統(tǒng)要求。
1.3 路徑識(shí)別模塊
智能車采用紅外探測(cè)法實(shí)現(xiàn)小車在黑色地板上循白線行走,為了提高控制精度,要求傳感器排列緊密,越近越好。但傳感器排列緊密,傳感器發(fā)射管的光線可能會(huì)從地面反射進(jìn)入臨近傳感器的接收管。為消除傳感器之間互相干擾,傳感器共分為7組,由PA0~PA6這7個(gè)I/O口直接供MCU讀取傳感器數(shù)據(jù)。利用紅外線在不同顏色的物體表面具有不同的反射性質(zhì)的特點(diǎn),在智能車行駛過(guò)程中傳感器不斷地向地面發(fā)射紅外光,當(dāng)紅外光遇到白色紙質(zhì)地板時(shí)發(fā)生漫反射,反射光被裝在小車上的接收管接收;如果遇到黑線則紅外光被吸收,小車上的接收管接收不到紅外光(原理圖為圖2所示)。單片機(jī)就是否收到反射回來(lái)的紅外光為依據(jù)來(lái)確定黑線的位置和小車的行走路線。
1.4 電機(jī)驅(qū)動(dòng)模塊
在電機(jī)驅(qū)動(dòng)方面,采用運(yùn)用L298作為電機(jī)驅(qū)動(dòng)芯片,A,B兩個(gè)電機(jī)分別控制左面和右面各兩個(gè)輪。通過(guò)調(diào)節(jié)兩輪的轉(zhuǎn)速來(lái)實(shí)現(xiàn)智能車的轉(zhuǎn)向,即由單片機(jī)控制進(jìn)行PWM變頻調(diào)速,通過(guò)程序設(shè)計(jì)改變脈沖調(diào)寬波形的占空比,從而實(shí)現(xiàn)調(diào)速。轉(zhuǎn)向角度不同,則兩電動(dòng)機(jī)的轉(zhuǎn)速差異不同。當(dāng)小車處于較大的偏離狀態(tài)時(shí),需把一個(gè)電機(jī)的速度調(diào)至極低,另一電機(jī)全速運(yùn)行,從而在較短時(shí)間內(nèi)完成路線的調(diào)整。
通過(guò)設(shè)定電機(jī)的正轉(zhuǎn)和反轉(zhuǎn)來(lái)控制智能車的前進(jìn)和后退。這種電路設(shè)計(jì)簡(jiǎn)易高效,并能確保前后兩輪同步。
1.5 車速檢測(cè)模塊
智能車系統(tǒng)通過(guò)車速檢測(cè)模塊來(lái)讀取實(shí)時(shí)車速。采用在后輪上粘貼均勻分布有黑白條紋的方法。利用圖3的檢測(cè)電路來(lái)對(duì)車輪上的黑白條紋進(jìn)行檢測(cè)。根據(jù)光電反射原理,在車輪轉(zhuǎn)動(dòng)時(shí),紅外接收管接收到反射光強(qiáng)弱高低變化,就會(huì)產(chǎn)生與車輪轉(zhuǎn)速相對(duì)應(yīng)的脈沖信號(hào),將該脈沖信號(hào)進(jìn)行放大整形后輸入單片機(jī)的輸入捕獲引腳PA7,記錄單位時(shí)間內(nèi)所得到的脈沖數(shù),就能夠表示出當(dāng)前車速,同時(shí)通過(guò)累加可以計(jì)算出小車所行走的路程。
評(píng)論