唐建文
(廣東技術(shù)師范學(xué)院機(jī)電學(xué)院,廣東廣州510635)
設(shè)計智能小車,能根據(jù)路面設(shè)定的軌跡快速行駛,其中的路徑識別模塊,是智能小車控制系統(tǒng)的關(guān)鍵模塊之一。路徑識別模塊將路況的信息輸送給控制模塊,通過軟件處理獲取道路的各種參數(shù),來進(jìn)行路徑識別,從而控制智能車的車速及轉(zhuǎn)向的運(yùn)行。智能小車路徑識別多采用攝像頭檢測方式,這樣能通過鏡頭可以將道路前方很遠(yuǎn)的圖像映射到圖像器件中,從而得到小車前方很大范圍內(nèi)的道路信息。
智能小車行駛的路面,是由黑色路面、白色軌跡線構(gòu)成,路面情況簡單,不需要高分辨率的路面圖像。因而降低圖像分辨率,能減少圖像存儲占用的空間,加快圖像處理速度,而且仍有足夠的信息來控制智能小車的行駛。另由于智能小車的控制核心是單片機(jī)MC9S12芯片,處理能力不足以達(dá)到PC的運(yùn)算能力,因此采用黑白制式、分辨率為320×240的CMOS單板攝像頭(50幀/s)與之相配,并且能降低功耗。
CMOS攝像頭視頻信號采集模塊的主要功能包括:初始化模塊,主要負(fù)責(zé)A/D轉(zhuǎn)換器初始化和外部中斷初始化;外部中斷響應(yīng)模塊,主要負(fù)責(zé)判斷是否幀圖像開始,以及是否采集該行圖像,并啟動A/D轉(zhuǎn)換,標(biāo)示圖像采集完畢;A/D轉(zhuǎn)換中斷響應(yīng)模塊,主要負(fù)責(zé)采集固定數(shù)目圖像數(shù)據(jù)。
為了采集圖像信息,CPU需要根據(jù)行、場同步信號啟動A/D轉(zhuǎn)換器,采集穩(wěn)定的圖像。由于視頻信號的變化很快,所以需要另外設(shè)計同步分離電路。在此使用了LM1881視頻同步分離集成塊,來獲取視頻同步信號?;贛C9S12的16位單片機(jī)采集視頻圖像電路系統(tǒng)框圖如圖1所示。
圖1 單片機(jī)采集圖像系統(tǒng)框圖
智能小車運(yùn)行時,就需要采集圖像。首先判斷奇偶場同步信號的起始,作為一場信號的開始,然后利用單片機(jī)的外部中斷,檢測行、場同步信號進(jìn)行一行的A/D轉(zhuǎn)換,獲得視頻信號,直到一場結(jié)束。通過實驗確定,本系統(tǒng)單片機(jī)每隔2行采集1次圖像,并且只采集10×50像素的圖像,單片機(jī)在不超頻的情況下(即BUS_CLOCK=24MHz),一行能夠獲得50個點(diǎn),這已經(jīng)滿足控制要求。在橫向獲取行數(shù)時,采用隔行獲取,同時為了縮短控制周期,只取最前面的10行最為有效的信息。這樣,采集信號周期得到了盡量的縮短,但同時也不影響控制要求(視頻信號采集流程圖如圖2)。
圖2 視頻信號采集流程圖
在實驗過程中,利用單片機(jī)串口把圖像信息傳到PC機(jī)用串口調(diào)試助手顯示出來,為此可以更加直觀進(jìn)行分析和比較。車道檢測系統(tǒng),可以處理這樣的單幅灰度圖像。假設(shè)道路是水平地面,并且有連續(xù)或點(diǎn)化的車道標(biāo)志線。由于黑色道路和白色軌跡線的色差較大,直接在圖像數(shù)據(jù)上的反映就是大于一個閾值。通過實驗確定閾值的大小介于15~1E之間。以下為獲取到的直道圖3、左彎道圖4的圖像信息:
圖3 直道圖像信息
圖4 左彎道圖像信息
圖像信息處理模塊,主要完成采集圖像軌跡線參數(shù)的計算。在對以上獲取的10×50圖像,進(jìn)行軌跡線的提取,以及計算道路的曲率,以此控制小車減速或轉(zhuǎn)向。
圖5 白線提取流程圖
對于白色軌跡線信息的提取,采用前后像素點(diǎn)閾值比較法來獲取。主要把每行50列的信息分解為3部分進(jìn)行處理,即前10列為一部分,后10列為一部分,其余為一部分,這樣做的原因,在于使軌跡線不至于被漏檢,同時也達(dá)到快速檢測到軌跡線,其算法流程圖如圖5。
小車在道路上行駛時,過彎道如“S”形彎道時,會失去軌跡線。對于道路曲率的計算,采用了動態(tài)取出軌跡線位置。采用動態(tài)計算曲率,是為了避免當(dāng)攝像頭失去軌跡線位置時產(chǎn)生計算曲率出錯,從而影響小車整體速度的提高或者造成小車速度過快而沖出道路的危險。
經(jīng)多次實驗統(tǒng)計后,過濾了無軌跡線信息的數(shù)據(jù),得出經(jīng)驗公式:
曲率=第一行軌跡線位置-(2×中間行軌跡線位置)+最后一行軌跡線位置
在進(jìn)行動態(tài)取曲率的同時,也進(jìn)行失去軌跡線行數(shù)的計數(shù),這也為小車的速度和方向控制做好準(zhǔn)備。
根據(jù)智能小車控制核心單片機(jī)MC9S12的處理速度和內(nèi)部資源,通過攝像頭來進(jìn)行路徑識別,把智能車前面的路徑信息傳輸?shù)娇刂葡到y(tǒng),通過軟件處理獲取道路的各種參數(shù)的尋跡方法,可以有效地對小車的進(jìn)行運(yùn)動控制,提高智能小車的路徑跟蹤精度和運(yùn)行速度。
[1]李世華,田玉平.移動小車的軌跡跟蹤控制[J].控制與決策,2000,15(5):626-628.
[2]卓 晴,黃開勝,邵貝貝,等.學(xué)做智能車[M].北京:北京航空航天大學(xué)出版社,2007.
[3]屠大維,林財興.智能機(jī)器人視覺體系結(jié)構(gòu)研究[J].機(jī)器人,2001,23(3):206-210.