西门子6FC5111-0CA02-0AA2 原装正品

    西门子6FC5111-0CA02-0AA2 原装正品

  • 981
  • 产品价格:面议
  • 发货地址:湖南长沙长沙县 包装说明:不限
  • 产品数量:9999.00 台产品规格:不限
  • 信息编号:99531119公司编号:14576753
  • 彭东 经理 微信 173889734..
  • 进入店铺 在线咨询 QQ咨询 在线询价
    相关产品:


湖南环辰泰瑞电气设备有限公司

1多功能测量表SENTRON PAC3200简介

SENTRON PAC3200电能监视设备可精确提供系统特性,包括电压和电流较大值、较小值和平均值,功率值、频率、功率因数、对称性、逻辑计算、负载趋势、谐波和总谐波失真等。SENTRON PAC3200可检测 50 多个基本数值,具有 10个电能计数器,可用于全面负载检测。它们的测量准确度满足电能计数器标准所规定的较高要求。PAC3200带有MODBUS RTU-RS485接口、PROFIBUS-DP接口和MODBUS TCP 接口,可以很方便将PAC3200的数据上传到PLC中进行处理,也可以上传到HMI中进行数据分析、处理及归档。对于西门子系统可以轻松地将PAC3200集成到上位自动化系统中,例如,集成到西门子 SIMATIC PCS 7 powerrate 和SIMATIC WinCC powerrate 软件包中。


2 PAC3200通信接口对比

PAC3200可以通过MODBUS RTU RS485接口、MODBUS TCP 以太网接口以及现场总线PROFIBUS-DP接口与PLC和HMI通信。下面分别以连接S7-300 PLC为例,在通信性能、连接的个数、编程方面进行对比:

1) 通信性能:PROFIBUS-DP使用令牌方式由主站依次访问从站,是实时现场总线,通信响应快,通信的响应时间应考虑PAC3200数据的刷新时间(自身刷新时间可能较PROFIBUS-DP刷新时间慢);如果选择以太网MODBUS TCP 通信,由于不是实时网络,通信性能次之,通信的响应时间也应考虑PAC3200数据的刷新时间(自身刷新时间可能较以太网刷新时间慢);使用RS485 MODBUS RTU通信,由于基于串口,通信性能不能与以太网与PROFIBUS-DP相比较。

2) 连接个数:使用PROFIBUS-DP,基于主站的性能,较多可以连接126个站点;以太网MODBUS TCP 通信,基于CP的连接个数,通常16个;使用RS485 MODBUS RTU,可以连接一个网段,典型值31个站点。

3) 编程:使用PROFIBUS-DP,不需要编写通信程序;使用以太网MODBUS TCP 通信,需要编写发送接收通信程序;使用RS485 MODBUS RTU通信,需要编写从站轮询程序,比较麻烦,如果没有购买MODBUS RTU的驱动,还需要编写通信程序。

4) 价格:PROFIBUS-DP与RS485 MODBUS RTU通信需要购买选件网卡,而PAC3200本身集成以太网接口,支持MODBUS TCP 通信。

下面将介绍PAC3200的MODBUS TCP 通信。


3 MODBUS TCP 通信报文

MODBUS TCP 使MODBUS RTU协议运行于以太网,MODBUS TCP使用TCP/IP和以太网在站点间传送MODBUS报文,MODBUS TCP结合了以太网物理网络和网络标准TCP/IP以及以MODBUS作为应用协议标准的数据表示方法。MODBUS TCP通信报文被封装于以太网TCP/IP数据包中。与传统的串口方式,MODBUS TCP插入一个标准的MODBUS报文到TCP报文中,不再带有数据校验和地址,如图1所示:



图1 MODBUS TCP报文

由于使用以太网TCP/IP数据链路层的校验机制而保证了数据的完整性,MODBUS TCP 报文中不再带有数据校验”CHECKSUM”,原有报文中的“ADDRESS”也被“UNIT ID”替代而加在MODBUS应用协议报文头中。

MODBUS TCP服务器使用502端口与客户端进行通信。

S7-300 与PAC3200 之间进行MODBUS TCP 通信时,MODBUS应为协议的报文头赋值如下:

byte 0: transaction identifier (高字节) – 为0

byte 1:transaction identifier(低字节) - 为0

byte 2:protocol identifier(高字节) = 0

byte 3:protocol identifier (低字节) = 0

byte 4:length field (高字节) = 0 (因为所有的报文小于256)

byte 5:length field (低字节) = 后面跟随的字节数

byte 6:unit identifier -原从站地址,这里为0

byte 7:MODBUS 功能码,通过功能码发送通信命令

byte 8 ~:后续的字节数与功能码相关


