STEP7的PLC程序符合IEC-61131标准,该标准支持5种编成语言STL/FBD/LAD,另外SFC/SCL是选件.但大部分调试手段却是通用的.
(1)VariableTable
根据我的调查显示,VariableTable(变量监视表)是最常用的,功能也很强,能监视又能强制修改,编辑好后可以长期保存,看看STEP7自带的的例子就知道了,都提供了变量表.因为太常用,我就不多说了,嘿嘿...
作用:变量监视/强制修改调用方法:主菜单>Insert>s7Block>VariableTable
(2)CPUMessage/DiagnosticBuffer
这两者的作用差不多,都是从PLC中的DiagnosticBuffer(诊断缓冲区)中提取诊断信息.区别在于前者象一个日志而后者直接显示了PLC诊断缓冲区中的内容.如果你的程序已经下载到了PLC中,但一开机就SF(systemfailure)红色LED灯就亮了,或是程序一开始运行良好,也不知道什么时候就down机了(噢,太可怕了).先别急,看看DiagnosticBuffer中的信息吧,她会告诉你什么时候,哪个Block出了什么错误,比如某个FB块忘了下载了(汗)当然,更深入的分析需要用其他手段跟踪调试了.
作用:错误诊断/定位
调用方法:主菜单>PLC>CPUMessage...
主菜单>PLC>Diagnostic/Setting>ModuleInformation>DiagnosticBuffer
(3)ReferenceData
根据你编写好的程序,STEP7程序会通过统计分析得出一堆数据,于是我们可以通过相应的视图分析:变量的使用状况,程序结构,内存占用情况,没用到的symbol和程序中只有绝对地址没有symbol名的M点.偶认为一个比较大的程序写完之后,应该调用referenceData审视一番,做到心中有数,这是一个好的习惯.另外,crossreference可以对变量跟踪定位,在引用表上双击变量名,程序就显示相应的位置.有些Bug也可以从ReferenceData表格中嗅出来。总之,善于利用此类统计信息对程序分析大有好处.
作用:静态统计分析
调用方法:主菜单>Options>ReferenceData...
(4)STL单步调试/PLCSIM(仿真器)singlescan(单循环)调试
这两种手段本来没多大联系,但它们都属于细粒度的动态调试方法,因此就列在一块儿了,它们用于对付比较坚硬的BUG,还有就是对分析别人的STL程序有点儿用.
作用:细粒度动态跟踪调试
调用方法:STL设断点的条件比较严格:
1.在LAD/STL/FBD编辑器菜单中选择Debug>Operation>testoperating
编辑器处于ONLINE状态
3.视图必须切换至STL语言
仿真器singlescan的激活方法太简单--有工具条,就不说了,呵.
总之,虽然软件的版本在不断的升级,但是调试基本的思想是不变的,希望上述内容对各位有点帮助.