一、RS485總線(xiàn)介紹:
RS485總線(xiàn)是一種常見(jiàn)的串行總線(xiàn)標(biāo)準(zhǔn),采用平衡發(fā)送與差分接收的方式,因此具有抑制共模干擾的能力。在一些要求通信距離為幾十米到上千米的時(shí)候,RS485總線(xiàn)是一種應(yīng)用最為廣泛的總線(xiàn)。而且在多節(jié)點(diǎn)的工作系統(tǒng)中也有著廣泛的應(yīng)用。
二、RS485總線(xiàn)典型電路介紹:
RS485電路總體上可以分為隔離型與非隔離型。隔離型比非隔離型在抗干擾、系統(tǒng)穩(wěn)定性等方面都有更出色的表現(xiàn),但有一些場(chǎng)合也可以用非隔離型。
我們就先講一下非隔離型的典型電路,非隔離型的電路非常簡(jiǎn)單,只需一個(gè)RS485芯片直接與MCU的串行通訊口和一個(gè)I/O控制口連接就可以。如圖1所示:
圖1、典型485通信電路圖(非隔離型)
當(dāng)然,上圖并不是完整的485通信電路圖,我們還需要在A線(xiàn)上加一個(gè)4.7K的上拉偏置電阻;在B線(xiàn)上加一個(gè)4.7K的下拉偏置電阻。中間的R16是匹配 電阻,一般是120Ω,當(dāng)然這個(gè)具體要看你傳輸用的線(xiàn)纜。(匹配電阻:485整個(gè)通訊系統(tǒng)中,為了系統(tǒng)的傳輸穩(wěn)定性,我們一般會(huì)在第一個(gè)節(jié)點(diǎn)和最后一個(gè)節(jié) 點(diǎn)加匹配電阻。所以我們一般在設(shè)計(jì)的時(shí)候,會(huì)在每個(gè)節(jié)點(diǎn)都設(shè)置一個(gè)可跳線(xiàn)的120Ω電阻,至于用還是不用,由現(xiàn)場(chǎng)人員來(lái)設(shè)定。當(dāng)然,具體怎么區(qū)分第一個(gè)節(jié) 點(diǎn)還是最后一個(gè)節(jié)點(diǎn),還得有待現(xiàn)場(chǎng)的專(zhuān)家們來(lái)解答呵。)TVS我們一般選用6.8V的,這個(gè)我們會(huì)在后面進(jìn)一步的講解。
RS-485標(biāo)準(zhǔn)定義信號(hào)閾值的上下限為±200mV。即當(dāng)A-B》200mV時(shí),總線(xiàn)狀態(tài)應(yīng)表示為“1”;當(dāng)A-B《-200mV時(shí),總線(xiàn) 狀態(tài)應(yīng)表示為“0”。但當(dāng)A-B在±200mV之間時(shí),則總線(xiàn)狀態(tài)為不確定,所以我們會(huì)在A、B線(xiàn)上面設(shè)上、下拉電阻,以盡量避免這種不確定狀態(tài)。
三、隔離型RS485總線(xiàn)典型電路介紹
在某些工業(yè)控制領(lǐng)域,由于現(xiàn)場(chǎng)情況十分復(fù)雜,各個(gè)節(jié)點(diǎn)之間存在很高的共模電壓。雖然RS-485接口采用的是差分傳輸方式,具有一定的抗共模干擾的能力, 但當(dāng)共模電壓超過(guò)RS-485接收器的極限接收電壓,即大于+12V或小于-7V時(shí),接收器就再也無(wú)法正常工作了,嚴(yán)重時(shí)甚至?xí)龤酒蛢x器設(shè)備。
解決此類(lèi)問(wèn)題的方法是通過(guò)DC-DC將系統(tǒng)電源和RS-485收發(fā)器的電源隔離;通過(guò)隔離器件將信號(hào)隔離,徹底消除共模電壓的影響。實(shí)現(xiàn)此方案的途徑可分為:
(1)傳統(tǒng)方式:用光耦、帶隔離的DC-DC、RS-485芯片構(gòu)筑電路;
(2)使用二次集成芯片,如ADM2483、ADM257E等。
u 傳統(tǒng)光電隔離的典型電路:(如圖2所示)
圖2、光電隔離RS485典型電路
圖中我們以高速光耦6N137為例(當(dāng)然只是示意圖)來(lái)說(shuō)明一下隔離型RS485電路。VDD與VCC485是兩組不共地的電源,一般用隔離型的DC- DC來(lái)實(shí)現(xiàn)。通過(guò)光耦隔離來(lái)實(shí)現(xiàn)信號(hào)的隔離傳輸,ADM487與MCU系統(tǒng)不共地,完全隔離則有效的抑制了高共模電壓的產(chǎn)生,大大降低了485的損壞率, 提高了系統(tǒng)的穩(wěn)定性。但也存在電路體積過(guò)大、電路繁瑣、分立器件過(guò)多、傳輸速率受光電器件限制等缺點(diǎn),對(duì)整個(gè)系統(tǒng)的穩(wěn)定性也有一定的影響。
u 隔離型RS485器件來(lái)實(shí)現(xiàn)隔離傳輸:(如圖3所示)
圖3、隔離型RS485芯片ADM2483應(yīng)用圖
ADM2483是ADI推出的隔離型485芯片,SOW-16封裝,內(nèi)部集成了一個(gè)三通道的磁隔離器件和一個(gè)半雙工485收發(fā)器,2500V隔離電壓、傳 輸速率500K、共模電壓抑制能力25KV/μS。但此電路仍需雙電源供電,因此也會(huì)在一定程度上存在電路體積過(guò)大的問(wèn)題。
u 完全隔離型RS485器件實(shí)現(xiàn)隔離傳輸:(如圖4所示)
圖4、完全隔離型RS485/422芯片ADM2587E應(yīng)用圖
ADM2587E是ADI繼ADM2483之后,推出的單電源隔離型485芯片。SOW-20封裝,2500V隔離電壓,全/半雙工、傳輸速率500K、共模電壓抑制能力25KV/μS、±15KV的ESD保護(hù)。適合用于工控、電力、儀表、安防等各種485隔離場(chǎng)合。
四、RS485總線(xiàn)保護(hù)電路
隔離雖然能有效的抑制高共模電壓,但總線(xiàn)上還會(huì)存在浪涌沖擊、電源線(xiàn)與485線(xiàn)短路、雷擊等潛在危害,所以我們一般會(huì)在總線(xiàn)端采取一定的保護(hù)措施。
一般我們會(huì)在VA、VB上各串接一個(gè)4~10Ω的PTC電阻,并在VA、VB各自對(duì)地端接6、8V的TVS管,當(dāng)然也可用普通電阻與穩(wěn)壓二極管代替。更多 的還可以加熱保險(xiǎn)絲、防雷。管,不過(guò)并不是說(shuō)這些加的越多越好,具體要看實(shí)際應(yīng)用,如果這些保護(hù)太多的話(huà),也會(huì)影響到整個(gè)系統(tǒng)的節(jié)點(diǎn)數(shù),與通信穩(wěn)定性。
五、485應(yīng)用的一些小經(jīng)驗(yàn)
1、收發(fā)時(shí)序不匹配:
485是半雙工的通信,收發(fā)轉(zhuǎn)換是需要一定的時(shí)間的,所以一般在收發(fā)轉(zhuǎn)換之間,和每發(fā)送完一幀數(shù)據(jù)之后,都要有相應(yīng)的延時(shí),如果出現(xiàn)收發(fā)不正常、或第一幀數(shù)據(jù)之后就出現(xiàn)誤碼現(xiàn)象,則可以適當(dāng)?shù)脑黾右幌卵訒r(shí)時(shí)間,以觀(guān)問(wèn)題是否解決。
2、R0接上拉電阻:
異步通信數(shù)據(jù)以字節(jié)的方式傳送,在每一個(gè)字節(jié)傳送之前,先要通過(guò)一個(gè)低電平起始位實(shí)現(xiàn)握手。為防止干擾信號(hào)誤觸發(fā)RO(接收器輸出)產(chǎn)生負(fù)跳變,使接收端MCU進(jìn)入接收狀態(tài),建議RO外接10kΩ上拉電阻。
3、合理選用芯片。
例如,對(duì)外置設(shè)備為防止強(qiáng)電磁(雷電)沖擊,建議選用TI的75LBC184等防雷擊芯片,對(duì)節(jié)點(diǎn)數(shù)要求較多的可選用SIPEX的SP485R。此外經(jīng)我 們實(shí)驗(yàn)發(fā)現(xiàn),ADI的非隔離型485芯片ADM487E、隔離型芯片ADM2483、ADM2587在多節(jié)點(diǎn)、防雷擊方面也有著很好的表現(xiàn)。
六、維護(hù)RS-485的常用方法
1)若出現(xiàn)系統(tǒng)完全癱瘓,大多因?yàn)槟彻?jié)點(diǎn)芯片的VA、VB對(duì)電源擊穿,使用萬(wàn)用表測(cè)VA、VB間差模電壓為零,而對(duì)地的共模電壓大于3V,此時(shí)可通過(guò)測(cè)共模電壓大小來(lái)排查,共模電壓越大說(shuō)明離故障點(diǎn)越近,反之越遠(yuǎn);
2)總線(xiàn)連續(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ù))無(wú)法通信,因此將其逐一與總線(xiàn)脫離,如某節(jié)點(diǎn)脫離后總線(xiàn)能恢復(fù)正常,說(shuō)明該節(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)致總線(xiàn)堵塞。改進(jìn)的方法是將各微系統(tǒng)加裝電源開(kāi)關(guān)然后分別上電;
4)系統(tǒng)基本正常但偶爾會(huì)出現(xiàn)通信失敗。一般是由于網(wǎng)絡(luò)施工不合理導(dǎo)致系統(tǒng)可靠性處于臨界狀態(tài),最好改變走線(xiàn)或增加中繼模塊。應(yīng)急方法之一是將出現(xiàn)失敗的節(jié)點(diǎn)更換成性能更優(yōu)異的芯片;
5)因MCU故障導(dǎo)致TC端處于長(zhǎng)發(fā)狀態(tài)而將總線(xiàn)拉死一片。提醒讀者不要忘記對(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)論
查看更多