【正文】
tract: This article presents two kinds of smartcar’s servo control methods based on route recognition, which are Hardware Close Loop Method and Software Open Loop Method. These methods effectively improve the response of the servo. With Hardware Close Loop Method and Software Open Loop Method, the servo’s arm is lengthen, which can upgrade the smartcar’s stability of route recognition. The smartcar can turn to the right place more quickly and more accurately, and has quick velocity response and minimum stability warp. Keywords: Route Recognition。 Smartcar。 Servo Control。 Photodiode0 引言舵機控制是智能車控制中一個重要方面,其目標是:根據(jù)不同的路徑狀況,控制智能車的舵機角度的變化,以滿足系統(tǒng)性能要求。傳統(tǒng)舵機控制是在使用標準轉(zhuǎn)臂的前提下,進行單純的開環(huán)控制。這樣會使舵機位置信息不能得到反饋,而且不能充分利用舵機轉(zhuǎn)臂的力矩余量。加長舵機轉(zhuǎn)臂可以充分發(fā)揮舵機轉(zhuǎn)距余量,使它更靈活、響應更快。在智能車控制系統(tǒng)中,其左右輪力臂不同,加長轉(zhuǎn)臂勢又必導致舵機左右兩邊輸出的力矩不一致,即同一個PWM控制量不能使分別處于左邊和右邊的轉(zhuǎn)臂轉(zhuǎn)至同一指定位置。本文從硬件和軟件兩方面實現(xiàn)了加長轉(zhuǎn)臂后舵機的控制。1 硬件閉環(huán)控制1.1 設計方案本系統(tǒng)舵機控制目標是根據(jù)光電傳感器檢測到的路徑信息,控制舵機調(diào)整智能車的行駛方向,使智能車在直道行駛時方向迅速保持穩(wěn)定、不抖動;在過連續(xù)S型緩彎時更加流暢。通過路徑識別單元的11個“一”字形排列的光電傳感器檢測軌跡黑線,然后根據(jù)檢測結(jié)果判斷智能車與軌跡偏離的情況。若被正中間的光電傳感器檢測到黑線,就表示智能車未偏離軌跡,則控制舵機使轉(zhuǎn)向輪不偏轉(zhuǎn)。若被左(右)邊的光電傳感器檢測到黑線,就表示智能車向右(左)偏離軌跡。越靠左(右)的傳感器檢測到黑線,表示智能車向右(左)偏離軌跡的程度越大,控制舵機使轉(zhuǎn)向輪向左(右)偏轉(zhuǎn),偏離程度越大,則偏轉(zhuǎn)角度越大。若沒有光電傳感器檢測到黑線或是其它的檢測結(jié)果,就表示智能車脫離軌跡或是遇到十字交叉路段,則控制舵機使轉(zhuǎn)向輪保持偏轉(zhuǎn)原有角度不變。本系統(tǒng)的控制對象是SANWA SRM102舵機,其作用是輸出力矩驅(qū)動前輪轉(zhuǎn)向。 cm,~ kg,足以滿足對智能車前輪地驅(qū)動。但智能車在識別連續(xù)S型緩彎時,舵機轉(zhuǎn)向嚴重滯后,造成智能車沖出跑道。由舵機的硬件特性可知:在給定電壓一定時,空載和帶載時的角速度分別保持恒值,而線速度,正比于轉(zhuǎn)臂的長度。當所需轉(zhuǎn)動幅度一定時,長轉(zhuǎn)臂要比短轉(zhuǎn)臂轉(zhuǎn)動的機械角要小,即響應更快,如圖B1所示,對于轉(zhuǎn)臂1和2,當且轉(zhuǎn)動相同的位移時,轉(zhuǎn)角。因此對于相同的角速度,可得轉(zhuǎn)臂響應時間。但舵機的轉(zhuǎn)距余量是有限的,加長轉(zhuǎn)臂勢必降低舵機的輸出力矩,所以加長轉(zhuǎn)臂不是無限制的。 cm,舵機改裝如圖B2所示。圖B1舵機轉(zhuǎn)臂加長結(jié)構(gòu)分析圖B2 舵機改裝圖由于舵機左右PWM控制量不對稱,所以考慮對舵機的轉(zhuǎn)角進行閉環(huán)控制,控制器為PI控制器。系統(tǒng)圖如圖B3所示。圖B3 閉環(huán)控制系統(tǒng)圖該系統(tǒng)中,單片機輸出的信號經(jīng)過D/A轉(zhuǎn)換器轉(zhuǎn)換為PI控制器的輸入量,控制器運算后的輸出作為壓頻變換的輸入,V/F模塊的脈沖輸出作用于舵機,通過位置傳感器反饋,使控制在給定值,從而保證舵機的精確位置伺服。1.2 設計實現(xiàn) 圖B4為舵機硬件閉環(huán)的硬件電路圖,實現(xiàn)從單片機電平輸出到PWM舵機控制信號的轉(zhuǎn)換。圖B4 舵機硬件閉環(huán)的硬件電路圖其中D/A轉(zhuǎn)換部分由8位精度DAC0832和運算放大器LM358組成,該單元將單片機輸出的數(shù)字量變成舵機所需的模擬量。LM358的輸出如式(B1)所示: 式(B1)式B1中:為D/A轉(zhuǎn)換模塊的輸出;為穩(wěn)壓二極管的穩(wěn)壓值;為單片機對應輸出口的十進制數(shù)值。為運算放大器的比例系數(shù)。本系統(tǒng)的PI控制器由LM32電阻和電容構(gòu)成的比例積分電路組成。控制器的輸出信號由壓頻變換模塊TL494處理變成控制舵機的PWM信號。位置傳感器是與舵機同軸的電位器,采集舵機轉(zhuǎn)臂移動時產(chǎn)生的相應電壓,反饋電位值與給定值同時加在LM324的反相端。PI控制器的輸出為: 式(B2)式(B2)中:為比例系數(shù),為積分常數(shù);TL494的輸出信號為: 式(B3)式(B3)中:為TL494參考電壓;TL494輸出控制信號的頻率由、決定: 式(B4)通過調(diào)節(jié)、的大小可以改變PI控制器的參數(shù),從而調(diào)節(jié)PI控制器的輸出。為了確保舵機的靈敏度,傳感器需要對舵機轉(zhuǎn)臂的微小變化做出響應。因此選擇合適的硬件非常重要。本文所選電位器角度范圍在30~60度,且轉(zhuǎn)動阻力小。2 軟件開環(huán)設計2.1 設計思想本方案基于軟件開環(huán)的原理實現(xiàn)了舵機的精確控制。在本智能車系統(tǒng)中,舵機控制最為關(guān)鍵的兩個方面是:提高響應速度和克服舵機不對稱性。只要解決了這兩個問題,智能車快速尋徑的問題就可以得到解決,所以方案2從提高舵機響應速度和克服不對稱性出發(fā),尋找良好的角度解決方案。由于加長轉(zhuǎn)臂后舵機轉(zhuǎn)角的不對稱性,對于同一個位置(非最大角度位置),舵機從左邊與從右邊轉(zhuǎn)到此位置所需要施加的PWM值不一致,所以必須判斷舵機這一時刻的動作是從哪個方向來的,這里采用以光電管信號來記錄轉(zhuǎn)臂位置。假設小車行駛到某一個位置時光電管檢測到的信號為0b00010000000,說明當前是左邊的第4個光電管檢測到黑線,如果上次光電管檢測到的信號為0b01000000000,說明上次是左邊的第2個光電管檢測到黑線,由此可以看出相對于本次舵機需要轉(zhuǎn)到的位置,上一時刻轉(zhuǎn)臂的位置更靠左,也就是說本次舵機要向右轉(zhuǎn),于是給舵機一個相應的PWM信號;如果上次光電管檢測到的信號為0b00000100000,說明上次是正中間的光電管檢測到黑線,由此可以看出本次舵機需要向左轉(zhuǎn),于是給舵機一個相應的PWM信號,舵機在其它位置也是一樣的。當兩邊靠外側(cè)的3個光電管檢測到黑線時,舵機轉(zhuǎn)最大角,以保證小車在高速進彎道時能夠有足夠大的轉(zhuǎn)角順利地駛過,據(jù)此可以造一個角度PWM對應表,各個方向和大小的角度所對應的PWM值都可以從表中查得。這樣就可以不需要角度的反饋值,而僅使用軟件的方法實現(xiàn)舵機的開環(huán)控制。 通過大量的實驗表明,小車在彎道行駛過程中,左右第3,4,5個光電管(從中間的光電管數(shù)起)是最為重要的傳感器。因為當小車以高速進入彎道時,這三個傳感器是最先檢測到跑道變化的,這時舵機需立即轉(zhuǎn)一個較大角,如果這時舵機的轉(zhuǎn)角不夠,或者說不能轉(zhuǎn)到指定位置,那么小車將嚴重偏離跑道,就算最邊上的光電管檢測到黑線時做出了最大轉(zhuǎn)角的響應,也無濟于事。所以這三個光電管對應的PWM值要稍大一些,且三個值之間的間隔要均勻,不能太大。如果間隔太大,過彎時將出現(xiàn)抖動現(xiàn)象。舵機角度的不斷變化,將影響小車過彎的整體速度。2.2 設計流程本方案程序設計使用C語言實現(xiàn),其開發(fā),制作,安裝,調(diào)試都是基于Metrowerks CodeWarrior CW12 。在程序中angle_feedback表示當前光電管的檢測信息,LastAngle表示上次光電管檢測到的信息,程序流程圖如圖B5所示:圖B5 角度開環(huán)控制流程圖通過分方向給PWM值的舵機開環(huán)控制能克服舵機響應速度慢和不對稱的缺點,提升智能車尋跡的整體性能。實際運行結(jié)果表明該控制算法簡單、易實現(xiàn)。3 實驗結(jié)果對加長轉(zhuǎn)臂的舵機采用硬件閉環(huán)或軟件開環(huán)控制方法后,智能車在直道上行駛非常平衡,進彎道時,舵機能及時地轉(zhuǎn)向,加之我們采取了強制降速,所以智能車能平滑地過彎,過彎后又能迅速響應軌跡變化,將速度提起升,保證直道高速行駛。圖B6為智能車使用未加長轉(zhuǎn)臂舵機傳統(tǒng)控制、加長轉(zhuǎn)臂硬件閉環(huán)控制及軟件開環(huán)控制方法時,尋跡S型緩彎的沙漏軌跡圖,其中粗線為智能車需要識別的路徑,細線為智能車實際行駛路徑。圖中三個曲線對比發(fā)現(xiàn),加長轉(zhuǎn)臂的舵機配以硬件閉環(huán)或軟件開環(huán)控制方法,可以使智能車跟隨軌跡黑線能力明顯增強。圖B6 智能車軌跡沙漏模擬圖4 結(jié)論本文基于Freescale MC9S12DG128B芯片設計了兩種智能車舵機控制方案,實現(xiàn)了舵機尋徑控制,具體工作如下:(1) 方案1采用硬件閉環(huán)控制方式,通過使用D/A轉(zhuǎn)換芯片,硬件PI控制器以及壓頻變換模塊,實現(xiàn)了舵機角度控制。該方案使舵機的定位變的更加的精確與穩(wěn)定,彌補了舵機轉(zhuǎn)臂加長后左右力臂不一致的問題。(2) 方案2采用軟件開環(huán)控制方式,從舵機的不對稱性出發(fā)尋找解決方案,使舵機的控制更加精確。該方案省去了外圍硬件的設計,方便簡單。對比各個測試環(huán)節(jié),我們發(fā)現(xiàn)舵機這類器件,對響應時間和力臂的要求非常嚴格。采用軟件開環(huán)方案可以滿足本智能車系統(tǒng)快速尋跡的需要。在運行過程中,本智能車系統(tǒng)能準確穩(wěn)定的尋跡,配合速度控制,尋徑效果比較優(yōu)良。 參考文獻[1] 顏利彪,[J].電子技術(shù),2004,4:810.[2] 肖海榮,[J]。山東交通學院學報,2004,12(1):6063.[3] [M].北京:北京航空航天大學出版社,2002.[4] 實驗測試[M].武漢:華中科技大學出版社,2000.[5] 祖莉,王華坤,[J].南京理工大學學報,2003,27(1):5659.[6] 李萬玉,[J].青島大學學報,2004,17(2):3640.