RS-485/RS-422接口為何在停止通信時(shí)接收器仍有數(shù)據(jù)輸出?
?RS485線和網(wǎng)線的主要區(qū)別在于它們的用途、傳輸特性、網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)以及應(yīng)用場(chǎng)景。??12用途和傳輸特性
?RS485線?:這是一種串行通信協(xié)議,主要用于工業(yè)自動(dòng)化、樓宇自動(dòng)化、安防監(jiān)控等領(lǐng)域。它支持多點(diǎn)通信,允許多個(gè)設(shè)備共享同一通信線路,具有很好的抗干擾能力。RS485線采用差分信號(hào)傳輸,能夠抑制共模干擾,適合長(zhǎng)距離通信需求(最大可達(dá)1200米)。
?網(wǎng)線?:基于以太網(wǎng)技術(shù),廣泛應(yīng)用于企業(yè)網(wǎng)絡(luò)和家庭網(wǎng)絡(luò)。它支持高速數(shù)據(jù)傳輸,適用于局域網(wǎng)和互聯(lián)網(wǎng)連接。網(wǎng)線通常用于需要大帶寬和復(fù)雜網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的應(yīng)用,如視頻監(jiān)控、數(shù)據(jù)中心等。
網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)
?RS485線?:采用總線型拓?fù)浣Y(jié)構(gòu),不支持環(huán)形或星型網(wǎng)絡(luò)。它通過一條總線將各個(gè)節(jié)點(diǎn)串接起來,不支持復(fù)雜的網(wǎng)絡(luò)結(jié)構(gòu)。
?網(wǎng)線?:支持多種網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),包括星型、環(huán)型等。這種靈活性使得網(wǎng)線在局域網(wǎng)和廣域網(wǎng)連接中具有更大的應(yīng)用范圍。
應(yīng)用場(chǎng)景
?RS485線?:適用于工業(yè)自動(dòng)化控制系統(tǒng)、樓宇自動(dòng)化(如電梯控制、照明控制)、遠(yuǎn)程監(jiān)控系統(tǒng)(如安防監(jiān)控、環(huán)境監(jiān)測(cè))等。由于其穩(wěn)定性和抗干擾能力,RS485在需要可靠通信的環(huán)境中非常受歡迎。
?網(wǎng)線?:廣泛應(yīng)用于企業(yè)局域網(wǎng)和互聯(lián)網(wǎng)連接,適合高速數(shù)據(jù)傳輸需求,如視頻監(jiān)控、數(shù)據(jù)中心等。網(wǎng)線的帶寬大,支持復(fù)雜的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),能夠滿足大量數(shù)據(jù)的傳輸需求。
對(duì)RS-422與RS-485總線網(wǎng)絡(luò)一般要使用終接電阻進(jìn)行匹配。但在短距離與低速率下可以不用考慮終端匹配。那么在什么情況下不用考慮匹配呢?理論上,在每個(gè)接收數(shù)據(jù)信號(hào)的中點(diǎn)進(jìn)行采樣時(shí),只要反射信號(hào)在開始采樣時(shí)衰減到足夠低就可以不考慮匹配。但這在實(shí)際上難以掌握,美國(guó)MAXIM公司有篇文章提到一條經(jīng)驗(yàn)性的原則可以用來判斷在什么樣的數(shù)據(jù)速率和電纜長(zhǎng)度時(shí)需要進(jìn)行匹配:當(dāng)信號(hào)的轉(zhuǎn)換時(shí)間(上升或下降時(shí)間)超過電信號(hào)沿總線單向傳輸所需時(shí)間的3倍以上時(shí)就可以不加匹配。例如具有限斜率特性的RS-485接口MAX483輸出信號(hào)的上升或下降時(shí)間最小為250ns,典型雙絞線上的信號(hào)傳輸速率約為0.2m/ns(24AWGPVC電纜),那么只要數(shù)據(jù)速率在250kb/s以內(nèi)、電纜長(zhǎng)度不超過16米,采用MAX483作為RS-485接口時(shí)就可以不加終端匹配。
一般終端匹配采用終接電阻方法,前文已有提及,RS-422在總線電纜的遠(yuǎn)端并接電阻,RS-485則應(yīng)在總線電纜的開始和末端都需并接終接電阻。終接電阻一般在RS-422網(wǎng)絡(luò)中取100Ω,在RS-485網(wǎng)絡(luò)中取120Ω。相當(dāng)于電纜特性阻抗的電阻,因?yàn)榇蠖鄶?shù)雙絞線電纜特性阻抗大約在100~120Ω。這種匹配方法簡(jiǎn)單有效,但有一個(gè)缺點(diǎn),匹配電阻要消耗較大功率,對(duì)于功耗限制比較嚴(yán)格的系統(tǒng)不太適合。
另外一種比較省電的匹配方式是RC匹配,利用一只電容C隔斷直流成分可以節(jié)省大部分功率。但電容C的取值是個(gè)難點(diǎn),需要在功耗和匹配質(zhì)量間進(jìn)行折衷。
還有一種采用二極管的匹配方法,這種方案雖未實(shí)現(xiàn)真正的“匹配”,但它利用二極管的鉗位作用能迅速削弱反射信號(hào),達(dá)到改善信號(hào)質(zhì)量的目的。節(jié)能效果顯著。
RS-422與RS-485的接地問題
電子系統(tǒng)接地是很重要的,但常常被忽視。接地處理不當(dāng)往往會(huì)導(dǎo)致電子系統(tǒng)不能穩(wěn)定工作甚至危及系統(tǒng)安全。RS-422與RS-485傳輸網(wǎng)絡(luò)的接地同樣也是很重要的,因?yàn)榻拥叵到y(tǒng)不合理會(huì)影響整個(gè)網(wǎng)絡(luò)的穩(wěn)定性,尤其是在工作環(huán)境比較惡劣和傳輸距離較遠(yuǎn)的情況下,對(duì)于接地的要求更為嚴(yán)格。否則接口損壞率較高。很多情況下,連接RS-422、RS-485通信鏈路時(shí)只是簡(jiǎn)單地用一對(duì)雙絞線將各個(gè)接口的“A”、“B”端連接起來。而忽略了信號(hào)地的連接,這種連接方法在許多場(chǎng)合是能正常工作的,但卻埋下了很大的隱患,這有下面二個(gè)原因:
1、共模干擾問題:正如前文已述,RS-422與RS-485接口均采用差分方式傳輸信號(hào)方式,并不需要相對(duì)于某個(gè)參照點(diǎn)來檢測(cè)信號(hào),系統(tǒng)只需檢測(cè)兩線之間的電位差就可以了。但人們往往忽視了收發(fā)器有一定的共模電壓范圍,如RS-422共模電壓范圍為-7~+7V,而RS-485收發(fā)器共模電壓范圍為-7~+12V,只有滿足上述條件,整個(gè)網(wǎng)絡(luò)才能正常工作。當(dāng)網(wǎng)絡(luò)線路中共模電壓超出此范圍時(shí)就會(huì)影響通信的穩(wěn)定可靠,甚至損壞接口。以圖1為例,當(dāng)發(fā)送驅(qū)動(dòng)器A向接收器B發(fā)送數(shù)據(jù)時(shí),發(fā)送驅(qū)動(dòng)器A的輸出共模電壓為VOS,由于兩個(gè)系統(tǒng)具有各自獨(dú)立的接地系統(tǒng),存在著地電位差VGPD。那么,接收器輸入端的共模電壓VCM就會(huì)達(dá)到VCM=VOS+VGPD。RS-422與RS-485標(biāo)準(zhǔn)均規(guī)定VOS≤3V,但VGPD可能會(huì)有很大幅度(十幾伏甚至數(shù)十伏),并可能伴有強(qiáng)干擾信號(hào),致使接收器共模輸入VCM超出正常范圍,并在傳輸線路上產(chǎn)生干擾電流,輕則影響正常通信,重則損壞通信接口電路。
2、(EMI)問題:發(fā)送驅(qū)動(dòng)器輸出信號(hào)中的共模部分需要一個(gè)返回通路,如沒有一個(gè)低阻的返回通道(信號(hào)地),就會(huì)以輻射的形式返回源端,整個(gè)總線就會(huì)像一個(gè)巨大的天線向外輻射電磁波。
由于上述原因,RS-422、RS-485盡管采用差分平衡傳輸方式,但對(duì)整個(gè)RS-422或RS-485網(wǎng)絡(luò),必須有一條低阻的信號(hào)地。一條低阻的信號(hào)地將兩個(gè)接口的工作地連接起來,使共模干擾電壓VGPD被短路。
這條信號(hào)地可以是額外的一條線(非屏蔽雙絞線),或者是屏蔽雙絞線的屏蔽層。這是最通常的接地方法。
值得注意的是,這種做法僅對(duì)高阻型共模干擾有效,由于干擾源內(nèi)阻大,短接后不會(huì)形成很大的接地環(huán)路電流,對(duì)于通信不會(huì)有很大影響。當(dāng)共模干擾源內(nèi)阻較低時(shí),會(huì)在接地線上形成較大的環(huán)路電流,影響正常通信。筆者認(rèn)為,可以采取以下三種措施:
(1)如果干擾源內(nèi)阻不是非常小,可以在接地線上加限流電阻以限制干擾電流。接地電阻的增加可能會(huì)使共模電壓升高,但只要控制在適當(dāng)?shù)姆秶鷥?nèi)就不會(huì)影響正常通信。
(2)采用浮地技術(shù),隔斷接地環(huán)路。這是較常用也是十分有效的一種方法,當(dāng)共模干擾內(nèi)阻很小時(shí)上述方法已不能奏效,此時(shí)可以考慮將引入干擾的節(jié)點(diǎn)(例如處于惡劣的工作環(huán)境的現(xiàn)場(chǎng)設(shè)備)浮置起來(也就是系統(tǒng)的電路地與機(jī)殼或大地隔離),這樣就隔斷了接地環(huán)路,不會(huì)形成很大的環(huán)路電流。
(3)采用隔離接口。有些情況下,出于安全或其它方面的考慮,電路地必須與機(jī)殼或大地相連,不能懸浮,這時(shí)可以采用隔離接口來隔斷接地回路,但是仍然應(yīng)該有一條地線將隔離側(cè)的公共端與其它接口的工作地相連。
RS-422與RS-485的網(wǎng)絡(luò)失效保護(hù)
RS-422與RS-485標(biāo)準(zhǔn)都規(guī)定了接收器門限為±200mV。這樣規(guī)定能夠提供比較高的噪聲抑制能力,如前文所述,當(dāng)接收器A電平比B電平高+200mV以上時(shí),輸出為正邏輯,反之,則輸出為負(fù)邏輯。但由于第三態(tài)的存在,即在主機(jī)在發(fā)端發(fā)完一個(gè)信息數(shù)據(jù)后,將總線置于第三態(tài),即總線空閑時(shí)沒有任何信號(hào)驅(qū)動(dòng)總線,使AB之間的電壓在-200~+200mV直至趨于0V,這帶來了一個(gè)問題:接收器輸出狀態(tài)不確定。如果接收機(jī)的輸出為0V,網(wǎng)絡(luò)中從機(jī)將把其解釋為一個(gè)新的啟動(dòng)位,并試圖讀取后續(xù)字節(jié),由于永遠(yuǎn)不會(huì)有停止位,產(chǎn)生一個(gè)幀錯(cuò)誤結(jié)果,不再有設(shè)備請(qǐng)求總線,網(wǎng)絡(luò)陷于癱瘓狀態(tài)。除上述所述的總線空閑會(huì)造成兩線電壓差低于200mV的情況外,開路或短路時(shí)也會(huì)出現(xiàn)這種情況。故應(yīng)采取一定的措施避免接收器處于不確定狀態(tài)。
通常是在總線上加偏置,當(dāng)總線空閑或開路時(shí),利用偏置電阻將總線偏置在一個(gè)確定的狀態(tài)(差分電壓≥-200mV)。如圖1。將A上拉到地,B下拉到5V,電阻的典型值是1kΩ,具體數(shù)值隨電纜的電容變化而變化。
上述方法是比較經(jīng)典的方法,但它仍然不能解決總線短路時(shí)的問題,有些廠家將接收門限移到-200mV/-50mV,可解決這個(gè)問題。
RS-422與RS-485的瞬態(tài)保護(hù)
前文提到的信號(hào)接地措施,只對(duì)低頻率的共模干擾有保護(hù)作用,對(duì)于頻率很高的瞬態(tài)干擾就無(wú)能為力了。由于傳輸線對(duì)高頻信號(hào)而言就是相當(dāng)于電感,因此對(duì)于高頻瞬態(tài)干擾,接地線實(shí)際等同于開路。這樣的瞬態(tài)干擾雖然持續(xù)時(shí)間短暫,但可能會(huì)有成百上千伏的電壓。
實(shí)際應(yīng)用環(huán)境下還是存在高頻瞬態(tài)干擾的可能。一般在切換大功率感性負(fù)載如電機(jī)、變壓器、繼電器等或閃電過程中都會(huì)產(chǎn)生幅度很高的瞬態(tài)干擾,如果不加以適當(dāng)防護(hù)就會(huì)損壞RS-422或RS-485通信接口。對(duì)于這種瞬態(tài)干擾可以采用隔離或旁路的方法加以防護(hù)。
1、隔離保護(hù)方法。這種方案實(shí)際上將瞬態(tài)高壓轉(zhuǎn)移到隔離接口中的電隔離層上,由于隔離層的高絕緣電阻,不會(huì)產(chǎn)生損害性的浪涌電流,起到保護(hù)接口的作用。通常采用高頻變壓器、光耦等元件實(shí)現(xiàn)接口的電氣隔離,已有器件廠商將所有這些元件集成在一片IC中,使用起來非常簡(jiǎn)便。這種方案的優(yōu)點(diǎn)是可以承受高電壓、持續(xù)時(shí)間較長(zhǎng)的瞬態(tài)干擾,實(shí)現(xiàn)起來也比較容易,缺點(diǎn)是成本較高。
2、旁路保護(hù)方法。這種方案利用瞬態(tài)抑制元件(如TVS、MOV、氣體放電管等)將危害性的瞬態(tài)能量旁路到大地,優(yōu)點(diǎn)是成本較低,缺點(diǎn)是保護(hù)能力有限,只能保護(hù)一定能量以內(nèi)的瞬態(tài)干擾,持續(xù)時(shí)間不能很長(zhǎng),而且需要有一條良好的連接大地的通道,實(shí)現(xiàn)起來比較困難。實(shí)際應(yīng)用中是將上述兩種方案結(jié)合起來靈活加以運(yùn)用,如圖1。在這種方法中,隔離接口對(duì)大幅度瞬態(tài)干擾進(jìn)行隔離,旁路元件則保護(hù)隔離接口不被過高的瞬態(tài)電壓擊穿。
采用RS485接口時(shí),傳輸電纜的長(zhǎng)度如何考慮?
在使用RS485接口時(shí),對(duì)于特定的傳輸線徑,從發(fā)生器到負(fù)載其數(shù)據(jù)信號(hào)傳輸所允許的最大電纜長(zhǎng)度是數(shù)據(jù)信號(hào)速率的函數(shù),這個(gè)長(zhǎng)度數(shù)據(jù)主要是受信號(hào)失真及噪聲等影響所限制。最大電纜長(zhǎng)度與信號(hào)速率的關(guān)系曲線是使用24AWG銅芯雙絞電話電纜(線徑為0.511mm),線間旁路電容為52。5PF/M,終端負(fù)載電阻為100歐時(shí)所得出。當(dāng)數(shù)據(jù)信號(hào)速率降低到90Kbit/S以下時(shí),假定最大允許的信號(hào)損失為6dBV時(shí),則電纜長(zhǎng)度被限制在1200M。在實(shí)用時(shí)是完全可以取得比它大的電纜長(zhǎng)度。當(dāng)使用不同線徑的電纜。則取得的最大電纜長(zhǎng)度是不相同的。
如何實(shí)現(xiàn)RS-485/422多點(diǎn)通訊
RS-485總線上任何時(shí)候只能有一發(fā)送器發(fā)送。半雙工方式,主從只能一個(gè)發(fā)。全雙工方式,主站總可發(fā)送,從站只能有一個(gè)發(fā)送。
RS-485/RS422接口通訊時(shí),在什么條件下需要采用終端匹配?電阻值如何確定?如何配置終端匹配電阻?
在長(zhǎng)線信號(hào)傳輸時(shí),一般為了避免信號(hào)的反射和回波,需要在接收端接入終端匹配電阻。其終端匹配電阻值取決于電纜的阻抗特性,與電纜的長(zhǎng)度無(wú)關(guān)。
RS-485/RS-422一般采用雙絞線(屏蔽或非屏蔽)連接,終端電阻一般介于100至140Ω之間,典型值為120Ω。在實(shí)際配置時(shí),在電纜的兩個(gè)終端節(jié)點(diǎn)上,即最近端和最遠(yuǎn)端,各接入一個(gè)終端電阻,而處于中間部分的節(jié)點(diǎn)則不能接入終端電阻,否則將導(dǎo)致通訊出錯(cuò)。
RS-485網(wǎng)不知道最遠(yuǎn)站點(diǎn)是哪一個(gè),應(yīng)該如何接匹配電阻呢?
會(huì)出現(xiàn)這種情況,是由于用戶組成RS-485網(wǎng)時(shí),沒有遵循站點(diǎn)至總線的連線應(yīng)盡可能短的原則。如果總線布線遵循這一原則,就不存在不知道哪個(gè)站點(diǎn)是最遠(yuǎn)的問題。而且要注意,這樣的布線,系統(tǒng)將會(huì)工作得不好。
RS-485/RS-422接口為何在停止通信時(shí)接收器仍有數(shù)據(jù)輸出?
由于RS-485/RS-422在發(fā)送數(shù)據(jù)完成后,要求所有的發(fā)送使能控制信號(hào)關(guān)閉且保持接收使能有效,此時(shí),總線驅(qū)動(dòng)器進(jìn)入高阻狀態(tài)且接收器能夠監(jiān)測(cè)總線上是否有新的通信數(shù)據(jù)。但是由于此時(shí)總線處于無(wú)源驅(qū)動(dòng)狀態(tài)(若總線有終端匹配電阻時(shí),A和B線的差分電平為0,接收器的輸出不確定,且對(duì)AB線上的差分信號(hào)的變化很敏感;若無(wú)終端匹配,則總線處于高阻態(tài),接收器的輸出不確定),容易受到外界的噪聲干擾。當(dāng)噪聲電壓超過輸入信號(hào)門限時(shí)(典型值±200mV),接收器將輸出數(shù)據(jù),導(dǎo)致對(duì)應(yīng)的UART接收無(wú)效的數(shù)據(jù),使緊接著的正常通訊出錯(cuò);另外一種情況可能發(fā)生在打開/關(guān)閉發(fā)送使能控制的瞬間,使接收器輸出信號(hào),也會(huì)導(dǎo)致UART錯(cuò)誤地接收。
解決方法:
1)在通訊總線上采用同相輸入端上拉(A線)、反相輸入端下拉(B線)的方法對(duì)總線進(jìn)行鉗位,保證接收器輸出為固定的“1”電平;
2)采用內(nèi)置防故障模式的MAX308x系列的接口產(chǎn)品替換該接口電路;
3)通過軟件方式消除,即在通信數(shù)據(jù)包內(nèi)增加2-5個(gè)起始同步字節(jié),只有在滿足同步頭后才開始真正的數(shù)據(jù)通訊。