0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

技術(shù)分享 | 使用TSMaster從零打造車輛控制器HIL實(shí)時(shí)仿真系列4

上海同星智能科技有限公司 ? 2022-05-30 18:16 ? 次閱讀

HIL實(shí)時(shí)仿真系列4

50b238e0-dde5-11ec-b80f-dac502259ad0.jpg

今天我們接著上一章節(jié)的內(nèi)容繼續(xù)介紹如何基于TSMaster打通ECU算法與整車模型之間的橋梁。

SDK融入TSMaster運(yùn)行環(huán)境

由于此視頻采用了CarSim controller自帶的CarSim engine客戶端,需要對(duì)代碼庫(kù)做一些配置,也就是需要引用CarSim controller開發(fā)包的相關(guān)sdk文件。我們打開ABS算法小程序的代碼庫(kù)。

向上進(jìn)入common文件夾,這個(gè)文件夾可存放多個(gè)小程序公共的頭文件和代碼文件,我們將SDK文件拖入此文件夾中。

接著轉(zhuǎn)到全局定義中,第一行代碼,引用一個(gè)C++頭文件 #include "CarSimAPIUtilities.hpp"。

50f2781a-dde5-11ec-b80f-dac502259ad0.png

隨后點(diǎn)擊編譯,可以看到,SDK也融入了TSMaster的運(yùn)行環(huán)境中。

SDK控制動(dòng)力學(xué)模型

接下來我們就可以通過調(diào)用SDK來輕松控制動(dòng)力學(xué)模型了。

我們可以使用CarSim engine自帶的這 47 個(gè)API函數(shù)來操作CarSim,當(dāng)然也可以選用基于CarSim engine開發(fā)的SDK來實(shí)現(xiàn),相比起來SDK的函數(shù)更加簡(jiǎn)潔,它將整個(gè) CarSim的控制分為三個(gè)階段:初始化、運(yùn)行、和結(jié)束運(yùn)行。

初始化函數(shù)名為 callback_setup,放在程序啟動(dòng)事件中。

513bf2ec-dde5-11ec-b80f-dac502259ad0.png

運(yùn)行函數(shù)名為 callback_start_carsim,放在step函數(shù)中,并且讓它只執(zhí)行一次;這需要再申請(qǐng)一個(gè)全局變量 vToStart,來實(shí)現(xiàn)單次操作。

51a9065c-dde5-11ec-b80f-dac502259ad0.png

結(jié)束運(yùn)行函數(shù)名為 callback_teardown,放在程序停止事件中;寫完后我們編譯程序,運(yùn)行程序。

車輛加速仿真試驗(yàn)

接下來我們嘗試加速車輛,并在車速高于80kph時(shí),緊急制動(dòng),要完成這個(gè)操作,只需要在我們的ABS小程序中,再自 定義兩個(gè)API函數(shù)即可,我們將這兩個(gè)函數(shù)分別命名為acc和brake。

在acc中,我們操縱油門,此時(shí)需要到CarSim controller中拷貝輸入變量名,throttle,cs-

>IMP_THROTTLE_ENGINE = 0.6;

5210c3c8-dde5-11ec-b80f-dac502259ad0.png

在brake中,我們模擬駕駛員以150 bar的壓力踩下制動(dòng)踏板進(jìn)行緊急制動(dòng),這就需要設(shè)置主缸壓力為15MPa,我們?cè)O(shè)置一個(gè)全局變量 vPMC 來接收這個(gè)主缸壓力,同時(shí),還需要到全局定義中聲明這個(gè) vPMC。

5267d21c-dde5-11ec-b80f-dac502259ad0.png

為了對(duì)比有無ABS的制動(dòng)效果,我們首先嘗試沒有ABS算法的情況,那么這個(gè)壓力將直接作用在四個(gè)輪缸上,這里還需聲明一個(gè)變量 vHasABS,默認(rèn)為假。

52be74fa-dde5-11ec-b80f-dac502259ad0.png

接著來到step函數(shù)中,通過 vHasABS 來區(qū)分算法的執(zhí)行與否,若沒有執(zhí)行算法,則直接賦值輪缸壓力。

完成邏輯之后,我們需要觀測(cè)輪速和壓力,這些變量都來自于整車模型,如何觀測(cè)呢?我們可以使用小程序的變量將其表達(dá)出來。

530c56c0-dde5-11ec-b80f-dac502259ad0.jpg

轉(zhuǎn)到變量組上,點(diǎn)擊右鍵添加變量表,依次輸入車速,行駛距離,油門,各個(gè)輪速和各個(gè)壓力值。點(diǎn)擊確定后,一系列變量變申明好了,與全局定義不同的是,這些變量是系統(tǒng)變量,可以被其他小程序,或是被graphics或者面板等等窗口獲取并自動(dòng)繪制曲線。

