前言
这一篇来讲解一下s7-200PLC中的中断指令,在主程序运行时可以中断去处理其他事件。我们先要理解中断,必须知道西门子PLC程序的三大构体,主程序、子程序、中断程序,其中中断就属于程序控制中的一种,中断主要执行突发程序在返回主程序执行过程,那么如何理解中断并编程呢?
下面带大家来学习。软件使用STEP 7-MicroWIN SMART
一、中断
1.概念由设备或其他继续处理的事件引起的,它使系统暂时中断现在执行的程序,转到中断程序来处理这些事件,处理完毕后再返回到原程序继续执行。
s7-200PLC最多有34个中断源,即发出中断请求的来源,每个中断源都有一个编号,叫做中断事件号。
另外子程序也算是中断的一种,在主程序中,如果子程序条件满足就进入子程序进行执行,执行完后再回到主程序继续运行。
二、中断的分类
中断有三种:输入输出中断,时基中断,通信中断。
1.输入输出中断输入输出中断:1.外部输入中断:i0.0--i0.3上升沿或下降沿中断。
2.高速计数器中断:当前值=预设值,计数方向改变,计数器外部复位。
3.脉冲串输出中断:当给定的脉冲数输出完成后,执行中断(步进和伺服电机)。
2.时基中断时基中断:1.定时中断,支持一个周期性的活动,以1ms为计量单位(1-255ms)。一共两个:事 件10:定时中断0,周期值放入smb34,事件11:定时中断1,周期值放入smb35.
这是以固定的时间间隔作为采样周期,对模拟量,输入采样,pid,自由口通信用。
2.定时器中断:事件21,t32和事件22,t96使用,当前值=预设值,中断。
3.通信中断通信中断:这一个并不常用,主要是:接收信息完成中断,发送完成中断,接收字符中断,这里 就这里就不过多叙述了。
三、plc的中断指令详解梯形图实例
1、中断概述
(1)S7-200SMART PLC中的所有中断事件可分为三大类:I/O中断、通信中断、时基中断。
(2)当多个中断时间同时发出中断请求时,CPU对中断响应就有优先次序。
(3)中断优先级由高到低依次是:通信中断、I/O中断、时基中断。
(4)中断是随机发生且必须立即响应,引发中断信号称为中断源。
(5)每个中断源都分配一个编号来识别,这个编号我们称之为中断事件号。
2、中断指令
(1)ENI(开启中断)
开放中断指令,PLC在RUN模式下,是中断禁止状态,需由此开启才能运行。
(2)ATCH(中断连接指令)
用于把中断事件号(EVNT)与中断程序(INT)进行连接
(3)DISI(禁止所有中断)
禁止所有中断,当指令执行后,所有中断都被禁止,即发生中断事件,也不执行中断程序,但会产生中断排队事件,必须重新开允许中断后才可以再次使用中断功能。
(4)RETI(中断返回指令)
中断返回指令,编写在中断程序内,一旦触发后面程序不在执行。
(5)CEVENT EVNT(中断排队事件清除指令)
中断排队事件清除指令,主要用于禁止中断后等待排队的事件。
(6)DTCH(中断分离指令)
中断分离指令,用于把中断服务程序与中断事件分离
3、中断程序在使用过程中注意事项
(1)中断程序不是调用,而是配置中断事件号和中断服务程序。
(2)多个中断事件号可以连接同一个中断服务程序,一个中断事件只能连接一个中断服务程序
(3)中断程序只需与中断事件连接一次。
(4)中断服务程序执行到末尾会自动返回,也可以由逻辑控制中途返回(RETI)。
(5)S7-200 SMART中最多使用128个中断程序,新建工程中默认有一个中断程序,中断程序不能嵌套。(6)中断程序应短小而简单,执行时对其他处理不要延时过长,即越短越好。
4、编写中断程序(利用中断实现单按钮启停)
控制要求:按下I0.0输出线圈Q0.0运行,再次按下I0.0输出Q0.0断开。
第一步:(开中断,中断事件关联为0,I0.0上升沿触发中断服务程序INT0)
第二步:(在中断程序中编写控制程序)
利用Q0.0线圈的常闭点来接通Q0.0线圈本身
以上即为中断指令及程序的讲解。