xiaofeiai
级别: 探索解密
精华主题: 0
发帖数量: 50 个
工控威望: 193 点
下载积分: 734 分
在线时间: 43(小时)
注册时间: 2011-01-10
最后登录: 2024-10-09
查看xiaofeiai的 主题 / 回贴
楼主  发表于: 2011-05-18 12:07
一般认为输入刷新+用户程序执行+输出刷新的时间就是扫描周期。但有个问题:

比如一段程序,执行到中间一个定时器,这个定时器定时10S,那PLC执行完这段程序不超过10S了吗,扫描周期大于10S?如果不是怎么理解扫描周期呢?

多谢!这个是新手很难真正理解的一个问题,希望大家给解答下,谢谢!

这个扫描周期是非常难以理解的一个东东,特别是用户程序执行这个时间怎么理解成为理解扫描周期有关键,根据查到的资料和大家的回答,是否可以这样理解?

用户程序执行
的时间,和程序的长短以及每条指令的复杂程序有关系,和程序的执行时间无关,可以看作是解释每条指令时间的总和。
不知这样理解正确不?刚接触时一直认为扫描周期是程序所有动作完成的时间。
[ 此帖被xiaofeiai在2011-05-20 16:19重新编辑 ]
qyg_2011
级别: *
精华主题: * 篇
发帖数量: * 个
工控威望: * 点
下载积分: * 分
在线时间: (小时)
注册时间: *
最后登录: *
查看qyg_2011的 主题 / 回贴
1楼  发表于: 2012-04-04 18:29
我看到很多人对这个不太理解,而且解答的也不是很清楚,今天我有空来完整解释一下这个问题,以下面语句为例:

|-----X0-------T1[0.1ms](K1000)--------Y1----|

1、PLC扫描周期,是指PLC从上电自检、初始化完成到遍历一遍所有程序最后返回所花的时间。这个指标反映了PLC处理程序的速度能力;
2、定时器T只是PLC可编程的软元件之一,它的累计单位间隔时间由独立的时钟电路控制,一旦累计值与设置值相等,T导通;
3、扫描时间=输入刷新+用户程序执行+输出刷新中的“用户程序执行时间”怎么理解是关键。其实“执行”只是PLC扫描时“看了”它一下,程序并不是在一个扫描周期就必须执行完毕的。
4、扫描过程中遇到定时器时,它只是检查定时器T设定导通的条件到了没有。若没有,它就继续往下扫描后面的程序,并不会停下来等到T满足条件再往下走。这时扫描程序对定时器T的处理只是将它的当前状态(未达到导通条件)记入刷新元件表,然后接着往下扫。这样循环扫描N个周期后,当这个T到达设定值了,执行T后面的动作。
5、以上语句为例:第一次扫描程序执行到这个语句了,假设此时T的当前值为0.1ms,没有到达导通条件,则扫描程序接着往下走。Y1不做任何动作。
6、当N个扫描周期后,T的值到达0.1S,这时扫描程序又执行到该语句了,一看T导通,则直接将Y1送入输出寄存器,遇到输出刷新时,Y1导通。

不知道讲清楚没有,反正只能描述这么多了。