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

基于模型的噴水推進系統嵌入式模擬器研究

2018-08-10 06:06:56王亞偉吳杰長常廣暉蘇攀張宇
電子設計工程 2018年15期
關鍵詞:嵌入式單片機模型

王亞偉,吳杰長,常廣暉,蘇攀,張宇

(海軍工程大學動力工程學院,湖北武漢430033)

眾所周知,艦船動力裝置訓練模擬器是模擬實船機艙設備操作、培養艦員專業技能的有效器材,可為艦船動力裝置操作人員提供高效的訓練手段,近年來得到了廣泛應用,目前艦船動力裝置訓練模擬器普遍采用工控機、大量信號I/O卡、及專用仿真軟件平臺的基本架構,其復雜的仿真模型及信號I/O有賴于微機及復雜的信號采集系統。該類基于工控PC機和專用仿真平臺的動力裝置訓練模擬器存在開發周期長、成本高、占用場地大、靈活性差以及不便大規模推廣應用等缺陷。隨著我國海軍裝備快速發展,設備的更新換代越來越快,傳統的動力裝置模擬器開發方式很難滿足要求。因此,基于模型代碼生成的嵌入式仿真訓練模擬器近年來得到了高度重視,其相對而言具有開發周期短、成本低、擴展性好和便于推廣等特點,既適合構建傳統的岸基訓練模擬器、也可用于實船訓練系統,其關鍵技術問題是在于如何生成有效的動力裝置嵌入式模型代碼。

針對以上問題,文中特此以噴水推進系統嵌入式模擬器開發為例,對基于Simulink的噴水推進系統建模和嵌入式代碼生成與應用等關鍵技術問題進行了研究。通過試驗驗證了該方法的有效性和噴水推進系統嵌入式模擬器開發的可行性。

1 噴水推進系統Simulink仿真模型

根據噴水推進系統基本構成和船、機、泵配合關系,采用機理建模方法和模塊化分解建模思路將系統劃分為柴油機-噴泵子系統和噴泵-船體子系統,分別對各子系統建模后集成為總體仿真模型。

1.1 柴油機-噴泵子系統

模擬器開發中重點關注柴油機轉矩轉速等參數的響應,按照通常的建模方法,將其簡化為多個反應輸入、輸出關系的數學表達式。為了便于代碼生成,將復雜的輸入、輸出關系轉化為表格數據,通過查表的方式來反應柴油機轉速轉矩等參數的響應。柴油機建模相關內容可參照參考文獻[1-4]。

根據噴水推進裝置基本工作原理,由動量定理和流體力學知識可以建立噴水推進系統數學模型[5]。由單位時間內噴泵進出口動量的變化量即推力可表達為:

式中,Q為水泵的流量,Vj為噴嘴的截面積噴射的速度;ρ為水的密度;Vs為船速。另外,根據管道中水流的連續性,可得流量與噴口速度之間的公式:

式中,Aj為噴口面積。

考慮噴水推進器在實際工作中存在噴口損失和管道損失,分別用噴射速度頭百分比和來流速度頭百分比表示損失[6],可得泵的揚程為:

式中,kj為噴口損失系數;k為管道損失系數;Δh為噴泵內水位差值;g為重力加速度。根據式(1)可知,只有先求出流量Q,才能求出噴泵的推力,由于噴水推進裝置實際工作點是由推進系統所需要的壓頭與噴泵提供的壓頭平衡點決定,根據Giov-anni Benevento等人做的噴泵試驗數據[7-8],可得到噴泵所能提供的壓頭Hp:

式中,np為噴泵給定轉速;np0為實驗參考轉速;a,b,c為待定常數。令H=Hp,聯立式(2)、(3)和(4),可求得噴泵的流量Q,進而得到噴泵產生的推力T,并可利用公式(5)計算出噴泵扭矩Mp。

式中,np為噴泵的轉速;ηp為噴泵推進效率;ηr為噴泵相對旋轉效率;ηm為機械效率。

由牛頓第二定律可得機泵相互作用的動力學方程為:

式中,Me為柴油機扭矩;Mf為摩擦損失扭矩;i齒輪減速比;J為整個噴水推進系統的轉動慣量;ω為軸系的角速度。

1.2 噴泵-船體子系統

噴水推進器船實際工作中運動較復雜,為簡化模型,只取船舶前進方向的一維運動分析,由此可得噴泵與船體相互作用動力學方程為[9]:

式中,MS為船體總質量;MSAD為船體附加水質量;T為噴水推進器推力;R為船體阻力,可簡化為航速的函數,即:

1.3 模型總成

在建立上述兩個子系統數學模型的基礎上,采用Simulink仿真工具建立噴水推進系統整體仿真模型如圖1所示,用于下文所研究的嵌入式代碼生成。

圖1 系統仿真圖

