為了滿足您的部署需要,NI提供了兩種嵌入式操作系統(tǒng):NI LabVIEW Real - Time和Microsoft Windows Embedded Standard7(WES7)。每種操作系統(tǒng)對于不同的任務和操作具有不同的優(yōu)勢。 LabVIEW Real-Time保證了關鍵任務和閉環(huán)控制的確定性和可靠性,而WES7則提供了一個可擴展的平臺,可以使用眾多軟件,并集成用戶界面功能。在為特定應用選擇最好的操作系統(tǒng)時需要有很多因素需要考慮。本指南衡量了兩個操作系統(tǒng)的優(yōu)缺點,以幫助您為您的應用做出最佳的選擇。
1. 我的應用需要有多可靠?
圖1. 與一般的操作系統(tǒng)相比,LabVIEW Real-Time 和WES7 提供了更高的可靠性
許多嵌入式應用要求高度的可靠性。確定性和長時間連續(xù)運行特性都是嵌入式系統(tǒng)可靠性的關鍵指標。相比Windows7 或者Mac OSX等一般的操作系統(tǒng)而言, LabVIEW Real-Time 和WES7均可以提供更高的可靠性。LabVIEW Real-Time憑借高度的確定性和出色的連續(xù)運行特性,提供了最大程度的應用程序可靠性。 雖然WES7并沒有確定性可言,但相比一般用途的操作系統(tǒng),它在連續(xù)運行特性方面卻有優(yōu)勢。
確定性
通過使用?LabVIEW FPGA 模塊,在無需將您的系統(tǒng)部署至硬件的情況下,全新設計的LabVIEW Real-Time操作系統(tǒng)可為您提供最高級的應用可靠性。可靠性的一個關鍵指標就是確定性,即一個操作系統(tǒng)能始終如一地在已知時間長度內(nèi)完成一項任務。在LabVIEW中多次或循環(huán)執(zhí)行相同任務時執(zhí)行時間的變化或抖動范圍越大,確定性就越差。 LabVIEW Real-Time的確定性程度非常高,但WES7根本不具有確定性。這是在匹配應用時二者之間的一個關鍵區(qū)別。
LabVIEW Real-Time通過非常精確地對您的應用程序任務進行時序控制來實現(xiàn)確定性。通過使用定時循環(huán)以及設置任務優(yōu)先級,操作系統(tǒng)可以確保關鍵應用程序執(zhí)行始終如一,耗時固定。從時間機制上來說,WES7與Windows 7擁有相同的工作方式,允許任何任務優(yōu)先執(zhí)行,但這也導致了沒有任何確定性可言。
對于閉環(huán)比例積分微分(Proportional Integral Derivative, PID)控制這樣需要恒定應用執(zhí)行時間的應用程序、或者緊急制動這樣的事件響應來說,都應該使用LabVIEW Real-Time。像EtherCAT這樣的確定性的通信協(xié)議,通常被用于NI C系列擴展或運動控制,也需要LabVIEW Real-Time,而不能通過WES7來實現(xiàn)。
連續(xù)運行
可靠性的另一個關鍵是確保一個應用程序長時間正常運行。許多嵌入式應用要求連續(xù)運行。LabVIEW Real-Time和WES7的特點和性能,使得它們能夠滿足長時間運行任務的需求。
LabVIEW Real-Time操作系統(tǒng)組件已經(jīng)精簡到了能夠?qū)崿F(xiàn)單個應用程序的確定性的最小數(shù)量。減少系統(tǒng)組件、著眼于穩(wěn)定性,降低了由于系統(tǒng)崩潰和其它不可預見的問題而導致的系統(tǒng)故障發(fā)生的概率。而通用操作系統(tǒng)必須為多種不同的應用提供資源和執(zhí)行時間。每個額外的應用程序,都將增加系統(tǒng)故障的機會和頻率。
LabVIEW Real-Time也有一些諸如可靠文件系統(tǒng)和看門狗定時器的附加功能可以進一步保證其長時間應用程序可靠性。由Datalight開發(fā)的可靠文件系統(tǒng)是專為那些需要高可靠性的嵌入式系統(tǒng)設計的。它有效減少了如突然斷電這種系統(tǒng)事件而導致的文件損壞??撮T狗定時器確保了在應用程序出現(xiàn)故障時,系統(tǒng)可自動快速恢復運行狀態(tài)。
憑借增強型寫過濾器(Enhanced Write Filter, EWF)這一新特性,WES7增強了Windows 7的通用操作操作系統(tǒng)屬性,以確保更高的可靠性。 在對RAM磁盤進行操作時,EWF會過濾文件寫操作,從而保護您的文件不會在諸如系統(tǒng)斷電等意外系統(tǒng)事件中損壞。而當系統(tǒng)正常關閉,或得到用戶或應用程序的指示時,存儲在RAM磁盤的文件就會被寫入物理磁盤。當系統(tǒng)非常脆弱、文件易損壞時,您就可以使用這一安全保護功能;確保僅當安全的時候,才進行操作。如果在文件被寫入磁盤之前斷電了,寫操作的文件就會丟失,但重要的應用和系統(tǒng)文件將被保護。
啟用EWF功能后,你也可以使用WES7的另一個功能:您可以休眠一次系統(tǒng),然后可以多次從這一休眠系統(tǒng)鏡像中恢復。此功能可縮寫為一次休眠/多次恢復(Hibernate once/resume many, HORM)。使用HORM,您可以使用完全按照您希望的方式運行您所部署的應用程序以配置您的系統(tǒng)、休眠系統(tǒng),并保證在以后每次供電周期內(nèi)都能這樣運行。不需要任何進一步的干預,該系統(tǒng)將以完全相同的正常運行狀態(tài)。該功能可確保在發(fā)生故障時,您的系統(tǒng)可以在最短時間內(nèi)返回到可用狀態(tài)。許多嵌入式應用,如信息亭,都將從這個功能中獲益。
2. 用戶將如何與我的系統(tǒng)進行交互?
大多數(shù)應用程序都需要某種形式的用戶交互和可視化界面。在選擇一款嵌入式操作系統(tǒng)時,開發(fā)人機界面(Human machine interface, HMI)是一個重要的考慮因素。
由于LabVIEW Real-Time為了確保確定性和可靠性,一直在走專業(yè)化、精簡化的道路,圖形顯示功能已經(jīng)從操作系統(tǒng)中刪除。因此,為了實現(xiàn)圖形化的人機界面,必須添加一個單獨的計算機系統(tǒng)。它可以是一臺PC、筆記本電腦或使用LabVIEW Touch Panel模塊開發(fā)的觸摸屏電腦。 Windows和基于Windows系統(tǒng)的LabVIEW應用程序?qū)⒃谶@臺單獨的計算機上使用,并通過TCP、UDP,或者LabVIEW共享變量以及其它通信方法輔助HMI任務,建立與LabVIEW Real-Time應用通信的接口。
您還可以通過其它手段實現(xiàn)LabVIEW Real-Time系統(tǒng)的人機交互界面。比如連接到一個專用的字符顯示器,或者通過串行端口連接其它接口硬件,或者使用如LabVIEW Web UI Builder這樣的瘦Web客戶端。
WES7不需要一個單獨的計算機來實現(xiàn)HMI。您可以使用您的WES7 LabVIEW 應用作為您的HMI。通過相連的VGA顯示器來顯示前面板,并通過USB與鍵盤、鼠標和觸摸屏交互。這樣通過使用更便宜和更容易維護的VGA顯示器來取代單獨的Windows電腦,可以減少您的整體系統(tǒng)成本。
了解更多關于如何為您的應用選擇合適的可視化方案,請點擊這里
3. 我需要在我的系統(tǒng)上建一臺OPC服務器嗎?
用于過程控制的OLE(OLE for process control, OPC),是存在于大量的數(shù)據(jù)源之間的標準接口。這些數(shù)據(jù)源包括可編程邏輯控制器(Programmable logic controllers, PLC)、遠程終端單元(Remote terminal units, RTU)和傳感器等。它使這些設備能夠與HMI / SCADA應用程序、應用工具和數(shù)據(jù)庫進行通信。 National Instruments提供了多種使用OPC的通信方式。然而,因為OPC從根本上是基于Windows技術的,如果您打算在嵌入式系統(tǒng)上搭建一臺OPC服務器,您必須使用WES7作為您的操作系統(tǒng)。
了解更多關于OPC.
NI OPC 服務器提供了一個擁有多驅(qū)動器插件的OPC服務器,可以與多種基于串口或太網(wǎng)的工業(yè)設備通信。使用該服務器,再結(jié)合您的LabVIEW客戶端應用程序,您將能夠在WES7中創(chuàng)建一個能夠與多種不同器設備通信的獨立OPC系統(tǒng)。
除了OPC以外,WES7還可以支持許多工程設備和行業(yè)通信協(xié)議。 National Instruments提供了多種通信方法,包括Modbus、EPICS,以及通過?LabVIEW數(shù)據(jù)記錄和監(jiān)控 (DSC)模塊的OPC。其中DSC模塊僅僅可以工作在Windows操作系統(tǒng)中。
LabVIEW Real-Time本身只接受Modbus和EPICS的通信方法。而OPC通信是基于Windows技術的,所以LabVIEW Real-Time系統(tǒng)本身無法通過OPC通信。所以,它們必須通過TCP、UDP或LabVIEW共享變量,與一個單獨的基于Windows的計算機通信,并通過這臺計算機的翻譯才能與OPC進行通信。這可以很容易地使用LabVIEW DSC和創(chuàng)建在基于Windoss的計算機上的LabVIEW共享變量來實現(xiàn)。
了解如何使用OPC連接LabVIEW和第三方硬件..
4. 我需要將我的系統(tǒng)直接與數(shù)據(jù)庫相連嗎?
WES7支持通過LabVIEW DSC模塊向數(shù)據(jù)庫寫入數(shù)據(jù)。使用LabVIEW DSC的數(shù)據(jù)庫記錄是專為快捷的配置和操作而設計的。它可以輕松地連接并直接登錄到許多常見的關系型數(shù)據(jù)庫,如Oracle、MySQL和微軟SQL。 LabVIEW的DSC還包括其自身的綜合數(shù)據(jù)庫Citadel,該數(shù)據(jù)庫是專為長期高效的數(shù)據(jù)記錄而優(yōu)化過的。
WES7還可支持LabVIEW?數(shù)據(jù)庫連接工具包,以提供更加自由的數(shù)據(jù)類型的創(chuàng)建、查詢和恢復操作。它允許從任何符合微軟AciveX數(shù)據(jù)對象(AciveX Data Object, ADO)、OPC數(shù)據(jù)庫連接(OPC database connectivity, ODBC),或?qū)ο箧溄雍颓度霐?shù)據(jù)庫(Object linking and embedding database, OLE DB)標準的供應商那里獲取數(shù)據(jù)?。 和LabVIEW DSC類似,數(shù)據(jù)庫連接工具包還支持一般數(shù)據(jù)庫(如Oracal和微軟SQL)的通信。
像OPC一樣,許多常見的數(shù)據(jù)庫通信方法都是基于Windows技術的,如ActiveX。正因為如此,LabVIEW數(shù)據(jù)庫連接工具包并不支持LabVIEW Real - Time應用。
了解更多關于LabVIEW DSC相關數(shù)據(jù)記錄.
使用LabVIEW Real-Time的數(shù)據(jù)庫連接仍然是可行的,但中間的Windows主機必不可少;這與LabVIEW Real-Time實現(xiàn)OPC通信以及HMI功能的方法類似。標準通信方法,如TCP、UDP和LabVIEW共享變量是用來與此獨立的Windows電腦主機通信的。
了解更多關于在LabVIEW Real-Time中與關系數(shù)據(jù)庫通信
5. 支持Windows平臺的LabVIEW是否能為我的應用提供更多功能?
Windows下的LabVIEW由很多LabVIEW Real-Time中并沒有的附加工具包、模塊和庫所支持。使用LabVIEW應用程序生成器進行部署,WES7將支持完整版本的Windows平臺LabVIEW。
如果您的應用程序需要的是僅支持Windows的LabVIEW模塊(如LabVIEW DSC),或僅支持Windows的工具包(如報表生成和數(shù)據(jù)搜索工具包),你應該考慮使用WES7作為您的嵌入式操作系統(tǒng)。
當使用Windows平臺的LabVIEW時,還會有一系列DLL、NET程序集和ActiveX控件,可以擴展您的應用程序功能,并縮短開發(fā)時間。
LabVIEW平臺的很多模塊和工具包均可在Windows和LabVIEW Real-Time中使用,如LabVIEW控制設計與仿真模塊以及Internet連接工具包。因此,重要的是檢查您的需求,確保您所使用的所有模塊、工具包以及相關軟件都能被LabVIEW Real-Time所支持。
了解更多關于LabVIEW的附加軟件
當在LabVIEW Real-Time和WES7之間為您的嵌入式應用進行選擇時,首先需要考慮您的應用需要。如果確定性和連續(xù)運行是您維護系統(tǒng)正常運行的關鍵,請選擇LabVIEW Real-Time。
但是,如果你的關鍵需求包括集成的人機界面以及訪問由Windows和 LabVIEW Windows平臺共同提供給你的軟件環(huán)境時,請選擇WES7。
評論
查看更多