实际项目中我们可能需要对某些过程进行计数,比如:气缸往复运动一定次数后提醒用户进行保养、检测到一定数量的饮料瓶后向机械手发出装箱指令,等等。这些类似的情况,需要用到计数器功能。
我们可以使用Step7自带的计数器指令(CTU/CTD等),也可以编写自己的计数器函数。自己编写的好处在于有利于实现程序的标准化,并且可以根据需要增加功能。本文我就给大家介绍一个用SCL语言编写的减计数器。
创建一个FC,命名为:FC_CounterBackward。
设置接口参数如下:
说明:
Gate用来使能计数器功能;
CountBack为减计数信号,只在上升沿有效。但实参不需要上升沿,因为程序内部会计算;
Set信号用来设置给定值,计数开始前需要关闭;
HelpFlagPositveEdge变量用来检测上升沿,需要使用静态变量或者全局变量;
CounterReached表示计数器已经触发,此时实际计数值<=0;
代码如下:
主程序中调用示例如下图:
好了,关于SCL编写减计数器代码就先介绍到这里。
- 下一篇:西门子二代精简屏安装尺寸和工作环境
- 上一篇:西门子二代精简屏附件信息