国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

自動駕駛仿真:基于Carsim開發(fā)的加速度請求模型

這篇具有很好參考價值的文章主要介紹了自動駕駛仿真:基于Carsim開發(fā)的加速度請求模型。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。


前言

1、自動駕駛行業(yè)中,算法端對于縱向控制的功能預留接口基本都是加速度,我們需要給控制器仿真加速度的信號,控制器才會實現對縱向功能的控制。

2、Carsim或者其他動力學軟件,主要提供者節(jié)氣門開度和主缸壓力進行控制。我們在進行聯(lián)合仿真時,往往都要通過PID的方式將請求加速度轉換成對應的節(jié)氣門開度與主缸壓力傳給動力學軟件進行閉環(huán)控制。

3、這里提供一個使用Carsim的VS Command方法定義一個加速度輸入變量,修改車輛的動力系統(tǒng)模型,然后通過PID調節(jié)變矩器扭矩和主缸壓力輸出加速度來實現這個響應接近完美的加速度模型。


一、加速度輸出變量問題澄清

問題澄清:改變動力學模型后Carsim Output接口輸出的加速度值異常
1、正常情況下Carsim的加速度輸出變量AX、AX_SM是能夠正常輸出加速度值,但是經過VS Command以及動力學模型修改之后Carsim Output接口加速度輸變量輸出值會比原值小10倍。因此需要在VS Command中定義新的加速度輸出變量來解決輸出值小10倍的問題。

2、自證Carsim Output接口輸出加速度變量比原值小10倍。首先Carsim接口和VS Command中添加加速度輸出變量,RsponAx是在VS Command定義的加速度輸出變量,本質是在VS Command獲取AX的值。

自動駕駛仿真:基于Carsim開發(fā)的加速度請求模型,HIL仿真,自動駕駛,人工智能,機器學習
自動駕駛仿真:基于Carsim開發(fā)的加速度請求模型,HIL仿真,自動駕駛,人工智能,機器學習


3、和Labview聯(lián)合仿真:通過觀察請求加速度(藍色)、正確加速度RsponAx(紅色曲線)和錯誤加速度AX(綠色曲線)就可以看出Rspon在VS Command拿的AX值是正常的,而直接從Carsim輸出接口拿的AX比原值小10倍是不正確的。

自動駕駛仿真:基于Carsim開發(fā)的加速度請求模型,HIL仿真,自動駕駛,人工智能,機器學習


4、再分析此時的速度變化情況,此時的速度變化是基于0.2g的正確加速度進行變化的,因此推斷Carsim輸出接口拿的AX 0.02g是錯誤的。
X軸300-600之間,這3秒鐘速度變化大概為21kph(圖表),由于V=at = 0.2*9.8*3 =5.88m/s,轉換成km/h為21km/h左右。因此推斷0.2g的正確加速度。

自動駕駛仿真:基于Carsim開發(fā)的加速度請求模型,HIL仿真,自動駕駛,人工智能,機器學習


二、配置Carsim動力學模型

1、配置車輛模型

自動駕駛仿真:基于Carsim開發(fā)的加速度請求模型,HIL仿真,自動駕駛,人工智能,機器學習


2、這里復制了Carsim自帶例程C-Class, Hatchback。

自動駕駛仿真:基于Carsim開發(fā)的加速度請求模型,HIL仿真,自動駕駛,人工智能,機器學習


3、修改車輛的動力系統(tǒng)模型,隨便復制一個例程并進入修改內容。

自動駕駛仿真:基于Carsim開發(fā)的加速度請求模型,HIL仿真,自動駕駛,人工智能,機器學習


4、選擇外部發(fā)動力模型和外部變矩器,從模型上看只要調整變矩器扭矩IMP_M_OUT_TC即可實現縱向加速控制,減速控制一般都是通過主缸壓力PBK_CON進行控制的。

自動駕駛仿真:基于Carsim開發(fā)的加速度請求模型,HIL仿真,自動駕駛,人工智能,機器學習

5、修改擋位參數,改成1個前進擋位