4 PAC3200支持的MODBUS TCP 功能码

在MODBUS TCP 的报文中,通过使用功能码请求通信伙伴的数据,如对内部寄存器的读写操作、读输入寄存器、写输出寄存器等。不同的操作使用不同的功能码,如FC1、2、3、4、5、6、7、15、16等,PAC3200支持FC2、FC3、FC4、FC6、FC16,在下面将介绍PAC3200这些功能码的报文格式:

FC2 读输入的位信号:

请求:

Byte 0: 功能码,2

Byte 1-2: 开始的位地址

Byte 3-4:位的个数 (1-2000)

响应:

Byte 0: 返回的功能码 2

Byte 1: 返回的字节个数 (B=(位的个数+7)/8)

Byte 2-(B+1): 位信号的值 (较低有效位是**个位信号)

FC3 读多个寄存器信号:

请求:

Byte 0: 功能码,3

Byte 1-2: 寄存器开始地址

Byte 3-4: 寄存器的个数 (1-125)

响应:

Byte 0: 返回的功能码 3

Byte 1: 返回的字节个数 (B=2倍寄存器数)

Byte 2-(B+1): 寄存器的值

FC4 读输入寄存器信号:

请求:

Byte 0: 功能码,4

Byte 1-2: 输入寄存器开始地址

Byte 3-4: 输入寄存器的个数 (1-125)

响应:

Byte 0: 返回的功能码 4

Byte 1: 返回的字节个数 (B=2倍输入寄存器数)

Byte 2-(B+1): 输入寄存器的值

FC6 写单个寄存器信号:

请求:

Byte 0: 功能码,6

Byte 1-2: 寄存器地址

Byte 3-4: 寄存器的值

响应:

Byte 0: 返回的功能码 6

Byte 1-2: 寄存器地址

Byte 3-4: 寄存器的值

FC16 写多个寄存器信号:

请求:

Byte 0: 功能码,10(HEX)

Byte 1-2: 寄存器开始地址

Byte 3-4: 寄存器的个数 (1-100)

Byte 5:字节的个数 (B=2倍输入寄存器数)

Byte 6-(B+5) 预置的寄存器值

响应:

Byte 0: 返回的功能码 10(HEX)

Byte 1-2: 寄存器开始地址

Byte 3-4: 寄存器个数

注:

一个寄存器为两个字节,上面介绍的首地址为MODBUS TCP 报文中PDU的首地址。

5 PAC3200的地址区

使用不同的功能码可以对PAC3200不同的地址区进行操作:

测量变量:例如电压、电流值、输入、输出等变量可以使用FC3和FC4,FC3与FC4功能相

同,两者都可以读。

状态参数:例如限制值0、1、2以及输入0、输出0等位信号,使用FC2可以读出这些信

号。

设定参数:例如连接类型、是否使用电压变送器电压、一次侧电压等,可以使用FC3、FC4进

行读操作,两者功能相同,使用FC16进行写操作。

通信参数:例如IP地址、网关等参数,可以使用FC3、FC4进

行读操作,两者功能相同,使用FC16进行写操作。

信息参数:例如产品的序列号等,可以使用FC3、FC4进行读操作,两者功能相同,使用

FC16进行写操作。

命令参数:例如复位较大值、较小值以及能量计数器等参数,使用FC6进行写操作。


6 PAC3200侧的配置

使用PAC3200集成的以太网通信接口进行MODBUS TCP通信,需要对接口进行设置,步骤如下:

1):使用F4(Menu) > "SETTINGS> COMMUNICATION 进入如下界面如图2所示:


图2 通信界面

2):使用F4(Edit)键对选中的条目进行编辑,在通信界面中设定MODBUS TCP 通信的IP地

址、子网掩码及网关,在“PROTOCOL”中选择“TCP”后退出,PAC3200侧设置完成。


7 PLC侧设置

在PLC侧作的设置是为了与PAC3200建立TCP连接,以S7-300为例,步骤如下:

1):在SIMATIC Manager中创建一个S7-300的项目,本例中项目名为MODBUS_TCP。

2):插入一个S7-300站,从硬件目录中插入CP343-1,本例为CP343-1IT,如图3所示:


图3 插入以太网模块

3):双击CP343-1的PN IO 槽,配置IP地址、子网掩码,CP343-1的IP地址必须与

PAC3200在一个网段中,否则需要配置路由器地址,如图4所示:


图4 设置CP地址参数

4):在硬件界面中点击“Options”->“configure network”进入网络连接界面,如图5所示:


图5 网络配置界面

5):点击CPU,出现网络连接表,双击表中任一空格,选择通信连接类型,由于CP343-1与

