柯其延,闕大順,楊錦濤,盧偉
(武漢理工大學 信息工程學院,武漢 430070)
近年來無人駕駛汽車一直受到眾人的矚目,被認為是車聯(lián)網(wǎng)的終極目標。同時隨著汽車電子行業(yè)的逐漸升溫與技術的日漸發(fā)展,越來越多的汽車廠商開始延伸智能車用載具平臺,發(fā)展新一代自動駕駛技術。目前谷歌,奧迪都致力于研發(fā)無人駕駛技術,牛津等學府機構(gòu)也努力研發(fā)新的技術實現(xiàn)方向[1]。
本文設計的一種智能車循跡系統(tǒng)是智能圖像識別技術與單片微處理技術的相結(jié)合的綜合運用,實現(xiàn)了賽道識別,自動循跡的功能,使智能車平穩(wěn)快速地在賽道上行駛。該模型車為未來的無人駕駛汽車的發(fā)展提供了一種新的思路,有一定的參考意義。
智能車系統(tǒng)主要由電源管理,電機驅(qū)動,路徑識別,速度檢測四大模塊組成。硬件上,以MK60DN512ZVLQ10為核心控制芯片,兩片BTS7970構(gòu)成的橋式電路作為電機驅(qū)動電路,TSL1401線性CCD作為賽道檢測元件[2]321。軟件上,采用邊緣檢測算法,輔以增量式PID算法控制電機轉(zhuǎn)速和轉(zhuǎn)向本文主要針路徑識別模塊與速度PID控制模塊進行研究和設計。系統(tǒng)總體結(jié)構(gòu)框圖如圖1所示。
圖1 系統(tǒng)總體結(jié)構(gòu)框圖
Kinetis是基于ARMCortexTM-M4具有超強可拓展性的低功耗、混合信號微處理器。多達32通道的DMA可用于外設和存儲器數(shù)據(jù)傳輸并減少CPU干預。K60微控制器系列具有以下性能:IEEE 1588以太網(wǎng),全速和高速USB 2.0 On-The-Go帶設備充電探測,硬件加密和防竄改探測能力。豐富的模擬、通信、定時和控制外設從100 LQFP封裝256 KB閃存開始可擴展到256 MAPBGA 1MB閃存。大閃存的K60系列器件還可提供可選的單精度浮點單元、NAND閃存控制器和DRAM控制器。
本文系統(tǒng)核心控制模塊采用飛思卡爾公司的MK60DN512ZVLQ10芯片組成的最小系統(tǒng)及相應接口模塊組成。其最小系統(tǒng)設計簡單,采用50 MHz和32.768 kHz的外部晶振,復位電路設計成按鍵復位和上電自動復位的方式。
電源部分是智能車系統(tǒng)的重要部分,電源穩(wěn)定供電,智能車系統(tǒng)才能穩(wěn)定工作。使用電壓7.2 V,2000 mAh的鎳鎘電池供電,而系統(tǒng)需要穩(wěn)定的5 V與3.3V電壓,故必須穩(wěn)定的降壓輸出5 V與3.3 V。使用TI公司的降壓芯片LM2940和LM1117-3.3 V,在輸入為6.5 V~8.2 V之間時,LM2940芯片能穩(wěn)定輸出5 V電壓給電機,舵機,TSL1401模塊供電,LM1117-3.3 V芯片能穩(wěn)定輸出3.3 V電壓給MK60DN512ZVLQ核心控制器供電。穩(wěn)壓電源電路圖如圖2所示。
圖2 穩(wěn)壓電源電路圖
電機驅(qū)動電路由H橋式電路組成。為使K60能夠驅(qū)動電機工作,且能使電機正反轉(zhuǎn),通過兩片英飛凌公司的BTS7970構(gòu)成橋式電路。BTS7970的最大驅(qū)動電流為68 A,驅(qū)動能力極強。通過K60輸入的兩路PWM的占空比不同,控制輸出電流的大小與方向,從而控制電機轉(zhuǎn)速與方向。電機驅(qū)動電路如圖3所示。
圖3 BTS7970橋式驅(qū)動電路
賽道信息的采集由TSL1401線性CCD模塊完成,該模塊以TAOS公司生產(chǎn)的TSL1401R芯片為核心,集成了高達128像素的線性陣列傳感器以及專門用于線性CCD的透鏡。該模塊可以看到一維的圖像,并可以通過移動模塊來獲得二維圖像。
圖4 TSL1401引腳圖
TSL1401線性CCD的輸出信號和環(huán)境光線密切相關,AO引腳輸出電壓值在白天自然光條件比晚上光源下高出很多,白熾燈光下比日光燈下輸出電壓高,同時正對光線比背光線輸出電壓高。因此,同一參數(shù)(鏡頭光圈、曝光時間)難以適應不同的環(huán)境,在光線較弱環(huán)境下的參數(shù)在強光下會出現(xiàn)輸出飽和,在較強光線下調(diào)節(jié)好的參數(shù)在弱光下輸出電壓過低,甚至處于截止狀態(tài)。在智能車應用中,白天自然光環(huán)境和晚上燈光環(huán)境、正對光和背光、不同的比賽場地之間都不能采用相同的曝光參數(shù)。與輸出電壓密切相關的參數(shù)是曝光量,曝光量取決于CCD模塊所采用的鏡頭光圈大小和程序所控制的曝光時間。智能車為適應各種運行環(huán)境,必須實時感知環(huán)境,并根據(jù)環(huán)境閉環(huán)調(diào)節(jié)曝光量,使得在不同環(huán)境中曝光量都處于合理的范圍,這樣才能保證在不同環(huán)境中CCD輸出電壓在合理范圍,以利于算法提取黑線信息。鏡頭相關參數(shù)一旦選定在智能車運行難以改變,曝光時間比較容易通過程序控制,故通過軟件調(diào)整曝光時間。要增大輸出電壓,就是放大輸出信號,可以采用運放來放大AO(IN)輸出信號。為了能保證輸出電壓在合理范圍(不飽和、不截止、能分辨賽道黑線),需要根據(jù)選定的鏡頭確定運放放大倍數(shù)。
圖5 LMV358運放電路
圖5所示的運放放大倍數(shù) A =1+R1/R2,也就是對TSL1401的輸入信號AO(IN)進行A倍放大。
速度采集的方法有很多種,本文采用的是歐姆龍旋轉(zhuǎn)式增量型編碼器采集電機速度。編碼器能產(chǎn)生A、B相脈沖,根據(jù)A、B相脈沖的數(shù)量與相位差,確定電機的轉(zhuǎn)速與方向。編碼器安裝圖如圖6所示。
圖6 歐姆龍編碼器安裝圖
本系統(tǒng)軟件采用IAR軟件與藍牙為調(diào)試工具,C語言進行程序設計,算法基本原理見框圖。在方向控制中,采用線性CCD對賽道信息進行采集,經(jīng)過相關圖像處理之后,計算得方向偏差。以此作為方向控制的輸入量,通過舵機轉(zhuǎn)向角不同控制車模轉(zhuǎn)向消除車模距離道路中心的偏差[3]。程序設計流程圖如圖7所示。
圖7 TSL1401賽道信息采集流程圖
提取賽道邊沿的原則是在保證準確性的前提下提高運算速度,并具有較好的環(huán)境適應能力。本設計使用的是邊緣檢測算法。由于白板的灰度值很大,黑線的灰度值很小,所以會檢測到一個下降沿的跳變,記錄下跳變沿發(fā)生時的列號,就能確定出黑線的位置,即采用閾值法提取邊緣[4]。只需設定好跳變的閾值,就可以比較準確的檢測出黑色引導線。采用由近到遠的搜索方式,搜索圖像的有效邊沿和無效邊沿,找到左右邊線,以黑線的位置為基準建立搜索窗口,然后分別在窗口內(nèi)繼續(xù)尋找雙邊線[5]。
在過程控制中,PID控制器,一直是應用最為廣泛的一種自動控制器;PID控制也一直是眾多控制方法中應用最為普遍的控制算法,PID算法的計算過程與輸出值(OUT)有著直接函數(shù)關系。本系統(tǒng)采用增量式PID控制算法。增量式PID是指數(shù)字控制器的輸出只是控制量的增量。當執(zhí)行機構(gòu)需要的控制量是增量,而不是位置量的絕對數(shù)值時,可以使用增量式PID控制算法進行控制[6]。
(1)與(2)相減整理后可得增量式PID控制算法公式為:
由(1-3)可看出,只要控制系統(tǒng)采用恒定的采樣周期T,一旦確定A、B、C,只要使用前后三次測量的偏差值,就可以由(1-3)求出控制量。增量式PID控制算法計算量小,應用在智能車系統(tǒng),調(diào)試方便。速度控制PID算法流程圖如圖8所示。
圖8 PID速度控制流程圖
實驗主要包括智能車循跡過程中,上位機采集賽道圖像與數(shù)據(jù)分析。本文系統(tǒng)在賽道上測試了45度,60度和135度彎以及10m長直賽道,智能車能以2 m/s的速度穩(wěn)定行駛在賽道上。本文設計的智能車如圖9所示。
圖9 智能車實物圖
TSL1401線性CCD每次只能掃描一行賽道信號,而根據(jù)一行賽道信息是無法使智能車正常行駛的。故每次處理5~6行采集的賽道信息,用K60處理后再控制舵機是否轉(zhuǎn)動和電機轉(zhuǎn)速。
在日光燈條件和自然光條件下測試結(jié)果相差不大,測試結(jié)果如表1所示。
表1 賽道測試結(jié)果
本文介紹了基于TSL1401線性CCD循跡的智能車系統(tǒng)設計。該系統(tǒng)以freescale 32位單片機MK60DN512ZVLQ10為核心控制芯片,通過曝光可調(diào)邊緣檢測算法提取賽道黑線,采用增量式PID控制算法,通過旋轉(zhuǎn)式速度傳感器采集智能車速度對小車形成速度閉環(huán)控制[2]323。該智能車系統(tǒng)為無人駕駛汽車提供了一種思路。
[1] 狄港生. 無人駕駛迷失[J].汽車雜志,2013,34(2):44.
[2] 李興澤,王福平.基于CCD攝像頭的小區(qū)自動循跡停車系統(tǒng)[J].計算機應用,2013,33(S1):321-323.
[3] 艾超.基于方向小波變換的圖像邊緣檢測算子研究[D].西安:西安電子科技大學,2013.
[4] 邢尚英.基于小波變換的圖像邊緣檢測[D].成都:成都理工大學,2013.
[5] 李萱.小波神經(jīng)網(wǎng)絡特征提取技術在圖像邊緣檢測中的應用[D].成都:電子科技大學,2013.
[6] 黃智偉.全國大學生電子設計競賽訓練教程(修訂版)[M].北京:電子工業(yè)出版社,2010.