<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è) > 物聯(lián)網(wǎng)與傳感器 > 設計應用 > 基于智能車(chē)非勻速行駛記憶算法的研究和實(shí)現

基于智能車(chē)非勻速行駛記憶算法的研究和實(shí)現

作者:袁三男,汪劍光,張云峰,呂堯 時(shí)間:2009-06-19 來(lái)源:電子產(chǎn)品世界 收藏

        3.1、初圈的控制和記憶:

本文引用地址:http://dyxdggzs.com/article/95472.htm

  在行使第一圈時(shí)的主要目的就是記憶賽道信息特征,并進(jìn)行一定的處理。按常規方法小車(chē)需要勻速行駛,以便在固定的時(shí)間間隔或固定的路程間隔記憶相關(guān)的道路信息。本文在算法上進(jìn)行了改進(jìn),第一圈行使時(shí)按照模糊控制算法計算相應的速度和方向。在角度的控制上,由于前輪左右轉向力臂不同,導致左右轉角控制不一致,同時(shí)對于特定情況下PID有著(zhù)響應滯后的缺點(diǎn),減低了系統的響應度和靈敏度,因此本文取消了傳統意義上的PID控制算法,而采用更為準確的模糊控制和遺傳算法。根據光電的個(gè)數來(lái)確定其量化的等級,再根據所要求的精度進(jìn)行細化。在不同賽道由于摩擦系數不同,轉角需要微調,在調試確定轉角時(shí),除了根據當前引導線(xiàn)的偏移外還需要根據當前車(chē)的運動(dòng)趨勢來(lái)綜合考慮,從而得到轉角的經(jīng)驗值。當小車(chē)實(shí)際運行時(shí),按照測試得到的偏移量,再通過(guò)查表就可獲得對應的角度偏移值。小車(chē)的速度也是按照偏移情況和當前小車(chē)的速度計算而得。

  數據記憶時(shí),采用了12個(gè)磁鋼的霍爾傳感器,車(chē)輪轉一圈得到12個(gè)計數,即使在速度很快的情況下響應時(shí)間也是us級的,精度足夠滿(mǎn)足要求。

  在非勻速的條件下,本文采用了新的數據存儲格式。首先對當前的狀態(tài)進(jìn)行彎直的判斷,根據迷糊控制得到的舵機的轉角值c_ang,判斷得到當前車(chē)的彎直情況。同時(shí)由于車(chē)是非勻速行駛的,而第二圈所行駛的時(shí)間間隔和路程間隔也并不一定和第一圈完全相同,因此本文只判斷彎直情況,在彎道時(shí),記憶每一個(gè)測試點(diǎn)的轉角值,而直道時(shí),既沒(méi)必要存儲轉角,又可節省大量存儲空間,因此對于直道時(shí)只記憶直道的起點(diǎn)和終點(diǎn)路程,而該路程是小車(chē)相對于起始點(diǎn)的絕對路程,也即霍爾傳感器檢測到的磁鋼的個(gè)數ect_cnt。其數據格式用如下表1所示語(yǔ)法來(lái)描述,其中0x7f是分隔符,因為轉角值不可能出現0x7f的值。

  表1 道路信息數據格式  

 

  系統按照前一狀態(tài)和當前狀態(tài)的不同情況分別進(jìn)行數據存儲,其算法如下:當前一狀態(tài)是彎道,現狀態(tài)是直道時(shí),即彎直態(tài),則寫(xiě)入0x7f,ect_cnt,其中ect_cnt是當前的路徑計數;當直直態(tài)時(shí),不存儲;當直彎時(shí),寫(xiě)入當前的ect_cnt,0x7f,當前的c_ang;當彎彎時(shí),寫(xiě)入c_ang。系統初始化時(shí)為彎道,則開(kāi)始行駛后,進(jìn)入起跑線(xiàn),此時(shí)檢測到是直道,進(jìn)入彎直狀態(tài),寫(xiě)入0x47和當前的ect_cnt,這就是道路的起始存儲數據。

  3.2、數據的分析及處理:

  第二圈行駛時(shí)對存儲數據進(jìn)行分析處理。首先,第二圈是采用不同彎直判斷條件,考慮到車(chē)在直道上可能發(fā)生的抖動(dòng)以及在過(guò)S彎時(shí)會(huì )將短暫平緩的彎道檢測為直道,第二圈彎直判斷的條件必須比第一圈嚴格。數據的處理過(guò)程,是放在直彎,和彎直的兩種狀態(tài)下執行。

  第二圈過(guò)起跑線(xiàn)時(shí),系統配置成進(jìn)入彎直狀態(tài),此時(shí)應該根據第一圈記錄的數據算出直道的長(cháng)度,這樣車(chē)在直線(xiàn)上就可以以很高的速度行使,并且能夠提前減速,安全進(jìn)彎,達到很好的控制效果。根據不同的長(cháng)度的直道,應該采用不同的路程來(lái)進(jìn)行提前減速,可以采用路程比例的方式,也可以采用分段細化的方式。當分析數據發(fā)現c_ang個(gè)數小于某一值時(shí),認為該角度是因為車(chē)在直線(xiàn)上非正常的晃動(dòng)所造成的,將其過(guò)濾。



評論


相關(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>