S7-1200/1500 Modbus RTU:扩展地址范围内读取9999-65535输入字的步骤

版权申诉
0 下载量 122 浏览量 更新于2024-08-10 收藏 201KB DOCX 举报
在S7-1200和S7-1500 PLCs中,利用Modbus RTU协议读取地址范围9999到65535的输入字,是通过Step7 V14及以上版本的功能实现的。这些PLC支持对传统Modbus RTU功能代码04(读取输入寄存器)的扩展,允许访问超出常规49999地址范围的输入。 首先,要进行这种高级读取,需要使用特定的程序块。"Modbus_Master"指令版本V2.4及以后,作为通信处理器的一部分,在"Instructions > Communication > Communicationprocessor > MODBUS(RTU)"目录下。这个指令允许设置主站与从站的通信,包括选择适当的通讯模块、配置波特率和奇偶校验等。 在开始之前,必须确保执行"Modbus_Comm_Load"指令,这是初始化通讯模块连接的必要步骤。此程序块负责配置通讯模块的选择,如硬件标识符或符号名,并设置与目标从站匹配的参数。首次运行Modbus_Comm_Load后,它会保存连接状态,后续可通过硬件组态中的M1.0系统存储器位来自动触发。 通讯模块的选择和参数设置完成后,需要在"Modbus_Master"块中定义PLC作为主站,并指明目标从站的地址以及功能代码。在"Modbus_Master"块中,用户还需指定本地数据存储区,以便处理接收到的输入字。 为了进行双工通信(即同时发送和接收),可能需要在"Modbus_Comm_Load"的背景数据块中调整静态参数,如选择全双工(RS232或RS422)或半双工(RS485)模式。 一个示例程序通常会展示如何组合使用这些块,包括如何设置波特率、奇偶校验类型,以及如何正确地调用"Modbus_Comm_Load"和"Modbus_Master"以完成扩展地址范围的读取操作。 要在S7-1200和S7-1500中读取地址范围9999到65535的输入字,用户需要熟悉这些高级通信模块的配置,包括正确的通信设置和程序块的交互使用,以确保有效和可靠的数据交换。