《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 其他 > 設(shè)計(jì)應(yīng)用 > 采用Profibus-DP實(shí)現(xiàn)控制系統(tǒng)通信的方法
采用Profibus-DP實(shí)現(xiàn)控制系統(tǒng)通信的方法
電子設(shè)計(jì)應(yīng)用
李世紅
摘要: "當(dāng)前在國(guó)際上有影響的現(xiàn)場(chǎng)總線標(biāo)準(zhǔn)很多,,其中,Profibus-DP主要用于中央處理器與分散外圍設(shè)備之間的高速數(shù)據(jù)通信,,解決自動(dòng)控制系統(tǒng)(如PLC、PC等)通過高速串行總線與分散的現(xiàn)場(chǎng)設(shè)備(I/O,、驅(qū)動(dòng)器、閥門等)之間的通信問題,。本文采用Profibus-DP實(shí)現(xiàn)了西門子公司S7系列的PLC系統(tǒng)和和利時(shí)公司的CPU24x和CPU21x系列PLC的通訊互連,。
Abstract:
Key words :

  引言

  當(dāng)前在國(guó)際上有影響的現(xiàn)場(chǎng)總線標(biāo)準(zhǔn)很多,其中,,Profibus-DP主要用于中央處理器與分散外圍設(shè)備之間的高速數(shù)據(jù)通信,,解決自動(dòng)控制系統(tǒng)(如PLC、PC等)通過高速串行總線與分散的現(xiàn)場(chǎng)設(shè)備(I/O,、驅(qū)動(dòng)器,、閥門等)之間的通信問題。本文采用Profibus-DP實(shí)現(xiàn)了西門子公司S7系列的PLC系統(tǒng)和和利時(shí)公司的CPU24x和CPU21x系列PLC的通訊互連,。

