两个人做人爱视频免费,97久久精品人人搡人妻人人玩,欧洲精品码一区二区三区,999zyz玖玖资源站永久

我要投稿 投訴建議

基于dSPACE 的嵌入式車輛動力學仿真平臺開發(fā)的探究論文

時間:2021-02-26 10:36:32 畢業(yè)論文范文 我要投稿

基于dSPACE 的嵌入式車輛動力學仿真平臺開發(fā)的探究論文

  1 嵌入式車輛動力學仿真平臺介紹

基于dSPACE 的嵌入式車輛動力學仿真平臺開發(fā)的探究論文

  國際上,嵌入式車輛動力學仿真平臺主要有CarSim、veDYNA 和ASM。CarSim 是美國MSC 公司開發(fā)的車輛動力學仿真平臺,CarSim 模型在計算機上運行的速度比實時快3~6 倍,可以仿真車輛對駕駛員、路面及空氣動力學輸入的響應,主要用來預測和仿真汽車整車的操縱穩(wěn)定性、制動性、平順性、動力性和經濟性,其中的CarSim RT 模塊是CarSim模型專用于嵌入式實時仿真的模塊,可嵌入多種實時仿真系統,如NI、dSPACE、ETAS、opal-RT 等實時仿真系統,提供與一些實時硬件系統的接口,滿足軟硬件在環(huán)仿真平臺的要求。veDYNA 是德國Te?sis 公司開發(fā)的車輛動力學仿真平臺,以Matlab/Simulink 為開發(fā)環(huán)境,整個模型或模型組件通過C代碼編寫,并以s-function 形式嵌入到Matlab/Simu?link 程序環(huán)境中,主要用于汽車性能分析,車輛動力學、部件控制單元測試,控制算法開發(fā)與測試,可嵌入各種實時仿真系統(ADI、ETAS、NI、Opal-RT和xPC)。ASM 是dSPACE 公司基于Simuik 開發(fā)的車輛動力學仿真平臺,主要應用于發(fā)動機控制系統、汽車控制系統、車載電子設備和駕駛輔助系統的測試和研發(fā),ASM 能夠很好地運行在dSPACE 實時仿真系統。

  國外已經實現了車輛動力學模型嵌入到實時硬件系統中,目前國內文獻對此還沒有論述。吉林大學汽車仿真與控制國家重點實驗室經過10多年的研究,研發(fā)了基于總成特性的實時車輛動力學模型(State Key Laboratory of Automotive Simulation and Con?trol,簡稱ASCL),模型在PC 機上(主頻3.0G)運行速度是仿真時間的5 倍左右,滿足了實時仿真要求。經仿真驗證,精度到90 %以上,并且可實現制動到0、大滑移等極限工況的仿真,可用于電子系統的仿真驗證。

  針對上述問題,本文研究了基于ASCL 車輛動力學模型嵌入到dSPACE 環(huán)境時的一些關鍵技術;研究了dSPACE 環(huán)境下模型的運行控制方法,闡述了在嵌入式平臺模型上的參數賦值方法,再次開發(fā)了便于應用的操作界面;通過典型工況檢驗了動力學模型側向加速度和橫擺角速度的一致性,實現了車輛動力學嵌入式仿真平臺的'開發(fā)。

  2 dSPACE 環(huán)境下ASCL 運行控制方法研究

  2.1 目標代碼的生成方法

  ASCL 基于ANSI C 語言開發(fā),其仿真精度達90 %,由簧載質量系統、非簧載質量系統、轉向系統、懸架系統、車輪系統、動力傳動系統和制動系統7 大系統構成,在開發(fā)過程中將其劃分為7個大的功能模塊,每個大的功能模塊下又劃分為很多小的功能模塊,各模塊都獨立開發(fā)。

  dSPACE 實時硬件仿真系統采用了GCC 編譯器,同時又區(qū)別于普通的GCC 編譯器,在PC 機環(huán)境下,需要在編譯批處理文件時使用帶有dSPACE 標識的指令x86-gcc,然后調用指令x86-ar 生成目標庫文件。為了提高ASCL 代碼的運行效率,在編譯中使用-O2命令進行代碼優(yōu)化。

  2.2 仿真控制方法

  ASCL 仿真過程的控制主要分為初始化和運行控制。本文利用DS1006 RTLib 提供的函數編寫控制程序(ControlFunction.c)以驅動dSPACE 實時硬件對ASCL進行仿真控制,利用基于時鐘D 中斷的初始化控制和基于時鐘A中斷的仿真運行控制。

  2.2.1 基于時鐘D中斷的初始化

  ASCL 為用戶提供了Preset、Initialize、Simulate、Terminate 等4 個函數,其中Preset 函數主要讀取模型參數文件,將參數值賦給模型各大系統;Initialize函數主要實現車輛初始狀態(tài)的確定即給變量賦初值,實現初始狀態(tài)的平衡;Simulate 函數實現對各功能模塊進行迭代仿真運算,計算模型的輸出;Ter?minate 函數主要是釋放在仿真過程中Preset 函數開辟的內存。

  為了實現ASCL 的正確運行,本文采用時鐘D 中斷來實現模型的初始化。首先,利用dSPACE 提供的函數ds1006_init()完成對DS1006 板的初始化,用以啟動dSPACE;利用函數ds1006_start_isr_timerD(DTD,timerD_interrupt)開啟時鐘D中斷,其中該函數含有時鐘D 中斷的周期(DTD)與中斷服務程序(timerD_in?terrupt)兩個參數,在觸發(fā)時鐘D 中斷時,在中斷服務程序中完成ASCL 的初始化和參數賦值;利用函數RTLIB_BACKGROUND_SERVICE() 開啟后臺服務程序,后臺服務程序必須在實時硬件上循環(huán)執(zhí)行,這樣才能以一定的周期執(zhí)行時鐘D 中斷,不斷進行仿真控制。

  時鐘D中斷服務程序以設定的中斷周期運行,當參數文件準備好時,通過自定義的函數ncode 和Pre?setState 來判斷,只有當函數ncode=NULL 且Preset?State=0 兩個條件同時滿足時,才能利用Preset 函數將準備好的參數文件中的參數傳遞給車輛動力學模型,然后通過Initialize 函數使其初始化,初始化成功后關閉時鐘D。

  2.2.2 基于時鐘A中斷的仿真控制

  當模型完成初始化后,啟動時鐘A中斷服務程序來完成車輛動力學模型的實時運算。時鐘A 中斷服務程序以設定的周期運行,通過控制一個時鐘周期推動車輛動力學模型運算一個仿真步長來控制動力學模型的仿真。首先開啟時鐘A 過載檢測,用于判斷仿真計算時長是否超過中斷周期,當中斷服務程序的執(zhí)行時間超過中斷周期時,則中斷服務程序結束。通過自定義函數SimState 的值判斷模型仿真狀態(tài),其中,當SimState=0 時,表明是停止狀態(tài),執(zhí)行動力學模型的中止函數Terminate;當SimState=1 時,表明是暫停狀態(tài),動力學模型暫停;當SimState=2 時,表明是運行狀態(tài)。同時,通過自定義函數time_simulate 計算仿真運行時間,若未達到仿真結束時間,則周期執(zhí)行動力學模型函數Simulate,實現模型迭代仿真運算;若仿真狀態(tài)到達設定的仿真時間,則執(zhí)行模型中止函數Terminate,關閉時鐘A 中斷。

  在進行中斷控制設置時,應避免時鐘A 和時鐘D同時處于運行狀態(tài),因為兩者優(yōu)先級相同,所以在時鐘D 運行之前需要先關閉時鐘A,同理,在時鐘A 運行之前需要先關閉時鐘D,否則只能等待一個時鐘周期運行完才能執(zhí)行下一個中斷服務,不利于提高運行效率。

  2.3 動力學模型下載方法

  動力學模型在實時仿真系統運行時,需要從上位機下載到實時仿真系統。本文利用dSPACE 提供的makefile 文件將開發(fā)的控制程序ControlFunction.c、動力學模型*.a庫文件以及相應的頭文件組成一個統一的整體,其中makefile 文件中需要設置添加控制程序ControlFunction.c,同時添加.a 庫文件,庫文件中開放了控制程序ControlFunction.c 調用的4個函數,然后在批處理文件中使用dSPACE 提供的“down1006”指令將makefile 文件下載到dSPACE 中,完成動力學模型控制平臺的開發(fā)。

  3 動力學模型的參數賦值

  ASCL 中的preset 函數可以通過解析一個參數文件來給模型參數賦值,在dSPCE 實時仿真系統環(huán)境下,需要將參數文件下載到dSPCE,并將參數文件的存儲首地址傳遞給解析函數。本文CLIB 函數實現參數的傳遞過程,定義了指針變量ParFile 來傳遞地址,當ASCL 在dSPACE 環(huán)境下運行時,首先將在PC 機內存中的參數文件復制到dSPACE 內存中,然后將參數文件在dSPACE 內存的首地址傳遞給preset 函數中的ParFile 變量,完成動力學模型的參數賦值。

  CLIB 是實時硬件dSPACE 提供的一套PC 機與dSPACE 實時處理器通訊的接口函數集,CLIB 建立了PC機與dSPACE處理器內存之間的通信。本次采用CLIB 提供的函數對dSPACE 內存進行訪問。

  dS1006 板卡處理包括利用函數DS_regis?ter_host_app 注冊應用程序、DS_board_index 獲得板卡號,從而將參數文件傳遞到該板內存;參數文件在PC 機上的處理包括獲取參數大小、在PC 機上分配內存、將參數文件傳遞到分配的內存上;參數文件在dSPACE 上的處理包括利用函數DS_alloc_mem 在dSPACE 上開辟內存、DS_write_8 函數將PC 機內存上的參數文件寫入到dSPACE 的內存上、DS_get_var_addr 獲取模型中存儲參數文件首地址的指針變量、把dSPACE 內存中參數文件首地址賦值給指針變量。

  4 仿真控制平臺界面設計

  為了方便測試和工程應用,開發(fā)了仿真平臺界面控制模型的下載、監(jiān)控和仿真控制,界面編寫采用了LabWindows 語言。LabWindows/CVI 軟件是在C 語言環(huán)境下開發(fā)的軟件界面,可以通過LabWindows 對CLIB庫函數的調用,完成仿真平臺界面開發(fā)。

  仿真平臺界面主要包括輸入、輸出設置和運行狀態(tài)控制3 部分,其中,模型輸入設置主要完成動力學模型的下載和參數賦值控制,該部分中首先通過路徑瀏覽完成mkfile 文件的選擇,下載mkfile 文件,然后通過路徑瀏覽完成參數文件的選擇和下載;模型輸出設置顯示當前時刻的仿真運行車速,以監(jiān)控模型運行;模型運行狀態(tài)控制實現模型的運行、暫停、停止功能,另外,StopRTP 將dSPACE 內存中的動力學模型清除,Quit 實現退出ControlDesk應用界面。

  5 仿真驗證

  為了驗證模型的運行情況,分別對模型的仿真運行時間和車輛雙移線工況進行了仿真驗證。設置ASCL 的仿真步長為1 ms,當動力學模型下載到dSPACE 的DS1006中運行時,其每步平均仿真實測時間為0.18ms 左右,模型運行時間占設定時間的18 %,滿足實時仿真要求。

  定義了雙移線仿真工況,通過Controldesk 監(jiān)測模型側向加速度和橫擺角速度的運算結果,并將該仿真結果與離線仿真結果對比,驗證了車輛動力學模型在兩種仿真平臺下側向加速度和橫擺角速度的一致性,以及仿真控制策略的可行性和正確性。

  6 結束語

  開發(fā)了基于dSPACE 的嵌入式車輛動力學仿真平臺,主要完成以下方面的工作:

  a. 利用dSPACE 的GCC 編譯器在PC 機下完成了目標代碼的生成;

  b. 利用dSPACE 自帶的RTLib 函數,基于時鐘A和D中斷實現了動力學模型的初始化和仿真控制;

  c. 利用dSPACE 自帶的Clib 函數完成了動力學模型的參數賦值;

  d. 驗證了ASCL 在dSPACE 嵌入式仿真平臺和離線仿真平臺下側向加速度和橫擺角速度的一致性,以及仿真控制策略的可行性和正確性。

