999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

AMT控制軟件測試平臺開發

2016-08-12 06:50:31孫名揚趙彬陳志新曹珊中國第一汽車股份有限公司技術中心長春130011
汽車技術 2016年7期
關鍵詞:程序模型

孫名揚 趙彬 陳志新 曹珊(中國第一汽車股份有限公司技術中心,長春 130011)

?

AMT控制軟件測試平臺開發

孫名揚趙彬陳志新曹珊
(中國第一汽車股份有限公司技術中心,長春 130011)

【摘要】為提高AMT C程序離線測試的效率,利用MATLAB S-Function對C程序進行集成,使用Excel進行自動化測試用例腳本編制。通過Simulink平臺對嵌入式C程序進行模型在環搭建,在項目開發前期對某款AMT控制軟件進行測試及調試。所設計開發的測試平臺通過了實際項目驗證。在一汽自主開發的多款AMT控制軟件測試中應用,形成AMT軟件測試開發平臺,有效提高了離線測試的效率和準確度。

主題詞:AMT嵌入式軟件測試Matlab

AMT是在干式離合器和齒輪變速器基礎上加裝單片機控制的自動變速系統。隨著汽車電子技術的快速發展,在AMT控制軟件開發過程中,高效快速的開發方式必不可少。一汽自主開發的9擋自動變速器就要求軟件開發測試與機械執行器、變速器同步開發。開發人員通常利用C語言進行自動變速器程序的開發,但是嵌入式編譯器測試方法復雜、無法與被控對象同時進行測試的缺點明顯,因此將C代碼嵌入到Simulink軟件平臺中進行離線測試,成為一種通用的測試方法。

1 S-Function使用原理

S-Function可以使用MATLAB?、C、C++、Ada或For?tran語言來編寫。使用MEX實用工具,將C、C++、Ada 和Fortran語言的S-Function編譯成MEX-文件,在需要的時候可與其它MEX-文件一起動態連接到Matlab中。S-Function使用一種特殊的調用格式與Simulink方程求解器相互作用,其與發生在求解器和內置Simulink塊之間的相互作用非常相似。S-Function的形式是非常通用的,且適用于連續、離散和混合系統。C程序嵌入Simulink仿真環境示意如圖1所示。

圖1 C程序嵌入Simulink仿真環境示意

2 C程序嵌入Simulink搭建方法

定義了S-function模塊的C MEX-file需要在仿真過程中向Simulink提供模型信息。在仿真過程中Simu?link、ODE求解器、MEX-file協作完成指定任務。其任務包括定義初始條件和模塊特性,計算微分、離散狀態和輸出。Simulink與C MEX-file S-function模塊的交互仍是通過S-function的回調方法,每個回調方法執行一個預定義的、實現仿真所需功能的任務。C MEX-file可以訪問并修改Simulink內部用來存儲S-function信息的數據結構。更多的回調方法和對Simulink內部數據結構的訪問能力使得C MEX-file S-function可以實現更豐富的模塊特性。S-Function內部函數回調流程如圖2所示。

圖2 S-Function內部函數回調示意

有兩種方式可以將C程序轉換到Simulink平臺中,第1種方法是使用C MEX-file S-function模板文件將C文件轉換成Simulink庫函數并調用,第2種方法使用Simulink自帶的S-Function Builder來編譯C文件生成庫函數。對比兩種轉換方式可知,通過S-Function Builder可以更易將用戶提供的C代碼轉換到Simulink平臺中。

S-Function Builder編譯C文件步驟如下:

a.將C文件添加到S-Function Builder IDE編輯界面中,設置輸入、輸出接口數量;

b.添加C程序文件名稱及位置,該處C程序文件可以是封裝好的庫文件(.lib)、輸出文件(.o)或者是未編譯的C文件(.c),添加頭文件(.h)名稱及位置;

c.編寫S-Function與C文件的接口程序,將S-Function與C程序的輸入、輸出接口進行賦值;

d.調用需要被測試的函數,由于C程序文件都已經添加到S-Function中,此時各C文件函數可以進行隨意調用;

