關于智能車模起跑線識別方法的設計與實現(xiàn)
設計思想及算法實現(xiàn)
車模與賽道的參數(shù)如圖1所示。車模運行的主要形式主要是車模的規(guī)定的賽道內行進,賽道中央有一條25mm寬的黑色引導線。
圖1 車模及賽道的相關參數(shù)
常用的車模巡線方案有光電傳感器陣列和CCD探測法等,這里介紹光電傳感器陣列的設計方案。光電傳感器是靠紅外發(fā)射管和紅外接收管組成的傳感器,如圖2所示。
(a) 白色反射面下的紅外反射
(b) 黑色反射面下的紅外吸收
圖2 用于路況識別的紅外光電傳感器
紅外發(fā)射管發(fā)射的紅外線具有一定的方向性,當紅外線照射到白色表面上時會有較大的反射,如果距離Dl取值合適,紅外接收管可接收到反射回的紅外線,再利用紅外接收管的電氣特性,在電路中處理紅外線的接收信息;如果反射表面為黑色,紅外光會被表面將其大部分吸收,紅外接收管就難以收到紅外線。這樣,就可以利用紅外收發(fā)管組成的光電傳感器檢測賽道黑線,實現(xiàn)智能車的巡線方案。
光電傳感器陣列布局參數(shù)的確定
如圖3所示,光電傳感器陣列參數(shù)主要有管距D(管內側距離),管直徑d,影響光電傳感器陣列參數(shù)的主要因素有:
起跑標志線和十字交叉線;
比賽規(guī)則對車模尺寸的限制;
跑道黑色引導線的寬度;
舵機轉彎精度。
根據以上影響因素,建立模型如圖3和圖4所示。
圖3 光電傳感器陣列與起跑線的相對關系(1)
圖4 光電傳感器陣列與起跑線的相對關系(2)
起跑標志線和十字交叉線的識別方案要和光電傳感器陣列參數(shù)聯(lián)系起來考慮,所以首先根據起跑標志線的基本識別方法來確定光電傳感器陣列參數(shù)。單片機在處理起跑標志線和十字交叉線的區(qū)別時,較方便的方法就是當光電傳感器陣列經過十字交叉線時7個傳感器全檢測到黑線,而經過起跑標志線時會有個別傳感器檢測到白色賽道表面。根據這個道理,建立模型如圖3和圖4所示,分兩種情況討論:
1) 光電傳感器陣列有2個傳感器檢測到白色跑道而其它傳感器檢測到黑線時,如圖3所示;
2) 光電傳感器陣列有1個傳感器檢測到白色跑道而其它傳感器檢測到黑線時,如圖4所示。
根據以上兩種情形,在光電傳感器陣列采用等距分布的情況下,可有如(1)式所示的數(shù)學描述。
(1)
(2)
(3)
根據(3)式,做如圖5所示的數(shù)軸標注方法來表示不等式的取值范圍。
圖5中計算所得的D值范圍為(25, 30-1.5d)。但是也要考慮特殊情況。由于車身在經過起跑標志線時并不是每次都能保持和跑道引導線平行,所以要考慮當車身偏斜進入起跑線時的情況會不會使(1)式有所變化。如圖5所示。
圖5 數(shù)軸標注D的取值范圍
考慮偏斜的角度如圖6所示,車身偏斜時在起跑線白色間隙的長度f=19mm,這樣(1)式的數(shù)學描述中發(fā)生變化的僅僅是圖4所示中的跑道間隙值17.5mm,該值被f代替。帶入新值后用數(shù)軸標注法標注D值的區(qū)間如圖7所示。比較圖6發(fā)現(xiàn), A點向B點靠近形成A′點,并沒有超過B點;C點和D點分別移動到C′點和D′點位置,所以D的取值范圍有擴大的趨勢,這樣,圖5標注的D值范圍符合要求。
圖6 車身偏斜進入起跑標志線的情況
圖7 改變數(shù)據后數(shù)軸標注D的取值范圍
如果偏斜角度繼續(xù)增大,前排光電傳感器陣列不能同時進入起始標志線,這樣在單片機編程算法中很容易處理這種情況。
綜合以上討論,可知:
光電傳感器的管距(管內側距離)D取值范圍為(25, 30-1.5d);
根據誤差理論,單純從傳感器的外徑尺寸上考慮,其值d越小越好;
本設計中取光電管直徑d值為3mm,D值范圍(25mm,25.5mm)。
實測效果
根據以上分析的光電傳感器的管距D取值范圍制作車模的尋線傳感器陣列,對車模進行了大于50次的測試,實測結果表明:車模均能正確識別到起跑線。
但是,設計還存在一些問題,主要有:
*對D的取值要求苛刻;
*要求紅外傳感器的正常工作率為90%以上。
結語
本文分析了智能車模比賽中的相關技術參數(shù),建立了光電傳感器陣列的數(shù)學模型,確定了陣列參數(shù)。這為車模系統(tǒng)的路況記憶算法提供了基本參考點。本文還分析了起跑線識別方法的實測效果,實測結果表明:車模均能正確識別到起跑線。(因版面有限,本文已作部分刪節(jié),完整版請登陸cafeforensic.com查閱。)
評論