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