RS422/RS485總線模型分析與應(yīng)用
0 引言
本文引用地址:http://2s4d.com/article/85659.htmRS422/RS485總線接口作為多點(diǎn)、差分?jǐn)?shù)據(jù)傳輸?shù)碾姎庖?guī)范,現(xiàn)已成為業(yè)界應(yīng)用較為廣泛的標(biāo)準(zhǔn)通信接口之一。RS422/RS485標(biāo)準(zhǔn)只對(duì)接口的電氣特性做出了規(guī)定,而不涉及接插件、電纜或協(xié)議,因此,用戶可在此基礎(chǔ)上建立自己的高層通信協(xié)議。
1 基本原理
RS422/RS485標(biāo)準(zhǔn)的全稱為TIA/EIA-422-B和TIA/EIA-485串行通信標(biāo)準(zhǔn)。它們的數(shù)據(jù)信號(hào)均采用差分傳輸方式,也稱作平衡傳輸。這兩者在電氣特性上非常接近,不同之處只是傳輸方式的不同。
RS485的典型工作方式如圖1所示。RS485典型的驅(qū)動(dòng)器使用一對(duì)雙絞線,并將其中的一線定義為A,另一線定義為B。兩線工作時(shí)采用半雙工通信方式,其工作狀態(tài)(發(fā)送狀態(tài)和接收狀態(tài))由使能控制信號(hào)決定。
一般情況下,驅(qū)動(dòng)器的A、B間的正電平電壓為+2~+6 V時(shí)代表一個(gè)邏輯狀態(tài);A、B之間的負(fù)電平在-6~-2 V時(shí)代表另外一個(gè)邏輯狀態(tài)。另外還有一個(gè)信號(hào)地C。事實(shí)上,在很多情況下,都會(huì)忽視信號(hào)地的連接。這里建議采用經(jīng)過(guò)處理的低阻通路把信號(hào)地連接起來(lái),以增加其共??垢蓴_能力并減少電磁輻射。“使能”控制信號(hào)E用于驅(qū)動(dòng)器與傳輸線的切斷和連接,當(dāng)ENABLE起作用時(shí),發(fā)送器處于高阻狀態(tài),稱作“第三態(tài)”,它是有別于邏輯“1”與“0”的第三種狀態(tài)。
接收器與驅(qū)動(dòng)器的規(guī)定相似,其收、發(fā)端均可通過(guò)平衡雙絞線將A-A與B-B對(duì)應(yīng)相連。當(dāng)接收端A、B之間有大于+200 mV的電平時(shí),輸出為正邏輯電平;小于-200 mV時(shí),輸出為負(fù)邏輯電平。在接收器的接收平衡線上,電平范圍通常是在200 mV~6 V之間。
一般可定義邏輯1(正邏輯電平)為B>A的狀態(tài),邏輯0(負(fù)邏輯電平)為A>B的狀態(tài),A、B之間的壓差不小于200 mV。
RS485的四線工作狀態(tài)和RS422的四線工作狀態(tài)基本一致,從物理的角度上講,RS422相當(dāng)于兩個(gè)RS485同時(shí)工作,一個(gè)工作于接收狀態(tài),一個(gè)工作于發(fā)送狀態(tài)。
2 信號(hào)分析
根據(jù)以上說(shuō)明,這里對(duì)RS422/RS485的傳輸特性建立一個(gè)信號(hào)分析模型,因?yàn)镽S485更具有代表性,所以采用RS485作為分析對(duì)象。RS485是典型的信號(hào)處理標(biāo)準(zhǔn),其傳遞函數(shù)模型如圖2所示。
根據(jù)圖2規(guī)范設(shè)計(jì)定義域時(shí),D可代表微處理器輸出的數(shù)字信號(hào)(TTL電平或者CMOS電平),其邏輯信號(hào)的取值空間為{0,1};Dr代表微處理器接收的數(shù)字信號(hào)(TTL電平或者CMOS電平),其邏輯信號(hào)的取值空間為{0,1};E,EN為使能信號(hào)。驅(qū)動(dòng)器和接收器與傳輸線的連接關(guān)系(高電平或者低電平有效控制)存在兩種情況:定義ENABLE為連接有效狀態(tài),DISABLE為未連接狀態(tài),取值空間為{ENABLE,DISABLE}。在RS485通信標(biāo)準(zhǔn)中,一般情況下,E、EN若一個(gè)有效則另一個(gè)禁止,而RS422則兩個(gè)均為有效;A,B為驅(qū)動(dòng)器與傳輸線的接口電壓,其規(guī)范定義為(-6V,+6V);Ar,Br為接收器與傳輸線接口的電壓。為了實(shí)現(xiàn)RS422/RS485的接口兼容,這里應(yīng)定義為(-7V,+10V)。實(shí)際上,驅(qū)動(dòng)器傳遞函數(shù)定義中有四種可滿足RS485通信標(biāo)準(zhǔn)的情況:
D=1,E=DISABLE時(shí),輸出A,B狀態(tài)為未定;
D=0,E=DISABLE時(shí),輸出A,B狀態(tài)為未定;
D=1,E=ENABLE時(shí),輸出B-A>2V,且A,B∈(6V,+6V);
D=0,E=ENABLE時(shí),輸出A-B>2V,且A,B∈(6V,+6V)。
所以,能夠?qū)崿F(xiàn)上面?zhèn)鬟f函數(shù)的所有電路均可作為RS485的驅(qū)動(dòng)器參考設(shè)計(jì),當(dāng)然,還需要滿足其輸入輸出特性。
從接收器傳遞函數(shù)的定義可以把接收器分成兩類,其一是EN=DIABLE,這相當(dāng)于驅(qū)動(dòng)器沒(méi)有掛載在總線上(可以認(rèn)為不存在)。其二是EN=ENABLE,此時(shí)又存在兩種正常工作情況,一是輸出Dr=1時(shí),Br-Ar>200 mV;二是輸出Dr=0時(shí),Ar-Br>200 mV。
為了滿足接收器正常工作的需要,操作時(shí)還需要考慮以下幾種情況:
(1)Ar、Br的電壓范圍應(yīng)該嚴(yán)格限制在-7~10V,否則可能損壞器件。一般采用穩(wěn)壓的二極管網(wǎng)絡(luò)來(lái)實(shí)現(xiàn)電壓的限制。
(2)當(dāng)|Ar-Br|<200 mV時(shí),接收器數(shù)據(jù)的判別。一般可采用電阻網(wǎng)絡(luò),將Ar通過(guò)10 kΩ的電阻接在VCC上,而將Br通過(guò)10 kΩ的電阻接在GROUND上,這樣,當(dāng)總線上沒(méi)有信號(hào)傳輸?shù)臅r(shí)候,即可保持Ar的電平為3.2 V左右,Br的電平大約為1.6 V,這樣,即使有干擾信號(hào),也很難產(chǎn)生串行通信的其始信號(hào)0。
(3)一般情況下,為了減少線路上傳輸信號(hào)的反射,可在RS422總線電纜的遠(yuǎn)端并接1個(gè)100Ω電阻,并應(yīng)在RS485網(wǎng)絡(luò)傳輸線的始端和末端各接1個(gè)120 Ω的匹配電阻。
3 工程實(shí)現(xiàn)
根據(jù)以上分析,這里給出一個(gè)RS422/RS485兼容的實(shí)際應(yīng)用電路,其具體電路如圖3所示。
圖3電路中采用的芯片為MAX491ESD。當(dāng)用MAX491ESD進(jìn)行RS422通信時(shí),應(yīng)把跳線帽安裝在JP2的管腳2和管腳1上,JP1和JP3跳線帽去掉;而當(dāng)其作為RS485通信的時(shí)候,則應(yīng)把跳線帽安裝在JP2的管腳2和管腳3上,JP1和JP3加上跳線帽,從而構(gòu)成兩個(gè)節(jié)點(diǎn)的RS485網(wǎng)絡(luò)。穩(wěn)壓管D1,D2的作用是把A的電壓牢牢限制在-7V~+12V,以有效保護(hù)RS422/RS485網(wǎng)絡(luò)。增加D3和D8的目的主要是為了防止浪涌電壓。這個(gè)實(shí)際電路是以信號(hào)分析模型作為指導(dǎo)的依據(jù)建立起來(lái)的,可以在實(shí)際的測(cè)試和運(yùn)行中滿足預(yù)期要求。
4 結(jié)束語(yǔ)
本文從信號(hào)處理的角度分析了RS422/RS485網(wǎng)絡(luò)的硬件構(gòu)成,并將其抽象為一個(gè)信號(hào)處理分析模型,從而給出相應(yīng)的傳遞函數(shù)和定義域。
評(píng)論