<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 現(xiàn)場總線Profibus-DP 主從站數(shù)據(jù)交換探討

          現(xiàn)場總線Profibus-DP 主從站數(shù)據(jù)交換探討

          作者: 時(shí)間:2016-12-19 來源:網(wǎng)絡(luò) 收藏
            1 引言
            現(xiàn)場總線(Fieldbu)是20 世紀(jì)80 年代末、90 年代初發(fā)展起來的現(xiàn)場智能設(shè)備互連通信網(wǎng)絡(luò),是計(jì)算機(jī)網(wǎng)絡(luò)適應(yīng)工業(yè)現(xiàn)場環(huán)境的產(chǎn)物,經(jīng)過十幾年的發(fā)展已成為當(dāng)今世界自動(dòng)化技術(shù)的熱點(diǎn)。據(jù)不完全統(tǒng)計(jì),目前各類現(xiàn)場總線有40 多種,主要用于解決工業(yè)現(xiàn)場的智能化儀器儀表、控制器、執(zhí)行機(jī)構(gòu)等現(xiàn)場設(shè)備間的數(shù)據(jù)通信及這些現(xiàn)場控制設(shè)備與高級(jí)控制系統(tǒng)之間的信息傳遞問題。
            目前,較為流行的現(xiàn)場總線有FF 、LonWorks 、Profibus 、WorldFIP 、CAN 、HART (過渡協(xié)議)等?,F(xiàn)場總線雖然必須設(shè)計(jì)成開放系統(tǒng),但其網(wǎng)絡(luò)結(jié)構(gòu)并不需要保持與OSI 系統(tǒng)完全一致。現(xiàn)場總線采用了3 層網(wǎng)絡(luò)結(jié)構(gòu)--物理層、數(shù)據(jù)鏈路層和應(yīng)用層。流量控制和差錯(cuò)控制在數(shù)據(jù)鏈路層中執(zhí)行,報(bào)文的可靠傳輸在數(shù)據(jù)鏈路層或應(yīng)用層中執(zhí)行。
            2 Profibus-DP 總線
            2.1 Profibus-DP主從通信
            Profibus-DP 網(wǎng)絡(luò)是一個(gè)主站/從站(Master / Slaver)網(wǎng)絡(luò),典型的DP 配置是單主站結(jié)構(gòu)。DP 主站與DP 從站之間的通信基于主從原理,主站具有總線控制權(quán),周期地讀取從站的輸人信息并周期地向從站發(fā)送輸出信息,而總線上的DP 從站僅僅是對主站作有關(guān)應(yīng)答或響應(yīng)。數(shù)據(jù)通信由主站和從站進(jìn)行監(jiān)控。一個(gè)DP 系統(tǒng)也可能是多主系統(tǒng)。
            2.2 Profibus-DP 總線拓?fù)?br />  Profibus-DP 系統(tǒng)有2 種總線拓?fù)浣Y(jié)構(gòu):一種是RS-485 ,采用屏蔽雙絞線,拓?fù)浣Y(jié)構(gòu)為總線型,通信速率為9.6kb/s.(12oom )-1, 12Mb/s.(100 m )-1,每段最多節(jié)點(diǎn)數(shù)為32,不支持總線供電;另一種是采用光纖,用于電磁兼容性要求高和長距離要求的場合。
            2.3 Profibus-DP主從通信原理
            在數(shù)據(jù)鏈路層,Profibus-DP 使用混合的總線存取控制機(jī)制來實(shí)現(xiàn)相關(guān)站之間的通信。其存取控制機(jī)制包括用于主站間通信的分散的令牌傳遞機(jī)制和用于主站與從站間通信的集中的主-從機(jī)制。Profibus-DP的總線存取控制機(jī)制與所使用的傳輸介質(zhì)無關(guān),每個(gè)DP 節(jié)點(diǎn)有一個(gè)總線上惟一的地址,報(bào)文用節(jié)點(diǎn)編址的方法組織。
            令牌介質(zhì)存取中令牌是一種特殊的電文,它在主站間傳遞控制權(quán)。連接到Profibus 網(wǎng)絡(luò)的主站按其總線地址(由總線存取控制MAC 程序自動(dòng)判定總線上所有主動(dòng)節(jié)點(diǎn)地址并記錄在主動(dòng)站表LAS 中)的升序組成一個(gè)邏輯令牌環(huán)。當(dāng)某個(gè)主站得到令牌后,該主站就被允許在以后的一段時(shí)間內(nèi)執(zhí)行主站工作。根據(jù)主從站關(guān)系表給其它的主站或從站發(fā)送幀,直到發(fā)完或規(guī)定的時(shí)間到,再把令牌按令牌環(huán)規(guī)定的順序傳給其它主站。具有總線地址HAS (最高站地址)的站點(diǎn)例外,它只傳遞令牌給具有最低總線地址的站點(diǎn),以使邏輯令牌環(huán)閉合。在主-從方式下,由一個(gè)主站控制著多個(gè)從站,構(gòu)成主-從系統(tǒng)。主站發(fā)出命令,從站給出響應(yīng),配合主站完成對數(shù)據(jù)鏈路的控制,一個(gè)主站應(yīng)與相關(guān)的多個(gè)從站中的每個(gè)從站建立一條數(shù)據(jù)鏈路,從站可以發(fā)送多個(gè)偵,直到以下一種情況發(fā)生為止:從站沒有信息幀可發(fā)送,未完成幀的數(shù)目已達(dá)最大值或從站被主站停止。典型的Profibus-DP 總線配置是以主-從總線存取程序?yàn)榛A(chǔ)的,一個(gè)主動(dòng)節(jié)點(diǎn)(DP 主站)循環(huán)地與被動(dòng)節(jié)點(diǎn)(DP 從站)交換數(shù)據(jù)。在單主方式中不存在令牌的傳遞,故在本文所討論的系統(tǒng)中只涉及主從機(jī)制,也就是說令牌始終在這個(gè)主站,該主站是這個(gè)系統(tǒng)中惟一具有總線控制權(quán)的站。
            3 基于Profibus 一DP 主從通信
            3 . 1 硬件部分
            Profibus 通信的實(shí)現(xiàn)主要由帶Profibus通信接口的中央處理器或通信模塊完成,通信模塊有DP 從站、DP 主站、FMS 站及混合DP 和FMS 的通信模塊。本文實(shí)驗(yàn)是基于奧地利貝加萊(B&R) 公司的相關(guān)產(chǎn)品在貝加萊-東華大學(xué)工業(yè)自動(dòng)化聯(lián)合實(shí)驗(yàn)室中進(jìn)行的,以通過Profibus-DP網(wǎng)對下位對象的控制為例介紹Profibus 一DP 網(wǎng)通信的實(shí)現(xiàn)。本實(shí)驗(yàn)系統(tǒng)網(wǎng)絡(luò)結(jié)構(gòu)如圖1 所示,其中主站為B&R公司的2005 系列,CPU 為CP260 或IF260 ,主站通過網(wǎng)絡(luò)模塊EX450 掛接到Profibus - DP 網(wǎng)上。當(dāng)用EX450 作為主站模塊時(shí),可帶具有IF361 、IF661 或其它接口模塊的從站127 個(gè),也可帶具有Profibus 一DP 口的其它設(shè)備,如B&R公司的PROVIT 圖文顯示操作站、ACOPOS 伺服裝置、PANEL WARE 人機(jī)界面模塊等,或其它公司的一些產(chǎn)品,如Siemens 公司的ET200系列。2 個(gè)從站選用2 種不同配置,其中一個(gè)為2003 系列,網(wǎng)絡(luò)接口模塊IF361 ;另一個(gè)為2005 系列,接口模塊為IF661。接口模塊IF36l與IF661 內(nèi)部采用的都是Siemens 公司ASICs 芯片SPC3 , SPC3 是一種用于從站的智能通信芯片,支持Profibus-DP 協(xié)議,可獨(dú)立完成全部Profibus-DP 通信功能。

          上一頁 1 2 下一頁

          評(píng)論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();