在工作中实践总结
在朋友圈分享讨论
做最接地气的公众号
内容摘要
TwinCAT 3 与西门子PLC通过以太网进行通讯,之前只能走Profinet、Modbus TCP或者TcpIp,现在倍福开发了支持S7通讯协议的TwinCAT 3 Funtion TF6620,可以对S7系列PLC的I区、Q区和DB块进行读写访问。
关键词
适用范围
倍福控制器侧:TC3.1.4024.12及以上,操作系统为:Win7、Win10、Tc/BSD
西门子控制器:S7-200,S7-300, S7-400, S7-1200, S7-1500
正文
1 概述
S7协议是西门子控制器之间通讯的协议,类似倍福的ADS通讯,所有S7系列的PLC都支持该协议,比如S7-300、S7-400、S7-1200、S7-1500。有了TF6620 | TwinCAT S7 通讯插件之后,TwinCAT 3与西门子PLC通过以太网进行通讯,就不再需要Profinet、Modbus TCP或者TcpIp协议了。西门子侧不需要任何额外的硬件接口或者软件插件,只要在TwinCAT控制器中安装TF6620插件,就可以调用功能块单次读写S7 PLC的I区、Q区或者DB块数据,也可以直接把S7通讯配置到I/O Device,通过变量映射的方式与TwinCAT PLC实现周期性数据通讯。2 操作方法
(摘自User Manual汉化版)
2.1 准备工作安装和授权
(1) 安装
确认开发环境和控制器的TC3版本都不低于Build 4024.12,且控制器的OS不是Win CE。TF6620-S7-Communicattion.exe (2) 授权
(3) 帮助文档
https://infosys.beckhoff.com/content/1033/tf6620_tc3_s7_communicatI/On/index.html?id=2912264585752613982TF6620_TC3_S7_CommunicatI/On_EN.pdfTF6620_TC3_S7_CommunicatI/On_CN.pdf说明:汉化手册为百度AI翻译,爱好者业余校对,并非Beckhoff官方发布的版本。发现译文不清楚时,请对照英文原版。2.2 通过I/O映射访问配置S7 PLC的变量
2.2.1 添加S7通信I/O设备
(1) 添加I/O Device
由于TwinCAT S7通信产品基于实时以太网适配器,因此首先在TwinCAT配置中添加一个实时以太网适配器(多协议处理程序)作为I/O设备。为此,请选择“添加新项”。
在“插入设备”对话框中,用“确定”确认选择“实时以太网适配器(多协议处理程序)”

(3) 链接适配器与相应网卡
(4) 添加TCP/UDP RT模块
在下一步中,您将在实时以太网适配器下面添加一个TCP/udprt模块。为此,请选择“添加对象…”
(5) 添加S7通讯
将S7通讯连接添加到TCP/UDP RT模块。可以添加几个S7通讯连接。再次选择添加新项目…
在打开的对话框中,按OK添加S7通讯连接(模块)。
(6) 完成的I/O配置

2.2.2 配置连接参数
添加I/O设备后,可以在S7通讯连接上定义西门子S7控制器的连接参数。
必须为西门子S7控制器配置以下连接参数:
2.2.3 通过过程映像访问数据点
通常,S7控制器上的数据点可通过过程映像访问,即数据点应能作为过程映像中的变量与其他变量(如PLC)链接。为此,可以在S7通讯连接上配置两种不同类型的访问:SingleRequest和CyclicRequest。

(1) 访问类型
对于SingleRequest,配置的数据点只能“按需”读取或写入。为此,进程映像中提供了相应的触发变量。使用cyclecrequest,在可配置的周期时间内周期读取/写入相应的数据点。 (2) 数据点配置
选择访问类型后,可以配置数据点。对于S7请求对象,这是通过使用适当的选项卡、读变量或写变量来完成的。
在此表格概述中,可在S7控制器上配置数据点的地址信息。这些包括:变量名称(仅在过程映像中显示)、数据类型、S7数据区、S7字节地址、S7位偏移、S7数据块。此信息由西门子S7控制器提供。也可以从文件导入数据点或导出已配置的数据点。这使得在需要时更容易与其他工具交换这些信息。ReadVariables选项卡下面的配置数据点作为输入变量添加到流程映像中的ReadFromS7节点,现在可以从该节点与其他变量链接。“写入变量”选项卡下方的配置数据点将作为输出变量添加到进程映像中的WriteToS7节点,并且现在可以从该节点与其他变量链接。
2.3 通过PLC访问数据点
TF6620也可以从PLC程序配置数据点,并使用功能块读取或写入数据点。为此,需要使用PLC库。与通过过程映像配置数据点不同,在该版本中,无需指定访问类型,因为直接从PLC逻辑进行访问。连接参数也可通过PLC进行配置。因此,您不必为此版本添加S7通讯连接。
使用上面提到的PLC库和其中包含的功能块,您可以选择配置此信息。| fbConnection: FB_S7CommConnection(16#01010050);fbRequestRead: FB_S7CommSingleRequest;fbConnection.sIpAddr := '10.3.32.101';fbConnection.eCpuType := E_S7COMM_CPUTYPE.S71500;fbRequestRead.AddReadVar(ADR(data_byte), SIZEOF(data_byte), 0, E_S7COMM_DATAAREA.DATA_BLOCKS, 1);fbRequestRead.AddReadVar(ADR(data_dword), SIZEOF(data_dword), 2, E_S7COMM_DATAAREA.DATA_BLOCKS, 1); |
2.3.1 FB_S7通信连接
使用TCP/UDP RT模块的ID初始化功能块FB_S7CommConnection。如上面的代码片段所示,可以静态输入,也可以通过初始化符号在PLC项目实例的属性中配置。2.3.2 PLC可使用的FB列表

2.4 在西门子PLC激活S7协议访问
以下屏幕截图显示了TIA门户中S7协议功能的激活示例,通常仅S7-1200和S7-1500控制器需要此功能。请注意,屏幕截图与您的操作环境不同,并且可能因TIA版本而异。 (1) 首先通过访问级别激活访问。

(2) 激活 COTP PUT/GET访问

(3) 禁用优化的块访问。

3 供货情况和优缺点
从Beckhoff官网查到这个产品的状态是Regular Delivery,表示已经可以正常供货。TF6620不仅配置简单,相对其它通讯方案,其价格也更低。以用得最多的CX5130为例,TF6620与其它软、硬件通讯方案的价格对比如下:功能 | 订货号 | 相对 价格 |
S7协议软件 | TF6620-0040 | 1倍 |
OPC UA软件 | TF6100-0040 | 1倍 |
PN 从站软件 | TF6270-0040 | 1.5倍 |
PN主站软件 | TF6271-0040 | 3倍 |
PN从站硬件 | EL6631-0010 | 3倍 |
PN主站硬件 | EL6631 | 4倍 |
TF6620的缺点:通讯的实时性不如Profinet,一对多通讯时的效果如何,请咨询西门子技术支持。
4 附用户手册的目录
1 前言 1.1文件说明 1.2安全说明 2 概述 3安装 3.1系统要求 3.2安装 3.3授权 4 技术介绍 4.1入门 4.2映射与PLC库 4.3单一请求与周期请求 4.4导入和导出数据点 4.5支持的系统和功能 4.6技术限制 4.7激活S7协议访问 5 PLC API 5.1通信 5.1.1功能块 5.1.2数据类型 6 示例 7 附录 7.1故障排除 7.2支持和服务 |
遗留问题
用IE浏览器可访问本文的PDF完整版:
http://www.baclizzy.com.cn/2021
按日期查找即可;

喜欢本文?识别二维码,可关注公众号