您现在的位置是:首页 > PLC技术 > PLC技术

STEP 7的用变量表监控程序

来源:艾特贸易2017-09-13

简介使用程序状态功能,可以在梯形图、功能块图或语句表程序编辑器中形象直观地监视程序的执行情况,找出程序设计中存在的问题,或运行时出现的故障的原因。但是程序状态功能只能

    使用程序状态功能,可以在梯形图、功能块图或语句表程序编辑器中形象直观地监视程序的执行情况,找出程序设计中存在的问题,或运行时出现的故障的原因。但是程序状态功能只能在屏幕上显示一小块程序,往往不能同时显示与某一功能有关的全部变量。

    变量表可以有效地解决上述问题。使用变量表可以用一个画面同时监视和修改用户感兴趣的全部变量。一个项目可以生成多个变量表,以满足不同的调试要求。变量表可以监控和改写的变量包括过程映像输入/输出、位存储器、定时器、计数器、数据块内的存储单元和外设输入/外设输出。

    1.变量表的功能

   1)监视变量,显示用户程序或CPU中每个变量的当前值。

   2)修改变量,将固定值赋给用户程序或CPU中的变量。

   3)对外设输出赋值,允许在停机状态下将固定值赋给CPU的每一个输出点Q

   4)强制变量,给某个变量赋予一个固定值,用户程序的执行不会影响被强制的变量的值。

   5)定义变量被监视或赋予新值的触发点和触发条件。

    2.变量表的生成

    SIMATIC管理器中执行菜单命令“插入”→“S7块”→“变量表”,生成新的变量表。双击打开生成的变量表。

    3.在变量表中输入变量

    在第一行的“地址”列输入MW6(见图3-35),默认的显示格式为HEX(十六进制)。可以在变量表的“显示格式”列直接输入BIN(二进制),也可以用右键点击该列,用弹出的快捷菜单设置需要的显示格式。

