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

98c61ec7e93cd071ac8e0bc814350ee8.png

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

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

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

  • settingTime,Int,定时器的设定时间;
  • actualTime,Int,定时器的实际运行时间;
  • timeIsUp,Bool,计时时间到;

如下图所示:

7ee7772a590a90ef03d271f19f1ad36f.png

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

  • OBTimeCounter,Byte,用于在循环中断组织块的计时值;
  • myTimeCounter,Byte,用于定时器函数FC_OB_Timer的计时值;
  • myTime1,myOBTimer(数据类型),定时器1的相关参数;

如下图所示:

a223240f994568dd3fbda4a8d4925a79.png

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

b3dd443f89e3fcfad587179eaa528b57.png

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

336863a21f6100c821bb704f2bc1936d.png

编写代码如下:

f710783179f4d9cdab29db7f0fcd97ae.png

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

dee7cb1d7c8ba9fa3253a2d881744958.png

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

好了,关于基于循环中断组织块来创建定时器就先介绍到这里。

我的新书《西门子S7-200 SMART PLC应用技术——编程、通信、装调、案例》出版了,欢迎点击下面的链接查看详细介绍。

西门子S7-200 SMART PLC应用技术——编程、通信、装调、案例​www.founderchip.com
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值