Step7中有关时间和定时器的使用和例程2

来源:互联网 发布:ubuntu luvit 编辑:程序博客网 时间:2024/05/16 15:00

接上篇《Step7中有关时间和定时器的使用和例程1》

4、循环中断(OB35)、延时中断(OB20)、时间中断(OB10)

4.1 循环中断(OB35)

具体步骤如下:

1)创建一个项目并插入一个300站

2)打开Hardware

3)配制300站并双击300CPU打开Properties窗口

4)选择Cycle interrupts

5)将OB35对应的时间修改为需要的时间(例如200ms)并点击OK确认

6)编译保存

7)通过Blocks ->Insert New Object ->Organization Block插入OB35

8)双击打开OB35进行编程即可。

这样OB35每隔200ms执行一次,MW120值加1。

4.2 延时中断(OB20)

1)通过Blocks ->Insert New Object ->Organization Block插入OB20,双击打开OB20并进行编程。


2)打开OB1,调用SFC32 “SRT_DINT”(启动延时中断)


通过SFC 32 "SRT_DINT" (启动延时中断),可以在延迟时间过去(参数DTIME)后立即启动调用延时中断组织块的延时中断。使用SIGN参数,可以输入用于标识延时中断开始的标识符。执行指定的OB时,DTIME和SIGN值将再次显示在该OB的启动事件信息中。

如上图所示,每当M0.0由0变为1时,经过5S后OB20被执行,MW110执行了加1操作。监视变量表如下图所示:


4.3 时间日期中断(OB10)

OB10的执行可由3种办法来设定:

1)方法一:如下图所示在HW config窗口下双击300的CPU打开Properties,设定开始执行的时间和执行频率,然后选中Active下的复选框,点击OK。


通过Blocks ->Insert New Object ->Organization Block插入OB10,双击打开OB10并进行编程。


当程序下载到PLC中后OB10将按设定执行,通过监视变量表可观察到OB10的执行情况。

2)方法二:在HW config窗口下双击CPU300打开Properties,设定开始执行的时间和执行频率,不选中Active下的复选框,点击OK。

在程序中调用SFC30 "ACT_TINT" (激活时间中断),可以激活一个时间中断组织块。

编程OB10,参考前图,编译下载即可。

注意:SFC30只需执行一次,即CPU停机后再启动不需要再次调用SFC30。

3)方法三:在HW config中不作配置,调用SFC28和SFC30,通过SFC 28 "SET_TINT" (设置时间中断),可以设置时间中断组织块的启动日期和时间。将忽略指定的启动时间的秒和毫秒值,并将其设置为0。


在DB1中定义一个DATA_AND_TIME的变量

初始化数据块,将初值作为设定值


调用SFC28和SFC30


当M0.0由0变为1时SFC28被调用,M0.2由0变为1时SFC30被调用,OB10将按设定方式执行。

同样SFC28也只需执行一次即可。

5、时钟寄存器(Clock Memory)

西门子300和400的PLC提供一个Clock Memory的字节,每一位以不同的频率执行0到1的变化,打开HW config界面,双击CPU打开Properties窗口选择Cycle/Clock Memory选项,选中如下图所示的Clock Memory的复选框,在Memory byte后对话框中输入所需要的Memory byte号,如输入100,则MB100被设定为Memory byte。


M100.0-M100.7将按不同的频率变化


0 0
原创粉丝点击