国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于Simulink的模型調(diào)度系統(tǒng)設(shè)計(jì)及應(yīng)用

2016-08-02 07:59劉少飛王魏北京汽車動(dòng)力總成有限公司北京101108
汽車科技 2016年2期

劉少飛,王魏(北京汽車動(dòng)力總成有限公司,北京,101108)

?

基于Simulink的模型調(diào)度系統(tǒng)設(shè)計(jì)及應(yīng)用

劉少飛,王魏
(北京汽車動(dòng)力總成有限公司,北京,101108)

摘 要:本系統(tǒng)采用Excel表格管理任務(wù)函數(shù),通過M腳本文件讀取調(diào)度信息生成Simulink調(diào)度模型,控制集成模型中各個(gè)模型的執(zhí)行周期、執(zhí)行順序及代碼生成結(jié)構(gòu)。在實(shí)際ECU開發(fā)中的應(yīng)用表明,此系統(tǒng)既能節(jié)省模型搭建時(shí)間,也可以有效提高代碼生成和集成效率,確保功能運(yùn)行的正確性。

關(guān)鍵詞:任務(wù)函數(shù);調(diào)度模型;執(zhí)行周期;執(zhí)行順序;代碼生成

劉少飛畢業(yè)于太原理工大學(xué)信號(hào)與信息處理專業(yè),碩士學(xué)位,研究方向?yàn)镚DI發(fā)動(dòng)機(jī)ECU控制策略開發(fā);主要技術(shù)成果:完成GDI發(fā)動(dòng)機(jī)爆震控制系統(tǒng)開發(fā)與測(cè)試、自建模塊庫(kù)設(shè)計(jì)、模型調(diào)度系統(tǒng)設(shè)計(jì)等項(xiàng)目。

1 前言

汽車作為機(jī)電類產(chǎn)品,電子系統(tǒng)是其重要的組成部分。日益嚴(yán)格的法規(guī)及對(duì)安全與舒適性的更高要求使得ECU軟件越來越復(fù)雜[1],采用傳統(tǒng)的ECU開發(fā)流程已經(jīng)難以完成現(xiàn)代控制系統(tǒng)的設(shè)計(jì)[2],基于模型的設(shè)計(jì)方法克服了傳統(tǒng)開發(fā)平臺(tái)的缺陷[3,4],保證了設(shè)計(jì)和開發(fā)的正確性,縮短了開發(fā)周期。

模型調(diào)度系統(tǒng)在基于模型的軟件開發(fā)過程中占據(jù)著重要地位,精確控制著整個(gè)功能軟件的運(yùn)行。本文采用Simulink建模工具,通過M腳本文件將調(diào)度信息表與模型關(guān)聯(lián),自動(dòng)生成調(diào)度模型,調(diào)度整個(gè)集成模型,即可用于早期模型級(jí)別的仿真測(cè)試,保證控制算法完整可靠,也可控制后期的代碼生成結(jié)構(gòu),大大提高了ECU的開發(fā)效率。

2 模型調(diào)度系統(tǒng)方案設(shè)計(jì)

本系統(tǒng)除初始化任務(wù)外,模型任務(wù)調(diào)度分為同步任務(wù)和時(shí)間任務(wù)。對(duì)同步任務(wù),本調(diào)度系統(tǒng)方案是將發(fā)動(dòng)機(jī)轉(zhuǎn)速轉(zhuǎn)化為角度步長(zhǎng)(精度由系統(tǒng)仿真步長(zhǎng)決定,可任意調(diào)節(jié)),通過角度累加來模擬曲軸轉(zhuǎn)角(0到720度),與目標(biāo)角度比較判斷是否達(dá)到相應(yīng)角度,從而觸發(fā)相應(yīng)同步任務(wù)(S0或S1);而對(duì)時(shí)間任務(wù),則是通過計(jì)數(shù)器來實(shí)現(xiàn)。此系統(tǒng)用來實(shí)現(xiàn)集成模型的調(diào)度,主要由基本輸入?yún)?shù)、任務(wù)觸發(fā)器(角度步長(zhǎng)計(jì)算、角度累加、任務(wù)觸發(fā))、任務(wù)列表、任務(wù)分配和模型集成組成,虛線框表示ECU軟件開發(fā)的其他環(huán)節(jié),通過充分測(cè)試的模型會(huì)與基礎(chǔ)軟件集成,最終生成的可執(zhí)行文件會(huì)下載到ECU中。

