為節(jié)省MCU的I/O資源,RS-485自動(dòng)收發(fā)型收發(fā)器經(jīng)常會(huì)被使用,但該類收發(fā)器或多或少會(huì)遇到一些應(yīng)用問題,這一類問題該如何解決?本文將從工作原理為你揭曉。
? 自動(dòng)收發(fā)電路簡介及應(yīng)用簡析自動(dòng)收發(fā)電路原理
常見的RS-485自動(dòng)收發(fā)電路如圖1所示,電路的邏輯真值表如表1所示。
- 當(dāng)TXD為低電平時(shí),DE和RE為高電平,RS-485收發(fā)器處于發(fā)送狀態(tài),AB處于低電平,即向其他節(jié)點(diǎn)發(fā)送低電平信號(hào);當(dāng)TXD由低電平變?yōu)楦唠娖綍r(shí),DE和RE變?yōu)榈碗娖?,RS-485收發(fā)器處于接收狀態(tài),此時(shí)AB引腳處于高阻狀態(tài),R3將B引腳拉至GND,R4將A引腳拉至VCC,此時(shí)AB為高電平,即向其他節(jié)點(diǎn)發(fā)送高電平信號(hào)。
由于TXD為高電平時(shí),RS-485收發(fā)器處于接收狀態(tài),因此只需將TXD保持為高電平即可接收數(shù)據(jù),即自動(dòng)收發(fā)電路發(fā)送高電平時(shí)同時(shí)也是接收狀態(tài)。
圖1 RS-485自動(dòng)收發(fā)示意圖
表1 自動(dòng)收發(fā)電路示意圖
?自動(dòng)收發(fā)電路常見應(yīng)用問題及解決方案
1.?通信速度較慢
RS-485自動(dòng)收發(fā)通信速度較慢的原因主要有兩個(gè):
1.1 若使用圖1所示的自動(dòng)收發(fā)電路,三極管的關(guān)斷時(shí)間較長(主要是由于三極管關(guān)斷時(shí)的存儲(chǔ)時(shí)間較長),圖1中所示參數(shù)的三極管反相電路,開啟延時(shí)時(shí)間如圖2所示為10.2ns,關(guān)斷延時(shí)時(shí)間如圖3所示為1.14μs,因此若TXD發(fā)送低電平,DE&RE引腳較長時(shí)間后才會(huì)升至高電平,發(fā)送低電平的延時(shí)時(shí)間較長,圖1所示電路發(fā)送低電平信號(hào)延時(shí)時(shí)間如圖4所示為1.468μs。
圖2 開啟延時(shí)時(shí)間
圖3 關(guān)斷延時(shí)時(shí)間
圖4 發(fā)送低電平信號(hào)延時(shí)
1.2 自動(dòng)收發(fā)電路發(fā)送高電平是通過外部上下拉電阻驅(qū)動(dòng)的,上升沿較緩慢,波形如圖5所示,可以看出,發(fā)送高電平的上升沿較為緩慢,限制了高速通信的應(yīng)用。
圖5 發(fā)送高電平上升時(shí)間
2.?高波特率通信時(shí)存在通訊異常風(fēng)險(xiǎn)
如圖6所示,TXD變?yōu)楦唠娖?,DE&RE引腳降為低電平,AB差分電壓緩慢上升,由于此時(shí)RS-485收發(fā)器已經(jīng)處于接收狀態(tài),在AB差分電壓上升至RS-485收發(fā)器門限電平前RXD引腳會(huì)出現(xiàn)到一段時(shí)間的低電平信號(hào),例如門限電平為-200mV~-50mV的收發(fā)器,AB差分電壓上升至-50mV前RS-485收發(fā)器均可輸出低電平,此低電平信號(hào)的時(shí)間與AB差分電壓上升時(shí)間和RS-485收發(fā)器的接收延時(shí)有關(guān)。
由于串口一般是將每個(gè)位分成16份,檢測(cè)中間的3份的電平信號(hào)從而確定此位的信號(hào)高低,因此若此低電平信號(hào)保持至每個(gè)位的信號(hào)檢測(cè)時(shí),則會(huì)使MCU接收到一個(gè)起始位,從而接收到錯(cuò)誤的數(shù)據(jù),因此這個(gè)問題同樣限制了高速通信的應(yīng)用并且降低了通信的可靠性。
圖6 TXD發(fā)送高電平信號(hào),RXD接收到一段低電平信號(hào)
針對(duì)此類問題,可選用ZLG致遠(yuǎn)電子的隔離RS-485收發(fā)器RSM485MG,該模塊通信速度高達(dá)500kbps,并且不會(huì)出現(xiàn)發(fā)送高電平時(shí)接收到一段時(shí)間低電平信號(hào)的現(xiàn)象,通信波形如圖7所示,極大地提高了通信可靠性。
隔離RS-485收發(fā)器?RSM485MG
? Mini小體積或標(biāo)準(zhǔn)模塊化封裝
??低電磁輻射和高抗電磁干擾性
? 有效提升總線通信防護(hù)等級(jí)
參考價(jià)格:29元
圖7 RSM485MG通信波形
3.?外圍電路結(jié)電容影響收發(fā)器通訊穩(wěn)定性
在高靜電或浪涌環(huán)境下,需要增加外圍保護(hù)電路來保護(hù)RS-485收發(fā)器,若RS-485總線上所加保護(hù)電路的結(jié)電容較大,則會(huì)影響通信波形的質(zhì)量甚至導(dǎo)致通信異常,使用高結(jié)電容保護(hù)電路的通信波形如圖8所示,通信波形畸變嚴(yán)重,影響了通信質(zhì)量。
圖8 受高結(jié)電容影響的波形
針對(duì)此類問題,可選用ZLG致遠(yuǎn)電子RSM485MG,根據(jù)數(shù)據(jù)手冊(cè)中提供的如所示的保護(hù)電路圖9,可全面提升RS-485總線的防護(hù)能力,EMC防護(hù)能力上可以達(dá)到靜電接觸±8kV,浪涌共模±4kV,差?!?kV,符合絕大多數(shù)工業(yè)現(xiàn)場應(yīng)用需求。
圖9 低結(jié)電容保護(hù)電路
圖10 增加保護(hù)電路后通信波形
4.?驅(qū)動(dòng)能力較弱遠(yuǎn)距離通訊存在風(fēng)險(xiǎn)
自動(dòng)收發(fā)電路發(fā)送高電平時(shí)總會(huì)有一段時(shí)間或全部時(shí)間是由上下拉電阻進(jìn)行驅(qū)動(dòng)的,若要提高發(fā)送高電平信號(hào)的驅(qū)動(dòng)能力,需要使用較小阻值的上下拉電阻,由于RS-485收發(fā)器本身驅(qū)動(dòng)能力的限制,上下拉電阻也不能選擇太小,一般總線上所有節(jié)點(diǎn)的上下拉電阻并聯(lián)值不能小于375歐,因此自動(dòng)收發(fā)電路發(fā)送高電平信號(hào)的驅(qū)動(dòng)能力非常有限。RS-485總線增加終端電阻后,發(fā)送高電平的AB差分電壓是由終端電阻與上下拉電阻分壓所得,所以此時(shí)發(fā)送的高電平信號(hào)幅值很低,因此使用自動(dòng)收發(fā)RS-485收發(fā)器時(shí),盡量不要使用終端電阻。
由于自動(dòng)收發(fā)電路驅(qū)動(dòng)能力有限,其應(yīng)用的通信距離也受到了限制。使用長度為8m和200m的雙絞線的通信波形如圖11和圖12所示,通信距離8m時(shí),通信波形良好且通信正常,通信距離為200m時(shí)已經(jīng)不能正常通信。因此在通信距離較長時(shí),可在自動(dòng)收發(fā)RS-485收發(fā)器外部加上下拉電阻和終端電阻來改善通信波形,增加后的通信波形如圖13所示,波形得到很大的改善,可以正常通信,但發(fā)送高電平的信號(hào)幅值仍舊較低。
圖11 通過8m雙絞線通信波形
圖12 通過200m雙絞線通信波形
圖13 外部加1k上下拉電阻且RS-485總線首尾加終端電阻
若對(duì)通信距離有較高要求,不推薦使用自動(dòng)收發(fā)模塊,可選用ZLG致遠(yuǎn)電子具有收發(fā)控制功能的隔離RS-485收發(fā)器RSM485ECHT或RSM3485ECHT,通信距離可達(dá)1200m。通信速度500kbp,通信距離1200m,總線首尾各加120歐終端電阻的通信波形如圖14所示,此時(shí)RSM485ECHT發(fā)送信號(hào)的幅值可達(dá)2.6V,極大地提高了通信的可靠性。
圖14 通信距離1200m,總線首尾加終端電阻,RSM485ECHT發(fā)送波形
? 總結(jié)
自動(dòng)收發(fā)RS-485收發(fā)器可以節(jié)省MCU的 IO口,降低編寫程序的工作量,但常規(guī)的自動(dòng)收發(fā)電路具有通信速度慢,發(fā)送高電平信號(hào)時(shí)RXD會(huì)接收到一段低電平信號(hào)等問題,因此若需使用自動(dòng)收發(fā),推薦使用自動(dòng)收發(fā)隔離RS-485收發(fā)器RSM485MG,通信的可靠性大大提高,配合RSM485MG推薦的低結(jié)電容保護(hù)電路,可以承受更高的靜電和浪涌等級(jí),提高產(chǎn)品的可靠性。在通信距離較長時(shí),推薦使用增強(qiáng)型隔離RS-485收發(fā)器RSM485ECHT/RSM3485ECHT,通信距離可達(dá)1200m。
表2 產(chǎn)品推薦應(yīng)用情況說明
隔離CAN收發(fā)器?RSM3485ECHT
? 3.15~3.45VDC
??高速型
? 24mA靜態(tài)電流
參考價(jià)格:29元