西门子PLC是很多人经常使用的一个产品,那么今天跟大家分享一下做上位机开发,究竟有多少种方式可以实现与西门子PLC通信。这里,我们可以从串口通信、以太网通信及OPC通信三个方面来进行说明。
一、串口通信
西门子PLC支持串口通信,在S7-200和S7-200Smart中,都直接集成了串口,但是从S7-1200到S7-1500,慢慢都取消掉了,如果需要,可以通过扩展模块的方式来增加,出现这种现象的原因,其实也是工业发展的必然结果。串口通信的优势在于简单、成本低,但是劣势也非常明显,就是传输效率低。西门子早期的串口通信主要是Profibus DP通信,但是上位机是无法直接与西门子PLC走Profibus DP通信的,因此,西门子PLC常用的串口通信方案如下所示:
PPI通信:PPI通信只针对S7-200和S7-200 Smart系列PLC,其他型号不支持。
ModbusRTU Master:西门子PLC对Modbus协议支持还是比较不错的,这里是指PLC做Slave(即从站),上位机做Master(即主站)。
ModbusRTU Slave:这里是指PLC做Master(即主站),上位机做Slave(即从站)。
二、以太网通信
西门子PLC通信还是以太网通信为主,可能很多人都知道西门子主要的两种私有协议分别是S7协议和Profinet总线,但是Profinet是一种总线协议,目前据我了解,C#是无法直接与西门子PLC走Profinet通信的。因此,西门子PLC常用的以太网通信方案如下所示:
S7通信:基本上从S7-200到S7-1500均可以实现,这里有很多可以选择的开源或商业库,包括http://s7.net、pronodave、libnodave、sharp7,也可以自己封装通信库。
ModbusTCP Server:这里是指PLC做Server(即服务器),上位机做Client(即客户端)。
ModbusTCP Client:这里是指PLC做Client(即客户端),上位机做Server(即服务器)。
OpenProtocol Server:这里是指开放式TCP通信,PLC做TCPServer(即服务器),上位机做TCPClient(即客户端)。
OpenProtocol Client:这里是指PLC做TCPClient(即客户端),上位机做TCPServer(即服务器)。
三、OPC通信
OPC通信是工业控制中常用的一种通信方式,这里主要在于OPC软件的选择以及OPCDA和OPCUA的选择,因此,西门子PLC常用的OPC通信方案如下所示:
PC Access系列:西门子针对S7-200开发PC-Access软件,针对S7-200 Smart又提供了PC-Access Smart软件,可以直接通过这些软件实现OPCDA通信。
Simatic Net 系列OPCDA:Simatic Net是西门子主推的OPC软件,支持西门子全系列,这里主要是OPCDA通信方式。
Simatic Net 系列OPCUA:新版的Simatic Net也开始支持OPCUA,这里主要是OPCUA通信方式。
KepServer 系列OPCDA:KepServer同样作为一款商业OPC软件,在国内使用率非常高,同样也支持西门子全系列,这里主要是OPCDA通信方式。
Simatic Net 系列OPCUA:新版的KepServer也开始支持OPCUA,这里主要是OPCUA通信方式。
四、PPI通讯
PPI协议是S7-200CPU基本的通信方式,通过原来自身的端口(PORT0或PORT1)就可以实现通信,是S7-200 CPU默认的通信方式。
五、MPI通讯
MPI通信是一种比较简单的通信方式,MPI网络通信的速率是19.2Kbit/s~12Mbit/s,MPI网络至多支持连接32个节点,至大通信距离为50M。通信距离远,还可以通过中继器扩展通信距离,但中继器也占用节点。
MPI网络节点通常可以挂S7-200、人机介面、编程设备、智能型ET200S及RS485中继器等网络元器件。
西门子PLC与PLC之间的MPI通信一般有3种通信方式:
1、全局数据包通信方式
2、无组态连接通信方式
3、组态连接通信方式
六、PROFIBUS-DP通讯
PROFIBUS-DP现场总线是一种开放式现场总线系统,符合欧洲标准和国际标准。PROFIBUS-DP通信的结构非常精简,传输速度很高且稳定,非常适合PLC与现场分散的I/O设备之间的通信。
新闻中心