摘要:本文分析了PROFIBUS-DP現(xiàn)場總線的基本特性和通訊協(xié)議,介紹了一種基于赫優(yōu)訊嵌入式模塊COM-C的PROFIBUS-DP主站系統(tǒng)的設(shè)計方案,并在DCS系統(tǒng)中成功應(yīng)用。目前,該系統(tǒng)已投入現(xiàn)場運行,穩(wěn)定可靠,取得很好的實效。
關(guān)鍵字:PROFIBUS-DP主站;現(xiàn)場總線;DCS系統(tǒng);嵌入式模塊
[align=center]The design of PROFIBUS-DP Master system based on Hilscher embedded module
ZHANG Xiao-gang, DENG Wu-peng
(1. Zhejiang SUPCON Technology Co., Ltd, Hangzhou, 310053
2. Hilscher Gesellschaft für Systemautomation mbH Shanghai Representative Office, Shanghai, 200010)
張曉剛1,鄧梧鵬2
(1. 浙江中控技術(shù)股份有限公司 浙江 杭州310053;
2. 德國赫優(yōu)訊自動化系統(tǒng)有限公司上海代表處 上海 200010)[/align]
Abstract: This paper analyzes the character and protocol of PROFIBUS-DP, and introduces one solution of PROFIBUS-DP Master system based on Hilscher embedded module, which is applied in DCS successfully. The system runs steadily on the field, and gets good feedback from customers.
Key words: PROFIBUS-DP Master, Fieldbus, DCS, Embedded module
0 引言
現(xiàn)場總線是當今自動化領(lǐng)域技術(shù)發(fā)展的熱點之一,被譽為自動化領(lǐng)域的計算機局域網(wǎng)。它的出現(xiàn),標志著工業(yè)控制技術(shù)領(lǐng)域又一個新時代的開始,并將對該領(lǐng)域的發(fā)展產(chǎn)生重要影響。
作為歐洲首屈一指的開放式現(xiàn)場總線PROFIBUS(Process Fieldbus)已經(jīng)被全世界所接受,成為國際化的開放式現(xiàn)場總線標準,并在中國發(fā)展迅速,廣泛應(yīng)用于加工制造、過程等自動化領(lǐng)域中。
目前,越來越多的國內(nèi)自動化設(shè)備制造商都已開發(fā)出了帶有PROFIBUS從站接口的設(shè)備,并在市場上獲得廣泛的認可。然而,自主開發(fā)的帶有PROFIBUS主站通訊接口的設(shè)備卻很少。本文介紹了一種基于嵌入式模塊COM-C的PROFIBUS-DP主站系統(tǒng)的設(shè)計方案,基于該方案設(shè)計的產(chǎn)品已經(jīng)在浙江中控的WebField ECS-100 DCS系統(tǒng)中得到成功應(yīng)用。
1 PROFIBUS-DP通訊協(xié)議
1.1 PROFIBUS的組成
PROFIBUS是由西門子公司推出的一種開放式現(xiàn)場總線標準,是德國標準(DIN19245)和歐洲標準(EN50170)的現(xiàn)場總線標準,并已納入國際標準IEC 61158中。它是一種具有廣泛應(yīng)用范圍的、開放的數(shù)字通信系統(tǒng),特別適用于工廠自動化和過程自動化領(lǐng)域。
PROFIBUS由相互兼容的三個部分組成,即PROFIBUS-FMS、PROFIBUS-DP、PROFIBUS-PA。
PROFIBUS-FMS:用于車間級通用的控制及通信任務(wù),是一個令牌環(huán)結(jié)構(gòu)、實時多主網(wǎng)絡(luò)。
PROFIBUS-DP:是一種高速且優(yōu)化的通信方案,主要用于實現(xiàn)現(xiàn)場級控制與分布式I/O及其他現(xiàn)場級設(shè)備之間的通信。
PROFIBUS-PA:專為過程自動化而設(shè)計,符合本征安全規(guī)范,適用于防爆區(qū)的應(yīng)用。
PROFIBUS這三層協(xié)議使其成為能夠提供制造業(yè)自動化、工程自動化、樓宇自動化以及電力自動化完整解決方案的唯一的現(xiàn)場總線系統(tǒng)。
1.2 PROFIBUS-DP
PROFIBUS-DP協(xié)議設(shè)計用于現(xiàn)場層的快速數(shù)據(jù)交換,中央可編程控制器(如,PLC、PC或過程控制系統(tǒng))通過快速串行連接與分散的現(xiàn)場設(shè)備(如,I/O、驅(qū)動器、閥門或變送器)進行通信。依據(jù)各種應(yīng)用領(lǐng)域的特殊需求,已經(jīng)用特殊功能逐步地擴展了DP的基本功能,目前有三種版本:DP-V0,DP-V1和DP-V2,每一種版本都有自己專用的關(guān)鍵特性,如圖1所示。版本的這種區(qū)別,主要反映了依據(jù)不斷增長的應(yīng)用需求而完成的規(guī)范工作的時間順序。
[align=center]

