黃定翠
摘 要隨著科技的發(fā)展和汽車(chē)工業(yè)的進(jìn)步,智能汽車(chē)的研究興起了一股熱潮,與之相對(duì)應(yīng)的模型研究智能循跡小車(chē)也不斷的在更新,無(wú)論是各大高校還是企業(yè)公司對(duì)循跡小車(chē)的研究一直在進(jìn)行著。而算法的研究是其中最主要的核心,它幾乎決定了小車(chē)的控制的好壞,好的算法將會(huì)使得小車(chē)的循跡變得十分的精確和可靠。
【關(guān)鍵詞】循跡小車(chē) 智能汽車(chē) 算法
1 引言
近些年來(lái),在各大高校對(duì)循跡小車(chē)的研究一直在進(jìn)行著,同時(shí)也會(huì)有一些關(guān)于循跡小車(chē)的比賽,例如飛思卡爾智能車(chē)競(jìng)賽,有時(shí)候電子設(shè)計(jì)大賽也會(huì)有涉及到循跡小車(chē)。一般循跡小車(chē)有傳感器用于對(duì)外界賽道的采集,賽道都是有一定的特征,比如通有交變電流的漆包線作為引導(dǎo)線的賽道,LC傳感器可以采集賽道的磁場(chǎng),通過(guò)磁場(chǎng)的強(qiáng)弱和分布規(guī)律來(lái)判斷小車(chē)的相對(duì)位置。為了達(dá)到轉(zhuǎn)彎的靈活性,本設(shè)計(jì)前輪采用舵機(jī)來(lái)控制轉(zhuǎn)彎打角的角度,利用PD算法將小車(chē)的相對(duì)位置轉(zhuǎn)換成控制量。后輪使用直流電機(jī),輔以PID算法,以達(dá)到小車(chē)的高速及其穩(wěn)定行駛。
2 設(shè)計(jì)
我們以STM32作為主控芯片,使用LCD1000和電感線圈組成的傳感器對(duì)鋪有鋁膜的賽道進(jìn)行信息采集。因?yàn)槲覀冑惖乐写嬖诘钠碌?,所以還使用了MPU6050陀螺儀來(lái)完成坡道的識(shí)別,編碼器對(duì)速度進(jìn)行采集,如圖1所示。
3 傳感器的原理分析與布局
3.1 原理
本傳感器是利用了電容三點(diǎn)震蕩的原理,利用LDC1000和電感線圈構(gòu)成電容式三點(diǎn)震蕩,震蕩后產(chǎn)生正弦波,并且隨著電感線圈靠近鋁膜磁場(chǎng)不同,由此得出的正弦波的頻率也是不一樣的,利用這個(gè)特點(diǎn)可以分辨出線圈和鋁膜的相對(duì)位置。得出的正弦波進(jìn)行比較器整形后得出方波,送到主控芯片進(jìn)行計(jì)數(shù)。
3.2 傳感器的布局
傳感器的布局是十分重要的,而且也有講究,布局的不一樣所使用會(huì)影響到算法,所以在在傳感器的排布上面一定得和軟件算法想結(jié)合。本設(shè)計(jì)上采用了3個(gè)傳感器兩個(gè)旁邊一個(gè)中間。前瞻的選定:一般的設(shè)計(jì)前瞻的選擇有三種第一是:30cm以內(nèi),這個(gè)前瞻的長(zhǎng)度在低速的時(shí)候?qū)惖赖牟杉容^穩(wěn)定,但是速度比較快的時(shí)候就有可能不穩(wěn)定,特別是過(guò)彎的時(shí)候不能及時(shí)的檢測(cè)到彎道信息,從而使得速度不能及時(shí)的減下來(lái),小車(chē)容易沖出賽道;第二種是30-50cm:這時(shí)候采集的賽道信息也比較穩(wěn)定,彎道檢測(cè)比較及時(shí)。第三種:大于50cm,這時(shí)候前瞻比較長(zhǎng),雖然彎道能及時(shí)檢測(cè)到,但是這會(huì)有其他的負(fù)面影響就是直道的時(shí)候車(chē)身的晃動(dòng)十分的厲害,過(guò)彎內(nèi)切的厲害特別是s彎道很容易出意外。綜合考慮,我們采用了40cm的前瞻,這樣既不會(huì)因?yàn)樘滩荒芗皶r(shí)減速,也不會(huì)因?yàn)樘L(zhǎng)造成其他的不穩(wěn)定。
4 賽道識(shí)別與分析
賽道元素有直道,大S彎,小S彎,還有棒棒彎,十字路口,連續(xù)彎道等,通過(guò)傳感器傳回來(lái)的信息來(lái)判斷小車(chē)目前所處的位置和賽道類(lèi)型,并以此來(lái)設(shè)定不同的目標(biāo)值,從而達(dá)到小車(chē)最穩(wěn)定和最快速的行進(jìn)。直道:左右兩傳感器的值幾乎一樣,它們的差值很小,這時(shí)候可以給比較快的速度;大S彎(左右):有一邊的傳感器的值很小,而另一邊的比較大,中間傳感器的也是比較?。盒彎是比較難以區(qū)分的,只能給一個(gè)比較慢的速度的。十字當(dāng)成直道來(lái)行進(jìn)。
5 算法研究
5.1 位置式PD算法
比例(P)控制既輸出與輸入誤差信號(hào)成比例關(guān)系,當(dāng)僅有比例控制時(shí)系統(tǒng)輸出存在穩(wěn)態(tài)誤差。微分調(diào)節(jié)就是偏差值的變化率。當(dāng)輸入偏差值線性變化,則調(diào)節(jié)器輸出側(cè)疊加一個(gè)恒定的調(diào)節(jié)量。因?yàn)槲覀冞@個(gè)小車(chē)系統(tǒng)會(huì)有時(shí)間的滯后,所以要用到這個(gè)參數(shù),但是一般的系統(tǒng)不需要調(diào)節(jié)微分參數(shù)。但是對(duì)有較大慣性或滯后的被控對(duì)象,比例+微分(PD)控制器能改善系統(tǒng)在調(diào)節(jié)過(guò)程中的動(dòng)態(tài)特性。為此本設(shè)計(jì)的使用PD來(lái)控制舵機(jī)的打角:
PWM(舵機(jī)打角)=kp(sensor1-sensor2)+kd(last_error)
kp為比例系數(shù),kd為積分系數(shù),這兩個(gè)的值需要大量的實(shí)驗(yàn)才能調(diào)出一個(gè)比較合適的值。
5.2 增量式PID
考慮到速度控制通道的時(shí)間滯后比較小,因?yàn)椴捎肞ID控制方案,并引入“棒棒控制”,即入彎減速,過(guò)彎時(shí)中俗,出彎后加速。
5.3 策略
首先在舵機(jī)控制上,如果只是單單的位置式PD算法,這對(duì)速度的提升十分的困難。為此,筆者在PD算法的基礎(chǔ)上加上了一些策略,第一是鎖值處理:當(dāng)電機(jī)過(guò)彎時(shí)(彎道比較大),如果僅僅使用PD算法,小車(chē)抖動(dòng)的很厲害,主要是因?yàn)樗鼊偦氐街钡烙制x直道使得舵機(jī)在不停的來(lái)回打角從而導(dǎo)致車(chē)身的晃動(dòng),影響速度。但是當(dāng)我們識(shí)別到過(guò)彎,直接給定一個(gè)指定值和一定的速度,小車(chē)就可以直接轉(zhuǎn)過(guò)去。補(bǔ)差處理:直道上因?yàn)槠渌母蓴_也偶爾造成小車(chē)對(duì)賽道的誤判,進(jìn)入假鎖狀態(tài)。這時(shí)候使用補(bǔ)差的算法可以減小這種情況。直流電機(jī):速度控制處理“棒棒控制”,預(yù)先設(shè)定值,直道最大速度,入彎減速,過(guò)彎中速,出彎加速。
6 結(jié)束語(yǔ)
本設(shè)計(jì)中的智能循跡小車(chē)能快速的行駛,且能識(shí)別坡道并且穩(wěn)定通過(guò)。在各種彎道中能以較合適的速度通過(guò)。在算法和策略上面也比較完善,總體上小車(chē)的適應(yīng)性比較強(qiáng)。但是,本設(shè)計(jì)也有不足的地方,比如傳感器檢測(cè)的高度難以提高,大概只有2-3cm,因?yàn)闄z測(cè)高度而導(dǎo)致其他的負(fù)面影響,比如在直道上因?yàn)檐?chē)神的抖動(dòng)使得傳感器采集值突變,誤判為彎道,筆者能想到的解決方案就是本次值和上次值的對(duì)比,如果變化太大,則判為檢測(cè)誤差,但是效果不是很理想,所以本設(shè)計(jì)還存在可改進(jìn)的方面。
參考文獻(xiàn)
[1]吳祥.基于電磁導(dǎo)航智能車(chē)的控制研究及實(shí)現(xiàn)[D].安徽:安徽工程大學(xué),2016.
作者單位
西南民族大學(xué) 四川省成都市 610041