PAC3200使用以太网TCP/IP的通信方式,所以连接类型选择为“TCP CONNECTION”,如

图6所示:


图6 选择连接类型

6):确认选择的连接类型后,进入属性界面,如图7所示:


图7 连接属性-通用信息栏

选择“Active connection establishment”选项,表示在通信连接初始化中由CP343-1主动发出连接请求。同样在“Block parameters”中自动生成通信参数,用于编程时的参数赋值。

7):在连接属性的地址栏中,配置通信双方的地址,如图8所示:


图8 连接属性-地址栏

在IP地址中填写PAC3200的地址,本例中为192.168.1.13,在PORT端口号中定义本方的端口号,为了不与网络中固定功能的端口号冲突,西门子PLC通常以2000开始,PAC3200的端口号由MODBUS TCP规定固定为502。

8):配置完成后,存盘编译,将整个硬件配置下载到PLC中,使用网线连接PAC3200后,在

网络配置界面中使用菜单命令:“PLC”->“activate connection status”,查看实际连 接状态,如图9所示:


图9 查看连接状态

如果连接状态显示成功(符号为绿色的三角),可以进行下一步工作,如果出现红方块,表示没有建立连接,需要检查通信双方的设置及网线,通常的情况下,PAC3200设置完成后需要重新上电启动。

如果需要与多个设备进行MODBUS TCP通信,则需要建立多个通信连接,PLC侧的端口号不能相同,可以为2000、2001、2002等,但是连接的不同MODBUS TCP的服务器端口号必须为502,只是IP地址不同。


8 PLC编程

在前面的章节中已经介绍了MODBUS TCP的报文格式,在PLC侧的通信程序就必须符合这种报文格式。下面以例子的方式介绍通信程序的编写。

在OB1中调用用于CP343-1的通信函数FC5和FC6,如果是S7-400,需要在S7-400的函数库中调用FC50和FC60,如图10所示:


图10 调用通信函数

通信函数FC5的参数含义:

ACT :沿触发信号。

ID :参考本地CPU连接表中的块参数(图7)。

LADDR :参考本地CPU连接表中的块参数(图7)。

SEND : 发送区,较大通信数据为8K字节。

LEN : 实际发送数据长度。

DONE :每次发送成功,产生一个上升沿。

ERROR :错误位。

STATUS:通信状态字。

通信函数FC6的参数含义:

ID :参考本地CPU连接表中的块参数。

LADDR :参考本地CPU连接表中的块参数。

RECV : 接收区。接收区应大于等于发送区。

NDR : 每次接收到新数据,产生一个上升沿。

ERROR :错误位。

STATUS:通信状态字。

LEN : 实际接收数据长度。

如何实现MODBUS TCP通信,可以通过例子进行说明,例如读出PAC3200设备的IP地址,通过PAC3200的手册可以知道,IP地址为通信参数,偏移地址(开始地址)为63001,占用两个寄存器,上面已经介绍通信参数的读取可以使用功能码FC3或FC4读出,MODBUS TCP 的报文头(参考图1)BMAP部分占用7个字节,协议数据单元(PDU)部分占用5个字节,那么通过通信函数FC5一共发送12个字节,本例中数据发送区为DB1.DBB0~DB1.DBB11,然后将请求的内容分别赋值到DB1.DBB0~DB1.DBB11中,请求报文格式如下:

DB1,DBB0=0 transaction identifier (高字节) – 为0

DB1,DBB1=0 transaction identifier(低字节) - 为0

DB1,DBB2=0 protocol identifier(高字节) = 0

DB1,DBB3=0 protocol identifier (低字节) = 0

DB1,DBB4=0 length field (高字节) = 0 (因为所有的报文小于256)

DB1,DBB5=6 后面跟随的字节数

DB1,DBB6=7 unit identifier -原从站地址,这里为任意值         

M**

 

DB1,DBB7=4 MODBUS 功能码

DB1,DBB8= F6(HEX)输入寄存器开始地址(高字节)

DB1,DBB9=19 (HEX) 输入寄存器开始地址(低字节)

DB1,DBB10=0 输入寄存器的个数(高字节)

DB1,DBB11=2 输入寄存器的个数(低字节)         

 

PDU


 

DB1.DBB0~DB1.DBB11经过赋值请求信息后,例子中M0.5每个上升沿将发送一次请求,如果通信成功,通过FC6将接收到PAC3200的返回信息,返回信息为13个字节,放入到数据接收区DB2.DBB0~DB2.DBB12中,接收报文的格式如下:

DB2,DBB0=0 transaction identifier (高字节) – 为0

DB2,DBB1=0 transaction identifier(低字节) - 为0