圖1 模型調(diào)度系統(tǒng)總體方案

該調(diào)度系統(tǒng)是通過Simulink建模實(shí)現(xiàn),將發(fā)動(dòng)機(jī)相關(guān)參數(shù)(發(fā)動(dòng)機(jī)轉(zhuǎn)速,即每分鐘曲軸轉(zhuǎn)過的角度,可以反映不同時(shí)刻,發(fā)動(dòng)機(jī)處于哪個(gè)工作行程,進(jìn)氣行程、壓縮行程、做功行程,還是排氣行程,從而應(yīng)該控制哪些任務(wù)執(zhí)行,如噴油或點(diǎn)火)和系統(tǒng)參數(shù)(角度位置定義和仿真步長(zhǎng))作為系統(tǒng)輸入,從發(fā)動(dòng)機(jī)轉(zhuǎn)速中提取發(fā)動(dòng)機(jī)位置信息,從而觸發(fā)相應(yīng)任務(wù),本系統(tǒng)針對(duì)的是四缸發(fā)動(dòng)機(jī),對(duì)于其他缸數(shù)發(fā)動(dòng)機(jī)只需做少量修改即可。

2.1 任務(wù)觸發(fā)器

設(shè)計(jì)出的任務(wù)觸發(fā)器如下圖所示。

圖2 任務(wù)觸發(fā)器

1、基本輸入?yún)?shù)

(1)發(fā)動(dòng)機(jī)轉(zhuǎn)速

發(fā)動(dòng)機(jī)轉(zhuǎn)速可以是定值,也可以是實(shí)時(shí)變化的量。

(2)同步標(biāo)志位S0

曲軸缺齒后第二個(gè)齒的下降沿為第一個(gè)S0(此位置也定義為系統(tǒng)0點(diǎn)),之后每間隔180度會(huì)出現(xiàn)一個(gè)S0。

(3)同步標(biāo)志位S1

曲軸缺齒后第二十二個(gè)齒的下降沿為第一個(gè)S1,之后每間隔180度會(huì)出現(xiàn)一個(gè)S1。

(4)系統(tǒng)仿真步長(zhǎng)dT

系統(tǒng)運(yùn)行周期,該參數(shù)決定著整個(gè)系統(tǒng)的精度,可以任意調(diào)節(jié)。

2、任務(wù)觸發(fā)器

(1)角度步長(zhǎng)計(jì)算

將發(fā)動(dòng)機(jī)轉(zhuǎn)速(1/min)轉(zhuǎn)化為每秒轉(zhuǎn)過的角度,再乘以系統(tǒng)仿真步長(zhǎng),便得到角度步長(zhǎng)。

(2)角度累加器

針對(duì)于四缸GDI發(fā)動(dòng)機(jī),一個(gè)工作循環(huán)(進(jìn)氣、壓縮、做功、排氣),曲軸轉(zhuǎn)兩圈,即720度[5]。此部分通過角度累加器實(shí)現(xiàn),初始值默認(rèn)為0度,將角度步長(zhǎng)(隨發(fā)動(dòng)機(jī)轉(zhuǎn)速的變化而變化)累加,累加值達(dá)到720度后,將累加器重置為0度,重新累加,周而復(fù)始,這樣就可以模擬實(shí)際曲軸轉(zhuǎn)角。

(3)任務(wù)觸發(fā)

觸發(fā)的任務(wù)類型包含三類:

