基于VI的智能車(chē)仿真系統設計
1 引言
全國高等學(xué)校自動(dòng)化專(zhuān)業(yè)教學(xué)指導分委員會(huì )受?chē)医逃课?,舉辦第一屆“飛思卡爾”杯大學(xué)生智能車(chē)邀請賽。為了給參加本次智能車(chē)邀請賽的各支隊伍提供一個(gè)可離線(xiàn)/在線(xiàn)仿真的平臺以及理論試驗平臺,我們開(kāi)發(fā)了基于LabVIEW虛擬儀器技術(shù)的智能車(chē)仿真系統Plastid(以下簡(jiǎn)稱(chēng)Plastid)。
本仿真系統基于LabVIEW虛擬儀器技術(shù)開(kāi)發(fā)完成,用于智能車(chē)的算法仿真及分析。主要有以下幾大特點(diǎn):
1. 賽道與賽車(chē)環(huán)境模擬
系統對賽道與賽車(chē)分別建立了模型,使用者可以按照指示方便地自行設計賽道以及賽車(chē),將賽道設計成各種各樣的直路、彎路、坡路,將賽車(chē)設計成各種尺寸、形狀,從而使得系統的適用性更廣泛。另一方面,本軟件更適用于沒(méi)有條件制作試驗賽道的參賽隊伍,他們可以在該系統中檢測控制算法。
2. 控制算法的仿真驗證
系統可提供三種不同的控制算法仿真的方案:子VI(SubVI)算法仿真、C結點(diǎn)算法仿真以及單片機在線(xiàn)仿真。使用者可以選擇其中最適合自己的仿真方法,對自己的控制算法在系統的環(huán)境中進(jìn)行驗證。
3. 路徑識別的方案分析
系統提供了采用光感電路來(lái)識別路徑的模型,使用者可以按照自己的想法設定傳感器的個(gè)數、排列的位置,在Plastid上反復作仿真試驗,從而定性得出哪種光感電路的排列效果較好。由于實(shí)地試驗時(shí)要更換傳感器排列較為耗時(shí),因此本系統給予了此種定性分析一個(gè)極其方便的試驗平臺。
4. 離線(xiàn)/在線(xiàn)仿真相結合
系統不僅可以離線(xiàn)仿真,還可以通過(guò)CAN通訊與單片機系統相連,對系統進(jìn)行虛擬賽道環(huán)境的在線(xiàn)仿真。
使用者通過(guò)該仿真系統可以反復對原始設計方案進(jìn)行研究,得到近似最優(yōu)方案后,再進(jìn)行實(shí)車(chē)設計和實(shí)際賽道試驗,從而減少了開(kāi)發(fā)的費用和時(shí)間成本,大大提高智能車(chē)開(kāi)發(fā)效率。
2 基本構架
圖1是整個(gè)仿真系統的構架圖,主要分為基本模型層、控制算法層、通訊層以及仿真環(huán)境層。
基本模型層包括賽車(chē)模型與賽道模型,使用者可根據實(shí)際情況設定模型參數,它為整個(gè)系統提供了底層的驅動(dòng),仿真結果都是在這兩個(gè)模型的基礎上計算的。
圖1 仿真系統構架圖
控制算法層為使用者提供了3種不同的仿真方案:SubVI、C結點(diǎn)以及單片機在線(xiàn)仿真,具體在后文將會(huì )詳述。使用者可選擇其中一個(gè)方案輸入或移植自己的控制算法。
通訊層只用于單片機的在線(xiàn)仿真,使用CAN模塊,可以使單片機與仿真系統進(jìn)行即時(shí)的數據交流,從而實(shí)現動(dòng)態(tài)仿真。
動(dòng)態(tài)仿真環(huán)境基于賽車(chē)、賽道模型以及控制算法所輸出的控制信號(電機控制、轉向控制及車(chē)速信號等),計算出車(chē)的行走路線(xiàn),并即時(shí)地將數據傳回控制算法層(其計算周期可調)。
憑借軟件仿真的優(yōu)勢,在仿真過(guò)程中,系統可以方便地將各種變量記錄下來(lái),特別是一些實(shí)際試驗時(shí)無(wú)法測量的量(如賽車(chē)相對于賽道中心線(xiàn)的偏移量、前向角、加速度等),并保存于文件中。在回放模式中,用戶(hù)可以調用這些文件,對其仿真結果進(jìn)行后期分析和處理,繼而改進(jìn)自己的賽車(chē)設置以及控制算法。
3 賽道、賽車(chē)、路徑識別模型
我們知道,一個(gè)具有高級控制策略的智能車(chē)應該在不同的賽道上都具有穩定的發(fā)揮,為了驗證這一點(diǎn),就必須在不同的賽道上做試驗。然而,由于各方面的限制,我們不可能為賽車(chē)制作無(wú)數的賽道進(jìn)行測試。但這個(gè)問(wèn)題卻可在Plastid中輕易地得到解決:我們可以設計出不同的賽道,并將其保存成文件,在仿真時(shí)將其調用即可。
圖2是Plastid的賽道設計界面,用戶(hù)可以使用“點(diǎn)”來(lái)精確設定賽道曲線(xiàn)的下一點(diǎn)位置,使用“弧”則可以以圓心坐標、角度來(lái)繪制想要得到的弧線(xiàn),更可以直接采用“手繪”用鼠標在屏幕上繪制賽道或從數據文件中導入曲線(xiàn)。其操作界面友好,修改方便,且易于上手和操作。圖2中的賽道即根據韓國漢陽(yáng)大學(xué)2004年智能車(chē)大賽采用的賽道設計而成。
圖2 賽道設計界面
為了仿真方便,我們將賽車(chē)簡(jiǎn)化為一個(gè)四輪剛體模型,除了一些基本的尺寸參數之外,在前輪轉向系統,根據賽車(chē)的實(shí)際情況,我們用“轉向速度”與“最大轉向角”兩個(gè)參數來(lái)模擬。
對于路徑識別系統,Plstid給予使用者至多8個(gè)的光感傳感器的坐標設定,使用者可以任意地安排傳感器的個(gè)數和相對于車(chē)的排列坐標(將傳感器安排成一條直線(xiàn),或者弧線(xiàn)等方案),從而達到自己想要的識別效果。
對于加速的模擬,目前系統暫時(shí)以直接加速度為控制量,在對實(shí)車(chē)進(jìn)行測試和分析后,將構建相應的模型。
圖3即賽車(chē)設計的操作界面,左邊為賽車(chē)的基本參數,右邊為傳感器坐標設定、試驗賽道生成以及傳感器值的即時(shí)顯示(試駕時(shí)用)。
使用者除了可以設定賽車(chē)參數外,還可以對所設定好的賽車(chē)進(jìn)行“試駕”,當場(chǎng)檢驗所設計參數的優(yōu)劣,并可將賽車(chē)信息保存于文件,供仿真時(shí)調入使用。
圖3 賽車(chē)參數設定界面
評論