圖1 PROFIBUS-DP各版本的主要功能[/align]
DP-V0提供DP基本功能,包括循環(huán)的數(shù)據(jù)交換,以及站診斷、模塊診斷和特定通道的診斷。
DP-V1包含依據(jù)過程自動化的需求而增加的功能,特別是用于參數(shù)賦值、操作、智能現(xiàn)場設(shè)備的可視化和報警處理等的非循環(huán)的數(shù)據(jù)通信。此外,DP-V1有三種附加的報警類型:狀況報警,刷新報警和制造商專用的報警。
DP-V2包含主要根據(jù)驅(qū)動技術(shù)的需求而增加的其它功能。由于增加的功能,如等時同步從站模式和從站與從站通信等,DP-V2也可以被實現(xiàn)為驅(qū)動總線,用于控制驅(qū)動軸的快速運動時序。
2 PROFIBUS-DP主站系統(tǒng)設(shè)計
PROFIBUS是一種開放的標準,原則上,該協(xié)議可以在任何處理器上實現(xiàn)。目前,自動化廠商在開發(fā)PROFIBUS-DP主站設(shè)備時,主要有以下三種解決方案:
1. 軟PROFIBUS主站,該方案完全由軟件來實現(xiàn)PROFIBUS協(xié)議,由微處理器來運行完整的協(xié)議堆棧。該方案開發(fā)難度和開發(fā)風險都特別大,開發(fā)周期也長,而且需要開發(fā)人員對PROFIBUS協(xié)議、框架特別熟悉。產(chǎn)品開發(fā)出來后,需要送歐洲進行協(xié)議一致性測試和認證。
2. 專用ASIC芯片外加擴展固化程序Firmware,該方案是采用較多的一種,由專用的ASIC芯片實現(xiàn)PROFIBUS協(xié)議數(shù)據(jù)鏈路層的介質(zhì)訪問控制功能;而數(shù)據(jù)鏈路層的其他功能和應(yīng)用層的功能則由微處理器運行其擴展固化程序?qū)崿F(xiàn)。但是,目前國內(nèi)市場很難購買到Firmware,如果由用戶自己編寫Firmware則難度增加,開發(fā)周期也長,同樣需要送歐洲進行協(xié)議一致性測試和認證。
3. 嵌入式模塊主站,該方案是開發(fā)PROFIBUS-DP主站設(shè)備采用最多的一種,模塊內(nèi)部已經(jīng)集成專用的ASIC芯片和固化程序Firmware。該方案開發(fā)難度和開發(fā)風險都大大減少,開發(fā)周期縮減,并且協(xié)議已經(jīng)通過了一致性測試和認證。
本文采用的是第三種方案——嵌入式模塊主站,使用的是德國赫優(yōu)訊(Hilscher)自動化系統(tǒng)有限公司的嵌入式模塊COM-CN-DPM(PROFIBUS-DP Master),由該模塊實現(xiàn)PROFIBUS-DP主站協(xié)議,主機系統(tǒng)通過嵌入式模塊提供的雙端口內(nèi)存(Dual-Port Memory,DPM)接口與模塊進行數(shù)據(jù)通信,用戶不需要關(guān)心PROFIBUS協(xié)議的具體實現(xiàn),只需往DPM接口讀/寫數(shù)據(jù)就可以,因此,該模塊就像一個內(nèi)存,使用起來非常方便。
2.1 硬件設(shè)計
嵌入式模塊COM-CN-DPM提供給用戶的硬件接口有X1和X2兩個排針連接頭,X1連接頭(50根管腳),即雙端口內(nèi)存接口,包含與主機通信必備的控制線、數(shù)據(jù)線和地址線。X2連接頭(30根管腳),即現(xiàn)場總線接口,包含PROFIBUS信號線以及LED狀態(tài)指示燈。
嵌入式模塊COM-C與主機接口電路如圖2所示。由于PROFIBUS協(xié)議都由模塊內(nèi)部實現(xiàn),因此用戶應(yīng)用程序只需通過提供的API接口和訪問方式,對雙端口內(nèi)存進行讀/寫操作。通過現(xiàn)場總線接口,將PROFIBUS信號線引出,只需在母板上連接一個9針D-Sub連接頭,通過此接口將模塊連接到PROFIBUS-DP網(wǎng)絡(luò)中。該模塊同時提供LED狀態(tài)指示燈,可將LED信號線引出到母板上,方便用于診斷模塊的通信狀況。
[align=center]

