?
Tel : 010-51271179?
E-mail: jindingwang@goldtopone.com
摘? 要:針對初學者概念不清的特點,本文在分析典型DP通訊配置的基礎上,總結出DP通訊數(shù)據(jù)交換" title="數(shù)據(jù)交換">數(shù)據(jù)交換的共性原理和方法。同時給出了組態(tài)配置主要步驟的示圖,并作了注解。
關鍵詞:PROFIBUS-DP" title="PROFIBUS-DP">PROFIBUS-DP、數(shù)據(jù)交換、DP通訊、 DP通訊緩沖區(qū)
一、前言
隨著國內(nèi)工業(yè)化進程的不斷深入和發(fā)展,工業(yè)自動化對網(wǎng)絡需求日益廣泛。西門子自動化產(chǎn)品在競爭中也逐步顯示出她卓越的網(wǎng)絡性能及優(yōu)勢。這也不足為奇,因為靈活的組網(wǎng)和高效可靠的通訊正是西門子自動化產(chǎn)品的個性所在。而從國家JB等效采用PROFIBUS歐洲標準以后,我們更是明顯感到市場對PROFIBUS及SIEMENS產(chǎn)品認同度的提高。
本人日常工作就是技術支持、培訓和產(chǎn)品開發(fā)與工程服務,在工作中我深切感覺到許多新用戶在PROFIBUS入門時的茫然。其原因就在對PROFIBUS通訊的概念及原理不清。本文試圖在分析幾種常見通訊的配置和數(shù)據(jù)交換的基礎上,概括說明PROFIBUS的一些原理性的共同特點,希望對您的工作有所幫助。
二、幾種典型通訊的實現(xiàn)過程
2.1 概述
粗略數(shù)一下PROFIBUS-DP的產(chǎn)品,僅西門子的就有近30種系列,如果算上能夠上PROFIBUS=DP網(wǎng)的各種儀表、傳感器等就更多了。雖然PROFIBUS-DP產(chǎn)品眾多,但概括其工作原理、配置組態(tài)內(nèi)容等特點,主從站主要類別可用如下幾種來代表。
PROFIBUS-DP主從站種類概括
序號 |
站點特性描述 |
工作模式 |
典型產(chǎn)品 |
1 |
CPU上集成有通訊口 |
或主或從 |
315-2DP、412-1、414-3 |
2 |
獨立的通訊處理器 |
或主或從 |
CP342-5、CP443-5 |
3 |
帶CPU的接口模塊 |
或主或從 |
IM151/CPU、BM147/CPU |
4 |
普通ET200系列接口模塊 |
從 |
IM153、IM151 |
5 |
設備的PROFIBUS網(wǎng)卡 |
從 |
EM277、變頻器的Profibus網(wǎng)卡 |
6 |
網(wǎng)關 |
從 |
DP/RS 232C |
上述主從站可以組合實現(xiàn)三種典型通訊。這三種通訊是
⑴、帶DP口的CPU主站與從站的通訊;如315-2DP與IM153
⑵、通訊處理器主站與從站的通訊;如CP342-5與EM277
⑶、帶DP口的CPU主站與集成DP口配置的從站之間的通訊,如315-2Dp與 315-2DP。
在充分理解上面三種典型通訊的原理和配置組態(tài)的基礎上,其他眾多類型主從站實現(xiàn)要領大都差不多。這幾種典型方式的具體實現(xiàn),請見下文分解。
2.2 CPU315-2DP與IM153的通訊實現(xiàn)
????這是最常見的一種DP式的通訊。配置時在將CPU插入槽位后,右鍵點擊DP口首先增加主站,建立網(wǎng)段,最后設置主站的網(wǎng)絡參數(shù)。隨后,將從站IM153掛到網(wǎng)上并賦值網(wǎng)絡參數(shù)。注意主從站網(wǎng)絡參數(shù)的一致性。最后,將從站上的模板插入相應槽位即可。硬件配置" title="硬件配置">硬件配置一旦下載到CPU,主從站之間的數(shù)據(jù)交換即自動進行。在這種配置下,分布I/O" title="I/O">I/O通過IM153直接映射到CPU內(nèi)存。硬件配置表中的地址內(nèi)存存放的就是分布I/O的狀態(tài),見圖三。配置要點見圖一所示步驟。
2.3 CPU314+CP342-5與EM277的通訊實現(xiàn)
????CP342-5作為主站也是最常見的DP通訊之一。配置過程較復雜,主要步驟參見圖4~6。首先,我們將CP342-5放入槽位后需要開通主站,建立網(wǎng)段,相應網(wǎng)絡參數(shù)的設定是必須的,大多數(shù)情況下可以沿用系統(tǒng)默認值。然后就是從站的組態(tài)。在硬件目錄中找到所用從站EM277,掛接到主站所控制的網(wǎng)段上。從站的參數(shù)設置與主站看齊。最后是EM277的數(shù)據(jù)交換區(qū)的定義,見圖6。很多用戶問,此時硬件配置能組態(tài)的都完成了,為什么下載配置后總線故障燈還亮?仔細分析前面的配置,實際上我們只定義了CP342-5與EM277之間通訊必須的網(wǎng)絡狀態(tài)和參數(shù)。而分布I/O數(shù)據(jù)傳遞到了CP342-5之后,如何與CPU內(nèi)存的對應沒有聲明。所以通訊是不通的。這也是FC1(DP_SEND)、FC2(DP_RECV)在通訊中所發(fā)揮的作用。以圖6示例,如果要實現(xiàn)CPU中DB1與EM277之間I/O雙向8Byte數(shù)據(jù)的交換,我們還需要運行下面這段程序。
CALL? 'DP_SEND'
?? ???????? CPLADDR:=W#16#100????????????????????? ;CP342-5的地址,16進制
?????? SEND?? :=P#DB1.DBX0.0 BYTE 8??? ;DB1的0~7共8個字節(jié)發(fā)往CP342-5
?? ???????? DONE?? :=M10.0
?? ???????? ERROR? :=M10.1
STATUS :=MW12
CALL? 'DP_RECV'
???????????? CPLADDR :=W#16#100???????????????????? ;CP342-5的地址,16進制
???? ???? RECV??? :=P#DB1.DBX8.0 BYTE 8?? ;將CP342-5發(fā)來的8個字節(jié)存入DB1的8~15字節(jié),
NDR???? :=M20.0
ERROR?? :=M20.1
??? ?????? STATUS? :=MW22
DPSTATUS:=MB24
????編程到這里,有了FC1、FC2的參與,通訊中數(shù)據(jù)傳遞的鏈路就完整了。CPU與-CP342-5的數(shù)據(jù)交換,需要調(diào)用功能函數(shù),而CP342-5與從站EM277的信息交換是由CP342-5的運行選擇開關觸發(fā)自動進行。因此,概括CPU314+CP342-5與EM277通訊的數(shù)據(jù)交換過程可以用如下模型來描述。
CPU314 |
CP342-5 |
EM277 | ||
DB1.DBB0 |
?—FC1—> |
QB0 |
——> |
VB0 |
. . .? . . . |
?—FC1—> |
. . .? . . . |
——> |
. . .? . . . |
DB1.DBB7 |
?—FC1—> |
QB7 |
——> |
VB7 |
DB1.DBB8 |
<—FC2— |
IB0 |
<—— |
VB8 |
. . .? . . . |
<—FC2— |
. . .? . . . |
<—— |
|
DB1.DBB15 |
<—FC2— |
IB7 |
<—— |
VB15 |
2.4 CPU315-2DP與CPU315-2DP的通訊實現(xiàn)
????兩個315-2DP主站之間的數(shù)據(jù)交換是DP主站間通訊的典型示例。從硬件配置的過程來看,主站間通訊的組態(tài)與前兩種有明顯不同,圖7~圖9是組態(tài)的主要過程。由于定義主站需要用到從站的組態(tài),所以這里我們必須首先對從站進行配置。首先完成從站的硬件配置,然后按圖7所示,定義CPU的DP端口工作模式為 “DP SLAVE”,存盤。在配置好主站的其他硬件后,遵循圖8所示,激活CPU端口的主站,建立網(wǎng)段。再在硬件目錄中找到/PROFIBUS-DP/Configured Stations/CPU31 X,接入網(wǎng)絡。系統(tǒng)馬上彈出“DP Slave Properties”窗口,在這里我們就可以看到前面已經(jīng)初步配置的從站CPU,參見圖8。點擊“Connect”進入數(shù)據(jù)交換區(qū)的設置。
??? 具體交換區(qū)的建立和參數(shù)定義是根據(jù)實際應用的數(shù)據(jù)特點、數(shù)據(jù)量來定的。圖9給出了相關參數(shù)設置內(nèi)容,其中參數(shù)概念清晰,不再贅言。需要注意的一是在MS(主從)mode下,主站的I內(nèi)存對應從站的O,主站的O內(nèi)存對應從站的I。而在DX(直接)mode下,是I對I,O對O,沒有交叉。另外需注意數(shù)據(jù)的一致性。
??? 從上面的組態(tài)過程可以看出,DP主站間的數(shù)據(jù)通訊也是通過緩沖區(qū)來實現(xiàn)的。由于緩沖區(qū)建立在各自CPU的內(nèi)存,硬件組態(tài)后即完成了通訊所有相關內(nèi)容的定義。下圖描述了主站間通訊的原理過程。
Master |
Mode=MS |
Slave |
Master |
Mode=DX |
Slave | |
O2 |
?——> |
I12 |
O0 |
——> |
O20 | |
. . .? . . . |
?——> |
. . .? . . .? |
. . .? . . . |
——> |
. . .? . . . | |
O9 |
?——> |
I19 |
O7 |
——> |
O27 | |
I16 |
<—— |
O16 |
I16 |
<—— |
I26 | |
. . .? . . . |
<—— |
. . .? . . .? |
. . .? . . . |
<—— |
. . .? . . . | |
I31 |
<—— |
O31 |
I31 |
<—— |
I41 |
三、PROFIBUS-DP數(shù)據(jù)交換原理分析
??? 雖然上文我們只介紹了兩種主站和兩種從站,但已經(jīng)描述出DP通訊的共同特點。帶CPU的接口模塊" title="接口模塊">接口模塊與帶集成端口的CPU的組態(tài)基本一樣,各種CP之間也沒有太大差別,而所有DP從站的不同僅僅在于數(shù)據(jù)交換區(qū)大小和組成上的一點差異,組態(tài)中所涉及的概念、方法、原理沒有兩樣。
??? 從配置組態(tài)的過程能明顯看出DP設備工作遵循共同的原理。如果從機架擴展的角度來看,分布I/O只是本地機架擴展的補充。因此,網(wǎng)絡配置中應用的也是類似的概念。如從站的接口模板都是以機架的形式掛接到網(wǎng)絡上的,不同從站的差別一是機架上擴展的槽位數(shù)不同,二來是不同從站所帶的“摸板”種類不同,三是相應槽位上能插接的“摸板”不同。廣義上講,不同類型不同密度的摸板本質(zhì)上就是不同結構的通訊數(shù)據(jù)交換區(qū)。
??? 盡管主站間通訊配置沒有體現(xiàn)機架的概念,但隨后數(shù)據(jù)交換區(qū)的定義則形象地體現(xiàn)了槽位和模板的概念。從數(shù)據(jù)交換的角度看,主站間通訊本質(zhì)上與普通主從通訊是一樣的。差別僅在兩者上網(wǎng)的名份不同,主站間通訊的從站是以“站點”的形式,而后者如前所述,是以機架的形式。
??? 因此我們可以用下面的圖來表述DP通訊中數(shù)據(jù)交換的基本原理。
Master |
Slave | |
發(fā)送單元1 |
?——> |
接收單元1 |
. . .? . . . |
?——> |
. . .? . . .? |
發(fā)送單元n |
?——> |
接收單元n |
接收單元1 |
<—— |
發(fā)送單元1 |
. . .? . . . |
<—— |
. . .? . . .? |
接收單元n |
<—— |
發(fā)送單元n |
??? 雖然,IM153與主站通訊沒有體現(xiàn)對應的兩個緩沖區(qū),如果我們將其看成兩個緩沖區(qū)完全重疊的特例,數(shù)據(jù)交換的基本原理沒有變。
四、小結
??? 通過靈活多變可配置的數(shù)據(jù)交換區(qū)實現(xiàn)DP主從站的數(shù)據(jù)通訊是DP通訊的的基本原理。明白這個道理后,就可將DP網(wǎng)絡的組態(tài)配置分為兩部分,一是網(wǎng)絡參數(shù)的設置,主要參數(shù)有網(wǎng)段、站號、波特率、協(xié)議規(guī)程、最高站號。另一方面就是數(shù)據(jù)交換區(qū)的定義。主要內(nèi)容有輸入/輸出類型(“模板類型”)、交換區(qū)大小(模板I/O密度)、起止地址、數(shù)據(jù)一致性等幾方面。多數(shù)情況下,網(wǎng)絡正常工作的配置組態(tài)內(nèi)容就已經(jīng)齊備。當然,如果主站由CP擔當,則還需要調(diào)用FC1、FC2實現(xiàn)CP與CPU的數(shù)據(jù)交換。
????這些概念和原理、特征和方法不是只針對西門子的產(chǎn)品,因為PROFIBUS是開放的國際標準。只要是遵循PROFIBUS規(guī)程的產(chǎn)品,組態(tài)配置所面對的問題和辦法都是一樣的,你所知道、所認識、所掌握的知識和技能也都是適用的。配置時只要沿著原理所指明的方向,概念明確,組網(wǎng)非難事。