《PLC开发与交通综合应用》
中断事件与中断指令
延时中断组织块安徽交通职业技术学院
5.3.6延时中断组织块如果需要高精度的延时,应使用延时中断指令。延时中断指令功能与定时器类似,可实现延时执行某些操作,同时可以达到以ms为单位的高精度延时。延时中断组织块最多可以使用20个,默认范围是OB20~OB23,其余可组态OB编号123以上组织块。在使用过程中,当同时调用循环中断和延时中断组织块时,其个数之和最多为4个。延时中断组织块使用“SRT_DINT”和“CAN_DINT”指令,设置、取消激活延时中断,参数见表5.3。表5.3“SRT_DINT”“CAN_DINT”的参数
5.3.6延时中断组织块1.硬件组态生成新的示例项目,在“添加新块”界面中生成名为“硬件中断”的组织块OB40,名为“延时中断”的组织块OB20,以及全局数据块DB1。选中设备视图中的CPU,再选中巡视窗口的“属性常规”选项卡左边的“数字量输入”的通道0(即I0.0),用复选框启用上升沿中断功能。单击选择框“硬件中断”右边的按钮,用下拉式列表将OB40指定给I0.0的上升沿中断事件。出现该中断事件时调用OB40。
5.3.6延时中断组织块2.硬件中断组织块程序设计在I0.0的上升沿触发硬件中断,CPU调用OB40,在OB40中调用指令SRT_DINT启动延时中断的延时,延时时间为10s。其具体调用程序为:在指令SRT_DINT的EN使能输入的上升沿,启动延时过程。延时时间到时触发延时中断,从而调用指定的延时中断组织块,其程序设计如图5.35所示。图5.35OB40的程序
5.3.6延时中断组织块3.时间延迟中断组织块程序设计在I0.0上升沿调用的OB40中启动时间延迟,延时时间到时调用时间延迟组织块OB20。在OB20中调用RD_LOC_T指令,其具体程序如图5.36所示,读取10s延时结束的实时时间,用DB1中的变量DT2保存。同时将Q0.4:P立即置位。图5.36OB20的程序
5.3.6延时中断组织块4.OB1的程序设计在OB1中调用指令QRY_DINT来查询延时中断的状态字STATUS,其具体程序如图5.37所示,查询的结果用MW8保存,其低字节为MB9。OB_NR的实参是OB20的编号。在延时过程中,在I0.1为1状态时调用指令CAN_DINT来取消延时中断过程。在I0.2为1状态时复位Q0.4。图5.37OB1的程序
谢谢观看