分布式系統有多種形式。例如,在與中央處理器不同的位置處理輸入和輸出(I/O)的方法通常稱為分布式I/O。另一個例子是為單系統添加多個處理器,對運算分布式化。本文討論了如何使用NI VeriStand 2010創建分布式處理和I/O系統,其中包含將開發分布式系統變得更為有效和有力的許多特性。例如飛機、汽車或其他工業項目中的控制系統常常需要比單個處理器板卡和機箱所能提供的更多的計算能力和I/O來進行監視、測試或仿真。本白皮書詳細介紹了如何創建可擴展、分布式的同步系統,滿足大型硬件在環(HIL)或實時測試系統的需求。NI VeriStand 2010是用于配置包括HIL測試系統在內的實時測試應用的即用型軟件環境。利用NI VeriStand 2010特性,無需對軟件體系結構進行設計、編程和維護,就可以創建系統。
分布式系統需求
您通常可以將大型系統分解為多個不同組件,獨立實現每個組件的硬件和軟件。要提供更高計算能力和I/O容量,您可以在不同硬件上實現系統的各個組件。
例如,飛機的襟翼、縫翼、方向舵、引擎、副翼等都需要仿真和測試。可以如圖1所示,將系統分解為多個硬件部件,從而使用模塊化方法。
圖1. 可以用多個PXI系統仿真飛機組件
系統級集成特性
使用NI VeriStand 2010,一個或多個操作者(主機)計算機可以在最少用戶配置的情況下,與一個或多個實時執行目標進行通信。NI VeriStand處理操作者計算機(主機)與實時執行目標之間的通信。圖2給出了包含主機和目標的簡單拓撲結構。
圖2. 簡單拓撲結構
主機用于和目標通信的組件是NI VeriStand Gateway。雖然通信管理是自動完成的,它是理解大型拓撲結構所需的重要概念。
您可以方便地在NI VeriStand 2010系統瀏覽器中將目標添加到拓撲結構中。
圖3. 在系統瀏覽器中添加目標
單個系統定義文件可以包含無限多個目標,甚至可以混和不同目標類型。
圖4. 單個系統定義文件可以包含多個目標
每個目標有自己的專用硬件和軟件配置,所有目標可以通過單個網關實現部署和交互。
圖5. 可在單個主機上部署多個目標并進行交互
通過與另一個主機網關進行通信,其他主機計算機可以與相同的拓撲結構進行通信。
圖6. 多個主機與多個目標拓撲結構
要完成這點,其他主機只需要修改NI VeriStand網關地址為遠程主機即可。其他應用程序保持不變。
在分布式計算機之間共享數據
要讓分布式系統如同單個系統一樣工作,必須在系統組件之間共享數據。這是讓不同部分可以一起工作的關鍵要素。通常可以使用反射內存接口實現。
反射內存網絡是實時本地局域網(LAN),每個計算機總是擁有共享內存集合的最新本地復本。這些專用網絡是為了提供高確定性的數據通信而專門設計的。可以提供多種分布式仿真和工業控制應用所需的高級定時性能。反射內存網絡獲益于通用數據網絡,是不同需求推動下產生的完全獨立的技術,適用于要求確定性、簡單實現和軟件負荷小的應用程序1。
反射內存為NI VeriStand提供了在多個目標之間共享數據的能力,并且滿足了整個系統的性能與確定性需求。使用反射內存,仿真模型可以分割在不同的目標系統上同時執行。輸入與輸出數值通過反射內存在不同目標系統上共享。GE Fanuc反射內存板卡本地支持NI VeriStand 2010。NI VeriStand 2010的許多組件可以使用反射內存無縫創建多目標系統。
此外,NI VeriStand 2010將數據在目標之間自動分步用于不同的用途。例如,您可以配置激勵(測試)檔案運行在需要目標B數據的目標A上。NI VeriStand 2010在目標之間自動創建并激活鏈路獲取數據。這可以在無需用戶配置的情況下自動完成。
圖7顯示了包含反射內存板卡的實例系統。
圖7. 使用反射內存的多個機箱
同步分布式系統
在設計系統時,考慮時序與同步的需求是十分重要的。如果分布式硬件不進行同步,輸入和輸出的采樣將不同時發生。另外,隨著時間的推移,漂移會導致系統的一個組件比另一個組件得到更多采樣,盡管它們被配置為同樣的速率。如果仿真是您的目標,這將導致問題。例如,兩個襟翼仿真可能處于不同的時間狀態。另外,因為數據并非來自相同的時間點,數據記錄和分析將被破壞。
同步基礎概要介紹了例如時鐘漂移和時鐘偏差的許多細節。
分布式系統的同步包括硬件同步和軟件同步。您可以選擇性地將整個系統與GPS或IRIG等外部時間參考進行同步。
硬件同步
硬件同步意味著系統的每個硬件共享一個硬件參考時鐘,用于定時和開始I/O任務。系統中的每個硬件都利用相同的硬件參考時鐘生成其自己的時鐘,每個硬件都在相同的時間開始。
常見的硬件定時和同步任務實例包含多個數據采集板卡的同步采樣,在更新數據采集模擬輸出同時,更新現場可編程門陣列(FPGA)板卡數字輸出PWM的占空比,在數字萬用表(DMM)與開關之間握手,波形發生器和數字化儀的鎖相,或者射頻(RF)下變頻器和中頻(IF)數字化儀的同步。
您可以用NI PXI機箱創建NI VeriStand分布式系統。PXI(PCI eXtensions for InstrumentaTIon,面向儀器系統的PCI擴展)是基于PC的堅固平臺,提供了用于測量與自動化系統的高性能低成本部署解決方案。PXI將外設組件互連標準(PCI)電子總線與堅固的CompactPCI模塊化Eurocard機械封裝結合在一起,并增加了專用同步總線和關鍵軟件特性。
機箱包含高性能PXI背板,其中包含PCI總線和定時與觸發總線。PXI模塊化儀器增加了10 MHz專用系統參考時鐘、PXI觸發總線、星型觸發總線和槽對槽局部總線,滿足了高級定時、同步與邊帶通信的需求,并且不損失任何PCI的優點。
在PXI機箱之間共享參考時鐘最簡單的方法是使用機箱背部的CLK10 BNC接頭。幾乎所有的現代PXI機箱都有BNC端子。每個機箱有CLK10輸出接頭和CLK10輸入接頭。將機箱的CLK10輸出與另一個機箱的CLK10輸入相連,就可以確保使用相同的參考時鐘。
要共享開始觸發器,推薦使用NI數據采集(DAQ)設備。一個機箱可以將觸發信號導出供一個或多個其他機箱作為開始信號使用。
圖8 是硬件同步配置的例子。在這個配置中,NI PXI-1042主機箱利用BNC電纜將CLK10作為時鐘參考導出到N個其他PXI機箱。所有機箱均導入外部開始信號。您可以閱讀高級定時與同步系統設計了解多機箱同步的更多信息。
圖8. 多機箱的硬件同步
NI VeriStand在一個機箱內自動處理所有硬件同步,還可以導出或導入采樣時鐘和觸發信號到其他目標上。
在NI VeriStand系統瀏覽器中將數據采集設備添加到系統配置后,您可以在圖9中看到一個數據采集設備的名稱用粗體顯示。NI VeriStand自動選擇了這個設備作為機箱的主數據采集設備。主數據采集設備接受外部觸發信號完成多目標同步。NI VeriStand在單個機箱中將從數據采集設備與主數據采集設備進行同步,從設備不包含在多機箱同步中。
圖9. 粗體顯示的設備被選中作為主數據采集設備
在機箱頁面中,您可以定制主數據采集設備選擇并進行觸發。在樹形結構中選擇機箱。您可以看到如圖10所示的頁面,圖中標出了對多機箱硬件同步而言重要的環節。
圖10. 在PFI 6機箱中導入觸發器
在圖10中,機箱配置為在PFI 6的Dev1中導入觸發器。查閱Dev1設備的硬件手冊尋找PFI 6端子。
在創建這些配置并完成BNC與觸發器排線之后,可以將它們部署到運行VeriStand的實時執行目標上來實現硬件同步。
如果您所使用的機箱沒有CLK10 BNC接頭,或是您需要更好的同步性能,您可以使用定時與同步板卡(NI-665x)實現相同功能。如果您決定使用NI-665x板卡實現這個功能,需要確定每個系統配置都添加了“10MHz PLL”定時與同步設備,而且配置為導入或導出10 MHz時鐘。
軟件同步
軟件同步意味著系統中(在這個例子中是NI VeriStand實時引擎),不同代碼塊共享相同的執行時鐘和一個開始信號實現在相同時間開始執行。
在適當的硬件設備可用時,NI VeriStand實時引擎被設計為使用硬件定時單點I/O(HWTSPIO)。HWTSPIO是一種數據采集軟硬件特性,允許將軟件執行鎖定到物理硬件時鐘上。將軟件鎖定到硬件只適用于模擬輸入,因此即使不使用模擬輸入通道,PXI系統配置中至少要包含一個模擬輸入通道。
所以如果硬件采用如上同步方式,模擬輸入通道會出現在每個配置中,每個目標的NI VeriStand實時引擎軟件被自動同步。
參考時鐘同步
在一些情況下,不僅要求系統組件相互同步,還要求同步到外部時鐘參考。因為上述同步系統組件的方法包含主目標與分布式系統其他部分共享時鐘和觸發信號,參考時鐘同步可以通過簡單地將主目標連接到外部時鐘參考實現。
NI VeriStand的Clock 10 Discipline附加組件讓NI VeriStand引擎可以根據外部參考時鐘進行同步。外部參考時鐘可以是NI PXI-6682模塊支持的參考之一。附加組件結合PXI-6682和其他定時與同步板卡,對PXI機箱按照外部參考時鐘約束。您可以在這個頁面了解關于這個附加組件的更多細節。
圖11給出了相互同步并與外部時鐘參考進行同步的分布式系統實例。
圖11. 多機箱與外部時鐘參考的硬件同步
結論
使用NI VeriStand,您可以配置實時I/O、激勵檔案、數據記錄、警報和其他任務,通過從多個軟件環境中導入模型實現控制算法或系統仿真,使用運行時間可編輯的用戶界面快速構建可以和商用工具媲美的測試系統界面,使用NI LabVIEW、NI TestStand、ANSI C/C++、.NET、Python和其他軟件環境添加定制功能。
通過利用NI VeriStand 2010,您可以方便地創建分布式HIL、實時測試或是采用高效多目標特性監視系統。
評論
查看更多