新聞中心

        EEPW首頁 > 網絡與存儲 > 設計應用 > RS422/RS485總線模型分析與應用

        RS422/RS485總線模型分析與應用

        作者:李德慶,宋斌 時間:2008-07-14 來源:電子元器件應用 收藏

          0 引言

        本文引用地址:http://www.104case.com/article/85659.htm

          RS422/RS485接口作為多點、差分數據傳輸的電氣規范,現已成為業界應用較為廣泛的標準接口之一。RS422/RS485標準只對接口的電氣特性做出了規定,而不涉及接插件、電纜或協議,因此,用戶可在此基礎上建立自己的高層協議。

          1 基本原理

          RS422/RS485標準的全稱為TIA/EIA-422-B和TIA/EIA-485串行標準。它們的數據信號均采用差分傳輸方式,也稱作平衡傳輸。這兩者在電氣特性上非常接近,不同之處只是傳輸方式的不同。

          RS485的典型工作方式如圖1所示。RS485典型的使用一對雙絞線,并將其中的一線定義為A,另一線定義為B。兩線工作時采用半雙工通信方式,其工作狀態(發送狀態和接收狀態)由使能控制信號決定。

          一般情況下,的A、B間的正電平電壓為+2~+6 V時代表一個邏輯狀態;A、B之間的負電平在-6~-2 V時代表另外一個邏輯狀態。另外還有一個信號地C。事實上,在很多情況下,都會忽視信號地的連接。這里建議采用經過處理的低阻通路把信號地連接起來,以增加其共模抗干擾能力并減少電磁輻射。“使能”控制信號E用于與傳輸線的切斷和連接,當ENABLE起作用時,發送器處于高阻狀態,稱作“第三態”,它是有別于邏輯“1”與“0”的第三種狀態。

          接收器與驅動器的規定相似,其收、發端均可通過平衡雙絞線將A-A與B-B對應相連。當接收端A、B之間有大于+200 mV的電平時,輸出為正邏輯電平;小于-200 mV時,輸出為負邏輯電平。在接收器的接收平衡線上,電平范圍通常是在200 mV~6 V之間。

          一般可定義邏輯1(正邏輯電平)為B>A的狀態,邏輯0(負邏輯電平)為A>B的狀態,A、B之間的壓差不小于200 mV。

          RS485的四線工作狀態和RS422的四線工作狀態基本一致,從物理的角度上講,RS422相當于兩個RS485同時工作,一個工作于接收狀態,一個工作于發送狀態。

          2 信號分析

          根據以上說明,這里對RS422/RS485的傳輸特性建立一個信號分析模型,因為RS485更具有代表性,所以采用RS485作為分析對象。RS485是典型的信號處理標準,其傳遞函數模型如圖2所示。

          根據圖2規范設計定義域時,D可代表輸出的數字信號(TTL電平或者CMOS電平),其邏輯信號的取值空間為{0,1};Dr代表接收的數字信號(TTL電平或者CMOS電平),其邏輯信號的取值空間為{0,1};E,EN為使能信號。驅動器和接收器與傳輸線的連接關系(高電平或者低電平有效控制)存在兩種情況:定義ENABLE為連接有效狀態,DISABLE為未連接狀態,取值空間為{ENABLE,DISABLE}。在RS485通信標準中,一般情況下,E、EN若一個有效則另一個禁止,而RS422則兩個均為有效;A,B為驅動器與傳輸線的接口電壓,其規范定義為(-6V,+6V);Ar,Br為接收器與傳輸線接口的電壓。為了實現RS422/RS485的接口兼容,這里應定義為(-7V,+10V)。實際上,驅動器傳遞函數定義中有四種可滿足RS485通信標準的情況:

          D=1,E=DISABLE時,輸出A,B狀態為未定;

          D=0,E=DISABLE時,輸出A,B狀態為未定;

          D=1,E=ENABLE時,輸出B-A>2V,且A,B∈(6V,+6V);

          D=0,E=ENABLE時,輸出A-B>2V,且A,B∈(6V,+6V)。

          所以,能夠實現上面傳遞函數的所有電路均可作為RS485的驅動器參考設計,當然,還需要滿足其輸入輸出特性。

          從接收器傳遞函數的定義可以把接收器分成兩類,其一是EN=DIABLE,這相當于驅動器沒有掛載在上(可以認為不存在)。其二是EN=ENABLE,此時又存在兩種正常工作情況,一是輸出Dr=1時,Br-Ar>200 mV;二是輸出Dr=0時,Ar-Br>200 mV。

          為了滿足接收器正常工作的需要,操作時還需要考慮以下幾種情況:

          (1)Ar、Br的電壓范圍應該嚴格限制在-7~10V,否則可能損壞器件。一般采用穩壓的二極管網絡來實現電壓的限制。

          (2)當|Ar-Br|<200 mV時,接收器數據的判別。一般可采用電阻網絡,將Ar通過10 kΩ的電阻接在VCC上,而將Br通過10 kΩ的電阻接在GROUND上,這樣,當上沒有信號傳輸的時候,即可保持Ar的電平為3.2 V左右,Br的電平大約為1.6 V,這樣,即使有干擾信號,也很難產生串行通信的其始信號0。

          (3)一般情況下,為了減少線路上傳輸信號的反射,可在RS422總線電纜的遠端并接1個100Ω電阻,并應在RS485網絡傳輸線的始端和末端各接1個120 Ω的匹配電阻。

          3 工程實現

          根據以上分析,這里給出一個RS422/RS485兼容的實際應用電路,其具體電路如圖3所示。

          圖3電路中采用的芯片為MAX491ESD。當用MAX491ESD進行RS422通信時,應把跳線帽安裝在JP2的管腳2和管腳1上,JP1和JP3跳線帽去掉;而當其作為RS485通信的時候,則應把跳線帽安裝在JP2的管腳2和管腳3上,JP1和JP3加上跳線帽,從而構成兩個節點的RS485網絡。穩壓管D1,D2的作用是把A的電壓牢牢限制在-7V~+12V,以有效保護RS422/RS485網絡。增加D3和D8的目的主要是為了防止浪涌電壓。這個實際電路是以信號分析模型作為指導的依據建立起來的,可以在實際的測試和運行中滿足預期要求。

          4 結束語

          本文從信號處理的角度分析了RS422/RS485網絡的硬件構成,并將其抽象為一個信號處理分析模型,從而給出相應的傳遞函數和定義域。



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 集安市| 惠水县| 大余县| 洪湖市| 岐山县| 九江县| 庆城县| 沁源县| 舞钢市| 磐石市| 缙云县| 淮滨县| 宾阳县| 南投市| 乌苏市| 永靖县| 万全县| 武威市| 中宁县| 美姑县| 上蔡县| 垣曲县| 青龙| 金昌市| 眉山市| 汉川市| 南皮县| 邻水| 潞城市| 芦山县| 化隆| 厦门市| 普安县| 高清| 辉南县| 临泉县| 铜鼓县| 九江市| 龙口市| 湖口县| 万载县|