圖2 嵌入式模塊與主機接口電路[/align]
由于該模塊已經(jīng)集成實現(xiàn)PROFIBUS協(xié)議的所有必備電路,因此在外圍電路設(shè)計的時候非常簡單方便,其電路連接與MCU和內(nèi)存的連接相似。在該主站系統(tǒng)中,同時還設(shè)計了以太網(wǎng)接口,方便遠程文件的下載。
2.2 軟件設(shè)計
嵌入式模塊COM-C提供的主機接口是雙端口內(nèi)存DPM,用戶應(yīng)用程序通過DPM接口來訪問該模塊。同時,為了提高整個系統(tǒng)的實時性和可靠性,主機系統(tǒng)使用的是實時多任務(wù)操作系統(tǒng)Linux。因此,在進行軟件設(shè)計時,主要完成驅(qū)動程序以及應(yīng)用程序的編寫。
2.2.1 雙端口內(nèi)存DPM結(jié)構(gòu)
嵌入式模塊COM-C提供的雙端口內(nèi)存DPM接口是8KByte的地址空間,其具體結(jié)構(gòu)如圖3所示。
[align=center]

圖3 雙端口內(nèi)存地址空間[/align]
用戶應(yīng)用程序通過雙端口內(nèi)存DPM來訪問PROFIBUS-DP主站嵌入式模塊COM-C,該雙端口內(nèi)存分為兩個部分,協(xié)議無關(guān)(循環(huán)數(shù)據(jù)地址空間)與協(xié)議相關(guān)(非循環(huán)數(shù)據(jù)地址空間)。循環(huán)數(shù)據(jù)包含PROFIBUS-DP主站與從站之間相互交換的過程映像輸入輸出數(shù)據(jù),非循環(huán)數(shù)據(jù)包含與PROFIBUS-DP協(xié)議相關(guān)的參數(shù)、報文、命令、狀態(tài)等數(shù)據(jù)。
● 過程映像輸出數(shù)據(jù):主機用戶程序發(fā)送給PROFIBUS-DP從站的輸出數(shù)據(jù)。
● 過程映像輸入數(shù)據(jù):PROFIBUS-DP從站發(fā)送給主機用戶程序的輸出數(shù)據(jù)。
● 發(fā)送郵箱:主機用戶程序發(fā)送給PROFIBUS-DP從站的非循環(huán)報文信息,命令、診斷、配置文件下載等。
● 接收郵箱:PROFIBUS-DP從站發(fā)送給主機用戶程序的非循環(huán)報文信息,從站報警、狀態(tài)、配置文件上傳等。
● 協(xié)議參數(shù):PROFIBUS-DP協(xié)議參數(shù)信息,波特率、看門狗時間、循環(huán)時間等。
● 協(xié)議狀態(tài):PROFIBUS-DP網(wǎng)絡(luò)狀態(tài)信息,網(wǎng)絡(luò)狀態(tài)、錯誤、超時等。
● 系統(tǒng)狀態(tài):嵌入式模塊COM-C中運行的操作系統(tǒng)的狀態(tài)信息和模塊的基本信息。
● 狀態(tài)/握手標志:設(shè)備初始化狀態(tài)信息,過程映像輸入輸出數(shù)據(jù)和郵箱報文同步位,模塊寫,主機應(yīng)用程序讀。
● 命令/握手標志:用戶應(yīng)用程序狀態(tài)信息,過程映像輸入輸出數(shù)據(jù)和郵箱報文同步位,主機應(yīng)用程序?qū)?,模塊讀。
2.2.2 驅(qū)動程序的設(shè)計
赫優(yōu)訊提供基于PCI接口、Compact-PCI接口和ISA接口的Linux設(shè)備驅(qū)動,在該系統(tǒng)中,主機CPU直接對嵌入式模塊COM-C進行訪問,因此可以借鑒提供的Linux設(shè)備驅(qū)動代碼,進行移植。
Linux設(shè)備驅(qū)動主要完成對嵌入式模塊COM-C雙端口內(nèi)存的訪問,提供一個通用的驅(qū)動程序接口,用戶程序通過調(diào)用接口函數(shù)來訪問PROFIBUS主站嵌入式模塊COM-C。Linux設(shè)備驅(qū)動的框架如圖4所示,這樣做的好處就是,如果以后要使用赫優(yōu)訊公司的其它類型的現(xiàn)場總線(如DeviceNet、CANopen)嵌入式模塊COM-C, Linux設(shè)備驅(qū)動不需要改變,直接可用。
[align=center]

