劉 源,張文斌,劉雪揚,丘世因
(昆明理工大學機電工程學院,云南昆明 650500)
智能小車的設計開發涵蓋了控制、模式識別、傳感技術、電子、電氣、計算機、機械及車輛工程等多個學科,其中控制算法對于智能車自主行駛的穩定性和流暢性起著關鍵作用[1~3]。通過分析電磁信號的特征,本文提出了針對不同路況信息的傳感器布置方案和控制策略,供智能車進行較好的導航定位,提高了智能車的運行速度和平穩性。


圖1 導線周圍的磁場分布Fig 1 Magnetic field distribution around wire
如圖2所示,可以得出距導線距離為r處的磁感應強度。

圖2 直線磁場計算簡圖Fig 2 Diagram of straight line magnetic field calculation

經過計算得

設導線的長度為無限長,即θ1=0,θ2=π,則

由于工字電感測試信號原理為電磁感應原理,且原理簡單、使用方便、價格便宜,所以,選用工字電感作為磁場信號檢測的傳感器。根據法拉第定律,傳感器的內部感應電壓E與磁場B(t)、線圈數N,截面積A,θ為磁場方向和傳感器線圈軸線的夾角關系有

設傳感器中心軸線與導線的垂直距離為h、水平距離為x,則可知


為了防止傳感器的抖動對測量信號產生過大的影響,所以,首先對傳感器的排布高度進行了相應的分析,分別將h賦值為[5,12 cm],每隔 1 cm 取一個高度,x∈[-24,24 cm],在Matlab中得到了水平和豎直放置電感測出的感應電壓E和水平偏移量x的關系曲線,得到圖3的測試曲線圖,圖中上半部分為水平電感的仿真曲線,下半部分為豎直電感的仿真曲線。
在1節中已經建立了20 kHz的100 mA交變電流導航信號,針對該信號進行了智能車的開發,圖4是各主要模塊在已經開發的電磁導航智能車上的分布圖。
智能車首先通過傳感器信號采集模塊將循跡電磁信號選頻采集,交由傳感器信號處理模塊進行濾波、放大,之后飛思卡爾MC9S12DG128對信號進行A/D轉換和計算分析,針對S—D5數碼舵機輸出300 Hz不同脈寬的PWM波控制舵機轉角來控制小車轉向,另外,根據編碼器反饋回來的小車車速構成閉環控制系統,通過增量式PID來控制小車的車速。通過5V電源模塊給小車各個模塊供電,外接鍵盤用來對小車的參數進行整定和調試。

圖3 水平和豎直放置電感測出的感應電壓E和水平偏移量x的關系曲線Fig 3 Relation curve of inductive voltage E and level offset x measured by level and the vertical placed inductance

圖4 主要模塊在智能車上的分布圖Fig 4 Distribution of main module in intelligent car
根據圖3所示的水平布置傳感器的仿真感應電壓E的分布特性,得出傳感器離導線距離越遠所測出的E值就越小的特點,建立了智能車循跡的控制策略。通過橫排分布的左右對稱的6只傳感器來判別漆包線位于哪個區間,從左到右對傳感器編號,根據飛思卡爾單片機A/D采集通道來進行相應的編號,即分別編號為{0,1,2,3,4,5},在單片機對應的A/D采集通道的A/D轉換值中尋找該時刻6只傳感器中的最大值和次大值,將最大值和次大值的對應編號相加,將得到的和賦值給變量m,通過switch(m)來進行不同偏離情況的選擇,根據實際情況,設置了case1,case3,case5,case7,case9,default這6 種情況,如圖 5 控制策略簡圖5所示。