DB2,DBB2=0 protocol identifier(高字节) = 0

DB2,DBB3=0 protocol identifier (低字节) = 0

DB2,DBB4=0 length field (高字节) = 0 (因为所有的报文小于256)

DB2,DBB5=7 后面跟随的字节数

DB2,DBB6=7 unit identifier -返回值         

 

MBAP

 

DB2,DBB7=4 MODBUS 功能码

DB2,DBB8= 4 返回的字节个数

DB2,DBB9= C0(HEX) ,192(DEC)**个寄存器值(高字节)

DB2,DBB10=A8(HEX),168(DEC) **个寄存器值(低字节)

DB2,DBB11=1 *二个寄存器值(高字节)

DB2,DBB12=D(HEX),13(DEC)*二个寄存器值(低字节)         

 

PDU


 西门子6SN1118-ODM31-0AA2

9 通信注意事项

有几个问题需要注意:

1) 接收区是一个环形缓存区,接收区的长度一定与PAC3200发送的数据相等,如果接收区大于实际发送的数据,每次接收数据时都以填充的方式进入接收区,造成数据混乱。

2) 如果连接多个PAC3200,除需要建立多个连接,还需要调用多对FC5和FC6。

3) 如果需要读出多个数据,但是相互地址间隔大,**过125个,例如偏移地址为1、201、501、833等,这样需要发送多次数据请求,比较麻烦,可以购买MODBUS TCP通信函数块,这样将比较简单,产品信息可以参考西门子网站 Entry ID:22660304订货信息,由于此产品为其他部门编写,可能A&D热线不负责解答。

描述

在 SIMATIC 范围内,对于三大产品系列:SIMATIC S7、SIMATIC S5 和 PC,都支持时间同步。可以通过以太网、P ROFIBUS 和 MPI 进行时间同步。该 FAQ 描述了一个通过 PROFIBUS 进行时间同步的实例。

下面的表格给出了哪些 PROFIBUS-CP 可以用于使用 PROFIBUS 进行时间同步:

 

模块    订货号

CP443-5 基本型    从订货号6GK7443-5FX01-0XE0 FW V3.0开始

CP443-5 基本型    6GK7443-5FX02-0XE0

CP443-5 扩展型    从订货号6GK7443-5DX02-0XE0 FW V3.0开始

CP443-5 扩展型    6GK7443-5DX03-0XE0

CP443-5 扩展型    6GK7443-5DX04-0XE0

CP443-5 扩展型    6GK7443-5DX05-0XE0

CP5613 (FO/A2)    6GK1561-3AA00

6GK1561-3AA01

6GK1561-3FA00

CP5614 (FO/A2)    6GK1561-4AA00

6GK1561-4AA01

6GK1561-4FA00

CP5623    6GK1562-3AA00

CP5624    6GK1562-4AA00

表 01

从一定的固件版本开始下面的 CPU 可以通过集成的  DP 接口实现时间同步。

 

模块    订货号    固件版本

CPU 31x    6ES7 31..    V2.5

CPU 41x    6ES7 41..    V3.0

IM154-8 CPU    6ES7154-8AB00-0AB0    V2.5

IM154-8 PN/DP CPU    6ES7154-8AB01-0AB0    V3.2

IM154-8F PN/DP CPU    6ES7154-8FB01-0AB0    V3.2

IM154-8FX PN/DP CPU    6ES7154-8FX00-0AB0    V3.2

表 02

下面带有 CPU 的接口模块通过 DP 主站接口模块 6ES7138-4HA00-0AB0 实现时间同步。

 

模块    订货号    固件版本

IM151-7 CPU    6ES7151-7AA20-0AB0    V2.6

IM151-7 F CPU    6ES7151-7FA20-0AB0    V2.6

IM151-8 PN/DP CPU    6ES7151-8AB00-0AB0    V2.7

IM151-8 PN/DP CPU    6ES7151-8AB01-0AB0    V3.2

IM151-8F PN/DP CPU    6ES7151-8FB00-0AB0    V2.7

IM151-8F PN/DP CPU    6ES7151-8FB01-0AB0    V3.2

表 03

通过 PROFIBUS 执行时间同步


图. 01

下面部分包括以下操作指导:

1. S7-400 站作为时间主站(传输方)的配置

2. S7-400 站作为时间从站(接收方)的配置

3. 具有时间同步功能的 PC 的配置

在硬件组态中组态 S7-400 站的时间同步。在 CPU 属性窗口中选择 "诊断/时钟"选项卡  ,然后选择同步模式。可以组态 S7-400 CPU 作为时间主站( 时间传输方) 或时间从站(时间接收方)。

