基于CAN總線和Internet的分布式網絡監控系統
5.2can總線通信程序
can總線通信程序包括can初始化、數據發送和數據接收等。
初始化can控制器的操作包括:硬件使能、軟件復位、設置報警界限、設置總線波特率、設置中斷工作方式、設置驗收濾波器工作方式、設置工作模式并啟動can等。在初始化過程中要注意數據發送設備和數據接收設備的波特率應相同,否則設備之間無法進行通信。
can初始化完成后,進入數據的接收和發送階段。為保證發送數據的完整性,采用查詢方式發送數據;同時為保證接收數據的實時性,采用中斷方式接收數據。數據發送和接收流程圖如圖6所示。

發送數據時,將待發送的數據打包成符合can協議的幀格式后寫入發送緩沖區,并自動發送。在寫發送緩沖區前必須查詢其狀態,只有在有空閑的發送緩沖區時才將數據寫入。啟動發送成功后,通過查詢can狀態寄存器或配置發送成功中斷來判斷數據是否發送成功。
采用中斷方式接收數據,在初始化程序中必須使能接收中斷。在中斷服務子程序中,讀取can中斷允許寄存器,判斷是否有接收中斷標志,有則讀取接收緩沖區數據。為防止接收緩沖區中數據溢出,可開辟一個循環接收數據隊列來暫時存儲數據,主程序則通過查詢該隊列來獲得總線數據。

6測試結果
系統安裝調試后,經過一段時間的運行,系統穩定可靠,無異?,F象。圖7是系統主服務器接收到的數據,其中ady表示a相電壓,adl表示a相電流,plv表示頻率,wg表示無功功率,yg表示有功功率,cjsj表示采集時間。
7結束語
本文采用can總線傳輸技術解決鞍鋼集團大孤山選礦廠數據采集與控制系統各部件之間的信號傳輸問題。基于can總線的采礦廠數據采集與控制系統簡化了系統的傳輸線束,同時大大的提高了系統的可靠性和傳輸響應的實時性,也為企業實現節能降耗、成本核算、過程優化以及建立mes信息管理系統奠定了物理基礎。
參考文獻(略)
評論