我們回到step函數(shù),需要依次對(duì)這些系統(tǒng)變量進(jìn)行賦值,賦值使用set操作

v.set(cs->VX);

station.set(cs->STATION);

throttle.set(cs->IMP_THROTTLE_ENGINE);

vFL.set(cs->VX_L1);

vFR.set(cs->VX_R1);

vRL.set(cs->VX_L2);

vRR.set(cs->VX_R2);

pFL.set(cs->IMP_PBK_L1);

pFR.set(cs->IMP_PBK_R1);

pRL.set(cs->IMP_PBK_L2);

pRR.set(cs->IMP_PBK_R2);

隨后運(yùn)行程序,打開系統(tǒng)變量表,就可以看到我們?yōu)檫@個(gè)小程序添加的一系列監(jiān)控變量。

53429b9a-dde5-11ec-b80f-dac502259ad0.jpg

我們打開graphics,將圖形分為三欄,上欄顯示速度,中欄顯示壓力,下欄顯示油門和行駛距離等信息,隨后添加各個(gè)系統(tǒng)變量進(jìn)行觀測(cè)。

5380f732-dde5-11ec-b80f-dac502259ad0.jpg

再轉(zhuǎn)到自動(dòng)化模塊中,將我們現(xiàn)有的邏輯做一些修改,也就是啟動(dòng)后等待車輛加速到80公里每小時(shí),再進(jìn)行制動(dòng),只有制動(dòng)到車速為0時(shí),才停止仿真。(具體操作步驟詳情可直接觀看我們的B站視頻哦~)

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 控制器
    +關(guān)注

    關(guān)注

    112

    文章

    16039

    瀏覽量

    176730
  • HIL
    HIL
    +關(guān)注

    關(guān)注

    2

    文章

    45

    瀏覽量

    17628
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    解決方案丨EasyGo新能源系統(tǒng)實(shí)時(shí)仿真應(yīng)用

    控制器,EG-Box-Mini k1011用來做HIL實(shí)時(shí)仿真器。4、實(shí)驗(yàn)例程實(shí)時(shí)
    發(fā)表于 10-18 09:37

    PPEC-HIL 三相整流逆變實(shí)時(shí)仿真測(cè)試

    PPEC:Programmable Power Electronics Controller,可編程電力電子控制器HIL:Hardware-in-the-Loop,硬件在環(huán)EasyGo電力電子科
    發(fā)表于 10-12 15:40

    PPEC-HIL 三相整流逆變實(shí)時(shí)仿真

    PPEC:ProgrammablePowerElectronicsController,可編程電力電子控制器HIL:Hardware-in-the-Loop,硬件在環(huán)EasyGo電力電子科研/教學(xué)
    的頭像 發(fā)表于 10-11 18:10 ?143次閱讀
    PPEC-<b class='flag-5'>HIL</b> 三相整流逆變<b class='flag-5'>實(shí)時(shí)</b><b class='flag-5'>仿真</b>

    【干貨分享】硬件在環(huán)仿真HiL)測(cè)試

    技術(shù),通過接入真實(shí)的控制器,采用或者部分采用實(shí)時(shí)仿真模型來模擬被控對(duì)象和系統(tǒng)運(yùn)行環(huán)境,實(shí)現(xiàn)整個(gè)系統(tǒng)的仿真測(cè)試。
    的頭像 發(fā)表于 09-19 17:15 ?439次閱讀
    【干貨分享】硬件在環(huán)<b class='flag-5'>仿真</b>(<b class='flag-5'>HiL</b>)測(cè)試

    干貨分享 | TSMaster軟件指南

    TSMaster是同星智能開發(fā)的一款國(guó)產(chǎn)汽車總線工具鏈軟件平臺(tái),是全方位汽車總線設(shè)計(jì)、仿真、分析、診斷和標(biāo)定的專業(yè)工具,支持需求分析到系統(tǒng)實(shí)現(xiàn)的整個(gè)系統(tǒng)開發(fā)過程。TSMaster軟件
    的頭像 發(fā)表于 09-15 08:08 ?1140次閱讀
    干貨分享 | <b class='flag-5'>TSMaster</b>軟件指南

    教學(xué)驗(yàn)證篇丨PPEC+HIL 單相逆變仿真驗(yàn)證

    實(shí)時(shí)仿真平臺(tái)的仿真實(shí)驗(yàn)的可靠性。 為便于進(jìn)行比較測(cè)試實(shí)驗(yàn),控制部分統(tǒng)一采用攜帶PPEC芯片的控制器。本次測(cè)試我們將被控部分(真實(shí)單相逆變拓?fù)?/div>
    發(fā)表于 08-09 10:25

    教學(xué)驗(yàn)證篇丨PPEC+HIL DAB仿真驗(yàn)證

    PPEC:ProgrammablePowerElectronicsController,可編程電力電子控制器HIL:Hardware-in-the-Loop,硬件在環(huán)森木磊石推出的電力電子科研/教學(xué)系列
    的頭像 發(fā)表于 07-19 08:23 ?1065次閱讀
    教學(xué)驗(yàn)證篇丨PPEC+<b class='flag-5'>HIL</b> DAB<b class='flag-5'>仿真</b>驗(yàn)證

    教學(xué)驗(yàn)證篇丨PPEC+HIL LLC拓?fù)?b class='flag-5'>仿真驗(yàn)證

    芯片的控制器。本次測(cè)試我們將被控部分(真實(shí)LLC功率電路板和載入LLC拓?fù)涞腅asyGo實(shí)時(shí)仿真器NetBox)的參數(shù)配置調(diào)整一致,通過在恒壓開環(huán)、閉環(huán)模式,恒流閉環(huán)模下進(jìn)行測(cè)試,可以看到仿真
    發(fā)表于 06-11 13:45

    PPEC+HIL LLC拓?fù)?b class='flag-5'>仿真驗(yàn)證

    PPEC:ProgrammablePowerElectronicsController,可編程電力電子控制器HIL:Hardware-in-the-Loop,硬件在環(huán)森木磊石推出的電力電子科研/教學(xué)系列
    的頭像 發(fā)表于 06-08 08:23 ?336次閱讀
    PPEC+<b class='flag-5'>HIL</b> LLC拓?fù)?b class='flag-5'>仿真</b>驗(yàn)證

    實(shí)戰(zhàn)電力電子,移相全橋仿真驗(yàn)證起步!

    控制器。本次測(cè)試我們將被控部分(真實(shí)移相全橋功率板和EasyGo實(shí)時(shí)仿真器NetBox)的參數(shù)配置調(diào)整一致,可以看到仿真設(shè)備在觀測(cè)參數(shù)上與真實(shí)設(shè)備表現(xiàn)一致,誤差較小。 也就是說,Ea
    發(fā)表于 05-16 11:35

    【分享】基于Easygo仿真平臺(tái)的三電機(jī)實(shí)時(shí)仿真測(cè)試應(yīng)用

    算法效果的前期仿真評(píng)估及算法或控制器參數(shù)設(shè)計(jì)及仿真驗(yàn)證,可以很大程度上減少系統(tǒng)開發(fā)周期及成本。對(duì)多電機(jī)同步控制系統(tǒng)進(jìn)行實(shí)時(shí)
    發(fā)表于 04-09 16:49

    快速控制原型RCP與硬件在環(huán)仿真HIL該如何區(qū)分呢?

    控制器軟件開發(fā)的V流程中,有兩個(gè)需要通過實(shí)時(shí)仿真完成的重要環(huán)節(jié),即快速控制原型(RCP)與硬件在環(huán)仿真
    的頭像 發(fā)表于 02-23 10:32 ?1091次閱讀
    快速<b class='flag-5'>控制</b>原型RCP與硬件在環(huán)<b class='flag-5'>仿真</b><b class='flag-5'>HIL</b>該如何區(qū)分呢?

    【分享】EasyGo 鏈?zhǔn)絊VG系統(tǒng)的實(shí)時(shí)仿真應(yīng)用

    步長(zhǎng)1e-4,另外一塊FPGA 用來做脈沖發(fā)生,這樣,我們利用PXIBox的多FPGA并行的獨(dú)特優(yōu)勢(shì),一臺(tái)PXIBox即可完成HIL+RCP的半實(shí)物放著驗(yàn)證,控制系統(tǒng)和電路仿真系統(tǒng)通過
    發(fā)表于 02-21 17:31

    詳解快速控制原型RCP與硬件在環(huán)仿真HIL

    控制器軟件開發(fā)的V流程中,有兩個(gè)需要通過實(shí)時(shí)仿真完成的重要環(huán)節(jié),即快速控制原型(RCP)與硬件在環(huán)仿真(
    的頭像 發(fā)表于 01-19 13:41 ?1356次閱讀
    詳解快速<b class='flag-5'>控制</b>原型RCP與硬件在環(huán)<b class='flag-5'>仿真</b><b class='flag-5'>HIL</b>

    如何理解實(shí)時(shí)仿真

    實(shí)時(shí)仿真?硬件在環(huán)?RCP?HIL...這些詞是否還有些傻傻分不清呢?本期將帶大家走近實(shí)時(shí)
    的頭像 發(fā)表于 01-16 10:34 ?982次閱讀