圖5 控制策略簡圖Fig 5 Control strategy diagram
case1和case9為6種情況中智能車偏離導線最遠的情況之一,因此,應該適當地減小電機的轉速,并將舵機的轉角增到最大;case3和case7為6種情況中智能車與導線產生一定偏離的情況,此時應該在直道車速的基礎上稍減速,并將舵機轉角由0°增大一些,由于系統判別case3和case7的情況一共有2種,第一種為直道由于機構原因發生些許偏移,第二種為智能車入彎或出彎,針對這2種情況同時選用了最邊沿的2只傳感器的數值作為分辨這2種情況的依據,由于2個邊沿傳感器如圖7所示不是水平放置而是有一定的偏角,所以,在拐彎處表現更加靈敏,在實驗中測得當出入彎時候對應編號的傳感器的A/D轉換值在65以上,而在直道中則很小,近似為0,通過這一條件的判別很好地解決了出入彎偏移和直道微偏的判別問題,但是在后續實驗中又發現出彎和入彎是2種截然不同的情況,為了使智能車能快速運行,最好的控制策略是能夠實現入彎減速(防止沖出路徑),同時在出彎時候可以加速,以便在出彎后的直道上能夠以最快速度運行,所以,通過設置定時中斷來每隔2ms測一次當前的最大值和最小值對應的傳感器序號的和,并存入數組M[5]中,以5次存儲的M[5]數組作為出入彎的判別依據來進行判別,如果M數組的5個元素的和超出一定范圍且第一次存儲到M數組的元素值為5(由直道開始拐彎)時候則判斷為在入彎,反之,則判斷為出彎,假設車速為2m/s,則5×2ms×2000cm/s=20cm,即判定出入彎的反應距離為20 cm,同時智能車傳感器又有20 cm前伸的前瞻,所以,滿足測試要求,圖6為出入彎判別程序框圖。

圖6 出入彎判別程序框圖Fig 6 Program diagram of turn-in and exit corner
case5為直道情況,將舵機對應地打到0°,并且將智能車速度增到最大;在未對default和case5進行相應的修改時,實驗中發現傳感器與導線在發生最大的偏差時候會出現判別失誤,導致智能車沖出導航路徑,通過多次實驗發現有2種情況,第一種為傳感器均位于導線右側且偏離導線的距離較遠,會出現只有最靠近導線的傳感器有值即為最大值,則最大值的傳感器編號為0,其余值全部為0,則次大值的傳感器編號為0,其和為0,不滿足case的5種情況,因此,用default來解決,即如果出現default則保持上一個檢測狀態(即左和右)的檢測情況并把舵機轉角打到上一個檢測狀態的最大值。第二種情況為傳感器均位于導線左側且偏離導線的距離較遠,會出現只有最靠近導線的傳感器有值即為最大值,則最大值的傳感器編號為5,其余值全部為0,則次大值的傳感器編號為0,其和為5,則與case5產生了判別失誤,設最大值為m1,所以,在 case 5的程序中加入if(m1=5)即可,使得case5中以下控制程序判別如果最大值不等于5才可以進入直道的控制指令。針對以上2種情況的改進措施我們對控制程序進行了相應的改進,最終解決了傳感器與導線在發生最大的偏差時候會出現判別失誤、導致智能車沖出導航路徑的問題。
為了防止傳感器抖動對電感采集信號產生的過大影響,所以,在布置水平電感時選用了圖3中從上往下數的第4根曲線所對應的高度,為8 cm,從圖中可知在選取8 cm時,傳感器上下抖動1 cm幅度(大于實際抖動范圍)內,傳感器所測到的感應電壓僅發生很小的變化,抖動對傳感器的正確測量基本上不會產生影響。所以,在布置傳感器時選用了8 cm的高度。
經過分析,最基本的導航路徑有直道、彎道、十字交叉彎這3項,所以,傳感器布置也是根據這3種不同的路徑來進行分配布置的。
4.2.1 針對直道和彎道的傳感器布置方案
根據前期的實驗,初步選定了用6只傳感器來進行對應的導線位置測量。分別左右各3個對稱分布,如圖7所示。

