S7 | 您所在的位置:网站首页 › s7-1200顺序功能图 › S7 |
2.6 用STEP7调试程序
有两种调试用户程序的方法:程序状态与监控表(Watch Table)。程序状态可以监视程序的运行,显示程序中操作数的值和程序段的逻辑运算结果(RLO),查找用户程序的逻辑错误,还可以修改某些变量的值。 使用监控表可以监视、修改和强制用户程序或CPU内的各个变量。可以向某些变量写入需要的数值,来测试程序或硬件。例如,为了检查接线,可以在CPU处于STOP模式时给外设输出点指定固定的值。 2.6.1 用程序状态功能调试程序1.启动程序状态监视 与PLC建立好在线连接后,打开需要监视的代码块,单击程序编辑器工具栏上的“启用/禁用监视”按钮 如果在运行时测试程序出现功能错误或程序错误,可能会对人员或财产造成严重损害,应确保不会出现这样的危险情况。 2.程序状态的显示 启动程序状态后,梯形图用绿色连续线来表示状态满足,即有“能流”流过,见图2-40中较浅的实线。用蓝色虚线表示状态不满足,没有能流流过。用灰色连续线表示状态未知或程序没有执行,黑色表示没有连接。 Bool变量为0状态和1状态时,它们的常开触点和线圈分别用蓝色虚线和绿色连续线来表示,常闭触点的显示与变量状态的关系则反之。 进入程序状态之前,梯形图中的线和元件因为状态未知,全部为黑色。启动程序状态监视后,梯形图左侧垂直的“电源”线和与它连接的水平线均为连续的绿线,表示有能流从“电源”线流出。有能流流过的处于闭合状态的触点、指令方框、线圈和“导线”均用连续的绿色线表示。 图2-40 程序状态监视 图2-40是星形-三角形降压起动的梯形图。接通连接在PLC的输入端I0.0的小开关后马上断开它(模拟外接的起动按钮的操作),梯形图中I0.0的常开触点接通,使Q0.0(电源接触器)和Q0.1(星形接触器)的线圈通电并自保持。TON定时器的IN输入端有能流流入,开始定时。TON的当前时间值ET从0开始增大,达到PT预置的时间8s时,定时器的位输出"T1".Q变为1状态,其常开触点接通,使Q0.2(三角形接触器)的线圈通电;其常闭触点断开,使Q0.1(星形接触器)的线圈断电。电动机由星形接法切换到三角形接法运行。 3.在程序状态修改变量的值 用鼠标右键单击程序状态中的某个变量,执行出现的快捷菜单中的某个命令,可以修改该变量的值。对于Bool变量,执行命令“修改”→“修改为1”或“修改”→“修改为0”;对于其他数据类型的变量,执行命令“修改”→“修改值”。执行命令“修改”→“显示格式”,可以修改变量的显示格式。 不能修改连接外部硬件输入电路的过程映像输入(I)的值。如果被修改的变量同时受到程序的控制(例如受线圈控制的Bool变量),则程序控制的作用优先。 2.6.2 用监控表监控与强制变量使用程序状态功能,可以在程序编辑器中形象直观地监视梯形图程序的执行情况,触点和线圈的状态一目了然。但是程序状态功能只能在屏幕上显示一小块程序,调试较大的程序时,往往不能同时看到与某一程序功能有关的全部变量的状态。 监控表可以有效地解决上述问题。使用监控表可以在工作区同时监视、修改和强制用户感兴趣的全部变量。一个项目可以生成多个监控表,以满足不同的调试要求。 监控表可以赋值或显示的变量包括过程映像(I和Q)、外设输入(I:P)、外设输出(Q:P)、位存储器(M)和数据块(DB)内的存储单元。 1.监控表的功能 1)监视变量:在计算机上显示用户程序或CPU中变量的当前值。 2)修改变量:将固定值分配给用户程序或CPU中的变量。 3)对外设输出赋值:允许在STOP模式下将固定值赋给CPU的外设输出点,这一功能可用于硬件调试时检查接线。 2.生成监控表 打开项目树中PLC的“监控与强制表”文件夹,双击其中的“添加新监控表”,生成一个名为“监控表1”的新的监控表,并在工作区自动打开它。根据需要,可以为一台PLC生成多个监控表。应将有关联的变量放在同一个监控表内。 3.在监控表中输入变量 在监控表的“名称”列输入PLC变量表中定义过的变量的符号地址,“地址”列将会自动出现该变量的地址。在地址列输入PLC变量表中定义过的地址,“名称”列将会自动地出现它的名称。如果输入了错误的变量名称或地址,出错的单元的背景变为提示错误的浅红色,标题为“i”的标示符列出现红色的叉。 可以使用监控表的“显示格式”列默认的显示格式,也可以用鼠标右键单击该列的某个单元,选中出现的列表中需要的显示格式。图2-41的监控表用二进制格式显示QB0,可以同时显示和分别修改Q0.0~Q0.7这8个Bool变量。这一方法用于I、Q和M,可以用字节(8位)、字(16位)或双字(32位)来监视和修改多个Bool变量。 图2-41 监控表 复制PLC变量表中的变量名称,然后将它粘贴到监控表的“名称”列,可以快速生成监控表中的变量。 4.监视变量 可以用监控表的工具栏上的按钮来执行各种功能。与CPU建立在线连接后,单击工具栏上的 再次单击该按钮,关闭监视功能。单击工具栏上的“立即一次性监视所有变量”按钮 位变量为TRUE(1状态)时,监视值列的方形指示灯为绿色。位变量为FALSE(0状态)时,指示灯为灰色。图2-41中的MD12是定时器的当前时间值,在定时器的定时过程中,MD12的值不断增大。 5.修改变量 单击“显示/隐藏所有修改列” 用鼠标右键单击某个位变量,执行出现的快捷菜单中的“修改”→“修改为0”或“修改”→“修改为1”命令,可以将选中的变量修改为FALSE或TRUE。在RUN模式修改变量时,各变量同时又受到用户程序的控制。假设用户程序运行的结果使Q0.0的线圈断电,用监控表不可能将Q0.0修改和保持为TRUE。在RUN模式不能改变I区分配给硬件的数字量输入点的状态,因为它们的状态取决于外部输入电路的通/断状态。 在程序运行时如果修改变量值出错,可能导致人身或财产的损害。执行修改功能之前,应确认不会有危险情况出现。 6.在STOP模式改变外设输出的状态 在调试设备时,这一功能可以用来检查输出点连接的过程设备的接线是否正确。以Q0.0为例(见图2-42),操作的步骤如下: 图2-42 在STOP模式改变外设输出的状态 1)在监控表中输入外设输出点Q0.0:P,勾选该行“修改值”列右边的复选框。 2)将CPU切换到STOP模式。 3)单击监控表工具栏上的 4)单击工具栏上的 5)单击工具栏上的 6)用鼠标右键单击Q0.0:P所在的行,执行出现的快捷菜单中的“修改”→“修改为1”或“修改”→“修改为0”命令,CPU上Q0.0对应的LED(发光二极管)亮或熄灭,监控表中该行不再显示黄色三角形。 CPU切换到RUN模式后,工具栏上的 因为CPU只能改写,不能读取外设输出变量Q0.0:P的值,符号 7.定义监控表的触发器 触发器用来设置在扫描循环的哪一点来监视或修改选中的变量。可以选择在扫描循环开始、扫描循环结束或从RUN模式切换到STOP模式时监视或修改某个变量。 单击监控表工具栏上的 触发方式可以选择“仅一次”或“永久”(每个循环触发一次)。如果设置为触发一次,单击一次工具栏上的按钮,执行一次相应的操作。 8.强制的基本概念 可以用强制表给用户程序中的单个变量指定固定的值,这一功能被称为强制(Force)。强制应在与CPU建立了在线连接时进行。使用强制功能时,不正确的操作可能会危及人员的生命或健康,造成设备或整个工厂的损失。 S7-1200系列PLC只能强制外设输入和外设输出,例如强制I0.0:P和Q0.0:P等。不能强制组态时指定给HSC(高速计数器)、PWM(脉冲宽度调制)和PTO(脉冲列输出)的I/O点。在测试用户程序时,可以通过强制I/O点来模拟物理条件,例如用来模拟输入信号的变化。强制功能不能仿真。 在执行用户程序之前,强制值被用于输入过程映像。在处理程序时,使用的是输入点的强制值。在写外设输出点时,强制值被送给过程映像输出,输出值被强制值覆盖。强制值在外设输出点出现,并且被用于过程。 变量被强制的值不会因为用户程序的执行而改变。被强制的变量只能读取,不能用写访问来改变其强制值。 输入、输出点被强制后,即使编程软件被关闭,或编程计算机与CPU的在线连接断开,或CPU断电,强制值都被保持在CPU中,直到在线时用强制表停止强制功能。 用存储卡将带有强制点的程序装载到别的CPU时,将继续程序中的强制功能。 9.强制变量 双击打开项目树中的强制表,输入I0.0和Q0.0(见图2-43),它们后面被自动添加表示外设输入/输出的“:P”。只有在扩展模式才能监视外设输入的强制监视值。单击工具栏上的“显示/隐藏扩展模式列”按钮 同时打开OB1和强制表,用“窗口”菜单中的命令,水平拆分编辑器空间,同时显示OB1和强制表(见图2-43)。单击程序编辑器工具栏上的 图2-43 用强制表强制外设输入和外设输出点 单击强制表工具栏上的 用鼠标右键单击强制表的第二行,执行快捷菜单命令,将Q0.0:P强制为FALSE。单击出现的“强制为0”对话框中的“是”按钮确认。强制表第二行出现表示被强制的 10.停止强制 单击强制表工具栏上的 为了停止对单个变量的强制,可以清除该变量的F列的复选框,然后重新启动强制。 |
CopyRight 2018-2019 实验室设备网 版权所有 |