李雪峰
摘 要:隨著船舶應用技術的發展,新的技術層出不窮。本文提出了一種基于分布式總線技術的船舶防火監控與報警系統,對系統的結構進行了設計,并分析了CAN協議,在此基礎上設計了CAN總線模塊,以提高我國船舶消防技術的綜合實力。
關鍵詞:CAN總線;防火監控;報警系統
船舶火災是船舶在航運過程中時有發生且危險性大的安全事故。火災發生時,難以得到外援,只能依靠船員和船上的滅火設備,撲滅難度遠大于陸地火災。因此,及早發現火警并及時采取撲救措施就顯得十分重要。船舶機艙監控報警系統是電氣自動化的一個重要組成部分,它能準確可靠地監測船舶機艙內各種機械設備的狀態及參數,若有故障發生,系統會自動發出聲光報警。近年來,隨著計算機技術、網絡通信技術、自動控制技術等的不斷發展,機艙監控報警系統在智能化、信息化、集成化方面的要求也越來越高。下面,提出一種基于CAN總線的船舶火災監控與報警系統。
1. CAN總線
1.1 CAN總線簡介
CAN總線是一種非常常用的現場總線技術,現場總線是一種能夠實現工業現場多種設備之間的數據交換的技術,現場的設備我們稱之為節點,所有的節點均在現場總線上,最終形成一種互相聯通的結構[1]。
CAN總線技術,全稱為“控制器局域網總線技術(Controller Area Network-BUS)。CAN總線以雙絞線將船舶各個位置的傳感器或者設備進行連接,使用串行通信的方法進行數據傳送,數據傳輸的速度可以達到1M/s。在CAN總線網絡中,每一個設備都具有獨立、唯一的標識符,主機向某一個設備傳輸數據時是向總線網絡內所有的設備進行數據廣播,所有的設備都處于數據待接收狀態,報文發出后,所有的設備都接收到目標數據,這些目標數據包括了地址信息以及數據信息,因而設備會判斷這些數據是否是發送給自己的,只有地址符合才會讀取報文中的數據。CAN總線可以實現不同節點之間的自由通信,因而可以非常方便地構建船舶分布式監控系統,特別是對于大型船舶的防火監控,由于大型船舶體積大、設備多,因而需要監控的區域也非常多。使用分布式總線可以很好地解決這一問題。同時,CAN總線還采用了總線仲裁技術,不同的監控節點根據其重要性不同可以設置不同的優先級,在多個節點同時發送信號時CAN總線會根據優先級的不同對數據進行接收,優先級高的數據會優先傳送。
CAN總線由于采用了串行通信的方法,和外部連接的線只有2根,CAN_High線和CAN_Low線,在物理連接上非常簡單,內部還具備錯誤處理機制,因而非常穩定。圖1所示為CAN_High線和CAN_Low線在正常狀態下和信號傳輸狀態下的電壓值,淺色線為CAN_High,深色線為CAN_Low,可以發現,正常狀態下兩者之間均為2.5V,但是在信號傳輸時CAN_High變為3.5V,CAN_Low變為1.5V。1.2CAN協議目前CAN協議的報文有2種,在監控節點將報文打包后可以選擇一種報文進行數據發送。2種報文分別為擴展幀和標準幀,分別包含29位數據和11位數據。如圖2所示分別為擴展幀和標準幀的報文結構。
2.船舶防火與監控系統
2.1系統功能設計
船舶防火監控與報警系統是船舶自動化系統的重要組成部分,是保障船舶航行安全的必要條件。系統主要實現如下功能[2]:
(1)實現對船舶重要區域的防火監控;
(2)在發現火災后發出聲光報警。
系統的結構如圖3所示。系統以工業計算機為中心,主機安裝在駕駛室,集控室、駕駛臺和餐廳等重要位置會安裝有分顯器,另外在船舶多個位置設置聲光報警,使之在發生火災后能夠及時通知船員。煙霧傳感器、溫度傳感器等將信號傳輸到CAN總線模塊,CAN總線模塊包括CAN驅動、嵌入式CPU以及CAN收發器,采集的傳感器信號不能直接傳輸到駕駛室及報警分顯裝置的顯示屏,CAN總線模塊將這些數據進行A/D轉換后,將其打包成標準幀通過CAN總線傳輸出去。
2.2 CAN總線通信模塊設計
本文的CAN總線通信模塊使用STM32單片機進行設計,模塊具備多路A/D轉換接口,可以同時對4個傳感器的A/D信號進行轉換。同時為了調試方便,設計USB轉CAN總線接口,可以直接從電腦上發送數據傳輸到CAN總線。
由于單個CAN總線模塊一般只能監控10個左右的傳感器,因而在實際使用中需要根據船舶的大小布置數量不等的CAN總線模塊,既可以實現對全船的火災監控,又可以實現報警功能。圖4所示為CAN總線模塊核心板實物圖。
對設計完成的CAN總線通信模塊進行測試,可以將其作為一個黑盒子進行測試工作。使用NI6250板卡,在上位機中使用Labview編寫好相應程序,在下位機中編寫程序,實現將接收的數據發送到上位機,然后進行反復測試[4]。
測試的步驟為:在Labview中發送一串數據,CAN總線模塊在接收到數據后不進行處理直接發回到上位機,Labview將發送的數據和接收到的數據同時進行顯示,并將2組數據進行對比。另外,對模塊工作的穩定性進行測試,反復發送同一串數據,觀察返回的數據值是否穩定。
經過測試發現,系統軟件設計的主要功能是火災報警控制器與消防中心的通信。火災報警控制器將火災信號通過CANBUS傳送到消防中心,消防中心接收到信號后啟動相應的聯動設備和顯示設備。CAN接收和發送數據一般都是在CAN中斷程序中實現的,每一幀的數據長度為≤8個字節。如果發送或接收錯誤,CANBUS具有錯誤檢測能力,在所有節點發生的錯誤可100%被檢測到。本文設計的CAN總線通信模塊可以完成既定功能,同時具有良好的穩定性。使用火災傳感器數據進行測試發現系統亦可以穩定工作。因而,CAN總線通信模塊可以實現在船舶上對火災傳感器信號的采集和傳輸。
3.結語
總之,鑒于船舶火災的復雜性及特殊性,有關船舶火災的早期預警、報警等一直是國內外船舶制造業、科研院所重點關注的熱點課題。測試結果表明,使用先進的分布式總線技術,結合煙霧傳感器、溫度傳感器等現場信號,并使用攝像頭對易于發生火災的船舶重點區域進行監控,具有良好的準確性和穩定性,可靠性高、實時性強,功能全面,能夠滿足實際工程的應用要求。因此,本研究結果可以為其他研究人員提供一些借鑒。
參考文獻:
[1]韓小東. 基于CAN總線的船舶機艙監控報警系統的研究[D]. 大連海事大學, 2016.
[2]劉榮進. 船舶防火監控系統的研究與設計[D]. 江蘇大學, 2016.
[3]王德龍. 基于嵌入式的船舶電站網絡監控系統設計[D]. 大連海事大學, 2016.
[4]樹芳芳. 基于CAN總線的船舶監測報警系統[J]. 中國水運(下半月), 2015, 15(6):38-39.