自動駕駛仿真:基于Carsim開發(fā)的加速度請求模型,HIL仿真,自動駕駛,人工智能,機器學習

改成1個前進擋位,否則速度加不上去

自動駕駛仿真:基于Carsim開發(fā)的加速度請求模型,HIL仿真,自動駕駛,人工智能,機器學習


三、配置Carsim駕駛員模型

1、老規(guī)矩隨便復制一個例程

自動駕駛仿真:基于Carsim開發(fā)的加速度請求模型,HIL仿真,自動駕駛,人工智能,機器學習


2、駕駛員模型配置
1)配置概覽

自動駕駛仿真:基于Carsim開發(fā)的加速度請求模型,HIL仿真,自動駕駛,人工智能,機器學習


2)節(jié)氣門開度加初始速度控制,但是由于我們修改了模型我們加速不控制THROTTLE_ENGINE,我們直接在VS Command控制變矩器扭矩IMP_M_OUT_TC。

自動駕駛仿真:基于Carsim開發(fā)的加速度請求模型,HIL仿真,自動駕駛,人工智能,機器學習


3)初始剎車主缸壓力為0MP,在VS Command控制變量為PBK_CON。

自動駕駛仿真:基于Carsim開發(fā)的加速度請求模型,HIL仿真,自動駕駛,人工智能,機器學習


4)開閉環(huán)的檔位控制(-1:倒擋 0:空擋 1-6:前進擋),在VS Command控制變量為MODE_TRANS。

自動駕駛仿真:基于Carsim開發(fā)的加速度請求模型,HIL仿真,自動駕駛,人工智能,機器學習

5)最后配置一個Run就行,Forever或者時間都行。

自動駕駛仿真:基于Carsim開發(fā)的加速度請求模型,HIL仿真,自動駕駛,人工智能,機器學習


四、添加VS Command代碼

重頭戲:VS Command,相當于Carsim開放的腳本編寫命令行,直接上腳本,我就不對腳本的每一句內容進行解析了,有興趣的結合官方文檔VS Command分析。

1、配置Carsim VS Command
自動駕駛仿真:基于Carsim開發(fā)的加速度請求模型,HIL仿真,自動駕駛,人工智能,機器學習


2、將下面腳本復制進VS Command中去

自動駕駛仿真:基于Carsim開發(fā)的加速度請求模型,HIL仿真,自動駕駛,人工智能,機器學習

!Define vehicle forward related variables
define_variable CumErr_TC 0
define_variable CumErr_BK 0
define_variable CurErr 0
define_variable Torque_TC 0
define_variable PCON_BK 0

!Define vehicle reverse related variables
define_variable RCumErr_TC 0
define_variable RCumErr_BK 0
define_variable RCurErr 0
define_variable RTorque_TC 0
define_variable RPCON_BK 0

!Define driver Behavior variables
define_variable ForwardFlag 0
define_variable ReverseFlag 0

!Add Brake master cylinder pressure
!Add shaft torque of torque converter
IMP_PCON_BK VS_add 0
IMP_M_OUT_TC VS_add 0

!Define PID related parameter
define_parameter P_TC 0.5
define_parameter I_TC 0.2
define_parameter D_TC 0.0
define_parameter P_BK 0.5
define_parameter I_BK 0.005
define_parameter D_BK 0.000

!Define Operating cycle
define_parameter DeltaT 0.001

!Define Input/Output variables
define_import IMP_TargetAX 0
define_import IMP_TargetBk 0
define_import IMP_ConMode 0
define_output RsponAx

!Select Froward or Reverse
EQ_IN ForwardFlag = GE(IMP_TargetAX,0)
EQ_IN ReverseFlag = LE(IMP_TargetAX,0)

