1. 主程序(OB1)
CPU的操作系统循环执行OB1。当操作系统完成启动后,将启动执行OB1。在OB1中可以调用函数(FC)和函数块(FB)。
执行OB1后,操作系统发送全局数据。重新启动OB1之前,操作系统将过程映像输出表写入输出模块中,更新过程映像输入表以及接受CPU的任何全局数据。
2.循环中断组织块及其应用
所谓循环中断就是经过一段固定的时间间隔中断用户程序,循环中断很常用。
(1)循环中断指令
循环中断组织块是很常用的,TIA博途软件中有9个固定循环中断组织块(OB30-OB38),另有11个未指定。激活循环中断(EN_IRT)和禁用循环中断(DIS_IRT)指令。
参数MODE指定禁用哪些中断和异步错误,含义比较复杂,MODE=0表示激活所有的中断和异步错误,MODE=1表示启用属于指定中断类别的新发生事件,MODE=2表示启用指定中断的所有新发生事件,可使用OB编号来指定中断。具体可参考相关手册或者TIA博途软件的帮助。
(2)循环中断组织块的应用
【例】每隔100ms时间,CPU1511C-IPN采集一次通道0上的模拟量数据【解】很显然要使用循环组织块,解法如下:
在TIA博途软件项目视图的项目树中,双击“添加新块”,弹出如图1所示的界面.选中“组织块”和“Cyclic interrupt”,循环时间定为“100000μs”,单击“确定”按钮。这个步骤的含义是:设置组织块OB30的循环中断时间是100000us,再将组态完成的硬件下载到CPU中。
图1
打开OB30,在程序编辑器中,输入程序如图2所示,运行的结果是每100ms将通道0采集到模拟量转化成数字量送到MW20中。
图2
主程序在OB1中,如图3所示。有了主程序,就可以对 OB30 是否循环扫描中断进行控制了。
图3