陳建輝,劉湘安
基于K60單片機(jī)智能小車設(shè)計(jì)與實(shí)踐
陳建輝1,劉湘安*2
(1.電信科學(xué)技術(shù)第四研究所有限公司,陜西 西安 710061;2.長(zhǎng)安大學(xué) 汽車學(xué)院,陜西 西安 710064)
為更好地參加全國(guó)大學(xué)生智能汽車競(jìng)賽,文章提出了基于K60的智能小車設(shè)計(jì),設(shè)計(jì)了以MK60DN512ZVLQ10作為核心控制器的硬件電路系統(tǒng)。軟件系統(tǒng)通過(guò)處理單目攝像頭所拍攝的圖像,得到小車的規(guī)劃路徑曲線;再通過(guò)單點(diǎn)預(yù)瞄最優(yōu)曲率模型得到較優(yōu)轉(zhuǎn)向角,用比例積分微分(PID)算法控制小車的轉(zhuǎn)向,實(shí)現(xiàn)了小車的循跡功能。采用了障礙物膨脹法,有效避免了碰撞的發(fā)生。試驗(yàn)結(jié)果表明,所設(shè)計(jì)的智能小車能夠在賽道上直線行駛、轉(zhuǎn)彎、過(guò)十字路口等,具有基本的行駛功能,滿足了設(shè)計(jì)目標(biāo)要求。
智能小車;K60單片機(jī);PID算法;循跡功能
智能小車,也稱輪式機(jī)器人,因其構(gòu)造簡(jiǎn)單、工作效率高以及控制相對(duì)方便,成為了移動(dòng)智能機(jī)器人研究領(lǐng)域的重要分支[1]。本文設(shè)計(jì)的智能小車能通過(guò)自身所搭載的黑白CMOS單目攝像頭來(lái)識(shí)別道路信息,并在道路自主駕駛,完成一定行駛功能。研究智能小車對(duì)研究智能駕駛有一定的參考借鑒作用。
本文設(shè)計(jì)了基于K60的智能小車,該小車能夠通過(guò)CMOS攝像頭來(lái)識(shí)別道路圖像信息;單片機(jī)通過(guò)發(fā)送控制指令給電機(jī)驅(qū)動(dòng)程序和舵機(jī)驅(qū)動(dòng)程序,從而可以控制小車的速度和轉(zhuǎn)向,進(jìn)而可以使小車能夠循跡,避障。
系統(tǒng)總體設(shè)計(jì)如圖1所示,由電源模塊、直流電機(jī)模塊、舵機(jī)轉(zhuǎn)向模塊、攝像頭模塊、主控芯片模塊和車架模塊等部分組成。選用電容量為2 000 mAh、額定電壓 7.2 V 的鎳氫電池。單目攝像頭探測(cè)信息豐富,觀測(cè)距離遠(yuǎn)且成本低,因此,采用單目攝像頭作為環(huán)境感知傳感器。用脈沖寬度調(diào)制(Pulse Width Modulation, PWM)控制驅(qū)動(dòng)電機(jī),實(shí)現(xiàn)電機(jī)的調(diào)速變矩。單片機(jī)選擇MK60 DN512ZVLQ10單片機(jī)。車體選擇單電機(jī)后驅(qū)車模,采用S-D5數(shù)字轉(zhuǎn)向舵機(jī)。
圖1 系統(tǒng)總體設(shè)計(jì)框圖
硬件電路由以下幾個(gè)部分組成:主控芯片、攝像頭圖像采集電路、舵機(jī)驅(qū)動(dòng)電路、液晶與按鍵電路、電機(jī)驅(qū)動(dòng)電路、供電電路等。
主控芯片是MK60N512ZVLQ10,屬于K60系列的微控制單元(Micro Control Unit, MCU),內(nèi)核芯片是Cortex-M4,供電電源為3.3 V,晶振頻率為50 MHz,系統(tǒng)頻率為100 MHz,數(shù)據(jù)處理能力能夠滿足使用要求和有足夠多的外設(shè)接口。
小型電機(jī)驅(qū)動(dòng)電路一般采用集成芯片驅(qū)動(dòng)方式,本系統(tǒng)電機(jī)驅(qū)動(dòng)電路以IRLR7843為核心板,將IRLR7843 MOS管組成H橋驅(qū)動(dòng)電路,如圖2所示。
圖2 電機(jī)驅(qū)動(dòng)電路板
本系統(tǒng)采用像素為762×564的黑白CMOS單目攝像頭,采用LM1881芯片對(duì)視頻信號(hào)進(jìn)行分離,分離出同步信號(hào),單片機(jī)根據(jù)同步信號(hào)進(jìn)行圖像采集的控制。根據(jù)圖像采集原理設(shè)計(jì)的驅(qū)動(dòng)電路如圖3所示。
圖3 攝像頭驅(qū)動(dòng)電路圖
本系統(tǒng)采用S-D5數(shù)字舵機(jī),供電電壓為4.5~6 V,扭力為49~58.8 N.m,動(dòng)作速度44.352~50.688 r/min,頻率范圍為50~300 Hz。設(shè)計(jì)供電電壓為5 V,因此,可以采用穩(wěn)壓芯片LM7805-5V對(duì)其供電。
需要外置按鍵對(duì)小車的轉(zhuǎn)向角大小、車速等等進(jìn)行調(diào)節(jié),所需按鍵分別是選擇鍵、增加鍵、減小鍵和保存鍵,同時(shí)需要一個(gè)顯示屏來(lái)顯示數(shù)字。本系統(tǒng)采用的是nokia 5110液晶顯示器(Liquid Crystal Display, LCD)。
電源供電電路需要有多個(gè)輸出電壓,以滿足各個(gè)模塊的電壓需求。電壓需求圖如圖4所示。系統(tǒng)電源輸入應(yīng)能提供或轉(zhuǎn)換為5 V、12 V和3.3 V電壓。由于電源電壓為7.2 V,本系統(tǒng)采用LM7805- 5 V和LM1117-3.3 V穩(wěn)壓芯片對(duì)電源電壓進(jìn)行轉(zhuǎn)換,采用直流轉(zhuǎn)直流電源(Direct Current-Direct Current, DC-DC)可調(diào)升壓模塊把7.2 V升到12 V。12 V電壓用來(lái)給圖像采集模塊提供電源;5 V電壓供給舵機(jī)和電機(jī)驅(qū)動(dòng)電路;3.3 V電壓供給單片機(jī)和顯示與按鍵電路。
圖4 電源供電示意圖
所設(shè)計(jì)的智能小車系統(tǒng)采用單目黑白CMOS攝像頭進(jìn)行道路環(huán)境識(shí)別,環(huán)境識(shí)別功能包括圖像采集,賽道識(shí)別及校正處理等;采用魯棒性強(qiáng)且使用廣泛的比例積分微分(Proportion Integra- tion Differentiation, PID)算法,對(duì)小車的轉(zhuǎn)向和速度進(jìn)行控制,以實(shí)現(xiàn)賽道路徑跟隨和避障功能。
3.1.1圖像采集
本文中攝像頭安裝在車模的前中心部分,所采用的攝像頭為 PC7030 CMOS 數(shù)字?jǐn)z像頭,其具有性能穩(wěn)定,技術(shù)成熟,電路可靠簡(jiǎn)單(周邊配套元器件成本低)和性價(jià)比高等優(yōu)點(diǎn)。
攝像頭所采集到的圖像為灰度圖像,分辨率設(shè)置為120×188。采用固定閥值對(duì)圖像進(jìn)行二值化處理[2],即對(duì)采集的圖像中像素點(diǎn)的屬性值與所設(shè)定的閾值進(jìn)行比較,小于閾值的點(diǎn)為黑點(diǎn),大于閾值的點(diǎn)為白點(diǎn),將灰度圖像轉(zhuǎn)換成二值化圖像,如圖5所示。
圖5 彎道二值化圖像
3.1.2賽道識(shí)別及校正
需要識(shí)別的賽道信息主要包括賽道兩側(cè)邊線位置、賽道中心線位置和賽道類型判別。
單片機(jī)將二值化圖像黑白跳變點(diǎn)進(jìn)行識(shí)別和保存,將黑白跳變點(diǎn)連成一線,即為賽道兩側(cè)邊線位置。在對(duì)兩邊線取中線,即為賽道中心線位置。由于賽道畸變及其他干擾等,圖像效果會(huì)下降,因此,必須進(jìn)行一些必要的處理,以便正確識(shí)別賽道中心及特殊賽道類型(十字交叉路口,S轉(zhuǎn)彎等)。常用的校正處理方法有:賽道寬度具有一定的范圍,賽道具有連續(xù)性;即通過(guò)設(shè)定約束條件,可以有效濾除干擾,如圖6所示。
圖6 彎道處理后的圖像
3.2.1電機(jī)速度控制
本系統(tǒng)的電機(jī)速度控制采用PID控制中的增量式控制策略,根據(jù)單位時(shí)間電機(jī)編碼器反饋的電機(jī)速度信息,構(gòu)建了基于增量式PID的速度閉環(huán)控制器[3],如圖7所示。
圖7 電機(jī)速度閉環(huán)控制框圖
增量式PID控制算法公式為
式中,Δ()為速度控制增量;p為比例放大系數(shù);i為積分系數(shù);d為微分系數(shù);()為控制器的輸入(即為設(shè)定速度與實(shí)際速度之差)。
3.2.2舵機(jī)轉(zhuǎn)向控制
本系統(tǒng)的舵機(jī)轉(zhuǎn)向控制采用PID控制中位置式控制策略[4]??刂扑惴ü綖?/p>
式中,()為PID控制器的輸出;()為控制器的輸入,即設(shè)定舵機(jī)轉(zhuǎn)角與舵機(jī)實(shí)際轉(zhuǎn)角之差;p為比例放大系數(shù);i為積分系數(shù);d為微分系數(shù)。
3.2.3循跡
關(guān)于智能小車對(duì)賽道中心線的跟蹤控制,本系統(tǒng)采用單點(diǎn)預(yù)瞄最優(yōu)曲率模型[5-7],通過(guò)模型可以估計(jì)出最優(yōu)的方向盤轉(zhuǎn)角。本系統(tǒng)采用障礙物膨脹法,通過(guò)增大跟蹤軌跡與障礙物的間隔,防止碰撞發(fā)生。
如圖8所示,試驗(yàn)測(cè)試結(jié)果表明,智能小車能夠?qū)崿F(xiàn)在賽道上直線行駛、轉(zhuǎn)彎、過(guò)十字路口等基本行駛功能;但是由于單目攝像頭受光照干擾大,當(dāng)光照變化時(shí),小車不能穩(wěn)定地在賽道上行駛,會(huì)駛出賽道。因此,今后將在軟硬件方面對(duì)智能小車進(jìn)行全面改進(jìn),以提高智能小車對(duì)環(huán)境的適應(yīng)性。
圖8 智能小車在不同實(shí)驗(yàn)場(chǎng)景下的測(cè)試效果
本文通過(guò)對(duì)基于K60單片機(jī)智能小車的設(shè)計(jì),實(shí)現(xiàn)了智能小車自主循跡及避障等功能,滿足比賽的設(shè)計(jì)目標(biāo)要求。本設(shè)計(jì)有以下創(chuàng)新點(diǎn):一是通過(guò)基于單點(diǎn)預(yù)瞄最優(yōu)曲率模型,得到較優(yōu)的轉(zhuǎn)向角,能夠使小車平穩(wěn)地跟蹤路徑;二是通過(guò)增量式PID算法對(duì)電機(jī)轉(zhuǎn)速進(jìn)行控制,可以有效降低電機(jī)發(fā)生故障時(shí)的影響,提高電機(jī)轉(zhuǎn)速控制效果。
[1] 張傳正,紀(jì)旭彬,張丙哲.基于模糊控制的智能小車軌跡跟蹤控制[J].汽車實(shí)用技術(shù),2019,44(23):38-40.
[2] 劉超,蔡文華,陸玲.圖像閾值法分割綜述[J].電腦知識(shí)與技術(shù),2015,11(1):140-142,145.
[3] 岳俊峰,李秀梅.基于機(jī)器視覺(jué)的智能小車自動(dòng)循跡及避障系統(tǒng)[J].杭州師范大學(xué)學(xué)報(bào)(自然科學(xué)版), 2020,19(2):200-207.
[4] 曾喆昭,陳澤宇.論P(yáng)ID與自耦PID控制理論方法[J].控制理論與應(yīng)用,2020,37(12):2654-2662.
[5] 丁能根,冉曉鳳,張宏兵.基于單點(diǎn)預(yù)瞄最優(yōu)曲率模型的單軌車輛駕駛員模型[J].機(jī)械工程學(xué)報(bào),2008,44 (11):220-223,228.
[6] 郭孔輝.駕駛員—汽車閉環(huán)系統(tǒng)操縱運(yùn)動(dòng)的預(yù)瞄最優(yōu)曲率模型[J].汽車工程,1984(3):1-16.
[7] 沈峘,凌銳,李舜酩.基于預(yù)瞄最優(yōu)曲率模型的大曲率轉(zhuǎn)向控制方法[J].中國(guó)機(jī)械工程,2012,23(17):2111- 2116.
Design and practice of smart vehicle based on K60 microcontroller
CHEN Jianhui1, LIU Xiang'an*2
( 1.Fourth Research Institute of Telecommunication Technology Company Limited, Xi'an 710061, China;2.School of Automobile, Chang'an University, Xi'an 710064, China )
In order to participate the national college students smart car competition with good score, this paper presents the design of an intelligent small car based on K60. A hardware circuit system with MK60DN512ZVLQ10 as the core controller is designed. The software system obtains the car planning path curve by processing the photos taken by the monocular camera. The better steering angle is obtained by the single-point preaiming optimal curvature model and the proportion integration differentiation(PID) algorithm controls the steering of the car to realize the tracking function. The obstacle expansion method is adopted to effectively avoid the collision. The test results show that the designed intelligent car can drive in a straight line, turn, cross the intersection and so on.It has basic driving functions and meets the design objectives and requirements.
Smart vehicle;K60 single chip machine;PID algorithm;Tracking function
TP23
A
1671-7988(2023)10-47-04
10.16638/j.cnki.1671-7988.2023.010.009
陳建輝 (1981—),男,碩士,工程師,研究方向?yàn)檐嚶穮f(xié)同和車聯(lián)網(wǎng)。
劉湘安(1999—),男,碩士研究生,研究方向?yàn)檐嚶穮f(xié)同和智能駕駛,E-mail:2357055607@qq.com。