!Caiculate Current Error and Cumulative error
EQ_OUT CurErr= IMP_TargetAX - AX
EQ_OUT RCurErr= AX -  IMP_TargetAX
EQ_OUT CumErr_TC = IF_GT_0_THEN(ForwardFlag,CumErr_TC+CurErr,0)
EQ_OUT RCumErr_TC = IF_GT_0_THEN(ReverseFlag,RCumErr_TC+RCurErr,0)
EQ_OUT CumErr_BK = IF_NOT_0_THEN(ForwardFlag,0,CumErr_BK+CurErr)
EQ_OUT RCumErr_BK = IF_NOT_0_THEN(ReverseFlag,0,RCumErr_BK+CurErr)

!Forward PID(Torque)
EQ_IN Torque_TC = P_TC*CurErr+I_TC*CumErr_TC+D_TC*CurErr/DeltaT
EQ_IN Torque_TC = IF_GT_0_THEN(Torque_TC, Torque_TC,0)
EQ_IN Torque_TC = IF_GT_0_THEN(ForwardFlag,Torque_TC,0)

!Reverse PID(Torque) 
EQ_IN RTorque_TC = P_TC*RCurErr+I_TC*RCumErr_TC+D_TC*RCurErr/DeltaT
EQ_IN RTorque_TC = IF_GT_0_THEN(RTorque_TC, RTorque_TC,0)
EQ_IN RTorque_TC = IF_GT_0_THEN(ReverseFlag,RTorque_TC,0)

!Forward or backward depending on the transmission mode
EQ_IN IMP_M_OUT_TC = IF_GT_0_THEN(GE(ModeTran, 0), Torque_TC, RTorque_TC)
EQ_IN IMP_M_OUT_TC = IF_GT_0_THEN(EQ(ModeTran, 0), 0 , IMP_M_OUT_TC)
EQ_IN IMP_M_OUT_TC = IF_GT_0_THEN(IMP_ConMode, 0 , IMP_M_OUT_TC)

!Forward PID(Brake)
EQ_IN PCON_BK = -(P_BK*CurErr+I_BK*CumErr_BK+D_BK*CurErr/DeltaT)
EQ_IN PCON_BK = IF_GT_0_THEN(PCON_BK-15, 15, PCON_BK)
EQ_IN PCON_BK = IF_GT_0_THEN(PCON_BK, PCON_BK,0)
EQ_IN PCON_BK = IF_NOT_0_THEN(ForwardFlag,0,PCON_BK)*1e6
EQ_IN PCON_BK = IF_NOT_0_THEN(IMP_TargetBk,IMP_TargetBk,PCON_BK)

!Reverse PID(Brake) 
EQ_IN RPCON_BK = P_BK*CurErr+I_BK*CumErr_BK + D_BK*CurErr/DeltaT
EQ_IN RPCON_BK = IF_GT_0_THEN(RPCON_BK-15, 15, RPCON_BK)
EQ_IN RPCON_BK = IF_NOT_0_THEN(IMP_TargetBk, IMP_TargetBk,RPCON_BK)
EQ_IN RPCON_BK = IF_GT_0_THEN(GE(ModeTran,0), RPCON_BK,0)
EQ_IN RPCON_BK = IF_GT_0_THEN(RPCON_BK, RPCON_BK,0)*1e6

!Acceleration braking or direct braking depending on the mode
EQ_IN IMP_PCON_BK = IF_GT_0_THEN(GE(ModeTran, 0), PCON_BK, RPCON_BK)
EQ_IN IMP_PCON_BK = IF_GT_0_THEN(IMP_ConMode, IMP_TargetBk, IMP_PCON_BK)

!if ModeTran=0,Clear accumulated error
EQ_OUT CumErr_TC = IF_GT_0_THEN(EQ(ModeTran, 0),0,CumErr_TC)
EQ_OUT RCumErr_TC = IF_GT_0_THEN(EQ(ModeTran, 0),0,RCumErr_TC)
EQ_OUT CumErr_BK = IF_GT_0_THEN(EQ(ModeTran, 0),0,CumErr_BK)
EQ_OUT RCumErr_BK = IF_GT_0_THEN(EQ(ModeTran, 0),0,RCumErr_BK)

EQ_OUT RsponAx= AX

我在腳本中定義了新的接口變量:

