发布于 2009-05-18 09:02:52
0楼
使用PLC SIM对错误组织块的仿真。
实际的CPU检测到程序处理过程中的错误时,CPU会调用对应的错误组织块。S7-PLCSIM支持对硬件中断组织块OB40~OB47和一些错误组织块的仿真。OB80为时间错误组织块,若CPU的循环时间(扫描周期)大于允许的最大循环时间,CPU自动调用OB80。
为模拟CPU的这种功能,在主程序OB1中编写程序。在这段程序中,当I1.4为ON时,JMP(跳步)指令的跳步条件满足,将跳回标号“HERE”处,程序进入死循环,CPU的扫描时间会超过最大循环时间;Q5.5为ON时,将切断这一“死循环”。在时间错误组织块 OB80中编写如图3所示的程序段,出现超时错误调用OB 80时,Q5.5变为ON状态,通过Q5.6和Q5.7可观察是否调用OB80。
仿真过程如下:①在STEP 7管理器中将OB1和OB80下载到仿真 PLC中;②在S7-PLCSIM的仿真窗口中,将I1.4设置为OFF状态,仿真CPU的工作方式切换到RUN,可观察到仿真CPU处于正常工作状态,没有进入“死循环”,其扫描周期没有超过最大循环时间,仿真CPU没有调用OB80,所以Q5.7不会ON。③将I1.4置为ON,运行仿真CPU,主程序进入“死循环”,当扫描周期大于最大循环时间时,观察到Q5.6变为ON,说明仿真CPU执行了OB80中的程序段,但在主程序中没有切断“死循环”,以后仿真CPU自动进入STOP工作方式。④将I1.4、I1.5均置为ON状态,运行仿真CPU,主程序进入“死循环”,当扫描周期大于最大循环时间时,仿真CPU调用OB80,Q5.5、Q5.6均变为ON,Q5.5在主程序中切断“死循环”,程序正常运行,仿真CPU不会进入STOP方式。