图5-23在位编辑块示例选中一个YGD块,在右键菜单中选择,弹出对话框,如图5-24所示,YGD块已自动处于被选中状态。图5-24对话框图5-24对话框图5-25工具栏图5-25工具栏因为此时的块就像被分解了一样,可以对每个图元单独进行编辑。图5-26在位编辑YGD块的操作步骤原块;向上移动水平线;镜像水平线单击工具栏上的按钮,在系统询问是否保存修改时,单击按钮,则图上的所有YGD块都会更新。......
2023-06-21
组织块(OB)表示操作系统和用户程序之间的接口,它由操作系统调用,控制循环中断驱动的程序执行、PLC启动特性和错误处理。用户可以在STEP 7中对组织块进行编程来确定CPU特性。
1.常见的组织块
常见的组织块主要类型如图4-1所示。
图4-1 常见的组织块
(1)启动
如图4-2所示,当CPU上电后或操作模式改变为运行状态(通过CPU上的模式选择开关或利用PG),在循环程序OB1执行之前,要执行启动程序。OB 100(暖启动)、OB101(热启动)和OB 102(冷启动)就是用于启动程序的组织块,用户在这些块里可以预置通信连接。
图4-2 启动组织块工作原理
启动组织块的设置可以在硬件组态中对CPU属性进行操作设定,图4-3所示为对CPU414-2 DP的启动设置为热启动OB101。
图4-3 CPU中对启动组织块的设置
CPU 318-2和CPU 417-4 CPU还具有冷启动型的启动方式,针对电源故障可以定义这种附加的启动方式。它是通过硬件组态时的CPU参数来设置。冷启动时,所有过程映像和定时器、计数器及标志存储器被清除,数据块保持其预置值。冷启动后,首先执行启动组织块OB 102,然后从OB1的第一条指令开始执行。
(2)循环的程序执行
需要连续执行的程序存在组织块OB1里。OB1中的用户程序执行完毕后,将开始一个新的循环:刷新映像区然后从OB1的第一条语句开始执行。循环扫描时间和系统响应时间就是由这些操作来决定的。
系统响应时间包括CPU操作系统总的执行时间和执行所有用户程序的时间。系统响应时间,也就是当输入信号变化后到输出动作的时间,等于两个扫描周期。
(3)定期的程序执行
定期的程序执行可以根据设定的间隔中断循环的程序执行。通过循环中断,组织块OB30到OB 38可以每隔一段预定的时间(例如图4-4所示的OB35可以设置为100ms)执行一次,其工作原理如图4-5所示。例如,在这些块中可以调用循环采样控制程序。
图4-4 周期性中断
图4-5 周期性中断工作示意
通过日期时间中断,一个OB可以在特定的时间执行(即时间中断OB10-OB17),例如从2010年3月1日开始每天10:00保存数据,其设置如图4-6所示。
为了使用日时钟中断(OB10),用户必须执行下列任务:通过定义它执行的起始时刻(日期和/或时间)和间隔时间,对OB10进行配置,这可以通过S7组态工具配置CPU的日时钟的中断参数或者在程序中调用SFC28(SET_TINT)来实现;激活OB10,这可以通过S7组态工具在CPU的日时钟中断参数块中选择激活项,或者在程序中调用SFC30(ACT_TINT)来实现;在OB10中编辑你想执行的日时钟中断程序,并将OB块装载到CPU中作为用户程序的一部分。
图4-6 时刻中断设置
(4)事件驱动的程序执行
事件驱动的中断设置如图4-7所示。硬件中断OB40-OB47可以用于快速响应的过程事件,当事件发生后,马上打断循环程序并执行中断程序;时间延迟中断(或延时中断)OB20-OB23可以在一个过程事件出现后延时一段时间响应;通过错误OB可以在出现错误时(如后备电池故障)决定系统如何响应。
图4-7 事件驱动的中断设置
2.组织块优先级
组织块确定单个程序段执行的顺序,即启动事件。启动事件触发OB调用称为中断,一个OB调用可以中断另一个OB的执行,哪个OB允许中断另一个OB取决于其优先级,高优先级的OB可以中断低优先级的OB,背景OB的优先级最低。表4-2显示了STEP 7中的中断类型以及分配给这些中断的组织块的优先级。
表4-2 中断类型以及分配给这些中断的组织块的优先级
(续)
可以通过STEP 7给中断分配参数,如通过参数分配,可以取消选定参数块中的中断OB或优先级:日历中断、延时中断、循环中断和硬件中断,如图4-8所示。
图4-8 组织块优先级
必须说明的是:S7-300 CPU上的组织块优先级固定,但是对于S7-400 CPU(和CPU318),可以通过STEP 7修改OB10-OB47组织块的优先级或者可以将相同优先级分配给多个OB。具有相同优先级的OB按照其启动事件发生的先后次序进行处理。
图5-23在位编辑块示例选中一个YGD块,在右键菜单中选择,弹出对话框,如图5-24所示,YGD块已自动处于被选中状态。图5-24对话框图5-24对话框图5-25工具栏图5-25工具栏因为此时的块就像被分解了一样,可以对每个图元单独进行编辑。图5-26在位编辑YGD块的操作步骤原块;向上移动水平线;镜像水平线单击工具栏上的按钮,在系统询问是否保存修改时,单击按钮,则图上的所有YGD块都会更新。......
2023-06-21
可以使用硬件中断OB来响应特定事件。最多可使用50个硬件中断OB,它们在用户程序中彼此独立。触发硬件中断后,操作系统将识别输入通道或高速计数器并确定所分配的硬件中断OB。所分配的硬件中断OB完成执行后,即确认了该硬件中断。再勾选通道1的“启用下降沿检测”,选择硬件中断为新建的硬件中断组织块OB201。......
2023-06-15
循环中断组织块用于按一定时间间隔循环执行中断程序,例如周期性地定时执行闭环控制系统的PID运算程序等。对于循环中断OB201,已设置时间基数为20 ms,对于循环中断OB202,已设置时间基数为100 ms。使用循环中断组织块,每隔1 s MW20的值加1。在项目视图项目树中,双击PLC设备程序块下的“添加新块”项,选择添加“Cyclic interrupt”类型的OB块,则新建编号为200的循环中断组织块。图6-46 设置循环中断组织块属性图6-47 编写程序......
2023-06-15
延时中断OB在经过操作系统中一段可组态的延迟时间后启动。可以使用中断指令CAN_DINT阻止执行尚未启动的延时中断。暖启动将清除延时中断OB的所有启动事件。可以使用中断指令DIS_AIRT和EN_AIRT来禁用和重新启用延时中断。要求:在I0.0的上升沿用SRT_DINT启动延时中断OB202,10s后OB202被调用,在OB202中将Q1.0置位,并立即输出。示例程序如图6-50所示,图6-50a为OB1中启动延时中断的程序,图6-50b为OB202中置位Q1.0的程序。......
2023-06-15
除语句表外,S7-300和S7-400的编程语言标准软件包还包括梯形图和功能块图。这种编程语言针对熟悉接触器控制的技术人员。图2-30所示为STEP 7编程语言的三种类型。在实际工程中,STEP 7还会用到以下编程语言,它们是作为选件包提供的。3)S7 HiGraph编程语言。4)S7 CFC编程语言。S7 Graph对顺序控制过程的编程非常方便,HiGraph适合于异步非顺序过程的编程,CFC适合于连续过程控制的编程语言。......
2023-06-18
下面开始对PLC进行编程。单击图4-6左下角的“Portal视图”,返回到Portal视图,单击左侧的“PLC编程”项,可以看到选中“显示所有对象”时,右侧显示了当前所选择PLC中的所有块,双击“main”块,打开程序块编辑界面,如图4-7所示。也可以在项目树下直接双击打开PLC设备下程序块里的“main”程序块。......
2023-06-15
实验二十九组织块培养技术1.实验目的学会组织块的培养技术,观察组织块的组织学生长行为。组织块法特别适合于组织量少的原代培养,但组织块培养时细胞生长较慢,耗时较长。注意有无污染,已贴壁的组织块边缘有无细胞“长”出。组织块的取材要尽可能快,以免组织块因取材时间过长引起细胞状态不好,将会导致后期培养。......
2023-12-07
在场的人都感到这是个棘手的问题。眼前一道白光,只见孙悟空手提金箍棒,腰围虎皮裙,站在大家面前。孙悟空赶忙施礼,说:“好说,好说,各位数字国王在此,老孙有一事不解,前来求教。”孙悟空不好意思地说,“有一个孩童口袋里装有10块糖,让我用1分钟的时间,把糖一块一块地取出来。我想这个容易,我用0.1分钟取1块,1分钟就能全取出来了。”孙悟空高兴得连蹦带跳,“看来,我要好好学习数学,不然,连个孩童都不如了。”......
2023-11-06
相关推荐