控制器開發|EC-Win/LxWin ——Windows實時擴展的新方案

控制工程中文版 發佈 2024-01-21T15:31:49.996516+00:00

本文圖片來源:盟通科技作者 | 盟通科技在現有計算機作業系統中,Linux和Windows是應用最為廣泛的作業系統,在工業自動化與工業網際網路領域也被廣泛應用。


作者 | 盟通科技


在現有計算機作業系統中,Linux和Windows是應用最為廣泛的作業系統,在工業自動化與工業網際網路領域也被廣泛應用。Windows依靠其較為友好而強大的圖形化界面幫助使用者降低學習成本及提高人機互動性,但很遺憾的是,Windows作業系統通常難以在實時性要求高的工業應用場景中使用。因此,Windows實時擴展方案也就成為了部分用戶的迫切需求。


為幫助需要在Windows實現實時擴展的從業人員,來自德國的Acontis公司帶來了成熟、可靠且高效的實時擴展方案,針對不同且更細緻的需求,給出了相應的方案供用戶選擇。接下來本文將簡單介紹Acontis公司、講解其方案並表現其特點,助力相關項目的實現和落地。


01

公司簡介


來自德國的Acontis公司是最早研究應用工業網際網路總線協議的一批方案服務提供商,該公司在2004年即加入了EtherCAT 技術協會(ETG)。在長期的支持與服務中,Acontis逐漸意識到Windows實時擴展技術的必要性與其可觀的前景,因此研發推出了EC-Win這一個可以讓用戶在Windows系統上,實現專業、開放的實時EtherCAT平台的解決方案。經多年的研發積累和市場化應用,Windows實時擴展方案已成為其重要的技術服務之一,在業界受到了廣泛的關注,也收穫了良好的口碑。


盟通科技作為Acontis公司在中國區的唯一合作夥伴,促進了EthehrCAT相關技術的推廣和分享,為進一步的雙贏乃至多贏奠定了堅實基礎。盟通科技樂於幫助每一位有需要的用戶,來幫助實現EtherCAT技術與Windows實時擴展等需求。


02

EC-Win:一款基於EtherCAT的實時方案


盟通科技推出了為Windows系統提供專業開放的實時EtherCAT平台解決方案——EC-Win。其核心組件是強大的EC-Master主站,該主站經過專門優化和驗證,與可靠的Windows實時技術與虛擬機管理程序等配套技術完美匹配。




EC-Win解決方案的硬體平台採用了多核系統,方案中的Windows系統在獨立的CPU核心上運行,EtherCAT主節點和實時應用程式則在另外的核心運行。快速且經過優化處理的Inter和Realtak網絡控制器驅動為方案的高實時性保駕護航;另一方面,EC-Win對虛擬機的集成確保了實時應用程式與EtherCAT從站的同步、本地PC定時器與EtherCAT從站的分布時間同步,是EC-Win方案實時性的重要保障。為幫助用戶診斷和監測,EC-Win推出了針對性的診斷工具EC-Lyser,全方位的保證方案的實時性。


EC-Win解決方案支持微軟的Visual Studio,用戶可以使用Visual Studio作為開發和調試的工具,將Windows應用開發部分與實時應用開發部分相整合,避免昂貴的擴展控制卡、虛擬機管理程序或其他更加昂貴的的Windows實時擴展方案。


EC-Win解決方案通過隔離的方法來處理實時應用程式和非實時的Windows部分。與使用專有RTOS或全實時環境不同,此解決方案在隱藏的實時虛擬化解決方案之上嵌入了標準的實時環境。這個虛擬化環境是關鍵,與傳統的實時擴展相比,它可以更好地讓實時應用程式與Windows系統隔離。這樣一來可以有效防止發生系統故障等問題,更好地幫助用戶的開發工作。




總結下來,EC-Win具有以下特點:


● 集成式虛擬機管理程序:將Windows系統和實時部分(作業系統)完全隔離,有效避免Windows 系統故障(藍屏)。


● 對實時部分提供標準支持:為搶占式多任務、線程、事件、信號量、互斥鎖等提供Win32編程示例。


● 支持32位或64位模式:支持多種模式的Windows系統。


● 快速高解析度的系統定時器(解析度低於 10 納秒):其中斷頻率最高可達20kHz。


