馮玉如
摘要:由于信息時代的進步,各種科技技術(shù)得到了蓬勃發(fā)展,智能車研究成為現(xiàn)代社會的熱點,智能車利用傳感器和算法來快速了解車輛行駛的道路環(huán)境。本文設(shè)計的智能小車利用CCD傳感器來采集道路信息,并以恩智浦K60單片機為控制芯片,研究其路徑識別算法,從而控制電機的速度及舵機的轉(zhuǎn)向,實現(xiàn)自動循跡的功能。同時,對智能車的研究現(xiàn)狀以及未來應(yīng)用與發(fā)展前景做一個全方面的介紹。
關(guān)鍵詞:CCD傳感器;智能車;路徑識別;識別算法
中圖分類號:TP212.9 文獻標識碼:A 文章編號:1007-9416(2018)08-0087-02
智能汽車領(lǐng)域在世界范圍內(nèi)迅速發(fā)展,公共交通、工業(yè)和軍事領(lǐng)域的多樣性日益增加。智能車自動化系統(tǒng)提供了在安全和操作效率方面顯著增強的潛力[1]。智能車輛系統(tǒng)使用傳感器和智能算法來快速了解車輛周圍的環(huán)境,或者協(xié)助駕駛員進行車輛操作或汽車自動化行駛[2]。在智能車發(fā)展的背景下,設(shè)計一種基于線性CCD傳感器為識別裝置,并以恩智浦K60單片機為控制器的路徑識別系統(tǒng)。線性CCD傳感器作為路徑識別裝置,將采集到的圖像發(fā)送給單片機,單片機根據(jù)閾值進行二值化處理,二值化后的數(shù)據(jù)再經(jīng)過數(shù)值濾波,獲得完整的二值化圖像。根據(jù)當前的行駛軌跡和編碼器采集反饋的速度,利用PID控制方法動態(tài)調(diào)節(jié)舵機轉(zhuǎn)角以及控制直流電機的轉(zhuǎn)速,調(diào)整行駛方向與行車速度,實現(xiàn)任意路徑識別與智能行駛。
1 系統(tǒng)硬件設(shè)計
系統(tǒng)硬件主要由單片機、CCD傳感器、SD-5舵機、TFT液晶屏、編碼器和電機驅(qū)動六個部分組成,如圖1所示為系統(tǒng)硬件框架圖。
主控制器采用恩智浦K60單片機,此單片機為32位微控制器,是整個系統(tǒng)的“大腦”。
CCD傳感器采用TSL1401L芯片,可以采集道路當前信息發(fā)送給單片機,供單片機處理道路信息。舵機選用SD-5舵機,其靈敏度較高,在接收到單片機的控制信號后能快速調(diào)整車輛轉(zhuǎn)角。編碼器用以采集電機轉(zhuǎn)速,轉(zhuǎn)速信息編碼器將轉(zhuǎn)化為脈沖發(fā)送給單片機,而K60單片機具有正交解碼功能,可以將采集到計數(shù)脈沖通過正交解碼轉(zhuǎn)化成速度信息。系統(tǒng)采用一塊TFT液晶屏,能實時顯示CCD傳感器采集到的圖像信息、舵機角度、賽道信息和編碼器反饋回來的速度。電機驅(qū)動由2個半橋驅(qū)動芯片BTS7960B組合而成為一個全橋驅(qū)動器,同時增加總線驅(qū)動芯片74LVC245,該芯片能提高驅(qū)動能力,并能隔離BTN7940B芯片和主控K60芯片,防止芯片燒壞[3]。
1.1 單片機主控芯片
系統(tǒng)核心控制單元采用恩智浦K60單片機,此單片機為32位微控制器,線性CCD采集到的道路信息,返回到單片機,單片機會輸出一路PWM波,用以控制舵機的轉(zhuǎn)向。在車速控制中,單片機會輸出四路PWM波到電機驅(qū)動上,電機驅(qū)動再加以控制電機正反轉(zhuǎn)和相應(yīng)轉(zhuǎn)速,以此來控制車速。
1.2 CCD傳感器模塊
整個控制系統(tǒng)最核心的部分就是如何清晰地看見道路的具體情況,即系統(tǒng)的“眼睛”,系統(tǒng)設(shè)計上選用CCD傳感器。CCD傳感器相比于傳統(tǒng)的光電管,具有分辨率高、功耗低、前瞻性好等優(yōu)點,從而可以獲取更多的道路信息。
1.3 電源模塊
使用標準車模7.2V電池供電,路徑識別的CCD傳感器和編碼器需要5V電源,采用LM2940降壓芯片將7.2V的電池電壓降壓到5V,供CCD傳感器使用,而單片機系統(tǒng)需要3.3V電源,將經(jīng)過降壓后的5V電源通過AMS1117芯片降壓3.3V電源供單片機使用,舵機使用6V供電,通過調(diào)節(jié)滑動變阻器將7.2V降壓到6V供舵機使用,而直流電機可以使用7.2V電源直接供電。
2 系統(tǒng)算法設(shè)計
2.1 主程序流程圖
主程序流程圖如2所示,將主控板的電源開關(guān)打開,單片機開始運行,初始化程序完成后,液晶屏上會顯示當前賽道圖像和行駛速度,根據(jù)當前環(huán)境光照,輸入相關(guān)參數(shù)。緊接著CCD傳感器開始工作,采集賽道信息,供單片機處理。CCD傳感器不斷掃描賽道,根據(jù)特征點判斷出賽道類型,是直線還是彎道等等,以便控制舵機轉(zhuǎn)向和電機的速度。當CCD傳感器掃描到停車線時,單片機輸出信號使舵機回正方向,以及電機反轉(zhuǎn)使行駛速度減下來,速度為零時停車。
2.2 路徑識別算法
如圖3所示為整個路徑識別算法的過程。根據(jù)CCD傳感器采集回來的像素點,計算出像素點的最大值與最小值,根據(jù)最大值與最小值計算出動態(tài)閾值。由動態(tài)閾值的大小,對圖像進行二值化處理,二值化處理后的數(shù)據(jù)經(jīng)過數(shù)據(jù)濾波,排除干擾點。
2.3 彎道處理
路徑識別算法的重要性不言而喻,而彎道處理對于車輛的穩(wěn)定性也是非常重要的。在處理彎道時,需要考慮三個參數(shù)并加以設(shè)定,分別是切彎時路徑選擇、入彎時角度控制、過彎時速度大小[4]。在本設(shè)計中,切彎時采取沿中線過彎,與過內(nèi)道相比,增加車輛調(diào)整時間,提高容錯率。與過外道相比,能縮短車輛過彎的時間。選擇中線過彎,能夠保證車輛運動狀態(tài)穩(wěn)定。入彎角度將根據(jù)CCD傳感器兩側(cè)跳變沿的偏移值算出舵機的轉(zhuǎn)向角度,供舵機轉(zhuǎn)向。過彎速度采取入彎減速,出彎加速的策略。
在處理彎道中,切彎時路徑選擇、入彎時角度控制、過彎時速度大小這三個參數(shù)的選擇是尤為重要的,不可僅僅對單一參數(shù)進行調(diào)整。同時,彎道的處理也受傳感器的安裝位置、舵機的靈敏度和電機的驅(qū)動力影響。
2.4 PID控制
由于小車跑過的路線不需要考慮,在設(shè)計過程中將舵機的PID控制簡化為PD控制,速度閉環(huán)控制采用了增量式PID控制。在設(shè)計中,因為舍棄了I控制,就不需要再確定舵機和電機積分參數(shù),只需通過試湊法來確定比例和微分參數(shù)[5]。根據(jù)試湊法,觀察各參數(shù)對舵機和電機的大致影響,最終確定舵機PD控制中比例系數(shù)Kp為8,微分常數(shù)Td為0.02,速度閉環(huán)增量式PID控制中比例系數(shù)Kp為15,積分常數(shù)Td為1,微分常數(shù)Td為4。
3 結(jié)果驗證
如圖4所示,當CCD傳感器掃描到直線特征時,單片機處理采集到的數(shù)據(jù),控制舵機方向微調(diào),使小車始終維持在中線上,電機加速使其快速通過直線區(qū)域。當掃描到彎道特征使,如圖5所示,按照入彎時減速,以得到足夠的調(diào)整時間,獲得正確的轉(zhuǎn)向角度;在彎道內(nèi)適當提速,并保持角度不變,為出彎時的加速節(jié)約時間;出彎時,先準確判斷標志,然后加速。當CCD掃描到左右黑線偏差五個像素點時,即是S形彎道,根據(jù)S形彎道算法的處理,此時小車將S形彎道當作直線,加速駛過。在十字的時候,出現(xiàn)全白的信號,在傳感器穩(wěn)定的前提下,能出現(xiàn)全白的也只會在十字的時候出現(xiàn),此時按照入十字的速度平穩(wěn)行駛。當CCD測得具有駝峰形狀的賽道信息,即測得停車線信息,單片機輸出信號使舵機回正方向,以及電機反轉(zhuǎn)使行駛速度減下來,速度為零時停車。
4 結(jié)語
基于對機械布局、硬件設(shè)計和軟件算法的研究,實驗結(jié)果表明依據(jù)CCD傳感器采集回來的路徑信息,單片機在路徑算法的幫助下,能規(guī)劃好行駛路徑,很好地分辨出直道、彎道、S彎、十字路口等路況。
參考文獻
[1]Bishop R. A survey of intelligent vehicle applications worldwide[C]. Intelligent Vehicles Symposium, 2000. IV 2000. Proceedings of the IEEE. IEEE, 2000:25-30.
[2]尹念東.智能車輛的研究及前景[J].上海汽車,2002,2(4):40-42.
[3]李旭東,廖中浩,孟嬌.基于CMOS攝像頭的智能車控制系統(tǒng)設(shè)計及實現(xiàn)[J].吉林大學學報(信息科學版),2013,31(04):414-418.
[4]高正中,趙麗娜,李世光,白星振,宋森森.基于攝像頭的智能車控制系統(tǒng)設(shè)計[J].自動化與儀表,2015,30(06):1-4.
[5]陳孟元,孫書誠,王虎.基于圖像識別的尋跡智能車設(shè)計[J].重慶理工大學學報(自然科學),2013,27(03):80-84.