西門子PLC通信還是以太網通信為主,我們常說的西門子通信協議分別是S7協議和Profinet協議,但是Profinet是一種總線協議,目前,C#是無法直接與西門子PLC走Profinet通信的。因此,西門子PLC常用的以太網通信方案如下所示:
S7通信:基本上從S7-200到S7-1500均可以實現,這里有很多可以選擇的開源或商業庫,包括http://s7.net、pronodave、libnodave、sharp7,也可以自己封裝通信庫。
ModbusTCPServer:這里是指PLC做Server(即服務器),上位機做Client(即客戶端)。
ModbusTCPClient:這里是指PLC做Client(即客戶端),上位機做Server(即服務器)。
OpenProtocolServer:這里是指開放式TCP通信,PLC做TCPServer(即服務器),上位機做TCPClient(即客戶端)。
OpenProtocolClient:這里是指PLC做TCPClient(即客戶端),上位機做TCPServer(即服務器)。