唐保龍
(一汽豐田技術(shù)開發(fā)有限公司 天津300462)
智能車路徑識別及轉(zhuǎn)向控制的研究與實(shí)現(xiàn)
唐保龍
(一汽豐田技術(shù)開發(fā)有限公司 天津300462)
路徑識別和轉(zhuǎn)向系統(tǒng)根據(jù)MCU處理CMOS采集的路面信息的結(jié)果,通過脈寬調(diào)制模塊(PWM)控制舵機(jī)轉(zhuǎn)向,進(jìn)而實(shí)現(xiàn)智能車的路徑自動識別或引導(dǎo)線識別功能,按照設(shè)定的路線進(jìn)行自動循跡和轉(zhuǎn)彎控制。通過硬件二值化或者軟件的局部自適應(yīng)閾值二值化,對采集的路面信息圖像進(jìn)行分割,數(shù)據(jù)計算處理,提取出路面中心位置,且計算出對于路面中心位置的偏離程度,確保了智能車路徑識別傳感信號的準(zhǔn)確、穩(wěn)定與快速。隨著乘用車自動化、智能化程度的加深,該技術(shù)有很大應(yīng)用空間。
路徑識別 智能車 CMOS
智能車輛是室外輪式移動機(jī)器人在交通領(lǐng)域的重要應(yīng)用,它從根本上改變了傳統(tǒng)的車輛控制方式,可大大提高交通系統(tǒng)的效率和安全性。在普通家庭轎車消費(fèi)中,智能車的研發(fā)也是很有價值的,如霧天時能有效提高安全性。路徑識別方式大致有兩種:一是反射式紅外傳感器識別,此方法具有較高的可靠性與穩(wěn)定性,但是光電傳感器存在著檢測距離近的問題,降低了對環(huán)境的適應(yīng)能力;二是攝像頭路徑識別,攝像頭價格便宜,前瞻距離遠(yuǎn),能盡早地感知前方路徑信息進(jìn)行預(yù)判斷,再現(xiàn)路徑的真實(shí)信息,所以有很好的應(yīng)用前景。本研究采用的是攝像頭路徑識別。
攝像頭的工作原理是:[1]按一定的分辨率,以隔行掃描的方式采集圖像上的點(diǎn),當(dāng)掃描到某點(diǎn)時,就通過圖像傳感芯片將該點(diǎn)處圖像的灰度轉(zhuǎn)換成與灰度一一對應(yīng)的電壓值,然后將此電壓值通過視頻信號端輸出,如圖1所示。
圖1 視頻信號簡圖Fig.1 Diagram of video signal
奇偶場識別信號用于識別當(dāng)前場周期是奇場或者偶場。場同步信號是頻率為50,Hz的方波,場同步信號的上升沿標(biāo)志著一場信號的起始。行同步信號也是一個方波,同時包含有場消隱信號和行同步信號。行同步信號的上升沿標(biāo)志著一個行周期的開始或者消隱周期的同步。有了行同步信號(HS)、場同步信號(VS)、奇偶場識別信號(ODEV)作為S12的同步輸入信號,控制A/D采樣進(jìn)程,便可進(jìn)行視頻信號的采集。[2]
在硬件連接中,攝像頭視頻信號端接LM1881的視頻信號輸入端,同時也接入S12的一個AD接口器口(選用PAD0)。LM1881的行同步信號端(引腳1)接入S12的一個外部中斷IRQ口。AV視頻信號解碼芯片LM1881的引腳圖和信號輸出[3]如圖2所示。
圖2 LM1881芯片引腳和信號輸出圖Fig.2 Out diagram of LM1881 Pin and signal
通過將LM1881的同步信號引入到單片機(jī)的中斷口IRQ與PORTH0,同時使用單片機(jī)的16位模數(shù)遞減計數(shù)器(MDC),進(jìn)行場同步、行同步的延時,以確保單片機(jī)所接收的視頻信號的準(zhǔn)確性。
根據(jù)處理器進(jìn)行AD采樣[4]與轉(zhuǎn)換的時間要求,這里使用24,MHz的總線速度,這樣每采集一個點(diǎn)的時間大約是2,μs,每行的掃描時間是64,μs,去掉行消隱與行同步時間12,μs,每行有效信息時間為52,μs。從數(shù)據(jù)可靠性與穩(wěn)定性的角度考慮,選擇每行采集24個點(diǎn),每場采集170行,但在實(shí)際上每場采取每10行采集一次的策略,就能夠滿足系統(tǒng)精度的要求。這樣,CMOS每場的數(shù)據(jù)變換成一個17行24列的二維數(shù)組。
如圖3所示,未經(jīng)處理的采集數(shù)據(jù)不清晰,且有噪音和孤立點(diǎn)。
圖3 CMOS采集直線部分的原始數(shù)據(jù)Fig.3 Raw data collected by CMOS
電路中預(yù)設(shè)了硬件二值化(見圖4),考慮到攝像頭在比較惡劣的環(huán)境下能夠應(yīng)用自如,使用了局部自適應(yīng)閾值二值化[5]方案來增強(qiáng)模糊道路的清晰度。
此過程的處理框圖如圖5所示。
圖4 局部自適應(yīng)閾值二值化處理方框圖Fig.4 Binaryzation treatment of local adaptive threshold value
方框中:
式中:μ為局部平均值,2σ為每個3×3相鄰像素的方差;2ν為每個相鄰像素的平均估算方差。
二值化后的部分?jǐn)?shù)據(jù)見圖5。二值化后,比較清晰地表達(dá)了路面信息。
圖5 二值化后的數(shù)據(jù)Fig.5 Date after binaryzation
3.1 尋找邊界
采取以數(shù)組左下角的第1行和第1列的交點(diǎn)作為坐標(biāo)原點(diǎn)。從最下一行開始檢測,設(shè)置1個計數(shù)器,每檢測1行,計數(shù)器加1。每行均從左向右檢測。
3.2 中心線位置
利用左右邊界計數(shù)的列數(shù),求平均值,則得到黑線中心線。根據(jù)中心線我們可以判別道路的形狀,可以根據(jù)路型來調(diào)節(jié)舵機(jī)敏感度和偏轉(zhuǎn)值。
在一幀圖像中,用首行的黑線中心值減去中間行的黑線中間值得到斜率slop1,用中間行的黑線中心值減去最末行的黑線中心值得到斜率slop2,再將斜率slop1和斜率slop2相加得到該幀圖像前后兩半圖像的斜率和值slop_add3。如圖6所示:
圖6 中心線識別示意圖Fig.6 Diagram of central line identification
①S型:若一幀圖像中的前后半塊圖像的斜率符號相反,則說明前方是S形。
②直線:若非S道,則繼續(xù)判斷,如果前后斜率和值slop_add 很小,則說明前方為直道。
③大彎道:若非S型或直線的情況下,如果slop2很小且前后斜率和slop_add的值很大則為大彎道。
3.3 轉(zhuǎn)向策略
若判別為直線,則根據(jù)中心行的數(shù)據(jù)與小車中心線的偏差來控制舵機(jī)的偏轉(zhuǎn)量;若為S型,則根據(jù)距離小車位置的最遠(yuǎn)處的黑線位置偏差來控制舵機(jī)的偏轉(zhuǎn)量;若為大彎道,則根據(jù)最近行的數(shù)據(jù)和中心線的偏差來控制舵機(jī)的偏轉(zhuǎn)量。
使用Codewarrior開發(fā)環(huán)境,通過匯編與C語言相結(jié)合實(shí)現(xiàn)。[6]開發(fā)環(huán)境如圖7所示。
4.1 系統(tǒng)軟件執(zhí)行過程
給單片機(jī)上電,系統(tǒng)開始,單片機(jī)進(jìn)行初始化,然后根據(jù)環(huán)境光自動設(shè)置閾值,采用外部中斷,開始對路徑進(jìn)行數(shù)據(jù)采集,對數(shù)據(jù)進(jìn)行處理,處理結(jié)束則對轉(zhuǎn)向舵機(jī)進(jìn)行控制和利用PID控制方法對智能車驅(qū)動電機(jī)控制,進(jìn)而控制前行速度。
圖7 軟件開發(fā)環(huán)境Fig.7 Software development environment
圖8 視頻采集流程圖Fig.8 Process of video collcetion
在調(diào)試中,使用了自制的賽道,白色地板,黑色賽道,根據(jù)需要設(shè)計了各種路面類型。試驗(yàn)結(jié)果為智能車能夠按照所設(shè)定的路線進(jìn)行自動循跡。
通過采用電壓比較電路方式減少了單片機(jī)要處理的數(shù)據(jù)量,提高了MCU的響應(yīng)時間。通過使用局部自適應(yīng)二值化處理方式來處理結(jié)果,提高了精度。即使在比較復(fù)雜和干擾較多的情況下也取到了很好的效果。在未來的研發(fā)過程中將進(jìn)一步優(yōu)化程序和硬件設(shè)計,并應(yīng)用到乘用車開發(fā)中?!?/p>
[1] 俞斯樂. 電視原理[M]. 6版,北京:國防工業(yè)出版社,2005:110-150.
[2] 王威. HCS12微控制器原理及應(yīng)用[M]. 北京:北京航空航天大學(xué)出版社,2007.
[3] LM1881,LM1881-X Video Sync Separator [Z]. 2003.
[4] Freescale Semiconductor S12ATD_10B8C Block User Guide V02. 12[Z]. 2005.
[5] 張雅蘭. 圖像的二值化處理[J]. 廣西工學(xué)院學(xué)報,2002,13(1):32-34.
[6] 飛思卡爾HC08/HCS12 系列微控制器開發(fā)環(huán)境-Codewarrior 使用指南[Z]. 2005.
Study and Realization of Algorithm of Path Recognition and Turn System for SmartCar
TANG Baolong
(FAW Toyota Research & Development Co.,Ltd.,Tianjin 300462,China)
The smartcar design,including path recognition and turn system is based on results processed from road information by MCU to control PWM to change the direction of steering engine and realize linear path recognition.By binaryzation of hardware or local adaptive threshold,effective image segmentation and data processing,black line on the contest lane was extracted,and the position difference between the car and the black line was calculated to distinguish different shapes of the lane. Then we analyze and deal with the information to control the steering angle.With the development of intelligent car,in the future,smartcar will have great space for development.
path recognition;Smartcar;CMOS
U471.15
A
1006-8945(2016)08-0069-03
2016-08-02