欢迎来到众智博远官网网站!

7*24小时在线咨询电话

010-52873850

新闻资讯

contact us

24小时免费咨询热线

010-52873850

技术资讯

当前位置: 首页 >> 新闻资讯 >> 技术资讯

西门子S7-300PN CPU之间的TCP通信-程序

发布时间:2019-08-24 来源:众智博远

首先为Active端编写程序。在SIMATIC 315PN-1的块中创建DB101,定义一个变量DB_VAR,变量类型为UDT65。如图15所示。

15

OB1中依次调用FB65FB63FB64FB66,如图16171819所示:

16

程序中的参数说明见表1

参数名

参数说明

REQ

上升沿触发建立通信连接

ID

连接ID

CONNECT

与变量类型为UDT65的变量相连

DONE

1时,连接正确建立

BUSY

1时,正建立连接

ERROR

1时,有故障发生

STATUS

故障代码

1 FB65参数说明

17

程序中的参数说明见表2

参数名

参数说明

REQ

上升沿触发

ID

连接ID

LEN

数据发送的最大长度

DATA

数据发送的区域

DONE

1时,连接正确建立

BUSY

1时,正建立连接

ERROR

1时,有故障发生

STATUS

故障代码

2 FB63参数说明

18

程序中的参数说明见表3

参数名

参数说明

EN_R

1时使能

ID

连接ID

LEN

接收区域的长度

DATA

接收数据区

NDR

1时,接收完成

BUSY

1时,正在接收

ERROR

1时,有故障发生

STATUS

故障代码

RCVD_LEN

实际接收的数据长度

3 FB64参数说明

19

程序中的参数说明见表4

参数名

参数说明

REQ

上升沿触发

ID

连接ID

DONE

1时,断开连接完成

BUSY

1时,正断开连接

ERROR

1时,有故障发生

STATUS

故障代码

4 FB66参数说明

OB1编写完成后,SIMATIC 315PN-1的程序块如图20所示:

20

     同理,为SIMATIC 315PN-2站编写程序,与SIMATIC 315PN-1类似,在DB101中定义数据类型为UDT65的变量,在OB1中调用FB65FB63FB64FB66。将硬件组态和程序分别下到两个S7300站中。

      cpu运行的情况下分别监控两个站OB1的状态。首先在两个站的FB65中,将“REQ”置1,使连接建立。然后将SIMATIC 315PN-1 MB100-MB109赋值B#16#12,同时在SIMATIC 315PN-2站中将FB64EN_R1,接着在SIMATIC 315PN-1FB63中,将M0.2设置上升沿信号,此时SIMATIC 315PN-2站的MB200-MB209接收到来自SIMATIC 315PN-1站的数据B#16#12,如图21所示:

矩形标注: 发送的数据矩形标注: 接收到的数据

21

同样的操作,将SIMATIC 315PN-2MB100-MB109赋值B#16#03SIMATIC 315PN-1MB200-MB209接收到B#16#03,图22所示。

矩形标注: 接收到的数据矩形标注: 发送的数据

22