汽車前照燈CAN總線多路傳輸系統的研究與設計
3.3 主控節點軟件設計
主控節點軟件采用事件驅動方式,事件信號由各種中斷信號產生;CPU在進入中斷處理程序后,僅僅判斷事件類型,設置相應的事件標志位,并不對事件做任何處理;主控節點主程序將循環讀取事件標志,并轉入相應的事件處理程序。
主控節點具有兩種工作模式。一種是系統中存在上位機,上位機作為命令發出點,主控節點處于被動控制模式。此時,主控節點的工作是通過RS 232接收上位機的命令,分析命令的目的節點,并將命令通過CAN網絡發送給目的節點;同時,主控節點檢測CAN網絡上的節點數據,將節點發出的數據通過RS 232發送給上位機;重復以上流程直到工作方式發生改變。在這種方式下主控節點的主要工作流程如圖6所示。

當系統中不存在上位機或上位機發出脫離系統命令后,主控節點進入主動控制工作模式。在這種狀態中,命令發送者為主控節點,主控節點可通過定時器事件輪循查詢各節點工作狀態;響應鍵盤事件,并根據用戶輸入的命令向目標節點發出命令或響應相應子節點的數據;通過LED燈顯示子節點工作狀態。
兩種工作模式間可以通過上位機發出命令、用戶通過鍵盤輸入命令以及主控節點查詢上位機工作狀態異常(如在被動狀態中,上位機長時間沒有命令)等幾種方式切換。
3.4 上位機監控系統設計
上位機監控系統基于C++設計,可以實現同時對多路數據進行采集、存儲,并設計了圖形化的監控顯示。監控系統功能包括:
(1)向主控節點發出聯機或脫機命令,切換節點工作狀態;
(2)定時發送節點查詢命令,查詢子節點工作狀況,更新系統節點表;
(3)根據用戶需要,定時向監控節點發送讀取命令,取得節點的監控數據,并保存數據,形成監控數據文件;
(4)以圖形化的方式顯示監控曲線。
上位機系統中還包含了數據分析功能,其中設計了算法接口;系統用戶可編寫自己的算法庫,系統可調用用戶算法庫對采集的原始數據進行進一步的分析。
4 結語
由于CAN總線具有極強的抗干擾能力,系統在使用現場數據通訊非常可靠,并且通過CAN中繼器可以進一步提高通訊質量和距離。隨著CAN總線芯片性能的提高、價格的降低,逐漸應用到普通轎車上,也為其在農業機械上的應用提供了條件。研究CAN總線在拖拉機等農業機械上的應用,對于提高農機性能和經濟性,促進我國農業機械化發展,具有重要意義。
本文引用地址:http://www.104case.com/article/197565.htm
評論