《電子技術(shù)應用》
您所在的位置:首頁 > 測試測量 > 解決方案 > 使用NI VeriStand 2010創(chuàng)建分布式系統(tǒng)

使用NI VeriStand 2010創(chuàng)建分布式系統(tǒng)

2010-11-22
作者:NI

概覽
  分布式系統(tǒng)有多種形式。例如,在與中央處理器不同的位置處理輸入和輸出(I/O)的方法通常稱為分布式I/O。另一個例子是為單系統(tǒng)添加多個處理器,對運算分布式化。本文討論了如何使用NI VeriStand 2010創(chuàng)建分布式處理和I/O系統(tǒng),其中包含將開發(fā)分布式系統(tǒng)變得更為有效和有力的許多特性。
 
  例如飛機、汽車或其他工業(yè)項目中的控制系統(tǒng)常常需要比單個處理器板卡和機箱所能提供的更多的計算能力和I/O來 進行監(jiān)視、測試或仿真。本白皮書詳細介紹了如何創(chuàng)建可擴展、分布式的同步系統(tǒng),滿足大型硬件在環(huán)(HIL)或?qū)崟r測試系統(tǒng)的需求。NI VeriStand 2010是用于配置包括HIL測試系統(tǒng)在內(nèi)的實時測試應用的即用型軟件環(huán)境。利用NI VeriStand 2010特性,無需對軟件體系結(jié)構(gòu)進行設計、編程和維護,就可以創(chuàng)建系統(tǒng)。
 
分布式系統(tǒng)需求
  您通常可以將大型系統(tǒng)分解為多個不同組件,獨立實現(xiàn)每個組件的硬件和軟件。要提供更高計算能力和I/O容量,您可以在不同硬件上實現(xiàn)系統(tǒng)的各個組件。
 
  例如,飛機的襟翼、縫翼、方向舵、引擎、副翼等都需要仿真和測試。可以如圖1所示,將系統(tǒng)分解為多個硬件部件,從而使用模塊化方法。


[+] 放大圖片
圖1. 可以用多個PXI系統(tǒng)仿真飛機組件


 
系統(tǒng)級集成特性
  使用NI VeriStand 2010,一個或多個操作者(主機)計算機可以在最少用戶配置的情況下,與一個或多個實時執(zhí)行目標進行通信。NI VeriStand處理操作者計算機(主機)與實時執(zhí)行目標之間的通信。圖2給出了包含主機和目標的簡單拓撲結(jié)構(gòu)。


圖2. 簡單拓撲結(jié)構(gòu)


  主機用于和目標通信的組件是NI VeriStand Gateway。雖然通信管理是自動完成的,它是理解大型拓撲結(jié)構(gòu)所需的重要概念。
 
  您可以方便地在NI VeriStand 2010系統(tǒng)瀏覽器中將目標添加到拓撲結(jié)構(gòu)中。


圖3. 在系統(tǒng)瀏覽器中添加目標


  單個系統(tǒng)定義文件可以包含無限多個目標,甚至可以混和不同目標類型。


圖4. 單個系統(tǒng)定義文件可以包含多個目標


  每個目標有自己的專用硬件和軟件配置,所有目標可以通過單個網(wǎng)關實現(xiàn)部署和交互。


圖5. 可在單個主機上部署多個目標并進行交互


  通過與另一個主機網(wǎng)關進行通信,其他主機計算機可以與相同的拓撲結(jié)構(gòu)進行通信。


圖6. 多個主機與多個目標拓撲結(jié)構(gòu)


  要完成這點,其他主機只需要修改NI VeriStand網(wǎng)關地址為遠程主機即可。其他應用程序保持不變。
 
在分布式計算機之間共享數(shù)據(jù)
  要讓分布式系統(tǒng)如同單個系統(tǒng)一樣工作,必須在系統(tǒng)組件之間共享數(shù)據(jù)。這是讓不同部分可以一起工作的關鍵要素。通常可以使用反射內(nèi)存接口實現(xiàn)。
 
  反射內(nèi)存網(wǎng)絡是實時本地局域網(wǎng)(LAN),每個計算機總是擁有共享內(nèi)存集合的最新本地復本。這些專用網(wǎng)絡是為了提供高確定性的數(shù)據(jù)通信而專門設計的。可以提供多種分布式仿真和工業(yè)控制應用所需的高級定時性能。反射內(nèi)存網(wǎng)絡獲益于通用數(shù)據(jù)網(wǎng)絡,是不同需求推動下產(chǎn)生的完全獨立的技術(shù),適用于要求確定性、簡單實現(xiàn)和軟件負荷小的應用程序1。
 
  反射內(nèi)存為NI VeriStand提供了在多個目標之間共享數(shù)據(jù)的能力,并且滿足了整個系統(tǒng)的性能與確定性需求。使用反射內(nèi)存,仿真模型可以分割在不同的目標系統(tǒng)上同時執(zhí)行。輸入與輸出數(shù)值通過反射內(nèi)存在不同目標系統(tǒng)上共享。GE Fanuc反射內(nèi)存板卡本地支持NI VeriStand 2010。NI VeriStand 2010的許多組件可以使用反射內(nèi)存無縫創(chuàng)建多目標系統(tǒng)。
 
  此外,NI VeriStand 2010將數(shù)據(jù)在目標之間自動分步用于不同的用途。例如,您可以配置激勵(測試)檔案運行在需要目標B數(shù)據(jù)的目標A上。NI VeriStand 2010在目標之間自動創(chuàng)建并激活鏈路獲取數(shù)據(jù)。這可以在無需用戶配置的情況下自動完成。
 
  圖7顯示了包含反射內(nèi)存板卡的實例系統(tǒng)。