圖7 初步選定的傳感器布置方案Fig 7 Preliminary selected sensor arrangement plan
經過實驗測得的實際數據可知,在由直線到90°直角彎路徑轉換時,該種布置方案的舵機做出反應的位置為傳感器中心和導線偏差為5.5 cm且傳感器已入彎13 cm時舵機才做出相應的擺角。此時明顯入彎反應過慢,嚴重影響了智能車在轉彎時候的速度。通過對入彎路徑處磁場的分析,最終采用了如圖8所示的傳感器布置方案,該方案將最邊沿的2只傳感器進行了向內一定角度的偏移,以左拐為例由圖8可知,在經過修改后拐彎處導線產生的磁感線與傳感器的中心軸線的夾角變小,幾乎接近于0°,由式(4)可知感應電壓E變大。從而使得拐彎檢測更加靈敏。經過實驗測得改進的傳感器布置方案舵機做出反應的位置為傳感器中心和導線偏差減小為4.5 cm,且傳感器已入彎距離減小為8 cm,如表1所示,從表中可以看出:改進后的傳感器布置方案使得智能車的反映距離減小了5 cm,增大了小車轉彎的前瞻,在一定程度上提高了小車轉彎速度。

圖8 改進后的傳感器布置方案Fig 8 Improved sensor arrangement plan
4.2.2 針對十字彎道的傳感器布置方案
為了防止智能車在拐彎的時候由于速度過快沖出路徑,所以,控制策略中規定小車在檢測到有偏移時,隨即進行減速,但是,對于十字彎道進行270°轉彎的特殊情況,小車的傳感器必將全程都檢測出在轉彎,隨即一直減速,導致智能車車速減得過多,速度過慢,從而大大地影響了智能車的平均速度,所以,十字彎道的檢測也是至關重要的。如圖9所示為十字彎道示意圖和Matlab十字彎道磁場強度三維仿真圖。

圖9 十字彎道示意圖和磁場強度仿真圖Fig 9 Cross-shaped corner schematic diagram and magnetic field simulation diagram
從Matlab仿真圖中可以看出:在十字型彎道中,磁場發生了很大的變化,使得在十字彎道中磁場的數值分量增大很多,與圖3中的豎直傳感器對應的小的磁場強度形成了鮮明的對比,所以,在傳感器板子上端布置了2只對稱分布的豎直的傳感器通過其差值來進行十字彎道的判別,實驗中測得在半徑為50 cm的十字彎中兩豎直傳感器的A/D轉換值之差會達到120左右,但是,在普通彎道和直道中卻始終保持在40以下,所以,通過這一特征可以明顯地判別出十字彎道。最終設計的傳感器總體布置圖為圖10所示。

圖10 最終完成的傳感器布置方案Fig 10 Final sensor arranging scheme
為驗證智能車在進行相應的改進后的快速性和穩定性,在實驗室自行搭建的路徑上進行了實驗,表1為改進前后實驗數據對比表。
電磁導航智能車使用飛思卡爾MC9S12DG128微控制器作為核心控制單元,自行設計了采集電磁信號的傳感器信號采集電路,經過改進開發了電磁導航智能車的控制程序,分析了電磁信號的特性,針對特性和導航路徑,進行了傳感器的布置和搭配,最終實現了智能車平穩、快速地運行。

表1 改進前后實驗數據對比表Tab 1 Contrast table of experimental data
[1]周 泉,王貴勇,賈現廣,等.基于MC9S12DGl28B的智能模型車設計[J].昆明理工大學學報:理工版,2010,35(5):37 -40.
[2]王元哲,談英姿.磁導航智能車路徑信息采集系統的設計與實現[J].微型機與應用,2011,30(1):19 -22.
[3]卓 晴,黃開勝,邵貝貝.學做智能車[M].北京:北京航空航天大學出版社,2007:10-50.
[4]張吳飏,馬 旭,卓 晴.基于電磁場檢測的尋線智能車設計[J].電子產品世界,2009(11):48-50.