标王 热搜:
 
当前位置: 首页 » 资料 » PLC技术 » 正文

STL编程语言的边沿检测

放大字体 缩小字体 发布时间:2016-09-12 14:28 浏览次数:50

    FP  Bit(位)

    正跳变(上升)沿。

    FN  Bit(位)

    负跳变(下降)沿。

    边沿检测是对一个信号状态、信号边沿中的变化进行检测。当信号从“0”到“1”变化时,边沿是正跳变(上升)沿,与此相反的称为负跳变(下降)沿。

    在继电器逻辑图中,边沿检测等效为脉冲触点元件。如果这个脉冲触点元件在继电器接通时发出一个脉冲,就相当于上升沿检测;在断开时脉冲触点元件产生一个脉冲,相当于下降沿检测。

    在边沿检测中指定的位称为“边沿存储位”(它不一定是存储位),它必须是在下一个程序扫描周期中仍有效的位,否则不能在程序中再使用。适合作为这种位的有存储位、全局数据块中的数据位和在功能块中的静态局部数据位等。

    边沿存储位存储“旧的”RLO,即CPU上次处理边沿检测时用的。在每次边沿检测中,CPU用边沿存储位的信号状态与当前的RLO进行比较,如果它们具有不同的信号状态,就存在一个边沿。在这种情况下,通过把当前的RLO赋给边沿存储位,CPU更新边沿存储位的信号状态,并且不管是正跳变边沿还是负跳变边沿(取决于跟在边沿检测后面的指令)都将RLO置“1”。如果CPU没有检测到边沿,它把RLO置成“0”。

    在边沿检测后的信号状态“1”意味着“边沿已检测过”。信号状态“1”仅短暂地存在,通常只有一个程序周期的长度。因为CPU在下一个周期不检测边沿(如果边沿检测的“RLO输入”没有改变)。边沿检测后,CPU把RLO置成“0”。

    可以在边沿检测后直接处理RLO,例如用一个置位操作,或者把它存储到某一位中(“脉冲存储位”)。当来自边沿检测的RLO在程序的另一个位置处理时,使用脉冲存储位,对于已检测的边沿,中间缓冲器是有效的。适合作为脉冲存储位的有:存储位、全局数据块中的数据位以及暂态和静态局部数据位。

    在边沿检测后直接用检测语句可以进一步处理RLO。

    当CPU通电时记录边沿检测的响应,如果检测到了一个边沿先于边沿检测的RLO必须保持与其边沿存储位的信号状态一致。在某些情况下,边沿存储位在启动时一定是复位状态(取决于所期望的响应和所使用的存储位)。

    下面的例子展示了边沿检测是如何工作的,在已简化的形式里,输入表示先于边沿检测的RLO,存储位(“脉冲存储位”)为跟随在边沿检测后的RLO。当然,边沿检测也可以在二进制逻辑运算之前,或者在二进制逻辑运算之后。



STL编程语言的边沿检测
网址: http://www.kuqiw.cn/ziliao/show/129/
 
 
[ 资料搜索 ]  [ 加入收藏 ]  [ 告诉好友 ]  [ 打印本文 ]  [ 关闭窗口 ]

 
 

 
 
最新资讯
最新产品立即发布»
最新企业立即注册»
企业新闻
 
网站首页 | 关于我们 | 联系方式 | 使用协议 | 版权隐私 | 网站地图 | 排名推广 | 广告服务 | 积分换礼 | RSS订阅 | 浙ICP备110196220号