黃玉水 黃 輝 周美娟 周明建
(南昌大學信息工程學院1,江西 南昌 330031;海軍92957部隊2,浙江 舟山 316000)
隨著科技的迅速發(fā)展,飛思卡爾智能車競賽的影響力也得到了擴大。智能車作為一門新興的綜合技術,在汽車電子領域有著廣闊的應用前景。它是一種交叉和融合了多門學科的高新技術綜合體,其設計具體涉及電磁技術、計算機、控制、機械及車輛工程等多個領域[1-2]。其中磁導航技術是智能車的關鍵技術之一。磁場是一個三維矢量,在空間具有一定的對稱性和方向性,且不易受外界信號的干擾,具有廣闊的研究和應用前景。本文以此為背景,設計了一種電磁導航式智能車,重點介紹了一套完整可靠的軟硬件設計方案,以實現(xiàn)智能車高速尋跡的功能。
根據(jù)設計要求和功能劃分,智能車主要分為八個模塊,分別為主控制器模塊、電源模塊、電磁檢測模塊、速度檢測模塊、起始線檢測模塊、舵機轉(zhuǎn)向控制、電機驅(qū)動模塊和輔助調(diào)試模塊。其中主控制器模塊采用飛思卡爾半導體公司提供的MC9S12XS128單片機,主頻40 MHz,F(xiàn)lash ROM 128 kB,具備 SPI、SCI、IIC 等常用接口。根據(jù)需要引出適量的管腳,可以完全滿足智能車設計和控制的需求[3-4]。智能車系統(tǒng)框圖如圖1所示。
圖1 系統(tǒng)框圖Fig.1 Block diagram of the system
根據(jù)智能車設計要求,電磁檢測電路采集路徑信息,經(jīng)過LC諧振電路選頻,濾除其他不同頻率的干擾信號;采用雙運算放大器和倍壓檢波處理,得到可以輸入單片機的電壓信號。根據(jù)先前設定的算法獲得賽道路況信息,準確地判斷小車車體與賽道相對的位置,結合光電編碼器獲得的速度反饋信息,由單片機產(chǎn)生PWM脈沖信號,快速地完成轉(zhuǎn)向控制和速度控制,最終實現(xiàn)小車按照預定的路線準確快速平穩(wěn)地行進。
在電源模塊設計中,由于受到電源轉(zhuǎn)換效率、相互干擾和降低噪聲等多方面因素的影響,需考慮電源模塊由若干相互獨立的穩(wěn)壓電路組成。根據(jù)各模塊電壓的需求,合理設計了不同的穩(wěn)壓電路。其中小車系統(tǒng)電源采用比賽組織提供的7.2 V鎳鎘蓄電池。該電池可以為直流電機驅(qū)動模塊直接供電。分別采用LM2940和LM2941低壓差穩(wěn)壓芯片提供5 V和6 V電壓,供單片機、光電編碼器和舵機等正常工作。采用線性穩(wěn)壓集成芯片LM1117提供3.3 V電壓,供功耗小的輔助調(diào)試模塊工作。設計的電源管理模塊為智能車的運行提供了穩(wěn)定可靠的動力來源。各模塊正常工作所需電壓如表1所示。
表1 各模塊正常工作電壓Tab.1 Normal operating voltage of each module
檢測單元包括電磁檢測、速度檢測和起始線檢測三個部分,其中電磁檢測為傳感器檢測單元的核心元件,它的性能將直接決定智能車的好壞。賽道中心通設一條引導線,導線通有100 mA、20 kHz的交變電流。本文選取了電路實現(xiàn)簡單、成本低、體積小、靈敏度高、抗干擾能力強的感應線圈,它主要包括感應、選頻、放大和檢波四個部分。電磁感應線圈選用10 mH的工頻電感,開放的磁芯便于匯集磁感線,可以很好地感應交變電流產(chǎn)生的交變磁場。選頻的目的主要是濾除其他不同頻率的干擾信號,采用6.8 nF的電容組成LC串并聯(lián)諧振電路,能夠?qū)崿F(xiàn)輸出頻率為20 kHz的交流電壓信號。由于電感線圈感應的電動勢信號微弱,只有十幾個毫伏,所以需進行必要的放大電路處理。放大部分使用運放TL082進行兩級信號放大,處理速度快,具有很好的實時性,可以有效得到放大100倍以上的電壓增益,便于幅值檢波。為了獲得更大的動態(tài)范圍,檢波電路采用靈敏度更好的肖特基二極管SS14,獲得的直流信號正比于交流線圈感應電壓值,便于單片機進行A/D轉(zhuǎn)換和信號采集。
為了達到良好的檢測效果,設計中選用了三個傳感器一字型排列的方案,其中傳感器距離地面高度5 cm。電路實現(xiàn)簡單、控制方便,能夠快速檢測到智能車的偏轉(zhuǎn)方向和智能車體與路徑引導線的相對位置。單個線圈的電磁檢測電路原理圖如圖2所示。
圖2 電磁檢測電路原理圖Fig.2 Principle of the electromagnetic detection circuit
為了實現(xiàn)智能車能夠沿著既定賽道自主尋跡的功能,需要比較精確地控制車速和方向。速度傳感器可反饋小車本身的運行速度,形成一個速度閉環(huán)控制,使智能車在急轉(zhuǎn)彎時不會由于速度過快而沖出跑道。本電磁車采用歐姆龍E6A2-CWZ3光電編碼器作為速度傳感器[5]。該傳感器具有安裝簡單、輸出信號比較規(guī)整、測速精度比較高等特點,可以有效提高速度反饋的精度。
根據(jù)設計要求,起始線的賽道下方放置有永磁體(作為檢測的標志),便于電磁車自主識別,自主完成賽道。在起始線檢測部分,選用干簧管完成起始線的檢測。干簧管相當于磁場傳感器,當檢測到超過其閾值的磁場時,常開觸點開關將會閉合。本文設計了五個干簧管并聯(lián)組成“線或”關系[5-6]。通過干簧管的通斷來準確判斷起始線的位置,實現(xiàn)小車的起始線起跑和終點準確停車的功能。
根據(jù)智能車設計要求,舵機和電機為智能車的執(zhí)行機構,分別實現(xiàn)對方向和速度的準確控制[7]。舵機部分選用組委會提供的S-D5型舵機,輸出力矩驅(qū)動方向控制。由于單片機產(chǎn)生的PWM脈沖信號無法驅(qū)動智能車競賽提供的直流電機,因此需要設計獨立的驅(qū)動電路來實現(xiàn)電機驅(qū)動,以獲得足夠的功率。
方案一:采用MOS管驅(qū)動。采用四個MOS管搭建H橋,導通阻抗小,驅(qū)動能力強,最大可驅(qū)動117 A電流。但電路圖較復雜,可以采用MOS常用驅(qū)動芯片MC33886控制H橋通斷,還需要12 V柵極開啟電壓。MC33886內(nèi)阻較大、發(fā)熱量高。
方案二:采用BTS7960驅(qū)動。采用兩個BTS7960搭建H橋,導通阻抗稍大,驅(qū)動能力弱于MOS管,最大可驅(qū)動43 A電流,電路設計簡單,具有參數(shù)可調(diào)和自我保護的優(yōu)點。
對比分析上述兩種方案,由于驅(qū)動芯片BTS7970響應速度快、設計簡單、價格低廉,完全符合本速度控制系統(tǒng)的要求。所以選用了BTS7970驅(qū)動電路,構成一個完整的全橋驅(qū)動。通過單片機使能信號使芯片開始工作,在主芯片給定的PWM作用下控制電機轉(zhuǎn)動,實現(xiàn)電機的正反轉(zhuǎn),性能良好。同時,為了防止驅(qū)動芯片的反向電流燒壞單片機,在控制端和單片機中串聯(lián)二極管,起到隔離的作用。
電機驅(qū)動電路原理圖如圖3所示。
圖3 電機驅(qū)動電路原理圖Fig.3 Principle of the drive circuit of motor
為了實現(xiàn)智能車的最優(yōu)路線行駛,必須對智能車的舵機轉(zhuǎn)向進行合理的控制。智能車控制是一種非線性和模型不確定的系統(tǒng),與傳統(tǒng)的PID控制器相比,系統(tǒng)采用了簡單而有效的模糊控制器[7-9],實現(xiàn)對舵機的方向控制。
3.1.1 變量確定及模糊化
智能車轉(zhuǎn)向模糊控制采用兩輸入單輸出的二維模糊控制器,輸入變量E、EC分別為小車偏離中心引導線的橫向偏差和偏差的變化率,其輸出量U為控制舵機的轉(zhuǎn)向角。根據(jù)控制要求以及實際測得的E的范圍,確定 E 和 EC 的基本論域為[-20,20]、[-9,9],偏轉(zhuǎn)角U的基本論域為[-45°,45°]。兩個輸入變量E 和 EC 定義七級量化等級,均為[-3,-2,-1,0,1,2,3],U 定義為[-4,-3,-2,-1,0,1,2,3,4]。由此可得,E的量化因子Ke=3/20,EC的量化因子Kec=1/3,U的量化因子Ku=4/45。為了實現(xiàn)智能車方向的控制精度和靈敏性,三個語言變量論域均取七個模糊子集,即[NB,NM,NS,ZO,PS,PM,PB]。
系統(tǒng)中各變量均采用線性三角函數(shù),三個變量的隸屬度函數(shù)如圖4所示,其中E和EC的隸屬度函數(shù)完全一樣。
圖4 E、U隸屬度函數(shù)Fig.4 Membership function of E and U
3.1.2 模糊規(guī)則表
根據(jù)智能車的運行特性和駕駛經(jīng)驗,當車體和跑道中心線偏差和偏差變化率很大時,需要反方向控制舵機轉(zhuǎn)向;當車體與中心線偏差不大時,可以不調(diào)舵機或微調(diào);當偏差較大而偏差變化率反方向很大時,說明偏差正漸漸減小,此時可以不調(diào)舵機。針對以上控制經(jīng)驗,兩個輸入變量E和EC各有七個模糊語言值,可生成49條模糊規(guī)則。建立的模糊控制規(guī)則表如表2所示。
表2 模糊控制規(guī)則表Tab.2 Fuzzy control rules
3.1.3 模糊推理及反模糊化
控制器經(jīng)模糊化得到各變量的隸屬度,再經(jīng)模糊推理和反模糊化得出控制量的輸出值,達到控制的作用。采用了一種常用的推理方法(MAX-MIN法)進行模糊推理。當相同后件的規(guī)則強度不同時,模糊輸出取最大值。核心控制單元S12單片機規(guī)定各個前件之間只進行模糊和運算,當幾個規(guī)則的邏輯后件影響到同一個模糊輸出時,它們之間就隱含模糊或運算,在這里即采用了MAX-MIN法進行模糊推理。反模糊化就是將模糊輸出量轉(zhuǎn)變?yōu)榫_的數(shù)字值的過程。
為了達到精確的控制,結合S12解模糊指令,系統(tǒng)采用以下加權平均法來描述:
式中:U為控制器輸出的精準控制量;μ為輸出對該子集的隸屬度;Ui為各輸出模糊子集對應模糊單點集的值。
3.1.4 仿真試驗
舵機轉(zhuǎn)向與PWM脈沖波成正比例的關系,因此可以簡化舵機轉(zhuǎn)向角的傳遞函數(shù)為二階函數(shù)。結合小車動力學模型,其數(shù)學模型可以描述為:
為了研究模糊控制性能的優(yōu)劣,利用Matlab/Simulink模塊對智能車的轉(zhuǎn)向控制系統(tǒng)進行了仿真。采用不同控制算法得到的仿真曲線如圖5所示。仿真中位置跟蹤信號取正弦信號0.5sin(10t),模擬路徑S彎道信息。通過波形對比分析可知,加入模糊控制的舵機控制系統(tǒng)實現(xiàn)了高精度的跟蹤,控制效果明顯,具有良好的魯棒性和適應性,實現(xiàn)了智能車偏轉(zhuǎn)方向的精準控制。
圖5 仿真曲線Fig.5 Simulation curves
在電機控制算法中,我們采取的是增量式PID和Bang-Bang相結合的控制算法,結合光電編碼器的速度反饋閉環(huán)系統(tǒng),實現(xiàn)對電機的速度控制。直流電機速度控制框圖如圖6所示。
當偏差較小時,采用穩(wěn)定的增量式PID控制;當偏差較大時,采用快速的Bang-Bang控制。這樣即可通過PID控制實現(xiàn)調(diào)節(jié)的穩(wěn)定性。通過Bang-Bang控制實現(xiàn)調(diào)節(jié)的快速性,從而使小車能夠在進入直道后快速加速,進入彎道后快速減速,并在加減速后保證速度的穩(wěn)定性[10]。
圖6 速度控制框圖Fig.6 Block diagram of speed control
本文提出了一種電磁導航式智能車的設計方案,以實現(xiàn)智能車高速尋跡的功能。從各個功能模塊出發(fā),重點介紹了智能車的硬件設計方案;在軟件方面,針對轉(zhuǎn)向控制特性,提出了基于模糊控制的舵機轉(zhuǎn)向控制算法。通過仿真驗證了該轉(zhuǎn)向控制算法的有效性。實際測試結果表明,與傳統(tǒng)控制策略對比,該轉(zhuǎn)向模糊控制算法能夠高精度地跟蹤路徑信號,提取出車模與賽道的相對位置,改善了在復雜彎道下的尋跡能力,平均速度可以達到2.6 m/s,整體上提升了智能車的控制性能。
[1]胡海峰.智能汽車發(fā)展研究[J].計算機世界,2004,10(6):20-23.
[2]馬仕伯,馬旭,卓晴.基于磁場檢測的尋線小車傳感器布局研究[J].電子產(chǎn)品世界,2009,10(12):41 -44.
[3]擺玉龍,楊麗君,董存輝.基于MC9S128的電磁導航智能車的設計與實現(xiàn)[J].測控技術,2011,30(11):20 -23.
[4]王元哲,扈宏杰.磁導航智能車系統(tǒng)的設計與實現(xiàn)[J].自動化儀表,2011,32(11):5 -8.
[5]劉源,張文斌,劉雪揚,等.電磁導航智能車檢測和控制系統(tǒng)的研究[J].傳感器與微系統(tǒng),2012,31(4):63 -66.
[6]閆光,姜文材,常琪.北京理工大學電磁組技術報告[R].2011.
[7]卓晴,黃開勝,邵貝貝.學做智能車—挑戰(zhàn)“飛思卡爾”杯[M].北京:北京航空航天大學出版社,2007.
[8]蘭華,李曉鵬,丁勇竣.智能車轉(zhuǎn)向系統(tǒng)模糊控制器設計研究[J].傳感器與微系統(tǒng),2010,29(5):34 -36,40.
[9]林煥新,胡躍明,陳安.基于自適應模糊控制的智能車控制系統(tǒng)設計[J].計算機測量與控制,2011,19(1):78 -80.
[10]蔡公華,洪乃剛.一種智能車尋跡算法的研究[J].電子科技,2009,22(6):10-13.