中心論題:
- 雙排傳感器的優(yōu)勢
- 傳感器陣列布局
- 布局方式說(shuō)明
- 直道識別方式
- 直線(xiàn)穩定控制策略
解決方案:
- 直道識別,程序輔助確認
- 直線(xiàn)穩定控制策略
雙排傳感器的優(yōu)勢
目前,大多數智能車(chē)采用單排傳感器的道路檢測方式,這種方式獲得的道路信息少,對智能車(chē)的狀態(tài)和道路的狀況都不能很好地區別,造成控制上的麻煩。為了彌補不足,形成了大前瞻的單排傳感器的道路檢測方式,這種方式檢測的距離更遠,能夠更早地判斷出道路的走向,在一定程度上彌補了檢測精度低的缺點(diǎn),但也無(wú)法有效地區分智能車(chē)狀態(tài)與道路狀況。
比賽的車(chē)??蛇x用攝像頭或傳感器的方式進(jìn)行道路信息檢測,我們的車(chē)模采用的是雙排紅外的循跡方式,采用大前瞻雙排傳感器可以得到更多的賽道信息,更早地采取策略處理,形成更好的行車(chē)軌跡。是采用復雜的攝像頭方案的一種替代方式。
可以在直道中實(shí)現穩定控制,加速順暢的能力;在S彎中以小曲線(xiàn)的方式前進(jìn),減少行進(jìn)路線(xiàn)和舵機調整次數。在大彎中實(shí)現提前轉彎,切內彎的效果。尤其是在轉彎方面,通過(guò)前后排共同對彎道的預測,達到延伸物理識別距離的能力,從而做出提前的動(dòng)作,減少由于檢測距離近而帶來(lái)的負面影響,達到上述效果。
傳感器陣列布局
圖1中僅以接受管示意傳感器位置。
布局方式說(shuō)明
前排傳感器伸出距離較遠,小車(chē)中心偏離黑線(xiàn)后,會(huì )在前排傳感器上產(chǎn)生較大偏移量。
后排傳感器伸出距離較近,小車(chē)中心偏離黑線(xiàn)后,會(huì )在后排傳感器上產(chǎn)生較小偏移量。
利用前后排傳感器對小車(chē)偏移時(shí)不同的敏感度對小車(chē)進(jìn)行控制。
為了使前后排體現出更明確的分工和采集到更遠處的信息,我們把前排傳感器傾斜約45o角,使前排的前瞻距離更大,更能體現出前排的優(yōu)勢和特點(diǎn)。
直道識別方式
a.采用此種方式布局雙排紅外,對于直道的判別方法可有以下5種物理方式,每種方式應用的時(shí)機列在表后。
第一種直道情況(圖2)
在左轉大彎后,出彎時(shí)最可能出現的前后排傳感器檢測到黑線(xiàn)時(shí)的組合情況。適用于左轉 90°彎、180°彎。提前得到出彎信息,舵機向左轉動(dòng)較小角度,并在此時(shí)采取加速動(dòng)作,起到彌補前瞻不足的作用。此情況在賽道的s彎出現時(shí),不滿(mǎn)足直道的第二種識別方式,故不會(huì )加速。
第二種直道情況(圖3)
此情況是對第一種情況的再確認,左轉大彎并經(jīng)過(guò)第一種情況后,再經(jīng)歷此種情況,可確認無(wú)誤前方為直道,繼續提升小車(chē)的加速能力??刂瞥绦蛴蓮澋莱绦蚯袚Q到直線(xiàn)穩定程序。
第三種直道情況 (圖4)
此時(shí)采取直線(xiàn)穩定控制。由于前兩種情況已經(jīng)明確識別為直道,此種情況只是增加直道識別的成功率。
第四種直道情況(圖5)
與第二種情況類(lèi)似,對第五種情況的再確認,右轉轉大彎并經(jīng)過(guò)第五種情況后,再經(jīng)歷此種情況,可確認無(wú)誤前方為直道,繼續提升小車(chē)的加速能力??刂瞥绦蛴蓮澋莱绦蚯袚Q到直線(xiàn)穩定程序。
第五種直道情況(圖6)
在右轉大彎后,出彎時(shí)最可能出現的前后排傳感器檢測到黑線(xiàn)時(shí)的組合情況。適用于右轉轉 90o彎、180o彎。提前得到出彎信息,舵機向右轉動(dòng)較小角度,并在此時(shí)采取加速動(dòng)作,起到彌補前瞻不足的作用。在賽道的s彎出現時(shí),不滿(mǎn)足直道的第二種識別方式,故不會(huì )加速。
b.直道識別,程序輔助確認
進(jìn)入彎道后,隨著(zhù)小車(chē)的行進(jìn),會(huì )發(fā)生振蕩,致使出彎時(shí)不一定滿(mǎn)足上述5種情況。為了提高直道的識別成功率,增加第二種直道判別方法。兩者同時(shí)起作用,滿(mǎn)足第一種后經(jīng)過(guò)最多15ms確認是直道。
程序是循環(huán)執行,我們的程序執行頻率是2KHz。采用定時(shí)中斷(15ms)的方式,對前排中間3個(gè)傳感器(編號為3、4、5)使用3個(gè)計數器分別計數,每次執行程序若是其中一個(gè)檢測到黑線(xiàn),相對應的計數器加1。經(jīng)過(guò)計算,15ms內所能計數的最大值為31。我們設定計數的最大值,若在15ms內達到所要求的計數值,就認為是直道,切換直道程序并將計數器清零;若15ms內沒(méi)有達到所要求的計數值,計數器清零,重新計數。例如小車(chē)為2m/s的速度,小車(chē)行進(jìn)3cm。我們只要判斷2~2.5cm內為直道即可。所以設最大計數值為20~25即認為是直道,跳出彎道程序。
當然也可以采用更嚴格的方法來(lái)判斷,只需調整定時(shí)中斷的時(shí)間和計數值即可。此條件在進(jìn)入直道后總能滿(mǎn)足,所以作為第一種直道判別方式的補充,保證直道的穩定可靠識別。
直線(xiàn)穩定控制策略
小車(chē)出彎后,由于舵機的反應不靈敏,智能車(chē)會(huì )發(fā)生振蕩,隨后才能達到穩定,為了盡早減小振蕩,采用如下方式控制小車(chē)出彎后的動(dòng)作:在彎道策略中設置標志位,進(jìn)入直線(xiàn)程序后,識別標志位,對控制舵機轉向的公式采取修正設置。公式為:q=K1q1+K2q2;其中q為最終送給舵機的控制量,q1為前排光電傳感器的返回轉角值,q2為后排紅外返回轉角值。K1、K2分別為前后排傳感器的加權比例值。通常情況下K1、K2為
1,需要時(shí)則改變賦值。
當小車(chē)從彎道進(jìn)入直道并成功識別出直道后,減小K1的值,由于后排傳感器距離小車(chē)的前輪(轉向輪)很近,小車(chē)中心偏離黑線(xiàn)時(shí),不會(huì )在后排傳感器橫向位置產(chǎn)生很大位移(相對于前排傳感器),故小車(chē)在直線(xiàn)上舵機調整的次數就會(huì )明顯減少,直線(xiàn)的穩定性會(huì )好。同時(shí),根據前后排不同傳感器的組合,給出不同的轉角策略(在程序中以列表的方式體現),近一步提高直線(xiàn)的穩定控制能力。