孫逸神
摘要:當(dāng)前,實(shí)時(shí)仿真主要采用dSpace和xPC Target。前者價(jià)格昂貴,后者需要兩臺(tái)PC連接使用。由于現(xiàn)在PC性能的不斷提高以及虛擬機(jī)技術(shù)的應(yīng)用,可以僅在一臺(tái)PC上實(shí)現(xiàn)實(shí)時(shí)的離線仿真。本文利用VMware建立虛擬的目標(biāo)機(jī),成功地在一臺(tái)PC上實(shí)現(xiàn)xPC Target環(huán)境的實(shí)時(shí)離線仿真。
關(guān)鍵詞:實(shí)時(shí)仿真;xPC Target;虛擬機(jī);VMware
中圖分類號(hào):TP391文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2009)22-0000-00
1 xPC Target運(yùn)行環(huán)境
眾所周知,基于simulink的仿真屬于偽實(shí)時(shí)仿真,其仿真時(shí)間并不與實(shí)際時(shí)間同步,而與機(jī)器執(zhí)行速度和模型復(fù)雜度有關(guān)。要進(jìn)行實(shí)時(shí)仿真通??梢允褂胐Space或xPC Target。dSpace雖然使用方便,但設(shè)備昂貴。xPC Target是一種“雙機(jī)型”的解決途徑,即xPC Target需要使用兩臺(tái)PC機(jī),其中宿主機(jī)運(yùn)行Simulink,而目標(biāo)機(jī)則用于執(zhí)行所生成的代碼。目標(biāo)PC機(jī)運(yùn)行了一個(gè)高度緊縮型的實(shí)時(shí)操作內(nèi)核,該實(shí)時(shí)核采用了32位保護(hù)模式,通過以太網(wǎng)絡(luò)連接或串口線連接來實(shí)現(xiàn)宿主機(jī)和目標(biāo)機(jī)之間的通信。由于目標(biāo)PC機(jī)專門用于執(zhí)行所生成的代碼,因而xPC Target提高了性能和系統(tǒng)穩(wěn)定性。
但兩臺(tái)PC布置空間較大,而且現(xiàn)在的PC性能強(qiáng)大,完全可以使用虛擬機(jī)技術(shù)在一臺(tái)PC上實(shí)現(xiàn)xPC Target環(huán)境。
2 虛擬機(jī)介紹
通過虛擬機(jī)軟件,你可以在一臺(tái)物理計(jì)算機(jī)上模擬出一臺(tái)或多臺(tái)虛擬的計(jì)算機(jī),這些虛擬機(jī)完全就像真正的計(jì)算機(jī)那樣進(jìn)行工作,例如你可以安裝操作系統(tǒng)、安裝應(yīng)用程序、訪問網(wǎng)絡(luò)資源等等。對(duì)于你而言,它只是運(yùn)行在你物理計(jì)算機(jī)上的一個(gè)應(yīng)用程序,但是對(duì)于在虛擬機(jī)中運(yùn)行的應(yīng)用程序而言,它就像是在真正的計(jì)算機(jī)中進(jìn)行工作。常用的虛擬機(jī)有VMware、VirtualPC等。VMware的工作模式如圖1。
3 VMware實(shí)現(xiàn)xPC Target步驟
3.1 目標(biāo)機(jī)的配置
首先,用VMware配置一臺(tái)虛擬機(jī)作為目標(biāo)機(jī)。在此,使用VMware Workstation 6.0.0 build-45731。由于xPC Target對(duì)硬件要求很低且不需要安裝其它操作系統(tǒng),故可以分配較小的硬盤和內(nèi)存。最重要的設(shè)置是選擇網(wǎng)絡(luò)連接方式為“Host-only”,這樣就相當(dāng)于宿主機(jī)與目標(biāo)機(jī)直接用網(wǎng)線相連,如圖2。
由于使用“Host-only”連接方式時(shí),宿主機(jī)與目標(biāo)機(jī)通信的虛擬網(wǎng)卡為Ethernet adapter VMware Network Adapter VMnet1,其IP地址為192.168.163.xxx,可通過運(yùn)行XP系統(tǒng)ipconfig命令查看宿主機(jī)的IP地址,如圖3。
3.2 宿主機(jī)的配置
宿主機(jī)打開Matlab,在命令窗口運(yùn)行xpcexplr。VMware虛擬網(wǎng)卡的型號(hào)是AMD PCNet,恰好屬于xPC Target網(wǎng)卡驅(qū)動(dòng)列表中支持的RTLANCE類型。目標(biāo)機(jī)的IP地址設(shè)成與宿主機(jī)同一網(wǎng)段192.168.163.xxx。其余設(shè)置均使用默認(rèn)即可,如圖4。
然后制動(dòng)目標(biāo)機(jī)啟動(dòng)盤。如要制動(dòng)啟動(dòng)軟盤,則可通過虛擬軟驅(qū)制成.img格式的軟盤文件鏡像,然后在VMware虛擬的目標(biāo)機(jī)軟驅(qū)中加載。為了方便起見,在此使用Matlab 2008b制作CD啟動(dòng)盤,把生成的.iso文件加載到目標(biāo)機(jī)的CD-ROM中,如圖5。
3.3 連接宿主機(jī)與目標(biāo)機(jī)進(jìn)行仿真
啟動(dòng)VMware虛擬的目標(biāo)機(jī),顯示如圖時(shí)說明xPC Target實(shí)時(shí)內(nèi)核啟動(dòng)正常,如圖6。
啟動(dòng)宿主機(jī)Matlab,在命令窗口輸入xpctest。如果連接正常將通過8項(xiàng)測(cè)試,如圖7。
可建立Simulink模型在虛擬機(jī)上進(jìn)行目標(biāo)機(jī)的仿真,如圖8。
4 結(jié)論與展望
結(jié)果表明,虛擬機(jī)可以建立xPC Target的目標(biāo)機(jī),并與宿主機(jī)實(shí)現(xiàn)通信,進(jìn)行實(shí)時(shí)仿真。這樣可以僅使用一臺(tái)PC,省去了很多麻煩。
由于現(xiàn)在的虛擬機(jī)還無法使用物理PCI設(shè)備,故硬件在環(huán)實(shí)驗(yàn)沒無法通過此方法實(shí)現(xiàn),這是未來可以考慮解決的問題。
參考文獻(xiàn):
[1] 楊滌,李立濤.系統(tǒng)實(shí)時(shí)仿真開發(fā)環(huán)境與應(yīng)用[M].北京:清華大學(xué)出版社2002.