S7-200系列PLC與監控計算機通信實現的研究
摘要:針對控制系統中上位機與S7-200系列PLC通信的實際問題,總結了幾種監控計算機與S7-200系列PLC的通信方法,這幾種方法在不同的控制系統中能較好解決監控計算機與S7-200系列PLC通信問題。
1 引言
西門子工控產品在工控領域應用市場中有較高的占有率,S7-200系列PLC是西門子SIMATIC PLC家族中的成員之一,在西門子工控領域應用中占有重要地位。S7-200系列PLC體積小,軟硬件功能強大,系統配置方便,由它組成的系統可以與強大的Profibus現場總線相連接。它一推向市場就在各行各業得到了廣泛應用。但是在實際工程應用中遇到了監控計算機與S7-200系列PLC通信問題。由于西門子公司S7-200系列PLC比監控組態軟件WinCC推出晚,因此WinCC中沒有集成S7-200系列PLC的通信驅動程序;S7-200系列PLC的通信協議也不公開,應用第三方軟件編制監控程序也有問題。這些問題給S7-200系列PLC的應用帶來了一定的限制,為了解決這個實際工程問題,作者做了一些研究,本文就S7-200系列PLC與監控計算機通信問題研究結果展開討論。
2 S7-200系列PLC監控的主要方法
在大多數控制系統中,僅僅是實現控制是不夠的,在許多情況下也需要組態監控界面對系統進行監控。通過監控可以增加人機交互的能力,使操作人員實時地監控系統工作情況并使系統操作變得方便。
對S7-200系列PLC組成的控制系統進行監控一般有三種方法:組態軟件監控、第三方軟件編制的監控軟件監控、觸摸屏監控。
用組態軟件WinCC實現監控,功能強大,靈活性好,可靠性高。但軟件價格高,并需要解決WinCC與S7-200系列PLC的通信問題。在復雜控制系統中可以采用此方法。
用第三方軟件編制的監控軟件實現監控,靈活性好,系統投資低,能適用于各種系統。但開發系統工作量大、可靠性難保證,對技術人員的經驗和技術水平的要求高,還必須購買通信協議軟件。在系統資金投資有限,技術人員水平較高的情況下可以采用此方法。觸摸屏進行監控,可靠性高,監控實現容易,觸摸屏與PLC之間的通信問題生產廠商已處理好,用戶不用考慮通信問題,可以大大縮短工程周期。但靈活性一般,功能有限,不能滿足復雜控制系統的監控要求,而且價格高。在系統可靠性要求高、工期短的情況下可以采用此方法。
3 WinCC組態軟件與S7-200系列PLC的通信
SIMATIC WinCC采用了最新的32位技術的過程監控軟件,具有良好的開放性和靈活性。無論是單用戶系統,還是冗余多服務器/多用戶系統,WinCC均是較好選擇。通過ActiveX,OPC,SQL等標準接口,WinCC可以方便地與其它軟件進行通信。WinCC與S7-200系列PLC的通信,可以采用PPI和Profibus兩種通信協議之一進行。
1、WinCC與S7-200系列PLC通過Profibus協議進行通信的實現
(1)軟硬件要求:
* PC機 ,Windows 98操作系統;
* S7-200系列PLC;
* CP5412板卡或者其他同類板卡,例如:CP5611,CP5613;
* EM277 Profibus DP模塊;
* Profibus 電纜及接頭;
* 安裝CP5412板卡的驅動;
* 安裝WinCC 4.0或以上版本;
* 安裝COM Profibus軟件。
硬件連接如圖1。
(2)組態
打開SIMATIC NET\COM Profibus,新加一個組態,主站為SOFTNET-DP,從站是EM277 Profibus-DP。主站的地址選擇從1到126。從站的地址選擇從3到99,與EM277的地址一致。然后用該軟件對從站進行配置:打開從站屬性,在Configure選項中,選擇8bytes in/8bytes out(可根據實際需要選定)。在Parameterize中可以選擇偏移地址,地址對應于S7-200系列PLC的數據區(即V區),默認為0,即從VB0開始。組態完成后,導出(Export)NCM文件,生成*.txt和*.ldb文件。
(3)設置PG/PC interface。
在Access Point of the Application中選擇CP_L2_1,在Interface Parameter Assignment 選擇CP5412A2(Profibus)。在屬性里的激活DP協議,并在DP-Database參數中輸入*.ldb文件的完全路徑。設置完成后可以診斷硬件配置是否正確、通信是否成功。
(4)WinCC的設置。
在WinCC變量管理器中添加一個新的驅動程序,新的驅動程序選擇PROFIBUS DP.CHN,選擇CP5412(A2)Board 1,在System Parameters設定參數。CP5412(A2)board 參數為1,表示板卡的編號;Config參數為組態時生成的*.txt文件的完全路徑;Watchdog time 參數為0。新建一個連接,從站地址與EM277的地址一致。
(5)建立變量。
WinCC中的變量類型有In和Out。In和Out是相對于主站來說的, 即In表示WinCC從S7-200系列PLC讀入數據,Out表示WinCC向S7-200系列PLC寫出數據。In和Out與數據存儲區V區對應。在該例中,Out與PLC中數據存儲區的VB0~VB7對應,In與PLC中的存儲區的VB8~VB15對應。
(6)優缺點。
優點:該方法數據傳輸速度快,易擴展,實時性好。缺點:傳送數據區域有限(最大64字節),在PLC中也必須進行相應的處理,且硬件成本高,需要的CP5412、EM277 Profibus-DP、Profibus總線等硬件,還需要Com Profibus軟件。應用場合:適用于在要求高速數據通信和實時性要求高的系統。
2、WinCC與S7-200系列PLC通過PPI協議進行通信的實現。
PPI協議是西門子S7-200系列PLC常用通信協議,但WinCC中沒有集成該協議,即WinCC不能直接監控S7-200系列PLC組成的控制系統。S7-200 OPC Server是西門子公司推出的專為解決上位機監控S7-200系列PLC控制系統的接口軟件。因此,WinCC可以通過該軟件與S7-200系列PLC很方便的建立通信。
(1)軟硬件要求:
* PC機 ,Windows 98操作系統;
* S7-200系列PLC。
* PC/PPI電纜。
* 安裝S7-200 OPC Server 軟件。
* 安裝WinCC 4.0軟件。
(2)連接:
在控制面板中設定PG/PC接口參數。在Access Point of the Application中選擇Computing,Interface參數選擇PC/PPI Cable。
在WinCC變量管理器中添加一個新的驅動程序,新的驅動程序選擇OPC.CHN,在OPC GROUP中新建一個連接,打開屬性,選擇 OPC Group Setting,OPC服務器名稱為OPCServer.MicroComputing。然后在新添加的連接中新建變量,變量的Item Name與S7-200系列PLC中用于監控的變量名對應。例如:Item Name為M0.0。
(3)優缺點
優點:該方法連接簡單、硬件投資少、可以讀寫S7-200系列PLC中所有存儲區域。缺點:通信速度比較慢、需要OPC軟件及相應授權、系統擴展不方便。應用場合:用于低速、實時性要求不高、系統投資資金有限的系統。
另外,也可以通過其他公司的OPC軟件進行通信,例如用開普的KEPServerEx作為OPC服務器,用WinCC作為OPC客戶端來讀寫S7-200系列PLC內部數據區。實現與上述第二種方法類似,不同的是必須在OPC服務器中建立標簽與S7-200系列PLC中存儲地址對應。
在復雜系統中,如果系統中同時有S7-200系列PLC和S7-300系列PLC存在,S7-200系列PLC一般作為S7-300系列PLC的從站掛到Profibus總線上,WinCC通過S7-300系列PLC對S7-200系列PLC進行監控。
4 第三方軟件與PLC的連接
有些系統具有特殊性,沒有現成的通用軟件用于進行數據處理和系統監控,這就需要用戶用第三方軟件開發平臺開發滿足系統要求的監控軟件。這樣做既可以滿足系統要求,又可以節約系統投資。但對軟件開發人員的經驗和技術要求較高。
第三方軟件開發平臺開發的監控軟件與S7-200系列PLC通信使用PPI協議的接口軟件有:Prodave、MicroComputing、OPC。
第三方軟件開發平臺開發的監控軟件與S7-200系列PLC通過自由口進行通信,協議自定的話,開發的監控軟件可以調用MSComm控件實現兩者的通信。
1、用Prodave軟件包實現通信連接
Prodave是西門子公司推出的專門用于西門子PLC產品(S7-200、300、400系列PLC)與PC/PG進行數據交換處理的軟件包。Prodave在*.DLL或*.LIB文件中集成了數據交換的函數。在自行開發的監控軟件中可以方便地調用該軟件中的各種函數。
主要函數有:
(1)load_tool PC機與PLC系統初始化鏈接;
(2)unload_tool 斷開PC機與PLC系統鏈接;
(3)以及讀寫PLC內部存儲區的函數。
監控軟件通過讀寫函數可以方便監控PLC控制系統。
2、用MicroComputing軟件實現通信連接
安裝MicroComputing后,在VB或Delphi中可以直接插入控件。可插入的控件主要有:Data controls、Edit controls、Button controls、Label controls、Slider control。
3、用OPC Server軟件實現通信連接
安裝S7-200 OPC Server軟件后,在操作系統中將增加一個OPC服務器,服務器的名字是“OPCServer.Computing”。VB或Delphi中可編寫OPC客戶端程序與OPC服務器通信。
以下給出在VB開發環境下編寫OPC客戶端程序的過程:首先在VB開發環境中的Project\References中添加OPC Automation 2.0,然后編寫連接OPC Server、添加組、添加條目、讀寫數據的程序。
使用到的函數如下:
connect函數:與OPC Server建立連接;
OPCGroups.Add函數:添加組;
OPCITems.Additems函數:添加條目;
SyncRead函數:同步讀;
SyncWrite函數:同步寫。
OPC 服務器名為“OPCServer.Computing”, 條目名稱與S7-200系列PLC中用于監控的變量名對應。
4、用自由口實現通信連接
在VB或Delphi下插入MSComm控件,按照自定協議通過串口來收發數據,并對數據進行處理并實現監控。
在PLC中也必須編寫通信程序,流程如下。
5、優缺點總結:
用Prodave,實現簡單,靈活性較好,可以直接調用Prodave的函數對S7-200系列PLC內部存儲區進行讀寫,并能滿足大規模數據的傳輸,調試簡單,很適合在工程中應用。但需要購買軟件,編程較復雜。
用MicroComputing,使用方便,編程以控件實現,編寫簡單。但靈活性差,并需要購買軟件和授權。
用OPC實現通信,編程靈活也較簡單,調試簡單,由于OPC協議是通用協議,得到了許多公司支持,通用性好。但需要購買軟件及授權。
用自由口通信實現,通信協議自己制定,靈活性好,擴展了使用范圍,不需購買專門軟件。但編程復雜, PLC中要編寫復雜的程序,使用了大量PLC的資源。VB或Delphi中用MSComm控件對串口進行讀寫,程序復雜,實時性較差。
5 結束語
以上面給出了6種監控計算機與S7-200系列PLC通信實現方法,它們各有優缺點,適用于不同情況下的監控控制系統。研究證明,以上6種方法對不同要求的系統能較好的實現監控計算機與S7-200系列PLC通信,對工程實踐有較高的參考價值。
文章版權歸西部工控xbgk所有,未經許可不得轉載。