MODBUS RTU通信中关于如何将压力温度流量放入数据缓冲区

从站里 一个压力传感器的压力值为10.0是存在VD1000中的,数据缓冲区是VB0开始的100个字,应该是VB0-VB199。定义缓冲区的VD0(VB0,VB1,VB2,VB3)用于存储压力传感器寄存器的地址,程序是不是也要用间接寻指的方式将VD1000转到VD0中呢,即如下程序:LD     M1.0
MOVD   &VB1000, VD0, 
不知道是否是这样做呢。

主站的编程
主站这边通过读取40001放入缓冲取VB100,是不是表示主站的VD100=从站的VD0呢,如果要在主站里显示压力值是不是需要编程即:LD     M1.0
MOVD   *VD100, MD0
这时主站的MD0应该是显示压力值,
第一次接触通信方面,看了一些资料,不知道是不是这样理触的,手头上只有一个CPU224,做了MODSCAN与其的串口测试,000001和100001这方面的测试都是明白了,但对40001这寄存器方面还是不太懂,测试中的值都是0,不管我从站在缓冲区VB0中写入什么值MODSCAN里显示的40001都是0.0.,所以问了上面的那个问题,本身对间接寻址就接触的少

问题补充:
刚根据weiyt工程师说的直接将数据值写入数据缓冲区用MODSCAN32测试了一下,浮点数数据传送对就40001和40003,但整数型数据也是直接传到缓冲区里,不知道分别对应的40000是多少呢,好像显示不出来,请看下面的程序与MODSCAN32的截图

图片说明:

MODBUS RTU通信中关于如何将压力温度流量放入数据缓冲区    MODBUS RTU通信中关于如何将压力温度流量放入数据缓冲区   

最佳答案

1、是的,需要将要发送的数据放到数据缓冲区,并从缓冲区读取主站写来的数据。
    LD M1.0  //该指令是正确的
       MOVD &VB1000,VD0  //该指令是把VB1000的地址传送给VD0,VD0需要的是仪表的数据而不能是变量的地址
    可以修改成:
    LD SM0.0
       MOVD   &VB1000, AC1
       MOVR   *AC1, Symbol_9
     或者直接改成
    LD   SM0.0
      MOVR  VD1000,VD0
2、是的,40001对应第一个字,如果是读指令,那么将40001放到VB100开始的第一个字中,如果要使用,需要将VD100中的数据赋值给需要的变量。
     LD   SM0.0
         MOVR  VD100,VD0
3、40001~49999是读写寄存器的地址
补充
实数需要使用VD方式显示,一次使用2个字完成一个实数读写,如主站40001,40002中两个字存到VW100,VW102,使用VD100来显示实数就是10.0;整数就一个字可以了,如40003中存储10

提问者对于答案的评价:
谢谢

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2021年7月5日 下午3:09
下一篇 2021年7月5日 下午3:09

相关推荐

  • 程序执行出现问题

    大家好,刚学PLC,老师给了个数码管的例子程序,怎么看也不懂,最后自己写了程序: 就是现实一个7段的数码管数字,从0到9然后循环显示,每个数字间隔一秒 我定义的…

    SIMATIC S7-200 2021年7月4日
  • 请问关于排序

    请问如何用200实现“冒泡”法的排序? 最佳答案 S7200实现冒泡的方法和别的语言是一样的,对于200来说,关键是你如果正确与合理地使用其各种指令(语句),指令用的正确合理,程序…

    SIMATIC S7-200 2021年7月5日
  • EM253的接线

    刚看了EM253手册,有两点疑虑请教各位楼主:1、提供给EM253的电源DC24V,那它的5个输入点信号是有源信号吗?还是无源的?是否直接连接开关量即可,不需额外再串入电压,例如:…

    SIMATIC S7-200 2020年11月1日
  • 西门子PLC224cn程序下载不下去,已经是v4.0版本中文了。

    问题1.PLC226cn程序下载不下去,已经是v4.0版本中文了。2.产品换新,用旧的PLC224不带cn,连接em231不带cn,没问题,换成em231 cn的发现模拟…

    SIMATIC S7-200 2017年11月4日
  • s7-200填表问题

    如果表填满以后再填一次,表内数据会被覆盖么? 问题补充:我的意思是 接着再往里填一个数会有什么情况 最佳答案 会。补充问题回复:就是一直填到表格满了,第一次输入的数据被溢…

    SIMATIC S7-200 2017年11月12日
  • s7-200软件没法安装报错

    我装的是MICROWIN.V4.0.SP9,但是装的时候报错请问怎么回事? 图片说明:    最佳答案 安装MICROWIN.V4.0.SP9提示有以前的版本在…

    2020年10月31日
  • 三台200PPI通讯

    现场有三台200的PLC,分别为PLC1,PLC2,PLC3,利用PPI通讯协议通讯,通过DP电缆分别连接三台PLC的POTR0,程序内部通过网络读写向导编程,想请问各位大虾:1.…

    SIMATIC S7-200 2020年11月5日
  • S7-200 CPU226 要控制两个伺服电机,三个步进电机

    S7-200 CPU226 要控制两个伺服电机,三个步进电机,该如何分配输出端子?需要EM253模块吗? 问题补充:我就是想问下输出点怎么接?比如Q0.0和Q0…

    2017年11月1日
  • s7-200CPU无法与模块通信

    中央处理器为226 cn ,数字量输出模块跟模拟量输入模块确认无故障,但是cpu无法与模块通信,换上新处理器能通信,用两天又无法正常使用 最佳答案 CPU扩展口…

    SIMATIC S7-200 2021年7月5日
  • 想问问 PLC200最多能采集多少路脉冲量

    有个项目要求采集15路PI想问问200的PLC可以采集么 还有个问题 因为*机要求PLC需要用modbus协议 但是还有几快modbus协议的表&nb…

    SIMATIC S7-200 2020年10月31日

发表回复

登录后才能评论