摘 要:對于新設計的PLC控制系統,直接在實際的系統中進行用戶程序調試有很大的風險,PLC某個錯誤的輸出信息會導致設備的損壞甚至危及工作人員的人身安全。提出一種采用S7-PLCSIM進行仿真調試的方法。S7-PLCSIM可以在計算機上對S7-300/400 PLC的用戶程序進行離線仿真與調試,在程序開發階段發現和排除錯誤,優化程序,調試效果好,使用方便、安全,并可降低試車的費用。
關鍵詞:S7-PLCSIM;S7-300/400可編程序控制器;程序調試;安全
Application of S7-PLCSIM in Program Debugging of SIEMENS S7-300/400 PLC
HANG Weiguo
(Qingdao Ocean Shipping Mariners College,Qingdao,266071,China
Abstract: A wrong output of PLC maybe result in damage of equipment and even endanger the safety of the operator,so it is dangerous to a new PLC system to debug your program on an actual system.S7-PLCSIM is introduced for simulate program debugigng.S7-PLCSIM can simulate and debug the program of S7-300/400 PLC offline.With the simulated S7 PLC,you can debug programs to find and modify mistake,optimize your programs.S7-PLCSIM is an effective,safety and convenient mode for PLC program debugigng.It can also reduce the expense of system test.
eywords:S7-PLCSIM;S7-300/400 PLC;program debugging;safety
1 引 言
可編程序控制器是新一代的通用型工業控制設備,因其使用方便、適應性強、可靠性高和極高的性能價格比等特點在工業生產的各個領域得到廣泛應用。可編程序控制器的強大功能是通過軟件編程來實現的,要實現一項控制任務事先要給PLC編制用戶程序。對于比較復雜的控制任務,程序編制過程中往往會出現一些缺陷和錯誤,因此,PLC的用戶程序設計好后需進行運行調試。
PLC的用戶程序一般在硬件PLC進行調試,但有時程序設計好之后,硬件PLC尚未購買或控制設備不在本地,這對程序調試和修改帶來不便。對于某些控制系統,直接在實際的系統中進行程序調試有很大的風險,PLC某個錯誤的輸出信息會導致機損事故甚至危及工作人員的人身安全。對于西門子S7-300/400 PLC,可利用S7-PLCSIM仿真軟件進行程序調試,從而避免上述問題。
通過S7-PLCSIM仿真調試,可以在程序開發階段發現和排除錯誤,從而提高用戶程序的質量和降低試車的費用。
2 S7-PLCSIM仿真軟件的主要功能
S7-PLCSIM是一個功能非常強大的仿真軟件,它與STEP7編程軟件集成在一起,可以在計算機上對S7-300/400 PLC的用戶程序進行離線仿真與調試,而不需要連接任何PLC的硬件。
S7-PLCSIM仿真軟件可通過仿真窗口模擬PLC的輸入/輸出存儲區,改變輸入變量ON/OFF狀態、控制程序運行,監視程序運行結果。程序模擬運行過程中,可實現定時器、計數器的監視與修改,可對位存儲器(M、外設輸入/輸出(PI/PQ變量區以及存在數據塊中的數據進行讀/寫操作。與實際PLC一樣,S7-PLCSIM可以使用變量表和程序狀態等方法來監視和修改變量。
另外,S7-PLCSIM仿真軟件可以對大部分組織塊(OB、系統功能塊(SFB和系統功能(SFC仿真,包括對許多中斷事件和錯誤事件仿真。
3 S7-PLCSIM的視圖對象
S7-PLCSIM用仿真PLC來模擬實際PLC的運行,用戶程序的調試是通過視圖對象來進行的。S7-PLCSIM提供了多種視圖對象,用它們可以實現對仿真PLC內的各種變量、計數器和定時器的監視與修改。
PLCSIM的視圖對象包括CPU視圖對象、輸入變量視圖對象、輸出變量視圖對象、位存儲器視圖對象、定時器視圖對象、計數器視圖對象、通用變量視圖對象和垂直位變量視圖對象等。CPU視圖對象是在打開PLCSIM窗口時自動形成,其他視圖對象要在仿真PLC窗口通過Insert菜單生成。
3.1 CPU視圖對象
圖1中標有“CPU”的小窗口是CPU視圖對象。在CPU視圖對象中,可以用單選框選擇仿真PLC的RUN、STOP、RUN-P模式,分別由指示燈指示。用鼠標點擊CPU視圖對象上MRES按鈕可以復位仿真PLC的存儲器,刪除程序塊與硬件組態信息,CPU將自動進入STOP模式。指示燈“SF”表示有硬件、軟件錯誤;“DC”表示電源通斷情況;“DP”表示通信狀態。
3.2 其他視圖對象
輸入變量、輸出變量、位存儲器視圖對象可以對PLC的輸入、輸出映像區和內部存儲區的狀態進行模擬與監視。在插入的視圖對象中輸入存儲區地址,即可顯示存儲區地址及存儲區數據狀態,可選的數據顯示格式有位、二進制、10進制、16進制等。對于視圖對象中存儲區地址的顯示,可以采用絕對地址,也可以采用符號地址。垂直位視圖對象可以用絕對地址或符號地址來監視和修改I,Q,M等存儲區。通用變量視圖對象使用更靈活,可用于訪問包括數據塊在內仿真PLC所有的存儲區。其數據的顯示與修改與上述輸入變量等視圖對象類似。
定時器視圖對象和計數器視圖對象分別用于定時器和計數器的監視。在插入的計數器視圖對象輸入計數器號,則計數器啟動時,計數器的計數值可以通過視圖對象顯示出來。在插入的定時器視圖對象窗口輸入定時器號,定時器啟動時可顯示此定時器的時間值及時基。通過仿真窗口的Execute菜單命令可以停止定時器計時或手動復位定時器。定時器、計數器視圖對象可以以二進制、10進制,16進制和BCD碼、S5Time等格式進行數據顯示。
另外,通過仿真窗口的View菜單命令還可以監視累加器、寄存器和狀態字各位的狀態。
4 S7-PLCSIM仿真軟件的掃描方式
S7-PLCSIM有2種掃描方式:單次掃描和連續掃描。掃描方式可用Execute菜單命令設置。
若采用單次掃描,CPU執行一次掃描后處于等待狀態,可用Execute→Next Scan菜單命令執行下一次掃描;若采用連續掃描,與實際PLC相同,連續執行用戶程序。
5 使用S7-PLCSIM仿真軟件調試程序的實例
下面以一臺電動機的S7-300PLC控制程序為例,介紹用S7-PLCSIM調試程序的方法。
5.1 電動機的控制功能及控制程序
按下開機按鈕I4.0,Q4.0變為1狀態,電動機串電阻降壓起動,同時定時器T1開始計時。9 s后定時時間到,Q4.1變為1狀態,起動電阻被短接,電動機全壓運行。MW10中的電動機實際電流與程序中的電流限值(1.1倍額定電流)比較,電流過載時定時器T2啟動,延時20s使Q4.2變為0狀態,停止電動機運行。按下停機按鈕I4.1,Q4.0 和Q4.1變為0狀態,停止電動機運轉。實現上述功能的STL程序如下:
5.2 程序調試前的準備
(1) 在STEP7中創建上述用戶程序。
(2) 點擊STEP7的SIMATIC管理器工具條中的“Simulation on/off”按鈕,或執行菜單命令Options→Simulate Modules,打開S7-PLCSIM窗口,窗口中自動出現CPU視圖對象。與此同時,自動建立了STEP7與仿真CPU的連接。
(3) 執行菜單命令Execute →Scan→ Continuous或點擊“Continuous Scan”按鈕,令仿真PLC的掃描方式為連續掃描。
(4) 在SIMATIC管理器執行菜單命令PLC→Down Load,將塊對象下載到仿真PLC。
(5) 利用Insert菜單創建輸入字節IB4、輸出字節QB4、存儲字MW10、定時器T1、T2的視圖對象。如要在仿真軟件中使用符號地址,使用菜單命令Tools →Option→Attach Symbols,在出現的Open對話框的電動機控制程序對象中找到并雙擊Symbols圖標,則符號地址可以在視窗中顯示.。如圖1中,“起動”為I4.0的符號地址,“停止”為I4.1的符號地址,“過載”為Q4.2的符號地址,“電流”為MW10的符號地址。
5.3 程序的調試過程
(1) 電動機的起動
用鼠標點擊I4.0(起動)單選框,點擊1次,出現符號“√”,表明輸入狀態“ON”,再點擊1次,符號“√”消失,表明輸入狀態“OFF”,這相當于按下啟動按鈕一次。I4.0輸入“ON”后,可觀察到輸出Q4.0位的單選框出現符號“√”,表明輸出“ON”,即電動機開始降壓起動。同時定時器T1從900開始倒計時,時基為10 ms,即延時9 s。9 s延時時間到,QB4.1位的單選框出現符號“√”,表明輸出“ON”,即電動機全壓運行。
降壓起動如圖1所示。
(2) 電動機的電流監視
MW10為PLC采集的電動機的實際電流經A/D轉換后的模擬值,顯示格式設定為10進制。MW10中值與程序中設定的電流過載限值(1450)相比較,當MW10中值大于1 450時,定時器T2啟動,從200開始倒計時,時基為100 ms,即延時20 s。20 s延時時間到,QB4.2位的單選框出現符號“√”,表明輸出“ON”, 則Q4.0 和Q4.1單選框符號“√”消失,即輸出變為“OFF”狀態,停止電動機運轉。可通過修改MW10數據區的數據來模擬電動機電流變化,方法是從MW10視圖對象數據區直接輸入數據并按確認鍵。圖2是MW10值修改為1452時的程序運行狀態,圖3是20 s延時時間到,停止電動機運轉時的輸出狀態圖。
(3) 電動機的停機
用鼠標點擊I4.1單選框,出現符號“√”,再點擊一次,符號“√”消失,這相當于按下停機按鈕1次。可觀察到輸出Q4.0 和Q4.1位立即變為“OFF”,電動機停止工作。
5.4 用程序狀態功能調試程序
在利用S7-PLCSIM仿真過程中,可以使用變量表和程序狀態等方法來監視和修改變量,其監視方法與實際PLC類似。例如要利用程序狀態功能監視程序的執行情況,可以在PLC仿真運行時打開邏輯塊,用菜單命令Debug>Monitor就可進入在線監控狀態(如圖4所示)。其顯示方式與實際PLC完全一致,這里不再詳述。
6 結 語
使用S7-PLCSIM調試用戶程序,不需要硬件連接,使用方便、安全;通過S7-PLCSIM對用戶程序進行調試和故障診斷,可以在程序開發階段發現和排除錯誤,提高用戶程序的質量從而降低試車的費用;S7-PLCSIM也是學習S7-300/400編程的有力工具。
參 考 文 獻
[1]廖常初.S7-300/400 PLC應用技術[M].北京:機械工業出版社,2005.
[2]SIEMENSSIMATIC S7-PLCSIM V5.2 User Manual2002.
[3]張有鳳,王欽若,司小平.PLC在水下電弧控制系統中的應用[J].國外電子元器件,2006,11:66-69.
[4]何獻忠.用VB 6.0實現計算機對S7-200 PLC的實時監控[J].現代電子技術,2007,30(7:189-190