圖4 設(shè)備驅(qū)動框架[/align]
Linux設(shè)備驅(qū)動主要實現(xiàn)的函數(shù)如表1。
[align=center]表1 Linux設(shè)備驅(qū)動函數(shù)表

[/align]
2.2.3 應(yīng)用程序的設(shè)計
應(yīng)用程序主要實現(xiàn)的功能:配置文件的遠程接收和下載,與遠程監(jiān)控系統(tǒng)網(wǎng)絡(luò)數(shù)據(jù)的收發(fā),網(wǎng)絡(luò)監(jiān)控等等。
網(wǎng)絡(luò)配置工具SyCon生成的網(wǎng)絡(luò)配置文件,可導出成DBM格式的文件,然后通過Mailbox(報文的形式)下載到嵌入式模塊的Flash中。配置文件下載流程如圖5所示。
[align=center]

圖5 配置文件下載流程[/align]
部分代碼如下:
/***** 下載配置文件 *****/
memset(&txMsg.data, 0, sizeof(txMsg.data));
/* 讀出DBM文件中的相關(guān)信息 */
fseek(pfFile, 40, SEEK_SET);
fread(&ul, 1, 4, pfFile);
…….
usFileLength=*(unsigned short*)&txMsg.data[9];
usFileLength=(unsigned short)usFileLength*2;
memcpy(&txMsg.data[17], &abTemp[0], 34);
/* 建立第一個報文 */
txMsg.rx = 0x00;
txMsg.tx = 0xff;
txMsg.ln = 51;
txMsg.nr = ++bNo;
txMsg.a = 0;
txMsg.f = 0;
txMsg.b = 6;
txMsg.e = 4;
txMsg.data[0] = 3;
if ( SendReceiveMessage(&txMsg, &rxMsg, 10000L)) goto LeaveProgram;
fseek(pfFile, 44, SEEK_SET);
iRead=fread(&txMsg.data[0], 1, DOWNLOAD_LEN, pfFile);
usTransmittedLength = 0;
/* 超過一個報文的最大長度,進入循環(huán),連續(xù)發(fā)送報文*/
txMsg.ln = (unsigned char)(iRead);
txMsg.nr = ++bNo;
txMsg.e = 8;
do
{
usTransmittedLength+=(unsigned short)iRead;
if ( SendReceiveMessage(&txMsg, &rxMsg, 1000L)) goto LeaveProgram;
iRead=fread(&txMsg.data[0], 1, DOWNLOAD_LEN, pfFile);
txMsg.ln = (unsigned char)iRead;
txMsg.nr = ++bNo;
txMsg.e = 8;
} while (iRead = = DOWNLOAD_LEN);
/* 發(fā)送最后一個報文 */
txMsg.e = 0xc;
usTransmittedLength += (unsigned short)iRead;
if ( SendReceiveMessage(&txMsg, &rxMsg, 15000L)) goto LeaveProgram;
/***** 下載配置文件結(jié)束 *****/
3 PROFIBUS-DP主站模塊在DCS系統(tǒng)中的應(yīng)用
WebField系列控制系統(tǒng)是浙江中控技術(shù)股份有限公司為適應(yīng)網(wǎng)絡(luò)技術(shù)的發(fā)展,特別是Internet、Web技術(shù)的發(fā)展而推出的基于網(wǎng)絡(luò)技術(shù)的控制系統(tǒng)。該系統(tǒng)融合了最新的現(xiàn)場總線技術(shù)、嵌入式軟件技術(shù)、先進控制技術(shù)與網(wǎng)絡(luò)技術(shù),實現(xiàn)了多種總線兼容和異構(gòu)系統(tǒng)綜合集成。各種國內(nèi)外DCS、PLC及現(xiàn)場智能設(shè)備都可以接入到WebField系列控制系統(tǒng)中,實現(xiàn)企業(yè)內(nèi)過程控制設(shè)備信息的共享。
WebField系列控制系統(tǒng)結(jié)構(gòu)如圖6所示。
[align=center]

