时的状态。
2 将I0.0端子与DC24V的L+端连接一下并随即断开,模拟按下启动按钮又松开,观察Q0.0的LED灯是否为ON。
3 5s后,观察Q0.1的LED灯是否为ON。
4 将I0.1端子与DC24V的L+端连接一下并随即断开,模拟按下停止按钮又松开,观察Q0.0、Q0.1的LED灯是否为OFF。
5 再次将I0.0端子与DC24V的L+端连接,模拟系统再次启动,观察启动过程是否正常。
6 断开I0.2端子与DC24V的L+端的连接,模拟热继电器过载动作,动断触点断开,观察Q0.0、Q0.1的LDE灯是否为OFF。
(3)数据块的使用
1在数据块中对地址和数据赋值
数据块用于对变量寄存器V赋初值,可用字节、字或者双字赋值。数据块中的典型行包括起始地址以及一个以上的数据值。数据块中的第一行必须包含明确的地址,以后的行可不包括明确的地址。如果在单地址后面键入多个数据,或者键入只包含数据值的行时,由程序编辑器根据前面的地址和数据长度(字节、字、双字),自动进行地址赋值。数据块编辑器接收大小写字母,并允许用逗号、制表符或空格作为地址和数据的分隔符号,例如,一个从VB3到VB13数据块中的数据如下:
VB3 -25 ∥从VB3开始的字节数据(只占用VB3一个字节) VD4 100.5 ∥从VD4开始的双字实数数值(占用VB4~VB7的4个字节)
VW8 3,4,56 ∥从VW8开始的3个字数值(占用VB8~VB13的6个字节)
2输入错误的显示与处理
如果数据块位于激活窗口,可以用菜单命令“PLC→编译”进行编译,如果数据块不在当前激活窗口,可以用菜单命令“PLC→全部编译”进行编译。
在对数据块进行编译时,如果编译器发现错误,将在输出窗口显示错误。双击错误信息,则在数据块窗口显示有错误的行。
如果在对数据块赋值过程中,某行出现输入错误,当在行尾键入回车键后,将在错误行的左边出现一个叉号,显示输入错误。改正后还要重新进行编译,直到改正所有的错误。
Ⅰ
4.4.5 用编程软件监视与调试程序
(1)用状态表监视与调试程序 ●打开和编辑状态表
在程序运行时,可以用状态表来读、写、强制和监视PLC的内部编程元件。单击指令树中的状态表图标,或者用菜单命令“检视(View)→状态表(Status Chart)”均可打开已有的状态表,并可以进行编辑。如果一个项目中有多个状态表,可以用状态表底部的标签按钮进行切换。
在启动状态表前,可在状态表中输入监视的编程元件的地址和数据类型,定时器和计数器可按位或者按字进行监视。如果按位监视,显示的是它们输出位的1/0状态;如果按字监视,则显示的是它们的当前值。
用菜单命令“编辑插入”,或者用鼠标右键单击状态表中的单元,可以在状态表当前光标位置的上部插入新的行。也可以将光标置于最后一行中的任意单元后,单击向下的箭头键,将新的行插在状态表的底部。在附表中选择编辑元件,并将其复制到状态表中,可以加快创建状态表的速度。
●创建新的状态表
可以将要监视的编程元件进行分组监视,分别创建几个状态表,用鼠标右键单击指令树中的状态表图标,就弹出一个窗口,在窗口中选择“插入状态表”选项可创建新的状态表。
●启动和关闭状态表
当计算机与PLC的的通信连接成功后,用菜单命令“调试(Debug)→状态表(Status Chart)”打开状态表,或者用鼠标单击调试工具条上的“状态表”图标“ ”来启动状态表。再操作一次就可以关闭状态表。
启动状态表以后,编程软件从PLC中收集状态信息,并对表中的数据更新,还可以根据需要强制修改状态表的数据。
●单次读取状态信息
状态表被关闭时,用菜单命令“调试(Debug)→单次读取(Single Read)”,可以从PLC中读取当前的数据,并在状态表中显示当前数值,在执行用户程序时对状态表中的数值不进行更新。
(2)用状态表强制改变数值
当PLC工作在RUN模式下,可对程序中的某些变量进行强制性的赋值操作。S7-200CPU允许强制性地给所有的I/O点赋值,此外还可以改变最多16个内部寄
Ⅰ
存器(如V、M)的数据,或者模拟量I/O(AI或AQ)的数据。对V或M可按字节、字、双字来改变。对模拟量只能从偶数字节开始,以字为单位来改变模拟量。强制的数据可以永久性地存储在CPU的EEPROM中。
在读取输入(输入采样)阶段,强制值被当做输入读入;在程序执行阶段,强制数据用于由立即读和立即写指令指定的I/O点;在通信处理阶段,强制值用于通信的读/写请求。在修改输出(输出刷新)阶段,强制数据被当做输出写入输出电路。当进入STOP状态时,输出将为强制值,而不是系统中设置的值。
通过强制V、M、T或C,强制功能可用来模拟立即条件;通过强制I/O点,强制功能可用来模拟物理条件。值得注意的是,强制操作可能导致系统出现无法预料的情况,甚至引起人员伤亡或设备损坏。
显示状态表后,可以用“调试(Debug)”菜单命令中的选项或者用鼠标单击调试工具条中的相关按钮来执行相应的操作,如:强制、取消强制、取消全部强制、读取全部强制、单次读取和全部写入等。
用鼠标右键单击操作数,从弹出的窗口中可选择对该操作数强制或取消强制。
●全部写入
当完成了对状态表中的变量改动后,可用全部写入功能将所有的改动传送到PLC中。物理输入点不能用此功能改动。
●强制操作
在状态表的地址列中选中一个操作数,在“新数值列”写入希望的数据,然后按工具条中的强制按钮。一旦使用了强制功能,每次扫描都会将修改的数值用于该操作数,直到取消对它的强制。在被强制的数值旁,将显示锁定图标。
●对单个操作数取消强制操作
选择一个被强制的操作数,然后取消强制操作,锁定图标将会消失。 ●读取全部强制
执行读取全部强制功能时,状态表中被强制地址的当前值位置将在曾经被显示强制(Explicitly)、隐式强制(Implicitly)或部分强制的地址处显示一个图标。
锁定图标表示该地址被显示强制,对它取消强制之前,不能改变此地址的值。 灰色的钮定图标表示该地址被隐式强制。例如,如果VW0被显式强制,则VB0和VB1被隐式强制,因为它们包含在VW0中。被隐式强制的数值本身不能取消强制。在改变VB0的强制之前,必须取消对VW0的强制。
Ⅰ
半块锁定图标表示该地址的一部分被强制。例如,如果VW0被显示强制,因为VW0的第二字节是VW1的第一个字节,所以VW1的一部分也被强制。不能对部分强制的数值本身取消强制。在改变该地址的数值之前,必须取消使它被部分强制的地址的强制。
(3)梯形图程序的状态监视
PLC处于RUN方式并建立起通信连接后,选择菜单命令“调试(Debug)→程序状态(Program Status)”,或者单击工具条中的程序状态按钮“ ”,在梯形图中可显示出各个编程元件的状态。如果位操作数为1(ON),触点、线圈将出现彩色块,并允许以最快的通信速度显示、更新触点和线圈的状态。可用菜单命令“工具(Tools)→选项(Options)”打开窗口,然后在窗口中选择“LAD编辑”标签,进行设置功能框的大小和显示方式。
被强制的数值用与状态表中相同的符号来表示,如:锁定图标表示该数值已被显式强制,灰色的锁定图标表示该数值已被隐式强制,半块锁定图标表示该数值被部分强制。
可以在程序状态中启动强制与取消强制操作,但不能使用状态表中提供的其他功能。
(4)语句表程序的状态监视
PLC在RUN方式下建立起通信连接后,选择菜单命令“凋试(Debug)→程序状态(Program Status)”或单击工具条中的程序状态按钮“ ”,可以在语句表中启动程序状态控制。程序编辑器窗口被分成左侧的程序区和右侧的状态区。间接寻址的操作数将同时显示括号中指针的地址和指针所指的存储单元中的数值。可以根据要监视的数据类型对状态区进行设置。用菜单命令“工具(Tools)→选项(Options)”打开窗口,然后在窗口中选择“STL状态”标签,可有选择地在语句表程序状态中监控下列三类数值:
● 每条指令最多监控3个操作数Op1、Op2和Op3。 ● 最多监控逻辑堆栈中4个当前的数值。 ● 最多监控11个指令状态位。
从CPU获取的信息限于200个字节或屏幕上的25行STL状态行。如果超过了这个限制,将会在状态窗口中显示“—”,状态信息从位于编辑窗口顶端的第一句STL语句开始显示。当向下滚动到编辑窗口时,将从CPU获取新的信息。
语句表程序状态监视可以连续不停地更新屏幕上的数值,但不能强制数值。要在语句表程序中强制数值,需使用状态表。如果需要暂停更新,可按“触发暂停”按钮“ ”,当前的数值保留在屏幕上,直到再次按该按钮。
Ⅰ
状态数值的颜色表示指令的执行情况,黑色表示该指令被正确执行;红色表示指令执行时有错误;灰色表示指令没有被执行(其原因是栈顶的值为0,或该指令在一个没有被激活的SCR块中);空白表示该指令没有被执行。
(5)在RUN方式下进行程序编辑
建立好计算机与PLC之间的通信联系后,选择菜单命令“调试(Debug)→在运行状态编辑程序(Program Edit in RUN)”,CPU224和CPU226可在RUN方式下进行编辑。编辑前需退出程序状态监视,修改程序后,需要将其下装到PLC。下装之前一定要仔细考虑可能对设备或操作人员造成的各种安全后果。
如果在RUN方式编辑状态下,取消了一个输出控制逻辑,则该输出在下一次CPU上电或转换互STOP方式之前将保持上一状态。
如果在RUN方式编辑状态下取消一个正在运行的HSC(高速计数器)或PTO/PWN功能,则这些功能在下一次CPU上电或转换至STOP方式前将保持运行状态。
如果在RUN方式编辑状态下,取消了ATCH(中断连接)指令,但是没有删除中断程序,则在下一次CPU上电或转换STOP方式之前将继续执行中断。
如果在RUN状态取消DTCH(中断分离)指令,则在下一次CPU上电或转换到STOP方式之前,中断不会关闭。
如果在RUN方式编辑状态下,增加ATCH指令,并且以第一次扫描标志为条件,则在下一次CPU上电或转换到STOP方式之前,中断事件不会激活。
如果在RUN方式编辑状态下,删除了ENI指令,则在下一次CPU上电或转换到STOP方式之前,中断将继续执行。
如果在RUN方式编辑状态下,修改接收指令(RCV)的地址表,并且在新老程序切换时接收指令处于激活状态,则接收的数据写入老的地址表。NETW与NETR指令同样如此。
由于在RUN方式状态编辑不会影响第一次扫描标志SM0.1,因此在下一次CPU上电或转换到STOP方式之前,不会执行受控于第一次扫描标志的逻辑条件。
在RUN方式编辑状态下,可修改包含正跳变或负跳变(EU或ED)指令的网络,STEP 7 Micro/WIN32暂时为程序中各EU/ED指令分配一个号码。激活RUN方式编辑功能时,交叉引用窗口使用标签列出当前指定的所有EU/ED指令。编辑程序时不要使用重复的EU/ED指令。
在RUN方式下装程序时,只能下装程序块,PLC需要一定的时间对修改的程序进行背景编译。选择菜单命令“调试(Debug)→在运行状态下编辑程序(Program
Ⅰ