基于CANOPEN的智能消防水炮系統設計
整個消防水炮系統包含了十四個節點,它們構成一個CAN網絡。工業控制計算機為網絡主節點。由它來協調系統中各個分節點的動作。工控機通過一塊CAN通訊卡掛接在CAN網絡上。系統中一共包含了十二個消防炮分節點。在各個分節點中,包含一臺紅外CCD攝像機、一門消防水炮、兩臺步進電機和一臺直流電機。各個分節點中節點控制模塊的硬件系統如圖2所示。
本文引用地址:http://www.104case.com/article/157793.htm
CAN控制器采用了PHILIPS公司生產的應用于汽車和一般工業環境的獨立CAN總線控制器,它支持基本型CAN模式和增強型CAN模式。它具有完成高性能CAN通信協議所要求的全部必要特性。CAN總線驅動器80C250是CAN控制器和物理總線之間的接口,可以提供對總線的差動發送和接收功能。而且,CAN控制器SJA1000和CAN總線驅動器80C250之間是通過高速光耦TL113相連,這樣就很好的實現了總線上各個CAN節點間的電氣隔離。不過,光耦部分電路所采用的兩個電源必須也完全隔離,否則就失去了采用光耦的意義。
3.2 節點對象字典的建立
網絡中的每個設備都需要有一個對象字典。在本系統中,有一個主節點和十三個從節點。在各個節點中都采用預定義連接集中規定的十一位ID。它由四位功能碼和七位節點ID組成。考慮到系統今后的可擴展性,設定十三個子節點的節點號為8-20.下面以主節點為例介紹對象字典的創建。
從節點需要能夠訪問主節點的對象字典,因此,主節點需要一個SDO。主節點需要向十三個從節點發送數據,因此需要十三個Tx―PDO和十三個Rx―PDO。每個PDO又由PDO通訊參數(PDO Parameter)和PDO映射參數(PDO Mapping)兩部分組成。如下表所示:
另外,主節點需要對網絡中的從節點進行管理,因此需要有管理對象(NMT)。系統還有緊急的信息需要發送,因此需要有一個緊急事件對象(Emergency Object)。
一個節點的對象字典是在電子數據文檔(EDS:Electronic data sheet)中描述的。節點本身只需要能夠提供對象字典中必需的對象以及其它可選擇、構成節點部分可配置功能的對象。
3.3 節點軟件實現
節點的軟件從內容上可以分為一個組成部分:基本功能部分,包括節點的通訊初始化和硬件設備的初始化,定義和訪問對象字典,進行PDO通訊和SDO通訊;錯誤處理和節點的管理部分,當節點發生錯誤或者節點狀態發生改變時進行相應的操作;擴展功能部分,用于在系統的硬件發生變化時對節點的狀態和相關參數進行再設置。
3.4 網絡初始化流程
CANopen網絡的初始化流程如圖3所示:
在智能消防炮網絡中,每個節點在上電和內部初始化后自動進入預操作狀態(Pre―operational state)。處于該狀態中的從節點可以通過SDO被配置參數,但不允許進行PDO通訊。工控機主節點可以通過NMT使各個從節點進入操作狀態(Operational state)。在操作狀態中,允許PDO通訊。主節點還可以使從節點進入停止狀態(Stopped State)。在停止狀態中,既不允許PDO通訊也不允許SDO通訊,節點可以專業做自己的事情。可以從停止狀態回到預操作狀態或者操作狀態。
4.結束語
智能消防水炮系統作為大空間建筑的重要消防設施,近年來越來越受到人們的重視。而CAN總線在各個領域都有很好的應用前景,CANopen是一種公開的協議。將CANopen應用層協議應用于消防水炮系統的設計中,不僅可以提系統通訊的效率和通訊的可靠性,而且能夠據推動智能消防水炮系統以CANopen協議為平臺標準化。
本文作者創新點:首次將CAN總線和CANopen協議應用于智能消防水炮系統的設計。
評論