常文凱
(華北電力大學(xué) 自動(dòng)化系,保定 071000)
在控制智能車(chē)的過(guò)程中,精確地識(shí)別出中心黑線的位置和道路狀況始終是各種算法的最基礎(chǔ)部分。光電組智能車(chē)常采用采集數(shù)字信號(hào)的方法。該方法直接把固定位置單個(gè)傳感器所“看”到的黑白情況反映給單片機(jī),識(shí)別電路用硬件電路搭接,電路簡(jiǎn)單。但是遇到跑道瑕疵、光線明暗不均的地方容易錯(cuò)誤判斷。此外,用這種方法判斷的黑線位置是不連續(xù)的,容易出現(xiàn)跳躍性打舵機(jī),使系統(tǒng)不穩(wěn)定。
文獻(xiàn)[1]中利用中斷技術(shù)每個(gè)1ms 采集一次信號(hào),采集10次求平均值的方法可增強(qiáng)抗干擾能力。文獻(xiàn)[2]中提出采集模擬量,結(jié)合環(huán)境動(dòng)態(tài)設(shè)置閾值的方法受光照影響較大,并且增加了許多額外的電路。文獻(xiàn)[3]提出擬合單個(gè)傳感器特性曲線的方法同樣對(duì)環(huán)境的依賴性較高適應(yīng)性不強(qiáng)。
結(jié)合實(shí)踐發(fā)現(xiàn)線型擬合識(shí)別路徑的方法可以很好地增強(qiáng)智能車(chē)的適應(yīng)能力。該方法的基本思想是讓傳感器采集模擬量,以傳感器的固定位置為x軸,采集的電壓為y軸。經(jīng)過(guò)適當(dāng)處理后可擬合出一條電壓——位置曲線。結(jié)合最高點(diǎn)位置、斜率等特征信息可以識(shí)別出黑線中心位置、起跑線等多種路況。
計(jì)算求解過(guò)程中沒(méi)有人為設(shè)定的閾值,增強(qiáng)了適應(yīng)能力。每一個(gè)傳感器“看”到的是一片區(qū)域而不是一個(gè)點(diǎn)的黑白情況,這樣可以明顯減弱環(huán)境等因素的干擾。另外,基于該算法本身特性,可以使傳感器的觀測(cè)范圍大于PCB板整體寬度、使用傳感器個(gè)數(shù)少、識(shí)別精度高等優(yōu)點(diǎn)。
經(jīng)過(guò)比較,基于求解超定方程組的擬合方法在單片機(jī)上更容易實(shí)現(xiàn)。實(shí)驗(yàn)過(guò)程中選用擬合4階方程效果最好。
圖1 傳感器布置
圖 2 擬合曲線
如圖1所示,8個(gè)傳感器的位置分別為x1~x8,對(duì)應(yīng)采集的模擬信號(hào)(電壓值)分別為y1~y8,需要擬合成4階方程(1)和一階導(dǎo)數(shù)方程(2):
可以看出只要5組(x , y)(5個(gè)采樣點(diǎn))就可以求解出方程系數(shù)a~e的值。在實(shí)際應(yīng)用中把黑線位置附近的值作為擬合的重點(diǎn)。從采集的電壓來(lái)看,黑線附近即為ymax或ymin位置的附近。按照上述規(guī)則從采集來(lái)的8對(duì)采樣點(diǎn)中選出以ymax或ymin為中心的5對(duì)采樣點(diǎn)參與擬合對(duì)于ymax或ymin所對(duì)應(yīng)的傳感器位置靠近PCB板邊上時(shí),即:yi=ymax或yi=ymin且i∈{1,2,3,6,7,8}時(shí)應(yīng)該取最左端或最右端5對(duì)值。具體規(guī)則見(jiàn)表1。
表1 分類(lèi)規(guī)則表
按照上述規(guī)則確定參與擬合的5個(gè)點(diǎn)后結(jié)合式(1)可得到方程組(3)轉(zhuǎn)化為矩陣形式為式(4)
超定方程組(4)簡(jiǎn)記為
當(dāng)XTX可逆時(shí)方程(5)存在解,并且方程(5)、(6)的解相同,都為表達(dá)式(7)[4]
把求解結(jié)果L代入(1)、(2)式可得出當(dāng)前的位置——電壓曲線和位置——斜率曲線,如圖2所示。把任何感興趣的位置xj∈( xmin, xmax)帶入曲線方程可得到該位置的黑白程度和趨近于黑線的程度。
當(dāng)8個(gè)傳感器在PCB板上的位置固定時(shí)x1~x9為確定值,因此,按照表1中的分類(lèi)方法,式(5)中X只有4種值,對(duì)應(yīng)于Ⅰ~Ⅳ類(lèi)X分別簡(jiǎn)記為方程 (7)可表達(dá)為方程(8)
同理當(dāng)傳感器在PCB板上的位置固定時(shí)Ci也只有四種情況。因此,傳感器PCB板制作好后可以用matlab等工具計(jì)算出C1~C4四個(gè)矩陣,以二維數(shù)組的形式存進(jìn)單片機(jī)中,這樣可以節(jié)約大量的運(yùn)算時(shí)間并調(diào)高運(yùn)算精度。
利用求解出的(1)、(2)式可以獲得道路的多種信息。結(jié)合模糊控制等智能控制方法可為智能車(chē)整體控制提供強(qiáng)有力的支持。參考文獻(xiàn)[5,6]對(duì)模糊控制有較詳盡的說(shuō)明這里不再贅述。這里僅對(duì)求解黑線中心線位置作說(shuō)明。
從實(shí)際情況可知,黑線中心處應(yīng)該就是(1)式對(duì)應(yīng)曲線的最高/低點(diǎn),這就把問(wèn)題轉(zhuǎn)化為求解曲線在xj∈( xmin, xmax)范圍內(nèi)的最大/小值的問(wèn)題。由2.1分析可得曲線最大/小值處在 ymax或ymin對(duì)應(yīng)的位置附近??梢砸?ymax或ymin對(duì)應(yīng)的位置Xk為中心,以Δl為間隔,沿x軸正負(fù)方向分別擴(kuò)展M個(gè)點(diǎn),記數(shù)組S為:
S = ( xk-MΔl , xk-iΔl ,…xk-iΔl , xk-MΔl ), 其 中i∈( 0 , M )
為方便說(shuō)明簡(jiǎn)記:
把sn帶入式(1)可得電壓數(shù)組V
由表1可得需要計(jì)算四類(lèi)Ci,8個(gè)接收管間隔x1=-8.00, x2=-5.71, x3=-3.43, x4=-1.14,x5=1.14, x6=3.43, x7=5.72, x8=8.00,以C1為例計(jì)算可得
圖3 程序流程圖
圖4 誤差分析
A/D轉(zhuǎn)換5次并求取平均值可以起到濾波的作用,實(shí)際應(yīng)用時(shí)可以靈活調(diào)節(jié)A/D轉(zhuǎn)換間隔和轉(zhuǎn)換次數(shù)保證濾波效果。計(jì)算黑線中心線位置和斜率后存儲(chǔ)可以為識(shí)別道路提供更多的信息。
部分測(cè)試結(jié)果如圖4所示,硬件經(jīng)過(guò)仔細(xì)調(diào)整但實(shí)際測(cè)試依然有誤差。平均誤差整體為正,說(shuō)明傳感器PCB板中心線相對(duì)于車(chē)體的中心線偏左。調(diào)整PCB板的安裝位置可以減小部分誤差。平均誤差在不同區(qū)段也不相同,這是因?yàn)?個(gè)傳感器的光電特性不可能完全一致,調(diào)節(jié)起來(lái)也十分困難,從軟件方面給予修正相對(duì)容易一些。
平均誤差曲線是測(cè)量系統(tǒng)不隨路況改變的特性曲線,當(dāng)硬件固定時(shí)曲線也是唯一的。擬合出平均誤差曲線函數(shù)f (X, ΔX )在需要黑線絕對(duì)位置時(shí)按照f(shuō) (X, ΔX )給予修正可達(dá)到更高的精度。 從圖4中可以看出,進(jìn)過(guò)修正后誤差明顯減小。
整體來(lái)看,該方法抗干擾能力強(qiáng),在復(fù)雜光電環(huán)境中依然保持良好檢測(cè)能力;適應(yīng)性強(qiáng),識(shí)別路徑算法中沒(méi)有人為設(shè)定閾值,無(wú)論光的強(qiáng)弱均可正確識(shí)別黑線位置;使用傳感器個(gè)數(shù)少,共用8個(gè)紅外接收管,達(dá)到了其他方法需要10~15個(gè)傳感器檢測(cè)的精度,電路更簡(jiǎn)潔、功耗更低。該方法的不足是對(duì)硬件的一致性要求比較高,需要反復(fù)仔細(xì)調(diào)節(jié)和測(cè)試每一個(gè)發(fā)射管和接受管后才能達(dá)到設(shè)計(jì)精度。
[1] 葛鵬飛, 鄭建立,等. 基于光電傳感器的智能車(chē)尋跡方法研究[J], 研究與開(kāi)發(fā), 2007, 26(8): 40-42.
[2] ??∮? 低成本8位單片機(jī)控制的光電尋跡智能車(chē)[J], 電子設(shè)計(jì)工程, 2011, 19(10): 128-131
[3] 王德雙, 陳小虎, 于磊磊. 第四屆“飛思卡爾杯”全國(guó)大學(xué)生智能車(chē)競(jìng)賽技術(shù)報(bào)告[R], http://www.docin.com/p-220402500.html
[4] 同濟(jì)大學(xué)數(shù)學(xué)系. 工程數(shù)學(xué). 線性代數(shù)[M]. 高等教育出版社, 2007: 71-78
[5] 陳果, 徐家品等. 基于模糊控制的快速循跡智能車(chē)的設(shè)計(jì)與實(shí)現(xiàn)[J]. 成都信息工程學(xué)院學(xué)報(bào), 2008, 23(6): 601-604.
[6] 祝亞峰, 李書(shū)剛, 等. 基于紅外激光管的智能車(chē)設(shè)計(jì)[J],信息技術(shù), 2010, 6: 109-112