對噴水推進全系統進行驗證,利用所建的模型進行單機單泵加速運行工況下仿真計算,仿真結果如圖2所示。圖2曲線中所有穩態數據與實驗數據[10]之間的平均誤差在6%以內,說明本文所建立的數學模型能可以很好地擬噴水推進系統總體工作情況,能夠滿足模型嵌入代碼生成要求。

圖2 單機單泵加速工況曲線

2 模型的代碼生成

2.1 模型配置及定標處理

模型配置是代碼生成過程必不可少的環節,對于建立好的Simulink仿真模型,要實現C代碼的生成需要選擇定步長仿真算法,相關參數可在Solver option選項中設置。

Simulink模型的輸入輸出參數設置可在該信號線的信號設置中完成,將所用到的信號屬性均設置為ExportedGlobal。

此外,還應在代碼生成選項中選擇目標代碼類型,也就是(TLC)最終生成的代碼類型,這里選擇嵌入式C代碼類型的ert.tlc。相關設置如表1所示[11]。

表1 參數設置

定標處理是模型代碼生成的必備條件。一方面,通常單片機處理的都是定點計算類型的數據,為了保證控制器始終進行定點運算,必須對模型中的所有變量進行定標處理[12],即在滿足計算精度的同時保證計算過程不會溢出的前提下,設置變量的大小和精度范圍。另一方面,若代碼生成前未進行定標處理,變量默認的數據類型為double型,模型生成的源代碼將占用較大內存空間,可能會超出單片機內存而使系統無法正常運行;而定標處理后,變量數據類型為定點型,源代碼所占用的內存將大大減少,這樣可提高單片機的運行速度。表2所列出的是本文中輸入、輸出變量數據類型轉換,數據類型fixdt(0,32,23,0)首位“0”表示無符號位,“32”表示數據位數,“23”表示小數位數,末位“0”表示數據范圍的偏移量。

表2 定標前后變量數據類型

2.2 代碼生成

基于模型的代碼生成是利用Matlab軟件中的RTW工具箱,將Simulink模型轉化為目標機器源代碼,在此基礎上使用KEIL編譯環境建立工程文件,其代碼生成流程如圖3所示。針對不同的硬件系統,開發人員可利用RTW工具箱中的TLC(目標語言編譯器)生成相應目標硬件的驅動程序[13]。

圖3 代碼生成流程

文中在Matlab中預先安裝好支持的編譯器VC++2012,在命令窗口輸入mex-setup,根據系統提示,選擇當前安裝的編譯器。配置好相關參數后,點擊build按鈕可以生成模型代碼,系統自動產生一個DiselJetHull_ert_tlc文件夾,里面包含模型的源文件、頭文件和其它代碼說明文件,如圖4所示。這些源代碼包含了模型的數據結構、數據類型、各子系統代碼和輸入輸出接口函數,且生成的源代碼結構組成順序以及結構體結構符合C語言結構模式。其中DiselJetHull.c是實現模型功能的代碼,Disel?JetHull_data.c為模型的初始參數數據,DiselJetHull.h是包含參數和狀態變量定義的頭文件,其它文件:rt_look.h,rtwtypes.h,rtGetInf.h等為RTW所需的必要配置文件[14-15]。

2.3 嵌入式代碼移植與集成

代碼的移植與集成即實現模型代碼到嵌入式代碼的轉化。在keil中新建一個工程文件,將模型代碼加入到工程中,編寫其它相關的接口程序,實現模型代碼與編寫的接口函數的集成。

圖4 生成的文件及代碼

VC++2012/keil與Simulink的集成是通過VC++2012/keil編程驅動C++模型代碼中的initialize、terminate和rt_OneStep 3個函數來實現的。顧名思義,這3個函數分別實現了模型的初始化、停止和單步運算。如圖5所示是生成的代碼執行流程圖,在主函數中循環調用JET_HULL_step函數,每調用一次,就會計算出一組結果,并可對計算結果實時提取[16-20]。

圖5 代碼執行流程

集成的部分main函數如下所示,其中

rt_OneStep()函數是模型單步運算函數[12]。

3 代碼嵌入及試驗驗證

3.1 代碼嵌入

在完成基于Simulink模型生成代碼的基礎上,還需編寫相關的輸入、輸出接口程序,才能構建出完整的嵌入式系統的工程文件。利用KEIL編譯軟件新建工程,編寫相應的輸入輸出接口程序,并將基于模型生成的源文件和頭文件添加到工程中,編譯無誤后下載到單片機中運行。本文嵌入式系統硬件平臺選用STM32F103ZET開發板,將PA0作為輸入口,PA5作為輸出口。試驗裝置如圖6所示,輸入接入與Simulink仿真模型相同的設定轉速,由D/A輸出、并通過示波器讀出輸出的船速仿真信號。