圖7. 使用反射內(nèi)存的多個機箱


同步分布式系統(tǒng)
  在設計系統(tǒng)時,考慮時序與同步的需求是十分重要的。如果分布式硬件不進行同步,輸入和輸出的采樣將不同時發(fā)生。另外,隨著時間的推移,漂移會導致系統(tǒng)的一個組件比另一個組件得到更多采樣,盡管它們被配置為同樣的速率。如果仿真是您的目標,這將導致問題。例如,兩個襟翼仿真可能處于不同的時間狀態(tài)。另外,因為數(shù)據(jù)并非來自相同的時間點,數(shù)據(jù)記錄和分析將被破壞。
 
  同步基礎概要介紹了例如時鐘漂移和時鐘偏差的許多細節(jié)。
 
  分布式系統(tǒng)的同步包括硬件同步和軟件同步。您可以選擇性地將整個系統(tǒng)與GPS或IRIG等外部時間參考進行同步。
 
硬件同步
  硬件同步意味著系統(tǒng)的每個硬件共享一個硬件參考時鐘,用于定時和開始I/O任務。系統(tǒng)中的每個硬件都利用相同的硬件參考時鐘生成其自己的時鐘,每個硬件都在相同的時間開始。
 
  常見的硬件定時和同步任務實例包含多個數(shù)據(jù)采集板卡的同步采樣,在更新數(shù)據(jù)采集模擬輸出同時,更新現(xiàn)場可編程門陣列(FPGA)板卡數(shù)字輸出PWM的占空比,在數(shù)字萬用表(DMM)與開關之間握手,波形發(fā)生器和數(shù)字化儀的鎖相,或者射頻(RF)下變頻器和中頻(IF)數(shù)字化儀的同步。
 
  您可以用NI PXI機箱創(chuàng)建NI VeriStand分布式系統(tǒng)。PXI(PCI eXtensions for Instrumentation,面向儀器系統(tǒng)的PCI擴展)是基于PC的堅固平臺,提供了用于測量與自動化系統(tǒng)的高性能低成本部署解決方案。PXI將外設組件互連標準(PCI)電子總線與堅固的CompactPCI模塊化Eurocard機械封裝結(jié)合在一起,并增加了專用同步總線和關鍵軟件特性。
 
  機箱包含高性能PXI背板,其中包含PCI總線和定時與觸發(fā)總線。PXI模塊化儀器增加了10 MHz專用系統(tǒng)參考時鐘、PXI觸發(fā)總線、星型觸發(fā)總線和槽對槽局部總線,滿足了高級定時、同步與邊帶通信的需求,并且不損失任何PCI的優(yōu)點。
 
  在PXI機箱之間共享參考時鐘最簡單的方法是使用機箱背部的CLK10 BNC接頭。幾乎所有的現(xiàn)代PXI機箱都有BNC端子。每個機箱有CLK10輸出接頭和CLK10輸入接頭。將機箱的CLK10輸出與另一個機箱的CLK10輸入相連,就可以確保使用相同的參考時鐘。
 
  要共享開始觸發(fā)器,推薦使用NI數(shù)據(jù)采集(DAQ)設備。一個機箱可以將觸發(fā)信號導出供一個或多個其他機箱作為開始信號使用。
 
  圖8 是硬件同步配置的例子。在這個配置中,NI PXI-1042主機箱利用BNC電纜將CLK10作為時鐘參考導出到N個其他PXI機箱。所有機箱均導入外部開始信號。您可以閱讀高級定時與同步系統(tǒng)設計了解多機箱同步的更多信息。


