• {{item.name}}
SIMATIC S7-1200系列 {{item.name}}
{{item2.name}}
更多
常问问题

SIAMATIC S7-1200 中通过Modbus RTU如何读取地址范围9999到65535的输入字?

star star star star star
5.0 分
文档编号:109474481| 文档类型:常问问题| 发布时间:2023年10月17日
  • 0
  • 1689
  • 2
STEP 7 V14 (TIA Portal)及以上版本中的"Modbus_Master"指令版本V2.4及以上,开始为SIMATIC S7-1200/S7-1500提供了读取Modbus从站输入字(功能代码04)扩展地址范围(9999-65535)的选项。

要求

下表列出了读取扩展输入地址范围的最低要求:
S7-1200 S7-1500 / ET 200SP CPU  CPU 固件版本 V4.1.1 及以上 V1.7 及以上通信板 CB 1241 RS485 -通信模块 CM 1241 RS422/485 (V2.1 及以上) CM PtP RS422/485 HF (V1.0 及以上) CM 1241 RS232 (V2.1 及以上) CM PtP RS232 HF (V1.0及以上) ET 200SP CM PtP (V1.0 及以上) STEP 7 (TIA Portal) V13 SP1 及以上 V14 及以上 MODBUS ( RTU )指令 V3.0 及以上 V3.1 及以上 Modbus_Master指令 V2.2 及以上 V2.4 及以上表01
指令

除了"Modbus_Master"指令以外,还需要"Modbus_Comm_Load"指令才能建立通讯。
两个程序块都在STEP 7 (TIA Portal)中,"Instructions>Communication>Communication processor>MODBUS ( RTU )"。


图. 01


Modbus_Comm_LoadModbus_Comm_Load程序块是用来选择通讯模块的,设置通讯参数并用主站(或从站)的参数将连接参数化。


图. 02

在第一次调用Modbus_Master (or Modbus_Slave)之前, Modbus_Comm_Load 必须运行一次(仅触发一次即可)并且运行完成(DONE为1)。 Modbus_Comm_Load 可以在程序的第一个循环中(通过在硬件组态中启用系统存储器位M1.0)调用。

在硬件组态中插入通讯模块之后,就可以在PORT参数传输通讯模块的硬件标识符或则其符号名。通讯参数BAUD (波特率)和PARITY (奇偶校验) 必须要与从站地址相匹配。

在参数MB_DB传输Modbus_Master (或者 Modbus_Slave)背景数据的数据结构MB_DB,这样就可以定义通讯模块(通过PORT参数识别) 为MODBUS主站(或从站)。

除此之外,必须改变 Modbus_Comm_Load的背景数据块中的静态参数以便进行双工操作模式,通过初始值设定(0 = 全双工(RS232), 1 = 全双工(RS422)四线制模式,4 = 半双工(RS485) 两线制模式)。      


图. 03

Modbus_Master
使用Modbus_Master功能块来定义通讯模块,并将Modbus_Comm_Load组态块选择为MODBUS主站。


图. 04

Modbus_Master块用来选择需要与之通讯相匹配的MODBUS从站,指定功能代码并定义本地数据的存储区。下面表格介绍了参数。

参数描述
REQ使能通讯。
MB_ADDRMODBUS-RTU从站地址。
MODE请求的类型: "0" = 读"1" = 写"104" = 读取从站的输入字(寄存器地址到65535)
DATA_ADDR定义MODBUS起始地址( =偏移量 + 从站寄存器地址):MODE = 104:Offest =0
DATA_LEN定义MODBUS数据长度(位或者字节形式):当MODE = 104长度单位为 Words
DATA_PTR定义主站本地数据接收区和发送区。DATA_PTR参数必须引用一个数据块,这个数据块的“优化的块访问”属性必须已被禁用。

表 02

下载
项目包含了通过Modbus RTU读取扩展输入地址的例程。

  • S7-1200 CPU使用CM 1241 RS422/485
  • S7-1200 CPU 使用CB 1241 RS485

地址为1的Modbus从站,从地址53248开始 (16#D000)规定的9个输入字可以通过RS485通讯使用监控表读取 (比如ebm-papst公司的Motor VarioDrive C)。

更多信息

描述条目ID
SIMATIC S7-1200 CPU固件更新 Download
CM 1241 固件更新V2.1.0 108819199
S7-1500 CPU固件更新包含显示屏和ET200 CPU (ET200SP, ET200pro) 109478459
如何使用 "Modbus_Master"指令访问大于 9999的地址? 86158926
如何使用 STEP 7 ( TIA Portal ) 为 SIMATIC S7-1200 建立 MODBUS - RTU 通信? 47756141
应用示例: 使用 SIMATIC S7-1200 通过 Modbus RTU 控制多个风扇 (ebm-papst) 109476801
应用示例:基于 Modbus RTU 协议,通过 CM PtP 进行主从站通信68202723
手册:SIMATIC S7-1200 可编程控制器91696622
手册: SIMATIC STEP 7 Basic/Professional V15.1 和 SIMATIC WinCC V15.1109755202


您可以前往全球资源库查看此文档

剩余80%未阅读,请登录查看文档

  • 评论
更多
  • 分享

    扫码分享

提示
您即将前往“全球技术资源库”。
“全球技术资源库”的用户名与本地支持中心(下载中心、技术论坛、找答案、1847工业学习平台)的用户名不通用。如果需要在全球技术资源库下载文档,您需要重新登录或注册。
确定

扫码进入移动端

信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。