- 相關(guān)推薦
基于CAN總線(xiàn)的對等式火災報警系統
摘要:介紹了基于can總線(xiàn)的對等式火災報警系統的設計和實(shí) 現方法,給出了can總線(xiàn)的硬件接口電路和軟件流程。關(guān)鍵詞:火災報警 can總線(xiàn) 對等式 隨著(zhù)新技術(shù)的不斷發(fā)展,對火災報警控制器聯(lián)網(wǎng)的要求也越來(lái)越高;馂膱缶刂破鞑坏 完成本機的報警、聯(lián)動(dòng)等功能,還要把報警信息傳送到其它報警控制器或系統。本文介紹了 基于can總線(xiàn)的對等式火災報警系統,系統中任意報警控制器都可以平等地從總線(xiàn)上接收其 它報警控制器的報警信息,也可以對其它報警控制器發(fā)出指令,從而克服了"主從式"通訊 中所有信息必須通過(guò)主機進(jìn)行交換的缺點(diǎn)。
1、can總線(xiàn)簡(jiǎn)介
控制器局域網(wǎng)can(controller area net)是一種現場(chǎng)總線(xiàn),主要用于各種過(guò)程檢測及控制。 can最初是由德國bosch公司為汽車(chē)監測和控制而設計的,目前can已逐步應用到其它工業(yè)控 制中,現已成為iso-11898國際標準。
can總線(xiàn)有以下特點(diǎn):
1)can可以是對等結構,即多主機工作方式,網(wǎng)絡(luò )上任意一個(gè)節點(diǎn)可以在任意時(shí)刻主動(dòng)地向 網(wǎng)絡(luò )上其它節點(diǎn)發(fā)送信息,不分主從,通訊方式靈活。
2)can網(wǎng)絡(luò )上的節點(diǎn)可以分為不同的優(yōu)先級,滿(mǎn)足不同的實(shí)時(shí)需要。
3)can采用非破壞性仲裁技術(shù),當兩個(gè)節點(diǎn)同時(shí)向網(wǎng)絡(luò )上傳送信息時(shí),優(yōu)先級低的節點(diǎn)自動(dòng) 停止發(fā)送,在網(wǎng)絡(luò )負載很重的情況下不會(huì )出現網(wǎng)絡(luò )癱瘓。
4)can可以點(diǎn)對點(diǎn)、點(diǎn)對多點(diǎn)、點(diǎn)對網(wǎng)絡(luò )的方式發(fā)送和接收數據,通訊距離最遠10 km(5 kb/ s),節點(diǎn)數目可達110個(gè)。
5)can采用的是短幀結構,每一幀的有效字節數為8個(gè),具有crc校驗和其它檢測措施,數據出錯幾率小。can節點(diǎn)在錯誤嚴重的情況下,具有自動(dòng)關(guān)閉功能,不會(huì )影響總線(xiàn)上其它節點(diǎn)操作。
6)通訊介質(zhì)采用廉價(jià)的雙絞線(xiàn),無(wú)特殊要求,用戶(hù)接口簡(jiǎn)單,容易構成用戶(hù)系統。
2、系統構成
系統中每個(gè)節點(diǎn)由火災報警控制器、can總線(xiàn)控制器、can收發(fā)器構成,系統結構圖如圖1所 示,火災報警控制器接收火災報警信息并完成火災判斷、聯(lián)動(dòng)等功能;can控制器用于各控 制器 之間的數據傳遞;can收發(fā)器增強了控制器的驅動(dòng)能力,保證了火災報警控制器之間的通訊 距離。

