西南科技大學(xué)信息工程學(xué)院 曾偉欽 徐東升 冉志勇 陳 瀟
“飛思卡爾”杯全國大學(xué)生智能汽車競賽以最短時間跑完賽道為目標(biāo),盡可能地使車模達(dá)到“穩(wěn)、快、準(zhǔn)”的要求,這不僅要求車模有靈敏、準(zhǔn)確的傳感器系統(tǒng),同時智能車系統(tǒng)的整體設(shè)計也是至關(guān)重要。基于光電導(dǎo)航的自主循跡智能車系統(tǒng),通過各個模塊的相互配合,使智能車“自適應(yīng)”地沿著既定的賽道行駛。該系統(tǒng)設(shè)計合理,控制準(zhǔn)確,穩(wěn)定性高,經(jīng)過不斷調(diào)試和優(yōu)化,該設(shè)計方案能夠達(dá)到智能車系統(tǒng)設(shè)計要求。
系統(tǒng)整體硬件設(shè)計如圖1所示,包括:MCU模塊、傳感器模塊、電源模塊、車速檢測模塊、舵機模塊、電機驅(qū)動模塊、輔助調(diào)試等模塊。
微控制器選用飛思卡爾半導(dǎo)體公司Kinetis產(chǎn)品中的K60P100-SYS,其具有器件充電檢測、硬件加密和篡改加密和篡改檢測功能。器件帶有豐富的模擬、通信、定時和控制外圍設(shè)備,高閃存密度K60系列器件包括可選單精度浮點單元、NAND閃存控制器和DRAM控制器。該單片機豐富的資源能夠滿足系統(tǒng)的要求,且其體積小、功耗低。
光電傳感器檢測路面信息的原理是由發(fā)射管發(fā)射一定波長的光線,經(jīng)地面反射到接收管。由于在黑色和白色上反射系數(shù)不同,在黑色上大部分光線被吸收,而白色上可以反射回大部分光線,所以接收到的反射光強是不一樣,進而導(dǎo)致接收管的特性曲線發(fā)生變化程度不同,而從外部觀測可以近似認(rèn)為接收管兩端輸出電阻不同,進而經(jīng)分壓后的電壓就不一樣,就可以將黑白路面區(qū)分開來。
2.2.1 紅外傳感器
采用反射式紅外光電管,是路徑檢測常用的方法。這種方法利用了路面不同材料和顏色對光線的吸收和反射量不同,這樣通過檢測反射回來的光線就可以得到當(dāng)前位置的材料或者顏色。這種方法電路簡單,信號處理速度快,但感知前方賽道距離有限,受外界紅外頻段光線干擾,精度比較低。
2.2.2 激光的原理及特性
激光的英文名為LASER(Light Amplification by Stimulated Emission of Radiation),意思是“受激輻射的光放大”,即激光的產(chǎn)生源自于受激輻射。激光主要有四大特性:高亮度、高方向性、高單色性和高相干性?;诩す獾倪@些特性,本智能車系統(tǒng)采用激光作為傳感器,并確定“八字”排列方式,大大提高智能車感知前方賽道的距離。
圖1 系統(tǒng)整體硬件設(shè)計圖
圖2 電源系統(tǒng)圖
圖4 舵機、直流電機PlD控制原理圖
圖3 系統(tǒng)程序流程圖
在智能車設(shè)計中,電源關(guān)系到整個電路設(shè)計的穩(wěn)定性和可靠性,是電路設(shè)計中非常關(guān)鍵的一個環(huán)節(jié)。整個系統(tǒng)由7.2V Ni-cd蓄電池經(jīng)過穩(wěn)壓分別給各個模塊供電,電源系統(tǒng)如圖2所示。
圖5 lAR在線仿真界面圖
在智能汽車設(shè)計中,測速傳感器的設(shè)計主要有兩種方案:霍爾傳感器和光電式脈沖編碼器。本系統(tǒng)采用光電編碼器進行車速檢測,將采集到的脈沖個數(shù)送到PID控制器進行閉環(huán)反饋控制。
舵機主要由幾個部分構(gòu)成:外殼、減速齒輪組、電機、電位器、控制電路,簡單的工作原理是控制電路接受信號源的控制信號,并驅(qū)動電機轉(zhuǎn)動。齒輪組將電機的速度成大倍數(shù)縮放,并將電機的輸出轉(zhuǎn)矩放大響應(yīng)倍數(shù),然后輸出。電位器和齒輪組的末級一起轉(zhuǎn)動,測量舵機軸轉(zhuǎn)動角度,電路板檢測并根據(jù)電位器判斷舵機轉(zhuǎn)動角度,然后控制舵機轉(zhuǎn)動到目標(biāo)角度或保持在目標(biāo)角度。在本系統(tǒng)中采用模擬舵機S3010作為搖頭舵機,數(shù)字舵機S-D5作為轉(zhuǎn)向舵機。
在智能車競賽中,智能車的速度較快,通常達(dá)到2m/s以上,因此對電機驅(qū)動電流的要求較高,電機驅(qū)動電路必不可少。直流驅(qū)動電機控制電路主要用來控制直流電動機的轉(zhuǎn)動方向和轉(zhuǎn)動速度。PWM信號的占空比決定電機的轉(zhuǎn)速,故電機的調(diào)速可通過改變PWM信號的占空比實現(xiàn)。驅(qū)動電路既可以直接采用MC33886、BTS7960B電機驅(qū)動芯片,也可以采用大功率MOS管來自行設(shè)計電機驅(qū)動電路。我們選用了驅(qū)動芯片BTS7970B,其為高強度電流的半橋電機驅(qū)動芯片,我們利用兩片BTS7970B構(gòu)成一個完整的全橋驅(qū)動,可以很好實現(xiàn)電機的正轉(zhuǎn)、反轉(zhuǎn)、剎車制動。
圖6 上位機界面圖
輔助調(diào)試模塊使得調(diào)試更為方便,提高了調(diào)試的效率。本系統(tǒng)的輔助調(diào)試模塊包括:鍵盤、OLED顯示屏、串口、無線通信IRF2401、上位機等。其中鍵盤用于一些參數(shù)的設(shè)置和選擇,OLED顯示屏用于參數(shù)的顯示,串口與上位機進行串口通信用于發(fā)送和顯示一些參數(shù),IRF2401進行無線通信。
智能車的機械性能對于其行駛具有非常重要的影響,為使其直線行駛高速穩(wěn)定,入彎轉(zhuǎn)向靈活,結(jié)合現(xiàn)代汽車控制理論對智能車的運動特性進行分析,并據(jù)此對智能小車的機械結(jié)構(gòu)進行相應(yīng)的調(diào)整和參數(shù)優(yōu)化。
由于智能車在賽道上行駛追求高速和穩(wěn)定,重心高度的調(diào)整至關(guān)重要,重心越低車輛行駛越穩(wěn)定,尤其是在高速行駛時這點可以體現(xiàn)的非常明顯,所以我們盡量調(diào)整使車模的重心調(diào)低。
智能車的拐彎是舵機通過連桿帶動前輪轉(zhuǎn)動,實現(xiàn)轉(zhuǎn)彎。在理想情況下即智能車不發(fā)生側(cè)滑時,舵機的響應(yīng)速度越快智能車行駛的速度就越快。我們通過將舵機采用直立式安裝和加長舵機臂,以提高舵機的響應(yīng)速度。
安裝對于齒輪咬合效果好壞有至關(guān)重要的影響。首先最關(guān)鍵的是編碼器自身要固定牢固;其次要調(diào)整好兩個咬合齒輪間的距離:齒輪與齒輪間距離不能太近或太遠(yuǎn),否則會卡齒或滑齒;最后要保持幾個“同心與平行”:齒輪安裝要與軸同心,盡量做到電機軸、編碼器軸兩軸平行;安裝時應(yīng)使齒輪咬合流暢。
傳感器的安裝位置,關(guān)系到信息采集的準(zhǔn)確性等各方面因素。傳感器我們采用“搖頭”方案,使巡線更加準(zhǔn)確、快速,并盡可能加長傳感器感知前方賽道的距離和降低其重心。
汽車的前輪定位參數(shù)包括:前束(角)、外傾角、主銷后傾角、主銷內(nèi)傾角、推力角、軸距差、輪距差。適當(dāng)?shù)卣{(diào)整這些參數(shù)可以使汽車直線行駛穩(wěn)定,轉(zhuǎn)向輕便,轉(zhuǎn)向后能自動回正,并減少輪胎和轉(zhuǎn)向系零件的磨損。
智能車系統(tǒng)的軟件編寫是基于K60P100-SYS單片機,主要用到其中的FTM模塊,PIT模塊、LPTMR模塊、I/O模塊以及UART模塊等模塊化設(shè)計。FTM模塊用于產(chǎn)生PWM信號用來控制舵機轉(zhuǎn)向和電機轉(zhuǎn)速;LPTMR模塊用于車模速度檢測;I/O模塊主要用于激光管掃描、信息采集及鍵盤輸入等;UART模塊主要用在無線、串口調(diào)試模塊。
系統(tǒng)啟動后,單片機進入主函數(shù)進行初始化設(shè)置,包括端口初始化、PWM初始化、定時器/中斷初始化、OLED顯示屏初始化、串口初始化、無線初始化等;并檢測按鍵進行參數(shù)的設(shè)置和選擇。進入死循環(huán)后,經(jīng)過一個控制周期(4ms)后計算出車模偏離賽道中心的程度進行PID運算,控制舵機的轉(zhuǎn)向和直流電機的轉(zhuǎn)速。中斷函數(shù)中(定時500us),主要進行激光的分時點亮和數(shù)據(jù)采集。當(dāng)要觀察某些變量實時變化情況時,可以用OLED顯示屏顯示或者通過串口、無線與上位機進行通信,系統(tǒng)程序流程圖如圖3所示。
因為我們采用多個激光對應(yīng)一個接收管的方案,所以激光采用了分時點亮的方式避免相互干擾問題,分時點亮的時間間隔為500us。每個激光照射在黑線時賦予不同的權(quán)值,數(shù)據(jù)采集后進行簡單濾波,綜合左右兩邊激光的權(quán)值即可得出車模偏離賽道中心的程度。
方向控制與電機控制采用典型的PID閉環(huán)控制方法。得到車模偏離賽道中心的程度后,通過進行PID控制器運算,控制舵機PWM信號的占空比,改變舵機的轉(zhuǎn)角。通過車速檢測模塊采集的脈沖個數(shù)進行閉環(huán)反饋控制,控制直流電機PWM信號的占空比,改變直流電機的轉(zhuǎn)速。經(jīng)過舵機和直流電機調(diào)整的配合,從而使車模沿著既定的軌道行駛。舵機、直流電機PID控制原理圖如圖4所示。
Embedded Workbench for ARM 6.10是IAR Systems公司為ARM微處理器開發(fā)的一個集成開發(fā)環(huán)境,比較其他的ARM開發(fā)環(huán)境,IAR具有入門容易、使用方便和代碼緊湊等特點。IAR中包含一個全軟件的模擬程序(simulator),用戶不需要任何硬件支持就可以模擬各種ARM內(nèi)核、外部設(shè)備甚至中斷的軟件運行環(huán)境,從中可以了解和評估IAR的功能和使用方法。
用IAR開發(fā)環(huán)境進行BDM在線調(diào)試可以在線調(diào)試車的參數(shù),例如測試采集到的傳感器的狀態(tài)時可以很方便的進行更改和調(diào)試,IAR在線仿真界面如圖5所示。
BDM在線調(diào)試存在不足和不便之處,想動態(tài)地跟蹤車的各種參數(shù)并實時地傳輸給電腦,我們采用的是用無線發(fā)送數(shù)據(jù)給電腦,由上位機進行處理。這很方便我們進行實時地觀看跟蹤。在進行控制速度的調(diào)節(jié)中,上位機發(fā)揮出了很大的優(yōu)勢,我們對采集到的波形進行分析,不斷調(diào)整參數(shù),最終達(dá)到了一個較滿意的狀態(tài)。圖6為進行直流電機PID調(diào)速測試圖。
該系統(tǒng)設(shè)計合理,既有穩(wěn)定的電路系統(tǒng)和硬件平臺,軟件設(shè)計采用模塊化設(shè)計思想,提高了程序可靠性和穩(wěn)定性,同時通過調(diào)整車模機械結(jié)構(gòu)使其配合系統(tǒng)硬件和軟件,使車模達(dá)到最優(yōu)狀態(tài)。測試結(jié)果表明,該系統(tǒng)控制準(zhǔn)確,“自適應(yīng)”能力強,具有人性化的人機交互界面。該系統(tǒng)可以用于智能控制方面,完成一些自動化操作要求。
[1]畢曉輝,于春梅,安永泉,等.自動控制理論[M].北京:北京工業(yè)出版社,2006.
[2]康華光,陳大欽,張林.電子技術(shù)基礎(chǔ)[M].北京:高等教育出版社,2006.
[3]王兆安,黃俊.電力電子技術(shù)[M].北京:機械工業(yè)出版社,2011.
[4]湯蘊璆,羅應(yīng)力,梁艷萍.電機學(xué)[M].北京:機械工業(yè)出版社,2008(5).
[5]孫同景,陳桂友.Freescale 9S12十六位單片機原理及嵌入式開發(fā)技術(shù)[M].北京:機械工業(yè)出版社,2008(5).
[6]雷貞勇,謝光驥.飛思卡爾智能車舵機和測速的控制設(shè)計與實現(xiàn)[J].電子設(shè)計工程,2010(2),18(2),
[7]李慧,李秀歌,婁利峰.飛思卡爾智能車設(shè)計方法討論[J].長春工程學(xué)院學(xué)報(自然科學(xué)版),2012,13(1).
[8]楊春旭,林若波,彭燕標(biāo).基于PWM控制的直流電機調(diào)速系統(tǒng)的設(shè)計[J].齊齊哈爾大學(xué)學(xué)報,2011(5).
[9]金奇,鄧志杰.PID控制原理及參數(shù)整定方法[J].重慶工學(xué)院學(xué)報(自然科學(xué)),2008(5).
[10]黃偉峰,吳麗宏.基于單片機的直流電機調(diào)速系統(tǒng)設(shè)計與仿真[J].機電工程技術(shù),2010,39(12).
[11]飛思卡爾微控制器產(chǎn)品[EB/OL].http://www.freescale.com.cn/products/Kinetis_ARM_Cortex-M4_Microcontrollers.asp
[12]第七屆全國大學(xué)生“飛思卡爾”杯智能汽車競賽競速比賽規(guī)則與賽場紀(jì)律[EB/OL].http://www.smartcar.au.tsinghua.edu.cn/web/rules.html.