日韩成人黄色,透逼一级毛片,狠狠躁天天躁中文字幕,久久久久久亚洲精品不卡,在线看国产美女毛片2019,黄片www.www,一级黄色毛a视频直播

汽車控制器開發(fā)軟件的在環(huán)測試方法

文檔序號(hào):9524117閱讀:720來源:國知局
汽車控制器開發(fā)軟件的在環(huán)測試方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及汽車電子領(lǐng)域,特別是涉及一種汽車控制器開發(fā)軟件的在環(huán)測試方 法。
【背景技術(shù)】
[0002] 汽車控制器研發(fā)算法建模(浮點(diǎn)模型)完成后,對(duì)算法模型進(jìn)行定標(biāo)處理得到定 點(diǎn)模型,然后利用美國邁斯沃克(MathWorks)公司開發(fā)的工業(yè)標(biāo)準(zhǔn)建模工具M(jìn)TLAB軟件中 的自動(dòng)代碼生成工具巧ealTimeWorkshop,RTW)或德國dSPACE公司的自動(dòng)代碼生成工具 TargetLink對(duì)定點(diǎn)模型進(jìn)行自動(dòng)代碼生成,對(duì)生成的代碼需要進(jìn)行進(jìn)一步測試,W驗(yàn)證模 型到代碼的一致性,確定模型的定標(biāo)是否準(zhǔn)確,采用軟件在環(huán)(Software-in-loop,SIL)測 試是一種有效的方式。
[0003] 傳統(tǒng)汽車控制器開發(fā)軟件在環(huán)測試方法是利用自動(dòng)代碼生成工具RTW或 TargetLink對(duì)模型生成S-化nction封裝,進(jìn)后在MATLAB環(huán)境下進(jìn)行仿真測試。傳統(tǒng)的汽 車控制器開發(fā)軟件在環(huán)測試方法具有W下缺點(diǎn):
[0004] 1.方法不夠靈活。對(duì)使用自動(dòng)代碼生成工具RTW生成的代碼和使用TargetLink 工具生成的代碼,兩者不能交互,只能在本工具下使用本工具所生成的代碼。
[0005] 2.自動(dòng)代碼生成工具RTW或TargetLink進(jìn)行S-化nction封裝的代碼并不是產(chǎn)品 級(jí)的代碼,不能很好的反映軟件在環(huán)測試結(jié)果。
[0006] 3.自動(dòng)代碼生成工具RTW進(jìn)行軟件在環(huán)測試有一定局限性,結(jié)果不夠準(zhǔn)確; TargetLink工具進(jìn)行軟件在環(huán)測試步驟比較繁瑣,使用TargetLink需要購買許可 (license),增加了成本。
[0007] 4.對(duì)手工代碼無法直接使用工具進(jìn)行軟件在環(huán)測試測試。

【發(fā)明內(nèi)容】

