詳解RS-485上下拉電阻的選擇

注:本文轉載於致遠電子

前言:RS-485總線廣泛應用於通信、工業自動化等領域,在實際應中,通常會遇到是否需要加上下拉電阻以及加多大的電阻合適的問題,下面我們將對這些問題進行詳細的分析。


一、爲什麼需要加上下拉電阻?

根據RS-485標準,當485總線差分電壓大於+200mV時,485收發器輸出高電平;當485總線差分電壓小於-200mV時,485收發器輸出低電平;當485總線上的電壓在-200mV~+200mV時,485收發器可能輸出高電平也可能輸出低電平,但一般總處於一種電平狀態,若485收發器的輸出低電平,這對於UART通信來說是一個起始位,此時通信會不正常。

當485總線處於開路(485收發器與總線斷開)或者空閒狀態(485收發器全部處於接收狀態,總線沒有收發器進行驅動)時,485總線的差分電壓基本爲0,此時總線就處於一個不確定的狀態。同時由於目前485芯片爲了提高總線上的節點數,輸入阻抗設計的比較高,例如輸入阻抗爲1/4單位阻抗或者1/8單位阻抗(單位阻抗爲12kΩ,1/4單位阻抗爲48kΩ),在管腳懸空時容易受到電磁干擾。

因此爲了防止485總線出現上述情況,通常在485總線上增加上下拉電阻(通常A接上拉電阻,B總線下拉電阻)。若使用隔離RS-485收發模塊(例如RSM485PCHT),由於模塊內部具有上下拉電阻(對於RSM485PCHT,內部上下拉電阻爲24kΩ),因此在模塊外部一般不需要增加上下拉電阻。


二、什麼情況下需要加上下拉電阻?

當遇到信號反射問題時,通常會通過增加匹配電阻來避免信號反射,以1對1通信爲例,如圖1所示。由於485總線通常使用特性阻抗爲120Ω的雙絞線,因此在485總線的首尾兩端增加120Ω終端電阻來避免信號反射問題。


根據RSM485PCHT的具體參數(如表1)可以得到如圖2所示等效電路,其中RPU、RPD爲模塊內部在485總線上加的上下拉電阻,RIN爲模塊的輸入阻抗。


當兩個模塊都處於接收狀態時,可以根據基爾霍夫電流定律對節點A和節點B列出下列公式:

根據上述公式可以計算AB之間的差分電壓爲:

此時模塊已處於不確定狀態,模塊接收器可能輸出爲高電平,也可能輸出爲低電平,這時就需要在模塊外部增加上下拉電阻保證模塊在空閒時不處於不確定狀態。


三、上下拉電阻如何取?

假設模塊的輸出電源電壓V¬O相同,由於RGND接在一起,因此可以認爲模塊內部的上拉電阻是並聯在一起的,爲了方便解釋,對圖2的電路進行整理,如圖3所示,在模塊外部增加上下拉電阻可以選擇只增加一組,也可以選擇在每個模塊都增加上下拉電阻,爲了解釋方便,我們在485總線上增加一組上下拉電阻。


其中:

  • RPU爲模塊內部上拉電阻,RPD爲模塊內部的下拉電阻,本例中爲24kΩ;
  • RIN爲模塊接收器輸入阻抗,本例取最小值爲120kΩ;
  • RT爲終端電阻,本例取120Ω;
  • RPU_EX爲模塊外部所加的上拉電阻,RPD_EX爲模塊外部所加的下拉電阻;

由於RSM485PCHT的門限電平爲-200mV~+200mV,一般留有100mV或200mV的電壓裕量,本例留有100mV的電壓裕量,根據前面所推導的差分電壓公式,可以得到下面計算公式:


由於RSM485PCHT在供電電壓範圍爲4.75V~5.25V,取VO=4.75V(最低輸入電壓VCC=4.75V情況下),可得:


由RPU=24kΩ,可得RPU_EX=RPD_EX=461.9Ω,由於計算出的電阻值爲最大值,因此可以選擇在485總線上僅加一組410Ω或390Ω的上下拉電阻,或者加兩組910Ω上下拉電阻。


四、如何驗證上下拉電阻取值?

上述計算僅考慮了485總線空閒狀態時不處於不確定狀態,並沒有考慮485收發器的驅動能力和所用元器件的功耗等問題。外部所加上下拉電阻越小,可以將485總線空閒狀態差分電壓保持的越高,但與此同時,終端電阻和上下拉電阻的功耗也越大,對485收發器的驅動能力要求也越高,當超過485收發器的驅動能力時,也會導致通信失敗。

根據RS-485標準,當接收器的輸入阻抗爲單位阻抗時(最小爲12k),總線上最多可以接32個節點,485的差分負載最大爲54Ω,此時差分輸出電壓最小爲1.5V。

如圖4所示,我們可以看到當485總線上接有32個節點時,總線A或B的共模負載爲:


由此可見,對於RS-485的標準來說,A總線或B總線的最大共模負載爲375Ω。


當增加終端電阻後,可以發現485總線的共模負載沒有發生變化,但差模負載急劇減小,差模負載爲:


因此當485總線的節點數達到最多以及增加終端電阻後,485總線的差模負載仍大於54Ω,根據RS-485的標準,差分輸出電壓最小爲1.5V。


以RSM485PCHT爲例說明增加上下拉電阻的情況,如圖6所示,總線A或B的共模負載爲:


實際測試上述情況,驅動輸出的最小差分電壓3.02V,這個電壓遠大於RS-485標準規定的最小差分輸出電壓1.5V。


當在485總線上增加終端電阻時,可以看出總線A或B的共模負載並沒有發生變化,而差分阻抗有了較大的變化,此時差模負載爲: 


計算出的差模負載要略大於RS-485標準規定的最大負載爲54Ω,我們對RSM485PCHT進行實際測試,其輸出差分電壓1.58V,略大於標準規定的最小電壓。

當差模負載爲54Ω(485總線接兩個120Ω終端電阻並且上拉電阻(下拉電阻)與收發器內阻的並聯值爲270Ω)時,RSM485PCHT的差分輸出電壓爲1.52V(實測值),基本和RS-485標準相同。當差模負載爲41.54Ω(485總線接兩個120Ω終端電阻並且上拉電阻(下拉電阻)與收發器內阻的並聯值爲135Ω)時,RSM485PCHT的差分輸出電壓在1.17V左右(實測值),在這種情況下可以通信。但485收發芯片手冊中規定的最大差模負載通常爲54Ω,即在485總線上增加兩個120Ω後,上拉電阻(下拉電阻)與收發器輸入阻抗的並聯值應大於270Ω。同時爲了保證穩定可靠通信,一般485總線的上拉電阻(下拉電阻)與收發器輸入阻抗的並聯值應大於375Ω。


五、總結

  1. 通信線應選用屏蔽雙絞線,屏蔽層應單點接大地;

  2. 當我們沒有遇到信號反射問題時,儘量不要使用終端電阻;

  3. 如果使用終端電阻,我們可以通過上下拉電阻調節485總線在空閒狀態的電壓值,保證不處於門限電平(-200mV~+200mV或-200mV~-40mV)範圍內;

  4. 當我們增加上下拉電阻時,上拉電阻(下拉電阻)與收發器輸入阻抗的並聯值應大於375Ω。





發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章