首页 理论教育 中断连接指令与中断分离指令在4.3.5中的应用

中断连接指令与中断分离指令在4.3.5中的应用

时间:2023-06-30 理论教育 版权反馈
【摘要】:在OB41的接口区生成两个临时局部变量RET1和RET2,用DETACH指令断开I0.0上升沿事件与OB41的连接,用ATTACH指令建立I0.0上升沿事件与OB40的连接。

中断连接指令与中断分离指令在4.3.5中的应用

1.ATTACH指令与DETACH指令

“将OB附加到中断事件”指令ATTACH和“将OB与中断事件分离”指令DETACH分别用于在PLC运行时建立和断开硬件中断事件与中断OB的连接。

2.组态硬件中断事件

打开项目视图,生成一个名为“硬件中断例程2”的新项目(见随书光盘中的同名例程),CPU的型号为CPU1214C。打开项目视图中的文件夹“\PLC_1\程序块”,双击其中的“添加新块”,生成名为“硬件中断1”和“硬件中断2”的硬件中断组织块OB40和OB41。

选中设备视图中的CPU,再选中巡视窗口的“属性>常规”选项卡左边的“数字量输入”文件夹中的的通道0(即I0.0,见图4-46),用复选框启用上升沿中断功能。单击选择框“硬件中断”右边的978-7-111-58719-4-Chapter04-69.jpg按钮,将OB40(硬件中断1)指定给I0.0的上升沿中断事件。出现该中断事件时调用OB40。

3.程序设计

要求使用指令ATTACH和DETACH,在出现I0.0上升沿事件时,交替调用硬件中断组织块OB40和OB41,分别将不同的数值写入QB0。

在OB40中,用DETACH指令断开I0.0上升沿事件与OB40的连接(见图4-50),用ATTACH指令建立I0.0上升沿事件与OB41的连接。用MOVE指令给QB0赋值为16#F。

打开OB40,在程序编辑器上面的接口区生成两个临时局部变量RET1和RET2,用来做指令ATTACH和DETACH的返回值的实参。返回值是指令的状态代码。

打开指令列表中的“扩展指令”窗格的“中断”文件夹,将其中的指令DETACH拖放到程序编辑器,设置参数OB_NR(组织块的编号)为40。

978-7-111-58719-4-Chapter04-70.jpg

图4-50 OB40的程序

双击中断事件EVENT左边的问号,然后单击出现的978-7-111-58719-4-Chapter04-71.jpg按钮(见图4-51),选中出现的下拉式列表中的中断事件“上升沿0”(I0.0的上升沿事件),其代码值为16#C0000108。在PLC默认的变量表的“系统常量”选项卡中,也能找到“上升沿0”的代码值。DETACH指令用来断开I0.0的上升沿中断事件与OB40的连接。如果没有指定参数EVENT的实参,当前连接到OB_NR指定的OB40的所有中断事件将被断开连接。

图4-50中的ATTACH指令将参数OB_NR指定的OB41连接到EVENT指定的事件“上升沿0”。在该事件发生时,将调用OB41。参数ADD为默认值0时,指定的事件取代连接到原来分配给这个OB的所有事件。(www.xing528.com)

978-7-111-58719-4-Chapter04-72.jpg

图4-51 设置指令的参数

下一次出现I0.0上升沿事件时,调用OB41(见图4-52)。在OB41的接口区生成两个临时局部变量RET1和RET2,用DETACH指令断开I0.0上升沿事件与OB41的连接,用ATTACH指令建立I0.0上升沿事件与OB40的连接。用MOVE指令给QB0赋值为16#F0。

978-7-111-58719-4-Chapter04-73.jpg

图4-52 OB41的程序

4.仿真实验

打开仿真软件S7-PLCSIM,下载所有的块,仿真PLC切换到RUN模式。打开SIM表1,生成I0.0和QB0的SIM表条目(见图4-53)。

978-7-111-58719-4-Chapter04-74.jpg

图4-53 S7-PLCSIM的SIM表1

两次单击I0.0对应的小方框,在I0.0的上升沿,CPU调用OB40,断开I0.0的上升沿事件与OB40的连接,将该事件与OB41连接。将16#0F写入QB0,后者的低4位为1。

两次单击I0.0对应的小方框,在I0.0的上升沿,CPU调用OB41,断开I0.0的上升沿事件与OB41的连接,将该事件与OB40连接。将16#F0写入QB0,后者的高4位为1。

连续多次单击I0.0对应的小方框,由于OB40和OB41中的ATTACH和DETACH指令的作用,在I0.0奇数次的上升沿调用OB40,QB0被写入16#0F(低4位为1),在I0.0偶数次的上升沿调用OB41,QB0被写入16#F0(高4位为1)。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