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幾何模型轉換方法初步研究
主站蜘蛛池模板: 看国产一级毛片| 永久免费精品视频| 人妻一本久道久久综合久久鬼色| 极品国产在线| 国产精品无码AV片在线观看播放| 国产精品999在线| 亚洲综合亚洲国产尤物| h网站在线播放| …亚洲 欧洲 另类 春色| 精品在线免费播放| 欧美日本在线观看| 欧美中文字幕无线码视频| 999精品在线视频| 91青青草视频| 真人高潮娇喘嗯啊在线观看| 国产嫩草在线观看| 亚洲第一天堂无码专区| 国产乱子伦精品视频| 视频二区亚洲精品| 国产第一色| 欧美天天干| 欧美亚洲一二三区| 激情综合网激情综合| 亚洲欧美日韩中文字幕在线一区| 国内毛片视频| 欧美精品啪啪| 成人91在线| 亚洲人成网站观看在线观看| 六月婷婷激情综合| 99视频精品在线观看| 国产不卡网| 国产精品yjizz视频网一二区| 国产大全韩国亚洲一区二区三区| 国产成人亚洲无码淙合青草| 中文字幕欧美成人免费| 无码国产伊人| 乱人伦99久久| 九色视频最新网址| 国产人在线成免费视频| 日韩精品久久久久久久电影蜜臀| 91成人在线免费观看| 日韩毛片免费视频| 亚洲日本中文字幕天堂网| 日韩精品一区二区三区免费在线观看| 538精品在线观看| 久久天天躁狠狠躁夜夜2020一| 国产青青草视频| 在线欧美a| 日韩a级毛片| 亚洲精品高清视频| 美女内射视频WWW网站午夜| 久久久成年黄色视频| 青青草原国产一区二区| 欧美a√在线| 免费国产在线精品一区| 91精品专区| 欧美日韩va| 乱人伦视频中文字幕在线| 国产国产人成免费视频77777 | 中文精品久久久久国产网址 | 国产超薄肉色丝袜网站| 亚洲综合欧美在线一区在线播放| 国产91无毒不卡在线观看| 成人精品视频一区二区在线| 91精品啪在线观看国产91| 精品天海翼一区二区| 免费欧美一级| 色偷偷一区二区三区| 国模沟沟一区二区三区| 美女无遮挡免费视频网站| 国产免费怡红院视频| 国产中文一区a级毛片视频| 思思热在线视频精品| 久久香蕉国产线看精品| 亚洲AV一二三区无码AV蜜桃| 91丝袜乱伦| 老司机午夜精品网站在线观看| 久久久久久久久久国产精品| 国产亚洲精品97AA片在线播放| 欧美性天天| 国产地址二永久伊甸园| аⅴ资源中文在线天堂|