PLCnext
揭秘PLCnext架構(gòu)特點(diǎn)及核心組件
目前,傳統(tǒng)自動(dòng)化廠商多數(shù)是提供特定的IDE編程環(huán)境來實(shí)現(xiàn)編程人員與控制器之間交互,方式相對固定,開發(fā)自由度不高,相關(guān)功能主要依賴于自動(dòng)化廠商的開發(fā)維護(hù)與更新,給用戶的自主開發(fā)工作帶來了不少困擾。面對新形勢下工業(yè)4.0以及IIoT的場景,用戶期待更自由靈活,符合個(gè)性化需求的編程交互方式。大家熟知菲尼克斯電氣全新推出的PLCnext Technology開放式控制平臺,相較于傳統(tǒng)的控制器架構(gòu)具有顛覆性優(yōu)勢。
區(qū)別于傳統(tǒng)控制器,PLCnext在保障傳統(tǒng)IEC61131-3程序?qū)崟r(shí)運(yùn)行的同時(shí)又兼容多種高級語言開發(fā)和開源程序的自由應(yīng)用。PLCnext平臺究竟是采用何種機(jī)制來保障此開放式平臺穩(wěn)定、實(shí)時(shí)、高效的運(yùn)行?在此平臺上又可以做哪些多樣化的開發(fā)?其實(shí)這些面向客戶端可呈現(xiàn)出的內(nèi)容都取決于控制器的架構(gòu)和核心組件,它們是控制器底層堅(jiān)實(shí)的基石。
PLCnext總體架構(gòu)分為五大部分:硬件與操作系統(tǒng)、中間件、PLCnext核心組件、內(nèi)部用戶組件、外部用戶組件。
硬件與操作系統(tǒng)
PLCnext底層硬件,我們根據(jù)控制器類別可采用Intel或是ARM架構(gòu)的處理器的配置。操作系統(tǒng)采用RT-Linux系統(tǒng),控制器具備確定性實(shí)時(shí)功能。Linux相對于Windows具備穩(wěn)定且更有效率、漏洞少且快速修補(bǔ)、多任務(wù)多用戶、更加安全的用戶和文件權(quán)限策略等特點(diǎn),從而一方面實(shí)現(xiàn)開發(fā)的自由度,另一方面保障程序的實(shí)時(shí)運(yùn)行。
Linux系統(tǒng)最大特點(diǎn)是底層全部由文件組成,這樣使得我們更加便捷的去訪問控制器。PLCnext Engineer可以作為傳統(tǒng)IDE實(shí)現(xiàn)程序編輯下裝,也可以通過SSH或SFTP等安全方式訪問到底層文件,直接修改文件參數(shù)配置,實(shí)現(xiàn)無IDE環(huán)境條件下安全、自由、快捷的組態(tài)設(shè)置。
中間件
中間件部分實(shí)現(xiàn)將PLCnext Technology固件與操作系統(tǒng)解耦。GDS (Global Data Space)是中間件的重要一部分,它實(shí)現(xiàn)了不同實(shí)時(shí)組件之間交互的數(shù)據(jù)一致性。RSC(Remote Service Call):Function Extension(功能擴(kuò)展)上運(yùn)行的程序通過RSC接口可以與PLCnext Technology核心組件進(jìn)行通信。您可以通過接口訪問各種函數(shù)和數(shù)據(jù)項(xiàng)。例如,您可以使用RSC服務(wù)中“IDataAccessService”獲取對GDS數(shù)據(jù)的讀寫訪問權(quán)。
PLCnext核心組件
IO與現(xiàn)場總線組件
現(xiàn)場總線及IO管理器將實(shí)現(xiàn)的現(xiàn)場總線及本地IO與PLCnext Technology相連接,用于處理數(shù)據(jù)的輸入和輸出。支持下列現(xiàn)場總線(視具體情況而定):
◾PROFINET 控制器
◾PROFINET 設(shè)備
◾Axioline F 主站 (本地總線)
◾INTERBUS (AXC F IL Adapt and AXC F XT IB)
◾……
服務(wù)組件
服務(wù)組件提供對ESM(執(zhí)行和同步管理器)、GDS(全局?jǐn)?shù)據(jù)空間)和以下系統(tǒng)組件的訪問: OPC UA 服務(wù)器、Proficloud網(wǎng)關(guān)、基于web的PLC診斷管理、eHMI web服務(wù)器(PLCnext Engineer內(nèi)基于HTML5網(wǎng)頁可視化頁面)、借助于Linux系統(tǒng)實(shí)現(xiàn)SFTP、VPN、SSH、NTP、Trace controller等服務(wù)。
系統(tǒng)組件
系統(tǒng)組件提供了PLCnext Technology的底層所有基本功能。其中系統(tǒng)管理器和PLC管理器實(shí)現(xiàn)加載所有其他系統(tǒng)組件并監(jiān)視系統(tǒng)的整體穩(wěn)定性。
系統(tǒng)管理器:在固件啟動(dòng)時(shí),系統(tǒng)管理器會確保所集成的組件和程序都按正確順序配置和啟動(dòng)。
PLC管理器:PLC管理器是一個(gè)固件組件,用于加載PLC程序代碼進(jìn)入內(nèi)存并啟動(dòng)或關(guān)閉程序。程序代碼可以是由PLCnext Engineer創(chuàng)建的IEC 61131-3程序,也可以由C++或者M(jìn)atlab ®Simulink®創(chuàng)建。它們以代碼庫(.so)文件的形式存在于PLCnext控制器上,PLC管理器通過配置文件可以加載并實(shí)例化目標(biāo)庫文件。
ESM(執(zhí)行同步管理器):ESM可以自動(dòng)識別不同來源的程序,確保IEC 61131-3、C++和MATLAB®Simulink®程序能夠?qū)崟r(shí)同步執(zhí)行。并且根據(jù)需求可將任務(wù)部署在不同核上以達(dá)到均衡負(fù)載的目的。用戶則無需關(guān)心底層具體運(yùn)行細(xì)節(jié)。在與控制器交互機(jī)制上,用戶既可以通過PLCnext Engineer IDE進(jìn)行組態(tài),也可以通過系統(tǒng)配置文件的方式對ESM進(jìn)行設(shè)置。
用戶管理器:擴(kuò)展了標(biāo)準(zhǔn)的Linux用戶管理功能,它可以管理各種各樣的用戶角色。您只能以既定的用戶角色對PLCnext固件執(zhí)行操作。您可以為每個(gè)用戶選擇一個(gè)或多個(gè)具有不同權(quán)限的用戶角色。
IEC61131運(yùn)行時(shí):ProConOS eCLR是可以執(zhí)行多個(gè)菲尼克斯自動(dòng)化任務(wù)的IEC 61131控制運(yùn)行時(shí)系統(tǒng)。所有在PLCnext Engineer內(nèi)創(chuàng)建的IEC 61131程序組件均為Arp.Plc.Eclr格式,如下圖所示。
內(nèi)部擴(kuò)展組件
用戶可以將一些輕量級的應(yīng)用開發(fā)部署在內(nèi)部用戶組件上,基于PLCnext固件之上進(jìn)行的開發(fā)。在充分了解固件本身的內(nèi)容特性后,可實(shí)現(xiàn)輕松調(diào)用多種PLCnext的API:RSC、GDS數(shù)據(jù)交互共享、組件接口、通用層等?;诖朔颇峥怂归_發(fā)了多種應(yīng)用:云連接器、MQTT通訊、Modbus TCP、Ethernet/IP、SQL等多種應(yīng)用。用戶可在PLCnext Store上可以獲取相關(guān)應(yīng)用。
外部擴(kuò)展組件
在外部用戶組件上,用戶可以直接將運(yùn)行時(shí)部署在Linux系統(tǒng)上,進(jìn)行多種應(yīng)用的自由開發(fā),這也是PLCnext開放性最直接的體現(xiàn)。例如:Codesys runtime、Java、 Python、Node.js、Rust、.NET core等。用戶可以將所需的環(huán)境直接部署在PLCnext上,在最小改動(dòng)的情況下便利將原程序運(yùn)行在PLCnext平臺上,并且可以通過OS API直接訪問控制器硬件。并通過service manager來啟用RSC 服務(wù),實(shí)現(xiàn)與PLCnext component部分交互。
可以看出,用戶既可以在外部用戶組件上相對獨(dú)立運(yùn)行熟悉的高級語言算法,集成已有多種開源算法,來實(shí)現(xiàn)高級智能應(yīng)用開發(fā)。又可以通過服務(wù)管理器調(diào)用相關(guān)RSC服務(wù)實(shí)現(xiàn)與控制器本體硬件及相關(guān)PLC程序數(shù)據(jù)進(jìn)行交互。
菲尼克斯電氣瞄準(zhǔn)工業(yè)4.0及智能制造需求打造的全新控制平臺PLCnext,架構(gòu)先進(jìn),組件豐富,結(jié)合了傳統(tǒng)控制器和智能設(shè)備的特點(diǎn),真正在控制層實(shí)現(xiàn)了IT與OT融合,為IT工程師和電氣工程師提供了實(shí)現(xiàn)全新自動(dòng)化模式的平臺,助力用戶全面提升面向未來數(shù)字化世界和智能制造領(lǐng)域的競爭力。