基于16位單片機(jī)MC9S12DG128的智能車控制系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
1引言
我國(guó)自2006年起舉辦的全國(guó)大學(xué)生“飛思卡爾杯”智能汽車競(jìng)賽融科學(xué)性、趣味性和觀賞性為一體,是一項(xiàng)以迅猛發(fā)展、前景廣闊的汽車電子為背景,涵蓋了自動(dòng)控制、模式識(shí)別、傳感技術(shù)、電子、電氣、計(jì)算機(jī)、機(jī)械與汽車等多個(gè)學(xué)科專業(yè)的科技創(chuàng)新比賽。參賽隊(duì)伍在車模平臺(tái)基礎(chǔ)上,制作一個(gè)能夠自主識(shí)別路線的智能車,在專門設(shè)計(jì)的賽道上自動(dòng)識(shí)別道路行駛[1]。
本文所述的智能車就是根據(jù)比賽規(guī)則要求設(shè)計(jì)并制作而成的,該智能車控制系統(tǒng)采用飛思卡爾半導(dǎo)體公司生產(chǎn)的16位MC9S12DG128單片機(jī)作為數(shù)字控制器,由安裝在車前部的黑白CMOS攝像頭負(fù)責(zé)采集賽道信息,并將采集到的信號(hào)經(jīng)二值化處理后傳入單片機(jī),單片機(jī)對(duì)信號(hào)進(jìn)行判斷處理后,由PWM發(fā)生模塊發(fā)出PWM波對(duì)轉(zhuǎn)向舵機(jī)進(jìn)行控制,完成智能車的轉(zhuǎn)向。另外,智能車后輪上裝旋轉(zhuǎn)編碼器,用來采集車輪速度的脈沖信號(hào),單片機(jī)使用PID控制算法處理后的控制量去改變電機(jī)驅(qū)動(dòng)模塊的PWM波占空比,從而控制智能車的行駛速度。
2控制方案設(shè)計(jì)和硬件電路組成
設(shè)計(jì)有效的智能車控制系統(tǒng)必須首先掌握控制對(duì)象的特性。根據(jù)對(duì)智能車特點(diǎn)的分析,可以認(rèn)為智能車轉(zhuǎn)向控制系統(tǒng)的傳遞函數(shù)近似為一階積分加純滯后,速度控制對(duì)象的傳遞函數(shù)近似為一階慣性加純滯后的結(jié)論。
轉(zhuǎn)向控制系統(tǒng)主要是要求響應(yīng)速度快,對(duì)穩(wěn)態(tài)控制精度要求不高。而且控制對(duì)象只有積分和滯后環(huán)節(jié),沒有常見的慣性環(huán)節(jié)。根據(jù)以上特點(diǎn),轉(zhuǎn)向控制采用PD控制器。
對(duì)速度進(jìn)行檢測(cè)和控制的意義在于盡可能使智能車按照道路條件允許的最高速度行駛。
在彎道應(yīng)將車速限制為不脫軌的最高速度,在直道應(yīng)當(dāng)適當(dāng)進(jìn)行急加速以縮短單圈運(yùn)行時(shí)間,提高比賽成績(jī)。同時(shí),對(duì)速度信號(hào)進(jìn)行積分求和可以得到賽道長(zhǎng)度信息,為道路識(shí)別與記憶模塊提供數(shù)據(jù)。智能車速度控制系統(tǒng)的精度不需要太高,關(guān)鍵是如何快速響應(yīng)賽道的路況變化。因此速度控制采用PID控制器。針對(duì)不同的道路狀況迅速準(zhǔn)確地改變車速,實(shí)現(xiàn)穩(wěn)定過彎。
智能車的硬件電路主要由視頻處理模塊、方向控制模塊和車速控制模塊組成。各模塊與單片機(jī)之間的關(guān)系如圖1所示。
3模塊功能
(1)視頻處理模塊。視頻處理模塊由CMOS攝像頭、二值化電路和同步分離電路構(gòu)成。
(2)轉(zhuǎn)向控制模塊。轉(zhuǎn)向控制模塊主要由舵機(jī)完成。舵機(jī)的轉(zhuǎn)動(dòng)會(huì)轉(zhuǎn)化為車模轉(zhuǎn)向拉桿的橫向移動(dòng),從而帶動(dòng)車模前輪的轉(zhuǎn)動(dòng),控制智能車的行駛方向。舵機(jī)的轉(zhuǎn)向控制采用PD控制,根據(jù)賽道中央黑線的位置,單片機(jī)向舵機(jī)輸出相應(yīng)占空比的PWM信號(hào)。
(3)車速控制模塊。車速控制模塊主要由直流電機(jī)、驅(qū)動(dòng)電路和旋轉(zhuǎn)編碼器構(gòu)成。根據(jù)CMOS攝像頭所檢測(cè)的路徑信息判斷智能車當(dāng)前所處的賽道狀況,并根據(jù)旋轉(zhuǎn)編碼器所檢測(cè)的實(shí)際車速形成對(duì)智能車行駛速度的閉環(huán)控制,合理地調(diào)整數(shù)字PID控制算法的Kp、Ki、Kd三個(gè)參數(shù),達(dá)到車速響應(yīng)迅速并消除靜態(tài)誤差的目的。
4電路設(shè)計(jì)
(1)電源模塊設(shè)計(jì)。電源模塊要為單片機(jī)、傳感器、舵機(jī)和驅(qū)動(dòng)電機(jī)供電。因此需要提供多種電源滿足各個(gè)模塊的要求。電池在完全充滿之后空載電壓只有8v左右,并隨著電池的消耗,電壓逐漸降低。電機(jī)啟動(dòng)及反接制動(dòng)時(shí)電流很大,也有可能將電池電壓拉得比較低。為了避免電源電壓不穩(wěn)定,影響攝像頭視頻處理電路和單片機(jī)工作不正常,在本設(shè)計(jì)方案中使用了DC-DC變換芯片MC34063以及低差壓穩(wěn)壓器LM2940。MC34063輸出穩(wěn)定的8伏電壓提供給CMOS攝像頭,LM2940為16位MC9S12DG128單片機(jī)、視頻放大及二值化電路提供穩(wěn)定的5伏電源,保證了系統(tǒng)在各種情況下的穩(wěn)定運(yùn)行。電源模塊原理圖如圖2所示。
評(píng)論