2.11 子程序和中断程序指令[共11页]

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

PLC 职业技能培训及视频精讲——西门子S7-200系列

266

图2.10.23 TBL_FIND 查表指令应用例(续)

2.11 子程序和中断程序指令

子程序和中断程序指令包括如下7种:

SBR_0(SBR0);

-(RET);

ATCH ;

DTCH ;

-(ENI);

-(DISI);

-(RETI)。

在S7-200 PLC 中,有4种程序:OS 系统程序、OB1主程序、SBR 子程序和INT 中断程序。OB1主程序、SBR 子程序和INT 中断程序也称为用户程序。

当CPU 工作在STOP 状态,只运行OS 系统程序。当CPU 工作在RUN 状态时,既运行OS 系统程序,也运行OB1主程序;当满足调用SBR 程序状态时,会暂停现在执行的用户程序进入执行SBR 子程序,执行完SBR 子程序后,再返回原来的地方继续执行原来的程序;当声明允许开中断,有中断源产生,会暂停执行现在的用户程序(包含OB1主程序、SBR 子程序和级别较低的中断程序),进入声明与该中断源有联系的INT 中断程序,中断程序执行完毕自动返回到原来的地方继续执行原来的程序。

OB1是自动循环执行的程序,没有OB1主程序的程序是不可能完成用户程序任务的。 中断连接和中断分离指令的样式如图2.11.1和图2.11.2所示。

2章 PLC

快速提高

267

图2.11.1 中断连接指令

图2.11.2 中断分离指令

1.子程序

可以从OB1主程序、另一个子程序或中断程序调用子程序,但不能从子程序本身调用子程序。

S7-200 CPU 中总共有64个子程序(0~63)【CPU 226XM 有128个子程序(0~127)】。在主程序中可以嵌套子程序(在子程序中调用另一个子程序),最大嵌套深度为8,但在中断程序中不能嵌套子程序。

在图2.11.3~图2.11.5的程序中,当I0.0和I0.1都没有上升沿时,执行用户的程序流程是:主程序网络1

→主程序网络2

→主程序网络3→主程序网络4→主程序网络1。

图2.11.3 子程序0 图2.11.4 子程序1 当I0.0接通上升沿时会调用子程序0,在I0.0接通上升沿扫描周期执行用户的程序流程是:主程序网络1→子程序0网络1→子程序0网络2→主程序网络2→主程序网络3→主程序网络4。

当I0.1接通上升沿时会调用子程序1,在I0.1接通上升沿扫描周期执行用户的程序流程是:主程序网络1→主程序网络2→主程序网络3→子程序1网络1→子程序1网络2→主程

相关文档
最新文档