圖6 系統(tǒng)結(jié)構(gòu)圖[/align]
由圖可見,WebField系列控制系統(tǒng)包含管理信息網(wǎng)、操作網(wǎng)、過程控制網(wǎng)和I/O總線4層網(wǎng)絡(luò)。
管理信息網(wǎng)采用通用的以太網(wǎng)技術(shù),用于工廠級的信息傳送和管理,是實現(xiàn)全廠綜合管理的信息通道。操作網(wǎng)采用快速以太網(wǎng)技術(shù),實現(xiàn)C/S模式下服務(wù)器與客戶端的數(shù)據(jù)通訊及操作網(wǎng)節(jié)點的時間同步。過程控制網(wǎng)(SCnetII網(wǎng))實現(xiàn)操作站節(jié)點與控制站的連接,完成信息、控制命令的傳輸與發(fā)送,采用雙重化冗余設(shè)計,使得信息傳輸可靠、高速。I/O總線是控制站內(nèi)部通信網(wǎng)絡(luò),包括SBUS、PROFIBUS、Modbus、DeviceNet等現(xiàn)場總線。
基于COM-C模塊設(shè)計的PROFIBUS-DP主站系統(tǒng)是WebField系列DCS中過程控制網(wǎng)節(jié)點之一。它解決了系統(tǒng)與其他廠家測控系統(tǒng)和智能設(shè)備的互聯(lián)問題,用于將標準PROFIBUS-DP從站設(shè)備連入系統(tǒng),通過鏈接器和耦合器還可以接入PROFIBUS-PA設(shè)備。通過SCNetⅡ通訊協(xié)議,其他廠家測控系統(tǒng)和智能設(shè)備的過程參數(shù)可成功地與系統(tǒng)內(nèi)控制站、操作站等進行信息雙向通信,實現(xiàn)組態(tài)、管理、顯示、操作及運算等功能,從而使異種設(shè)備成為WebField系列DCS的一部分。
PROFIBUS網(wǎng)絡(luò)配置工具SyCon可安裝于工程師站,通過SyCon組態(tài)軟件提供的API函數(shù),可實現(xiàn)PROFIBUS組態(tài)到DCS組態(tài)軟件的完全信息共享,從而實現(xiàn)整個控制系統(tǒng)的一體化組態(tài)。
基于PROFIBUS-DP主站模塊開發(fā)的主站卡已經(jīng)成功應(yīng)用于WebField系列DCS中,并且在過程控制網(wǎng)、PROFIBUS-DP網(wǎng)絡(luò)都可以進行冗余配置,保證了PROFIBUS網(wǎng)絡(luò)信息傳輸?shù)目煽啃?。截至目前,該PROFIBUS-DP主站卡已經(jīng)在現(xiàn)場有幾百個成功的應(yīng)用。
4 結(jié)束語
本文在研究PROFIBUS-DP現(xiàn)場總線通訊協(xié)議的基礎(chǔ)上,提出了高可靠性的PROFIBUS-DP主站設(shè)計方案,并且在DCS系統(tǒng)中成功應(yīng)用,已投入現(xiàn)場運行,穩(wěn)定可靠,取得很好的實效。目前,國內(nèi)廠家多限于對國外產(chǎn)品的系統(tǒng)集成及PROFIBUS-DP從站產(chǎn)品的開發(fā),對PROFIBUS-DP主站產(chǎn)品的研究開發(fā)甚少,因此本文對開發(fā)PROFIBUS-DP主站產(chǎn)品具有借鑒作用。
參考文獻:
[1] 中國現(xiàn)場總線專業(yè)委員會(CPO)秘書處。現(xiàn)場總線PROFIBUS基礎(chǔ)知識及用戶安裝、投運導則[M].
[2] PROFIBUS International Business Office. PROFIBUS Specification EN 50170 Vol 2. 1998
[3] Hilscher Gesellschaft für Systemautomation mbH. Toolkit Manual [EB/OL]. http://www.hilscher.com/support_manuals.html
[4] Hilscher Gesellschaft für Systemautomation mbH. Device Driver Manual [EB/OL]. http://www.hilscher.com/support_manuals.html
[5] Hilscher Gesellschaft für Systemautomation mbH. PROFIBUS-DP Master Protocol Interface Manual [EB/OL].
http://www.hilscher.com/support_manuals.html
作者簡介
張曉剛(197811——) 男 工學碩士 浙江中控技術(shù)股份有限公司工業(yè)通訊技術(shù)部高級工程師 專門從事工業(yè)通訊網(wǎng)絡(luò)技術(shù)的研究和DCS設(shè)備的開發(fā)
聯(lián)系方式:
浙江中控技術(shù)股份有限公司
地址:浙江省杭州市濱江區(qū)六和路309號中控科技園A4
郵編:310053
Email:zhangxg@supcon.com
鄧梧鵬(198004 ——) 男 工學碩士 德國赫優(yōu)訊自動化系統(tǒng)有限公司技術(shù)主管 專門從事現(xiàn)場總線、實時工業(yè)以太網(wǎng)技術(shù)的研究。
聯(lián)系方式:
德國赫優(yōu)訊自動化系統(tǒng)有限公司上海代表處
地址:上海市黃浦區(qū)人民路885號淮海中華大廈2208室
郵編:200010
Email:wdeng@hilscher.com
電話: 021-63555161*18