恭喜,你发布的帖子
发布于 2016-12-19 10:18:47
18楼
以下描述都是通俗易懂的描述方式。
发送时钟:定义的是控制器可以说话的时间间隔
更新时间:更新时间为发送时间的倍数。
例如:PLC 定义的发送时钟是1ms,则PLC下面挂的IO站的刷新时间,最小是1ms,不可能比1ms还小。
如果PLC的发送时间是1ms,PLC下挂了2个分布式IO,更新时间都是2ms,那么PLC和这2个分布式IO是这样通信的。第一个发送时钟和第一个分布式IO站通信,第二个发送时钟,和第二个分布式IO站通信,依次循环。
又例如:PLC 定义的发送时钟是2ms,2个分布式IO,更新时间都是2ms。则每个发送周期内,PLC要先后和2个分布式IO站完成通信。
又例如:PLC 定义的发送时钟是2ms,2个分布式IO,一个更新时间是2ms,另一个是4ms,则在每个发送周期内,PLC都要和2ms更新时间的IO站通信,而4ms的站则是每两个发送周期通信一次。
在非等时模式下,PLC的程序扫描和PLC的PN接口对分布式IO站的扫描是异步的。
只有在等时模式下,才是同步的。
关于Y版的疑问,此处再进一步详细阐释一下(通过一个略微大一点的系统):
如果PLC的发送时间是1ms,PLC下挂了4个分布式IO,更新时间都是2ms,那么PLC和这4个分布式IO是这样通信的。第N个发送时钟和其中2个分布式IO站通信,第N+1个发送时钟,和剩余2个分布式IO站通信,依次循环。。。
如果PLC的发送时间是1ms,PLC下挂了4个分布式IO,更新时间依次为1ms,2ms,4ms,4ms,那么PLC和这4个分布式IO是这样通信的:
每N发送时钟,都和1ms的IO站通信;而每N*2个周期,都和2ms的IO站通信,对于4ms的两个分布式IO,虽然其循环时间都是4ms,但却不是在同一个发送周期内通信的,因为那样的话,此发送周期内处理的数据太多,而其它发送周期处理的数据又比较小,所以是错开的,CPU内部会协调此事。比如,(N+0)*4个周期和一个4ms的IO站通信,(N+2)*4个周期和另一个4ms的IO站通信。
精华帖版主置评:谢谢!这样就对实时RT分布式PN系统的通讯细节描述清楚了。可以做到心中有数。
-yming
请填写推广理由:
分享
只看
楼主