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

          新聞中心

          EEPW首頁 > 模擬技術(shù) > 設(shè)計應(yīng)用 > 提高RS-485網(wǎng)絡(luò)可靠性的若干措施

          提高RS-485網(wǎng)絡(luò)可靠性的若干措施

          作者: 時間:2012-05-16 來源:網(wǎng)絡(luò) 收藏

          建議性標(biāo)準(zhǔn)-作為一種多點、差分?jǐn)?shù)據(jù)傳輸?shù)碾姎庖?guī)范現(xiàn)已成為業(yè)界應(yīng)用最為廣泛的標(biāo)準(zhǔn)通信接口之一。這種通信接口允許在簡單的一對雙絞線上進行多點、雙向通信、它所具有的噪聲抑制能力、數(shù)據(jù)傳輸速率、電纜長度及可靠性是其他標(biāo)準(zhǔn)無法比擬的。正因為此,許多不同領(lǐng)域都采用-作為數(shù)據(jù)傳輸鏈路。例如汽車電子、電信設(shè)備、局域網(wǎng)、蜂窩基站、工業(yè)控制、儀器儀表等等。這項標(biāo)準(zhǔn)得到廣泛接受的另外一個原因是它的通用性。-標(biāo)準(zhǔn)只對接口的電氣特性做出規(guī)定,而不涉及接插件、電纜或協(xié)議,在此基礎(chǔ)上用戶可以建立自己的高層通信協(xié)議。

          本文引用地址:http://www.ex-cimer.com/article/186409.htm

          盡管RS-485標(biāo)準(zhǔn)已被廣泛接受,但是對于它在實際應(yīng)用中的一些具體問題并沒有得到深入廣泛的認(rèn)識,甚至存在著種種誤區(qū),以至于影響到整個系統(tǒng)的性能。本文在回顧RS-485標(biāo)準(zhǔn)的基礎(chǔ)上,重點討論幾個實際應(yīng)用中常被忽視的問題。

          RS-485標(biāo)準(zhǔn)回顧

          RS-485標(biāo)準(zhǔn)最初由電子工業(yè)協(xié)會(EIA)于1983年制訂并發(fā)布,后由TIA-通訊工業(yè)協(xié)會修訂后命名為TIA/EIA-485-A,不過工程師還是習(xí)慣地稱之為RS-485。RS-485由RS-422發(fā)展而來,后者是為彌補RS-232之不足而提出的。為改進RS-232通信距離短、速率低的缺點,RS-422定義了一種平衡通信接口,將傳輸速率提高到10Mbps,傳輸距離延長到4000英尺(速率低于100kbps時),并允許在一條平衡線上連接最多10個接收器。RS-422是一種單機發(fā)送、多機接收的單向、平衡傳輸規(guī)范,為擴展應(yīng)用范圍,隨后又為其增加了多點、雙向通信能力,即允許多個發(fā)送器連接到同一條總線上,同時增加了發(fā)送器的驅(qū)動能力和沖突保護特性,擴展了總線共模范圍,這就是后來的EIA RS-485標(biāo)準(zhǔn)。

          RS-485是一個電氣接口規(guī)范,它只規(guī)定了平衡驅(qū)動器和接收器的電特性,而沒有規(guī)定接插件、傳輸電纜和通信協(xié)議。RS-485標(biāo)準(zhǔn)定義了一個基于單對平衡線的多點、雙向(半雙工)通信鏈路,是一種極為經(jīng)濟、并具有相當(dāng)高噪聲抑制、傳輸速率、傳輸距離和寬共模范圍的通信平臺。RS-485接口的主要特點如下:

          平衡偉輸;

          多點通信;

          驅(qū)動器輸出電壓(帶載):≥|1.5V|;

          接收器輸入門限:±200mV;

          -7V至+12V總線共模范圍;

          最大輸入電流:1.0mA/-0.8mA(12Vin/-7Vin);

          最大總線負(fù)載:32個單位負(fù)載(UL);

          最大傳輸速率:10Mbps;

          最大電纜長度:4000英尺。

          網(wǎng)絡(luò)配置


          圖1:幾種錯誤的網(wǎng)絡(luò)連接方式及正確的方式

          RS-485支持半雙工或全雙工模式,網(wǎng)絡(luò)拓?fù)湟话悴捎媒K端匹配的總線型結(jié)構(gòu),不支持環(huán)形或星形網(wǎng)絡(luò)。最好采用一條總線將各個節(jié)點串接起來,從總線到每個節(jié)點的引出線長度應(yīng)盡量短,以便使引出線中的反射信號對總線信號的影響最低。圖1所示為實際應(yīng)用中常見的一些錯誤連接方式(a,c,e)和正確的連接方式(b,d,f)。a,c,e三種不恰當(dāng)?shù)木W(wǎng)絡(luò)連接盡管在某些情況下(短距離、低速率)仍然可以正常工作,但隨著通信距離的延長或通信速率的提高,其不良影響會越來越嚴(yán)重,主要原因是信號在各支路末端反射后與原信號疊加,造成信號質(zhì)量下降。除此之外還應(yīng)注意總線特性阻抗的連續(xù)性,在阻抗不連續(xù)點也會發(fā)生信號的反射。例如,總線的不同區(qū)段采用不同電纜、某一段總線上有過多收發(fā)器緊靠在一起安裝、或者是有過長分支線引出總線時都會出現(xiàn)阻抗不連續(xù)點。總之,應(yīng)該提供一條單一、連續(xù)的信號通道作為總線。

          有關(guān)總線上允許連接的收發(fā)器數(shù)標(biāo)準(zhǔn)并沒有做出規(guī)定,但規(guī)定了最大總線負(fù)載為32個單位負(fù)載(UL)。每單位負(fù)載的最大輸入電流為1.0mA/-0.8mA,相當(dāng)于約12kΩ。為了擴展總線節(jié)點數(shù),器件生產(chǎn)廠商增大收發(fā)器輸入電阻。例如MAX487,MAX1487的輸入電阻增加至48kΩ以上(1/4UL),節(jié)點數(shù)就可增加至128個,96kΩ輸入電阻的MAX1483允許節(jié)點數(shù)可到256個。

          總線匹配

          是否對RS-485總線進行終端匹配取決于數(shù)據(jù)傳輸速率、電纜長度及信號轉(zhuǎn)換速率。UART是在每個數(shù)據(jù)位的中點采樣數(shù)據(jù)的,只要反射信號在開始采樣時衰減到足夠低就可以不考慮匹配。有一條經(jīng)驗性的準(zhǔn)則可以用來判斷在什么樣的數(shù)據(jù)速率和電纜長度時需要進行匹配:當(dāng)信號的轉(zhuǎn)換時間(上升或下降時間)超過電信號沿總線單向傳輸所需時間的3倍以上時就可以不加匹配。例如具有限斜率特性的RS-485接口MAX483輸出信號的上升或下降時間最小為250ns,典型雙絞線上的信號傳輸速率約為0.2m/ns(24AWG PVC電纜),那么只要數(shù)據(jù)速率在250kbps以內(nèi)、電纜長度不超過16米,采用MAX483作為RS-485接口時就可以不加終端匹配。


          圖2:幾種終端匹配方案

          當(dāng)考慮終端匹配時,有多種匹配方案可以選擇。最簡單的就是在總線兩端各接一只阻值等于電纜特性阻抗的電阻(圖2a)。大多數(shù)雙絞線特性阻抗大約在100Ω至120Ω之間。這種匹配方法簡單有效,但有一個缺點,匹配電阻要消耗較大功率,對于功耗限制比較嚴(yán)格的系統(tǒng)不太適合。另外一種比較省電的匹配方式是RC匹配(圖2b)。利用一只電容C隔斷直流成分可以節(jié)省大部分功率。但電容C的取值是個難點,需要在功耗和匹配質(zhì)量間進行折衷。除上述兩種外,還有一種采用二極管的匹配方案(圖2c)。這種方案雖未實現(xiàn)真正的匹配,但它利用二極管的鉗位作用迅速削弱反射信號,達(dá)到改善信號質(zhì)量的目的。節(jié)能效果顯著。


          上一頁 1 2 3 下一頁

          關(guān)鍵詞: 485 RS 網(wǎng)絡(luò)可靠性

          評論


          相關(guā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); })();