!Define Input/Output variables
define_import IMP_TargetAX 0     !IMP_TargetAX是外部請求的加速度接口。
define_import IMP_TargetBk 0     !IMP_TargetBk是外部請求的主缸壓力,一般通過給減速度就可以控制,這里開放了手動減速 的方法。
define_import IMP_ConMode 0      !IMP_ConMode自動模式0或者手動模式1,自動模式通過加速度控制減速,手動模式發(fā)送IMP_TargetBk值進行減速,默認自動模式。
define_output RsponAx 0          !RsponAx定義新的加速度輸出接口,Carsim端的加速度接口AX比原值小10倍,因此使用RsponAx作為加速度響應。

五、Run Control聯(lián)合仿真

1、這里使用的Labiew,大家可以用Simulink聯(lián)合仿真。

自動駕駛仿真:基于Carsim開發(fā)的加速度請求模型,HIL仿真,自動駕駛,人工智能,機器學習


2、添加輸入變量

自動駕駛仿真:基于Carsim開發(fā)的加速度請求模型,HIL仿真,自動駕駛,人工智能,機器學習


3、添加輸出變量

自動駕駛仿真:基于Carsim開發(fā)的加速度請求模型,HIL仿真,自動駕駛,人工智能,機器學習


4、Send to Labview

自動駕駛仿真:基于Carsim開發(fā)的加速度請求模型,HIL仿真,自動駕駛,人工智能,機器學習


六、加速度模型效果驗證

1、層疊曲線顯示所有變量

自動駕駛仿真:基于Carsim開發(fā)的加速度請求模型,HIL仿真,自動駕駛,人工智能,機器學習


2、前進擋:請求加速度與響應加速度曲線(擋位給1,加速度值給正值)

自動駕駛仿真:基于Carsim開發(fā)的加速度請求模型,HIL仿真,自動駕駛,人工智能,機器學習


3、后退擋:請求加速度與響應加速度曲線(擋位給-1,加速度值給負值)

自動駕駛仿真:基于Carsim開發(fā)的加速度請求模型,HIL仿真,自動駕駛,人工智能,機器學習


綜上,完成加速度模型搭建,模型可能還有點小缺陷,大神們可以指導一下,如有問題及時溝通。文章來源地址http://www.zghlxwxcb.cn/news/detail-669348.html

到了這里,關于自動駕駛仿真:基于Carsim開發(fā)的加速度請求模型的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!