e.在S-Function中選擇Build,對C文件進行S-Function庫文件轉換,如果第1次使用S-Function編譯器,需要在Matlab中輸入“Mex-setup”選擇默認編譯工具即可。

S-Function Builder編譯器如圖3所示。

3 C程序嵌入Simulink測試

在S-Function Builder環境中單獨調用需要被測試的函數,設置被測函數的輸入、輸出接口變量,程序編譯后生成以“.mexw32”為后綴的庫文件,將該庫文件添加到Simulink的S-Function模塊中。此時C程序文件已經可以在Simulink環境下運行。

圖3 S-Function Builder編譯器

3.1在Simulink環境下的單元測試

單元測試是指對軟件中的最小可測試單元進行檢查和驗證。單元測試是在軟件開發過程中進行的最低級別的測試活動,軟件的獨立單元將與程序其它部分相隔離的情況下進行測試。

Simulink環境下的單元測試,首先要將C程序生成的庫文件添加到Simulink的S-Function模塊中,并利用Signal builder模塊作為輸入模塊與被測文件(S-Func?tion模塊)進行連接,用Scope模塊連接S-Function模塊的輸出。在S-Function中,每次調用一個函數作為被測模塊,連接輸入接口的Signal builder作為測試的驅動模塊。連接輸出的Scope作為測試的輔助模塊。測試用例的編輯和設計都在驅動模塊中進行。單元測試的步驟為依據軟件設計說明書對軟件功能進行分解,編寫軟件測試說明書和測試用例,按照測試用例對最小函數進行功能性的單元測試,單元測試環境搭建方法見圖4。

圖4 Excel嵌入Simulink測試用例示意

3.2在Simulink環境下的單元測試實例

以換擋策略模塊為例進行軟件的單元測試。在車輛靜止時起動發動機并進行掛擋操作。為便于進行測試用例的規范化編寫,在Excel中進行測試輸入值的編輯,然后利用M語言將輸入值導入到Simulink的Signal Builder中,當測試結束時將測試結果再從Simulink中導出到Excel。

測試用例的輸入值INP_pos_ShiftLever為換擋手柄位置,INP_rpm_EngSpd為發動機轉速,INP_rpm_IsSpd為輸入軸轉速。INP_opt_DrvMainReq為車輛運行模式請求。當手柄從空擋(INP_pos_ShiftLever=0)換到前進擋(INP_pos_ShiftLever=2)時,輸出結果為請求換擋擋位為1擋(AST_gear_ReqGear=1),換擋請求模式進程(AST_proc_ASTProc)為2,表示前進方向。

在該換擋策略模塊測試中使用了M語言編程技術,提高了軟件測試的效率,便于進行測試用例的維護和修改。

3.3在Simulink環境下的集成測試

模型在環仿真(MIL)是仿真測試系統在Simulink平臺上模擬受控對象的運行狀態,通過S-Function的方式與被測ECU程序進行集成,對被測的ECU進行全方面、系統的測試。從安全性、可行性和成本上考慮,MIL測試不僅可以減少實車路試的次數、縮短開發時間和降低成本,而且可以提高ECU的軟件質量、降低軟件風險。本文依靠S-Function集成的方式,將用戶提供的C程序和預先搭建的被控對象模型(變速器模型、整車模型、駕駛員模型、道路模型等)進行集成。在此基礎上,對自動變速器控制軟件程序在Simulink上進行離線仿真,檢測用戶編寫的C程序的正確性。測試圖例見圖5。

圖5 Simulink模型在環測試系統構成示意

模型在環測試在自動變速器載貨汽車模型上進行,整車平臺由Simulink環境搭建,駕駛員模型包括油門踏板、制動、手柄、轉向盤、儀表組合開關等組成,整車模型則由發動機模型、變速器模型、轉向系統、制動系統等部件組成,道路模型包括對輪胎的道路阻力、坡度阻力、風阻等計算組成,操作機構包括選換擋控制執行器、離合器控制執行器等。

