您现在所在的是:

PLC论坛

回帖:11个,阅读:1028 [上一页] [1] [2] [下一页]
* 帖子主题:

编程疑问求助

491
15850596591
文章数:11
年度积分:50
历史总积分:491
注册时间:2017/6/14
发站内信
发表于:2017/8/24 10:24:34
#0楼
小白在编程学习中发现个疑惑请教大侠(我学的西门子S7-200):PLC的一个扫描周期应该很短,假如我在程序中有一个脉宽调制程序,周期为5秒(输出高电平2秒,低电平3秒),那在程序执行中是执行到脉宽调制程序后等待5秒高低电平执行完毕后再进行下一个扫描周期还是PLC以固定扫描周期扫描,不管脉宽调制程序是否执行完?
8302
fujifa
文章数:2937
年度积分:235
历史总积分:8302
注册时间:2014/2/10
发站内信
2017论坛贡献奖
2016论坛贡献奖
2015论坛贡献奖
发表于:2017/8/24 10:28:19
#1楼
执行时大概状况是这样的:扫描到脉冲调制的部分,看看时间到了没有,没有的话跳过,等下一个扫描周期再来问,因此,时间误差会等同于一个扫描周期时间。
491
15850596591
文章数:11
年度积分:50
历史总积分:491
注册时间:2017/6/14
发站内信
发表于:2017/8/24 10:38:29
#2楼
回复 #1楼 fujifa
意思就是程序确定了,整个程序的扫描周期就确定了,PLC就以这个确定的扫描周期进行扫描。遇有需要较长时间执行的程序段,则不是每次都扫描执行该程序段,而是要等程序段执行完一次后在下一个扫描周期再扫描执行一次,我理解得对不对?
8302
fujifa
文章数:2937
年度积分:235
历史总积分:8302
注册时间:2014/2/10
发站内信
2017论坛贡献奖
2016论坛贡献奖
2015论坛贡献奖
发表于:2017/8/24 10:44:13
#3楼
以下是引用158505965912017/8/24 10:38:29的发言:
意思就是程序确定了,整个程序的扫描周期就确定了,PLC就以这个确定的扫描周期进行扫描。遇有需要较长时间执行的程序段,则不是每次都扫描执行该程序段,而是要等程序段执行完一次后在下一个扫描周期再扫描执行一次,我理解得对不对?

程序确定了,扫描周期并非确定,因为扫描周期除了程序扫描部分,还有通讯扫描部分,系统自检部分,所以,非固定周期扫描实际是一个介于最大扫描周期与最小扫描周期之间的那个时间段。

如果需要使用较长时间执行的程序段,例如定时器,那么程序采用异步扫描方式,也就是说,扫描定时器触点时才会去看定时器当前定时是否到,如果没到,那么继续执行下面的扫描,在下一个扫描周期扫描定时器触点的时候再次看定时器时间是否到。

如果你想在一个扫描周期内执行较长的程序段,例如循环指令FOR-NEXT,那么作为程序员的你需要考虑的是程序时间是否会执行过长从而导致看门狗故障,当发生看门狗(WatchDog)故障时,你的PLC会进入停机状态,因此,如果要执行较长的程序段的时候,你需要考虑是否需要不断的复位看门狗,以防止扫描周期过长从而引发看门狗故障,避免进入停机状态。