圖8. 多機箱的硬件同步


  NI VeriStand在一個機箱內(nèi)自動處理所有硬件同步,還可以導出或?qū)氩蓸訒r鐘和觸發(fā)信號到其他目標上。
 
  在NI VeriStand系統(tǒng)瀏覽器中將數(shù)據(jù)采集設備添加到系統(tǒng)配置后,您可以在圖9中看到一個數(shù)據(jù)采集設備的名稱用粗體顯示。NI VeriStand自動選擇了這個設備作為機箱的主數(shù)據(jù)采集設備。主數(shù)據(jù)采集設備接受外部觸發(fā)信號完成多目標同步。NI VeriStand在單個機箱中將從數(shù)據(jù)采集設備與主數(shù)據(jù)采集設備進行同步,從設備不包含在多機箱同步中。


圖9. 粗體顯示的設備被選中作為主數(shù)據(jù)采集設備


  在機箱頁面中,您可以定制主數(shù)據(jù)采集設備選擇并進行觸發(fā)。在樹形結(jié)構(gòu)中選擇機箱。您可以看到如圖10所示的頁面,圖中標出了對多機箱硬件同步而言重要的環(huán)節(jié)。


圖10. 在PFI 6機箱中導入觸發(fā)器


  在圖10中,機箱配置為在PFI 6的Dev1中導入觸發(fā)器。查閱Dev1設備的硬件手冊尋找PFI 6端子。
 
  在創(chuàng)建這些配置并完成BNC與觸發(fā)器排線之后,可以將它們部署到運行VeriStand的實時執(zhí)行目標上來實現(xiàn)硬件同步。
 
  如果您所使用的機箱沒有CLK10 BNC接頭,或是您需要更好的同步性能,您可以使用定時與同步板卡(NI-665x)實現(xiàn)相同功能。如果您決定使用NI-665x板卡實現(xiàn)這個功能,需要確定每個系統(tǒng)配置都添加了“10MHz PLL”定時與同步設備,而且配置為導入或?qū)С?0 MHz時鐘。
 
軟件同步
  軟件同步意味著系統(tǒng)中(在這個例子中是NI VeriStand實時引擎),不同代碼塊共享相同的執(zhí)行時鐘和一個開始信號實現(xiàn)在相同時間開始執(zhí)行。
 
  在適當?shù)挠布O備可用時,NI VeriStand實時引擎被設計為使用硬件定時單點I/O(HWTSPIO)。HWTSPIO是一種數(shù)據(jù)采集軟硬件特性,允許將軟件執(zhí)行鎖定到物理硬件時鐘上。將軟件鎖定到硬件只適用于模擬輸入,因此即使不使用模擬輸入通道,PXI系統(tǒng)配置中至少要包含一個模擬輸入通道。
 
  所以如果硬件采用如上同步方式,模擬輸入通道會出現(xiàn)在每個配置中,每個目標的NI VeriStand實時引擎軟件被自動同步。
 
參考時鐘同步
  在一些情況下,不僅要求系統(tǒng)組件相互同步,還要求同步到外部時鐘參考。因為上述同步系統(tǒng)組件的方法包含主目標與分布式系統(tǒng)其他部分共享時鐘和觸發(fā)信號,參考時鐘同步可以通過簡單地將主目標連接到外部時鐘參考實現(xiàn)。
 
  NI VeriStand的Clock 10 Discipline附加組件讓NI VeriStand引擎可以根據(jù)外部參考時鐘進行同步。外部參考時鐘可以是NI PXI-6682模塊支持的參考之一。附加組件結(jié)合PXI-6682和其他定時與同步板卡,對PXI機箱按照外部參考時鐘約束。您可以在這個頁面了解關于這個附加組件的更多細節(jié)。
 
 圖11給出了相互同步并與外部時鐘參考進行同步的分布式系統(tǒng)實例。


圖11. 多機箱與外部時鐘參考的硬件同步


結(jié)論
  使用NI VeriStand,您可以配置實時I/O、激勵檔案、數(shù)據(jù)記錄、警報和其他任務,通過從多個軟件環(huán)境中導入模型實現(xiàn)控制算法或系統(tǒng)仿真,使用運行時間可編輯的用戶界面快速構(gòu)建可以和商用工具媲美的測試系統(tǒng)界面,使用NI LabVIEW、NI TestStand、ANSI C/C++、.NET、Python和其他軟件環(huán)境添加定制功能。
 
  通過利用NI VeriStand 2010,您可以方便地創(chuàng)建分布式HIL、實時測試或是采用高效多目標特性監(jiān)視系統(tǒng)。
 
參考文獻
  1. GE反射內(nèi)存節(jié)點 - http://www.ge-ip.com/products/family/reflective-memory-nodes
  更多資源:
  軟件下載:Veristand完整版開發(fā)系統(tǒng)
  技術(shù)資料:下載NI Veristand 2010 指南
  更多關于NI Veristand技術(shù)信息

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經(jīng)濟損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。