找答案的高端用户(找答案钻石及双钻级别的用户)将尽可能从此问题下的所有回
答中,为您推荐最佳答案。届时您可以根据推荐数采纳答案。
如果自提问时间起7天内您仍无法选出最佳答案,您可以选择“无满意答案”关闭此问题。
问题
取消精华
首页精华问答
取消推荐
高端用户推荐
申请置评
已申请置评
修改
修改标签
添加标签
官方认证
取消官方认证
修改标签
添加标签
转移分类
删除
{{itemCategory}}
收藏({{answerDetail.Q_FavoriteCounts}})
手机扫码追踪该问题,
觉得实用,立即去分享!
点击复制链接
专家建议
取消最佳答案
修改
&VB0 对应的地址是一个字,也就是对应VW0,你一次读五笔,这五笔就是这样对应。&VB0=VW0, &VB1=VW2, &VB2=VW4, &VB3=VW6, &VB4=VW8
你可以参考下面的说明:
参数Count指定在此次请求中要读取或写入的数据元素数。对于位数据类型,Count将是位数;而对
于字数据类型,它指的则是字数。
地址0xxxx Count是要读取或写入的位数
地址1xxxx Count是要读取的位数
地址3xxxx Count是要读取的输入寄存器字的个数
地址4xxxx Count是要读取或写入的保持寄存器字的个数
MBUS_MSG指令将读取或写入最大120个字或1920个位(240字节的数据)。Count值的实际限制取
决于Modbus从站设备中的限制。
参数DataPtr是一个间接地址指针,它指向S7-200 CPU中与读取或写入请求相关的数据所在的V存
储器。对于读取请求,DataPtr应该指向用于存储从Modbus从站读取的数据的第一个CPU存储器位
置。而对于写请求,DataPtr应该指向要发送到Modbus从站的数据的第一个CPU存储器位置。
DataPtr值作为一个间接地址指针,传送到MBUS_MSG中。例如,如果要写入到Modbus从站设备
的数据在S7-200 CPU中的起始地址为VW200,那么DataPtr的值就应该是&VB200(VB200的地
址)。指针的类型必须始终为VB,即使它指向的是字数据。
表12--9 MBUS_MSG指令的参数。
参数数据类型操作数
First BOOL I、Q、M、S、SM、T、C、V、L(上升沿检测单元所要求的功率
流)
Slave BYTE VB、IB、QB、MB、SB、SMB、LB、AC、常数、*VD、*AC、*LD
RW BYTE VB、IB、QB、MB、SB、SMB、LB、AC、常数、*VD、*AC、*LD
ADDR DWORD VD、ID、QD、MD、SD、SMD、LD、AC、常数、*VD、*AC、
*LD
Count INT VW、IW、QW、MW、SW、SMW、LW、AC、常数、*VD、*AC、
*LD
DataPtr DWORD &VB
Done BOOL I、Q、M、S、SM、T、C、V、L
Error BYTE VB、IB、QB、MB、SB、SMB、LB、AC、*VD、*AC、*LD
保持寄存器(地址4xxxx)和输入寄存器(地址3xxxx)是字值(2字节或16位)。S7-200 CPU字格
式与Modbus寄存器的完全相同。较低编号的V存储器地址是寄存器的最高有效字节。较高编号的V存
储器地址则是寄存器的最低有效字节。下表说明了S7-200字节和字编址是如何与Modbus寄存器格式
相对应的。
表12--10 Modbus保持寄存器
S7-200 CPU存储器
字节地址
S7-200 CPU存储器
字地址
Modbus
保持寄存器地址
V存储器地址十六进制数据V存储器地址十六进制数据V存储器地址十六进制数据
VB200 12 VW200 12 34 4001 12 34
VB201 34
VB202 56 VW202 56 78 4002 56 78
VB203 78
VB204 9A VW204 9A BC 4003 9A BC
VB205 BC
位数据(地址0xxxx和1xxxx)区作为打包的字节读/写,也就是说,8个数据位打包成一个字节的数
据。第一个数据字节的最低有效位是寻址的位号(参数Addr)。如果只写入单个位,则该位必须在
DataPtr所指向的字节的最低有效位中。
点赞({{answerDetail.Q_Positive}})
评论
评论
精探推荐
等您来回答
换一换
{{item.CoinValue}}西币
{{item.VisitNum}}人想问
本版相关问题
换一换
专家置评
首次回答问题,获得
双倍西币积分!
立即成为技术知识分享的一员!
欢迎您访问支持中心!
丰富的视频,全方位的文档,大量的网友交流精华……
为了更好的完善这些内容,我们诚邀您在浏览结束后,花20秒左右的时间,完成一个用户在线调查!
感谢您的支持!

西门子商城