發(fā)送數據時(shí),火災報警器把需要傳送的數據寫(xiě)入can控制器的發(fā)送緩沖區,啟動(dòng)發(fā)送, 數據即通過(guò)can收發(fā)器發(fā)送到總線(xiàn)上;接收數據時(shí),can控制器通過(guò)can收發(fā)器從總線(xiàn)上接收 數據,處理后存入接收緩沖區,并給出接收中斷信號,這時(shí),火災報警器可以從can控制器 的接收緩沖區取走數據。
3、系統硬件設計
圖2是can總線(xiàn)節點(diǎn)(即火災報警器節點(diǎn))的電原理圖,圖中cpu以mcs-51系列單片機為例進(jìn)行 說(shuō)明。82c200是can通訊控制器,主要完成can的通訊協(xié)議。82c200需外接復位(rst)信號; 可選用6~24 mhz晶振;mode接vdd為intel方式,接vss為motorola方式;中斷(int)連接到 cpu的int0;片選信號(cs)由cpu的a15控制;tx0和rx0是與can總線(xiàn)的接口;rx1需接地。82c 250是can收發(fā)器,用于提供對總線(xiàn)差動(dòng)發(fā)送和接收的驅動(dòng)能力;txd和rxd用于發(fā)送和接收信號。

4、系統軟件設計
在軟件設計時(shí),由于can通訊協(xié)議是由集成在can控制器82c200中的硬件電路實(shí)現的,因此, 通訊軟件的開(kāi)發(fā)主要體現在應用軟件上,主要包括兩部分:初始化程序和通訊程序。
4?1初始化
在開(kāi)機和復位后,需要對can控制器進(jìn)行初始化,通過(guò)對82c200控制段的寄存器寫(xiě)入控制字 從而確定82c200的工作方式。初始化時(shí),首先給can控制器發(fā)出復位指令,然后給控制寄存 器cr、命令寄存器cmr、狀態(tài)寄存器sr、中斷寄存器ir、驗收寄存器acr、驗收屏蔽寄存器am r、總線(xiàn)定時(shí)寄存器btr0、btr1、輸出控制寄存器ocr寫(xiě)入相應的控制字。軟件流程如圖3所 示。

在發(fā)送數據時(shí),cpu把需要發(fā)送的一幀數據寫(xiě)入can控制器82c200,然后啟動(dòng)發(fā)送,can控制 器即把數據發(fā)送到總線(xiàn)上。在接收數據時(shí),can控制器把從總線(xiàn)上接收的數據存入緩沖區,cpu再從緩沖區讀取數據。 數據的發(fā)送和接收可以采用查詢(xún)方式和中斷方式,下面給出采用中斷方式時(shí)的中斷服務(wù)程序。軟件 流程如圖4所示。

傳統的"主從式"通訊方式中,如果主機因為某種原因出現通訊故障,將導致整個(gè)網(wǎng)絡(luò )癱瘓 。在基于can總線(xiàn)的對等式火災報警控制系統中,各火災報警控制器節點(diǎn)的關(guān)系是平等的, 都可以主動(dòng)地從總線(xiàn)接收和發(fā)送信息,真正地實(shí)現了系統信息的共享,從而較好地解決了這 個(gè)問(wèn)題,網(wǎng)絡(luò )中任意節點(diǎn)都可以平等地發(fā)送和獲取需要的信息。同時(shí),can總線(xiàn)具有抗干擾 能力強、傳輸距離遠、價(jià)格低廉、易于維護等優(yōu)點(diǎn),可廣泛應用于火災報警系統中。
參考文獻:
[1]鄔明寬?《can總線(xiàn)原理和應用系統設計》,北京:北京航空航天大學(xué)出版社,1996?
[2]陽(yáng)憲惠?《現場(chǎng)總線(xiàn)技術(shù)及應用》,北京:清華大學(xué)出版社,1999?
[3]application notes and development tools for 80c51 microcontrollers philip s 1995. 論文出處(作者):
對電子設備防雷擊有關(guān)問(wèn)題的看法
東勝大廈樓宇自控系統的設置方案
【基于CAN總線(xiàn)的對等式火災報警系統】相關(guān)文章:
基于CAN總線(xiàn)的EV電控系統通信的設計與開(kāi)發(fā)03-19
基于CAN總線(xiàn)的工業(yè)通訊網(wǎng)絡(luò )系統的設計與實(shí)現03-07
基于PCI總線(xiàn)的CAN卡的設計與實(shí)現03-18
基于CAN總線(xiàn)的汽車(chē)液晶儀表設計03-07
基于ISD語(yǔ)音芯片的報警系統03-07
基于單片機的CAN智能總線(xiàn)節點(diǎn)的設計03-07