基于LabVIEWRT的數(shù)據(jù)實(shí)時(shí)傳輸系統(tǒng)
在仿真系統(tǒng)諸如分布式仿真系統(tǒng)、半實(shí)物仿真系統(tǒng)中, 數(shù)據(jù)通訊的正確性、快速性和可靠性對(duì)仿真的質(zhì)量有著至關(guān)重要的決定影響。而通訊的實(shí)時(shí)性能與各部分的數(shù)據(jù)傳輸速度密切相關(guān), 其中包括了硬件以及軟件上各方面的因素。以往在硬件上采取的措施常常是研制高速的數(shù)字 /模擬量接口設(shè)備等, 但這種方法存在很多缺陷, 如缺乏通用性、傳輸距離受較大限制等等。而隨著各種實(shí)時(shí)網(wǎng)絡(luò)產(chǎn)品的開發(fā), 其在仿真系統(tǒng)中的應(yīng)用也愈加增多。這些產(chǎn)品的共同特點(diǎn)就是通訊速率快、傳輸距離長、通用性好, 并且可以連接多個(gè)節(jié)點(diǎn)組成一個(gè)實(shí)時(shí)網(wǎng)絡(luò),因而具有十分優(yōu)越的應(yīng)用性。本文根據(jù)實(shí)際仿真設(shè)備通訊的需求, 利用反射內(nèi)存VM IP-CI- 5565及其集線器 VM I ACC - 5595組建了一個(gè)數(shù)據(jù)傳輸網(wǎng)絡(luò)。并結(jié)合虛擬儀器編程語言LabVIEW( RT ), 編制了數(shù)據(jù)采集/傳送軟件。通過從硬件以及軟件上多方面對(duì)提升系統(tǒng)實(shí)時(shí)性能的考慮, 使得系統(tǒng)具有良好的工作表現(xiàn), 從而組建了一個(gè)具有較好適用性以及擴(kuò)展性的通訊系統(tǒng)。
本文引用地址:http://butianyuan.cn/article/201701/337322.htm1 系統(tǒng)硬件組建
1 1 1 實(shí)時(shí)通訊網(wǎng)絡(luò)與反射內(nèi)存
實(shí)時(shí)通訊網(wǎng)絡(luò)是用于需要較高實(shí)時(shí)性要求的應(yīng)用領(lǐng)域的專用網(wǎng)絡(luò)通訊技術(shù), 一般采用基于高速網(wǎng)絡(luò)的共享存儲(chǔ)器技術(shù)實(shí)現(xiàn)。它除了具有嚴(yán)格的傳輸確定性和可預(yù)測性外, 還具有速度高、通信協(xié)議簡單、宿主機(jī)負(fù)載輕、軟硬件平臺(tái)適應(yīng)性強(qiáng)、可靠的傳輸糾錯(cuò)能力、支持中斷信號(hào)的傳輸?shù)忍攸c(diǎn)。實(shí)時(shí)通訊網(wǎng)絡(luò)可廣泛用于各種領(lǐng)域, 例如實(shí)時(shí)的飛行仿真器、核電站仿真器、電訊、高速過程控制 (軋鋼廠和制鋁廠 )、高速測試和測量以及軍事系統(tǒng)。VMIPCI-5565是 VMIC公司生產(chǎn)的基于 PCI總線的反射內(nèi)存卡, 它使用光纖進(jìn)行數(shù)據(jù)的傳輸, 從而不存在電磁輻射,也不受到來自無線電的電子 /電磁干擾, 具有很好的安全性和可靠性。另外, 5565采取了高性能的 H ub (網(wǎng)絡(luò)集線器 ) 結(jié)構(gòu)配置成實(shí)時(shí)網(wǎng)絡(luò), 可以實(shí)現(xiàn)多達(dá) 256個(gè)節(jié)點(diǎn)的計(jì)算機(jī)內(nèi)存共享, 可以實(shí)現(xiàn)高速的實(shí)時(shí)數(shù)據(jù)通信[ 1]。因而, 其對(duì)于分布式仿真系統(tǒng)來說, 具有良好的應(yīng)用價(jià)值。 VMIPCI- 5565組建的網(wǎng)絡(luò)結(jié)構(gòu)如圖 1所示。
圖 1反射內(nèi)存網(wǎng)絡(luò)組建結(jié)構(gòu)
1 1 2 VM IACC- 5595的內(nèi)部結(jié)構(gòu)與系統(tǒng)網(wǎng)絡(luò)結(jié)構(gòu)反射內(nèi)存卡 VM IPC I- 5565對(duì)應(yīng)的網(wǎng)絡(luò)集線器型號(hào)為 VMIACC-5595 , 它是一個(gè)8端口并且通過層疊可以實(shí)現(xiàn) 256節(jié)點(diǎn)網(wǎng)絡(luò)的網(wǎng)絡(luò)集線器。而由于 VM I ACC - 5595獨(dú) 特的內(nèi)部結(jié)構(gòu) [ 2], 使得在配置網(wǎng)絡(luò)時(shí)會(huì)發(fā)現(xiàn)整個(gè)網(wǎng)絡(luò)的實(shí)時(shí)性能有一定的差異。根據(jù) VM IACC - 5595內(nèi)部結(jié)構(gòu)圖[ 2]可知, 在利用其組建網(wǎng)絡(luò)時(shí), 縱使從外部看網(wǎng)絡(luò)是星形結(jié)構(gòu), 但內(nèi)部依然是雙環(huán)形結(jié)構(gòu)。VM I ACC - 5595簡化的內(nèi)部結(jié)構(gòu)如圖 2所示。
圖 2 簡化的 VM I ACC- 5595單機(jī)結(jié)構(gòu)
可見由于 VM I ACC- 5595內(nèi)部存在由 0、1、 2 、 3和 4、 5 、6、7節(jié)點(diǎn)組成的兩個(gè)環(huán)形, 數(shù)據(jù)在任意兩節(jié)點(diǎn)之間傳送的時(shí)間并不像嚴(yán)格意義上的星形結(jié)構(gòu)那樣完全相同。如數(shù)據(jù)從 0節(jié)點(diǎn)傳向 1節(jié)點(diǎn)和傳向 3節(jié)點(diǎn)所費(fèi)時(shí)間理論上應(yīng)該是 1 /3關(guān)系,這樣的差異在實(shí)際網(wǎng)絡(luò)節(jié)點(diǎn)功能配置時(shí)是不得不考慮的。通過分析可以發(fā)現(xiàn), 在設(shè)計(jì)網(wǎng)絡(luò)時(shí)需要著重考慮節(jié)點(diǎn) 3和節(jié)點(diǎn) 0、節(jié)點(diǎn) 7和節(jié)點(diǎn) 4的內(nèi)在關(guān)系, 這樣可以即滿足設(shè)計(jì)需求, 又能夠減少數(shù)據(jù)在反射內(nèi)存網(wǎng)絡(luò)上的傳輸延遲。即根據(jù)節(jié)點(diǎn)對(duì)數(shù)據(jù)的要求來配置節(jié)點(diǎn)的位置, 若節(jié)點(diǎn)以發(fā)送數(shù)據(jù)為主則應(yīng)配置在 3或 7節(jié)點(diǎn), 而以接受處理為主要任務(wù)的節(jié)點(diǎn)則應(yīng)配置在 4或 0節(jié)點(diǎn)。當(dāng)存在數(shù)據(jù)向其它網(wǎng)絡(luò)轉(zhuǎn)接或集中處理節(jié)點(diǎn)時(shí), 這點(diǎn)的考慮就會(huì)更加重要。后經(jīng)實(shí)驗(yàn)證明, 不同配置的網(wǎng)絡(luò)在 100個(gè) 32位精度數(shù)據(jù)傳輸時(shí)間上的差異在 10微秒級(jí)左右, 而隨著數(shù)據(jù)量的增加時(shí)間差異會(huì)更加顯著。在本系統(tǒng)中, 把主要產(chǎn)生數(shù)據(jù)的設(shè)備) ) ) /海鷹仿真機(jī) 0和 /銀河仿真工作站0 (或數(shù)據(jù)采集計(jì)算機(jī) ) 置于 3 、 7節(jié)點(diǎn),而把數(shù)據(jù)處理設(shè)備如 SG I圖形工作站、干擾與背景實(shí)時(shí)控制計(jì)算機(jī)等配置與其它節(jié)點(diǎn)。這樣, 從節(jié)點(diǎn)的功能配置上力求到了最優(yōu)化。
2 系統(tǒng)軟件實(shí)現(xiàn)
2 1 1 LabVIEW 編程環(huán)境及其實(shí)時(shí)組件 (RT)
系統(tǒng)中數(shù)據(jù)采集 /傳送程序利用 LabVIEW ( RT) 編制而成。 LabV I EW 是由美國NI公司推出了一種優(yōu)秀的面向?qū)ο蟮膱D形化編程語言, 目前正被大量用于開發(fā)數(shù)據(jù)監(jiān)測、數(shù)據(jù)測量采集系統(tǒng)、工業(yè)自動(dòng)控制相同和數(shù)據(jù)分析系統(tǒng)等領(lǐng)域。LabV IEW 的實(shí)時(shí)組件 LabV I EW Rea l- T i m e ( RT) 是為了滿足測控領(lǐng)域中日益增多的實(shí)時(shí)性需求而出現(xiàn)的。與 Lab -V I EW 不同, RT的工作模式為: 在宿主機(jī)上開發(fā)應(yīng)用程序,然后下載到目標(biāo)計(jì)算機(jī)上去運(yùn)行。目標(biāo)機(jī)可以是 N I公司專門研制的 RT目標(biāo)智能板卡, 也可以是通用的計(jì)算機(jī), 但目標(biāo)機(jī)上運(yùn)行的卻是一個(gè)專門下載 (預(yù)先安裝 ) 的實(shí)時(shí)系統(tǒng)。比如文中系統(tǒng)所采取的 LabVIEW RT 810版本, 其目標(biāo)機(jī)上運(yùn)行的是 N I基于實(shí)時(shí)系統(tǒng) Pharap改造開發(fā)的實(shí)時(shí)系統(tǒng)。由于目標(biāo)機(jī)運(yùn)行的與本身操作系統(tǒng)無關(guān), RT工作模式就具有較好的適用性[3]
。
應(yīng)用 LabV IEW RT環(huán)境編程時(shí), 必須的步驟如下:
( 1) 配置目標(biāo)計(jì)算機(jī) [4]。包括設(shè)置第一啟動(dòng)盤 (根據(jù)下一步的啟動(dòng)方式?jīng)Q定是硬盤還是軟盤 ), 屏蔽無關(guān)的操作、中斷如 USB功能等, 以使目標(biāo)機(jī)啟動(dòng)在實(shí)時(shí)狀態(tài)下及盡量增強(qiáng)目標(biāo)機(jī)的實(shí)時(shí)性能。
評(píng)論