【1862023】指令:INT(089)— 执行中断控制功能指令

欧姆龙PLC的特殊指令有:

中断控制指令:INT(089)查阅【1862023】、@INT(089)查阅【1872023】。

PID控制指令:PID(088)查阅【1882023】。

显示、刷新指令:MSG(046)查阅【1892023】、@ MSG(046)查阅【1902023】;

IORF(097)查阅【1912023】;

FCS(088)查阅【1922023】、@FCS(088)查阅【1932023】

通信指令:RXD(047)查阅【1942023】、@RXD(047)查阅【1952023】;

TXD(048)查阅【1962023】、@TXD(048)查阅【1972023】;

STUP(088)查阅【1982023】、@ STUP(088)查阅【1992023】。

下面解释 指令:INT(089)— 执行中断控制功能指令

一.指令的梯形图符号:

【1862023】指令:INT(089)—执行中断控制功能指令

二.指令的梯形图符号中操作数数据区:

1. 操作数数据区中的C1:控制码 — #(000 ~ 004,100或200)。

2. 操作数数据区中的000:无功能 — 000 。

3. 操作数数据区中的C2:控制数据 — IR、SR、AR、DM、HR、TIM、CNT、LR、# 。

三.指令的功能:

该指令应用于控制中端。

四.指令的人详细说明:

1. 当C1 = 002时,DM6144~DM 6655不能用作C2。

2. 当执行条件为OFF时,INT(089)/ @ INT(089)停止。

3. 当执行条件为ON时,INT(089)/ @ INT(089)用于控制中断,且按照C1的值执行如下的七个功能之一。

(1)C1:000;功能:屏蔽或允许中断输入;

(2)C1:001;功能:清除中断输入;

(3)C1:002;功能:读当前中断输入的屏蔽状态;

(4)C1:003;功能:重新启动递减计数器和允许中断;

(5)C1:004;功能:重新启动递增计数器和允许中断;

(6)C1:100;功能:屏蔽所有中断;

(7)C1:200;功能:允许所有中断;

注明1:C1 = 000 — 屏蔽和允许中断输入:

这项功用于允许和屏蔽00003~00006中断输入。屏蔽的输入被记录,但停止。当一个输入被屏蔽时,它的中断程序在该位允许中断时立即执行(除非事先执行带C1 = 001的INT (089)指令清除中断输入记录)。把C2中对应位设定为0或1来屏蔽或允许中断输入。第00位~第03位对应于00003~00006。第04位~第15位应设为0,见例表【1862023】—1所示。

例表【1862023】-1 字C2位表

【1862023】指令:INT(089)—执行中断控制功能指令

第0位 :中断输入00003(0:允许,1:屏蔽);

第1位 :中断输入00004(0:允许,1:屏蔽);

第2位 :中断输入00005(0:允许,1:屏蔽);

第3位:中断输入00006(0:允许,1:屏蔽)。

在PLC操作起始时所有的中断被屏蔽。因此,为了使用,必须允许中断输入。

▷注明2:C1 = 001 — 清除中断输入:

这项功能用来清除00003~00006中断输入。由于中断输入被记录,除非记录先被清除,屏蔽的中断在屏蔽撤消时会立即响应。把C2的对应位设定为1来清除I/O中断输入。第00位~第03位对应于00003~00006中断输入。第04位~第15位应设为0,见例表【1862023】—2所示。

例表【1862023】-2 字C2位表

【1862023】指令:INT(089)—执行中断控制功能指令

第0位:中断输入00003(0:不清除,1:清除);

第1位:中断输入00004(0:不清除,1:清除);

第2位:中断输入00005(0:不清除,1:清除);

第3位:中断输入00006(0:不清除,1:清除)。

▷注明3:C1 = 002 — 读当前屏蔽状态:

这项功能读中断输入00003~00006的当前屏蔽状态,并把状态信息写入字C2中。如果输入被屏蔽,对应位将置ON,见例表【1862023】—3所示。(第00位~第03位对应于00003~00006)。

例表【1862023】-3 字C2位表

【1862023】指令:INT(089)—执行中断控制功能指令

第0位:中断输入00003(0:允许,1:屏蔽);

第1位:中断输入00004(0:允许,1:屏蔽);

第2位:中断输入00005(0:允许,1:屏蔽);

第3位:中断输入00006(0:允许,1:屏蔽)。

▷注明4:C1 = 003或C1 = 004 — 重新启动计数器和允许中断:

