技成培训网 技成学习APP 技成工具箱 技成企业服务

欢迎回到技成培训网

技成培训网

电工题库宝典

技成电工课堂

PLC练习题

技成PLC课堂

变频器故障查询

技成PLC学吧

伺服驱动故障查询

技成PLC网校

当前位置:技成首页 > 文章中心 > 技成百科 > cp341做modbus RTU主站,读上来的数据在DB块中存放的问题

cp341做modbus RTU主站,读上来的数据在DB块中存放的问题

刘玉蓉 发布于2014-11-03 17:17 304 0 标签:

用cp341做主站,读仪表的数据,读上来后存放在DB块中。仪表数据是按照Byte读的,假设从0001地址开始读,读2个byte,存放到DB中后,打开看是这样的:
地址   名称              类型       初始值         实际值
0.0         Receive_data[1]      BYTE              B#16#0       B#16#0
1.0         Receive_data[2]      BYTE              B#16#0       B#16#62
2.0         Receive_data[3]      BYTE              B#16#0       B#16#0
3.0         Receive_data[4]      BYTE              B#16#0       B#16#20

从DB块来看,好像读上来的每个byte前面都加上了一个空的byte,难道是自动把byte转成了word型?

佳答案

在MODBUS RTU组态输出寄存器数据区时,数据的传送以字为单位,对应西门子控制器数据块区,如用户地址区为30001 – 30008,对应西门子控制器数据区为DB1.DBW0 – DB1.DBW14, 数据块号可以修改。由于数据块DB的数据类型定义为字节BYTE,在传送到数据块时,将某个值(以字为单位)传送到不同长度的数据类型(字节BYTE)时,会根据需要将高位字节以零填充,所以在读上来的每个BYTE前面都加上一个空的BYTE。

若有收获,就点个赞吧!

文章来源于网络及文献如有侵权请联系站长
分享到:

微信扫一扫分享

阅读与本文标签相同的文章

相关推荐

最新文章 热门文章
最新课程 免费课程
PLC资料下载 电工电气资料下载
应用新秀
变频器故障代码查询APP
伺服故障代码查询APP
技成
手机APP
热门标签