指令位置:

关于上升沿/下降沿指令包含有P/N触点、P/N线圈、P/N触发器
一、P触点及N触点

在指令中bit为bool型变量,要检测其跳变沿的输入位,M_bit位BOOL型变量,保存输入的前一个状态的存储器位。
功能是:P触点:检测bit的信号由0变1的正跳变时,该触点接通一个扫描周期,注意是只接通一个扫描周期。
N触点:检测bit的信号由1变0的负跳变时,该触点接通一个扫描周期,注意是只接通一个扫描周期。
下面看下指令的使用:

在上图中,能流在经过P触点,若I0.3由0变1,则能流使M0.1为1,但是只是一个扫描周期(在监控中是看不到了,一般设置监控时间为150ms)


在上图中,能流在经过P触点,若I0.3由1变0,则能流使M0.2为1,但是只是一个扫描周期(在监控中是看不到了,一般设置扫描周期为150ms)
方便大家理解这个指令,我们利用置位指令来演示下:

当I0.3从0变1,则M0.1置位,当I0.4从1变0,M0.2被置位。
所以要注意的就是P和N触点指令都是在一个扫描周期内为有效。
2、P、N线圈

在指令中bit为BOOL型变量,要检测其跳变沿的输出位,M_bit位BOOL型变量,保存输入的前一个状态的存储器位。
功能是:P线圈:检测bit前面的逻辑状态由0变1的正跳变时,该触点接通一个扫描周期,注意是只接通一个扫描周期。
N线圈:检测bit前面的逻辑状态由1变0的负跳变时,该触点接通一个扫描周期,注意是只接通一个扫描周期。

当I0.3由0变1时,则M0.1被置位为1一个扫描周期,当检测到I0.4由1变0,则M0.2被置位为1一个周期。
方便观察,我们利用INC来演示

这里要注意的也是:P/N线圈都是输出一个扫描周期,就是输出一个周期的脉冲信号。
3、P、N触发器

M_bit:BOOL型变量,保存输入的前一个状态的存储器位。
P触发器指令检测到CLK输入的逻辑状态由0变1的正跳变时,Q输出位1一个扫描周期。
N触发器指令检测到CLK输入的逻辑状态由1变0的负跳变时,Q输出位1一个扫描周期。
上升沿/下降沿指令要注意的问题就是,无论是触点还是线圈都是一个扫描周期内有效。
下面看一个位逻辑指令综合应用的例子:
假设按瞬动按钮I0.5,Q0.1为1,再按I0.5,Q0.1为0。
简单分析下:首先当第一次按钮I0.5则置位Q0.1,再按一次I0.5就复位Q0.1,可以用到置位指令和上升沿指令。那好我的编程如下:

当按一下瞬动按钮,则Q0.1输出。

当再按一次树洞按钮,则Q0.1为0.
