8 可编程控制器编程软件
主要内容 8.1调试应用程序 8.2显示程序状态 8.3使用状态图来显示和修改S7--200中的数据 8.4强制指定值 8.5指定程序执行的扫描周期数 8.6硬件故障诊断指导
8.1调试应用程序 STEP 7--Micro/WIN 为帮助用户调试程序提供了多种手段:书签,交叉参考表,运行模式下编辑 1 使用书签使编程更方便 在程序中可以使用书签,它可以使用户在一个很长的程序中,很方便的在编辑行之间前后移动。用户可以移动到程序的下一个标签行或前一个标签行。 2 使用交叉参考表来检查应用程序 交叉参考表中能够显示应用程序中的交叉参考和元件使用信息。
交叉参考表能够识别程序中使用的所有操作数;程序块、程序段或者程序行的位置以及每一块使用该操作数的相关指令。 可以在符号地址和绝对地址之间切换来改变所有操作数的表现形式。
在RUN模式下编辑应用程序 S7--200 CPU Rel. 2.0及CPU Rel. 2.0以上的CPU模块支持RUN模式下编辑的功能。RUN模式下编辑功能可以在对控制过程影响较小的情况下,对用户程序进行少量修改。该功能也能使用户对程序进行大量的改动,但这样做对程序的执行影响较大,甚至是危险的。
要在RUN模式下编辑应用程序,在线的S7--200 CPU必须支持RUN模式下编辑,并且该CPU必须处于RUN状态。 1. 在命令菜单中选择Debug > Program Edit in RUN。 2. 如果打开的项目与S7--200中的程序不同,将提示存盘。RUN模式下编辑功能只能编辑CPU中的程序。 3. STEP 7--Micro/WIN对于将在RUN模式下编辑程序提出警告,提示您是继续下一步还是取消操作。如果您选择继续,STEP 7--Micro/WIN会在S7--200中上载程序。现在可以在RUN模式下编辑程序了。编辑中没有严格的限定。
在RUN模式下载程序 RUN模式编辑功能允许在S7--200处于RUN模式时下载程序块。在下载程序块之前,考虑到RUN模式下编辑对S7--200操作的影响,请注意以下情况: 如果在RUN模式编辑状态下取消一个输出控制逻辑,则输出在下一次CPU上电之前或CPU转换到STOP模式前将保持上一个状态。 如果在RUN模式编辑状态下取消一个正在运行的HSC或PTO/PWM功能,则这些功能在下一次CPU上电或CPU转换到STOP模式前将保持运行状态。 如果在RUN模式编辑状态下取消ATCH指令,但没有删除中断程序,则在下一次CPU上电或CPU转换到STOP模式之前将继续执行中断。同样,如果删除DTCH指令,在下一次CPU上电之前或CPU转换到STOP模式前中断将不会停止。
如果在RUN模式编辑状态下加入以第一次扫描标志位为条件的ATCH指令,则在下一次CPU上电或CPU从STOP转换到RUN模式前不会执行这些指令。 如果在RUN模式编辑状态下取消ENI指令,则在下一次CPU上电之前或CPU从RUN转换到STOP模式前将继续执行中断。 如果在RUN模式编辑状态下修改接收指令的地址表,并且在旧程序向新程序转换时接收指令处于激活状态,则所接收的数据写入旧地址表。NETR和NETW指令同样如此。 由于RUN模式编辑不影响第一次扫描标志,因此在下一次CPU上电之前或CPU从STOP转换到RUN模式前第一次扫描标志的逻辑条件不执行。
在RUN模式下下载程序,点击下载按钮或在命令菜单中选择File > Download即可。若程序编译正确,STEP 7--Micro/WIN将程序块下载到S7--200上。 要退出RUN模式编辑,在命令菜单中选择Debug > Program Edit in RUN,然后点击取消复选标志即可。如果修改完后没有存盘,STEP 7--Micro/WIN会有三种提示:继续编辑、下载并退出RUN模式编辑或者不下载退出。
8.2显示程序状态 STEP 7--Micro/WIN允许用户在程序执行时监视其状态。当您监视程序状态时,程序编辑器会显示指令操作数的值。 要显示程序状态,点击Program Status按钮或选择命令菜单Debug > Program Status即可。
显示LAD和FBD程序的状态 对于显示LAD和FBD程序的状态,STEP 7--Micro/WIN提供了两种选择。 扫描结束的状态:STEP 7--Micro/WIN在经过多个扫描周期得到显示状态值之后,刷新屏幕显示状态。状态显示并不反映程序执行时每个元素的实际状态。扫描结束状态不显示L存储器或者累加器的状态。对于扫描结束状态显示,状态值在所有CPU操作模式下都刷新。 执行状态:STEP 7--Micro/WIN在S7--200程序执行过程中,显示程序段中的状态值。要显示执行状态,需在命令菜单中选择Debug > Use Execution Status。 对于执行状态,状态值只有在CPU处在RUN模式时才刷新。
对LAD和FBD程序中的状态显示进行配置 STEP 7--Micro/WIN为在程序中显示状态提供了多种选择。 要为程序状态显示作配置,在命令菜单中选择Tools > Options,然后选择程序编辑器并点击程序编辑器标签页即可,如图8-2所示。
显示STL程序的状态 用户可以监视逐条指令编程的STL程序的执行状态。对于一个STL程序,STEP 7--Micro/WIN在屏幕上显示指令的状态。 从编辑器窗口顶部的第一条STL语句开始,STEP 7--Micro/WIN的S7--200采集状态信息。当您滚动编辑器窗口的屏幕时,新的信息从S7--200采集上来。
STEP 7--Micro/WIN不断地刷新屏幕上的数值。要使屏幕刷新暂停,选择触发暂停按钮。当前值会保持在屏幕上,直到触发暂停按钮失效。
为STL程序中显示的参数作配置为STL程序中显示的参数作配置STEP7--Micro/WIN允许您在STL指令中显示多种参数状态。在命令菜单中选择Tools >Options,然后选择程序编辑器并点击STL状态标签页。参见图8-3。
8.3使用状态图来显示和修改S7--200中的数据 状态图允许您在S7--200运行程序时,读、写、强制和监视变量数据。在命令菜单中选择View > Component > Status Chart来创建一个状态图。图8-4中给出了一个状态图的例子。 您可以创建多个状态图。 STEP 7--Micro/WIN提供工具条图标来对状态图进行操作:升序排列、降序排列,单次读、全部写、强制、全部强制、和读所有强制值。 要为单元选择格式,选择该单元并单击鼠标右键会显示关联菜单。
8.4强制指定值 S7--200 CPU允许用户用指定值来强制赋给一个或所有的I/O点(I和Q位)。另外用户也可以强制改变最多16个内部存储器数据(V或M)或模拟I/O量(AI或AQ)。V和M存储器变量可以按字节、字或双字来改变。模拟量只能以字方式改变,以偶字节开始(如AIW6或AQW14)。所有强制指定值存储在S7--200的永久存储器中。 因为在扫描周期的不同阶段(执行程序、或I/O更新、或通讯处理阶段)可能会改变强制数据。所以在扫描周期的不同时间,CPU又使用了这些强制变量。
读取输入:当读取输入值时,S7--200使用强制指定值作为输入值 在程序中执行控制逻辑:S7--200使用强制值作为所有立即I/O值。程序执行后,强制数据最多可用于16个存储器。 处理通讯请求:强制数据用于所有读/写通讯。 写输出:S7--200使用强制值作为输出。
您可以使用状态表来强制变量,要强制一个新值,将其输入到状态表的新值列中,然后按工具条上的强制钮。要将一个已经存在的当前值变为强制值,在当前值列中选中该变量,然后按强制钮。
8.5指定程序执行的扫描周期数 为了帮助用户调试程序,STEP 7--Micro/WIN允许您指定程序的扫描周期数。 用户可以使让S7--200只执行首次扫描周期。这使您能够监视首次扫描之后,S7--200中的数据。在命令菜单中选择Debug > First Scan即可。 用户可以指定程序执行的扫描次数(从1到65,535)。这使用户能在变量变化时监视程序。在命令菜单中选择Debug > Multiple Scans,然后指定扫描次数即可。
8.6硬件故障诊断指导
谢谢, 欢迎批评指正!