北岛夜话
原创工业智能控制领域(PLC、单片机/嵌入式、机器人、通信、机器视觉)的技术及经验分享。
文章545 浏览8635508

西门子SCL编程实例-创建基于循环中断的定时器

本例程向大家介绍如何使用循环中断组织块创建一个定时器函数(FC)。与系统自带的定时器相比,该定时器函数使用灵活方便,可根据需要反复调用。

cover.png

本例程基于TIA博途V14创建,包括如下步骤:

1、创建一个自定义的数据类型:myOBTimer,包括三个元素:

  • settingTime,Int,定时器的设定时间;

  • actualTime,Int,定时器的实际运行时间;

  • timeIsUp,Bool,计时时间到;

    如下图所示:

dataType_myOBTimer.png

2、创建全局数据块myOBTimeCounter,在其中添加三个元素:

  • OBTimeCounter,Byte,用于在循环中断组织块的计时值;

  • myTimeCounter,Byte,用于定时器函数FC_OB_Timer的计时值;

  • myTime1,myOBTimer(数据类型),定时器1的相关参数;

    如下图所示:

myOBTimerCounterDB.png

3、添加循环中断组织块OB30,将其中断时间设置为100ms。在其中添加如下代码:

OB30.png

4、创建功能函数FC_OB_Timer,声明变量如下图所示:

FC_Variable_Declear.png

编写代码如下:

FC_code.png

5、在OB1中调用FC_OB_Timer,代码如下:

OB1.png

需要说明的是,该定时器的时基为100ms,所以设定时间要是原时间的10倍。比如,要定时3秒,定时器的设定时间settingTime要赋值30。

好了,关于基于循环中断组织块来创建定时器就先介绍到这里。我最近开通了微信视频号,以视频的方式分享工控小知识。具有视频号内测权限的小伙伴欢迎扫描下方的二维码观看:

founderchip.png

西门子SCL编程实例-创建基于循环中断的定时器

来源:本站|   大小:453KB|   下载次数:1675次

取消

感谢您的支持,欢迎常来看看!

扫码支持
一点动力,多少随意

打开支付宝扫一扫,即可进行扫码打赏哦

发表评论