设置是在 CPU 中同步(在 PLC 同步)还是通过 MPI 同步(在 MPI 同步)。在 PLC 中的同步包括CP。

可以在 1 秒和 24 小时之间选择同步的时间间隔。

S7-400 作为时间主站(传输方)的配置

下面是配置 S7-400 站作为时间主站的操作。

 

序号    操作

1.    在 S7-400 站的硬件组态中,打开 CPU 的属性窗口,选择“诊断/时钟”选项卡。

在 PLC 的同步模式中设置“作为主站”,并且选择同步的时间间隔,例如 10 秒。

点击“确定”关闭窗口。 


图. 02

2.    在硬件组态中参数化 S7-400 的 PROFIBUS CP 进行时间传递。

打开 PROFIBUS CP 的属性窗口,切换到“选项”选项卡,参数化传递时间消息的方向。如果 S7-400 站是作为时间主站,使能传递时间消息的方向:

From station to LAN

来自 CPU 的时间消息通过 PROFIBUS CP 传递到 PROFIBUS 子网上。


图. 03

表 04

S7-400 站作为时间从站(接收方)的配置

下面是配置 S7-400 站作为时间从站的操作。

 

序号.    操作

1.    在 S7-400站的硬件组态中,打开CPU的属性窗口,选择“诊断/时钟”选项卡。

在PLC的同步模式中设置为“作为从站”。

点击“确定”关闭窗口。 


图. 04

2.    在硬件组态中参数化 S7-400 的 PROFIBUS CP 进行时间传递。

打开 PROFIBUS CP 的属性窗口,切换到“选项”选项卡,参数化传递时间消息的方向。如果 S7-400 站是作为时间主站,使能传递时间消息的方向:

From LAN to station

来自 PROFIBUS 子网的时间消息会被 PROFIBUS CP 接收,并传递到 CPU。


图. 05

表 05

注意

时间同步可确保较大偏差为 10 毫秒的网络范围的精度。

PC 站时间同步的配置

CP5613 (FO/A2), CP5614 (FO/A2), CP5623 和 CP5624 可用于 PC 的时间同步。通过 SIMATIC NET PC V6.0(CD 07/2001)及以上版本,CP5613 (FO) 和 CP5614 (FO) 可用 NCM PC 组态。在PC 站的硬件组态中,打开 PROFIBUS PC CP 的属性窗口,切换到“选项”选项卡,使能 "Time of day" 功能,可以组态 PROFIBUS PC CP 作为时间主站(传输方)或者是时间从站(接收方)。


图. 06

PC 不能自动发送和接收时间。必须使用应用程序实现,程序通过函数调用写或从 CP 读取时间。

S7400电源模块

6ES7 407-0DA02-0AA0

6ES7 407-0KA02-0AA0

6ES7 407-0KR02-0AA0

6ES7 407-0RA02-0AA0

6ES7 405-0DA02-0AA0

6ES7 405-0KA02-0AA0

6ES7 405-0RA01-0AA0

6ES7 971-0BA00

CPU

6ES7 412-3HJ14-0AB0

6ES7 414-4HM14-0AB0

6ES7 417-4HT14-0AB0

6ES7 400-0HR00-4AB0

6ES7 400-0HR50-4AB0

6ES7 412-1XJ05-0AB0

6ES7 412-2XJ05-0AB0

6ES7 414-2XK05-0AB0

6ES7 414-3XM05-0AB0

6ES7 414-3EM05-0AB0

6ES7 416-2XN05-0AB0

6ES7 416-3XR05-0AB0

6ES7 416-3ER05-0AB0

6ES7 416-2FN05-0AB0

6ES7 416-3FR05-0AB0

6ES7 417-4XT05-0AB0

内存卡

6ES7 955-2AL00-0AA0

6ES7 955-2AM00-0AA0

6ES7 952-0AF00-0AA0

6ES7 952-1AH00-0AA0

6ES7 952-1AK00-0AA0

6ES7 952-1AL00-0AA0

6ES7 952-1AM00-0AA0

6ES7 952-1AP00-0AA0

6ES7 952-1AS00-0AA0

6ES7 952-1AY00-0AA0

6ES7 952-0KF00-0AA0

6ES7 952-0KH00-0AA0

6ES7 952-1KK00-0AA0

6ES7 952-1KL00-0AA0

6ES7 952-1KM00-0AA0

6ES7 952-1KP00-0AA0

6ES7 952-1KS00-0AA0

6ES7 952-1KT00-0AA0

6ES7 952-1KY00-0AA0

开关量输入模板

6ES7 421-7BH01-0AB0

6ES7 421-1BL01-0AA0

6ES7 421-1EL00-0AA0