【基于dSPACE 的嵌入式車輛動力學仿真平臺開發(fā)的探究論文】相關文章:

《路史》的寫作特征探究論文07-29

基于學情的中職計算機基礎分層教學探究12-18

嵌入式軟件開發(fā)個人簡歷模板05-23

關于教師備課探究開題報告的論文07-24

電磁型磁懸浮列車動力學論文的參考文獻09-27

高中英語寫作教學探究的論文06-19

小學語文寫作教學探究論文04-03

基于核心素養(yǎng)的英語寫作教學策略論文09-29

基于英漢對比的大學英語寫作教學方案研究論文12-12

《基于導納的圖像加密算法的研究》論文的參考文獻09-25

主站蜘蛛池模板: 贵南县| 手机| 杭州市| 盐津县| 桂东县| 苍山县| 白朗县| 保靖县| 隆子县| 镶黄旗| 英山县| 江西省| 清水县| 尉氏县| 江孜县| 吴堡县| 宁蒗| 永春县| 海兴县| 黄浦区| 正阳县| 双峰县| 福泉市| 兖州市| 余姚市| 南岸区| 溆浦县| 江门市| 大丰市| 娄底市| 屏东市| 湟中县| 双鸭山市| 图木舒克市| 巫溪县| 阜阳市| 永年县| 大田县| 仪陇县| 丹棱县| 商城县|