首页 历史故事S7-1200 PLC支持的通信协议及特点

S7-1200 PLC支持的通信协议及特点

【摘要】:目前S7-1200 PLC只支持S7通信的服务器端,还不能支持客户端的通信。TCPTCP是由RFC793描述的标准协议,可以在通信对象之间建立稳定、安全的服务连接。TCP具有如下特点:1)与硬件绑定的高效通信协议。10)支持大多数应用协议,如TELNET、FTP都使用TCP。S7-1200 PLC可以同时支持以上15个通信连接,这些连接数是固定不变的,不能自定义。采用TCP和ISO on TCP这两种协议进行通信所使用的指令是相同的,在S7-1200 PLC中使用T-block指令编辑通信。

S7-1200 PLC的PROFINET通信口支持以下通信协议及服务:TCP、ISO on TCP、S7通信(服务器端)。目前S7-1200 PLC只支持S7通信的服务器端,还不能支持客户端的通信。下面先简要介绍几个协议。

(1)TCP

TCP是由RFC793描述的标准协议,可以在通信对象之间建立稳定、安全的服务连接。如果数据用TCP来传输,传输的形式是数据流,没有传输长度及信息帧的起始、结束信息。在以数据流的方式传输时接收方不知道一条信息的结束和下一条信息的开始。因此,发送方必须确定信息的结构让接收方能够识别。在多数情况下,TCP应用了TCP/IP,它位于ISO-OSI参考模型的第4层。

TCP具有如下特点:

1)与硬件绑定的高效通信协议。

2)适合传输中等量或大量的数据。

3)为大多数设备应用提供错误恢复和流控制功能,具有较高的可靠性

4)一个基于连接的协议。

5)可以灵活地与支持TCP的第三方设备通信。

6)具有路由兼容性

7)只可使用静态数据长度。

8)有确认机制。

9)使用端口号进行应用寻址。

10)支持大多数应用协议,如TELNET、FTP都使用TCP。

11)使用SEND/RECEIVE编程接口进行数据管理需要通过编程来实现。

(2)ISO on TCP

ISO传输协议最大的优势是通过数据包来进行数据传递。然而,由于网络的增加,它不支持路由功能的劣势会逐渐显现。TCP/IP兼容了路由功能后,对以太网产生了重要的影响。为了集合两个协议的优点,在扩展的RFC1006“ISO on top of TCP”作了注释,也称为“ISO on TCP”,即在TCP/IP中定义了ISO传输的属性。ISO-on-TCP也是位于ISO-OSI参考模型的第4层,并且默认的数据传输端口是102。

ISO on TCP CRFC1006协议具有如下特点:

1)高速通信。

2)适合中等量或大量数据的传输。

3)与TCP相比,可以在每一包数据转输结束后进行检验,是面向包的数据传输。

4)路由兼容性。

5)数据长度可变。

6)使用SEND/RECEIVE编程接口进行数据管理,增加了编程的工作量。

(3)S7通信

所有SIMATIC S7控制器都集成了用户程序可以读写数据的S7通信服务。不管使用哪种总线系统都可以支持S7通信服务,即以太网、PROFIBUS和MPI网络中都可使用S7通信。此外,使用适当的硬件和软件的PC系统也可支持通过S7协议的通信。

S7通信协议具有如下特点:

1)独立的总线介质。

2)可用于所有S7数据区。

3)一个任务最多传送达64KB数据。

4)第7层协议可确保数据记录的自动确认。

5)因为对SIMATIC通信的最优化处理,所以在传送大量数据时对处理器和总线产生低负荷。

S7-1200 PLC的PROFINET通信口所支持的最大通信连接数如下:

1)3个连接用于HMI触摸屏与CPU的通信。

2)1个连接用于编程设备与CPU的通信。

3)3个连接用于S7通信的服务器端连接,可以实现与S7-200、S7-300以及S7-400 PLC的以太网S7通信。

4)8个连接用于Open IE即TCP、ISO on TCP的编程通信,使用T-block指令来实现。

S7-1200 PLC可以同时支持以上15个通信连接,这些连接数是固定不变的,不能自定义。

S7-1200 PLC的PROFINET接口有两种网络连接方法:直接连接和网络连接。

1)直接连接。当一个S7-1200 PLC与一个编程设备,或一个HMI,或一个PLC通信时,也就是说只有两个通信设备时,实现的是直接通信。直接连接不需要使用交换机,用网线直接连接两个设备即可,如图8-1所示。

2)网络连接。当多个通信设备进行通信时,也就是说通信设备数量为两个以上时,实现的是网络连接,如图8-2所示。多个通信设备的网络连接需要使用以太网交换机来实现。可以使用导轨安装的西门子CSM1277的4口交换机连接其他CPU及HM1设备。CSM1277交换机是即插即用的,使用前不用进行任何设备。

与S7-1200 PLC有关的PLC之间的通信方法有以下3种:

978-7-111-34922-8-Chapter08-1.jpg

图8-1 直接连接示意图

978-7-111-34922-8-Chapter08-2.jpg

图8-2 多个通信设备的网络连接

1)S7-1200 PLC与S7-1200 PLC之间的以太网通信。S7-1200 PLC与S7-1200 PLC之间的以太网通信可以通过TCP或ISO on TCP来实现。使用的指令是在双方CPU调用T-block指令来实现。

2)S7-1200 PLC与S7-200 PLC之间的以太网通信。S7-1200 PLC与S7-200 PLC之间的通信只能通过S7通信来实现,因为S7-1200 PLC的以太网模块只支持S7通信。由于S7-1200 PLC的PROFINET通信口只支持S7通信的服务器端,所以在编程方面,S7-1200PLC不用做任何工作,只需在S7-200 PLC一侧将以太网设置成客户端,并用ETHx_XFR指令编程通信。

(3)S7-1200 PLC与S7-300/400 PLC之间的以太网通信。S7-1200 PLC与S7-300/400PLC之间的以太网通信方式相对来说要多一些,可以采用下列方式:TCP、ISO on TCP和S7通信。

采用TCP和ISO on TCP这两种协议进行通信所使用的指令是相同的,在S7-1200 PLC中使用T-block指令编辑通信。如果是以太网模块,在S7-300/400 PLC中使用AG_SEND、AG_RECV编程通信。如果是支持Open Ie的PN口,则使用Open Ie的通信指令实现。

对于S7通信,S7-1200 PLC的PROFINET通信口只支持S7通信的服务器端,所以在编程和建立连接方面,S7-1200 PLC不用做任何工作,只需在S7-300/400 CPU一侧建立单边连接,并使用PUT、GET指令进行通信。