在三菱PLC中,允许中断指令EI(Enable Interrupt)用于开启中断功能,使PLC能够响应中断请求;禁止中断指令DI(Disable Interrupt)用于关闭中断功能,防止中断干扰关键程序段的执行。以下是详细介绍:
一、EI指令
功能:EI指令用于允许中断响应。当PLC执行EI指令后,系统将开放所有通过IMASK(中断屏蔽寄存器)允许的中断事件,如外部输入中断、定时器中断等。
用法:
EI指令在梯形图中以线圈形式表示,指令表编程中直接使用EI。
EI指令不涉及寄存器或地址,仅控制中断开关状态,且全局生效。一旦执行,后续程序中的所有中断事件均可响应,直到遇到DI指令。
通常在PLC程序的开头(如主程序起始位置)使用EI,确保后续中断事件可被响应。
应用场景:
在需要响应外部中断(如紧急停止信号)或内部定时中断(如周期性任务)的场合使用EI指令。
例如,在自动化生产线中,当检测到紧急停止信号时,通过外部输入中断触发中断服务程序,执行紧急停止操作。
示例程序:
plaintext//主程序|--[ EI ]----------------| //允许中断 |--[ MOV K1 D0 ]---------| //主程序逻辑 //中断程序(关联中断指针I001) I001: |--[ INC D0 ]------------| //X0触发时D0自增 |--[ IRET ]--------------| //中断返回
当X0输入信号触发时,PLC跳转至中断程序I001,执行INC D0后通过IRET返回主程序。若未执行EI,即使X0触发也不会执行中断程序。
二、DI指令
功能:DI指令用于禁止中断响应。当PLC执行DI指令后,系统将关闭所有中断响应,即使触发中断条件也不会执行中断程序。
用法:
DI指令在梯形图中以线圈形式表示,指令表编程中直接使用DI。
DI指令同样不涉及寄存器或地址,仅控制中断开关状态,且全局生效。一旦执行,后续程序中的所有中断事件均被禁止,直到再次执行EI指令。
DI指令常用于主程序中需要连续执行的关键步骤,避免被中断打断。
应用场景:
在需要保护关键代码段(如高速计数、数据传输等)的场合使用DI指令。
例如,在高速计数过程中,为了避免中断干扰计数结果,可以使用DI指令暂时禁止中断。
注意事项:
默认状态:PLC上电或运行开始时,中断处于禁止状态(等效于DI生效),需手动开启。
与EI指令配合:通过DI可临时关闭中断,用于保护关键代码段。
嵌套限制:三菱FX系列PLC通常不支持多级中断嵌套,需谨慎设计逻辑。

