朱敖天
摘要:設(shè)計(jì)了一種根據(jù)電磁信號(hào)引導(dǎo)自主循跡行駛的智能車。介紹了根據(jù)電磁感應(yīng)原理檢測(cè)道路中的變化磁場(chǎng)強(qiáng)度,實(shí)現(xiàn)小車對(duì)位置的確定和對(duì)路徑的識(shí)別。該設(shè)計(jì)選取32位微控制器MK60為控制芯片,設(shè)計(jì)優(yōu)化硬件電路,尤其保證電磁采集放大電路的可靠穩(wěn)定,單片機(jī)根據(jù)傳感器采集的電磁信號(hào)通過(guò)A/D轉(zhuǎn)換進(jìn)行分析處理,同時(shí)對(duì)所得數(shù)據(jù)進(jìn)行軟件濾波,再利用歸一化算法實(shí)現(xiàn)對(duì)小車精確的控制,提高了該智能車對(duì)不同復(fù)雜程度的賽道的適應(yīng)性。
關(guān)鍵詞:自主循跡;電磁場(chǎng)導(dǎo)航;硬件電路;歸一化算法;軟件濾波
中圖分類號(hào):TP302 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2018)01-0240-02
Abstract: The design of an intelligent vehicle Based on the electromagnetic signal of self-tracking driving guide. According to the principle of electromagnetic induction, the change of the magnetic field intensity in the road is determined, and the location of the car and the recognition of the path are realized. This design selects 32-bit microcontroller MK60 as the control chip, the hardware circuit design optimization, especially to ensure reliable stable electromagnetic acquisition amplifier circuit, microprogrammed control unit analyzes the electromagnetic signals collected by the sensor through A/D transformation, and the software filter on the data, then using the normalization algorithm to achieve precise control of the car, to improve the adaptability of the smart car on the track with different levels of complexity.
Key words: self-tracking; electromagnetic navigation; hardware circuit; normalization algorithm; software filtering
1 引言
在如今的汽車行業(yè)中,電子技術(shù)的應(yīng)用程度已成為衡量汽車技術(shù)水平的重要標(biāo)志之一,這也促進(jìn)了自動(dòng)循跡智能車技術(shù)的不斷發(fā)展[1],智能車輛已經(jīng)廣泛應(yīng)用于多個(gè)領(lǐng)域,成為世界車輛工程領(lǐng)域研究的熱點(diǎn)和汽車工業(yè)增長(zhǎng)的新動(dòng)力,許多的發(fā)達(dá)國(guó)家都將其納入到各自重點(diǎn)發(fā)展的智能交通系統(tǒng)當(dāng)中[2]。
本文以全國(guó)智能車競(jìng)賽為背景。在智能車競(jìng)賽中,電磁組的智能車采用電磁場(chǎng)檢測(cè)方式識(shí)別道路中央的引導(dǎo)線,控制其行駛方向。相比于其他組別的導(dǎo)航方式,使用磁場(chǎng)信號(hào)具有很好的環(huán)境適應(yīng)性,在電磁屏蔽系統(tǒng)的保護(hù)下,電磁導(dǎo)航的智能車對(duì)外界環(huán)境的適應(yīng)能力遠(yuǎn)遠(yuǎn)強(qiáng)于光線類的導(dǎo)航車 [3]。因此對(duì)采集到的信號(hào)的處理成了小車提速的關(guān)鍵。本智能車設(shè)計(jì),通過(guò)硬件的優(yōu)化和軟件處理,歸一化算法實(shí)現(xiàn)智能車的運(yùn)動(dòng)軌跡精確控制。
2 電路設(shè)計(jì)
2.1 小車主控電路總體設(shè)計(jì)原理圖
系統(tǒng)整體結(jié)構(gòu)如圖1所示,智能車的硬件電路由單片機(jī)最小系統(tǒng),電源電路,編碼器速度檢測(cè)電路,電磁信號(hào)采集與放大檢波電路,電機(jī)驅(qū)動(dòng)電路和調(diào)試用的OLED與按鍵等人機(jī)交互電路組成。在設(shè)計(jì)時(shí)我們將大電流驅(qū)動(dòng)電路與小電流的主控及傳感器電路分開(kāi)制作腐蝕電路板,并用相應(yīng)的隔離芯片將其隔開(kāi),減輕兩者之間的互相干擾,并實(shí)現(xiàn)物理上和電氣上的隔離。因?yàn)殡姶沤M的信號(hào)為模擬電路,抗干擾能力較弱。所以將電磁信號(hào)放大等模擬電路與單片機(jī)最小系統(tǒng)電路之間盡量布置的相對(duì)較遠(yuǎn),地線采用單點(diǎn)接地,并用零歐電阻互相隔開(kāi),以實(shí)現(xiàn)較強(qiáng)的電磁兼容[4]。上述措施可以防止電磁干擾,顯著的提高電路的穩(wěn)定性。
2.2 電磁信號(hào)放大檢波電路
電磁傳感器能夠?qū)惖乐虚g通電導(dǎo)線產(chǎn)生的變化的磁場(chǎng)信號(hào)做出靈敏的檢測(cè),單片機(jī)通過(guò)對(duì)獲取的磁場(chǎng)信號(hào)處理,提取道路特征,從而控制智能車的轉(zhuǎn)向[5]。根據(jù)LC諧振的原理,選取10mH的電感和6.8nF電容作為L(zhǎng)C諧振電路,產(chǎn)生感應(yīng)電流,再通過(guò)濾波、放大和檢波,然后將電路處理的模擬信號(hào)送入單片機(jī)進(jìn)行相應(yīng)的處理,以判斷賽道當(dāng)前位置信息。如圖2所示。
3 控制算法設(shè)計(jì)
3.1 路徑識(shí)別算法方案分析及選定
智能車的路徑識(shí)別算法的設(shè)計(jì)是智能車軟件部分最為核心的模塊,智能車整體硬件設(shè)計(jì)和搭建會(huì)根據(jù)核心路徑算法的不同而進(jìn)行相應(yīng)的調(diào)整。軟硬件相互調(diào)整,以尋找最為合適的軟硬件方案。經(jīng)過(guò)分析,利用電感采集磁場(chǎng)信號(hào)一般有兩種不同的方法[6]:
1) 數(shù)字型尋線算法。使用多個(gè)水平放置的10mH工字電感,將整個(gè)賽道劃分為多個(gè)區(qū)域,獲得感應(yīng)電動(dòng)勢(shì)最大的電感所處的位置是最靠近賽道中間電磁導(dǎo)線,從而可以判斷智能車在賽道所處的位置。數(shù)字型尋線方式算法簡(jiǎn)單,代碼易于實(shí)現(xiàn)。缺點(diǎn)是采集的賽道信息是離散的點(diǎn),當(dāng)智能車處于高速運(yùn)行時(shí),賽道精度丟失,可能加大賽道信息處理的誤差,產(chǎn)生丟線等嚴(yán)重錯(cuò)誤;且要用到多個(gè)電感,會(huì)加重車頭重量,增大小車的轉(zhuǎn)動(dòng)慣量,造成小車在高速行駛時(shí)發(fā)生甩尾;此外當(dāng)“一”字排布的多個(gè)電感離得太近時(shí),相鄰電感會(huì)產(chǎn)生互感作用,影響磁場(chǎng)信號(hào)的正常采集。endprint
2) 模擬型尋線算法。使用數(shù)量很少的工字電感,電感在磁場(chǎng)中產(chǎn)生的感應(yīng)電動(dòng)勢(shì)的模擬量進(jìn)行處理,利用單片機(jī)MCU里的ADC功能可以完成小車的位置解算。該方法位置定位準(zhǔn)確,且使用了較少的電感傳感器,采集數(shù)據(jù)量較少。同時(shí)我們可以在軟件中處理位置對(duì)稱電感的不匹配電感量存在較小差距的問(wèn)題。
最終選擇了方案二,即模擬型尋線算法。我們選用了兩個(gè)水平電感和兩個(gè)八字的電感,分別執(zhí)行不同的磁場(chǎng)采集功能,采集更多方向的信息。兩個(gè)水平電感用于計(jì)算小車偏離中線的位置[7]。兩個(gè)八字電感對(duì)出入彎處磁場(chǎng)比較敏感,可以提前檢測(cè)出入彎道,改善小車出入彎姿態(tài),運(yùn)行更加平滑。
我們利用左右對(duì)稱電感的感應(yīng)電動(dòng)勢(shì)量差和比值來(lái)解算車體相對(duì)于導(dǎo)線偏離的距離。這種方法代碼簡(jiǎn)單易于實(shí)現(xiàn),且對(duì)單片機(jī)的運(yùn)算處理數(shù)據(jù)的負(fù)擔(dān)較小。但利用差和比處理偏差數(shù)據(jù),當(dāng)偏差過(guò)大時(shí),計(jì)算的偏差存在一定的誤差,但是經(jīng)過(guò)軟件進(jìn)行偏差的彌補(bǔ),基本滿足偏差的線性要求,所以選用此方案。
3.2 歸一化算法
3.2.1 歸一化原理公式
數(shù)據(jù)標(biāo)準(zhǔn)化(歸一化)處理是一種無(wú)量綱的處理手段,不同指標(biāo)往往具有不同的量綱和量綱單位,這樣的情況會(huì)影響到數(shù)據(jù)分析的結(jié)果,我們需要進(jìn)行數(shù)據(jù)歸一化處理,消除數(shù)據(jù)間的量綱影響。原始數(shù)據(jù)經(jīng)過(guò)數(shù)據(jù)標(biāo)準(zhǔn)化處理后,各指標(biāo)處于同一數(shù)量級(jí),適合進(jìn)行綜合對(duì)比處理[8]。
線性函數(shù)的轉(zhuǎn)換如下:
其中 max 為樣本數(shù)據(jù)的最大值,min 為樣本數(shù)據(jù)的最小值。x 為歸一化前的值,y 為歸一化后的值。 本文中使用到的為式 1 的歸一化方法。運(yùn)用此公式需要注意的問(wèn)題是:函數(shù)必須是線性的,最大值 max 與最小值 min 必須是在車子位于一側(cè)賽道的某處時(shí),一個(gè)電感正好位于賽道中間引導(dǎo)線的正上方取得的,即電感的擺放必須要盡可能對(duì)稱。
3.2.2 歸一化硬件設(shè)計(jì)方案
首先,為了獲得穩(wěn)定可靠的信號(hào)就必須有穩(wěn)定的車身結(jié)構(gòu),本文介紹的歸一化算法必須要在車身結(jié)構(gòu)對(duì)稱的情況下使用才能得到正確的效果。在小車的機(jī)械設(shè)計(jì)中還需要注意的是盡量降低車身重心。利用三角形支架來(lái)確保車身的穩(wěn)定性。以此來(lái)獲得穩(wěn)定的信號(hào)。
在穩(wěn)定的車身結(jié)構(gòu)下,我們可以得到可靠的信號(hào),我選用INA2128作為放大電路的芯片。
根據(jù)前面所說(shuō)的歸一化算法的原理,選用的芯片的放大特性必須為線性的。INA2128 的放大倍數(shù):G=1+50kΩ/RG,該芯片經(jīng)過(guò)激光矯正具有很高的精度和很小的溫度系數(shù)。
3.2.3 歸一化軟件算法
由于電流變化引起的信號(hào)變化是線性的,所以使用歸一化算法可以消除電流變化引起的干擾。在獲得了穩(wěn)定的信號(hào)之后使用歸一化算法,將大大提高智能車對(duì)賽道的適應(yīng)性。智能車通過(guò)賽前的歸一化可以獲得理想的數(shù)據(jù)。
當(dāng)電感垂直位于電磁線正上方時(shí),此時(shí)通過(guò)電感的磁通量最大,電感的電壓也是最大值。我們將式 1 的公式簡(jiǎn)化為 y=x/max;其中 x為單片機(jī)獲得的實(shí)際的電壓值,max 為掃到的電壓的最大值。在這個(gè)地方我們近似認(rèn)為對(duì)稱的品質(zhì)相同的電感在同一位置獲得其最大值和最小值相同,并認(rèn)為其最小值為0。
歸一化算法在程序上的實(shí)現(xiàn)是較為簡(jiǎn)單的,但是卻有很多值得注意的地方。比如說(shuō)應(yīng)該將數(shù)據(jù)歸一到多大的范圍[9]。如何最快最準(zhǔn)的獲得電感電壓的最大值。在不需要?dú)w一時(shí)我們可以用撥碼來(lái)控制是否進(jìn)行歸一化,并且可以用其控制將數(shù)據(jù)寫到 flash 中,以此來(lái)方便我們調(diào)試。
4 軟件濾波
電磁傳感器在采集電磁信號(hào)的過(guò)程中,由于電路設(shè)計(jì)或者其他原因會(huì)產(chǎn)生采集數(shù)據(jù)的波動(dòng),使得采集數(shù)據(jù)產(chǎn)生誤差。因此有必要進(jìn)行軟件濾波處理,去除或者減小噪點(diǎn)對(duì)正確數(shù)據(jù)的影響 [10]。在這里選擇“加權(quán)遞推平均濾波法”,建立一個(gè)隊(duì)列的長(zhǎng)度為N循環(huán)隊(duì)列,每次采樣到一個(gè)新數(shù)據(jù)放入隊(duì)尾,當(dāng)隊(duì)列滿后對(duì)首位數(shù)據(jù)出隊(duì)(即始終保持隊(duì)列中的N個(gè)數(shù)據(jù)為最新)。越接近隊(duì)尾的數(shù)據(jù)也是越新的數(shù)據(jù),其權(quán)值也取得越大。把隊(duì)列中N個(gè)數(shù)據(jù)進(jìn)行加權(quán)平均運(yùn)算,就可獲得新的濾波結(jié)果。該方法的特點(diǎn)是給予新采樣值的權(quán)系數(shù)越大,則信號(hào)靈敏度越高,越能代表當(dāng)前采集的信號(hào)真實(shí)情況,但其平滑度就會(huì)變差。優(yōu)點(diǎn)是適合采樣周期較短的系統(tǒng),改變權(quán)重即可調(diào)整靈敏度[11]。因此后期的智能車的軟件調(diào)試,需要根據(jù)車的運(yùn)行軌跡,不斷修改采樣值的權(quán)系數(shù),尋找合適的參數(shù),既能保證出入彎道平穩(wěn),又能保證車行駛在直道時(shí)不出現(xiàn)抖動(dòng)情況。
該濾波器采集某一通道數(shù)據(jù) N 次,然后進(jìn)行濾波計(jì)算,流程圖如圖4所示。代碼如圖5所示。
5 結(jié)論
綜合以上的設(shè)計(jì)說(shuō)明,歸一化算法在智能車設(shè)計(jì)中的應(yīng)用是絕對(duì)可行的,尤其是對(duì)于電磁四輪組比賽,應(yīng)用歸一化算法可以應(yīng)對(duì)賽道中電流的變化,使智能車的適應(yīng)性增強(qiáng)。經(jīng)過(guò)機(jī)械結(jié)構(gòu)的優(yōu)化,選用精密,線性的放大芯片,解決了信號(hào)對(duì)稱的問(wèn)題。并且充分利用的單片機(jī)的功能,以減輕平時(shí)調(diào)試時(shí)的工作量。經(jīng)過(guò)如此處理的賽道信號(hào)非常穩(wěn)定,并且經(jīng)過(guò)各種軟件濾波處理噪聲后,可以保證智能車在賽道信號(hào)提取這一過(guò)程中足夠可靠。為智能車達(dá)到更快的速度奠定基礎(chǔ)。
參考文獻(xiàn):
[1] 林濤,馬騰煒,陳亞勛,等.基于MCU的自動(dòng)尋跡智能車控制系統(tǒng)的設(shè)計(jì)[J].自動(dòng)化與儀表,2012,27(11):1-4.
[2] 李涵武,崔宏耀,張娜偉,等.基于電磁場(chǎng)檢測(cè)的智能尋跡模型車設(shè)計(jì)[J].黑龍江工程學(xué)院學(xué)報(bào):自然科學(xué)版,2011,25(02):23-25.
[3] 卓晴,黃開(kāi)勝,邵貝貝.學(xué)做智能車[M]. 北京:北航出版社,2007.3
[4] 薛程顥,陳云輝,陰志國(guó).基于磁場(chǎng)檢測(cè)的尋線小車傳感器設(shè)計(jì)研究[J].現(xiàn)代商貿(mào)工業(yè),2010,22(16):337.
[5] 《第七屆“飛思卡爾”智能車競(jìng)賽電磁組直立行車參考方案》,競(jìng)賽秘書(shū)處
[6] 李仕伯,馬旭,卓晴.基于磁場(chǎng)檢測(cè)的尋線小車傳感器布局研究[J].電子產(chǎn)品世界,2009,16(12):41-44.
[7] 劉萍,魏瀅,繆斌.電磁組智能車控制策略探討及實(shí)現(xiàn)[J].四川理工學(xué)院學(xué)報(bào):自然科學(xué)版,2016,29(02):19-24.
[8] 王靜,金建,陳凱,施小東.基于歸一化算法智能車的設(shè)計(jì)與實(shí)現(xiàn)[J].電腦知識(shí)與技術(shù),2015,11(08):72-77.
[9] 林生生,孟澤民.一種基于電磁傳感器的智能車循線算法[J].計(jì)算機(jī)系統(tǒng)應(yīng)用,2014,23(03):119-122.
[10] .淺析軟件濾波在自動(dòng)控制中的應(yīng)用[J].電力電子,2007,(03):38-40.
[11] 彭巧君,任勇峰,王強(qiáng),等.基于FPGA的軟件濾波算法設(shè)計(jì)及實(shí)現(xiàn)[J].科學(xué)技術(shù)與工程,2014,14(03):166-169+174.endprint