以下内容节选自机械工业出版社出版的西门子自动化技术丛书----《SIMATIC S7- 1500 与 TIA博途软件使用指南》, 作者崔坚。更多更详细的内容请您参考《SIMATIC S7- 1500 与 TIA博途软件使用指南》一书。
使用程序编辑器调试程序
14.6 使用程序编辑器调试程序
14.6.1调试LAD/FBD程序
LAD或FBD程序以能流的方式传递信号状态,通过程序中线条、指令元素及参数的颜色和状态判断程序的运行结果。在程序编辑界面中,点击工具栏按钮即可进入监视状态如图14- 26所示。
图14- 26LAD监控界面
线条颜色设置为:
l 绿色实线 已满足
l 蓝色虚线 未满足
l 灰色实线 未知或未执行
l 黑色 未互连
判断线条、指令元素及参数状态的规则如下:
1) 程序中线条的状态
l 线条的状态如果未知或没有完全运行则是灰色实线。
l 在能流开始处线条的状态总是满足的(“1”)。
l 并行分支开始处线条的状态总是满足的(“1”)。
l 如果一个指令元素和它前面的线条的状态都满足,则该元素后面的线条状态满足。
l 如果NOT指令前面的线条状态不满足(相反),则NOT指令后面的线条状态满足。
l 在下列情况下,线条交叉点后面的线条状态满足:
2 之前至少有一个线条的状态满足。
2 分支前的线条的状态满足。
1) 指令元素的状态
· 常开触点的状态
2 如果该地址为“1”值则满足。
2 如果该地址为“0”值则不满足。
2 如果该地址的值不知道则为未知。
· 输出Q的元素状态对应于该触点状态。
· 如果跳转被执行则跳转指令的状态满足,即意味着跳转条件满足。
· 带有使能输出(ENO)的元素,如果使能输出未被连接则该元素显示为黑色。
2) 参数的状态
l 黑色显示的参数值是当前值。
l 灰色显示的参数值来自前一个扫描,表明该程序区在当前扫描循环中未被处理。
使用鼠标点击变量,按右键“修改”可以直接修改变量的值,同样按右键选择“修改”->“显示格式”可以切换显示的数据格式。
14.6.2调试STL程序
STL程序通过状态字及其它显示信息判断程序的运行结果,点击工具栏按钮即可进入监视状态,如图14- 27所示。
图14- 27 STL监控界面
在STL监控界面右边的状态域中显示程序执行的状态及结果,可显示的信息包括:
l RLO
“RLO”列将显示程序中每一行的逻辑运算结果。可以根据表格单元的背景颜色识别 RLO 的值。 绿色表示 RLO 为 1,淡紫色表示 RLO 为 0。
l 值
在“值”(Value)列中为操作数的当前值。
l 额外
“额外”列将显示特定操作的其它信息,例如,数学指令的相关状态位、定时器和计数器的时间或计数值,或者状态位和用于间接寻址的寄存器的值。
注意:
S7-1500目前不支持断点调试功能。
14.6.3调用环境功能
对于功能相同的对象,可以编写一个带有形参的函数或者函数块,在程序中多次调用并赋值不同的实参即可完成控制任务,例如对多个功能相同的阀门进行控制。使用函数编程使整个程序结构变得简单、清晰和结构化,易于调试。一般来说,调用函数时对每个函数赋值的实参是不同的,它们分别对应不同的控制对象。如果在函数中使用局部变量,在程序中是无法直接监控每个控制对象的中间过程即中间变量。使用S7-1500的调用环境功能,可以方便地监控每个控制对象的中间过程。
下面以示例的方式介绍调用环境功能。例如在OB1中调用函数FC1三次,给FC1分别赋值不同的实参以控制三个不同的对象,如图14- 28所示。如果需要监控其中一个函数内部的运行状态,只需要选择这个函数,然后在鼠标右键的下拉菜单中点击“打开并监视”选项,即可直接进入到函数的监视界面。
图14- 28函数调用程序
如果直接打开FC1进行监控,只是监控函数内部通用的程序而不对应某一个对象。点击“调用环境”按钮,在弹出的“块的调用环境”对话框中选择函数调用的位置,这样就选择了对应的控制对象,如图14- 29所示。在调试和维护阶段,可以利用程序块的调用环境功能,实现对一个对象的快速定位监控。
图14- 29选择函数的调用环境