新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于CAN總線的嵌入式水位監測系統設計

        基于CAN總線的嵌入式水位監測系統設計

        作者: 時間:2010-12-14 來源:網絡 收藏

        2.1.2 CAN收發子程序
        CAN協議是建立在ISO的開放系統互聯模型的基礎上的,取其中的3層:物理層、數據鏈路層和應用層。物理層和數據鏈路層的功能可由CAN接口芯片實現,而應用層的功能則要靠應用程序完成。CAN總線接口通信模塊是接收和發送CAN總線數據。主要操作包括CAN控制器初始化和CAN總線上接收和發送數據的操作。
        CAN收發子程序主要完成CAN控制器的初始化和CAN數據的接收、發送。CAN控制器的初始化主要是給相應的寄存器寫入一定的數值以完成各種參數的設置,如波特率、位周期寬度、采樣點位置等。
        CAN控制器有3個獨立的發送緩沖寄存器,發送時要判斷緩沖空閑。本設計中,先判斷第一主發送緩沖區,然后進行數據格式轉換,啟動發送數據。接收采用中斷方式。報文發送、接收數據流程如圖4所示。

        本文引用地址:http://www.104case.com/article/151195.htm


        2.1.3 iCAN協議報文處理
        iCAN協議為CAN總線的應用層協議。該協議是基于CAN的內部通信協議,小巧、通信效率高,對硬件資源要求低,適用于小型系統。系統中的設備統稱為iCAN節點。iCAN協議定義的通信方式是“面向節點,基于連接”的通信方式。“面向節點”是指源節點地址及目的節點地址均已給定,即對于任何一個報文參與通信的雙方是確定的。“基于連接”是指在網絡中任何一個參與通信的從站設備都必須和主站設備之間建立一個獨立的通信連接。這樣也為對任何一個設備的通信進行監控提供可能。
        iCAN協議使用了擴展幀格式CAN報文,對CAN報文的29位標識符和報文數據都做了詳細規定。報文標識符制定了數據通信中的源節點MACID和目標節點MACID,并指示了報文的功能以及所要訪問的資源。報文標識符被分為5個部分:SrcMACID(源節點編號)、De2stMACID(目標節點編號)、ACK位、FUNC ID(功能碼)、Source ID(資源節點編號)。
        監測終端要收發的數據必須符合iCAN協議報文的格式,先要把CAN的數據轉換成符合iCAN協議格式的報文,再通過CAN的首發子程序接收和發送。
        2.2 上位機管理軟件設計
        完成上述設計后,在計算機端還需要一套水位監測系統管理軟件,以實現網絡數據采集、與數據庫的連接和數據實時查詢等功能。上位機軟件流程如圖5所示。


        監測終端采集傳感器信號,實時獲得水位數據并通過ZOPC_SERVER服務器傳輸到客戶端KingVIEW,同時KingVIEW作為服務器提供數據給SQL數據庫。在KingVIEW的圖形化界面上既可以顯示實時水位數據,又可以查看歷史水位數據。

        3 結束語
        實驗結果表明:該系統可通過1根雙絞線在通信速率為9 600 b/s的情況下,可在6 km范圍內實時監測63個節點的水位信息。此嵌入式水位監測系統可應用在基于ARM7核心的多點水位監測的工廠、城市供水、隧道等場合。本系統可以實現水位信息采集的現場總線通信,使各節點連接在總線網絡上,實時獲取水位信息,方便數據庫的管理和更新,可進行數據庫的定點定時水位查詢。


        上一頁 1 2 3 下一頁

        關鍵詞: 收發器

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 离岛区| 高平市| 岗巴县| 汝城县| 乳山市| 奇台县| 确山县| 马关县| 温州市| 莱阳市| 保靖县| 长子县| 邓州市| 岑溪市| 利川市| 兴宁市| 仙桃市| 太和县| 海兴县| 抚宁县| 泽普县| 南雄市| 莱西市| 丹阳市| 汪清县| 榆林市| 乐业县| 淮安市| 出国| 威海市| 甘孜| 宁津县| 嵩明县| 浑源县| 即墨市| 新乡县| 三台县| 西畴县| 林周县| 尼勒克县| 定远县|