基于S12的光電式自動(dòng)尋跡車的設(shè)計(jì)
路徑識(shí)別算法
小車自主尋跡過程中,光電傳感器會(huì)受外界光線、車體抖動(dòng)、交叉線、上下坡、路徑黑斑等環(huán)境因素的干擾,會(huì)使傳感器檢測(cè)路徑信息存在偏差而影響小車尋跡的穩(wěn)定性。為此,我們采用連續(xù)檢測(cè)濾波處理的方式消除干擾:即傳感器對(duì)路徑連續(xù)檢測(cè)5次并將采集到的信息存于數(shù)組Line[5][8],檢測(cè)到黑線存值1,否則存值0。若,則Line[5][8]的第n列檢測(cè)到黑線,Line[n]=1;否則為干擾,Line[n]=0,將數(shù)組Line[5][8]轉(zhuǎn)為數(shù)組Line[8]。由于傳感器間距略小于黑線線寬,Line[8]一般有16種狀態(tài):多余兩個(gè)為1(檢測(cè)到路徑交叉線),一個(gè)或兩個(gè)為1(檢測(cè)到黑線),全為0(沒有檢測(cè)到黑線)。
如圖2所示,賽車的偏距大小為e,當(dāng)檢測(cè)到黑線點(diǎn)數(shù)0<Point≤2時(shí),如式1所示:
式1
智能車的方向控制
智能車的前進(jìn)方向主要取決于賽道與賽車的偏距大小e,由圖2可知,為前輪轉(zhuǎn)角;y為傳感器距賽車前軸間距。則賽車的前進(jìn)方向轉(zhuǎn)角應(yīng)為。舵機(jī)安裝在前軸中心上方,通過轉(zhuǎn)向連桿帶動(dòng)前輪轉(zhuǎn)向。由于舵機(jī)采用位置伺服電動(dòng)機(jī),其輸出轉(zhuǎn)角與給定的PWM脈寬成線性關(guān)系,PWM控制信號(hào)高電平的寬度決定舵機(jī)輸出舵盤的角度。
由于舵機(jī)是一個(gè)大的延遲環(huán)節(jié),不需要加控制算法。為了提高響應(yīng)速度,采用直接查表法控制轉(zhuǎn)角,即對(duì)應(yīng)不同偏距e按比例關(guān)系設(shè)定一個(gè)舵機(jī)轉(zhuǎn)向表,行駛中直接查表得到需要的轉(zhuǎn)角值,盡量消除了舵機(jī)執(zhí)行延遲造成的影響。當(dāng)Point>2時(shí)(路徑交叉線),保持原有轉(zhuǎn)角值。
速度控制
智能車的速度控制比較復(fù)雜,在行駛中,不僅要求驅(qū)動(dòng)車輪有合理的瞬時(shí)速度,還要求速度變化細(xì)致平滑,“出彎立刻加速,入彎立刻減速”。即賽車位于直道時(shí)設(shè)置較高的車速,保證賽車有充足的加速空間;賽車在彎道時(shí),應(yīng)該隨著賽道曲率半徑的不同改變車速,避免沖出賽道。車速控制一般采用PID閉環(huán)控制,輸出量u(t)和偏差 e(t)如式2所示:
式2
其中kp,ki ,kd 分別稱為比例系數(shù)、積分系數(shù)、微分系數(shù)。 kp的作用是對(duì)偏差做出的影響,使系統(tǒng)向減少偏差的方向變化。 ki的作用是消除系統(tǒng)靜差,但ki 增加太大不利于減少超調(diào)、減少震蕩,使系統(tǒng)不穩(wěn)定,系統(tǒng)靜差的消除反而減慢。 kd的作用是加快系統(tǒng)的響應(yīng),但是對(duì)擾動(dòng)的抑制能力減弱。
運(yùn)用PID控制的關(guān)鍵是調(diào)整三個(gè)比例系數(shù),即參數(shù)整定。PID控制器參數(shù)整定的方法很多,概括起來有兩大類:一是理論計(jì)算整定法,它主要是依據(jù)系統(tǒng)的數(shù)學(xué)模型,經(jīng)過理論計(jì)算確定控制器參數(shù)。二是工程整定方法,它主要依賴工程經(jīng)驗(yàn),直接在控制系統(tǒng)的試驗(yàn)中進(jìn)行,且方法簡(jiǎn)單、易于掌握,在工程實(shí)際中被廣泛采用。
為使問題簡(jiǎn)化,根據(jù)齊格勒—尼柯爾斯經(jīng)驗(yàn)公式,可將PID控制算法簡(jiǎn)化為關(guān)于kp的歸一參數(shù)公式。所以賽車車速計(jì)算公式設(shè)計(jì)如式3所示:
Sst_speed=high_speed-e×kp式3
式3中:Set_speed——賽車車速,high_speed——直道設(shè)定最高車速, kp——比例系數(shù)??紤]到賽場(chǎng)環(huán)境的不同,在單片機(jī)中預(yù)存一組實(shí)驗(yàn)數(shù)據(jù)kp,通過撥碼開關(guān)進(jìn)行選擇。
結(jié)束語
本文提出了一種基于紅外線光電傳感器尋跡的智能車系統(tǒng)設(shè)計(jì)方法,系統(tǒng)采用MC9S12XSl28單片機(jī)做主控制器,直流電機(jī)作執(zhí)行元件,對(duì)智能車進(jìn)行了關(guān)鍵設(shè)計(jì)與分析,提出了連續(xù)檢測(cè)濾波處理的消除干擾方式。通過編寫程序先對(duì)所用到的模塊進(jìn)行初始化,并通過對(duì)相應(yīng)數(shù)據(jù)寄存器或狀態(tài)寄存器的讀寫,實(shí)現(xiàn)期望的功能。
完成后在中間粘貼黑色引導(dǎo)線的白色KT板制成的車道上對(duì)智能車進(jìn)行了測(cè)試,表明智能車在直道上可以達(dá)到很高的速度和穩(wěn)定性,在彎道上控制好車速,智能車也能平穩(wěn)地運(yùn)行。
評(píng)論