[0008] 本發(fā)明要解決的技術(shù)問題是提供一種對(duì)定點(diǎn)模型源代碼錄入形式無限制能直接 對(duì)產(chǎn)品級(jí)代碼進(jìn)行測試的汽車控制器開發(fā)軟件在環(huán)測試方法。所述產(chǎn)品級(jí)代碼是指能直接 應(yīng)用于產(chǎn)品的源代碼。
[0009] 為解決上述技術(shù)問題,本發(fā)明的汽車控制器開發(fā)軟件的在環(huán)測試方法,包括:
[0010] 1)取得汽車控制器定點(diǎn)模型源代碼,利用工業(yè)標(biāo)準(zhǔn)建模工具M(jìn)TLAB軟件對(duì)定點(diǎn) 模型源代碼進(jìn)行源代碼封裝形成S-化nctionC文件;
[0011] 2)在MTLAB環(huán)境下利用mex命令對(duì)S-化nctionC文件進(jìn)行編譯,生成一個(gè)與 S-化nctionC文件同名的動(dòng)態(tài)鏈接庫文件;
[0012] 3)在MATLAB環(huán)境下運(yùn)行S-化nction模塊并將S-化nction模塊名改為所述動(dòng) 態(tài)鏈接庫文件名,使S-化nction模塊與動(dòng)態(tài)鏈接庫相關(guān)聯(lián),更新模型,生成封裝源代碼的 S-function模塊;
[0013] 4)將步驟3)生成封裝源代碼的S-化nction模塊與原始浮點(diǎn)模型放在同一新建模 型中添加測試?yán)?,形成測試模型;新建模型是新建的工程;利用MTLAB軟件建模的時(shí)候首 先要打開一個(gè)空白的模型,送就相當(dāng)于一個(gè)新建的模型,然后再在送個(gè)空白的模型中加入 必要的模型W實(shí)現(xiàn)某一特定的功能。
[0014] 5)仿真測試模型得到S-化nction模塊代碼運(yùn)行結(jié)果和原始浮點(diǎn)模型運(yùn)行結(jié)果, 對(duì)上述兩種輸出結(jié)果進(jìn)行減法運(yùn)算,再對(duì)減法后的結(jié)果取絕對(duì)值,得到S-化nction模塊代 碼運(yùn)行結(jié)果相對(duì)原始浮點(diǎn)模型運(yùn)行結(jié)果的誤差。
[0015] 本發(fā)明的汽車控制器研發(fā)在環(huán)測試方法對(duì)定點(diǎn)模型源代碼錄入形式無限制(手 寫或自動(dòng)生成均可)能直接對(duì)產(chǎn)品級(jí)代碼進(jìn)行測試的汽車控制器開發(fā)軟件在環(huán)測試方法 采用本發(fā)明后,只需在MTLAB環(huán)境下對(duì)測試模型進(jìn)行仿真,即能得到S-化nction模塊代碼 運(yùn)行結(jié)果相對(duì)原始浮點(diǎn)模型運(yùn)行結(jié)果的誤差,得到仿真波形和數(shù)據(jù)。本發(fā)明的在環(huán)測試方 法避免了依賴第Η方工具,節(jié)省了成本,操作更加方便,能直接對(duì)產(chǎn)品級(jí)代碼進(jìn)行測試,結(jié) 果更具有可信性。
【附圖說明】
[0016] 下面結(jié)合附圖與【具體實(shí)施方式】對(duì)本發(fā)明作進(jìn)一步詳細(xì)的說明:
[0017] 圖1是本發(fā)明的流程示意圖,W自動(dòng)生成代碼為例。
【具體實(shí)施方式】
[0018] 本發(fā)明提供一種汽車控制器開發(fā)軟件的在環(huán)測試方法,包括:
[0019] 1)取得手動(dòng)錄入或軟件自動(dòng)生成的汽車控制器定點(diǎn)模型源代碼,利用工業(yè)標(biāo)準(zhǔn)建 模工具M(jìn)TLAB軟件對(duì)定點(diǎn)模型源代碼進(jìn)行源代碼封裝形成S-化nctionC文件;WC源代 碼封裝為例,其過程如下:
[0020] ①利用美國邁斯沃克(MathWorks)公司開發(fā)的工業(yè)標(biāo)準(zhǔn)建模工具M(jìn)TLAB軟件實(shí) 現(xiàn)對(duì)C源代碼的封裝。在MATLAB的Simulink模塊庫下打開S-化nction模塊的C文件模 板"BasicC-MEXTemplate",并另存為到工作路徑下。
[0021] ②在S-化nctionC文件下,修改代碼中的S_FUNCTI0N_NAME與該C文件名一致。
[0022] ⑨在S-化nctionC文件中的"#include"位置把要封裝的源代碼的C文件、頭文 件包含進(jìn)來,格式為"#^(:111(16<頭文件名/C文件名〉"。
[0023] ④在S-functionC文件中的初始化函數(shù)mdllnitializeSizesQ中定義輸入輸出 個(gè)數(shù)和數(shù)據(jù)類型,如定義兩個(gè)intl6形式的輸入端口代碼如下:
[0024]
[00巧]⑤在S-化nction C文件中的模型輸出函數(shù)mdlOu化utsο中定義S-化nction的輸入輸出端口與外部變量的對(duì)應(yīng)關(guān)系,首先把S-化nction的輸入信號(hào)賦給源代碼中 的輸入全局變量,然后調(diào)用源代碼中主函數(shù),最后把源代碼中的輸出全局變量的值賦給 S-function的輸出信號(hào),至此S-function C文件封裝完畢。
[0026] 2)在MATLAB環(huán)境下利用mex命令對(duì)S-化nction C文件進(jìn)行編譯,生成一個(gè)與 S-化nction C文件同名的動(dòng)態(tài)鏈接庫文件.mexw32 ;該文件用于S-化nction模塊的生成和 模型仿真。.mexw32是動(dòng)態(tài)鏈接庫文件的后綴名。
[0027] 3)在MATLAB環(huán)境下運(yùn)行S-化nction模塊并將S-化nction模塊名改為所述動(dòng) 態(tài)鏈接庫文件名,使S-化nction模塊與動(dòng)態(tài)鏈接庫相關(guān)聯(lián),更新模型,生成封裝源代碼的 S-化nction模塊;該模塊調(diào)用S-化nction C文件同名的動(dòng)態(tài)鏈接庫文件,用于后面的建模 仿真。
[0028] 4)將步驟3)生成封裝源代碼的S-化nction模塊與原始浮點(diǎn)模型放在同一新建模 型中添加測試?yán)?,形成測試模型;添加的測試?yán)鶕?jù)測試需求設(shè)置,例如接口、信宿等模塊。
[0029] 5)仿真測試模型得到S-化nction模塊代碼運(yùn)行結(jié)果和原始浮點(diǎn)模型運(yùn)行結(jié)果, 利用MTLAB庫中加減法模塊Add對(duì)上述兩種輸出結(jié)果進(jìn)行減法運(yùn)算,再利用MTLAB庫中 的取絕對(duì)值模塊abs對(duì)減法后的結(jié)果取絕對(duì)值,得到S-化nction模塊代碼運(yùn)行結(jié)果相對(duì)原 始浮點(diǎn)模型運(yùn)行結(jié)果的誤差,即軟件在環(huán)測試結(jié)果。若兩者誤差小于等于設(shè)計(jì)需求則完成 汽車控制器開發(fā)軟件研發(fā),若兩者誤差大于設(shè)計(jì)需求則進(jìn)行調(diào)試修改后再次進(jìn)行本發(fā)明在 環(huán)測試。
[0030] W上通過【具體實(shí)施方式】和實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)的說明,但送些并非構(gòu)成對(duì) 本發(fā)明的限制。在不脫離本發(fā)明原理的情況下,本領(lǐng)域的技術(shù)人員還可做出許多變形和改 進(jìn),送些也應(yīng)視為本發(fā)明的保護(hù)范圍。
【主權(quán)項(xiàng)】
1. 一種汽車控制器開發(fā)軟件的在環(huán)測試方法,其特征是,包括: 1) 取得汽車控制器定點(diǎn)模型源代碼,利用工業(yè)標(biāo)準(zhǔn)建模工具M(jìn)ATLAB軟件對(duì)定點(diǎn)模型 源代碼進(jìn)行源代碼封裝形成S-functionC文件; 2) 在MATLAB環(huán)境下利用mex命令對(duì)S-functionC文件進(jìn)行編譯,生成一個(gè)與 S-functionC文件同名的動(dòng)態(tài)鏈接庫文件; 3) 在MATLAB環(huán)境下運(yùn)行S-function模塊并將S-function模塊名改為所述動(dòng)態(tài) 鏈接庫文件名,使S-function模塊與動(dòng)態(tài)鏈接庫相關(guān)聯(lián),更新模型,生成封裝源代碼的 S-function模塊; 4) 將步驟3)生成封裝源代碼的S-function模塊與原始浮點(diǎn)模型放在同一新建模型中 添加測試?yán)?,形成測試模型; 5) 仿真測試模型得到S-function模塊代碼運(yùn)行結(jié)果和原始浮點(diǎn)模型運(yùn)行結(jié)果,對(duì)上 述兩種輸出結(jié)果進(jìn)行減法運(yùn)算,再對(duì)減法后的結(jié)果取絕對(duì)值,得到S-function模塊代碼運(yùn) 行結(jié)果相對(duì)原始浮點(diǎn)模型運(yùn)行結(jié)果的誤差,即軟件在環(huán)測試結(jié)果。
【專利摘要】本發(fā)明公開了一種汽車控制器開發(fā)軟件的在環(huán)測試方法,包括:取得汽車控制器定點(diǎn)模型源代碼封裝形成S-function?C文件;對(duì)S-function?C文件進(jìn)行編譯生成與S-function?C文件同名的動(dòng)態(tài)鏈接庫文件;將S-function模塊名改為所述動(dòng)態(tài)鏈接庫文件名,生成封裝源代碼的S-function模塊;將封裝源代碼的S-function模塊與原始浮點(diǎn)模型放在同一新建模型中添加測試?yán)纬蓽y試模型;仿真測試模型得到S-function模塊代碼運(yùn)行結(jié)果和原始浮點(diǎn)模型運(yùn)行結(jié)果,對(duì)上述兩種輸出結(jié)果進(jìn)行減法運(yùn)算,再對(duì)減法后的結(jié)果取絕對(duì)值,得到S-function模塊代碼運(yùn)行結(jié)果相對(duì)原始浮點(diǎn)模型運(yùn)行結(jié)果的誤差。本發(fā)明的在環(huán)測試方法避免了依賴第三方工具,節(jié)省了成本,操作更加方便,能直接對(duì)產(chǎn)品級(jí)代碼進(jìn)行測試,結(jié)果更具有可信性。
【IPC分類】G06F11/36
【公開號(hào)】CN105279081
【申請(qǐng)?zhí)枴緾N201410333438
【發(fā)明人】夏洪濤, 鄭鴻云, 王靜
【申請(qǐng)人】聯(lián)創(chuàng)汽車電子有限公司
【公開日】2016年1月27日
【申請(qǐng)日】2014年7月14日
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1