MIL模型的測試方法和單元測試原理相同。測試用例的輸入在MDL_IN模塊中,輸入信號為駕駛員模型中的油門踏板、制動、手柄位置、轉向盤、組合開關等,實際監測的輸出數據在MDL_OUT模塊中,輸出信號為擋位、車速、發動機轉速等信息。AMT軟件的各種功能如圖6所示。MIL集成測試可以方便地對控制軟件的各種功能及性能項進行測試。

圖6 自動變速器軟件功能框圖

系統調度管理

·系統上電狀態檢測

·安全掉電處理

·執行器及傳感器檢測·系統工作模式調度

換擋規律

·自動換擋模式·手動換擋模式·空擋滑行模式

診斷及安全處理·故障診斷

·故障處理

·安全提示

·車輛跛行

離合器控制

·離合器位置控制·自動起步控制

·兩腳離合器控制·滑磨過載保護

發動機控制·扭矩控制·轉速控制·超速保護·熄火保護

變速器控制

·選換擋過程控制·選換擋位置控制·換擋同步控制

·副箱同步控制

傳感器輸入·輸入軸轉速·輸出軸轉速·離合器位置·傳感器診斷

執行器輸出

·選換擋電機控制·離合器電磁閥控制·電機故障診斷

·電磁閥故障診斷

下線檢測

·整車參數刷寫

·離合器摩擦點調整·傳感器及驅動檢測·故障診斷

3.4在Simulink環境下的集成測試實例

在MIL集成測試階段對換擋同步程序進行測試,輸入信號包括目標擋位、換擋命令,輸出監測信號包括換擋力、換擋位置、發動機轉速、輸入軸轉速、輸入軸目標轉速。

換擋同步過程判定如下:

a.輸入軸轉速與目標轉速差小于20 r/min;

b.換擋傳感器位置在同步設定值范圍內;

c.該過程持續3個周期,進入換擋鎖止;

d.該過程的換擋力輸出采用位置式PID。

在對換擋同步的模型在環測試時,發現輸入軸轉速在掛擋時轉速差過大,如圖7所示。

圖7 換擋同步過程出現問題的測試結果

輸入軸轉速是在受到接合套與齒面斷面的摩擦力后才使輸入軸轉速與目標轉速同步的,對程序進行細致分析后發現在同步成功標志判定時,位置判定和轉速判定應該是“與”的關系,即程序中“或”(||)應改為“與”(&&)。

更改后的曲線如圖8所示。可知,在換擋前轉速已經同步,減少了換擋鎖止時對齒輪的沖擊。

圖8 換擋同步過程更改后的測試結果

4 結束語

利用Simulink平臺建立C Mex S-Function測試嵌入式C程序,能夠有效解決嵌入式C程序離線測試繁瑣的問題,不僅提高了軟件開發效率,同時也能提高工程人員的工作效率。

利用Simulink平臺進行AMT模型在環的軟件搭建及離線仿真測試,解決了控制軟件只能在實車或試驗臺上才能進行測試的問題。

通過Excel腳本導入的方式進行Simulink測試,能夠解決測試效率低下的問題,提高測試用例的可讀性和可維護性。

參考文獻:

1肖東岳,李英堂,周強,等.基于Matlab的步進電機自動化測試系統.制造業自動化,2012,34(17):30~31.

2汪萍萍,胡獻華,洪濤,等.電子電器產品嵌入式軟件單元測試技術研究.工業控制計算機,2013,26(9):21~23.

3張猛,毛亮.航天嵌入式軟件的單元測試方法探討.航天器工程,2006(2):32~35.

4溫劍鋒,陳朋,王云鵬,等.復用技術在鐵路軟件測試的應用研究.第9屆中國智能交通年會大會論文集,2014.

5劉思思,劉迪.飛行控制軟件單元測試方法研究.軟件導刊,2015(5):29~32.

(責任編輯晨曦)

修改稿收到日期為2016年1月1日。

中圖分類號:U463.2

