發布時間:2014-09-10 23:33:00 閱讀次數:1693
當前自動控制系統中常用的網絡,如現場總線CAN、Profibus、INTERBUS-S以及ARCNet的物理層都是基于RS485的總線進行總結和研究的。
在自動化領域,隨著分布式控制系統的發展,迫切需要一種總線能適合遠距離的數字通信。在RS422標準的基礎上,EIA研究出了一種支持多節點、遠距離和接收高靈敏度的RS485總線標準。
RS485標準采有用平衡式發送,差分式接收的數據收發器來驅動總線,具體規格要求:
1.接收器的輸入電阻RIN≥12kΩ。
2.驅動器能輸出±7V的共模電壓。
3.輸入端的電容≤50pF。
4.在節點數為32個,配置了120Ω的終端電阻的情況下,驅動器至少還能輸出電壓1.5V(終端電阻的大小與所用雙絞線的參數有關)。
5.接收器的輸入靈敏度為200mV(即(V+)-(V-)≥0.2V,表示信號“0”;(V+)-(V-)≤-0.2V,表示信號“1”)。
因為RS485的遠距離、多節點(32個)以及傳輸線成本低的特性,使得RS485成為工業應用中數據傳輸的首選標準。
在通信過程中,有兩種信號因導致信號反射:阻抗不連續和阻抗不匹配。
阻抗不連續,信號在傳輸線末端突然遇到電纜阻抗很小甚至沒有,信號在這個地方就會引起反射,如圖1所示。這種信號反射的原理,與光從一種媒質進入另一種媒質要引起反射是相似的。消除這種反射的方法,就必須在電纜的末端跨接一個與電纜的特性阻抗同樣大小的終端電阻,使電纜的阻抗連續。由于信號在電纜上的傳輸是雙向的,因此,在通訊電纜的另一端可跨接一個同樣大小的終端電阻,如圖2所示。
從理論上分析,在傳輸電纜的末端只要跨接了與電纜特性阻抗相匹配的終端電阻,就再也不會出現信號反射現象。但是,在實現應用中,由于傳輸電纜的特性阻抗與通訊波特率等應用環境有關,特性阻抗不可能與終端電阻完全相等,因此或多或少的信號反射還會存在。
引起信號反射的另個原因是數據收發器與傳輸電纜之間的阻抗不匹配。這種原因引起的反射,主要表現在通訊線路處在空閑方式時,整個網絡數據混亂。
信號反射對數據傳輸的影響,歸根結底是因為反射信號觸發了接收器輸入端的比較器,使接收器收到了錯誤的信號,導致CRC校驗錯誤或整個數據幀錯誤。
在信號分析,衡量反射信號強度的參數是RAF(Refection Attenuation Factor反射衰減因子)。它的計算公式為RAF=20lg(Vref/Vinc),式中:Vref—反射信號的電壓大??;Vinc—在電纜與收發器或終端電阻連接點的入射信號的電壓大小。具體的測量方法如圖3所示。例如,由實驗測得2.5MHz的入射信號正弦波的峰-峰值為+5V,反射信號的峰-峰值為+0.297V,則該通訊電纜在2.5MHz的通訊速率時,它的反射衰減因子為:RAF=20lg(0.297/2.5)=-24.52dB。
要減弱反射信號對通訊線路的影響,通常采用噪聲抑制和加偏置電阻的方法。在實際應用中,對于比較小的反射信號,為簡單方便,經常采用加偏置電阻的方法。在通訊線路中,如何通過加偏置電阻提高通訊可靠性的原理,后面將做詳細介紹。
第二個影響信號傳輸的因素是信號在電纜的傳輸過程中衰減。一條傳輸電纜可以把它看出由分布電容、分布電感和電阻聯合組成的等效電路,如圖4所示。
電纜的分布電容C主要是由雙絞線的兩條平行導線產生。導線的電阻在這里對信號的影響很小,可以忽略不計。信號的損失主要是由于電纜的分布電容和分布電感組成的LC低通濾波器。PROFIBUS用的LAN標準型二芯電感(西門子為DP總線選用的標準電纜),在不同波特率時的衰減系數如表1所示。
表1 電纜的衰減系數 |
||||
通訊波特率 |
16MHz |
4MHz |
38.4kHz |
9.6kHz |
衰減體系數(1km) |
≤42dB |
≤22dB |
≤4dB |
≤2.5dB |
影響通訊性能的第三個因素是純阻性負載(也叫直流負載)的大小。這里指的純阻性負載主要由終端電阻、偏置電阻和RS485收發器三者構成。
在敘述RS485規范時曾提到過RS485驅動器在帶了32個節點,配置了150Ω終端電阻的情況下,至少能輸出1.5V的差分電壓。一個接收器的輸入電阻為12kΩ,整個網絡的等效電路如圖5所示。按這樣計算,RS485驅動器的負載能力為:
RL=32個輸入電阻并聯||2個終端電阻=((12000/32)×(150/2))/(12000/32)+(150/2))≈51.7Ω
現在比較常用的RS485驅動器有MAX485、DS3695、MAX1488/1489以及和利時公司使用的SN75176A/D等,其中有的RS485驅動器負載能力可以達到20Ω。在不考慮其它諸多因素的情況下,按照驅動能力和負載的關系計算,一個驅動器可帶節點的最大數量將遠遠大于32個。
在通訊波特率比較高的時候,在線路上偏置電阻是很有必要的。偏置電阻的連接方法如圖6。它的作用是在線路進入空閑狀態后,把總線上沒有數據時(空閑方式)的電平拉離0電平,如圖7。這樣一來,即使線路中出現了比較小的反射信號或干擾,掛接在總線上的數據接收器也不會由于這些信號的到來而產生誤動作。
在實際應用中,RS485總線加偏置電阻有兩種方法:
(1)把偏置電阻平衡分配給總線上的每一個收發器。這種方法給掛接在RS485總線上的每一個收發器加了偏置電阻,給每一個收發器都加了一個偏置電壓。
(2)在一段總線上只用一對偏置電阻。這種方法對總線上存在大的反射信號或干擾信號比較有效。值得注意的是偏置電阻的加入,增加了總線的負載。
在設計RS485總線組成的網絡配置(總線長度和帶負載個數)時,應該考慮到三個參數:純阻性負載、信號衰減和噪聲容限。純阻性負載、信號衰減這兩個參數,在前面已經討論過,現在要討論的是噪聲容限(Noise Margin)。RS485總線接收器的噪聲容限至少應該大于200mV。前面的論述者是在假設噪聲容限為0的情況下進行的。在實際應用中,為了提高總線的抗干擾能力,總希望系統的噪聲容限比RS485標準中規定的好一些。從下面的公式能看出總線帶負載的多少和通訊電纜長度之間的關系:
Vend=0.8(Vdriver-Vloss-Vnoise-Vbias)
其中:Vend為總線末端的信號電壓,在標準測定時規定為0.2V;Vdriver為驅動器的輸出電壓(與負載數有關。負載數在5~35個之間,Vdriver=2.4V;當負載數小于5,Vdriver=2.5V;當負載數大于35,Vdriver≤2.3V);Vloss為信號在總線中的傳輸過程中的損耗(與通訊電纜的規格和長度有關),由表1提供的標準電纜的衰減系數,根據公式衰減系數b=20lg(Vout/Vin)可以計算出Vloss=Vin-Vout=0.6V(注:通訊波特率為9.6kbps,電纜長度1km,如果特率增加,Vloss會相應增大);Vnoise為噪聲容限,在標準測定時規定為0.1V;Vbias是由偏置電阻提供的偏置電壓(典型值為0.4V)。
式中乘以0.8是為了使通信電纜不進入滿載狀態。從式中可以看出,Vdriver的大小和總線上帶負載數的多少成反比,Vloss的大小和總線長度成反比,其他幾個參數只和用的驅動器類型有關。因此,在選定了驅動器的RS485總線上,在通信波特率一定的情況下,帶負載數的多少,與信號能傳輸的最大距離是直接相關的。具體關系是:在總線允許的范圍內,帶負載數越多,信號能傳輸的距離就越??;帶負載數據少,信號能傳輸的距離就發越遠。
電纜的分布電容主是由雙絞線的兩條平行導線產生。另外,導線和地之間也存在分布電容,雖然很小,但在分析時也不能忽視。分布電容對總線傳輸性能的影響,主要是因為總線上傳輸的是基波信號,信號的表達方式只有“1”和“0”。在特殊的字節中,例如0x01,信號“0”使得分布電容有足夠的充電時間,而信號“1”到來時,由于分布電容中的電荷,來不及放電,(Vin+)—(Vin-)-還大于200mV,結果使接愛誤認為是“0”,而最終導致CRC校驗錯誤,整個數據幀傳輸錯誤。具體過程如圖8所示。
由于總線上分布影響,導致數據傳輸錯誤,從而使整個網絡性能降低。解決這個問題有兩種方法:
(1)降低數據傳輸的波特率;
(2)使用分布電容小的電纜,提高傳輸線的質量。