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