本文來自互聯(lián)網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • 基于單片機設計的電子指南針(LSM303DLH模塊(三軸磁場 + 三軸加速度)

    基于單片機設計的電子指南針(LSM303DLH模塊(三軸磁場 + 三軸加速度)

    本項目是基于單片機設計的電子指南針,主要利用STC89C52作為主控芯片和LSM303DLH模塊作為指南針模塊。通過LCD1602液晶顯示屏來展示檢測到的指南針信息。 在日常生活中,指南針是一種非常實用的工具,可以幫助我們確定方向,特別是在戶外探險、航海、定位等場景中。傳統(tǒng)的

    2024年02月04日
    瀏覽(26)
  • 怎么加速網速?如何加速網絡下載速度真正提高網速

    怎么加速網速?我們經常在下載東西的時候,會覺得網速很不給力。其實這不僅關系到你的帶寬,還關系到你的電腦。下面我介紹一個比較適合新手的方法,使我們計算機發(fā)揮到最佳下載模式。達到寬帶最大利用率。 軟媒魔方電腦大師 V6.25 綠色免費版 類型: 系統(tǒng)增強 大小:

    2024年02月07日
    瀏覽(29)
  • 跑出創(chuàng)新加速度,AI基礎軟件成AIGC產業(yè)發(fā)展加速器

    跑出創(chuàng)新加速度,AI基礎軟件成AIGC產業(yè)發(fā)展加速器

    2023年中國國際服務貿易交易會(以下簡稱“服貿會”)受世界矚目正在火熱進行,9月4日,服貿會專題論壇之“2023中國AIGC創(chuàng)新發(fā)展論壇” 在大會期間成功舉辦, 九章云極DataCanvas公司副總裁周曉凌受邀出席論壇,并發(fā)表題為“AI基礎軟件促進大模型與AIGC應用快速發(fā)展”的精

    2024年02月09日
    瀏覽(26)
  • [足式機器人]Part3 機構運動學與動力學分析與建模 Ch00-5 剛體的加速度與角加速度

    本文僅供學習使用,總結很多本現有講述運動學或動力學書籍后的總結,從矢量的角度進行分析,方法比較傳統(tǒng),但更易理解,并且現有的看似抽象方法,兩者本質上并無不同。 2024年底本人學位論文發(fā)表后方可摘抄 若有幫助請引用 本文參考: . 食用方法 求解邏輯:速度與

    2024年01月25日
    瀏覽(25)
  • ABB、FANUC機器人點位加速度用法

    ABB、FANUC機器人點位加速度用法

    機器人在點位與點位之間的運動,會存在速度上的變化,加速度指令的添加可以減小機器人在運動中,由高速到低速間慣性的帶來的影響,修正機器人的路徑誤差,讓機器人的運動更加順滑。 ABB機器人加速度指令為ACCSET指令 ACCSET指令中的第一個參數是設置加速度,第二個參

    2024年04月16日
    瀏覽(64)
  • 無線傳感器基礎:獲取手機傳感器、加速度

    無線傳感器基礎:獲取手機傳感器、加速度

    一些實驗過程中的疑問: 如何知道設備上有哪些傳感器? 如果手機不支持的傳感器,程序運行往往不會拋出異常,只是無法獲得傳感器傳回的數據。那么如何知道設備上有哪些傳感器可用呢?有兩種方式,一種是直接方式,一種是間接方式。直接方式就是遍歷獲取得到傳感

    2024年02月02日
    瀏覽(37)
  • 【STM32 CubeMX】adxl345加速度傳感器

    【STM32 CubeMX】adxl345加速度傳感器

    提示:文章寫完后,目錄可以自動生成,如何生成可參考右邊的幫助文檔 本篇文章使用I2C進行通信 在嵌入式系統(tǒng)中,加速度傳感器是一種常見的傳感器,用于檢測物體的加速度或者傾斜角度。ADXL345是一款常用的數字三軸加速度傳感器,由ADI(Analog Devices)公司制造。它具有

    2024年02月21日
    瀏覽(22)
  • 「實在RPA·煙草數字員工」助力煙草行業(yè)數字化轉型加速度

    「實在RPA·煙草數字員工」助力煙草行業(yè)數字化轉型加速度

    煙草行業(yè)作為煙草產業(yè)鏈上重要一環(huán),外部連接煙草工業(yè)企業(yè)、零售客戶、消費者,內部包含營銷、專賣、煙葉、物流等諸多業(yè)務,信息系統(tǒng)眾多,企業(yè)數據量龐大。因此,清楚地了解自身存在的痛點,找到適合自身業(yè)務需求的轉型路徑,搭建一個高適配的靈活全面的數字化

    2024年02月06日
    瀏覽(46)
  • SC7A20 三軸加速度傳感器 驅動

    SC7A20 三軸加速度傳感器 驅動

    使用的時候需要找對文檔,之前文檔不對,導致讀取的數據計算角度一直不成功,發(fā)現要關閉高通濾波,由于高通濾波寄存器里面的濾波閾值沒有文檔說明,我直接關閉掉就可以使用了,代碼與硬件平臺無關,需要底層IIC接口支持,軟件IIC或HC32的硬件IIC可以查閱我其他博客;

    2024年02月11日
    瀏覽(23)
  • SC7A20(士蘭微-加速度傳感器)示例

    SC7A20(士蘭微-加速度傳感器)示例

    ????????做個筆錄,最近項目使用了此款gsensor,實現了簡單示例 ????????硬件平臺(RTL8762DK) ????????IDE:keil5.29 1、原理圖 ? ?1、sc7a20.h ? 2、sc7a20.c

    2024年02月16日
    瀏覽(21)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包