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将按不同的频率变化
- Step7中有关时间和定时器的使用和例程2
- Step7中有关时间和定时器的使用和例程1
- 时间和日期例程
- EFM32的定时器使用例程
- DB2中有关日期和时间的函数,及应用
- DB2中有关日期和时间的函数及应用
- DB2中有关日期和时间的函数,及应用
- DB2中有关日期和时间的函数,及应用
- DB2中有关日期和时间的函数,及应用
- DB2中有关日期和时间的函数
- DB2中有关日期和时间的函数,及应用
- DB2中有关日期和时间的函数,及应用
- C语言中与时间有关的函数和操作
- DB2中有关日期和时间的函数,及应用
- DB2中有关日期和时间的函数,及应用
- DB2中有关日期和时间的函数,及应用
- java中Timer和timertask使用例程
- UNIX 时间和日期例程
- Java笔记集合
- Java F-bounded
- Java核心技术第12章(3)
- Matlab回显语句
- rpm包安装gcc报错
- Step7中有关时间和定时器的使用和例程2
- linux的ulimit限制详解
- Java动态代理
- sqlserver2008完全卸载 转载自百度经验
- c++ new和delete产生的debug error
- Android 项目中执行java的main方法
- MATLAB的输入与输出语句
- ZOJ 3233 Lucky Number(容斥原理)
- Task not serializable:java.io.NotSerializableExceptionon