plc200 MBUS的起始V区起始地址40001 问题

plc200MBUS的起始V区起始地址40001 那么默认vb100是不是就是40001 那么vb200 vw200分别又是多少啊?库的存储区又该如何分配使用建议地址还是自己手动分配?分配的地址第一个是不是就是40001?有没有这方面的资料给我点,谢谢

问题补充:
图中数据指针使用的是字节vb100,而传送数据时为什么要用字vw100,数据传输到vw100不是vb101先得到数据吗?我库的存储区分配使用建议地址起始地址是vb102不影响吗?

图片说明:

plc200 MBUS的起始V区起始地址40001 问题    plc200 MBUS的起始V区起始地址40001 问题   

最佳答案

1、plc200MBUS的起始V区起始地址40001 那么默认vb100是不是就是40001 那么vb200 vw200分别又是多少啊?
从你附图中,plc200 是 MODBUS RTU 主站,它没有保持寄存器,你的变频器是从站,它是有保持寄存器的。
2、库的存储区又该如何分配使用建议地址还是自己手动分配?分配的地址第一个是不是就是40001?
可以自动分配,也可以手动分配,但是建议自动分配;手动分配时一定注意库存储区是以字节为单位计算的一片连续V区,这个区是MODBUS指令使用的专用区,不能与你写的程序中使用的存储区有任何重叠,能做到这一点,你可以手动分配库存储区。
3、补充问题要从下面说起。
Modbus RTU 主站读写子程序MBUS_MSG
Addr 脚:
读写从站的数据地址,40001 至 4xxxx – 对应的就是变频器的保持寄存器(指令要求必须为十进制)。
你变频器控制字就是MODBUS RTU 的保持寄存器,变频器手册上说明的偏移地址是 2000H(十六进制),转换成十进制是 8192,这个值最前面加上前缀数字 4,则为 48192,采用上偏移1个地址后,寄存器的地址为 48193,你是十六进制表示的地值,所以要将48193转换为十六进制,那么就是 16#BC41,这就是你左边附图中这个值的由来。转换可以用PC 操作系统自带的计算器来验证。可参考网友sunkey1的附图。
Count 脚:
数据个数,是以字为单位的;你是只写一个控制字,来启停变频,你的值是1,这是对的。
DataPtr脚:
数据指针,如果是写指令,要写出的数据放到这个数据区中。
注意这是个存储区指针,多大是由Count 脚来决定的,&VB100就是你要写的控制字的起始地。
因为是个字而不是字节,综合你的应用,是将1 个控制字写到变频器的保持寄存器 48193(十进制),这个控制字就是一个16位的二进制码,必须用字传送指令 MOV_W写在VW100中。
正如你所附右图中,当I0。1或者M20。0接通的上升沿,程序传送16#12H值到VW100中,则当扫描调用左图所附MBUS_MSG指令时,就将 VW100中的控制字值(16位的字)发送到了变频器的 2000H(上偏移后为十进制的48193),变频器得到这个值就正转启动了。停止和反转与此类同。
参考资料,上面的网友提供的已经很好了。

提问者对于答案的评价:
谢谢各位的解答!现在对这个通讯协议有了更深的了解。

最佳答案作者回复:
共同提高,共同学习,其乐无穷。

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc367374.html

(4)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2021年7月5日 下午2:41
下一篇 2021年7月5日

相关推荐

  • S7-200以及S7-300

    1、在S7-200软件里有特殊继电器 SM 如SM0.0该位总是打开;SM0.1首次扫描打开;SM0.3进入运行模式时打开一次;SM0.5 可提供0.…

    SIMATIC S7-200 2021年7月5日
  • smart700ie与s7-200之间怎么通信

    smart700ie与s7-200之间用RS485通信线怎么通信 最佳答案 使用RS485/422的串口连接CPU200,硬件连接见附图;软件组态选择PPI协议即可。 图片说明: …

    2017年11月1日
  • 关于PTO控制

    PTO控制是否一旦启动就不能停止。停止的话又要重新开始 问题补充:我的意思它停止了。开始的话又要从头发脉冲。简而言之就是说:假入我需要10000个脉冲。发了4000个因设备故障强行…

    SIMATIC S7-200 2018年12月2日
  • 子站怎么把频率数据传至主站

    数据已经算好,就是要把数据给主站显示用,不知道用什么指令(类似于vwub吗?) 问题补充:两个s7-200之间ppi通讯,把一组实数传给主站,我不知道用什么来装这个数,才能传给主站…

    2021年7月5日
  • OPC安装后保存提示错误

    我的OPC安装后建一个项目,保存的时候出现一个对话框提示错误。安装好几个版本都不行。。。。我装的是XP系统 问题补充:保存的时候出现个对话框提示  发生意外错误…

    SIMATIC S7-200 2017年11月12日
  • 西门子200的自由口通讯

    小弟最近在学习自由口通讯,把手册上面的程序照搬下载到PLC后用超级终端调试,怎么一发送起使数据就变为0(此数据是通讯的数据量),出现的数据完全不是我发送的,请问大家是怎么回事???…

    SIMATIC S7-200 2018年12月3日
  • S7-200自定义库问题

    我做了一个控制电磁阀的自定义库,相当于一个功能块。在程序调用此功能块时,我暂时调用了两个。结果对第一个进行操作时发现两个功能块同时动作。这样相当于我做的功能块智能用一个。请问是什么…

    2017年6月18日
  • M寄存器如何使用

    M寄存器的触点使用是否需要置位或线圈后才能使用常开触点,我例子程序中看到只使用触点,但整个程序未置位,不能理解. 最佳答案 有可能是HMI(人机界面)或上位机用的控制点! 提问者对…

    SIMATIC S7-200 2021年7月5日
  • 怎么实现一个变量的每100毫秒的变化曲线

    一个变量比如说是重量,我想去测量他每100毫秒的变化值,即用后100毫秒的重量减去前100毫秒的重量,如此反复,然后用上位机,组态软件绘制出重量变化的曲线,我现在只能检测到他时时的…

    SIMATIC S7-200 2021年7月5日
  • PID 向导 多路PID应用

    请各位大侠看看 这样使用是否正确 图片说明:    最佳答案 这个程序是可以,但是不理想也不能直接用,你还需要进行面板调节控制,也就是调节P,I,D&…

    2017年11月26日

发表回复

登录后才能评论