和MODBUS从站交换数据

用CPU226作modbus的主站,有两个问题向各位请教:
  1 在交换数据的时候,需要把4个子站的数据交换发生的时刻特意分开吗?我想,如果CPU226自己对4个子站是轮流交换数据的,就不必为此操心了,  那么实际上是这样的吗?就是说,我怎样才能避免同时发生两个数据交换的动作呢?一发生这种情况,就会报错的。
  2 在一个子站内,有二十多个数据交换的需要,有的可以反复写入,如设置参数,有的则是几十分钟才发生一次,如果非要把他们排成一列,可能后面的一个交换要求出现了,可是前面的一个交换还没发生,不许执行后面的动作,结果时间过去了,后面的动作也没法发生,就麻烦了。这种情况,怎么处理呢 ?

问题补充:
程序会对某个MODBUS从站所控制的几个设备发送控制命令,例如让A电源启动,或者让B设备停车等等。这些控制动作不会是顺序发生的,先后次序经常变动,而且控制命令存在的时间也很短,设想把这些发送动作都排成一队 ,让前一个发送的“Done”去发送后一个控制命令,可是偏偏排在后面的动作先发生了,前面的动作还没发生,不给后面“Done”,很快后面的控制命令也消失了,岂不麻烦?

最佳答案

这个问题N年前就讨论过了!
 1.用标志位来决定是否进行轮询!
 2.用循环方式来进行轮询!
 用1的方法通讯较快,但编程较复杂,但效率高!
 用2的方法编程简单,但效率较低!
 建议你用2的方法!用时间来循环!
 1-2S秒通讯1#从站;2-3S通讯2#从站!

 希望对你有帮助!

提问者对于答案的评价:
谢谢,我想也只能如此了

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

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

相关推荐

  • EM253与步进电机驱动器如何接线,谢谢!

    步进电机驱动器是国产的,信号端子有4个,PUL,DIR,+5V,ENBL,请问这四个端子接到EM253那些端子上,谢谢! 最佳答案 P0+,P0–,P1+,P1–是驱动输出;&…

    SIMATIC S7-200 2017年8月26日
  • 直接输入与输出在什么情况下使用啊?

    S7-200的直接输入与普通输入有什么区别?什么情况下使用啊?我们常见的情况下什么时候用? 问题补充:其它的和普通的点一样?就只是没有受扫描周期的限制吗?输入一个,不管你扫描周期到…

    SIMATIC S7-200 2020年11月1日
  • 师傅们,看看我画的这个io接线图对吗

    选用西门子S7-200,CPU224XP小型 PLC, 图片说明:    最佳答案 楼主画的图和CPU224XP有点出入。发个例图给你看下。 图片说明…

    2019年6月10日
  • S7-200控制伺服回零问题

    请问大家,用S7-200控制伺服回零,利用MAP指令库,在原点附近寻零和在离原点很远处寻零,感觉位置不一样啊,请问大家一般用什么方法寻零,可以让位置可以稳定些啊。麻烦大家讲讲啊,谢…

    SIMATIC S7-200 2017年12月7日
  • 欧姆龙编码器与S7200的编程

    我的编码器是欧姆龙绝对型单圈编码器,我要用它来计算距离(设定一个固定的点,每次经过这个点,圈数加1,即 总的脉冲数=256*圈数+不够一圈的脉冲数),用S7200来实现的…

    SIMATIC S7-200 2020年11月1日
  • 两台S7200plc之间进行PPI通信最远距离是多少呀?

    另外,如果其中一台加上一个以太网模块,在进行互相PPI通信的同时,还可以与上位机进行以太网通信吗? 最佳答案 1、PPI通信最远距离是多少呀?CPU上的通信端口:CPU通信口的最高…

    SIMATIC S7-200 2020年10月31日
  • uss指令应用

    在USS-INIT指令中active怎样使用例:16#00000001表示什么意思?谢谢 问题补充:一个USS-INIT指令是否可同时指定几个驱动,地址应是多少 最佳答案 USS_…

    SIMATIC S7-200 2021年7月5日
  • 关于cpu224xp与pc通讯问题

    pc是win7 32位的,安装的是V4.0 sp9的STEP7,手上有一台cpu224xp的plc,和一根原装的USB-R485电缆,想实现plc与pc的通信。…

    2017年11月17日
  • 数据分布图

    即:不是可以知道(在软件里用指令看出)比如说M0.1与M1.1是否有重叠,就是知道(二维的看到M0.1与M1.1的分布图),谢谢(我就想在软件里二维的看一下,怎嘛操作?谢谢 问题补…

    SIMATIC S7-200 2020年10月31日
  • 问个定时器问题

    如图,我想围绕T41设定个时间,比如说T41定时时间大于等于20s,目的是假如I0.4接近开关坏了,设备还在行走,这时定时时间超过设定秒数自动停止。打算用比较指令,但是该怎么写呢?…

    2017年7月26日

发表回复

登录后才能评论