6ES7 421-1FH20-0AA0

6ES7 421-7DH00-0AB0

开关量输出模板

6ES7 422-1BH11-0AA0

6ES7 422-1BL00-0AA0

6ES7 422-7BL00-0AB0

6ES7 422-1FH00-0AA0

6ES7 422-1HH00-0AA0

模拟量模块

6ES7 431-0HH00-0AB0

6ES7 431-1KF00-0AB0

6ES7 431-1KF10-0AB0

6ES7 431-1KF20-0AB0

6ES7 431-7QH00-0AB0

6ES7 431-7KF00-0AB0

6ES7 431-7KF10-0AB0

6ES7 432-1HF00-0AB0

配置注意:

通过工业CP以太网卡传送用户数据常常使用S5兼容的通信服务,此外通信函数必须在CPU的S7程序中调用。

通信块FC50 "AG_LSEND"被用作发送数据,FC60 "AG_LRECV"用作数据接收,这些通信块被用作下列连接的数据交换:

ISO-on-TCP connection (RFC1006)

TCP connection

UDP connection

ISO Transport

从CP443-1EX20 (6GK7443-1EX20-0XE0) 配合S7-400 CPU 固件版本 ≥ V5.3使用开始将有额外的通信块用于上述的连接的数据通信:

FC53 "AG_SEND"

FC63 "AG_SRECV"

对比S5兼容的通信块FC50 "AG_LSEND" 和 FC60 "AG_LRECV"这是更强大的通信选项,根据工厂布局较高可以增加3倍的通信性能。

使用FC53 "AG_SSEND" 和 FC63 "AG_SRECV"配置S5兼容通信:

通过工业以太网的S5兼容通信,使用CP443-1EX20 (6GK7443-1EX20-0XE0)以后的模块有下列操作模式选项:

Send/Recv

SPEED Send/Recv

Fetch Passive

Write Passive

缺省模式 "Send/Recv" 操作模式被激活,如果使用FC53 "AG_SSEND" 和 FC63 "AG_SRECV"的快速通信,必须在通信连接配置属性对话框中的"Options"标签中选择 "SPEED Send/Recv"模式。


图. 01:通信连接属性对话框-> "Options" 标签

此外在STEP7硬件配置中,工业以太网CP的属性对话框中的扩展地址范围必须被激活,对此打开工业以太网CP属性对话框选择 "Addresses"标签使能 "Address setting for LOCK/UNLOCK with FETCH/WRITE, SPEED Send/Receive"选项,这样模块占用64个外设输入和输出地址。


图. 02:工业以太网CP属性对话框 -> "Addresses" 标签

注意:

 Send/Recv 和SPEED Send/Recv操作模式使用IE CP相同的资源。一个  SIMATIC S7-400 IE CP  支持64个S5兼容的通信。可以定义多少个  Send/Recv 和 SPEED Send/Recv 模式的通信连接与CPU的空闲的S7连接资源有关。

可以传送较大的用户数据:

如果使用 SPEED Send/Recv模式,可以传送1452字节的用户数据,使用Send/Recv模式传送的数据与连接类型有关。 


 

连接类型    使用FC50/60的Send/Recv模式的数据长度    使用FC53/63的SPEED Send/Recv模式的数据长度

ISO-on-TCP    8192 bytes    1452 bytes

TCP    8192 bytes    1452 bytes

UDP    8192 bytes    1452 bytes

ISO Transport    2048 bytes    1452 bytes


 

占用的连接资源:

通信处理器支持的S5兼容通信和S7通信是并行的。一个配置的连接占用IE CP S5兼容通信的一个连接与CPU中支持S7连接的数量无关。如果配置的通信连接为SPEED Send/Recv 模式这些将改变,这种情况下在CP IE中每个连接占用一个Send/Recv 资源和一个 S7连接资源,同样占用CPU的一个S7连接资源。

连接资源    

Send/Recv m模式    

SPEED Send/Recv 模式

IE CP 的Send/Recv  连接资源    

1    

1

IE CP的S7连接资源    

0    

1

CPU的S7连接资源    

0    

1

使用TCP连接的 FC63 "AG_SRECV" 数据缓存区的长度:

以下规则只针对TCP连接

接收数据包时,接收缓存区必须为1452字节,即使只接收少量数据。

原因:

 SPEED Send/Recv 模式使用TCP连接,从LAN(本地网络)传送到用户程序的数据被结构化,于是总是实际有效的字节数量传送到CPU中。 因此如果IE CP每5秒接收10个字节的数据包,数据先被收集在IE CP中,如果用户程序20秒后调用FC63 "AG_SRECV" 接收数据,所有收集的数据立刻传送到CPU中。在描述的示例中,40(4×10字节)个字节被传送 ,TCP连接是不可能提供接收数据由多少个数据包组成以及各个报文界限位置在哪里的信息,只能通过用户数据结构化来完成。

