VC與MatlabSimulink混合編程的實(shí)現(xiàn)與研究.pdf

VC與MatlabSimulink混合編程的實(shí)現(xiàn)與研究.pdf

ID:51496841

大小:305.90 KB

頁數(shù):3頁

時(shí)間:2020-03-25

VC與MatlabSimulink混合編程的實(shí)現(xiàn)與研究.pdf_第1頁
VC與MatlabSimulink混合編程的實(shí)現(xiàn)與研究.pdf_第2頁
VC與MatlabSimulink混合編程的實(shí)現(xiàn)與研究.pdf_第3頁
資源描述:

《VC與MatlabSimulink混合編程的實(shí)現(xiàn)與研究.pdf》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。

1、第7卷第21期2007年11月科學(xué)技術(shù)與工程Vo.l7No.21Nov.20071671-1819(2007)21-5685-03ScienceTechnologyandEngineeringC2007Sc.iTech.Engng.VC++與Matlab/Smiulink混合編程的實(shí)現(xiàn)與研究曹羅生(湖南益陽職業(yè)技術(shù)學(xué)院計(jì)算機(jī)系,益陽413000)摘要介紹了將Matlab/Simulink模型轉(zhuǎn)換成目標(biāo)語言模型的方法。避免了模型仿真速度慢的問題,且降低了目標(biāo)語言編程建模的工作強(qiáng)度。重點(diǎn)探討了VC++與Matlab/Simulink進(jìn)行混合編程的方法,運(yùn)用這些方法,可以在V

2、C++中方便地使用Matlab/Simulink的數(shù)值計(jì)算能力。關(guān)鍵詞仿真RTWSimulinkM/atlabVC++中圖法分類號(hào)TP311;文獻(xiàn)標(biāo)識(shí)碼AMatlab/Simulink是近年應(yīng)用廣泛的一種科學(xué)計(jì)要用戶安裝Real-TimeWorkshopAdaCoder。算仿真軟件,但對(duì)于一些仿真實(shí)時(shí)性要求較高的場(chǎng)②實(shí)時(shí)程序:將代碼轉(zhuǎn)換為適合硬件運(yùn)行的實(shí)合,如串口通信、數(shù)據(jù)采集等仿真任務(wù)時(shí),Matlab環(huán)時(shí)程序,對(duì)應(yīng)代碼被設(shè)置為和一個(gè)外部時(shí)鐘源相連境就難以勝任。C/C++語言是一種執(zhí)行效率較高接,且以用戶設(shè)定的固定采樣速率運(yùn)行。的語言,將它與Real—TimeWorks

3、hop(RTW)子集相③高性能單機(jī)仿真程序:將生成代碼和普通實(shí)結(jié)合,采用C++與Matlab混合編程技術(shù)就可以實(shí)時(shí)系統(tǒng)目標(biāo)文件一起使用,為單機(jī)仿真生成可執(zhí)行現(xiàn)Matlab/Simulink模型向C/C++語言模型的轉(zhuǎn)程序。換,滿足仿真實(shí)時(shí)性的要求。RTW用戶界面可通過Simulink提供的仿真參數(shù)框“SimulinkParameters”選項(xiàng)打開。1RTW簡(jiǎn)介2RTW代碼生成RTW是和Matlab/Simulink一起使用的一個(gè)工RTW的代碼生成過程如圖1所示,這些過程都具,它可以直接從Simulink模型生成代碼,并且自動(dòng)由RTW自動(dòng)完成。建立可以在不同環(huán)境下運(yùn)行的程

4、序,這些環(huán)境包括實(shí)時(shí)系統(tǒng)和單機(jī)仿真。RTW的應(yīng)用場(chǎng)合十分廣泛,主要包括以下幾個(gè)方面:⑴實(shí)時(shí)控制:可以使用Matlab/Simulink設(shè)計(jì)控制系統(tǒng),并且從建立的圖表模型生成代碼,編譯并載入它們到目標(biāo)硬件。⑵生成可插入到其它仿真程序的便攜C代碼,根據(jù)用戶設(shè)置可以生成如下3種代碼。①Ada代碼:從Simulink模塊生成Ada代碼,只2007年7月4日收到圖1RTW生成過程5686科學(xué)技術(shù)與工程7卷RTW自動(dòng)完成從Simulink模型建立一個(gè)單機(jī)變量相對(duì)于時(shí)間的曲線圖,如圖3所示。程序的任務(wù),當(dāng)Build按鈕按下后,make命令即被調(diào)用,調(diào)用過程主要包括三個(gè)步驟。第一步生成

5、模型代碼,第二步生成一個(gè)指定建立過程的makefile,第三步調(diào)用具有定制過程的makefile的make命令。最終生成一個(gè)可執(zhí)行程序文件。下面以模型file為例說明RTW代碼的生成方法:⑴設(shè)置SolverOptionsType參數(shù),并選擇Ode5圖2Simulink得到的結(jié)果解碼器。⑵設(shè)置FixedStepSize參數(shù)為一個(gè)合適的值(≤0.5)。⑶選擇Real—TimeWorkshop頁并按下Build。以上3個(gè)步驟完成后即可生成file模型的C代碼,代碼文件共有6個(gè),它們分別是file.c、file.h、file-expor.th、file.reg、file.prm

6、和file.exe。這6個(gè)文圖3實(shí)時(shí)程序得到的結(jié)果件都存儲(chǔ)在Matlab目錄下。特別需要注意的是在生成可執(zhí)行文件file.exe從這兩個(gè)圖可以看出二者結(jié)果幾乎相同,這說時(shí),還需要在Matlab中找到幾個(gè)源文件,它們包括明由RTW生成的代碼是正確的,而從Simulink模型主程序grt-main.c、驅(qū)動(dòng)模塊執(zhí)行的代碼rt-sim.c、實(shí)得到C代碼模型幾乎沒有進(jìn)行代碼的編輯,大大降現(xiàn)積分運(yùn)算的代碼Ode5.c以及生成Simulink數(shù)據(jù)低了目標(biāo)語言編程建模的強(qiáng)度。結(jié)構(gòu)的代碼rtwlog.c。4Matlab/Smiulink與VC++混合編程3代碼檢測(cè)首先要建立一個(gè)Win3

7、2ConsoleApplication工上述執(zhí)行文件file.exe建立之后,就可以將生程文件,將由RTW生成的C代碼文件加入到成的file模型單機(jī)仿真版本和Simulink模型進(jìn)行性Sources目錄中。然后按如下步驟完成對(duì)VC++環(huán)能比較。注意在比較之前要進(jìn)行一些必要的設(shè)置,境的設(shè)置。必須選擇“Parameters”命令并選中“Savedateto⑴選擇菜單Project(Settings(C/C++workspace”復(fù)選框以激活它下面的文本框,在第一Category:Preprocessor個(gè)文本框中填入Stick-input,用

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無此問題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。