新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于VI的智能車仿真系統(tǒng)設(shè)計(jì)

基于VI的智能車仿真系統(tǒng)設(shè)計(jì)

作者: 時(shí)間:2012-02-10 來源:網(wǎng)絡(luò) 收藏

4 控制算法仿真

Plastid針對(duì)不同的使用者提供了三種不同的控制算法仿真方案:子VI(SubVI)、C結(jié)點(diǎn)以及單片機(jī)的在線仿真。

首先,最接近于編程環(huán)境的即為SubVI方案。用戶將自己的控制算法,移植為的SubVI,Plastid在仿真時(shí)即時(shí)地給該SubVI輸入變量(車速、傳感器值等),SubVI通過計(jì)算得出控制量并輸送給Plastid仿真循環(huán)。SubVI方案對(duì)于熟悉 G語言編程方法的使用者來說非常簡單,但它的缺點(diǎn)是移植性較差,由于C語言和G語言的差別較大,因此將單片機(jī)的控制算法轉(zhuǎn)換為子VI的程序需要一定的工作量。

其次,C結(jié)點(diǎn)方案則更適合于采用C語言編程的使用者們,其原理與SubVI方案類似,但是其程序則可直接用C語言編寫,用Visual Studio IDE將其編譯為dll文件,系統(tǒng)在仿真時(shí)會(huì)自動(dòng)調(diào)用該dll,從而實(shí)現(xiàn)與SubVI一樣的控制和反饋。對(duì)于本方案,使用者可以將其單片機(jī)的程序進(jìn)行適當(dāng)?shù)男薷暮蠹纯墒褂茫虼艘浦残暂^高。

最后,利用CAN模塊,系統(tǒng)可以直接與單片機(jī)進(jìn)行直接通訊,并實(shí)現(xiàn)在線仿真。單片機(jī)方面只需要在其CAN接口即時(shí)地傳送其控制量(這在程序中很容易添加相應(yīng)程序),而Plastid則通過CAN模塊得到這些量,并傳送反饋量給單片機(jī)。在這一方案,單片機(jī)的程序修改不大,但需要有CAN模塊等硬件支持。

圖4為的界面,使用者在加載完賽道與賽車文件后,即可進(jìn)行動(dòng)態(tài)的仿真。其中仿真周期表示系統(tǒng)每一次計(jì)算的時(shí)間,可以根據(jù)單片機(jī)的運(yùn)算周期進(jìn)行設(shè)定,但值得一提的是,在仿真過程中,其真實(shí)的仿真周期會(huì)根據(jù)計(jì)算機(jī)的性能等因素而不同,但其仿真的結(jié)果可以保證確實(shí)根據(jù)該仿真周期計(jì)算而得,從而保證其仿真的可靠性。

圖4 動(dòng)態(tài)仿真界面

5 不足與改進(jìn)

由于Plastid仿真系統(tǒng)還未與實(shí)車的仿真進(jìn)行過深入比較,且開發(fā)周期也較短,因此必然留有一些不足之處。
該系統(tǒng)目前還只能用于采用光感傳感器路徑識(shí)別方案的,對(duì)于CCD攝像頭技術(shù)還不支持。

其次,在仿真過程中,系統(tǒng)只是根據(jù)汽車的運(yùn)動(dòng)學(xué)模型(將車簡化為一四輪剛體來處理)進(jìn)行計(jì)算,并未考慮其側(cè)滑以及路面摩擦力的影響。這將使其仿真結(jié)果與實(shí)際結(jié)果有一定差距,我們將在后續(xù)工作中根據(jù)實(shí)車的情況,不斷進(jìn)行實(shí)車試驗(yàn)和對(duì)比,從而提高其仿真真實(shí)度,使其能盡可能地模擬出實(shí)際的情況。

最后,計(jì)算速度也是系統(tǒng)必須面臨的一大問題。對(duì)此,我們將優(yōu)化代碼,并裁剪不必要的程序,從而提高系統(tǒng)的仿真速度。

綜上所述,本系統(tǒng)主要針對(duì)本次大賽而開發(fā),將在這一屆邀請(qǐng)賽過程中進(jìn)行不斷的優(yōu)化和改進(jìn),爭(zhēng)取為廣大參賽隊(duì)伍更好地完成開發(fā)任務(wù)而服務(wù)。


上一頁 1 2 下一頁

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