

摘要:本文介紹了PROFIBUS現場總線技術的特點并結合SIEMENS公司的S7-300 PLC、通訊模塊CP342-5 及ET200M等相關產品組建PROFIBUS-DP網絡。討論了該網絡的組態、STEP 7程序的編制以及現場設備GSD文件的建立方法,并詳細討論了PROFIBUS-DP主從站數據交換的實現方法。
關鍵詞:PROFIBUS-DP網絡;通訊;可編程序控制器;網絡組態
1 引言
PROFIBUS是近年來國際上最為流行的現場總線,也是目前數據傳輸率最快的一種現場總線(傳輸率可達12Mbit/s),因此在很多領域內得到了廣泛的應用。它由三個兼容部分組成,即PROFIBUS-DP、PROFIBUS-PA和PROFIBUS-FMS。其中,PROFIBUS-DP在數據傳輸速率、效率和低連接成本方面特別適用于自動化系統與分散外圍設備之間的通信。使用PROFIBUS-DP可取代24V(DC)或4~20mA信號傳輸。
PROFIBUS-DP用于現場的快速數據交換時,以中央自動化設備(如PLC/PC或過程控制系統)為主站,通過串行連接與分散的現場設備(如I/O、驅動器和閥門及測量變送器)組成通信網絡。主站周期地讀取從站的輸入信息并周期地向從站發送輸出信息,也可利用PROFIBUS-DP提供擴展的非循環通信服務,用于智能現場設備的參數化、診斷、操作監控和報警處理等,通信方式靈活方便。
2 基于PROFIBUS-DP的主站和從站的通訊
2.1 硬件部分
在綜合分析PROFIBUS-DP網絡各種典型配置后,本文構建的PROFIBUS-DP網絡如下:以研華工控機(插有SIEMENS公司的CP5613通訊卡)作為上位機及一類主站;以S7-300 PLC作為智能從站,為具典型性兩個從站選用不同的配置,從站1的CPU為CPU315-2DP(帶集成的DP接口)不需要DP通訊模塊,從站2的CPU為CPU314(不帶DP接口)需要通訊模塊CP342-5 ;以ET200M作為從站1的遠程I/O從站(選用IM153-1接口模塊),用于采集現場數據。以上設備通過PROFIBUS專用電纜連接到PROFIBUS-DP網絡上。PROFIBUS總線連接器上帶有終端電阻,在網絡的終端站點需要將終端電阻開關設置為“ON”,網絡的中間站點需要將終端電阻開關設置為“OFF”。
2.2 軟件部分
2.2.1 網絡組態
使用STEP 7或PROFIBUS專用組態軟件COM PROFIBUS均能方便實現網絡的組態,但只有STEP 7能對PLC模塊編程,因此在較為復雜的應用系統中推薦使用STEP 7軟件。上位機中裝有SIMATIC STEP 7 及SIMATIC NET 軟件。SIMATIC NET用于驅動CP5613通訊卡,設置OPC接口,并組態及監控網絡。
PROFIBUS-DP網絡的配置相當靈活,網絡允許單子網或多子網配置,既可以單主-從網絡,又可多主-從網絡。用STEP 7進行網絡組態時,首先要把設備的GSD文件安裝到STEP 7硬件庫中,然后才能夠在STEP 7的硬件目錄中找到該設備,從而實現對其進行組態。因此,掌握GSD文件的編寫是非常重要的。
GSD文件是設備數據庫文件,為了將不同廠家的PROFIBUS產品集成在一起,必須以GSD文件方式提供這些產品的功能參數。GSD文件包括三個部分:總體說明(廠商和設備名稱、軟硬件版本、支持的波特率等)、DP主設備相關的規范(如可連接從設備的最多臺數或卸載能力)、從設備相關的規范(如I/O通道的數量和類型、診斷測試的規格及I/O數據的一致性信息)。編寫GSD文件既可以使用PROFIBUS專用的GSD文件編輯軟件,也可以直接在一般的文檔編輯軟件(如Windows附件中的寫字板)中編寫。下面介紹的示例有利于讀者掌握GSD文件的編寫,其中“;”后面為注釋語句。
#Profibus_DP ;DP設備的GSD文件均以此關鍵字開頭
GSD_Revision=1 ;GSD文件版本號
Vendor_Name=“SIEMENS” ;設備制造商
Model_Name=“Modular I/O Station” ;DP設備名稱
Revision=“V1.0” ;DP設備版本號
Ident_Number=0x0032 ; DP設備識別號
Protocol_Ident=0 ;協議類型(0表示DP協議)
Station_Type=0 ;站類型(0表示DP從站,1表示DP主站)
FMS_Supp=0 ;不支持FMS,純DP從站
Hardware_Release=“V1.0” ; DP設備硬件版本
Software_Release=“V1.0” ; DP設備軟件版本
9.6_Supp=1 ;設備所支持的波特率,1為支持
19.2_Supp=1
MaxTsdr_9.6=60 ; 9.6kbps波特率時的最大從站延遲時間(單位ms)
MaxTsdr_19.2=60
Redundancy=0 ;是否支持冗余傳輸方式,0為不支持
Implementation_Type=“Software Solution” ; DP設備的實現方案
Freeze_Mode_Supp=1 ;是否支持鎖定模式,1為支持
Syn_Mode_Supp=1 ;是否支持同步模式,1為支持
Auto_Baud_Supp=0 ;是否支持自動識別波特率,0為不支持
Max_User_Prm_Data Len=5 ;用戶參數數據最大長度(0-237)
Min_Slave_Intervall=10 ;最小從站輪詢時間,10表示最小輪詢時間為1ms
Modular_Station=1 ;DP設備的類型,0為緊湊型,1為模塊型
Max_Diag_Data_Len=10 ;診斷信息的最大長度(6-244)
Slave_Family=3 ;從站類型,3為I/O型
Module=“2 Byte In, 2 Byte Out”0x11,0x21 ;DP站的輸入輸出接口描述
EndModule
本系統由SIEMENS公司STEP 7軟件組成的網絡配置如圖1。系統具體配置過程如下:
1) 通過STEP 7組態網絡,設置網絡波特率、主從站地址,給從站模塊在主站內存區分配映射緩沖區,確定映射區起始地址及大小。
2)注意組態ET200M接口模塊IM153-1的站地址必須與IM153-1上撥碼開關設定的站地址相同。
3) 在“Set PG/PC Interface”中將CP5613的MPI改為PROFIBUS接口,并設置CP5613的傳輸速率與已組態的PROFIBUS網絡的傳輸速率一致。
4) 在STEP 7軟件診斷模式下測試整個網絡,查看從站激活情況。
5) 硬件組態完成后下載至CPU中。
2.2.2 通訊編程
對網絡編程主要目的是配置數據輸入/輸出通道緩沖區,建立CPU與現場設備之間的聯系通道。SIMATIC 300系列CPU提供的數據存貯區域有3類:位存儲區、過程映像區和數據塊區。在數據流量較小的場合使用位存儲區和輸入/輸出映像區能夠建立CPU與外設的直接快速連接;當數據流量較大時,使用數據塊存儲區可以保證數據流通不紊亂。
PROFIBUS-DP主站建立網絡,經初始化啟動PROFIBUS-DP從站,主站將參數賦值信息和I/O配置寫入到從站,然后主站從從站讀取診斷信息,并驗證從站已接收參數和I/O配置,接著主站開始與從站交換I/O數據。如有例外事件,從站會通知主站,然后主站從從站讀取診斷信息。
對于從站1(使用CPU上集成的DP接口),對應的通信接口區是主站的I區和Q區,需要調用SFC14“DPRD_DAT”來讀取PROFIBUS從站的數據,調用SFC15“DPWR_DAT”將數據寫入PROFIBUS從站。SFC14及SFC15程序如下,其中“;”后面為注釋語句。
CALL"DPRD_DAT"
LADDR: = W#16#0 ;輸入區起始地址
RET_VAL: = MW2 ;狀態字
RECORD: = P# I0.0 BYTE 10 ;輸入數據區,最大240字節
CALL"DPWR_DAT"
LADDR: = W#16#0 ;輸出區起始地址
RECORD: = P# Q0.0 BYTE 10 ;輸出數據區,最大240字節
RET_VAL: = MW4 ;狀態字
對于從站2(使用CP342-5通訊模塊),它與CPU上集成的DP接口不一樣,對應的通信接口區不是主站的I區和Q區,而是主站的虛擬通信區,須調用FC1“DP_SEND”來發送數據,調用FC2“DP_RECV”接收數據。FC1及FC2程序如下,其中“;”后面為注釋語句。
CALL"DP_SEND"
CPLADDR: = W#16#100 ;CP模塊的起始地址
SEND: = P# M10.0 BYTE 10 ;發送數據存儲區
DONE: = M1.0 ;發送完成一次產生一個脈沖
ERROR: = M1.1 ;錯誤位
STATUS: = MW2 ;調用FC1時產生的狀態字
CALL"DP_RECV"
CPLADDR: = W#16#100 ;CP模塊的起始地址
RECV: = P# M50.0 BYTE 10 ;接收數據存儲區
NDR: = M1.2 ;接收完成一次產生一個脈沖
ERROR: = M1.3 ;錯誤位
STATUS: = MW4 ;調用FC2時產生的狀態字
DPSTATUS: = MB6 ;PROFIBUS-DP的狀態字節
FC1(對于從站1為SFC15)用于將數據從DP主站傳送到DP從站,FC2(對于從站1為SFC14)用于將數據從DP從站傳送到DP主站。在編制程序時,必須保證在每個主程序循環(OB1)中FC1和FC2至少被調用一次,以保證程序正確執行。程序結構如圖2所示。
將整個項目分別下載到主站和從站的CPU中,系統正常啟動后,可以進行DP主站和從站的通訊。
3 結束語
本文結合具體的實驗系統介紹了實現PROFIBUS-DP網絡主從通訊的具體方法,并已通過實驗證明該系統通信穩定、可靠,取得了良好的控制效果。在本文所論述方法的基礎上,通過修改應用程序可以很好的滿足實際工程中主從站數據通訊及主站對從站的監控等要求,具有廣泛的通用性和實用參考價值。由于PROFIBUS-DP的協議開放、實時性好,數據傳輸速度快,系統實現簡單,可靠性高,符合現代工業網絡發展的趨勢,必將在未來一段時間內得到廣泛的應用。
本文作者創新點:本文根據目前工業實際生產中PROFIBUS-DP網絡通訊采用的各種實現方法,總結出了一套實現起來方便快捷、簡單易行的PROFIBUS-DP網絡通訊方法。本文深入淺出、條理清晰、內容完整并配有例圖與程序,詳細敘述了PROFIBUS-DP網絡通訊的設計與實現方法。同時在本文所論述方法的基礎上,只需修改應用程序就可以很好的滿足實際工程的需要,具有廣泛的通用性和實用參考價值。
參考文獻
[1] 崔堅,西門子工業網絡通訊指南,機械工業出版社,2005.
[2] 潘笑,潘婧,基于PC的PROFIBUS-DP監控系統設計,微計算機信息,2005年第21卷第9-1期17-18頁.
[3] SIEMENS Device Description Data Files GSD,2002.
[4] SIEMENS Corporation.Fieldbus Technology Handbook on PROFIBUS-DP[M],1999.
Biography:
Wangyichao, 1984, male, han, engineer, Engage in the electricity automation technique .
作者簡介:
王沂超(1984—)男,漢,工程師。主要從事電氣自動化技術工作