初始化任務(wù):模擬ECU上電初始化,模型運(yùn)行第一步觸發(fā)該任務(wù),之后不再執(zhí)行;

同步任務(wù):包括S0和S1任務(wù),S0對(duì)應(yīng)的觸發(fā)角度為0度、180度、360度和540度,S1任務(wù)對(duì)應(yīng)的觸發(fā)角度為120度、300度、480度和660度,同步任務(wù)是通過判斷上一個(gè)執(zhí)行周期曲軸轉(zhuǎn)角到當(dāng)前曲軸轉(zhuǎn)角是否覆蓋目標(biāo)角度來決定是否觸發(fā)的。同步任務(wù)主要針對(duì)于對(duì)發(fā)動(dòng)機(jī)同步角度要求較高的任務(wù),如噴油、點(diǎn)火,通過同步任務(wù)調(diào)度可以實(shí)現(xiàn)發(fā)動(dòng)機(jī)的精確噴油和點(diǎn)火。

時(shí)間任務(wù):主要包含1 ms、10 ms、20 ms、50 ms、100 ms和200 ms任務(wù),如果需要,還可以添加其他時(shí)間任務(wù),時(shí)間任務(wù)是通過計(jì)數(shù)器來實(shí)現(xiàn),每個(gè)時(shí)間任務(wù)對(duì)應(yīng)一個(gè)計(jì)數(shù)器,計(jì)數(shù)器以系統(tǒng)仿真步長(zhǎng)累加,當(dāng)達(dá)到相應(yīng)時(shí)間時(shí),觸發(fā)該時(shí)間任務(wù),并將計(jì)數(shù)器重置為0,用于該任務(wù)的下一次觸發(fā)。時(shí)間任務(wù)主要針對(duì)于那些對(duì)同步角度無要求而對(duì)時(shí)間周期要求較高的任務(wù),如傳感器信號(hào)采集,節(jié)氣門控制等。

2.2 任務(wù)分配

根據(jù)發(fā)動(dòng)機(jī)控制需求,將不同任務(wù)函數(shù)按照先后順序分別列于相應(yīng)任務(wù)的Excel.Sheet中,如圖3所示,這些文件包含了整個(gè)控制系統(tǒng)模型的任務(wù)調(diào)度信息。

圖3 調(diào)度信息表

任務(wù)函數(shù)列表與集成模型中的任務(wù)函數(shù)(模塊)是一一對(duì)應(yīng)的,按照任務(wù)類型和優(yōu)先級(jí)進(jìn)行了分類,放在不同的Excel.Sheet中,通過M腳本文件可以將任務(wù)函數(shù)與模型中對(duì)應(yīng)的任務(wù)函數(shù)(模塊)觸發(fā)信號(hào)相關(guān)聯(lián),當(dāng)集成模型中的任務(wù)函數(shù)(模塊)發(fā)生變化時(shí),通過修改Excel中的任務(wù)函數(shù)列表,運(yùn)行M腳本文件,模型中的任務(wù)觸發(fā)信號(hào)會(huì)自動(dòng)更新,與需要集成的模型自動(dòng)對(duì)應(yīng)。

圖4 任務(wù)分配

2.3 Simulink調(diào)度系統(tǒng)模型

設(shè)計(jì)出的調(diào)度系統(tǒng)模型分為兩部分:任務(wù)觸發(fā)器和任務(wù)分配器,如下圖所示:

圖5 調(diào)度系統(tǒng)模型

(1)任務(wù)觸發(fā)器

任務(wù)觸發(fā)器內(nèi)部結(jié)構(gòu)分為兩種,一種用于模型級(jí)別的仿真測(cè)試,另一種用于代碼生成,兩種結(jié)構(gòu)之間通過腳本文件可以自動(dòng)替換。

圖6 任務(wù)觸發(fā)器

(左:用于模型測(cè)試;右:用于代碼生成)

(2)任務(wù)分配器

