PLCHandler——輕松訪問(wèn)來(lái)自外部系統(tǒng)的CODESYS控制器中的PLC變量
PLCHandler為第三方的客戶端和基于CODESYS開發(fā)的PLC之間建立通訊,PLCHandler封裝了完整的底層通信協(xié)議,并提供了API接口。該API接口提供對(duì)所有可用功能和服務(wù)的訪問(wèn)。
PLCHandler提供以下功能和服務(wù):
(1)建立或終止與PLC的通信。
(2)讀取PLC的變量列表。
(3)循環(huán)讀取PLC變量。
(4)同步讀取PLC變量值。
(5)同步將變量值寫入PLC。
(6)實(shí)現(xiàn)與多個(gè)PLC同時(shí)通信。
(7)斷開連接后自動(dòng)重新連接PLC。
(8)程序從CODESYS下載到PLC后自動(dòng)重啟。
(9)將信號(hào)事件(數(shù)據(jù)更改,狀態(tài)更改)發(fā)送給客戶端。
(10)獲取、設(shè)置PLC應(yīng)用程序的狀態(tài)。
(11)訪問(wèn)PLC底層文件系統(tǒng)。
PLCHandler作為一個(gè)軟件開發(fā)工具包(SDK),包含所有C ++頭文件,PLCHandler庫(kù),示例配置文件和演示源代碼等。典型的PLCHandler庫(kù)作為靜態(tài)鏈接庫(kù)(例如WIN32系統(tǒng)下:PLCHandlerLink.lib或者PLCHandlerLinkMFC.lib),封裝了C++類以及附加的C的接口。對(duì)于WINDOWS平臺(tái),PLCHandler也提供動(dòng)態(tài)鏈接庫(kù)(PLCHandlerDll.lib)和ActiveX-Control(PLCHandlerX.ocx)插件。
下圖說(shuō)明了PLCHandler和API接口的內(nèi)部結(jié)構(gòu):
為了使PLCHandler能夠在不同的操作系統(tǒng)上工作,需要使用CODESYS Runtime System 中的系統(tǒng)組件。這些組件代表了硬件和操作系統(tǒng)抽象層,并且隱藏了PLCHandler的所有其他組件的處理器和操作系統(tǒng)具體的特性。每個(gè)系統(tǒng)組件都有其特定的功能,例如文件訪問(wèn),訪問(wèn)堆內(nèi)存,訪問(wèn)RS232串行接口,訪問(wèn)操作系統(tǒng)任務(wù)等。