CODESYS軟件分三層架構,可用下圖來表示:
1、開發層
CODESYS Development System(具有完善的在線編程和離線編程功能)、編譯器及其配件組件、可視化界面編程組件等,同時供用戶可選的運動控制模塊可使其功能更加完整和強大。
IEC 61131-3 編輯器。CODESYS提供了所有IEC 61131-3所以定義的五種編程語言:如結構化文本(ST)、順序功能圖(SFC)、功能塊圖(FBD)、梯形圖(LD)和指令表,此外還支持連續功能圖(CFC)的編程語言。
編譯器:負責將 CODESYS 中的應用程序轉換為機器代碼并且優化可編程控制器的性能。當用戶輸入了錯誤的應用程序代碼時,立刻會接收到編譯器發出的語法錯誤警告及錯誤信息,讓編程人員可以迅速做出相應糾正。用戶可以不必改變編程方式,就可以使用不同的基于 CODESYS 編程的硬件裝置(系統)進行工程開發。
硬件/現場總線配置器:針對不同制造商的硬件設備及不同現場總線協議,該部分負責在CODESYS中對相應參數進行設定。
可視化界面編程:直接在 CODESYS 中即可實現可視化編程(人機界面HMI),系統已經集成了可視化編輯器。
運動控制模塊:運動控制功能已經集成在CODESYS中,形成了SoftMotion(CNC)軟件包。基于PLCopen的工具包可以實現單軸、多軸運動;電子凸輪傳動;電子齒輪傳動;復雜多軸CNC控制等。
2、通信層
應用開發層和硬件設備層之間的通訊是由CODESYS中的網關服務器來實現的,CODESYS網關服務器中安裝了OPC服務器。
CODESYS 網關服務器。作用在應用開發層和硬件設備層之間,可以使用TCP/IP協議或通過CAN等總線實現遠程訪問,是CODESYS開發工具包不可分割的一部分。
CODESYS OPC服務器。對基于CODESYS進行編程的控制器,無需考慮所使用的硬件CPU,已經集成并實現了OPC V2.0規范的多客戶端功能,且能同時訪問多個控制器。
3、設備層
在使用基于IEC 61131-3標準的編程開發工具CODESYS對一個硬件設備進行操作前,硬件供應商必須要在設備層預先安裝CODESYS的實時核(CODESYS Runtime)。同時,也可以通過使用CODESYS的可選組件:如CODESYS目標可視化編程模塊或網絡可視化編程模塊來實現功能上的擴展。
4、CODESYS軟件架構中各層關系
CODESYS代碼執行機制是編譯執行,用戶在開發層編寫完成的IEC程序通過集成的編譯器編譯為二進制代碼,再通過以太網或串口下載至設備層中,最終該應用程序中的文件已經被轉為二進制代碼存放在目標設備中,根據用戶設定的執行方式循環執行對應程序。
以下為CODESYS產品系列的架構圖,點擊不同部分圖片,可鏈接至產品介紹。