变量表

    3-35    变量表

    用同样的方法输入图中其他需要监控的变量,双字MD10的显示格式为浮点数。在变量表的“符号”列输入在符号表中定义过的符号,在地址列将会自动出现该符号的地址。在“地址”列输入地址,如果该地址已在符号表中定义了符号,在符号列将会自动出现它的符号。符号名中如果含有特殊的字符,必须用双括号括起来,例如“Motor-off”等。

    可以有选择地复制符号表中的某些地址,然后将它们粘贴到变量表。图3-35的变量表最后一行用二进制格式显示QW2,可以同时显示和分别修改Q2.0~Q3.716点过程映像输出位。使用这一方法,可以用字节、字或双字来监视和修改8位、16位和32位变量。

    在变量表中输入变量时,每一行输入结束都会自动进行语法检查,不正确的输入被标为红色。如果把光标放在红色的行上,可以从状态栏读到错误的原因,按(F1)键可以得到纠正错误的信息。执行“视图”菜单最上面的9条命令,可以打开或关闭变量表中对应的列。

    如果想使某个变量的“修改值”列中的数据无效,选中该行的修改值,点击工具栏上的按钮,在变量的修改值或强制值的左边将会自动加上注释符号“//”,表示它已经无效,变为注释了。再次执行该命令或删除“修改值”列的注释符号,可以使修改值重新有效。也可以在“修改值”列的修改值的左边用键盘直接加上注释符号“//”。

    4.监视变量

    点击工具栏上的按钮,启动监视功能。变量表中的状态值按设定的触发点和触发条件显示在变量表中。如果监视的触发条件为默认的“每次循环”,再次点击按钮,可以关闭监视功能。用PLCSIM仿真时,最好切换到RUN -P模式,否则某些监控功能会受到限制。点击工具栏上的按钮,可以对所选变量的数值作一次立即更新,该功能主要用于停机模式下的监控。

    如果在监视功能被激活的状态下按<Esc>键,不经询问就会退出监视状态。

    5.修改变量

    首先在要修改的变量的“修改数值”列输入变量新的值,点击工具栏上的激活修改值按钮,将修改值立即送入CPU。输入BOOL变量的修改值01后按<Enter>键,它们将自动变为“false(0状态)或“true”(1状态)。

    在程序运行时如果修改变量值出错,可能导致人身或财产的损害。在执行修改功能前,应确认不会有危险情况出现。

    STOP模式修改变量时,因为没有执行用户程序,各变量的状态是独立的,不会互相影响。可以任意地将IQM这些数字量设置为1状态或0状态,并且有保持功能,相当于对它们置位和复位。STOP模式的这种变量修改功能常用来测试数字量输出点的硬件功能是否正常,例如将某个输出点置位后,观察相应的执行机构是否动作。

    RUN模式修改变量时,各变量同时又受到用户程序的控制。假设用户程序运行的结果使某数字量输出点Q0,用变量表将它修改为1状态,它会很快变为0状态。

    修改定时器的值时,默认的显示格式为SIMATIC_TIME,可以按“S5T#”格式输入时间值。也可以只输入数字,例如输入2345后按回车键,将显示S5T#23 S400ms,因为时间值只保留3位有效数字,将个位的5取整为0。计数器的当前值的修改与定时器类似,例如输入123,将显示C#123二输入值的上限为C#999

    6.定义变量表的触发方式

    执行菜单命令“变量”→“触发器”,用打开的对话框可以设置监视触发点和监视的触发条件。触发点可以选择扫措循环开始、扫描循环结束和从RUN切换到STOP。触发条件可以选择触发一次或每个循环触发一次。如果设置为触发一次,点击一次变量表中的监视变量或修改变量的按钮,执行一次相应的操作。

    7.变量表应用举例

    打开PLCSIM,选中SIMATIC管理器左边窗口中的“块”,将用户程序和系统数据下载到仿真PLC,将仿真PLC切换到RUN -P模式。双击打开图3-35中的变量表,单击工具栏上的“监视变量”按钮,启动监控功能。“状态值”列显示的是PLC中的变量值。

    将第1行和第2行的显示格式修改为十进制(DEC),在修改数值列分别输入2345-2345,然后将它们的显示格式改为二进制( BIN)。可以看出正数与绝对值相同的负数之间逐位“取反加1”的关系(见图3-35)。

    在第3行的“修改数值”列输入双字常数DW#16#12345678,在第8行的“修改数值”列输入浮点数50.0。单击工具栏上的“激活修改数值”按钮,“修改数值”被写入PLC,并在“状态值”列显示出来。从第35行可以看出双字与组成它的两个字之间的关系,从第57行可以看出字与组成它的两个字节之间的关系。从第8行可以看出浮点数用十进制小数输入和显示。

    如果仿真PLC运行在RUN模式,将“修改数值”列的值写入PLC时,将会出现“( DOA1)功能在当前保护级别中不被允许”的对话框,必须将仿真PLC切换到RUN -PSTOP模式,才能修改PLC中的数据。

    8.强制变量

    强制用来给用户程序中的变量赋一个固定的值,这个值不会因为用户程序的执行而改变。被强制的变量只能读取,不能用写访问来改变其强制值。强制功能用于用户程序的调试,例如用来模拟输入信号的变化。仿真软件PLCSIM不能对强制操作仿真,强制操作只能用于硬件CPU

    强制操作在“强制数值”窗口中进行,用变量表中的菜单命令“变量”→“显示强制值”打开该在线窗口(见图3-36)。被强制的变量和它们的强制值都显示在该窗口中。

    在强制数值窗口中输入要强制的变量的地址和要强制的数值后,执行菜单命令“变量”→“强制”,表中输入了强制值的所有变量都被强制,被强制的变量的左边出现图标。

    强制操作一般用于系统的调试。有变量被强制时,CPU模块上的“FRCE”灯亮,以提醒操作人员及时解除强制,否则将会影响用户程序的正常运行。

强制数值窗口

    3-36    强制数值窗口

    使用“强制”功能时,不正确的操作可能会危及人员的生命或健康,造成设备或整个工厂的损失。关闭强制数值窗口、关闭PLC的电源都不能解除强制操作。强制作业只能用菜单命令“变量”→“停止强制”来删除或终止,终止后变量左边的图标消失,CPU模块上的“FRCE”灯熄灭。