● Windows系統和實時部分均可運行於多個CPU內核(SMP:對稱多處理):這對於四核或其他多核CPU尤其重要。


● Windows和實時部分之間採用虛擬TCP/IP網絡:因此,可以使用EtherCAT診斷的全部功能。


● 支持Microsoft Visual Studio的舒適開發和調試環境:可以通過乙太網進行遠程調試。


另外,EC-Win還提供了一個適配的管理程序來幫助用戶管理,其程序頁面如下圖,該程序具有諸如將兼容 EtherCAT 的硬體分配給實時環境;為實時環境分配其他硬體;Windows和實時環境的 CPU 分配和內存配置可通過GUI完成等獨有功能。




03

LxWin:並行運行Linux

——Windows擴展新方案


如果說EC-Win是更偏向于于EtherCAT的實時方案的話,那麼Lxwin則是更具有普適性的實時方案。


LxWin解決方案是將一個實時的Linux系統和Windows一起運行在同一個系統上。LxWin同樣使用了一個分離的方法,把實時應用和非實時的Windows部分隔開:LxWin在虛擬機環境中嵌入了一個Linux硬實時內核,使用LxWin提供的虛擬機管理程序,可以並行運行和實時管理Windows和極快的實時Linux系統。


作為LxWin解決方案的重要組成部分,Linux是在工業領域應用最為廣泛的實時作業系統,由於Linux確定的硬實時行為、包含多樣的開發工具以及對硬體驅動程序和軟體的廣泛支持,領先的工業控制器製造商廣泛使用Linux作為實時開發環境,典型應用是具有高實時要求的PLC、運動控制和數字控制系統。




如果客戶當前使用的解決方案將Windows的GUI系統和基於Linux的控制器模塊分為2 個不同的部分,且需要將二者整合,那麼,LxWin 是將此類解決方案整合到一個硬體上的特有方法。進而使Eclipse或Microsoft Visual Studio(從VS 2015開始)可用於Linux的實時軟體開發中。


LxWin具有的最顯著的優點有:

硬體整合:節省第二個控制器系統或智能插件卡,提高了平均無故障時間。


利用Linux的實時特性,可以實現微秒級的響應時間。


軟體兼容。可以在同一個系統上運行Windows和Linux的應用程式,包括支持EtherCAT等實時通信協議的軟體。


不同於LxWin直接將Linux作為是實時內核,在當前的實時開發領域,部分Windows實時擴展方案是通過讓專有的實時環境與 Windows 並行(有時甚至嵌入到 Windows 中)來實現實時功能的擴展。實時擴展環境的開發者往往需要多方面綜合考慮專有環境的可用性。這對於使用者來說是一個不小的挑戰,因為用戶們可能需要重新學習並使用該 Windows 實時擴展的專有環境來開發實時應用程式。開發人員必須依靠實時內核或環境的供應商提供的功能來決定要實現的功能,有時可能會耗費大量時間調試,甚至最終可能導致功能的缺失。


盟通科技推出的 LxWin 的優勢就在於,開發人員根本不需要理會 Linux 內核配置和構建, LxWin 附帶的 Linux 內核已經提供補丁、配置和硬實時內核的測試功能,最終可以實現非常短的Cycle time,最短可低至50微秒。Linux的優勢除了作為實時內核之外,Linux 本身帶來的可用優勢也有很多,如:Socket 套接字接口,完整的 POSIX API,用戶空間/內核空間隔離,多任務處理和多進程等複雜功能。


當今市場上,幾乎所有的硬體的驅動程序都適配 Linux系統,這意味著開發人員無需等待供應商實現或發布特定的驅動程序。另外,藉助 Linux 可以使用大量的軟體庫、協議棧和中間件(包括開原始碼和封閉原始碼的商業產品):C++ STL、Boost、Corba、OPC / UA、DDS、AVB / TSN、EtherCAT、PROFINET、基於軟體的 PLC、運動控制庫、CNC解決方案等等。


盟通科技推出LxWin 附帶的所有 Linux 組件代碼也是開源的。如有需要,客戶可以深入調試內核,即 LxWin 的客戶可以獲得整個 Linux 原始碼的解決方案,以確保其對軟體的最大控制權。同EC-Win一樣,Lxwin完全支持研發人員使用 Microsoft Visual Studio進行實時應用程式的軟體開發和調試工作。

關鍵字: