欢迎光临大柏电子科技(上海)有限公司
15721373211
当前位置
首页 > 新闻中心 > 常见问题
西门子请教西门子200系列modbus的DataPtr的设定首地址问题
2021/10/19 13:14:31
西门子请教西门子200系列modbus的DataPtr的设定首地址问题

主站指定了一个接收数据的首地址,在编译过后看交叉引用的字节使用,首地址会被使用,请问是什么原因呢?还是默认是这样?就是第二张图里面看交叉引用,按理说40001地址对应的读取到的内容就存放入VW600中是吗?请问
刚才也测试了一下,确实是这样,看样子就是这样的。
40001  VW100
40002  VW102
40003  VW104
如果读来的是浮点数,则是两个字
比如 40001、40002 合起来是 VD600
S7-200 SMART Modbus RTU通信常见问题
http://www.ad.siemens.com.cn/productportal/Prods/s7-200-smart-portal/200SmartTop/SmartSMS/020.html

&VB600里面是VW600,换个地址试试看下


这个是西门子200(smart)指针调用的规约,只能编辑指针的首字节地址,至于具体到底是位?字节?字?还是双字(浮点数),看MSG指令其它管脚的定义。
具体有Addr及Count管脚数据定义,最后被分配到DataPtr管脚。
你理解的没有错,当Addr定义到40001地址后,DataPtr管脚的数据对应为字,首字节VB600,实际为VW600的地址中。
整体MSG指令含义:
读取从站10#的40001数据,将读取到的数据存放在VW600的地址中。
按照你说的,刚才做了下测试,确实是你说的这样,之前还真没注意这么回事,个人理解:
1.在西门子定义里面,你程序是采集1个对方地址,西门子默认就是以D方式来指针偏移
2.比如你采集的real、那么交叉里面的D,你全部占有
3.如果你采集的W,按照高低位来判断位置  的话,你也是VW600,而VW602一直处于0的状态

联系方式
CONTACT US

电话:13818569113

邮箱:13818569113@139.com

网址:http://www.xmzgk.com

地址:中国上海市青浦区崧盈路398号6栋

用手机扫描二维码关闭