基于MC9S12DGl28的自主尋跡智能車控制系統(tǒng)
1 引言
智能汽車是汽車電子、人工智能、模式識(shí)別、自動(dòng)控制、計(jì)算機(jī)、機(jī)械多個(gè)學(xué)科領(lǐng)域的交叉綜合的體現(xiàn),具有重要的應(yīng)用價(jià)值。智能尋跡車是基于飛思卡爾MC9S12DGl28單片機(jī)開(kāi)發(fā)實(shí)現(xiàn)的,該系統(tǒng)采用CCD傳感器識(shí)別道路中央黑色的引導(dǎo)線,利用傳感器檢測(cè)智能車的加速度和速度,在此基礎(chǔ)上利用合理的算法控制智能車運(yùn)動(dòng),從而實(shí)現(xiàn)快速穩(wěn)定的尋跡行駛。
2 硬件系統(tǒng)設(shè)計(jì)
該系統(tǒng)硬件設(shè)計(jì)主要由MC9S12DGl28控制核心、電源管理模塊、直流電機(jī)驅(qū)動(dòng)模塊、轉(zhuǎn)向舵機(jī)控制模塊、道路信息檢測(cè)模塊、速度檢測(cè)模塊和加速度檢測(cè)模塊等組成,其結(jié)構(gòu)框圖如圖1所示。
2.1 主控制器模塊
智能車的控制核心為MC9S12DGl28。MC9S12DGl28是飛思卡爾公司生產(chǎn)的一款16位單片機(jī),片內(nèi)總線時(shí)鐘可達(dá)到25 MHz;片內(nèi)資源包括8 K RAM、128 K Flash、2 K EEP-ROM;SCI,SPI,PWM和串行接口模塊;脈寬調(diào)制模塊(PWM)可設(shè)置成4路8位或2路16位,邏輯時(shí)鐘選擇頻率脈寬:2個(gè)8路10位A/D轉(zhuǎn)換器,增強(qiáng)型捕捉定時(shí)器并支持背景調(diào)試模式等。
2.2 電源管理模塊
該系統(tǒng)設(shè)計(jì)采用7.2 V/1 800 mA鎳鎘電池供電,7.2 V電壓經(jīng)過(guò)BMlll7—5穩(wěn)壓后得到5 V電壓,向單片機(jī)、紅外傳感器和加速度傳感器供電。5 V電壓經(jīng)MAX8715升壓后得到12 V電壓,向CCD圖像傳感器供電:7.2 V電壓經(jīng)二極管降壓得到約6 V的電壓來(lái)驅(qū)動(dòng)舵機(jī);電機(jī)驅(qū)動(dòng)器MC33886則直接由電源供電。
2.3 道路信息檢測(cè)模塊
該系統(tǒng)設(shè)計(jì)使用NEC公司的線陣CCDμPD3575D檢測(cè)賽道信息。該器件可工作在5 V驅(qū)動(dòng)(脈沖)和12 V電源條件下。μPD3575D的驅(qū)動(dòng)需要4路脈沖,分別為轉(zhuǎn)移柵時(shí)鐘φIO、復(fù)位時(shí)鐘φRD、采樣保持時(shí)鐘φSHO和傳輸門時(shí)鐘φTG。系統(tǒng)設(shè)計(jì)由外圍電路直接產(chǎn)生CCD驅(qū)動(dòng)時(shí)鐘,采用計(jì)數(shù)器和觸發(fā)器專門設(shè)計(jì)時(shí)序電路,產(chǎn)生轉(zhuǎn)移柵時(shí)鐘φIO、復(fù)位時(shí)鐘φRO、采樣保持時(shí)鐘φSHO,單片機(jī)只需產(chǎn)生一個(gè)幀同步信號(hào)(傳輸門信號(hào)φTG)與外圍時(shí)序電路保持同步即可。μPD3575D輸出的是模擬信號(hào),將采集圖像傳輸至單片機(jī),一般需對(duì)μPD3575D輸出信號(hào)進(jìn)行A/D轉(zhuǎn)換,考慮到設(shè)計(jì)實(shí)際上只需要區(qū)分黑色和白色,μPD3575D對(duì)這兩種輸出信號(hào)差異較大,因此,將μPD3575D輸出信號(hào)放大后直接使用一個(gè)比較器對(duì)信號(hào)二值化處理,如圖2所示。由單片機(jī)檢測(cè)二值信號(hào)的跳變時(shí)間,便可計(jì)算出黑線位置,從而進(jìn)一步縮短單片機(jī)在CCD上所消耗的時(shí)間。
2.4 車速檢測(cè)模塊
系統(tǒng)使用紅外傳感器檢測(cè)直流電機(jī)的轉(zhuǎn)速。在后輪減速齒輪上粘貼一個(gè)均勻分布有黑白條紋的編碼盤。紅外接收管接收與未接收紅外光所表現(xiàn)的特性是阻抗變化,所以只需用一個(gè)電阻電壓變換電路和比較電路便可將其模擬信號(hào)轉(zhuǎn)換為數(shù)字信號(hào),供單片機(jī)采集。
2.5 直流電機(jī)驅(qū)動(dòng)模塊
系統(tǒng)采用RS380-ST型直流電機(jī),其驅(qū)動(dòng)電路采用集成電機(jī)驅(qū)動(dòng)器MC333886。此器件是單片集成的H橋元件,有單橋和雙橋兩種控制方式,其可控電壓為5~40 V,最大PWM頻率達(dá)10 kHz,內(nèi)置短路保護(hù)電路和過(guò)熱保護(hù)電路,最大能承受的5 A的工作電流。其中D1、D2是MC33886的使能端,INl、IN2為輸入端,0UTl、0UT2為其輸出端。圖3是將MC33886的D2端接到單片機(jī)的PWM輸出端口,通過(guò)MC33886的兩個(gè)輸出端口實(shí)現(xiàn)電機(jī)的轉(zhuǎn)速控制、方向控制及制動(dòng)等。采用輸出端并聯(lián)并連接到電機(jī)一端,以及增加散熱片的方法使智能車在相同電壓和占空比時(shí),其速度更快,同時(shí)還降低H橋上的壓降,減少M(fèi)C33886發(fā)熱,防止器件由于溫度過(guò)高被燒毀。
2.6 加速度檢測(cè)模塊
智能車在高速行駛中如果突然轉(zhuǎn)向,會(huì)出現(xiàn)側(cè)滑現(xiàn)象。該系統(tǒng)設(shè)計(jì)采用ADXL202加速度傳感器判斷移動(dòng)智能小車在行駛中是否出現(xiàn)側(cè)滑現(xiàn)象。ADXL202是美國(guó)ADI公司推出的低成本雙軸加速度傳感器,其外圍電路簡(jiǎn)單.采用5 V供電,將加速度傳感器的輸出端9引腳和10引腳直接接到單片機(jī)的AN00,AN01引腳,通過(guò)計(jì)算輸出信號(hào)的占空比可
精確檢測(cè)軸向和橫向加速度。
2.7 轉(zhuǎn)向控制模塊
智能車使用韓國(guó)futaba公司的S3010舵機(jī)完成轉(zhuǎn)向控制。舵機(jī)控制信號(hào)由單片機(jī)的PWM模塊PWM0和PWMl聯(lián)合產(chǎn)生一個(gè)16位的PWM信號(hào)。由于舵機(jī)的轉(zhuǎn)角與脈沖寬度存在線性關(guān)系,改變PWM占空比可改變輸出脈沖的寬度。從而控制舵機(jī)轉(zhuǎn)向。將驅(qū)動(dòng)舵機(jī)脈沖波型的周期從原來(lái)的20ms減小到10 ms,增加舵機(jī)控制信號(hào)的更新頻率,減少舵機(jī)控制環(huán)節(jié)中的延時(shí),提高整個(gè)車模轉(zhuǎn)向控制速度。
3 系統(tǒng)軟件設(shè)計(jì)
系統(tǒng)的基本控制策略是根據(jù)CCD傳感器檢測(cè)到的路徑信息,車速檢測(cè)模塊檢測(cè)到的當(dāng)前車速信息和加速度傳感器檢測(cè)到的加速度信息,來(lái)控制舵機(jī)和直流驅(qū)動(dòng)電機(jī)運(yùn)動(dòng)。
3.1 車速控制
為了提高機(jī)器人運(yùn)行的穩(wěn)定性,采用PID算法實(shí)現(xiàn)直流電機(jī)的轉(zhuǎn)速閉環(huán)調(diào)節(jié),PID控制器的輸入量為給定轉(zhuǎn)速與輸出轉(zhuǎn)速的差值,采用增量式PID算法。
3.2 智能車平穩(wěn)性控制
為了避免智能車發(fā)生側(cè)滑現(xiàn)象,應(yīng)在智能車上安裝加速度傳感器,以檢測(cè)是否發(fā)生側(cè)滑。車速為v,轉(zhuǎn)向角為δ,車體質(zhì)量為m,軸距為l,當(dāng)理想轉(zhuǎn)向時(shí),向心加速度為a,則a=mv2tanδ/l。當(dāng)加速度傳感器反饋回的實(shí)際加速度a*小于理論加速度a時(shí)(實(shí)際中應(yīng)當(dāng)保持一定的死區(qū)),表明智能車系統(tǒng)存在側(cè)滑現(xiàn)象。這時(shí)便命令智能移動(dòng)小車減速,速度參考量為
pid控制器相關(guān)文章:pid控制器原理
評(píng)論