圖6 試驗裝置

3.2 試驗驗證

為了驗證生成代碼的有效性,設定相同的轉速輸入,對比Simulink仿真模型的輸出與硬件電路I/O信號輸出進行校驗。實船為四機四泵裝置,本文選用雙機雙泵工作模式進行試驗驗證。給定Simulink模型設定轉速輸入序列為(t0,700 rpm;t0+200,1 900 rpm;t0+800,1 200 rpm),圖7為Simulink模型對應的航速輸出,可見對應不同的轉速檔,船速分別穩定在4.8 kn、18.6 kn和11.6 kn。試驗裝置通過PA0口設定相同的轉速輸入,單片機D/A口輸出的航速信號,如圖8所示。由圖7和圖8對比可知,在采樣時間內仿真結果與模型嵌入單片機后的輸出信號一致。

4 結 論

圖7 船速仿真圖

圖8 示波器顯示

文中對基于模型的代碼生成技術及其在噴水推進系統嵌入式模擬器中的應用方法進行了深入研究。介紹了基于sinulink模型利用RTW工具箱生成代碼過程,通過試驗驗證了該方法的有效性以及噴水推進系統嵌入式模擬器開發方案的可行性。本文所使用的開發方法相比以往基于工控PC機模擬器的開發更加簡單,基于模型的代碼生成技術能夠簡化開發過程中的編程環節,使得嵌入式開發便捷有效。該方法可為其它艦艇動力裝置嵌入式模擬訓練器的開發提供參考。

猜你喜歡
嵌入式單片機模型
一半模型
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
基于單片機的SPWM控制逆變器的設計與實現
電子制作(2019年13期)2020-01-14 03:15:28
基于單片機的層次漸變暖燈的研究
電子制作(2019年15期)2019-08-27 01:12:10
基于單片機的便捷式LCF測量儀
電子制作(2019年9期)2019-05-30 09:42:02
搭建基于Qt的嵌入式開發平臺
嵌入式軟PLC在電鍍生產流程控制系統中的應用
電鍍與環保(2016年3期)2017-01-20 08:15:32
3D打印中的模型分割與打包
Microchip推出兩個全新PIC單片機系列
主站蜘蛛池模板: 干中文字幕| 国产va在线观看| 国产微拍一区| 欧美a在线| 久久无码av一区二区三区| 欧美日韩国产成人高清视频| 精品国产91爱| 久久国产精品波多野结衣| 亚洲第一视频网站| 亚洲一欧洲中文字幕在线| 日韩a级毛片| 国产在线视频二区| 欧美激情伊人| 欧美成人手机在线视频| 国产精品密蕾丝视频| 国产99精品视频| 国产成人AV男人的天堂| 中日无码在线观看| 人妻一区二区三区无码精品一区 | 色婷婷久久| 久久综合丝袜日本网| 亚洲区第一页| 欧美亚洲一二三区| 自拍偷拍欧美日韩| a欧美在线| 亚洲欧洲国产成人综合不卡| 亚洲大学生视频在线播放 | 乱码国产乱码精品精在线播放| 国产在线专区| 精品无码专区亚洲| 国产18在线播放| 福利视频一区| 国产一在线观看| 国产欧美精品一区二区| 国产精品视频猛进猛出| 亚洲日韩国产精品综合在线观看| 国产jizzjizz视频| 亚洲免费成人网| 国产成人精品免费视频大全五级| 国产00高中生在线播放| 国产精品香蕉在线观看不卡| 特级毛片8级毛片免费观看| 免费又黄又爽又猛大片午夜| 亚洲天堂精品在线| 四虎永久在线| 青青久久91| 国产精品hd在线播放| 69国产精品视频免费| 一级福利视频| 91无码国产视频| 中文天堂在线视频| 国产v精品成人免费视频71pao| 中文字幕在线永久在线视频2020| 久久人人爽人人爽人人片aV东京热 | 日本精品αv中文字幕| 国产精品刺激对白在线| 成人福利在线观看| 久久性视频| 亚洲精品成人片在线观看| 女人18毛片一级毛片在线 | 在线观看国产小视频| 国产福利在线免费| 精品一区二区无码av| 久久精品国产国语对白| 欧美日韩久久综合| 欧美黑人欧美精品刺激| 国产人成在线视频| 免费无码又爽又黄又刺激网站| 91无码人妻精品一区| 亚洲最黄视频| 国产精品美人久久久久久AV| 成人福利在线看| 亚洲欧洲一区二区三区| 日韩 欧美 小说 综合网 另类 | 中文字幕乱码中文乱码51精品| 99手机在线视频| 九九热视频精品在线| 国内99精品激情视频精品| 黄色一级视频欧美| 狠狠色狠狠综合久久| 国产精品人成在线播放| 国产香蕉97碰碰视频VA碰碰看|