• 自动化系统
  • 驱动技术
  • 低压电气
  • 工业服务
  • 其他
SIMATIC S7-1200系列 PLC和组件HMI人机界面通信与网络组件过程控制系统过程仪表及分析仪器工业识别工业信息安全
SIMATIC S7-1500系列
SIMATIC S7-1200系列
SIMATIC S7-200 SMART
SIMATIC S7-200系列
SIMATIC S7-300系列
SIMATIC S7-400系列
LOGO!
ET200
SIMATIC S5
工业自动化软件
工业电源
WinAC
TDC/SYMADYN D
更多
常问问题

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

star star star star star
5.0 分
文档编号:109474481| 文档类型:常问问题| 发布时间:2023年10月17日
  • 1
  • 3435
  • 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.0108819199
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
  • 评论
  • 分享

    扫码分享

  • 收藏
  • 点赞
  • 纠错
 

隐私政策更新提示

欢迎您来到西门子数字化工业支持中心网站!我们使用cookies来确保您能最好地使用我们的网站,进行网站分析并根据您的兴趣定制内容。我们有时会与第三方共享cookie数据。继续浏览本网站,即表示您同意我们使用cookies。您亦可以参考西门子数据隐私政策以了解更多相关信息。

同意并继续浏览
提示
您即将前往“全球技术资源库”。
“全球技术资源库”的用户名与本地支持中心(下载中心、技术论坛、找答案、1847工业学习平台)的用户名不通用。如果需要在全球技术资源库下载文档,您需要重新登录或注册。
确定
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。