使用程序状态功能,可以在程序编辑器中形象直观地监视梯形图程序的执行情况,触点和线圈的状态一目了然。但是程序状态功能只能在屏幕上显示一小块程序,调试较大的程序时,往往不能同时看到与某一程序功能有关的全部变量的状态。
监控表(Watch Table)可以有效地解决上述问题。使用监控表可以在工作区同时监视、修改和强制用户感兴趣的全部变量。一个项目可以生成多个监控表,以满足不同的调试要求。
监控表可以赋值或显示的变量包括过程映像(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-44的监控表用二进制格式显示QB0,可以同时显示和分别修改Q0.0~Q0.7这8个Bool变量。这一方法用于I、Q和M,可以用字节(8位)、字(16位)或双字(32位)来监视和修改多个Bool变量。
复制PLC变量表中的变量名称,然后将它粘贴到监控表的“名称”列,可以快速生成监控表中的变量。
4.监视变量
可以用监控表的工具栏上的按钮来执行各种功能。与CPU建立在线连接后,单击工具栏上的按钮,启动监视功能,将在“监视值”列连续显示变量的动态实际值。
图2-44 监控表
再次单击该按钮,关闭监视功能。单击工具栏上的“立即一次性监视所有变量”按钮,即使没有启动监视,将立即读取一次变量值,在“监视值”列用表示在线的橙色背景显示变量值。几秒钟后,背景色变为表示离线的灰色。
位变量为TRUE(1状态)时,监视值列的方形指示灯为绿色。位变量为FALSE(0状态)时,指示灯为灰色。图2-44中的MD12是定时器的当前时间值,在定时器的定时过程中,MD12的值不断增大。
5.修改变量
单击“显示/隐藏所有修改列”按钮,出现隐藏的“修改值”列,在“修改值”列输入变量新的值,并勾选要修改的变量的“修改值”列右边的复选框。输入Bool变量的修改值0或1后,单击监控表其他地方,它们将自动变为“FALSE”(假)或“TRUE”(真)。单击工具栏上的“立即一次性修改所有选定值”按钮,复选框打勾的“修改值”被立即送入指定的地址。
用鼠标右键单击某个位变量,执行出现的快捷菜单中的“修改”→“修改为0”或“修改”→“修改为1”命令,可以将选中的变量修改为FALSE或TRUE。在RUN模式修改变量时,各变量同时又受到用户程序的控制。假设用户程序运行的结果使Q0.0的线圈断电,用监控表不可能将Q0.0修改和保持为TRUE。在RUN模式不能改变I区分配给硬件的数字量输入点的状态,因为它们的状态取决于外部输入电路的通/断状态。
在程序运行时如果修改变量值出错,可能导致人身或财产的损害。执行修改功能之前,应确认不会有危险情况出现。
6.在STOP模式改变外设输出的状态
在调试设备时,这一功能可以用来检查输出点连接的过程设备的接线是否正确。以Q0.0为例(见图2-45),操作的步骤如下:
1)在监控表中输入外设输出点Q0.0:P,勾选该行“修改值”列右边的复选框。在选中的复选框的右边出现一个黄色的三角形,表示此时已选择了修改该地址,但尚未修改。
2)将CPU切换到STOP模式。
3)单击监控表工具栏上的按钮,切换到扩展模式,出现与“触发器”有关的两列(见图2-45)。
(www.xing528.com)
图2-45 在STOP模式改变外设输出的状态
4)单击工具栏上的按钮,启动监视功能。
5)单击工具栏上的按钮,出现“启用外围设备输出”对话框,单击“是”按钮确认。
6)用鼠标右键单击Q0.0:P所在的行,执行出现的快捷菜单中的“修改”→“修改为1”或“修改”→“修改为0”命令,CPU上Q0.0对应的LED(发光二极管)亮或熄灭。监控表中该行不再显示黄色三角形。
CPU切换到RUN模式后,工具栏上的按钮变为灰色,该功能被禁止,Q0.0受到用户程序的控制。如果有输入点或输出点被强制,则不能使用这一功能。为了在STOP模式下允许外设输出,应取消强制功能。
因为CPU只能改写,不能读取外设输出变量Q0.0:P的值,符号表示该变量被禁止监视(不能读取)。将光标放到图2-45最下面一行的“监视值”单元时,将会出现弹出项方框,提示“无法监视外围设备输出”。
7.定义监控表的触发器
触发器用来设置在扫描循环的哪一点来监视或修改选中的变量。可以选择在扫描循环开始、扫描循环结束或从RUN模式切换到STOP模式时监视或修改某个变量。
单击监控表工具栏上的按钮,切换到扩展模式,出现“使用触发器监视”和“使用触发器进行修改”列(见图2-45)。单击这两列的某个单元,再单击单元右边出现的按钮,用出现的下拉式列表设置监视和修改该行变量的触发点。
触发方式可以选择“仅一次”或“永久”(每个循环触发一次)。如果设置为触发一次,单击一次工具栏上的按钮,执行一次相应的操作。
8.强制的基本概念
可以用强制表给用户程序中的单个变量指定固定的值,这一功能被称为强制(Force)。强制应在与CPU建立了在线连接时进行。使用强制功能时,不正确的操作可能会危及人员的生命或健康,造成设备或整个工厂的损失。
只能强制外设输入和外设输出,例如强制I0.0:P和Q0.0:P等。不能强制组态时指定给HSC(高速计数器)、PWM(脉冲宽度调制)和PTO(脉冲列输出)的I/O点。在测试用户程序时,可以通过强制I/O点来模拟物理条件,例如用来模拟输入信号的变化。强制功能不能仿真。
在执行用户程序之前,强制值被用于输入过程映像。在处理程序时,使用的是输入点的强制值。在写外设输出点时,强制值被送给过程映像输出,输出值被强制值覆盖。强制值在外设输出点出现,并且被用于过程。
变量被强制的值不会因为用户程序的执行而改变。被强制的变量只能读取,不能用写访问来改变其强制值。
输入、输出点被强制后,即使编程软件被关闭,或编程计算机与CPU的在线连接断开,或CPU断电,强制值都被保持在CPU中,直到在线时用强制表停止强制功能。
用存储卡将带有强制点的程序装载到别的CPU时,将继续程序中的强制功能。
9.强制变量
双击打开项目树中的强制表,输入I0.0和Q0.0(见图2-46),它们后面被自动添加表示外设输入/输出的“:P”。只有在扩展模式才能监视外设输入的强制监视值。单击工具栏上的“显示/隐藏扩展模式列”按钮,切换到扩展模式。将CPU切换到RUN模式。
同时打开OB1和强制表,用“窗口”菜单中的命令,水平拆分编辑器空间,同时显示OB1和强制表(见图2-46)。单击程序编辑器工具栏上的按钮,启动程序状态功能。
单击强制表工具栏上的按钮,启动监视功能。右键单击强制表的第一行,执行快捷菜单命令,将I0.0:P强制为TRUE。单击出现的“强制为1”对话框中的“是”按钮确认。强制表第一行出现表示被强制的符号,第一行“F”列的复选框中出现勾。PLC面板上I0.0对应的LED不亮,梯形图中I0.0的常开触点接通,上面出现被强制的符号,由于PLC程序的作用,梯形图中Q0.0的线圈通电,PLC面板上Q0.0对应的LED亮。
右键单击强制表的第二行,执行快捷菜单命令,将Q0.0:P强制为FALSE。单击出现的“强制为0”对话框中的“是”按钮确认。强制表第二行出现表示被强制的符号。梯形图中Q0.0线圈上面出现表示被强制的符号,PLC面板上Q0.0对应的LED熄灭。
图2-46 用强制表强制外设输入点和外设输出点
10.停止强制
单击强制表工具栏上的按钮,停止对所有地址的强制。被强制的变量最左边和输入点的“监视值”列红色的标有“F”的小方框消失,表示强制被停止。复选框后面的黄色三角形符号重新出现,表示该地址被选择强制,但是CPU中的变量没有被强制。梯形图中的符号也消失了。
为了停止对单个变量的强制,可以清除该变量的F列的复选框,然后重新启动强制。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。