基于單片機的智能車速度控制系統(tǒng)
作者/ 陶佳 廣東省技師學院(廣東 惠州 516100)
本文引用地址:http://www.ex-cimer.com/article/201708/363620.htm陶佳(1986-),男,講師,研究方向:智能控制工程,無線通信技術。
摘要:本文重點介紹了基于光電自動尋線智能車的速度控制系統(tǒng)的設計,包含直流電機的驅動模塊、速度檢測模塊、速度控制策略、速度控制周期等部分。采用兩片MC33886芯片來驅動電機運行,用反射式紅外對管檢測電機速度,實現(xiàn)對電機的閉環(huán)控制,通過大量的試驗,最終速度控制策略采用了增量式PID控制和BangBang控制相結合的方法,并創(chuàng)新性地使用兩個中斷相結合的方法使得速度控制周期為等時的,從而對智能車過彎速度達到良好的控制。
引言
在智能車制作中,利用ATmega16 單片機作為核心控制單元,以攝像頭為路徑識別傳感器,分別設計控制系統(tǒng),使得模型汽車能夠自動準確地按照規(guī)定的橢圓路線行駛,速度控制是智能車控制系統(tǒng)最核心的部分之一,本文就如何設計智能車速度控制系統(tǒng)做了詳細介紹。
智能車速度控制系統(tǒng)包含電機驅動模塊,速度檢測模塊,速度控制策略,速度控制周期等,如圖1所示:
1 電機驅動模塊
系統(tǒng)所用電機是RS-380型號的直流電動機,其額定工作電壓為7.2V,能輸出0.9~40W的功率。使用兩片MC33886芯片并聯(lián)來驅動電機,其中MC33886為H橋式電源開關IC,該 IC結合內(nèi)部控制邏輯、電荷泵、柵極驅動器、MOSFET輸出電路,可工作在5~40V電壓范圍內(nèi)。通過PWM信號調節(jié)輸出,進而調節(jié)電機轉速,PWM的控制頻率為1KHz,PWM23可用于正轉控制,PWM45可用于反轉控制,OUT1和OUT2接于直流電機上,用來實現(xiàn)在直道時快速加速,彎道實現(xiàn)反轉剎車來快速減速。電路圖如圖2所示。
2 速度檢測模塊
2.1 速度檢測硬件
直流電機的速度的檢測方案是:用MATLAB自制黑白相間且均勻等分的編碼盤,如圖3(a)所示。將編碼盤黏貼于圓盤上,當圓盤隨著齒輪轉動時,利用反射式紅外對管ST188接收強弱交替變化的反射光,再通過I/O口將高低脈沖電平傳給單片機的輸入捕捉中斷中進行計算。自制測速裝配圖和速度檢測模塊原理圖分別如圖3(b)和如圖3(c)所示。
該方案具有成本低廉、制作容易、負荷小的優(yōu)點,配合單片機的輸入捕捉功能可以實現(xiàn)高精度的速度采集。
2.2 速度的計算
方案中的數(shù)字測速的計算方法是采用T法。T法是指在兩個相鄰的輸入脈沖的間隔時間T內(nèi),用一個計數(shù)器對高頻基準信號的脈沖數(shù)進行計數(shù),由計數(shù)值來計算轉速,原理圖如圖4所示。
計算公式推導:設計碼盤格數(shù)為40,旋轉一周能產(chǎn)生20個脈沖。高頻基準信號是通過對系統(tǒng)時鐘128分頻獲得,實際頻率f0=24M/128=187.5KHz。在T法測速中,測速時間T是用計數(shù)器所得的基準 信號脈沖個數(shù)M2來計算的,即T=M2/f0,對應后輪轉速為:n=2/ZT=2f0/ZM2,經(jīng)測量小車的后輪周長為17cm,所以小車速度的計算公式如式(1)所示:
(1)
3 速度控制策略
3.1 增量式 PID 控制[2]
本方案采用增量式PID來使智能車能夠勻速穩(wěn)定地行駛,增量式PID的速度檢測信號M2高頻基準信號T計算公式如式(2)所示:
(2)
其中,un為當前輸出增量;un-1為上一次輸出增量;Kp為比例增益;為積分系數(shù);為微分系數(shù);T為采樣周期;TI為積分周期;TD為微分周期;en為第n次偏差,en-1第n-1次偏差。
3.2 BangBang 控制
BangBang 控制的思想是:定義速度誤差en為給定速度減去反饋速度,當en大于設定值 ek時,就強制輸出一個最大值umax;反之,如果速度誤差en小于設定值(-ek)時,就強制輸出一個最小值umax,在速度誤差較大時,Bang_Bang調節(jié)比PID調節(jié)響應速度更快、更及時。計算公式如式3所示。式中en為給定速度減去反饋速度的差值。
(3)
3.3 增量式 PID 控制配合 BangBang 控制
為了實現(xiàn),在賽道曲率變化不大時且智能車高速勻速穩(wěn)定行駛,采用增量式PID控制。在從直道行駛入彎道時,智能車能夠很快地反轉剎車,降低速度,從而良好通過彎道;在彎道進入直道時,智能車能夠很快地提高速度,以高速在直道上行駛。我們采用的速度控制策略是增量式 PID 控制配合 Bang_Bang 控制,當給定速度與反饋速度相差不大時,采用增量式 PID 控制,當給定速度與反饋速度相差較大時, 采用 Bang_Bang 控制,計算公式如式 4 所示:
(4)
4 速度控制周期
采用的控制周期方案是:
測速程序是通過單片機的輸入捕捉中斷來完成的,即車輪每轉一周(0.17m),將產(chǎn)生 20 次中斷,在這20次中斷過程中,能運行20次的速度檢測,如果按照平均車速 1.8m/s 計算的話,那么每一次輸入捕捉中斷的時間為:0.17/(18×20)=4.7ms,也就是每隔4.7ms得到一個反饋速度。
速度控制程序是指單片機每隔一定時間(如10ms)根據(jù)給定的速度和反饋速度進行速度的閉環(huán)控制。反饋速度是通過上面的輸入捕捉中斷方式讀取,給定速度通過查詢方式獲得。速度控制程序在定時中斷程序中執(zhí)行,而定時中斷是通過模數(shù)遞減計數(shù)器來實現(xiàn)的。
這樣程序在運行中存在兩個中斷,并且輸入捕捉中斷優(yōu)先級高于模數(shù)遞減計數(shù)器的定時中斷。輸入捕捉的頻率為定時中斷的兩倍,這樣,每執(zhí)行一次定時中斷,反饋速度有兩個值,由于兩個值的時間間隔比較短,取前一次的值代表當前速度,并且測速程序執(zhí)行所占有的時間極短,因此輸入捕捉中斷對速度控制程序的影響不大。
等時控制是指控制程序每隔一定時間執(zhí)行一次,等距控制是指控制程序每隔一定的距離執(zhí)行一 次,由于控制周期不受車速控制,所以等時控制優(yōu)于等距控制。方案一采用自制的用反射式紅外對管測速,價格便宜,但控制周期是等時的;方案二采用旋轉編碼器測速,價格昂貴,但測速精度相對高,控制周期是等時的。我們的方案用反射式紅外對管測速,價格便宜,控制周期是等時的。電機速度控制的流程圖如圖5所示。
5 仿真結果
圖6為已制作完成的智能車實物照片,我們在自制的跑道上進行了實際測試,得出以下試驗結果:獲取了一組比較好的PID參數(shù),KP=50,KI=3,KD=4,在該參數(shù)下,智能車能夠得到較快、較好且平穩(wěn)的速度。當速度誤差en(給定速度減去反饋速度的差值)大于70cm/s時 ,電機驅動輸出un為90%的占空比;當速度誤差en(給定速度減去反饋速度的差值)小于-70cm/s時,電機驅動輸出un為10%的占空比。在PID和BangBang 控制下速度變化范圍較大,實現(xiàn)了快速加速,快速剎車。
6 結論
經(jīng)過大量的實驗調試,智能車在基于兩片MC33886并聯(lián)組成的驅動上,能夠實現(xiàn)良好的電機正轉和反轉控制。通過使用反射式紅外管能夠比較穩(wěn)定和精確地檢測速度,計算速度。用于測速的輸入捕捉中斷 和用于速度控制定時中斷兩個相結合能夠很好地實現(xiàn)控制周期等時。使用的PID和BangBang的結合的控制策略,通過不斷調試,選擇合理的參數(shù),實現(xiàn)了智能車根據(jù)路徑識別來閉環(huán)調節(jié)速度,在賽道曲率變化不大時的勻速行駛,在賽道曲率突變時的速度急增急減的效果,并且智能夠使智能車長時間的良好運行,印證了該方法的可靠和有效。
參考文獻:
[1]卓晴,黃開勝,邵貝貝.學做智能車——挑戰(zhàn)“飛思卡爾”杯[M].北京:北京航空航天大學出版社,2007.
[2]邵貝貝.單片機嵌入式應用的在線開發(fā)方法[M].北京:清華大學出版社,2004.
[3]王威.HCS12微控制器原理及應用[M].北京:北京航空航天大學出版社,2007.
[4]馬潮.AVR單片機嵌入式系統(tǒng)原理與應用實踐[M].北京:北京航空航天大學出版社.2007.
本文來源于《電子產(chǎn)品世界》2017年第9期第46頁,歡迎您寫論文時引用,并注明出處。
評論