提高RS-485總線可靠性的幾種方法及常見故障處理
2、節(jié)點(diǎn)與主干距離
理論上講,RS-485節(jié)點(diǎn)與主干之間距離(T頭,也稱引出線)越短越好。T頭小于10m的節(jié)點(diǎn)采用T型,連接對(duì)網(wǎng)絡(luò)匹配并無太大影響,可放心使用,但對(duì)于節(jié)點(diǎn)間距非常?。ㄐ∮?m,如LED模塊組合屏)應(yīng)采用星型連接,若采用T型或串珠型連接就不能正常工作。RS-485是一種半雙工結(jié)構(gòu)通信總線,大多用于一對(duì)多點(diǎn)的通信系統(tǒng),因此主機(jī)(PC)應(yīng)置于一端,不要置于中間而形成主干的T型分布。
三、提高RS-485通信效率
RS-485通常應(yīng)用于一對(duì)多點(diǎn)的主從應(yīng)答式通信系統(tǒng)中,相對(duì)于RS-232等全雙工總線效率低了許多,因此選用合適的通信協(xié)議及控制方式非常重要。
1、總線穩(wěn)態(tài)控制(握手信號(hào))
大多數(shù)使用者選擇在數(shù)據(jù)發(fā)送前1ms將收發(fā)控制端TC置成高電平,使總線進(jìn)入穩(wěn)定的發(fā)送狀態(tài)后才發(fā)送數(shù)據(jù);數(shù)據(jù)發(fā)送完畢再延遲1ms后置TC端成低電平,使可靠發(fā)送完畢后才轉(zhuǎn)入接收狀態(tài)。據(jù)筆者使用TC端的延時(shí)有4個(gè)機(jī)器周期已滿足要求;
2、為保證數(shù)據(jù)傳輸質(zhì)量,對(duì)每個(gè)字節(jié)進(jìn)行校驗(yàn)的同時(shí),應(yīng)盡量減少特征字和校驗(yàn)字
慣用的數(shù)據(jù)包格式由引導(dǎo)碼、長度碼、地址碼、命令碼、數(shù)據(jù)、校驗(yàn)碼、尾碼組成,每個(gè)數(shù)據(jù)包長度達(dá)20~30字節(jié)。在RS-485系統(tǒng)中這樣的協(xié)議不太簡練。推薦用戶使用MODBUS協(xié)議,該協(xié)議已廣泛應(yīng)用于水利、水文、電力等行業(yè)設(shè)備及系統(tǒng)的國際標(biāo)準(zhǔn)中。
四、RS-485接口電路的電源、接地
對(duì)于由MCU結(jié)合RS-485微系統(tǒng)組建的測(cè)控網(wǎng)絡(luò),應(yīng)優(yōu)先采用各微系統(tǒng)獨(dú)立供電方案,最好不要采用一臺(tái)大電源給微系統(tǒng)并聯(lián)供電,同時(shí)電源線(交直流)不能與RS -485信號(hào)線共用同一股多芯電纜。RS-485信號(hào)線宜選用截面積0.75mm2以上雙絞線而不是平直線。對(duì)于每個(gè)小容量直流電源選用線性電源LM7805比選用開關(guān)電源更合適。當(dāng)然應(yīng)注意LM7805的保護(hù):
1、LM7805輸入端與地應(yīng)跨接220~1000μF電解電容;
2、LM7805輸入端與輸出端反接1N4007二極管;
3、LM7805輸出端與地應(yīng)跨接470~1000μF電解電容和104pF獨(dú)石電容并反接1N4007二極管;
4、輸入電壓以8~10V為佳,最大允許范圍為6.5~24V??蛇x用TI的PT5100替代LM7805,以實(shí)現(xiàn)9~38V的超寬電壓輸入。
五、光電隔離
在某些工業(yè)控制領(lǐng)域,由于現(xiàn)場(chǎng)情況十分復(fù)雜,各個(gè)節(jié)點(diǎn)之間存在很高的共模電壓。雖然RS-485接口采用的是差分傳輸方式,具有一定的抗共模干擾的能力,但當(dāng)共模電壓超過RS-485接收器的極限接收電壓,即大于+12V或小于-7V時(shí),接收器就再也無法正常工作了,嚴(yán)重時(shí)甚至?xí)龤酒蛢x器設(shè)備。
解決此類問題的方法是通過DC-DC將系統(tǒng)電源和RS-485收發(fā)器的電源隔離;通過光耦將信號(hào)隔離,徹底消除共模電壓的影響。實(shí)現(xiàn)此方案的途徑可分為:
1、用光耦、帶隔離的DC-DC、RS-485芯片構(gòu)筑電路;
2、使用二次集成芯片,如PS1480、MAX1480等。
六、RS-485系統(tǒng)的常見故障及處理方法
RS-485是一種低成本、易操作的通信系統(tǒng),但是穩(wěn)定性弱同時(shí)相互牽制性強(qiáng),通常有一個(gè)節(jié)點(diǎn)出現(xiàn)故障會(huì)導(dǎo)致系統(tǒng)整體或局部的癱瘓,而且又難以判斷。故向讀者介紹一些維護(hù)RS-485的常用方法。
1、若出現(xiàn)系統(tǒng)完全癱瘓,大多因?yàn)槟彻?jié)點(diǎn)芯片的VA、VB對(duì)電源擊穿,使用萬用表測(cè)VA、VB間差模電壓為零,而對(duì)地的共模電壓大于3V,此時(shí)可通過測(cè)共模電壓大小來排查,共模電壓越大說明離故障點(diǎn)越近,反之越遠(yuǎn);
2、總線連續(xù)幾個(gè)節(jié)點(diǎn)不能正常工作。一般是由其中的一個(gè)節(jié)點(diǎn)故障導(dǎo)致的。一個(gè)節(jié)點(diǎn)故障會(huì)導(dǎo)致鄰近的2~3個(gè)節(jié)點(diǎn)(一般為后續(xù))無法通信,因此將其逐一與總線脫離,如某節(jié)點(diǎn)脫離后總線能恢復(fù)正常,說明該節(jié)點(diǎn)故障;
3、集中供電的RS-485系統(tǒng)在上電時(shí)常常出現(xiàn)部分節(jié)點(diǎn)不正常,但每次又不完全一樣。這是由于對(duì)RS-485的收發(fā)控制端TC設(shè)計(jì)不合理,造成微系統(tǒng)上電時(shí)節(jié)點(diǎn)收發(fā)狀態(tài)混亂從而導(dǎo)致總線堵塞。改進(jìn)的方法是將各微系統(tǒng)加裝電源開關(guān)然后分別上電;
4、系統(tǒng)基本正常但偶爾會(huì)出現(xiàn)通信失敗。一般是由于網(wǎng)絡(luò)施工不合理導(dǎo)致系統(tǒng)可靠性處于臨界狀態(tài),最好改變走線或增加中繼模塊。應(yīng)急方法之一是將出現(xiàn)失敗的節(jié)點(diǎn)更換成性能更優(yōu)異的芯片;
5、因MCU故障導(dǎo)致TC端處于長發(fā)狀態(tài)而將總線拉死一片。提醒讀者不要忘記對(duì)TC端的檢查。盡管RS-485規(guī)定差模電壓大于200mV即能正常工作。但實(shí)際測(cè)量:一個(gè)運(yùn)行良好的系統(tǒng)其差模電壓一般在1.2V左右(因網(wǎng)絡(luò)分布、速率的差異有可能使差模電壓在0.8~1.5V范圍內(nèi))。
評(píng)論