任務(wù)分配器是根據(jù)調(diào)度信息表中的任務(wù)函數(shù)類型及執(zhí)行順序生成的模型調(diào)度觸發(fā)信號(hào)。

圖7 任務(wù)分配器

3 模型調(diào)度系統(tǒng)在ECU軟件開發(fā)中的應(yīng)用

3.1 模型集成與測(cè)試

集成模型中的子模塊是按照任務(wù)類型區(qū)分的,每個(gè)任務(wù)子模塊與調(diào)度信息表中的任務(wù)函數(shù)列表一一對(duì)應(yīng),也就是和任務(wù)觸發(fā)信號(hào)是一一對(duì)應(yīng)的,每個(gè)任務(wù)子模塊的觸發(fā)信號(hào)從任務(wù)觸發(fā)信號(hào)中選取(通過調(diào)度信息表和M腳本文件已經(jīng)在調(diào)度系統(tǒng)模型中自動(dòng)生成)。模型的調(diào)度機(jī)制模擬的是底層操作系統(tǒng)任務(wù)調(diào)度機(jī)制,集成模型加上調(diào)度后,運(yùn)行機(jī)制與底層實(shí)際代碼運(yùn)行機(jī)制更接近,這樣模型的測(cè)試會(huì)更準(zhǔn)確,更充分。

以GDI發(fā)動(dòng)機(jī)控制系統(tǒng)為例,集成模型包含調(diào)度模型(任務(wù)觸發(fā)和任務(wù)分配)和被調(diào)度模型(包括:發(fā)動(dòng)機(jī)系統(tǒng)模型、扭矩模型、空氣模型、噴油模型、點(diǎn)火模型及與底層驅(qū)動(dòng)之間的接口模型)。在模型級(jí)別測(cè)試模型時(shí),將發(fā)動(dòng)機(jī)轉(zhuǎn)速作為調(diào)度模型的輸入,再將調(diào)度信息列表中與被調(diào)度模型一一對(duì)應(yīng)的函數(shù)通過M腳本文件自動(dòng)生成調(diào)模型的調(diào)度信息,用于測(cè)試時(shí)的模型調(diào)度。

圖8 模型集成

被調(diào)度模型如下圖所示(以其中的一個(gè)點(diǎn)火模型為例)。

圖9 集成模型中的一個(gè)點(diǎn)火模型

生成調(diào)度后,給定集成模型輸入目標(biāo)數(shù)據(jù),可以測(cè)試整個(gè)集成模型,以點(diǎn)火角計(jì)算模型為例,仿真測(cè)試結(jié)果如圖10所示:

圖10 點(diǎn)火角仿真測(cè)試結(jié)果

3.2 模型代碼生成

對(duì)集成的每個(gè)任務(wù)子模塊代碼生成項(xiàng)進(jìn)行了設(shè)置,生成的代碼,會(huì)按照任務(wù)類型區(qū)分開,同一種任務(wù)類型的函數(shù)會(huì)按照?qǐng)?zhí)行順序生成到同一個(gè)文件中,便于后期的代碼集成與測(cè)試。如圖11所示,所有200 ms任務(wù)函數(shù)按照?qǐng)?zhí)行順序生成到Task_200 ms函數(shù)(或文件)中。

圖11 代碼生成結(jié)構(gòu)

3.3 系統(tǒng)集成與測(cè)試

目前此模型調(diào)度系統(tǒng)已經(jīng)應(yīng)用到了ECU軟件開發(fā)中,與應(yīng)用軟件、基礎(chǔ)軟件等相關(guān)文件一同集成到了一鍵生成工具中,如圖12所示:

圖12 一鍵生成工具界面

利用一鍵生成工具,可以將所有文件整合直接生成可執(zhí)行文件,下載到ECU開發(fā)板中進(jìn)行HIL或臺(tái)架測(cè)試。

