新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于CAN總線/RS485接口的雙層網絡遠程抄表系統設計

        基于CAN總線/RS485接口的雙層網絡遠程抄表系統設計

        作者: 時間:2016-12-16 來源:網絡 收藏


        網橋的微控制器采用TI的MSP430F449,它負責整個網橋的監控任務。CAN控制器接口電路由CAN通信控制器SJA1000和CAN總線收發器82C250組成,為了提高系統的可靠性和抗干擾能力,可以在SJA1000和82C250之間增加光耦合電路。RS-485總線端所使用的是內部具有光耦合的差動收發器MAX1480。網橋中設計的LED,可用于網橋上的上電指示,總線收發狀態及故障情況指示,網橋的看門狗采用了一片X25045。X25045除了具有看門狗和上電復位功能外,內部還集成了512個字節的串行EEPROM,用于保存網橋參數配置等信息。網橋的配置可通過CAN總線或RS-485總線實現,通過網橋的適當配置可以很方便的實現報文的過濾。
        4.2集中抄表器的軟件設計
        網橋總線數據的接受均采用中斷的方式,在主監控中實現數據的發送,內存采用FIFO機制管理。
        由于RS-485總線與CAN總線是兩種不同的總線形式。相互進行數據通訊時,需要進行協議轉換。CAN總線標準具有物理層和數據鏈路層協議,以幀為單位進行數據通信,而且每幀均攜帶相應的ID標志符,而RS-485本質上是一個物理標準,以字節為單位進行數據通信,不帶有任何其它附屬信息,其格式完全由用戶自己定義。所以在考慮設計RS-485幀格式時,應該參考CAN總線的幀格式。具體設計RS-485幀格式時可以參考以下格式:


        第一個字段為地址字段,占用一個字節,作為RS-485子網的多機通信地址用。在RS-485網絡中,只能采用一主多從的方式進行通信,網絡中必須有一個主控節點,在此網橋為主控節點,通過查詢點名的方式進行通信。第二到第四字段與CAN報文中的同名字段定義相同,實際上這三個字段是一個完整的CAN報文。網橋在進行轉發時只需要將這三個字段構成的CAN報文發送即可,使網橋中的協議轉換更為容易實現。最后的校驗字段可用于網橋接受報文時的校驗,以保證數據的可靠。軟件設計流程見圖4。

        主監控程序根據接受緩沖區中是否有報文,決定數據是否發送以及發送給誰。如果接
        受CAN子網數據緩沖區中有報文則向RS-485子網轉發,如果接受RS-485子網數據緩沖區有數據則向CAN子網轉發。由于CAN報文和自定義的RS-485報文的幀格式長度不同,在轉發報文時,要進行幀格式的轉換。在轉發報文后,要對相應的FIFO緩沖區進行參數調整。另外在主監控程序中,如上位機對網橋有狀態請求或網橋本身有故障,網橋可以向上位機返回本機狀態。該功能便于系統的故障定位,管理中心計算機通過運行遠程抄表管理軟件可以提前發現系統故障,增強了系統的可維護性。
        5.結束語
        由CAN總線和RS-485總線組成的雙層網絡結構,有效地實現了戶用計量儀表和遠程管理計算機的有效數據通訊。它們無論在硬件連線,還是軟件編程都具有很好的兼容性。在實驗室條件下,通過系統運行檢驗表明,系統運行平穩,可靠性較高,實現了高效率的遠程數據采集和集中管理。


        上一頁 1 2 下一頁

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 伊金霍洛旗| 磴口县| 丰县| 勃利县| 贵德县| 郑州市| 六盘水市| 调兵山市| 潞西市| 崇明县| 新郑市| 金乡县| 格尔木市| 邢台市| 永嘉县| 肥东县| 黑山县| 广西| 连山| 彭州市| 古丈县| 富阳市| 禄劝| 福贡县| 临海市| 平山县| 通山县| 广平县| 涪陵区| 临猗县| 东兴市| 长子县| 长沙县| 读书| 石门县| 彝良县| 朔州市| 郎溪县| 纳雍县| 新竹市| 锡林浩特市|