技术论坛

 【Zane说编程】之深入理解上升沿指令

返回主题列表
作者 主题
Zane
至圣

经验值: 76176
发帖数: 19321
精华帖: 377
楼主    2020-09-06 22:40:15
主题:【Zane说编程】之深入理解上升沿指令 精华帖 

深入理解上升沿指令

起源:


【探讨】关于数字量信号上升沿检测问题


       上升沿指令真的是PLC编程中最寻常用到的指令了,然而这么基本的指令我们是否真的理解了吗?@小釉 网友的帖子,又勾起我很久以前对这个问题的思考,是时候彻底地做一个说明了。

        根据我们现在最常用的PLC类型,我选择了200SMART及S7-1200作为典型试验机型,实验方法如下:

        1,200SMART采用上升沿指令一组及等效非上升沿指令两组,等效非上升沿指令的中间变量一组采用断电保持设置,另一组指令的中间变量采用断电非保持设置

        2,S7-1200采用上升沿指令指令两组,一组上升沿指令的中间变量采用断电保持设置,另一组指令的中间变量采用断电非保持设置

        3,分四种不同启动条件下的情形考核上升沿是否会被触发

              1)下载程序后的首次运行

              2)   MRES复位后的首次运行

              3)未断电情况下,CPU从STOP 切换到 RUN状态

              4)断电后,CPU重新上电进入RUN状态


200SMART的程序

SAMPLE_0


SAMPLE_1


SAMPLE_2


OB1


V区DB块设置

 


 保持区设置


S7-1200程序及设置


实验结果:(√表示上升沿指令被触发)


这个试验结果说明了几个问题:

1,200SMART的上升沿指令其实也是全局变量,并且具有断电保持特性,只是没有实际变量地址由系统自动分配而已

2,200SMART的等效非上升沿指令的执行效果与S7-1200的上升沿指令的执行效果是一致的

3,上升沿指令的断电非保持设置,会导致下载程序后的首次运行,或CPU复位后的首次运行,或非断电STOP -> RUN,或断电后重新上电进入RUN,上述这些情况下上升沿指令或等效指令的触发。其在不同CPU的表现,也反映了不同类型CPU的数据保持特性,以及不同启动条件下的数据初始化特性。



Zane 注册自动化系统工程师 Always save before download
RENHQ
至圣

经验值: 68866
发帖数: 12208
精华帖: 59
2楼    2020-09-07 13:27:49
主题:回复:【Zane说编程】之深入理解上升沿指令

感谢Zane版的测试,对沿指令的执行确实又加深了理解

Q群:https://jq.qq.com/?k=9BDuEgf6
小釉
至圣

经验值: 10019
发帖数: 2779
精华帖: 26
4楼    2020-09-08 09:36:28
主题:回复:【Zane说编程】之深入理解上升沿指令

截图00.png


同样都是断电保持特性,标注的两个得到不同的结果。

是不是因为200 smart下载的时候,会初始化Signal_1_FP,而使用内置上升沿指令P系统分配的保持变量不初始化呢

不然解释不通。


小釉
至圣

经验值: 10019
发帖数: 2779
精华帖: 26
5楼    2020-09-08 09:52:44
主题:回复:【Zane说编程】之深入理解上升沿指令

通过手册的说明,看的话应该是必须是两个扫描周期。

如果使用等效指令的话,就不存在两个扫描周期的说法。等效指令和沿指令的区别其他情况应该是一样的。但是在第一次运行时的机制应该还不一样。

不知道理解的对不对@zane



Zane
至圣

经验值: 76176
发帖数: 19321
精华帖: 377
6楼    2020-09-08 22:57:24
主题:回复:【Zane说编程】之深入理解上升沿指令

应该是运行初始化的机制不同



等效指令与S7-1200的沿指令,我认为是一致的

Zane 注册自动化系统工程师 Always save before download
RENHQ
至圣

经验值: 68866
发帖数: 12208
精华帖: 59
7楼    2020-09-09 19:24:13
主题:回复:【Zane说编程】之深入理解上升沿指令

@小釉 

应不是两个扫描周期,主要是P下面那个状态保存变量的值,程序扫描到这里的时候,就认为那个变量的值就是上个扫描周期的状态,而不会判断你是PLC执行的第一个周期还是第几个周期

Q群:https://jq.qq.com/?k=9BDuEgf6
RENHQ
至圣

经验值: 68866
发帖数: 12208
精华帖: 59
8楼    2020-09-09 19:26:45
主题:回复:【Zane说编程】之深入理解上升沿指令

@小釉 手册里面的意思,应该是不能正确的判断是不是真正的上升沿,而不是指令不输出的意思

就和Zane版做的测试似的,I点一直有信号,在程序下载之后,沿指令会有输出,但是肯定不是实际的沿脉冲,只是PLC根据程序判断的输出

Q群:https://jq.qq.com/?k=9BDuEgf6
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。