圖13~圖15是自主開發(fā)的ECU臺(tái)架測(cè)試中爆震控制的測(cè)試結(jié)果,通過爆震傳感器檢測(cè)缸體振動(dòng)情況,當(dāng)振動(dòng)能量達(dá)到一定閾值后,ECU會(huì)檢測(cè)到爆震,并進(jìn)行點(diǎn)火角推遲,當(dāng)爆震消失后,點(diǎn)火角推遲量會(huì)逐漸恢復(fù)到0。

圖13 缸體振動(dòng)能量臺(tái)架測(cè)試數(shù)據(jù)

圖14 檢測(cè)到爆震標(biāo)志位臺(tái)架測(cè)試數(shù)據(jù)

圖15 爆震控制點(diǎn)火角推遲量臺(tái)架測(cè)試數(shù)據(jù)

4 結(jié)束語(yǔ)

本文設(shè)計(jì)的模型調(diào)度系統(tǒng)通過Excel表格管理任務(wù)調(diào)度信息,方便直觀,通過M腳本文件實(shí)現(xiàn)了調(diào)度信息與調(diào)度模型的關(guān)聯(lián),模型調(diào)度信息自動(dòng)生成,節(jié)省了模型搭建與修改時(shí)間,并能夠控制代碼生成結(jié)構(gòu),使代碼更優(yōu)化,集成效率更高。在實(shí)際ECU開發(fā)中的應(yīng)用表明,利用該系統(tǒng)開發(fā)的功能運(yùn)行正確可靠,能夠滿足發(fā)動(dòng)機(jī)精確控制的要求。

參考文獻(xiàn):

[1] 孫穎,王建俊,張承瑞. 基于AUTOSAR的汽車電控系統(tǒng)代碼自動(dòng)生成技術(shù)[J]. 重慶理工大學(xué)學(xué)報(bào)(自然科學(xué)),2014,(03):33~38.

[2] 趙彥斌,鐘再敏. 基于代碼自動(dòng)生成技術(shù)的汽車電子實(shí)時(shí)控制軟件開發(fā)[J]. 計(jì)算輔助工程,2008,(03):36~40.

[3] 邱寶梅. 基于Simulink/RTW的汽車電子控制系統(tǒng)的研究[J]. 計(jì)算機(jī)測(cè)量與控制,2011,(05):1086 ~1088.

[4] 張德豐. MATLAB/Simulink建模與仿真實(shí)例精講[M]. 北京:機(jī)械工業(yè)出版社,2010.

[5] 魏春源 譯. 汽車工程手冊(cè)[M]. 北京: 北京理工大學(xué)出版社,2008.

中圖分類號(hào):U464.12

文獻(xiàn)標(biāo)識(shí)碼:A

文章編號(hào):1005-2550(2016)02-0065-05

doi:10.3969/j.issn.1005-2550.2016.02.010

收稿日期:2015-12-18

Design and Application of Model Scheduling System Based on Simulink

LIU Shao-fei , WANG Wei
( BAIC Motor Powertrain Co.,Ltd, Beijing 101108,China )

Abstract:The system adopts Excel table to manage task function, reads scheduling information to generate simulink scheduling model by M script file and controls the execute periods, execute order and code generation structure of every model in integrated model. The application of the system in ECU development indicates that it can save the time of model building, improve the efficiency of code generation and integration, and ensure the correctness of functions run.

Key Words:Task function; Scheduling model; Execute period; Execute order; Code generation

建水县| 宁远县| 南投县| 东乡| 韶山市| 多伦县| 治多县| 全椒县| 福泉市| 左权县| 桂东县| 南木林县| 奈曼旗| 嘉兴市| 常宁市| 沅陵县| 遂宁市| 黔江区| 蕉岭县| 湟源县| 大关县| 桐柏县| 巴彦县| 于田县| 涪陵区| 南汇区| 佛教| 乳源| 奉新县| 若羌县| 招远市| 云南省| 庄河市| 崇州市| 英超| 余江县| 筠连县| 晴隆县| 凤庆县| 漯河市| 柳河县|