基于單片機的智能尋跡車設計
智能車在高速行駛中如果突然轉向,會出現(xiàn)側滑現(xiàn)象。該系統(tǒng)設計采用ADXL202加速度傳感器判斷移動智能小車在行駛中是否出現(xiàn)側滑現(xiàn)象。ADXL202是美國ADI公司推出的低成本雙軸加速度傳感器,其外圍電路簡單.采用5 V供電,將加速度傳感器的輸出端9引腳和10引腳直接接到單片機的AN00,AN01引腳,通過計算輸出信號的占空比可
精確檢測軸向和橫向加速度。
2.7 轉向控制模塊
智能車使用韓國futaba公司的S3010舵機完成轉向控制。舵機控制信號由單片機的PWM模塊PWM0和PWMl聯(lián)合產(chǎn)生一個16位的PWM信號。由于舵機的轉角與脈沖寬度存在線性關系,改變PWM占空比可改變輸出脈沖的寬度。從而控制舵機轉向。將驅動舵機脈沖波型的周期從原來的20ms減小到10 ms,增加舵機控制信號的更新頻率,減少舵機控制環(huán)節(jié)中的延時,提高整個車模轉向控制速度。
3 系統(tǒng)軟件設計
系統(tǒng)的基本控制策略是根據(jù)CCD傳感器檢測到的路徑信息,車速檢測模塊檢測到的當前車速信息和加速度傳感器檢測到的加速度信息,來控制舵機和直流驅動電機運動。
3.1 車速控制
為了提高機器人運行的穩(wěn)定性,采用PID算法實現(xiàn)直流電機的轉速閉環(huán)調節(jié),PID控制器的輸入量為給定轉速與輸出轉速的差值,采用增量式PID算法。
3.2 智能車平穩(wěn)性控制
為了避免智能車發(fā)生側滑現(xiàn)象,應在智能車上安裝加速度傳感器,以檢測是否發(fā)生側滑。車速為v,轉向角為δ,車體質量為m,軸距為l,當理想轉向時,向心加速度為a,則a=mv2tanδ/l。當加速度傳感器反饋回的實際加速度a*小于理論加速度a時(實際中應當保持一定的死區(qū)),表明智能車系統(tǒng)存在側滑現(xiàn)象。這時便命令智能移動小車減速,速度參考量為
3.3 舵機轉向控制
系統(tǒng)使用模糊控制算法控制智能車轉向。傳感器檢測的重點是轉向角誤差,當轉向角誤差相同時,不同的誤差變化率反映不同的軌道半徑,因此,該設計還檢測轉向角誤差變化率。當誤差量很小,且誤差變化率不變時,則判定為智能小車正沿著引導線行駛,則機器人小車沿直線行進;若誤差變化率較大時,表明智能小車正在偏離引導線,此時,需對航向角做相應調整。通過CCD圖像傳感器檢測白色地面上的黑線,根據(jù)返回的信號得出駕駛角誤差和誤差變化率,將CCD圖像傳感器視覺中心的誤差和誤差變化率作為控制器的輸入,分別用e和ec表示;輸出為駕駛角,用δ表示。模糊語言值分別選為:e:{LB,LM,LS,CE,RS,RM,RB};ec:{PB,PM,PS,Z0,NS,NM,NB};δ:{LB,LM,LS,CE,RS,RM,RB}。隸屬度函數(shù)采用三角形,如圖4所示。交疊系數(shù)β=(c1一a2)/(c2-b1),取0.75。根據(jù)駕駛經(jīng)驗建立規(guī)則庫進行模糊推理后.利用重心法進行反模糊化得出舵機所要轉的角度。
3.4 智能車控制流程
設計中,程序初始化完成后便進入空閑模式,等待中斷發(fā)生。中斷包括車輪轉速計數(shù)器中斷、CCD圖像捕捉中斷和以10 ms為周期的定時器0中斷。驅動電機和舵機的PWM控制信號由單片機的PWM模塊自動產(chǎn)生,其定時器0的中斷服務程序如圖5所示。
4 結語
以MC9S12DGl28作為控制核心,設計自主尋跡的智能車控制系統(tǒng),在檢測到智能車運動信息和道路信息的基礎上,采用模糊控制算法控制舵機轉向,通過轉速PID調節(jié)的方式控制直流電機。實驗證明:該智能車在白色的跑道上能沿著一定寬度任意弧度的黑色引導線以較快的速度平穩(wěn)地行駛,尋跡效果良好,速度和轉向控制響應快,系統(tǒng)的穩(wěn)定性和抗干擾能力強,速度可以達到1.5 m/s,此方案已應用于全國智能車大賽。
評論