摘 要: 為解決一些住宅小區(qū)停車位或私家車庫距離住宅樓較遠、自駕車停車不方便問題,提出了利用單片機MC9S12XS128使小車從給定的起始位置自動循跡到達預(yù)期車庫或停車位的系統(tǒng)設(shè)計方案。單片機MC9S12XS128利用PID算法對電機和舵機進行控制,攝像頭傳感器進行道路信息采集。該系統(tǒng)經(jīng)測試達到了預(yù)定目標(biāo),實現(xiàn)了自動循跡停車功能。
關(guān)鍵詞: MC9S12XS128;自動尋跡;PID算法
當(dāng)前的信息技術(shù)革命正在推動汽車設(shè)計翻開新的一頁,多功能、智能化、自動化將成為21世紀汽車發(fā)展的新趨勢。目前,汽車的使用量越來越多,人們對汽車的智能化要求也越來越高,因此為滿足不同人的市場需求,設(shè)計了一種沿著指定標(biāo)記自動識別路徑[1-2]和障礙物的小車自動循跡停車控制系統(tǒng)。此系統(tǒng)包括3個子系統(tǒng):環(huán)境感知系統(tǒng)、自主決策系統(tǒng)和操作執(zhí)行系統(tǒng)。環(huán)境感知系統(tǒng)主要包括感知路面信息和感知車體狀態(tài)的傳感器。自主決策系統(tǒng)主要通過單片機的軟件來實現(xiàn)決策控制。操作執(zhí)行系統(tǒng)就是從單片機發(fā)出控制指令到車體響應(yīng)這一部分的系統(tǒng),主要就是相應(yīng)的驅(qū)動電路。3個系統(tǒng)相互聯(lián)系、相互制約,有共同的目標(biāo)和核心的控制策略,共同完成控制任務(wù)。這樣的自動循跡停車系統(tǒng)解決了由停車帶來的不便,實現(xiàn)了停車智能化,同時還可以為深入研究汽車自動駕駛提供信息。
1 系統(tǒng)總體設(shè)計方案
小車自動循跡停車控制系統(tǒng)主要包括控制處理芯片MC9S12XS128模塊、圖像采集模塊、轉(zhuǎn)向舵機模塊、驅(qū)動電機模塊和速度檢測模塊。其中S12單片機是系統(tǒng)的核心部分。它負責(zé)接收道路圖像信息和車體速度反饋等信息,并對這些信息進行恰當(dāng)?shù)奶幚恚纬珊线m的控制量來對舵機和電機進行控制。圖像采樣模塊由外圍芯片TLC5510、LM1881和攝像頭組成。其功能是獲取道路信息,以供S12作進一步處理。速度檢測模塊由編碼器和外圍電路組成,通過檢測實時車速提供反饋量對電機進行控制。系統(tǒng)的總體結(jié)構(gòu)如圖1所示。
2 系統(tǒng)的硬件設(shè)計
2.1 核心控制器介紹
MC9S12XS128單片機是以CPU12X的V2內(nèi)核為核心的16位單片機系列,是在帶協(xié)處理器的MC9S12XE系列雙核單片機的基礎(chǔ)上,去掉XGate協(xié)處理器得到的。MC9S12XS128單片機內(nèi)部總線頻率最高為40 MHz,片內(nèi)集成128 KB Flash存儲器和8 KB的RAM存儲器及8 KB的數(shù)據(jù)閃存,增加了8 KB D-flash,同時它的內(nèi)部資源也非常豐富,擁有I/O輸入輸出端口、SPI、SCI、ECT、A/D、CAN和PWM等常見的接口模塊,在汽車電子領(lǐng)域具有廣泛的用途[3]。
2.2 圖像采集模塊
2.2.1 攝像頭的選擇
CCD攝像頭具有對比度高、動態(tài)特性好的優(yōu)點,經(jīng)過實驗論證之后決定采用。
攝像頭有兩個重要指標(biāo):有效像素和分辨率。分辨率實際上就是每場行同步脈沖數(shù),而有效像素=行分辨能力×分辨率。通常產(chǎn)品說明上標(biāo)注的分辨率略大于實際分辨率,所以要知道實際分辨率就得實際測量一下。
通過S12單片機的定時器模塊對單個脈沖的下降沿和上升沿間隔、兩相鄰脈沖上升沿間隔進行計時,可得每行信號和每個脈沖持續(xù)的時間[4]。實際測得所用攝像頭的時序參數(shù)見表1。
從測試結(jié)果可知,該攝像頭掃描的每場中有320行信號,其中第23行到310行是視頻信號,第311行到下一場的第22行是場消隱信號。在視頻信號區(qū),每行信號持續(xù)的時間相同,約為62 μs,每行的行同步脈沖持續(xù)時間也相同,約為4.7 μs。而在場消隱區(qū),每行持續(xù)的時間會有所變化,每行對應(yīng)的消隱脈沖持續(xù)的時間,盡管其中大多數(shù)為3.5 μs,但也有變化。在場消隱區(qū)中,第320行的消隱脈沖持續(xù)的時間遠長于其他消隱脈沖的時間,此脈沖即為場同步脈沖。
2.2.2 視頻同步分離電路
CCD攝像頭視頻信號中除了包含圖像信號之外,還包括了行同步信號、行消隱信號、場同步信號、場消隱信號以及槽脈沖信號、前均衡脈沖、后均衡脈沖等。因此,若要對視頻信號進行采集,就必須通過視頻同步分離電路準確地把握各種信號間的邏輯關(guān)系。本系統(tǒng)使用了LM1881芯片對視頻信號進行同步分離,得到行同步信號、場同步信號。視頻分離電路原理圖見圖2。
2.3 速度檢測模塊
對舵機1、舵機2和電機的控制分別通過兩路PWM通道。電機的驅(qū)動電路[5]采用兩片33886并聯(lián)電路,經(jīng)測試電機的加減速效果滿足要求。
要使車能夠快速穩(wěn)定的運行,并且控制容易,就需要精確地測得車的速度,所以要選擇較好的速度傳感器。因此采用了歐姆龍的100線光電編碼器。
本系統(tǒng)通過脈沖計數(shù)的方法來實現(xiàn)對小車的速度檢測:在小車的車軸上安裝光電編碼器,當(dāng)車軸轉(zhuǎn)動時,編碼器跟隨車輪同步轉(zhuǎn)動,編碼器輸出正弦波。經(jīng)比較器轉(zhuǎn)化為方波后,就變?yōu)閷?yīng)的高低電平,產(chǎn)生脈沖,送給計數(shù)器模塊。計數(shù)器捕捉脈沖信號并對其進行計數(shù),在特定時間內(nèi)讀出脈沖總數(shù),將計數(shù)值送給單片機,便可以得到小車的實時速度,用以對小車進行實時控制。
Speed_pd=Kp*err1+Kd*(err1-err2)
其中,err1=Setted_speed-car_speed,err2=Setted_ speed_last-car_speed_last。Setted_speed是給定車速,car_speed是測速傳感器測量到的當(dāng)前車速。兩者的先后偏差作為被控量帶入計算公式,通過比例系數(shù) 和微分系數(shù)的計算修正,可得到調(diào)整后的車速。
日新月異的科學(xué)技術(shù)給智能汽車帶來了更加光明的發(fā)展前景,使得車輛利用傳感器結(jié)合環(huán)境信息做出最優(yōu)控制策略,實現(xiàn)車輛自動行駛。本文介紹了基于單片機的自動循跡停車控制技術(shù),硬件電路的設(shè)計及軟件的控制方案。經(jīng)過實際測試,可實現(xiàn)自動循跡停車功能。解決了由停車給人們帶來的煩惱,并且具有一定實用價值。
參考文獻
[1] 劉建剛,程磊,黃劍.基于CCD圖像識別的HCS12單片機智能車控制系統(tǒng)[J].光電技術(shù)應(yīng)用,2007,22(6):53-55.
[2] 狄可可,萬燦,貞輝.第二屆全國大學(xué)生智能車大賽浙江大學(xué)“飛鷹隊”技術(shù)報告[R].2007.
[3] 于慶廣,劉葵,王沖,等.光電編碼器選型及同步電機轉(zhuǎn)速和轉(zhuǎn)子位置測量[J].電氣傳動,2006,36(4):17-20.
[4] 孫闖,閆濤,王珊珊.第六屆全國大學(xué)生智能車大賽曲阜師范大學(xué)“炫風(fēng)隊”技術(shù)報告[R].2011.
[5] 黃智偉.全國大學(xué)生電子設(shè)計競賽訓(xùn)練教程(修訂版)[M].北京:電子工業(yè)出版社,2010.