文獻標識碼:A

文章編號:1000-3703(2016)07-0040-03

Development of Test Platform for the Control Software of Automated Mechanical Transmission

Sun Mingyang,Zhaobin,Chen Zhixin,Cao Shan
(China FAW Co.,Ltd.R&D Center,Changchun 130011)

【Abstract】To improve the offline test efficiency of AMT C program,we use MATLAB S-Function to incorporate C program into the platform,and use Excel for the establishment of automatic test case script.Model in-the-loop establishment is made for the embedded program C with Simulink platform,and control software of an AMT is tested and debugged at the early stage of project.The designed test platform has been verified in actual project.The test platform has been applied in the control software test of several AMTs independently developed by FAW,and AMT software test development platform is established,which improves offline test efficiency and accuracy effectively.

Key words:AMT,Embedded code test,Matlab

猜你喜歡
程序模型
一半模型
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
失能的信仰——走向衰亡的民事訴訟程序
“程序猿”的生活什么樣
英國與歐盟正式啟動“離婚”程序程序
環球時報(2017-03-30)2017-03-30 06:44:45
3D打印中的模型分割與打包
創衛暗訪程序有待改進
中國衛生(2015年3期)2015-11-19 02:53:32
FLUKA幾何模型到CAD幾何模型轉換方法初步研究
主站蜘蛛池模板: 国产一级毛片在线| 最新无码专区超级碰碰碰| 暴力调教一区二区三区| 91福利免费视频| 国产成人h在线观看网站站| 欧美在线视频a| 国产香蕉一区二区在线网站| 国产一区二区三区精品久久呦| a级毛片毛片免费观看久潮| 国产欧美视频一区二区三区| 亚洲成人动漫在线观看| 日韩123欧美字幕| 亚洲天堂啪啪| 91人妻在线视频| 操操操综合网| 亚洲精品在线影院| 天堂久久久久久中文字幕| 国产日韩AV高潮在线| 思思99思思久久最新精品| 国产老女人精品免费视频| 亚洲国产成人无码AV在线影院L| 操国产美女| 国产主播福利在线观看| 71pao成人国产永久免费视频| 57pao国产成视频免费播放| 青青热久免费精品视频6| 久久黄色免费电影| 黄色网址免费在线| 日韩精品专区免费无码aⅴ| 东京热av无码电影一区二区| 欧美a√在线| 亚洲AV永久无码精品古装片| 午夜无码一区二区三区在线app| 国产高清在线丝袜精品一区| 日本不卡在线播放| 亚洲天堂视频在线播放| 91在线精品免费免费播放| 综合人妻久久一区二区精品| 亚洲国产午夜精华无码福利| 九九九国产| 婷婷午夜影院| 国产丰满大乳无码免费播放| 国产性生交xxxxx免费| 狠狠色丁香婷婷| 小13箩利洗澡无码视频免费网站| 国产精品三级av及在线观看| 91精品在线视频观看| 18禁高潮出水呻吟娇喘蜜芽| 亚洲精品久综合蜜| 五月婷婷激情四射| 国产一级毛片网站| 亚洲侵犯无码网址在线观看| 亚洲国产亚洲综合在线尤物| 爽爽影院十八禁在线观看| 国产毛片久久国产| 69免费在线视频| 久久这里只有精品2| 久久精品欧美一区二区| 思思热精品在线8| www.精品国产| 免费国产高清视频| 综1合AV在线播放| 日韩欧美91| 欧美一级专区免费大片| 欧美日韩国产在线人成app| 女人天堂av免费| 狠狠干欧美| 91精品国产自产91精品资源| 国产精品成人免费综合| 2020国产在线视精品在| 中文字幕有乳无码| 欧美色99| 囯产av无码片毛片一级| 亚洲aaa视频| 538国产在线| 97国产成人无码精品久久久| 欧美视频二区| 亚洲第一精品福利| 国产精品久久久久无码网站| 免费一级毛片不卡在线播放| 国产女人喷水视频| 中字无码av在线电影|