HAVE FUN!
38053
知道一点
文章数:22549
年度积分:2472
历史总积分:38053
注册时间:2004/6/12
发站内信
工控人谈电商
2013国庆活动
2011国庆活动
发表于:2017/8/24 10:56:43
#4楼
不是这样理解的
扫描周期的长短与程序所用指令有关,与系统结构有关,但都有一个允许的时间,超过就要报警,超过一定量就要停机。
在每个扫描周期都有执行相应的程序指令,可以查看指令手册,条件满足执行要多少时间,不满足要多少时间。
具体到你说的脉宽调制,不用管扫描周期,它不会破坏输出的on-off
可能1楼的“扫描到脉冲调制的部分,看看时间到了没有,没有的话跳过”误导了你,只要扫描到该指令,它就逃不了。
491
15850596591
文章数:11
年度积分:50
历史总积分:491
注册时间:2017/6/14
发站内信
发表于:2017/8/24 11:02:35
#5楼
回复 #3楼 fujifa
谢谢,明白了
491
15850596591
文章数:11
年度积分:50
历史总积分:491
注册时间:2017/6/14
发站内信
发表于:2017/8/24 11:03:12
#6楼
回复 #4楼 知道一点
非常感谢你的解答
8302
fujifa
文章数:2937
年度积分:235
历史总积分:8302
注册时间:2014/2/10
发站内信
2017论坛贡献奖
2016论坛贡献奖
2015论坛贡献奖
发表于:2017/8/24 11:14:21
#7楼
以下是引用知道一点2017/8/24 10:56:43的发言:
不是这样理解的
扫描周期的长短与程序所用指令有关,与系统结构有关,但都有一个允许的时间,超过就要报警,超过一定量就要停机。
在每个扫描周期都有执行相应的程序指令,可以查看指令手册,条件满足执行要多少时间,不满足要多少时间。
具体到你说的脉宽调制,不用管扫描周期,它不会破坏输出的on-off
可能1楼的“扫描到脉冲调制的部分,看看时间到了没有,没有的话跳过”误导了你,只要扫描到该指令,它就逃不了。

有时间的话去秒表卡卡定时器的时间到底准不准,就拿你拿手的欧姆龙来卡好了。
38053
知道一点
文章数:22549
年度积分:2472
历史总积分:38053
注册时间:2004/6/12
发站内信
工控人谈电商
2013国庆活动
2011国庆活动
发表于:2017/8/24 12:51:57
#8楼
以下是引用fujifa2017/8/24 11:14:21的发言:
以下是引用知道一点2017/8/24 10:56:43的发言:
不是这样理解的
扫描周期的长短与程序所用指令有关,与系统结构有关,但都有一个允许的时间,超过就要报警,超过一定量就要停机。
在每个扫描周期都有执行相应的程序指令,可以查看指令手册,条件满足执行要多少时间,不满足要多少时间。
具体到你说的脉宽调制,不用管扫描周期,它不会破坏输出的on-off
可能1楼的“扫描到脉冲调制的部分,看看时间到了没有,没有的话跳过”误导了你,只要扫描到该指令,它就逃不了。

有时间的话去秒表卡卡定时器的时间到底准不准,就拿你拿手的欧姆龙来卡好了。
秒表卡?呵呵  你牛x
8302
fujifa
文章数:2937
年度积分:235
历史总积分:8302
注册时间:2014/2/10
发站内信
2017论坛贡献奖
2016论坛贡献奖
2015论坛贡献奖
发表于:2017/8/24 13:03:26
#9楼
以下是引用知道一点2017/8/24 12:51:57的发言:
以下是引用fujifa2017/8/24 11:14:21的发言:
以下是引用知道一点2017/8/24 10:56:43的发言:
不是这样理解的
扫描周期的长短与程序所用指令有关,与系统结构有关,但都有一个允许的时间,超过就要报警,超过一定量就要停机。
在每个扫描周期都有执行相应的程序指令,可以查看指令手册,条件满足执行要多少时间,不满足要多少时间。
具体到你说的脉宽调制,不用管扫描周期,它不会破坏输出的on-off
可能1楼的“扫描到脉冲调制的部分,看看时间到了没有,没有的话跳过”误导了你,只要扫描到该指令,它就逃不了。

有时间的话去秒表卡卡定时器的时间到底准不准,就拿你拿手的欧姆龙来卡好了。
秒表卡?呵呵  你牛x


附件 snap1.jpg

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 非法和不良信息举报

工控网客服热线:0755-86369299
版权所有 工控网 Copyright©2024 Gkong.com, All Rights Reserved

62.4004