基于離散布置光電傳感器的連續(xù)路徑識別算法
摘要: 提出了一種基于間隔布置紅外光電傳感器的連續(xù)路徑偏差識別算法,消除了傳感器間隙的“盲區(qū)”, 為控制的流暢性提供了可能。
關(guān)鍵詞:無人車;導(dǎo)航;光電傳感;路徑識別
引言
對于紅外光電傳感器來說,相應(yīng)于不同的路面條件(主要是黑白度),接收管接收到地面漫反射紅外線后其兩端電壓將有所不同,即傳感器接收管正對白色路面,則其電壓較高,若正對黑色的路徑標記線,則電壓較低?;诖嗽砜梢蕴岢鲆环N比較常見的路徑離散識別算法:通過普通I/O端口將接收管電壓讀入單片機,根據(jù)端口輸入的高低電平邏輯來判斷該傳感器是否處于路徑標記線上方,再篩選出所有處于標記線上方的傳感器,便可以大致判斷此時車身相對道路的位置,確定路徑信息。
這種離散算法簡便易行,對硬件及算法要求都比較低,在傳感器數(shù)目較多的情況下也可以實現(xiàn)較高的識別準確性。但它的一個致命缺陷在于路徑信息只是基于間隔排布的傳感器的離散值,對于兩個相鄰傳感器之間的“盲區(qū)”無法提供有效的距離信息,因此在傳感器數(shù)目受到限制的智能車賽事中,其路徑識別精度極大地受制于傳感器數(shù)目及其間距。
即使傳感器數(shù)目不受限制,路徑識別精度足夠高,離散路徑識別算法仍有其難以克服的固有缺陷。由于離散算法得到的路徑信息為離散值,如果直接應(yīng)用到轉(zhuǎn)向及車速控制策略中,勢必造成轉(zhuǎn)向及車速調(diào)節(jié)的階躍式變化,這將會對賽車的性能產(chǎn)生以下不利影響:其一,轉(zhuǎn)向及車速控制僵硬,對路徑變化反應(yīng)不靈敏,同時易產(chǎn)生超調(diào)及振蕩現(xiàn)象;其二,舵機輸出轉(zhuǎn)角相對于路徑為階躍式延遲響應(yīng),對于追求高速性能的高車速短決策周期控制策略來說,很可能因為舵機響應(yīng)不及而造成控制失效。
為了解決以上問題,一方面可以從路徑識別算法上著手,尋找識別精度高,不受傳感器數(shù)目限制,識別信息連續(xù)的路徑識別算法;另一方面也可以從控制算法上著手,尋找基于離散路徑信息的連續(xù)控制算法。本文著眼于第一條思路,提出一種將有限間隔排布傳感器采集的數(shù)據(jù)連續(xù)化的方法,來實現(xiàn)連續(xù)路徑識別。
光電傳感器特性
該連續(xù)化方法主要是建立在對光電傳感器特性的深入研究的基礎(chǔ)上。
事實上,紅外光電傳感器特性并非如前文所述那樣簡單(白區(qū)高電壓,黑線低電壓),其電壓大小與傳感器距離黑色路徑標記線的水平距離有定量關(guān)系:離黑線越近,電壓越低,離黑線越遠,則電壓越高,(具體的對應(yīng)關(guān)系與光電管型號以及離地高度有關(guān)),
如圖1所示。
圖1 傳感器電壓與偏移距離關(guān)系示意圖
因此,只要掌握了傳感器電壓—偏移距離特性關(guān)系,就可以根據(jù)傳感器電壓上的大小確定各傳感器與黑色標記線的距離(而不是僅僅粗略判斷該傳感器是否在線上),進而獲得車身相對路徑標記線的位置,得到連續(xù)分布的路徑信息。
連續(xù)路徑識別算法
算法總流程框圖如圖2所示,分為光電傳感器特性測定、比賽開始前預(yù)標定、正式比賽三個步驟。
圖2 連續(xù)路徑識別算法總流程圖
傳感器特性測定
傳感器電壓—偏離距離曲線的測定是實現(xiàn)連續(xù)路徑識別的基礎(chǔ),需在軟件調(diào)試階段預(yù)先完成。以下將以一套實際設(shè)計的傳感器為實例,說明曲線測定的過程。
傳感器組參數(shù)如表1所示?!?/P>
表1 傳感器組參數(shù)
*:傳感器平面與地面夾角
預(yù)標定
考慮到賽道差異以及傳感器溫漂對傳感器電壓整體變化產(chǎn)生的影響,每次賽車出發(fā)前需要進行賽道預(yù)標定,從而為下面算法路徑識別部分中的歸一化處理提供準確的歸一化基本參數(shù)。
在標定過程中,賽車處于停車狀態(tài),但傳感器及其電壓A/D轉(zhuǎn)換通道仍在工作,單片機不斷記錄讀入的電壓值。在賽道上移動賽車使其所有傳感器均能掃過白色的路面以及黑色的賽道標記線,這樣單片機就能記錄下在該賽道上道路傳感器的電壓最大值(白區(qū)電壓)以及最小值(黑區(qū)電壓),為算法中的歸一化處理提供基本參數(shù)。
路徑識別
路徑識別(即路徑信息獲取)為控制算法的核心內(nèi)容,各步驟在單個決策控制周期內(nèi)完成。首先,在每個決策控制周期中,通過A/D轉(zhuǎn)換將傳感器電壓轉(zhuǎn)換為數(shù)字量讀入單片機中。然后,利用在標定過程中得到的傳感器電壓最大、最小值將得到的傳感器電壓進行歸一化處理。下面需要確定能夠用于確定路徑信息的有效傳感器。接著,就需要調(diào)用傳感器特性曲線參數(shù)進行路徑信息計算。最后,為了能夠提高路徑信息的準確性,減小單個傳感器探測及數(shù)據(jù)轉(zhuǎn)換的誤差,可以將根據(jù)三個有效傳感器計算得到的三個偏移距離取平均,得到較為準確的路徑信息。
值得注意的是,這樣得到的路徑信息是車身中心偏移路徑標記線的距離,是一個連續(xù)變化的量,不但能在傳感器處于賽道標記線正上方時探測到賽道,也能在傳感器偏移標記線時給出具體的偏移距離,因此消除了傳感器間隙的“盲區(qū)”,實現(xiàn)了連續(xù)的路徑識別。
問題及展望
連續(xù)路徑偏差識別算法比起普通離散算法來說,不但具有定位精確、響應(yīng)連續(xù)的特點,而且從理論上來說連續(xù)算法可以在任意數(shù)目傳感器配置的控制系統(tǒng)中都保證較好的路徑識別效果,為控制的流暢性提供了可能。
同時需要指出的是,采用該算法時硬件設(shè)計上需要注意一些相關(guān)問題:
評論