<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于S12的光電式自動(dòng)尋跡車(chē)的設計

基于S12的光電式自動(dòng)尋跡車(chē)的設計

作者: 時(shí)間:2012-05-14 來(lái)源:網(wǎng)絡(luò ) 收藏


路徑識別算法

小車(chē)自主尋跡過(guò)程中,會(huì )受外界光線(xiàn)、車(chē)體抖動(dòng)、交叉線(xiàn)、上下坡、路徑黑斑等環(huán)境因素的干擾,會(huì )使傳感器檢測路徑信息存在偏差而影響小車(chē)尋跡的穩定性。為此,我們采用連續檢測的方式消除干擾:即傳感器對路徑連續檢測5次并將采集到的信息存于數組Line[5][8],檢測到黑線(xiàn)存值1,否則存值0。若,則Line[5][8]的第n列檢測到黑線(xiàn),Line[n]=1;否則為干擾,Line[n]=0,將數組Line[5][8]轉為數組Line[8]。由于傳感器間距略小于黑線(xiàn)線(xiàn)寬,Line[8]一般有16種狀態(tài):多余兩個(gè)為1(檢測到路徑交叉線(xiàn)),一個(gè)或兩個(gè)為1(檢測到黑線(xiàn)),全為0(沒(méi)有檢測到黑線(xiàn))。

如圖2所示,賽車(chē)的偏距大小為e,當檢測到黑線(xiàn)點(diǎn)數0<Point≤2時(shí),如式1所示:
式1
智能車(chē)的方向控制

智能車(chē)的前進(jìn)方向主要取決于賽道與賽車(chē)的偏距大小e,由圖2可知,為前輪轉角;y為傳感器距賽車(chē)前軸間距。則賽車(chē)的前進(jìn)方向轉角應為。舵機安裝在前軸中心上方,通過(guò)轉向連桿帶動(dòng)前輪轉向。由于舵機采用位置伺服電動(dòng)機,其輸出轉角與給定的PWM脈寬成線(xiàn)性關(guān)系,PWM控制信號高電平的寬度決定舵機輸出舵盤(pán)的角度。

由于舵機是一個(gè)大的延遲環(huán)節,不需要加控制算法。為了提高響應速度,采用直接查表法控制轉角,即對應不同偏距e按比例關(guān)系設定一個(gè)舵機轉向表,行駛中直接查表得到需要的轉角值,盡量消除了舵機執行延遲造成的影響。當Point>2時(shí)(路徑交叉線(xiàn)),保持原有轉角值。

速度控制

智能車(chē)的速度控制比較復雜,在行駛中,不僅要求驅動(dòng)車(chē)輪有合理的瞬時(shí)速度,還要求速度變化細致平滑,“出彎立刻加速,入彎立刻減速”。即賽車(chē)位于直道時(shí)設置較高的車(chē)速,保證賽車(chē)有充足的加速空間;賽車(chē)在彎道時(shí),應該隨著(zhù)賽道曲率半徑的不同改變車(chē)速,避免沖出賽道。車(chē)速控制一般采用PID閉環(huán)控制,輸出量u(t)和偏差 e(t)如式2所示:
式2

其中kp,ki ,kd 分別稱(chēng)為比例系數、積分系數、微分系數。 kp的作用是對偏差做出的影響,使系統向減少偏差的方向變化。 ki的作用是消除系統靜差,但ki 增加太大不利于減少超調、減少震蕩,使系統不穩定,系統靜差的消除反而減慢。 kd的作用是加快系統的響應,但是對擾動(dòng)的抑制能力減弱。

運用PID控制的關(guān)鍵是調整三個(gè)比例系數,即參數整定。PID控制器參數整定的方法很多,概括起來(lái)有兩大類(lèi):一是理論計算整定法,它主要是依據系統的數學(xué)模型,經(jīng)過(guò)理論計算確定控制器參數。二是工程整定方法,它主要依賴(lài)工程經(jīng)驗,直接在控制系統的試驗中進(jìn)行,且方法簡(jiǎn)單、易于掌握,在工程實(shí)際中被廣泛采用。
為使問(wèn)題簡(jiǎn)化,根據齊格勒—尼柯?tīng)査菇?jīng)驗公式,可將PID控制算法簡(jiǎn)化為關(guān)于kp的歸一參數公式。所以賽車(chē)車(chē)速計算公式設計如式3所示:

Sst_speed=high_speed-e×kp式3
式3中:Set_speed——賽車(chē)車(chē)速,high_speed——直道設定最高車(chē)速, kp——比例系數??紤]到賽場(chǎng)環(huán)境的不同,在單片機中預存一組實(shí)驗數據kp,通過(guò)撥碼開(kāi)關(guān)進(jìn)行選擇。

結束語(yǔ)

本文提出了一種基于尋跡的智能車(chē)系統設計方法,系統采用MC9S12XSl28單片機做主控制器,直流電機作執行元件,對智能車(chē)進(jìn)行了關(guān)鍵設計與分析,提出了連續檢測的消除干擾方式。通過(guò)編寫(xiě)程序先對所用到的模塊進(jìn)行初始化,并通過(guò)對相應數據寄存器或狀態(tài)寄存器的讀寫(xiě),實(shí)現期望的功能。
完成后在中間粘貼黑色引導線(xiàn)的白色KT板制成的車(chē)道上對智能車(chē)進(jìn)行了測試,表明智能車(chē)在直道上可以達到很高的速度和穩定性,在彎道上控制好車(chē)速,智能車(chē)也能平穩地運行。


上一頁(yè) 1 2 3 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>