STEP7程序調(diào)試手段分析
發(fā)布時間:2019-08-05 10:09:52來源:
STEP7程序調(diào)試手段分析
STEP7的PLC程序符合IEC-61131標準,該標準支持5種編成語言STL/FBD/LAD,另外SFC/SCL是選件.但大部分調(diào)試手段卻是通用的.(1) Variable Table
根據(jù)我的調(diào)查顯示,Variable Table (變量監(jiān)視表)是比較常用的,功能也很強,能監(jiān)視又能強制修改,編輯好后可以長期保存,看看STEP7自帶的的例子就知道了,都提供了變量表.因為太常用,我就不多說了,嘿嘿...
作用 : 變量監(jiān)視/強制修改 調(diào)用方法 : 主菜單 > Insert > s7 Block > Variable Table
(2) CPU Message/Diagnostic Buffer
這兩者的作用差不多,都是從PLC中的Diagnostic Buffer(診斷緩沖區(qū))中提取診斷信息.區(qū)別在于前者象一個日志而后者直接顯示了PLC診斷緩沖區(qū)中的內(nèi)容. 如果你的程序已經(jīng)下載到了PLC中,但一開機就SF(system failure)紅色LED燈就亮了,或是程序一開始運行良好,也不知道什么時候就down機了(噢,太可怕了).先別急,看看Diagnostic Buffer中的信息吧,她會告訴你什么時候,哪個Block出了什么錯誤,比如某個FB塊忘了下載了(汗) 當然,更深入的分析需要用其他手段跟蹤
調(diào)試了.
作用 : 錯誤診斷/定位
調(diào)用方法 : 主菜單 > PLC >CPU Message...
主菜單 > PLC >Diagnostic/Setting >Module Information > Diagnostic Buffer
(3) Reference Data
根據(jù)你編寫好的程序,STEP7程序會通過統(tǒng)計分析得出一堆數(shù)據(jù),于是我們可以通過相應的視圖分析:變量的使用狀況,程序結(jié)構(gòu),內(nèi)存占用情況,沒用到的symbol和程序中只有絕對地址沒有symbol名的M點.偶認為一個比較大的程序?qū)懲曛?應該調(diào)用reference Data審視一番,做到心中有數(shù),這是一個好的習慣.另外,cross reference可以對變量跟蹤定位,在引用表上雙擊變量名,程序就顯示相應的位置. 有些Bug也可以從Reference Data 表格中嗅出來。總之,善于利用此類統(tǒng)計信息對程序分析大有好處.
作用 : 靜態(tài)統(tǒng)計分析
調(diào)用方法 : 主菜單 > Options >Reference Data...
(4) STL單步調(diào)試/PLCSIM (仿真器)single scan(單循環(huán))調(diào)試
這兩種手段本來沒多大聯(lián)系,但它們都屬于細粒度的動態(tài)調(diào)試方法,因此就列在一塊兒了,它們用于對付比較堅硬的BUG,還有就是對分析別人的STL程序有點兒用.
作用 : 細粒度動態(tài)跟蹤調(diào)試
調(diào)用方法 : STL設斷點的條件比較嚴格:
1.在 LAD/STL/FBD編輯器菜單中選擇Debug>Operation>test operating
2.LAD/STL/FBD編輯器處于ONLINE狀態(tài)
3.視圖必須切換至STL語言
仿真器single scan的激活方法太簡單--有工具條,就不說了。