圖1 主-從通信系統(tǒng)配置

  圖2  在從站模式下CPU和CP數(shù)據(jù)交換原理示意圖

  系統(tǒng)設(shè)計(jì)

  和利時(shí)的CPU24x和CPU21x一般作為主站設(shè)備,,而西門子S7-300 PLC的CPU 315-2DP、CP342-5等既可做主站也可做從站,。當(dāng)它們做從站時(shí),,可設(shè)計(jì)為被動(dòng)從站或主動(dòng)從站。被動(dòng)從站執(zhí)行簡(jiǎn)單的DP協(xié)議功能,,相當(dāng)于簡(jiǎn)單從站,;主動(dòng)從站在總線中可以取得令牌,然后在確定的時(shí)間窗口中可以與從站通信,,它除了支持簡(jiǎn)單的DP協(xié)議功能外,,還支持一些其它的服務(wù),如支持FDL服務(wù),、S7、PG等,。另外,,CP342-5和帶CP5611卡的PC站還可實(shí)現(xiàn)二類DP主站、用于編程,、診斷等功能,。

  因和利時(shí)公司的CPU24x和CPU21x的 PLC為主站設(shè)備,在系統(tǒng)中只能做主站,,因此本設(shè)計(jì)把西門子的設(shè)備S7-300和S7-200 PLC作為從站,,利用Profibus-DP的主-從通信原理實(shí)現(xiàn)他們的通信。系統(tǒng)配置如圖1所示,。

  在圖1中,,和利時(shí) PLC使用Profibus-DP通信模塊FM208連接到Profibus-DP網(wǎng)絡(luò),,F(xiàn)M208通信模塊為DP主站模塊,在DP網(wǎng)絡(luò)中做DP主站,。所有的西門子DP從站設(shè)備都可以作為FM208的從站連接到DP網(wǎng)絡(luò)中,,并通過使用DP通信協(xié)議實(shí)現(xiàn)相互間的直接數(shù)據(jù)通信。在此,,西門子的S7-300,、S7-200 PLC和變頻器分別通過Profibus-DP通信模塊CP 342-5、EM 277和CBP2做為和利時(shí)PLC的FM208的從站,,并實(shí)現(xiàn)相互通信,。

  通信編程

  用于DP主站的用戶程序

  用于DP主站的用戶程序都已集成在Profibus-DP通信模塊FM208中,用戶只需完成以下幾個(gè)方面的組態(tài)及設(shè)置即可完成主站的用戶編程,。

  (1) DP網(wǎng)絡(luò)組態(tài),,用WinNCS軟件完成。

 ?、?啟動(dòng)WinNCS軟件,,網(wǎng)絡(luò)類型選取Profibus。然后在Profibus網(wǎng)絡(luò)中插入主站,,系統(tǒng)默認(rèn)CPU24x為主站,,指定其DP主站地址為2,總線網(wǎng)絡(luò)的傳輸速率為1.5Mbps,。

 ?、?在FM208主站中插入DP從站CP342-5、EM277和CBP2,,對(duì)應(yīng)的DP網(wǎng)絡(luò)地址為3,、4、5,。CP342-5的I/O數(shù)據(jù)選擇16個(gè)字進(jìn)16個(gè)字出,,EM277的I/O數(shù)據(jù)模塊選擇8個(gè)字進(jìn)8個(gè)字出,CBP2的數(shù)據(jù)類型選擇PPO3,。各從站的I/O數(shù)據(jù)在主站FM208中按順序自動(dòng)指定相應(yīng)的地址,。

  ③ 編譯并保存文件,,然后下載到通信處理器FM208中,。

  (2)FM208配置的從站I/O數(shù)據(jù)地址在CPU241中的地址分配。

  根據(jù)用WinNCS配置的從站數(shù)及設(shè)定的I/O數(shù)據(jù)起始地址和長(zhǎng)度,,可以在PLC程序的數(shù)據(jù)塊DB1中為其指定數(shù)據(jù)尋址地址,。例如上述從站I/O起始地址都是從0開始,數(shù)據(jù)總長(zhǎng)度各為28個(gè)字,,在DB1中加入地址配置指令:

  KC='UAT: 0 28 0 28 ;END'

  在PLC用戶程序中,,直接根據(jù)上述設(shè)定的地址就可尋址從站的過程數(shù)據(jù),,不需要額外的通信編程。

  用于DP從站S7-300的用戶程序

  S7-300 PLC通過CP342-5作為主站和利時(shí)PLC的從站,,為確保數(shù)據(jù)通信的實(shí)現(xiàn),,需完成以下工作。

 ?、?組態(tài)CP342-5做從站,。

  ② 編寫從站用戶程序,,并下載到S7 PLC,。

  ③ 啟動(dòng)和調(diào)試DP從站和DP主站,。

 ?、?通信異常診斷。

  (1)CP功能

  CP342-5用作DP從站可以被DP主站組態(tài)為智能從站或模塊化主站,,做從站時(shí)可以組態(tài)為被動(dòng)從站或主動(dòng)從站,,但不允許在組態(tài)為從站的同時(shí)組態(tài)為主站。用作主動(dòng)從站時(shí)除了提供從站服務(wù)功能外,,還可以提供如FDL連接服務(wù)等其它的通信服務(wù),。CP342-5的主要功能有:

  ① 從主站接收用于配置和組態(tài)的參數(shù),,包括過程輸出數(shù)據(jù)和傳遞到CPU的數(shù)據(jù),。

  ② 從CPU的DP數(shù)據(jù)域接收輸入數(shù)據(jù),,為DP主站準(zhǔn)備數(shù)據(jù),。

  ③ 給DP主站準(zhǔn)備拾取和*估的診斷數(shù)據(jù),。

 ?、?給2類主站準(zhǔn)備讀取的I/O數(shù)據(jù)。

  (2)數(shù)據(jù)交換原理

  DP主站與DP從站的數(shù)據(jù)交換采用輪循方式,,使用DP數(shù)據(jù)域中的接收緩沖區(qū)與發(fā)送緩沖區(qū)來完成,。DP主站啟動(dòng)數(shù)據(jù)交換,將數(shù)據(jù)輸出到輸出緩沖區(qū),,并從輸入緩沖區(qū)將數(shù)據(jù)取回,其原理如圖2所示,。

  CPU和CP間的數(shù)據(jù)交換是通過在CPU循環(huán)中調(diào)用S7的DP_RECE和DP_SEND功能來實(shí)現(xiàn)的,。其中,DP_RECE功能是接收由DP主站發(fā)送到從站CP的接收緩沖區(qū)的數(shù)據(jù),,然后把數(shù)據(jù)輸出至CPU指定的DP數(shù)據(jù)域,。而DP_SEND則是把CPU中指定的DP數(shù)據(jù)域中需傳輸?shù)臄?shù)據(jù)傳送至CP的發(fā)送緩沖區(qū),,然后傳輸?shù)紻P主站。

  (3)用戶程序

  在S7 PLC中,,CPU中的用戶數(shù)據(jù)域可以為過程映像,、位寄存器以及數(shù)據(jù)塊,在本用戶程序中使用了數(shù)據(jù)塊,。在S7用戶程序的Blocks目錄下,,定義兩個(gè)數(shù)據(jù)塊DB1和DB2,分別用于存放接收和發(fā)送的數(shù)據(jù),,然后在循環(huán)執(zhí)行的組織塊OB1中調(diào)用DP_RECE和DP_SEND功能,。

  當(dāng)DP主站改變運(yùn)行模式或崩潰時(shí),操作系統(tǒng)通過調(diào)用從站上的某個(gè)OB作出反應(yīng),。如果從站上的這些OB丟失,,則CPU會(huì)立即自動(dòng)地切換到STOP。因此為了防止這種情況,,需在從站建立相關(guān)的OB,。

  當(dāng)主站的CPU從RUN轉(zhuǎn)換到STOP時(shí),在從站的組織塊OB82(診斷中斷)將被調(diào)用,。為防止CPU由于不存在OB82而停止,,需在S7-300站的Blocks文件夾中插入組織塊OB82。

  同理,,當(dāng)DP主站崩潰時(shí),,在從站上將調(diào)用組織塊OB86(機(jī)架故障)。為了防止S7-300從站的CPU在這樣的情況下進(jìn)入STOP,,需在S7-300站的Blocks文件夾中插入組織塊OB86,。

  用于DP從站S7-200的用戶程序

  主站和利時(shí)PLC和從站S7-200 CPU226之間的Profibus-DP通信是通過使用FM208模塊將S7-200 CPU226作為DP從站連入網(wǎng)絡(luò)的。FM208為模塊化的DP從站,,I/O數(shù)據(jù)最大為32字,。FM208通過串行總線和S7-200 CPU226連接,通過DP通信端口連接到Profibus上,。其主要功能為:可運(yùn)行在9.6kbps-12Mbps之間的任何速率,;接收從主站來的I/O配置和參數(shù)信息;向主站發(fā)送和接收不同數(shù)量的數(shù)據(jù),;傳送I/O數(shù)據(jù),,以及支持變量塊的傳送等。

  對(duì)主站的組態(tài)包括從站地址,,從站的變量存儲(chǔ)區(qū)(V存儲(chǔ)區(qū))偏置以及選取I/O模塊,。

  運(yùn)行時(shí),DP主站首先建立網(wǎng)絡(luò),,然后初始化啟動(dòng)DP從站,,并且主站將參數(shù)賦值信息和I/O配置寫入到從站,。然后主站從從站獲取診斷信息,在確認(rèn)從站已接收到信息后,,主站就擁有了此從站的指揮權(quán),。此時(shí)網(wǎng)絡(luò)上的其它主站可以讀取該從站的數(shù)據(jù)但是不能向該從站寫入數(shù)據(jù)。整個(gè)主站的組態(tài)是通過設(shè)備數(shù)據(jù)庫(kù)(GSD)文件siem089d.gsd來完成的,。

  從站地址通過FM208模塊上的硬件開關(guān)設(shè)定,,此開關(guān)必須與主站軟件設(shè)定的地址一致。從站I/O緩沖區(qū)駐留在S7-200的V存儲(chǔ)區(qū),,因此要求參數(shù)賦值中必須包含V存儲(chǔ)區(qū)的緩沖區(qū)的起始位置及I/O的數(shù)據(jù)量,,以確定緩沖區(qū)的大小。FM208提供字節(jié),、字,、緩沖區(qū)三種類型的數(shù)據(jù)交換。

  S7-200 CPU226 PLC的通信用戶程序如下:

  NETWORK 1

  //計(jì)算輸出數(shù)據(jù)指針到V寄存器

  LDB= SMB224,,2

  MOVD     &VB0,VD1000

  ITD      SMW226,AC0

  +D       AC0,VD1000

  NETWORK 2

  // 計(jì)算輸入數(shù)據(jù)指針到V寄存器

  LDB  =SMB224,,2

  MOVD     VD1000,VD1004

  BTI      SMB228,,AC0

  ITD      AC0,,ACO

  +D       AC0, VD1004

  NETWORK 3

  //設(shè)置傳輸?shù)臄?shù)據(jù)量

  LDB  =SMB224,2

  MOVB     SMB228,,VB1008

  MOVB     SMB229,,VB1009

  NETWORK 4        //傳輸數(shù)據(jù)

  LDB  =SMB224,2

  BMB    *VD1000,,QB0,,VB1008

  BMB    IB0,*VD1004,,VB1009

  結(jié)語

  采用Profibus現(xiàn)場(chǎng)總線,,不需做復(fù)雜的通信編程,就能方便地實(shí)現(xiàn)不同廠商的現(xiàn)場(chǎng)總線設(shè)備在一個(gè)系統(tǒng)中的集成,,而且數(shù)據(jù)傳輸可靠,、組態(tài)靈活、可以真正的實(shí)現(xiàn)即插即用功能,。而且集成方法簡(jiǎn)單,,通信可靠、快速,,很適合實(shí)時(shí)系統(tǒng)控制的要求,。在目前廠家為其提供的通信產(chǎn)品和通信服務(wù)功能由于不夠豐富而存在的一些通信問題,通過靈活配置完全可以解決。

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載。