这项功能被用来通过刷新计数器SV(在SR240~SR243中)和允许中断输入(00003 ~00006)来重新启动中断输入(计数器模式)。

设定C1 = 3来重新启动递减计数器或C1 = 4来重新启动递增计数器。把C2中对应位设定为0来刷新输入的计数器SV和允许中断,见例表【1862023】—4所示。(第00位~第03位对应于00003~00006)。

例表【1862023】-4 字C2位表

【1862023】指令:INT(089)—执行中断控制功能指令

第0位:中断输入00003计数器;

第1位:中断输入00004计数器;

第2位:中断输入00005计数器;

第3位:中断输入00006计数器。

当执行带C1 = 003或C1 = 004的INT(089)指令时,使用微分变量@INT(89)或一个仅ON一个周期的输入条件。如果INT(089)在计数器运行期间执行,PV将被重新设定为SV,因此,如果每个周期中执行INT(89),中断将永远不会产生。

当执行带C1 = 003或C1 = 004的INT(089),且SV的字包含一个非0的SV(0001~FFFF)时,对应计数器将开始进行计数操作(递增或递减)且对应的中断将在计数器模式下允许中断。

当计数达SV 时,一个中断将产生且PV将重返SV,从而,在计数器被终止运行前,中断将重复产生。写0000到一个计数器的SV字(SR240~SR243)且执行INT(089)刷新SV,将终止计数器运行并禁止对应的中断。为了重新启动计数器,将非0的SV写到它的SV字,且执行INT(089)。运行开始时,SV字被设定为0000,因此,计数器的SV必须通过梯形图程序写入它的SV字。

当一个中断已经允许(未屏蔽),SV不能仅通过写入一个新值给SV字来刷新。刷新SV应通过执行带C1 = 003(C1 = 004为递增计数器)的INT(089)指令。计数器模式中断可以通过执行带C1 = 000和C2中对应位设定为1的INT(089)来屏蔽,但当C2中的对应位设定为0时,一个输入将在中断输入模式而不是计数器模式下操作。

▷注明5:C1 = 100或C1 = 200 — 屏蔽和允许所有中断:

所有中断,包括输入中断,时间间隔计时器中断和高速计数器中断,都能通过执行带C1 = 100或C1 = 200的INT(089)来屏蔽或允许作为一组的中断。屏蔽的输入被记录,但停止。全局屏蔽是除各单独类型中断之外的屏蔽。即,清除所有中断并不清除单独类型中断,只是在INT(089)来把它们作为一个群体来屏蔽执行之前,把它们存储到一个存在的屏蔽条件中。

除单独屏幕中断类型外的中断,成为全局屏幕。因此,清除所有中断并不能清除单独屏蔽中断,在INT(089)指令把它们作为一个群体来屏蔽执行之前,只要把它们存储到一个存在的屏蔽条件中。除非有必要临时屏蔽所有的中断,切勿用INT(089)来屏蔽中断。通常情况下成对使用INT(089)指令,使用第一条INT(089)指令来屏蔽所有的中断,第二条用来允许

所有的中断。INT(089)不能在一个中断程序中屏蔽或允许所有中断。

▷注明6:C1 = 100 — 屏蔽中断:

使用带C1 = 100的INT(089)指令来屏蔽所有的中断。如果一个中断在中断屏蔽期间产生,中断处理将停止但此输入、时间间隔计数器和高速计数器中断中断被记录。一旦中断允许,这些中断立即响应,见例图【1862023】—1所示。

▷注明7:C1 = 200)— 允许中断:

如图【1862023】—2所示,使用了带C1 = 200的INT(089)指令来允许中断:见例图【1862023】—2所示。

【1862023】指令:INT(089)—执行中断控制功能指令

例图【1862023】-1 屏蔽中断 例图【1862023】-2 允许中断

ERROR:

(1)数据区域超出;

(2)间接寻址字DM不存在;(字*DM中的内容非BCD码,DM区域已经超出了范围)。

(3)C1不是000 ~ 004、100或200;

(4)C2不是0000 ~ 000F;

(5)当中断程序被执行时,执行带C1 = 100或C1 = 200的INT(089)指令;

(6)当所有输入已被屏蔽时,执行带C1 = 100的INT(089)指令;

(7)当所有的输入没被允许时,C1 = 200。

【1862023】指令:INT(089)—执行中断控制功能指令

【1862023】指令:INT(089)—执行中断控制功能指令

【1862023】指令:INT(089)—执行中断控制功能指令