交互式應(yīng)用一舉兩得 實(shí)時(shí)仿真與嵌入式系統(tǒng)并構(gòu)
圖5 仿真參數(shù)code generation options設(shè)置(2) 配置模板聯(lián)編連文件tornado.tmf,該文件位于%matlabroot%/rtw/c/tornado目錄下,要對(duì)這個(gè)文件作如下修改:
#------------ Macros read by make_rtw -------------
MAKECMD = C:Tornado2.2hostx86-win32 inmake
HOST = PC
#-------------Tool Locations-----------------------------
WIND_BASE= C:Tornado2.2
WIND_REGISTRY=$(COMPUTERNAME)
WIND_HOST_TYPE=x86-win32
#------------Vxworks Configuration------------------
VX_TARGET_TYPE = pentium
CPU_TYPE = PENTIUM2
#-------------Macros for Downloading to Target-----
TARGET=target
TGTSVR_HOST=host
VX_CORE_LOC = $(WIND_BASE)/target/config/ pcPentium3/vxWorks
(3) 程序的生成、編譯、連接
設(shè)置完參數(shù),保存后,開始創(chuàng)建程序,單擊上圖中的Build按鈕,開始編譯程序,成功后可在當(dāng)前的目錄中產(chǎn)生了一個(gè) vxmodel_tornado_rtw的文件夾和一個(gè)目標(biāo)文件vxmodel.lo。
(4) 手動(dòng)下載和運(yùn)行可執(zhí)行文件
現(xiàn)在可以將實(shí)時(shí)程序下載到目標(biāo)機(jī)中,具體的方法是在Tornado集成開發(fā)環(huán)境中啟動(dòng)WindSh,在WindSh窗口執(zhí)行如下命令:
ldvxmodel.lo
請(qǐng)注意要保證lo文件在WindSh的工作路徑下。VxWorks實(shí)時(shí)程序定義了一個(gè)函數(shù)rt_main(),用來創(chuàng)建和執(zhí)行模型代碼、完成與 Simulink的通信(如果選擇了外部模式方式)。rt_main函數(shù)在文件rt_main.c中定義,這個(gè)文件位于目錄%matlabroot% twc ornado中。
在WindSh窗口中調(diào)用rt_main函數(shù),開始運(yùn)行程序:sp(rt_main,vxmodel,"-tf 100 -w ","*",0,30,17725)
參數(shù)的含義分別是:
rt_main()是實(shí)時(shí)程序定義的函數(shù),用來產(chǎn)生任務(wù)執(zhí)行代碼和與Simulink進(jìn)行通信;
-tf用于指定仿真時(shí)間,此處設(shè)為100秒;
-w表示在外部模式時(shí),運(yùn)行前等待來自Simulink消息的觸發(fā);
“*”為安裝所有的信號(hào);
0表示使用各自的模塊名;
評(píng)論