本仿真系統(tǒng)基于LabVIEW虛擬儀器技術(shù)開發(fā)完成,用于智能車的算法仿真及分析。
1 基本構(gòu)架
圖1是整個(gè)仿真系統(tǒng)的構(gòu)架圖,主要分為基本模型層、控制算法層、通訊層以及仿真環(huán)境層。
基本模型層包括賽車模型與賽道模型,使用者可根據(jù)實(shí)際情況設(shè)定模型參數(shù),它為整個(gè)系統(tǒng)提供了底層的驅(qū)動(dòng),仿真結(jié)果都是在這兩個(gè)模型的基礎(chǔ)上計(jì)算的。
圖1 仿真系統(tǒng)構(gòu)架圖
控制算法層為使用者提供了3種不同的仿真方案:SubVI、C結(jié)點(diǎn)以及單片機(jī)在線仿真,具體在后文將會(huì)詳述。使用者可選擇其中一個(gè)方案輸入或移植自己的控制算法。
通訊層只用于單片機(jī)的在線仿真,使用CAN模塊,可以使單片機(jī)與仿真系統(tǒng)進(jìn)行即時(shí)的數(shù)據(jù)交流,從而實(shí)現(xiàn)動(dòng)態(tài)仿真。
動(dòng)態(tài)仿真環(huán)境基于賽車、賽道模型以及控制算法所輸出的控制信號(電機(jī)控制、轉(zhuǎn)向控制及車速信號等),計(jì)算出車的行走路線,并即時(shí)地將數(shù)據(jù)傳回控制算法層(其計(jì)算周期可調(diào))。
憑借軟件仿真的優(yōu)勢,在仿真過程中,系統(tǒng)可以方便地將各種變量記錄下來,特別是一些實(shí)際試驗(yàn)時(shí)無法測量的量(如賽車相對于賽道中心線的偏移量、前向角、加速度等),并保存于文件中。在回放模式中,用戶可以調(diào)用這些文件,對其仿真結(jié)果進(jìn)行后期分析和處理,繼而改進(jìn)自己的賽車設(shè)置以及控制算法。
2.賽道、賽車、路徑識別模型
我們知道,一個(gè)具有高級控制策略的智能車應(yīng)該在不同的賽道上都具有穩(wěn)定的發(fā)揮,為了驗(yàn)證這一點(diǎn),就必須在不同的賽道上做試驗(yàn)。然而,由于各方面的限制,我們不可能為賽車制作無數(shù)的賽道進(jìn)行測試。但這個(gè)問題卻可在Plastid中輕易地得到解決:我們可以設(shè)計(jì)出不同的賽道,并將其保存成文件,在仿真時(shí)將其調(diào)用即可。
圖2是Plastid的賽道設(shè)計(jì)界面,用戶可以使用“點(diǎn)”來精確設(shè)定賽道曲線的下一點(diǎn)位置,使用“弧”則可以以圓心坐標(biāo)、角度來繪制想要得到的弧線,更可以直接采用“手繪”用鼠標(biāo)在屏幕上繪制賽道或從數(shù)據(jù)文件中導(dǎo)入曲線。其操作界面友好,修改方便,且易于上手和操作。
圖2 賽道設(shè)計(jì)界面
為了仿真方便,我們將賽車簡化為一個(gè)四輪剛體模型,除了一些基本的尺寸參數(shù)之外,在前輪轉(zhuǎn)向系統(tǒng),根據(jù)賽車的實(shí)際情況,我們用“轉(zhuǎn)向速度”與“最大轉(zhuǎn)向角”兩個(gè)參數(shù)來模擬。
對于路徑識別系統(tǒng),Plstid給予使用者至多8個(gè)的光感傳感器的坐標(biāo)設(shè)定,使用者可以任意地安排傳感器的個(gè)數(shù)和相對于車的排列坐標(biāo)(將傳感器安排成一條直線,或者弧線等方案),從而達(dá)到自己想要的識別效果。
對于加速的模擬,目前系統(tǒng)暫時(shí)以直接加速度為控制量,在對實(shí)車進(jìn)行測試和分析后,將構(gòu)建相應(yīng)的模型。