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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 現(xiàn)場總線的速度和效率

          現(xiàn)場總線的速度和效率

          作者: 時間:2016-12-16 來源:網(wǎng)絡(luò) 收藏
          現(xiàn)場總線(Fieldbus)是應(yīng)用于過程控制現(xiàn)場的一種數(shù)字網(wǎng)絡(luò),它不僅包含有過程控制信息交換,還包含設(shè)備管理信息的交流。通過現(xiàn)場總線,各種智能設(shè)備(智能變送器、調(diào)節(jié)閥、分析儀和分布式I/O單元)可以方便地進(jìn)行數(shù)據(jù)交換,過程控制策略可以完全在現(xiàn)場設(shè)備層次上實現(xiàn)。它是一種串行的、數(shù)字的數(shù)據(jù)通信鏈路?,F(xiàn)場總線可用在多種場合遠(yuǎn)程數(shù)據(jù)采集、監(jiān)控、工廠自動化、過程控制、數(shù)據(jù)通訊等。
          現(xiàn)場總線的產(chǎn)品或技術(shù)自80年代開始發(fā)展以來,現(xiàn)已有40余種。在應(yīng)用中,無論采用那一種現(xiàn)場總線產(chǎn)品或技術(shù),不管它的名氣有多大、牌子有多響,如果只談其產(chǎn)品的速度,而不談其支持總線系統(tǒng)的效率,那將無法評價一種產(chǎn)品或技術(shù)的優(yōu)劣。這在構(gòu)成應(yīng)用系統(tǒng)的選型中顯得尤其重要。本文就現(xiàn)場總線的速度和現(xiàn)場總線的效率問題進(jìn)行討論。并導(dǎo)出評價現(xiàn)場總線效率的計算方法。
          1 現(xiàn)場總線的速度
          在現(xiàn)場總線條件下(特別是在惡劣環(huán)境時),大多數(shù)現(xiàn)場總線介質(zhì)采用雙絞線或同軸電纜(現(xiàn)在使用光纖也很常見),而這些傳輸媒體的頻帶寬度、分布參數(shù)和傳輸速度息息相關(guān),無論DTE(Data Ter-minal Equipment)通信速度有多高,但絕不等于DCE(Data Circuit Equipment)就一定有那樣高。通俗地講,DTE速度指的是PC到MODEM之間的速度,DCE速度為MODEM到MODEM之間的傳輸速度(在無MODEM情況下,DTE速度是PC到通信口之間的速度,DCE速度為通信口到通信口之間的傳輸速度)。由于現(xiàn)場總線使用媒體的限制,DTE速度很高時,DCE速度有可能很低。因此,現(xiàn)場總線的速度決不是某種芯片或某種通信卡或設(shè)備所具有的速度,應(yīng)為其形成現(xiàn)場總線后的DCE速度。
          例如,在進(jìn)行某海港礦石碼頭生產(chǎn)作業(yè)自動監(jiān)控系統(tǒng)的現(xiàn)場總線設(shè)計時就遇到此類問題。按設(shè)計數(shù)據(jù)量選擇通信總線產(chǎn)品時,其技術(shù)指標(biāo)(如速度指標(biāo))達(dá)到要求的產(chǎn)品,并不一定能做系統(tǒng)應(yīng)用。這個問題在下面的討論中將會明顯看到。
          當(dāng)然,高的DTE速度是較高的現(xiàn)場總線速度的基礎(chǔ)。而高的現(xiàn)場總線速度會帶來較高的現(xiàn)場總線效率,這一點毋庸置疑。
          通常定義總線速度為單位時間內(nèi)總線所傳送信息或數(shù)據(jù)的總量。
          2 現(xiàn)場總線的效率
          現(xiàn)場總線的速度和效率是二個不同的概念。
          定義1:現(xiàn)場總線效率等于單位時間內(nèi)總線所傳有效信息或數(shù)據(jù)總量占單位時間內(nèi)總線上信息或數(shù)據(jù)總傳輸量的比率。
          設(shè)E為現(xiàn)場總線效率,T為總傳送時間,Ql為T內(nèi)傳送的有效信息或數(shù)據(jù)量,Q為T內(nèi)傳送的信息或數(shù)據(jù)總量。則:
          E=(Ql/T)/(Q/T)=Q1/Q (1)
          例如,在串行異步通信模式下,異步接收是靠檢測傳送數(shù)據(jù)的起始位和終止位來確定數(shù)據(jù)位的。一般情況下,數(shù)據(jù)位為1個字節(jié)8bit,起始位占lbit,終止位占2bit,校驗位lbit。所以串行異步通信模式傳送1個字節(jié)的有效數(shù)據(jù),有4bit的額外信息在內(nèi)。可以說串行異步通信的傳輸效率很低。由串行異步通信模式形戊的現(xiàn)場總線的效率也將很低,通常應(yīng)用于速度要求不高的場合。
          再如,使用HDLC/SDLC規(guī)程模式的串行同步通信,由于其幀格式中信息段可以是任意長度(一般定為255B,即2040b),雖然它的信息幀中也有起始結(jié)束標(biāo)志位(8bit+8bit)、地址段(8bit)、控制段(8bit)、校驗段(16bit),但和串行異步模式相比較,它的傳送效率較高。因此,由串行同步通信模式形成的現(xiàn)場總線的傳輸效率較高。
          由上述情況可以看出,現(xiàn)場總線的效率不僅和DCE速度有關(guān),而且還受其使用的通信規(guī)約限制。
          3 現(xiàn)場總線的實際速度和實際效率

          一般認(rèn)為,現(xiàn)場總線的速度是單位時間內(nèi)總線數(shù)據(jù)或信息的傳輸能力,我們認(rèn)為這個定義不夠確切。這也是許多現(xiàn)場總線產(chǎn)品(包括某些其它產(chǎn)品)最能迷惑用戶的地方。嚴(yán)格地講,這個講法只能稱為現(xiàn)場總線的最高速度,而"真正現(xiàn)場總線的速度"應(yīng)按以下定義:
          定義2:對于1個固定的現(xiàn)場總線系統(tǒng)或網(wǎng)絡(luò),它的現(xiàn)場總線速度應(yīng)為系統(tǒng)現(xiàn)場總線上所有終端(DTE)按一定信息或數(shù)據(jù)量(設(shè)定量)通信1個循環(huán)后,其平均單位時間內(nèi)數(shù)據(jù)的傳輸量。
          設(shè)現(xiàn)場總線速度為V,總線負(fù)載數(shù)(終端數(shù))為N,N個終端按一定信息或數(shù)據(jù)量傳輸1個循壞的時間為T,T內(nèi)數(shù)據(jù)傳輸總量為Q,則:
          V=Q/T (2)
          對于定義2,也很容易理解。按HDLC/SDLC規(guī)程進(jìn)行串行同步通信、當(dāng)信息幀有多個時,相鄰信息幀之間需要控制幀和總線復(fù)位時間(無數(shù)據(jù)信息)銜接,因此它的數(shù)據(jù)傳輸速度取平均值,而不按單幀傳輸能力來計算是切合實際的。當(dāng)總線負(fù)載較多時,系統(tǒng)又有應(yīng)答周期和發(fā)送、接收準(zhǔn)備時間,故該定義才能真正表達(dá)現(xiàn)場總線的實際速度。
          很顯然,定義1定義的現(xiàn)場總線效率也只能代表現(xiàn)場總線的最高效率(或吞吐能力),而且還有它的不合理性,即它與時間無關(guān)。也就是說,無論現(xiàn)場總線上的傳送速度有多慢,總線效率E依然有可能很高,這就違背了效率二字的本意。將定義1根據(jù)實際應(yīng)用情況并參考國外有關(guān)文獻(xiàn)進(jìn)行修改后,得出了比較準(zhǔn)確的描述。
          現(xiàn)場總線的實際效率定義:
          定義3:對于1個固定的現(xiàn)場總線系統(tǒng)或網(wǎng)絡(luò),它的總線效率應(yīng)為系統(tǒng)現(xiàn)場總線上所有終端按一定信息或數(shù)據(jù)量(設(shè)定量)和給定通信速度(波特率)通信1個循環(huán)后,其傳輸有效信息或數(shù)據(jù)總量和實際信息或數(shù)據(jù)傳輸總量之比乘以(系統(tǒng)完整通信周期內(nèi)按給定通信速度)傳輸總有效信息或數(shù)據(jù)所需的理論計算時間和實際耗用時間之比。
          這個定義可解釋為:總線的信息或數(shù)據(jù)效率與時間效率之積。
          設(shè)總線效率為E,B為通信波特率,Q1為1個傳輸循環(huán)內(nèi)有效信息或數(shù)據(jù)的傳輸量,Tl為按B傳輸Ql所需的理論時間,Q為i個通信循環(huán)周期內(nèi)傳輸信息或數(shù)據(jù)總量,T為l個傳輸循環(huán)周期時間,則
          E=(Q1/Q)*(T1/T)*100% (3)
          E=(Q1/T)/(Q/Tl)*100% (4)
          理論上:Tl=Ql/B (5)
          由式(3)可以看出:
          當(dāng)Ql=Q時,E=Tl/T*l00% (6)
          若使Ql=Q或Q1接近Q,必須有高效率的通信規(guī)約(合理的通信協(xié)議)。
          顯然,Ql=Q、Tl=T時,E=l。
          這是最理想的狀態(tài)。實際上,Ql<Q、Tl<T,因此,E<l。
          設(shè)Ql≈Q,Tl≈Q/B
          則:E≈(Q1/T)*B*l00% (7)
          式(7)說明現(xiàn)場總線效率和總線通信速度B成正比。Ql/T解釋為使用通信規(guī)約的合理性,當(dāng)使用的通信規(guī)約使得Ql=Q時,總線效率E約為100%,這顯然是目前很難達(dá)到的。
          由式(7)可以得出提高現(xiàn)場總線效率的方法:
          ①提高總通信速度;
          ②增加通信規(guī)約的合理性。
          根據(jù)上面3個定義,再來衡量任何現(xiàn)場總線產(chǎn)品是否適合使用時,顯然不能用它的最大指標(biāo)(最高速度和最高效率)為依據(jù),要用其實際總線效率和總線速度來評判。一種好的現(xiàn)場總線產(chǎn)品或技術(shù)應(yīng)有高的現(xiàn)場總線效率,否則不能稱好。
          由以上討論可以得出以下結(jié)論:具有較高速度指標(biāo)的現(xiàn)場總線產(chǎn)品,如不支持合理的通信協(xié)議,就不能使其擁有較高的總線效率。
          4 應(yīng)用舉例
          現(xiàn)在用定義3計算RS-485總線下,進(jìn)行串行異步通信的總線效率問題。
          假定RS-485總線(lkm雙絞線)上有6個終端(普通PC機(jī)、485通信卡、以C語言自編通信程序),以19200bit/s的速率進(jìn)行主從通信。設(shè)定傳輸數(shù)據(jù)量為19200bit/s(l0*1920),通信格式按每1個字節(jié)數(shù)據(jù)有l(wèi)bit的起始位、2bit的終止位、lbit校驗位。

          通信應(yīng)答格式(握手信號)為:XXXXaaaa#和SSSSaaaa#,即:2*72bit。其中,XXXX、SSSS為系統(tǒng)代碼,aaaa為終端號。
          則Tl=9600/9600=ls Ql=9600bit
          Q=9600*(1+1/3)+5*144=13520bit
          實際通信1個上位機(jī)對5個下位機(jī)通信1個循環(huán)所用時間為2.95s。
          則實際速度V=Q/T=13520/2.95=4583bit/s
          實際效率E=(9600/13520)*(1/2.95)*100%=24%
          由此可以看出,這個系統(tǒng)的有效數(shù)據(jù)傳輸速度(實際速度)僅為4583bit/s,不到設(shè)定通信波特率9600bit/s的1/2,其總線效率非常低。如用它做現(xiàn)場總線系統(tǒng)設(shè)計時,至少要有4倍以上的傳輸速度冗余才能達(dá)到9600bit/s有效數(shù)據(jù)的傳送量。
          以上對現(xiàn)場總線速度和現(xiàn)場總線效率的討論,在現(xiàn)場總線構(gòu)成的自控系統(tǒng)的設(shè)計選型中曾使用,減少了不必要的精力和時間的浪費。


          關(guān)鍵詞: 現(xiàn)場總線速度效

          評論


          技術(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); })();