新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 提高RS-485總線可靠性的幾種方法及常見故障處理

        提高RS-485總線可靠性的幾種方法及常見故障處理

        作者: 時間:2012-12-29 來源:網絡 收藏

          
          2、節點與主干距離
          
          理論上講,RS-485節點與主干之間距離(T頭,也稱引出線)越短越好。T頭小于10m的節點采用T型,連接對網絡匹配并無太大影響,可放心使用,但對于節點間距非常小(小于1m,如LED模塊組合屏)應采用星型連接,若采用T型或串珠型連接就不能正常工作。RS-485是一種半雙工結構通信總線,大多用于一對多點的通信系統,因此主機(PC)應置于一端,不要置于中間而形成主干的T型分布。

          三、提高RS-485通信效率
          
          RS-485通常應用于一對多點的主從應答式通信系統中,相對于RS-232等全雙工總線效率低了許多,因此選用合適的通信協議及控制方式非常重要。
          
          1、總線穩態控制(握手信號)
          
          大多數使用者選擇在數據發送前1ms將收發控制端TC置成高電平,使總線進入穩定的發送狀態后才發送數據;數據發送完畢再延遲1ms后置TC端成低電平,使可靠發送完畢后才轉入接收狀態。據筆者使用TC端的延時有4個機器周期已滿足要求;   

          2、為保證數據傳輸質量,對每個字節進行校驗的同時,應盡量減少特征字和校驗字
          
          慣用的數據包格式由引導碼、長度碼、地址碼、命令碼、數據、校驗碼、尾碼組成,每個數據包長度達20~30字節。在RS-485系統中這樣的協議不太簡練。推薦用戶使用MODBUS協議,該協議已廣泛應用于水利、水文、電力等行業設備及系統的國際標準中。
          
          四、RS-485接口電路的電源、接地
          
          對于由MCU結合RS-485微系統組建的測控網絡,應優先采用各微系統獨立供電方案,最好不要采用一臺大電源給微系統并聯供電,同時電源線(交直流)不能與RS -485信號線共用同一股多芯電纜。RS-485信號線宜選用截面積0.75mm2以上雙絞線而不是平直線。對于每個小容量直流電源選用線性電源LM7805比選用開關電源更合適。當然應注意LM7805的保護:
          
          1、LM7805輸入端與地應跨接220~1000μF電解電容;
          
          2、LM7805輸入端與輸出端反接1N4007二極管;
          
          3、LM7805輸出端與地應跨接470~1000μF電解電容和104pF獨石電容并反接1N4007二極管;
          
          4、輸入電壓以8~10V為佳,最大允許范圍為6.5~24V。可選用TI的PT5100替代LM7805,以實現9~38V的超寬電壓輸入。
          
          五、光電隔離
          
          在某些工業控制領域,由于現場情況十分復雜,各個節點之間存在很高的共模電壓。雖然RS-485接口采用的是差分傳輸方式,具有一定的抗共模干擾的能力,但當共模電壓超過RS-485接收器的極限接收電壓,即大于+12V或小于-7V時,接收器就再也無法正常工作了,嚴重時甚至會燒毀芯片和儀器設備。
          
          解決此類問題的方法是通過DC-DC將系統電源和RS-485收發器的電源隔離;通過光耦將信號隔離,徹底消除共模電壓的影響。實現此方案的途徑可分為:
          
          1、用光耦、帶隔離的DC-DC、RS-485芯片構筑電路;
          
          2、使用二次集成芯片,如PS1480、MAX1480等。
          
          六、RS-485系統的常見故障及處理方法
          
          RS-485是一種低成本、易操作的通信系統,但是穩定性弱同時相互牽制性強,通常有一個節點出現故障會導致系統整體或局部的癱瘓,而且又難以判斷。故向讀者介紹一些維護RS-485的常用方法。
          
          1、若出現系統完全癱瘓,大多因為某節點芯片的VA、VB對電源擊穿,使用萬用表測VA、VB間差模電壓為零,而對地的共模電壓大于3V,此時可通過測共模電壓大小來排查,共模電壓越大說明離故障點越近,反之越遠;
          
          2、總線連續幾個節點不能正常工作。一般是由其中的一個節點故障導致的。一個節點故障會導致鄰近的2~3個節點(一般為后續)無法通信,因此將其逐一與總線脫離,如某節點脫離后總線能恢復正常,說明該節點故障;
          
          3、集中供電的RS-485系統在上電時常常出現部分節點不正常,但每次又不完全一樣。這是由于對RS-485的收發控制端TC設計不合理,造成微系統上電時節點收發狀態混亂從而導致總線堵塞。改進的方法是將各微系統加裝電源開關然后分別上電;
          
          4、系統基本正常但偶爾會出現通信失敗。一般是由于網絡施工不合理導致系統可靠性處于臨界狀態,最好改變走線或增加中繼模塊。應急方法之一是將出現失敗的節點更換成性能更優異的芯片;
          
          5、因MCU故障導致TC端處于長發狀態而將總線拉死一片。提醒讀者不要忘記對TC端的檢查。盡管RS-485規定差模電壓大于200mV即能正常工作。但實際測量:一個運行良好的系統其差模電壓一般在1.2V左右(因網絡分布、速率的差異有可能使差模電壓在0.8~1.5V范圍內)。


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 洪江市| 唐海县| 牙克石市| 焉耆| 瑞丽市| 沛县| 南昌市| 韶关市| 双桥区| 赤水市| 成都市| 嘉禾县| 杭锦后旗| 天柱县| 兰考县| 垣曲县| 泾川县| 东至县| 崇文区| 桃源县| 松阳县| 红安县| 抚顺县| 清新县| 武定县| 龙口市| 历史| 永春县| 茌平县| 斗六市| 山西省| 鄂尔多斯市| 湖北省| 天等县| 萨嘎县| 龙陵县| 潜江市| 长宁区| 镇赉县| 同仁县| 古丈县|