CPU自带的以太网接口可以使用OPEN IE的方式实现如下协议,分别介绍如下:

? TCP

? UDP

? ISO-on-TCP

注意:以下内容任何用户可以免费使用,复制和传递他人,程序的作者及拥有者不负责软件的功能性和兼容性,使用者须自己承担责任,由于内容免费,所以不保证错误的更正和热线支持!


1. TCP通信

1.1通信程序块的准备

如下的通信块可以用来建立TCP通信,您需要把这些程序块拷贝到您的项目中:

1) FB65 "TCON" 用于建立连接,连接时需要UDT65来提供参数

2) FB66 "TDISCON" 用于断开连接

3) FB63 "TSEND" 用于发送数据到S7站点、S5站点、PC站或者第三方设备

4) FB64 "TRCV" 用于从S7站点、S5站点、PC站或者第三方设备接收数据

5) UDT65 "TCON_PAR"存放用户通信参数

6) FC97 "SET_TCP_ENDPOINTx" 用于修改UDT65类型变量内通信对象参数

FB63,64,65,66这四个功能块可以在Standard Library -> Communication Blocks里得到:



图 01: FB63,64,65,66

FC97与UDT65需要从如下项目中打开获得:

 ( 42 KB )



图 02: FC97与UDT65

首先建立一个S7-300或者S7-400站,拷贝如上程序块到项目中。

1.2通信程序编写

1.2.1 生成数据块

在程序中生成一个DB块,块号不限(本例为DB101),在块中建立变量DB_VAR,类型为UDT65



图 03: 生成UDT65类型变量

1.2.2在OB1中编程

首先调用FC97 "SET_TCP_ENDPOINTx"



图 04: 调用FC97

FC97参数说明如下:

? ID: 连接ID

? DEV_ID

DEV_ID = B#16#1 用于本PLC型号(注意不是通信对方)为 IM151-8 PN/DP CPU

DEV_ID = B#16#2 用于本PLC型号(注意不是通信对方)为 CPU31x-2PN/DP或IM154-8 CPU

DEV_ID = B#16#3 用于本PLC型号(注意不是通信对方)为 CPU319-3PN/DP

DEV_ID = B#16#5用于本PLC型号(注意不是通信对方)为 CPU41x-3PN/DP

? ACTIVE: 主动或是被动建立连接,通信双方必须一个主动,一个被动

? LOC_PORT: CPU本地的TCP端口

? REM_PORT: 通信伙伴的TCP远程端口

? IP_ADDR1 ... IP_ADDR4: 通信伙伴的IP地址

? V23:本机是否是CPU31x-2PN/DP FIRMWARE 版本为2.3或以下版本

? CON_DB:用UDT65生成的变量



图05: 调用FB65 "T_CON"

调用FB65 ,通过提供给FB65的输入参数"REQ"一个上升沿来建立连接。 “ID”为连接ID,“CONNECT”参数填写用UDT65生成的变量, 连接建立后会一直保持,直到调用FB66 "TDISCON"断开连接,CPU停止或者断电。

1.2.3 调用发送和接收程序



图06: 调用 FB63,64发送接收数据

FB63 "TSEND" 发送请求依靠输入参数"REQ"的上升沿来实现,如果“BUSY”位为true时不要触发"REQ"。输出参数 "DONE", "ERROR" 和 "STATUS" 用于评估工作的情况。

FB64 "TRECV" 用于接收数据,EN_R始终为true, “ID “填写连接ID,”DATA”填写接收数据区,输出参数"NDR" 用于表示新的数据已经收到,输出参数"LEN" 表示接收的数据长度。

1.2.4断开连接

调用FB66 "TDISCON",“ID “填写连接ID,输入参数"REQ"的上升沿来实现断开连接操作。



图 07: 调用FB66 "TDISCON"


2. UDP通信

2.1通信程序块的准备

如下的通信块可以用来建立UDP通信,您需要把这些程序块拷贝到您的项目中:

1) FB65 "TCON" 用于建立连接,连接时需要UDT65来提供参数

2) FB66 "TDISCON" 用于断开连接

3) FB67 "TUSEND"用于发送数据到S7站点、S5站点、PC站或者第三方设备

4) FB68 "TURCV"用于从S7站点、S5站点、PC站或者第三方设备接收数据

5) UDT65 "TCON_PAR"存放用户通信参数

6) UDT66 "TADDR_PAR"存放用户通信参数

7) FC95"SET_UDP_ENDPOINT"用于建立本地UDP通信参数

