应用领域 | 环保,生物产业,石油,制药/生物制药,综合 |
---|
:1800弄(电子商务园)5005.
公司主营:西门子数控系统,V20变频器S7-200CN.S7-200smart.S7-300.S7-400.S7-1200.6ES5 ET200 人机界面,变频器,DP总线,MM420 变频器MM430 变频器MM
![]() |
参考价 | ¥670 |
订货量 | 1件 |
更新时间:2023-11-08 16:10:49浏览次数:254
联系我们时请说明是化工仪器网上看到的信息,谢谢!
西门子模块6ES7511-1AK01-0AB0经销商S7-200可编程序控制器手册
Modbus地址
Modbus地址通常是包含数据类型和偏移量的5个字符值。个字符确定数据类型,后面四个字符选
择数据类型内的正确数值。
Modbus主站寻址-Modbus主站指令可将地址映正确功能,然后发送至从站设备。Modbus主
站指令支持下列Modbus地址:
□ 00001到09999是离散输出(线圈)
□ 10001到19999是离散输人(触点)
□ 30001到39999是输人寄存器(通常是模拟量输人)
□ 40001到49999是保持寄存器
所有Modbus地址都是基于1,即,从地址1开始个数据值。有效地址范围取决于从站设备。不同
的从站设备将支持不同的数据类型和地址范围。
Modbus从站寻址-Modbus主站设备将地址映正确功能。Modbus从站指令支持以下地址:
□ 00001至00128是实际输出,对应于Q0.0-Q15.7
□ 10001至10128是实际输人,对应于
I0.0-I15.7
□ 30001至30032是模拟输人寄存器,对
应于AIW0至AIW62
□ 40001至04XXXX是保持寄存器,对应
于V区。
所有Modbus地址都是从一开始编号的。表
12-1所示为Modbus地址与S7-200地址的对
应关系。
Modbus从站协议允许您对Modbus主站可访
问的输人、输出、模拟输人和保持寄存器
(V区)的数量进行限定。
MBUSJNIT指令的参数MaxIQModbus
主站允许访问的实际输人或输出(I或Q)的
数量。
MBUSJNIT指令的MaxAI参数Modbus主
站允许访问的输人寄存器(AIW)的数量。
MBUSJNIT指令的MaxHold参数
Modbus主站允许访问的保持寄存器(V存储区
字)的数量。
请查看MBUSJNIT指令的描述,了解更多的
关于为Modbus从站设置存储区的信息。
表12-1 映射Modbus地址至S7-200
Modbus地址 S7-200地址
00001 Q0.0
00002 Q0.1
00003 Q0.2
00127 Q15.6
00128 Q15.7
10001 I0.0
10002 I0.1
10003 I0.2
10127 I15.6
10128 I15.7
30001 AIW0
30002 AIW2
30003 AIW4
30032 AIW62
40001 HoldStart
40002 HoldStart+2
40003 HoldStart+4
4xxxx HoldStart+2 x(xxxx-1)
350
使用Modbus协议库
第12章
组态符号表
当您为个符号输人一个地址后,符号表会自动计算并分配符号表中其余的符号地址。
您要为这个占用779字节的表分配一个起始的V区地址。确保对Modbus从站符号表的V区地址分配与
MBUSJNIT指令中HoldStart和MaxHold参数为Modbus保持寄存器分配的V区地址不重叠。如果有存
储区域的地址重叠,MBUSJNIT指令会返回一个错误。
使用Modbus主站指令
在S7-200程序中使用Modbus主站指令请遵循以下步骤:
1. 在程序中插人MBUS_CTRL指令,在每次扫描时执行MBUS—CTRL。可以使用MBUS—CTRL指
令初始化或改变Modius通讯参数。
当您插人MBUS_CTRL指令时,几个隐藏的子程序和中断服务程序会自动地添加到您的程
序中。
2. 使用库存储器命令为Modbus主站协议指令所需的V存储器分配一个起始地址。
3. 在程序中输人一个或多个MBUS_MSG指令。可以按要求将多个MBUS_MSG指令添加到程序
中,但每次只有一个指令处于活动状态。
4. 连接S7-200 CPU上的端口0 (或对端口 1库,使用端口 1)和Modbus从站设备之间的通讯
电缆。
当心
具有不同参考电位的互连设备将可能出现不必要的电流流过互连电缆。这些不必要的电流可能
通讯出错,甚至可能损坏设备。
请确保用通讯电缆连接的所有设备具有公用电路参考电势,或进行绝缘,以避免产生不必要的
电流。
Modbus主站指令使用下面所示的Modbus功能读或写一个特定的Modbus地址。Modbus从站设备必
须支持读或写特定Modbus地址所要求的Modbus功能。
表12-2 所要求的Modbus从站功能支持
Modbus地址 读或写 所要求的Modbus从站功能
00001到09999离散输出 读 功能1
写 用于单个输出点的功能5
用于多个输出点的功能15
10001到19999离散输人 读 功能2
写 不可能
30001到39999输人寄存器 读 功能4
写 不可能
40001到49999保持寄存器 读 功能3
写 用于单个寄存器的功能6
用于多个寄存器的功能16
351
S7-200可编程序控制器手册
使用Modbus从站指令
在S7-200程序中使用Modbus从站指令请遵循以下步骤:
1. 在您的程序中插人MBUSJNIT指令并且只在一个循环周期中执行该指令,MBUSJNIT指令
可用于对Modbus通讯参数的初始化或修改。
当您插人MBUSJNIT指令时,几个隐藏的子程序和中断服务程序会自动地添加到您的程序中。
2. 使用库存储器命令为Modbus从站协议指令所要求的V存储器分配一个起始地址。
3-在您的程序中只使用一个MBUS_SLAVE指令。该指令在每个循环周期中执行,为接收到的所
有请求提供服务。
4.使用通讯电缆将S7-200的端口 0和Modbus主站设备连接在一起。
当心
具有不同参考电位的互连设备将可能出现不必要的电流流过互连电缆。这些不必要的电流可能
通讯出错,甚至可能损坏设备。
请确保用通讯电缆连接的所有设备具有公用电路参考电势,或进行绝缘,以避免产生不必要的
电流。
累加器(AC0、AC1、AC2、AC3)由Modbus从站指令使用并显示在交叉参考列表中。在执行前,
Modbus从站指令在累加器中的数值被存储并在Modbus从站指令完成前恢复到累加器中,确保在执行
Modbus从站指令时,所有在累加器中的用户数据都保护。
Modbus从站协议指令支持Modbus RTU协议。这些指令使用S7-200的端口功能,支持大部分
常用Modbus功能。以下是所支持的Modbus功能:
表12-3 支持的Modbus从站协议功能
功能 描述
读单个/多个线圈(实际输出)状态,功能1返回任意数量输出点的接通/断开状态(Q)
2 读单个/多个器(实际输人)状态。功能2返回任意数量的输人点的接通/断开状态(I)
3 读单个/多个保持寄存器。功能3返回V存储器的内容。保持寄存器在Modbus下是字类型,在一个请 求中多可读120个字。
4 读单个/多个输人寄存器。功能4返回模拟输人值。
5 写单个线圈(实际输出)。功能5将实际输出点设置为值。该输出点不是被强制,用户程序可以 重写由Modbus的请求而写人的值。
6 写单个保持寄存器。功能6写一个单个保持寄存器的值到S7-200的V存储区。
15 写多个线圈(实际输出)。功能15写多个实际输出值到S7-200的Q映像区。起始输出点必须是一个字 节的开始(如,Q0.0或Q2.0),并且要写的输出的数量是8的倍数。这是Modbus从站协议指令的限 定。这些点不是被强制,用户程序可以重写由Modbus的请求而写人的值。
16 写多个保持寄存器。功能16写多个保持寄存器到S7-200的V区。在一个请求中多可写120字。
352
使用Modbus协议库