基于電磁四輪小車(chē)的距離積分算法
基金項目:無(wú)錫學(xué)院優(yōu)秀本科畢業(yè)論文(設計)支持計劃,項目編號BSZC2023039
本文引用地址:http://dyxdggzs.com/article/202308/449337.htm0 引言
智能車(chē)輛技術(shù)的實(shí)現主要依靠車(chē)內以計算機系統為主的智能駕駛儀來(lái)實(shí)現無(wú)人駕駛,涵蓋智能控制、模式識別等學(xué)科前沿熱點(diǎn)的研究領(lǐng)域,其研究與應用具有巨大的理論和現實(shí)意義[1]。智能車(chē)輛的研究體現了車(chē)輛工程、人工智能、自動(dòng)控制、計算機等多個(gè)學(xué)科領(lǐng)域理論技術(shù)的交叉和綜合,是未來(lái)汽車(chē)發(fā)展的趨勢[2]。智能小車(chē)是智能車(chē)輛的微縮模型,具有自動(dòng)尋跡、尋光、避障等功能[3]。
通過(guò)采用先進(jìn)的電磁感應傳感器技術(shù),智能循跡小車(chē)控制系統可以實(shí)現精準的轉向,并且可以通過(guò)閉環(huán)控制實(shí)現自動(dòng)跟蹤,以確保車(chē)輛沿著(zhù)預先設定的路線(xiàn)行駛。本文將深入探討智能循跡小車(chē)的硬件、軟件以及控制算法,以期望更好地實(shí)現其功能。這個(gè)硬件系統由四個(gè)部分組成:LQBLEV3M 藍牙模塊、STC16F128K單片機模塊、電機驅動(dòng)模塊和電感檢測模塊。通過(guò)使用電感來(lái)檢測路面的電磁狀態(tài),并將測量數據傳輸到STC16F128K單片機,從而實(shí)現小車(chē)的自動(dòng)循跡和無(wú)線(xiàn)遙控等多種功能。
目前主要的智能車(chē)控制算法有,PID 控制[4]、MPC模型預測[5]、LQR 控制[6]等。本文所研究的距離積分算法相較于上述循跡方法實(shí)現更加簡(jiǎn)單方便,也能夠依靠智能車(chē)的實(shí)時(shí)狀態(tài)進(jìn)行人工的調控,其實(shí)驗數據的有效范圍主要依靠編碼器讀取實(shí)現,有一定的魯棒性。
1 硬件系統設計
電磁智能小車(chē)系統分為五大模塊:主控制器模塊、電源模塊、電磁傳感器模塊、舵機驅動(dòng)模塊、電機驅動(dòng)模塊,整個(gè)系統的設計框圖如圖1所示。
圖1 系統框圖
1.1 電源模塊
電源模塊是硬件設計中的重要組成部分,它主要是對7.4 V、3 000 mA 蓄電池進(jìn)行電壓調節。由于各模塊需要的工作電壓和電流不盡相同,所以在實(shí)際中我們設計了多種穩壓電路,用來(lái)滿(mǎn)足各模塊的實(shí)際工作電壓需要。其中7.4 V 電壓給驅動(dòng)電路供電,3.3 V 電壓給運放、編碼器、藍牙、OLED、電機驅動(dòng)使能端等供電,5 V電壓給舵機供電。
1.2 電機驅動(dòng)模塊
驅動(dòng)電路的主要作用是給小車(chē)的驅動(dòng)電機提供控制和動(dòng)力,本文采用兩片 BTN7971 組成一個(gè) H 全橋電動(dòng)機驅動(dòng)電路,電路圖如圖 2 所示。我們可以改變從主控芯片輸入到 BTN7971 的PWM 的占空比來(lái)控制電動(dòng)機的供電電壓的大小,從而實(shí)現了對轉速的控制。
圖2 驅動(dòng)電路圖
1.3 電磁檢測模塊
電磁檢測模塊的主要作用是通過(guò)小車(chē)前瞻上的電感檢測賽道上電磁的強弱。將電磁轉換為數字信號再通過(guò)軟件算法來(lái)實(shí)現小車(chē)在電磁線(xiàn)上的循跡。
圖3 電感排布方式
1.4 編碼器測速模塊
本文采用的是LQ512線(xiàn)編碼器。這款3相Mini增量式旋轉編碼器具有高精度的旋轉特性, 可以通過(guò)3V~5V 的寬電壓輸出旋轉方向和脈沖,從而實(shí)現高精度的編碼功能。該編碼器有6 個(gè)引腳,分別對應為:
1)電源地;
2)3.3 V~5 V寬電壓;
3)步進(jìn)脈沖;
4)旋轉方向;
5)機械零位;
6)懸空。
圖4 為輸出信號時(shí)序圖,圖5 為編碼器各引腳輸入輸出圖。
圖4 輸出信號時(shí)序圖
圖5 編碼器各引腳輸入輸出
2 軟件部分設計方案
2.1 距離積分控制算法
2.1.1 測量并計算單位路程的脈沖數(pulse/m)
下面給出兩種測量方法。
編碼器距離積分是一種用于測量旋轉軸的位置和速度的方法,它通過(guò)計算編碼器輸出的脈沖數來(lái)?yè)Q算成實(shí)際距離。不同類(lèi)型的編碼器有不同的脈沖數和換算公式,需要根據編碼器的參數和電機的特性來(lái)確定。一般來(lái)說(shuō),可以通過(guò)以下步驟來(lái)實(shí)現編碼器距離積分:
1)以正常速度將車(chē)推出大于1 m 的距離,然后測量出實(shí)際距離以及編碼器脈沖積分
2)根據單位距離的脈沖數= 實(shí)際距離 / 脈沖積分從而計算出單位距離的脈沖數
3)開(kāi)電機并記錄開(kāi)始時(shí)間和開(kāi)始時(shí)的脈沖積分
4)在每個(gè)采樣周期內讀取當前時(shí)間和當前時(shí)的脈沖積分
5)根據當前時(shí)的脈沖積分減去開(kāi)始時(shí)的脈沖積分,再乘以單位距離的脈沖數,得到當前時(shí)刻行駛過(guò)的總路程
圖6 預圓環(huán)判斷
2.1.2 距離積分在智能車(chē)循跡中的直接應用
在環(huán)島處我們可以清晰看出在入環(huán)區電磁強度大于其他地方,因為會(huì )有四根電磁線(xiàn)經(jīng)過(guò)入環(huán)區。直接循跡通過(guò)強制打角入環(huán)成功率低且容易在路肩處發(fā)生碰撞。但經(jīng)過(guò)距離積分的處理,入環(huán)率會(huì )大大提高,入環(huán)會(huì )顯得更加絲滑。
1)判斷預圓環(huán)及第1 段距離積分判斷預圓環(huán)然后開(kāi)始通過(guò)編碼器去計路程,當路程達到一個(gè)定值之后就通過(guò)舵機固定打角,執行入環(huán)程序。(注:在編碼器計路程的過(guò)程中,為了防止高速情況下因為電感值的變化過(guò)大導致舵機小幅度的擺動(dòng)進(jìn)而導致車(chē)身姿態(tài)不穩,可以在這過(guò)程中讓差比和的誤差手動(dòng)置零,讓舵機保持在中值狀態(tài)。)
圖7 第一段距離積分
2)環(huán)島內2段距離積分
環(huán)島內當執行入環(huán)程序之時(shí),在圓環(huán)里不能一直保持固定打角,所以在入環(huán)之后,開(kāi)啟積分標志位,同時(shí)工字電感引導入環(huán),當距離積分數值大于閾值,則代表入環(huán)程序結束,執行環(huán)內尋跡。這里環(huán)內尋跡切換到第2個(gè)和5個(gè)電感尋跡,因為第一個(gè)電感已經(jīng)在賽道之外了,無(wú)法計算出正確的差比和值。
圖8 第二段距離積分
3)出環(huán)島第3段距離積分
給定一個(gè)電感閾值,其值略小于入環(huán)閾值,在識別到后實(shí)現出環(huán),由于在接下來(lái)相當一段長(cháng)距離內電感出環(huán)采集值的波動(dòng)不會(huì )太大且會(huì )和入環(huán)閾值重合,為了程序進(jìn)入入環(huán)程序,在識別到出環(huán)閾值后,編碼器走一段距離積分,直到小車(chē)完全走出圓環(huán)再切到正常循跡。直到遠離圓環(huán),最后把圓環(huán)標志位、距離積分執行標志位數值置零,等待下一次圓環(huán)。
圖9 第三段距離積分
通過(guò)多次在賽道上實(shí)驗,本文將小車(chē)使用距離積分入環(huán)和強制打角入環(huán)進(jìn)行了對比。每個(gè)算法實(shí)驗百次,以成功出環(huán)入環(huán)為標準,記實(shí)驗數成功一次。具體實(shí)驗數據如下:
圖10 實(shí)驗數據對比圖
實(shí)驗過(guò)程中發(fā)現以強制打角進(jìn)行圓環(huán)處理,小車(chē)在出環(huán)處容易再次識別入環(huán)程序,導致小車(chē)難以走出圓環(huán)以至于不能完成整個(gè)賽道的循跡。而距離積分的使用則大大提高了出圓環(huán)的成功率,使小車(chē)的完賽率大大提高。
同時(shí)小車(chē)在出庫時(shí),程序里面運用距離積分可以屏蔽小車(chē)在啟停點(diǎn)的檢測,防止多次檢測影響入庫,而且在小車(chē)入庫時(shí),距離積分與延時(shí)的同時(shí)使用能夠讓小車(chē)入庫更加穩定。
系統軟件采用C 語(yǔ)言編寫(xiě),通過(guò) KEIL 編譯。C 語(yǔ)言被廣泛應用于各種領(lǐng)域,其語(yǔ)言結構緊湊,語(yǔ)言規范,編碼流暢,具有高效率、高精度、高穩定性、高兼容性等優(yōu)點(diǎn),并具有良好的可擴展性,可實(shí)現匯編語(yǔ)言的各種任務(wù),還支持快速、高效的編碼,支持 KEIL 編譯,支持快速、高效的編輯。因此可以減少程序員對硬件的操作,功能性和可移植性很強。
圖11 圓環(huán)距離積分控制流程圖
3 結束語(yǔ)
本文介紹了距離積分在四輪電磁小車(chē)中的應用,通過(guò)距離積分的應用,電磁小車(chē)實(shí)現了穩定的出庫及環(huán)島的優(yōu)化處理,在實(shí)際的應用中,電磁小車(chē)行進(jìn)速率較之前未使用距離積分時(shí)有了明顯提升。
參考文獻:
[1] 張琨,崔勝民,王劍鋒.基于自適應RBF網(wǎng)絡(luò )補償的智能車(chē)輛循跡控制[J].控制與決策,2014,29(4): 627-631.
[2] 劉源,張文斌,劉雪揚,等.電磁導航智能車(chē)檢測和控制系統的研究[J].傳感器與微系統,2012,31(4):63-66.
[3] 程志江,李劍波.基于模糊控制的智能小車(chē)控制系統開(kāi)發(fā)[J].計算機應用,2008,28(S2):350-353.
[4] 何文威.基于卡爾曼濾波器和PID控制的逆變器研究與設計[D].廣州:華南理工大學(xué),2013.
[5] 李國勇.智能預測控制及其Matlab實(shí)現[M].北京:電子工業(yè)出版社,2010:255-268.
[6] 徐明澤,劉清河.基于LQR和PID的智能車(chē)軌跡跟蹤控制算法設計與仿真[J].太原理工大學(xué)學(xué)報,2022,53(5):877-885.
(本文來(lái)源于《電子產(chǎn)品世界》雜志2023年7月期)
評論