8) FC96"SET_UDP_REMOTE"用于建立远程UDP通信参数

FB65,66,67,68这四个功能块可以在Standard Library -> Communication Blocks里得到:



图 08: FB65,66,67,68

FC95,96与UDT65,66需要从如下项目中打开获得:

 ( 41 KB )



图 09: FC95,96与UDT65,66

首先建立一个S7-300或者S7-400站,拷贝如上程序块到项目中。

2.2通信程序编写

2.2.1 生成数据块

然后在程序中生成一个DB块,块号不限(本例为DB101),在块中建立变量DB_VAR,类型为UDT65



图 10: 生成UDT65类型变量

然后在程序中生成另一个DB块,块号不限(本例为db102),在块中建立变量DB_VAR,类型为UDT66



图 11: 生成UDT66类型变量

2.2.2在OB1中编程

首先调用FC95,96


图 12:调用FC95,96西门子6ES5330-8MA11

定义的本地UDP端点连接参数:

通过FC95 "SET_UDP_ENDPOINT"设置,下列参数需要考虑:

? ID: 连接ID

? DEV_ID

DEV_ID = B#16#1 用于本PLC型号(注意不是通信对方)为 IM151-8 PN/DP CPU

DEV_ID = B#16#2 用于本PLC型号(注意不是通信对方)为 CPU31x-2PN/DP或IM154-8 CPU

DEV_ID = B#16#3 用于本PLC型号(注意不是通信对方)为CPU319-3PN/DP

DEV_ID = B#16#5用于本PLC型号(注意不是通信对方)为CPU41x-3PN/DP

? LOC_PORT: CPU本地的TCP端口

通过FC96 "SET_UDP_REMOTE"定义远端的UDP端点. 下列参数需要考虑:

REM_PORT: 通信方端口号

IP_ADDR1 ... IP_ADDR4: 通信方IP地址



图 13: 调用FB65 "T_CON"

调用FB65 ,通过提供给FB65的输入参数"REQ"一个上升沿来建立连接。 “ID”为连接ID,“CONNECT”参数填写用UDT65生成的变量, 连接建立后会一直保持,直到调用FB66 "TDISCON"断开连接,CPU停止或者断电。

2.2.3 调用发送和接收程序



图 14: 调用FB67,68接收和发送数据

FB67 "TUSEND"发送请求依靠输入参数"REQ"的上升沿来实现,如果“BUSY”位为true时不要触发"REQ"。输出参数 "DONE", "ERROR" 和 "STATUS" 用于评估工作的情况。"ADDR"填写UDT66生成的变量。

FB68 "TURCV" 用于接收数据,EN_R始终为true, “ID “填写连接ID,”DATA”填写接收数据区,输出参数"NDR" 用于表示新的数据已经收到,输出参数"LEN" 表示接收的数据长度。"ADDR"填写UDT66生成的变量。

2.2.4断开连接

调用FB66 "TDISCON",“ID “填写连接ID,输入参数"REQ"的上升沿来实现断开连接操作。



图 15: 调用FB66 "TDISCON"


3. ISO ON TCP通信

3.1通信程序块的准备

如下的通信块可以用来建立ISO ON TCP通信,您需要把这些程序块拷贝到您的项目中:

1) FB65 "TCON" 用于建立连接,连接时需要UDT65来提供参数

2) FB66&nb


欢迎来到湖南环辰泰瑞电气设备有限公司网站,我公司位于有3000年悠久的历史文化,约有2400年建城史的长沙市。 具体地址是湖南长沙长沙县湖南省长沙县安沙镇谭访新村腰塘组617号 ,联系人是彭东。
联系电话是0731-86242119, 主要经营湖南环辰泰瑞电气设备有限公司 在经营活动中精益求精,具备如下业务优势: SIEMENS 可编程控制器   1、 SIMATIC S7 系列PLC、S7200、s71200、S7300、S7400、ET200   2、 逻辑控制模块 LOGO!230RC、230RCO、230RCL。
单位注册资金未知。

  • 供应商更多产品推荐
  • 关于八方 | 招贤纳士八方币招商合作网站地图免费注册商业广告友情链接八方业务联系我们汇款方式投诉举报
    八方资源网联盟网站: 八方资源网国际站 粤ICP备10089450号-8 - 经营许可证编号:粤B2-20130562 软件企业认定:深R-2013-2017 软件产品登记:深DGY-2013-3594 著作权登记:2013SR134025
    互联网药品信息服务资格证书:(粤)--非经营性--2013--0176
    粤公网安备 44030602000281号
    Copyright © 2004 - 2024 b2b168.com All Rights Reserved