S7-1200 PLC 与ATV340 Modbus TCP 通讯设置(含部分程序)
01
硬件及软件版本
- 客 户 端 :S7-1200
- 软 件 :TIA V15
- CPU:1214C
- Firmware:4.2
- IP 地 址 :192.168.1.9 255.255.255.0 0.0.0.0
- 端口号:0
- 硬件标识符:64 硬件标识符是在“设备组态”中,双击 PROFINET 接口,然后在“属性”中的“硬件标识符”中查看
- 服务器:ATV340
- IP 地址:192.168.1.10 255.255.255.0 0.0.0.0
- 端口号:502
- Unit ID:248
02
ATV340 参数设置
完整设置-命令和参考值
- 控制模式:隔离模式
- 给定频率 1 配置:以太网
- 命令通道 1 设置:以太网
通信-通信参数-内置以太网配置
- 内置以太网分配方式:固定 IP
- IP 地 址 :192.168.1.10
- 子网掩码:255.255.255.0
- 网关:0.0.0.0
配置完成后,ATV340 需完全断电后重启
03
S7-1200 PLC 配置
S7-1200 客户端侧需要调用 MB_CLIENT 指令块,该指令块主要完成客户机和服务器的TCP 连接、发送命令消息、接收响应以及控制服务器断开的工作任务
1、在“程序块 -> OB1”中调用 MB_CLIENT 指令块,调用时会自动生成背景 DB 数据块, 点击确定即可
该指令块的各个管脚定义如下:
2、CONNECT 指针类型
1、创建一个新的全局数据块 DB2
2、双击打开新生成的 DB 块, 定义变量名称为“WR" 与“RD” , 数据类型为“TCON_IP_v4”,然后点击“回车”创建完毕
该数据类型结构的参数如下:
- 硬件标识符:即 S7-1200 PLC 的硬件标识符,64,即 16#40
- ID:连接ID,每一个连接需要分配不同的 ID
- 连接类型:默认为 TCP/IP,11,即 16#0B
- 建立连接:作为客户端时,设置为 1,作为服务器时,设置为 0
- 远程地址:要访问的服务器的 IP 地址,即 192.168.1.10
- 远程端口号:要访问的服务器的端口号,502
- 本地端口号:本地客户端的端口号,0
3、创建MB_DATA_PTR 数据缓冲区
- 、创建一个全局数据块DB3
2、建立一个数组的数据类型,在通信中读写数据使用
3、修改 DB3 的属性,取消优化的块访问
MB_DATA_PTR 指定的数据缓冲区可以为 DB 块或 M 存储区地址中。DB 块可以为优化的数据块,也可以为标准的数据块结构。若为优化的数据块结构,编程时需要以符号寻址的方式填写该引脚;若为标准的数据块结构(可以右键单击 DB 块,“属性”中将“优化的块访问”前面的勾去掉),需要以绝对地址的方式填写该引脚。本例以标准的数据块(默认) 为例进行编程
取消勾选优化的块访问时,寻址方式为P#DB3.DBX0.0 WORD 2(起始位,数据类型,数量)
4、服务器的Unit ID 设置
双击每一个 MB_CLIENT 的背景数据块,将 MB_Unit_ID 参数设置为 248,此 Unit ID 取决于服务器端的参数,本例中 ATV340 的Unit ID 为 248
5、程序编写
读操作,本例中从 ATV340 读取 3201 与 3202 两个寄存器的值
写操作,本例中写入 ATV340 的 8501 与 8502 两个寄存器
程序下载至 PLC 后,需要将 PLC 与 ATV340 全部断电重启
6、ATV340 控制流程
ATV340 变频器采用 DriveCom 控制流程,通过 ETA 状态字(通信地址为 3201)读取ATV340 的状态,通过 RFR 输出频率字(通信地址为 3202)读取 ATV340 的输出频率;通过CMD 命令字(通信地址为 8501)控制 ATV340 的状态转换,通过 LFR 设定频率字(通信地址为 8502)写入 ATV340 的设定频率
控制流程图,如下:
CMD 命令字
ATV340 常用的命令字操作
- 正转:16#000F
- 反转:16#080F
- 停止:16#0007
- 快速停止:16#0002
- 故障复位:16#0080
ATV340 常用的状态字
- 故障:16#xxx8
- 准备好:16#xx33
- 运行中:16#xx37
- 快速停止中:16#xx17
7、流程控制与状态显示部分程序
相关文章
- 用.NET设计一个假装黑客的屏幕保护程序
- 【说站】最新源码分享学法减分助手PRO小程序
- 智能合约DAPP程序搭建流程(系统开发源码)
- TCP三次握手图_tcp为什么三次握手
- tcp rst报文_TCP报文格式
- SQLServer 错误 10060 在建立与服务器的连接时出错。 在连接到 SQL Server 时,在默认的设置下 SQL Server 不允许远程连接可能会导致此失败。 (提供程序:TCP 提供程序,错误:0 – 由于被连接方在一段时间后未正确响应,或者连接的主机无法响应,连接尝试失败。)(Microsoft SQL Server,错误:10060) 故障 处理 修复 支持远程
- 把EXCEL用程序导入到ORACLE中(SpringMVC+MyBatis)详解编程语言
- 端口开放Linux 检测TCP端口开放情况的实现(linux判断tcp)
- 玩转Redis:掌握程序实例集(redis程序实例)
- Linux下TCP流量转发技术研究(linux tcp 转发)
- Linux TCP缓冲区:提升网络性能的关键(linux tcp缓冲区)
- Linux TCP 流量超时排查(linux tcp 超时)
- MSSQL远程访问:TCP端口号码确定(mssql端口 tcp)
- Windows中使用计划任务自动执行PHP程序实例