王出航
(長春師范學(xué)院網(wǎng)絡(luò)中心,吉林長春 130032)
基于CAN總線的智能聯(lián)防報警系統(tǒng)研究
王出航
(長春師范學(xué)院網(wǎng)絡(luò)中心,吉林長春 130032)
在分析CAN總線協(xié)議和技術(shù)特點(diǎn)及其通信原理的基礎(chǔ)上,本文提出一種利用CAN總線構(gòu)建智能聯(lián)防報警系統(tǒng)的方法,設(shè)計相關(guān)硬件電路、應(yīng)用層協(xié)議和軟件架構(gòu),建立系統(tǒng)子機(jī)、分機(jī)和主機(jī)之間通訊的網(wǎng)絡(luò)模型。實地安裝測試表明,該智能聯(lián)防報警系統(tǒng)滿足“鄰里互助,警民聯(lián)動”的智能控制要求,取得了良好的效果。
聯(lián)防報警;CAN總線;智能控制
控制器局部網(wǎng)CAN(controller Area Network)是Bosch公司為現(xiàn)代汽車應(yīng)用領(lǐng)先推出的一種多主機(jī)局部網(wǎng),由于其卓越性能現(xiàn)已廣泛應(yīng)用于汽車工業(yè)、自動化控制、航空工業(yè)、環(huán)境控制及安全防護(hù)等眾多領(lǐng)域[1]。CAN總線規(guī)范已經(jīng)被ISO國際標(biāo)準(zhǔn)組織制定為國際標(biāo)準(zhǔn)ISO11898(高速應(yīng)用)和ISO11519(低速應(yīng)用)[2],得到了國際上知名半導(dǎo)體公司如PHILIPS、INTEL和ATMEL等的支持,現(xiàn)已推出了不同功能和特點(diǎn)的CAN控制器芯片,使得CAN的應(yīng)用越來越廣泛。
我國村鎮(zhèn)尤其是邊境的村鎮(zhèn),居民住宅比較分散,離派出所距離比較遠(yuǎn),當(dāng)有突發(fā)事件時民警不能很快到達(dá)現(xiàn)場。為了解決這一問題,本文采用CAN總線構(gòu)建了智能聯(lián)防報警系統(tǒng),使相鄰的住戶組成“聯(lián)防報警組”,一方面形成鄰里互助,另一方面具有“110”接、處警能力,及時幫助群眾解決突發(fā)事件。
在單個CAN網(wǎng)絡(luò)里,如果每個節(jié)點(diǎn)分配一個唯一的識別符 (ID),理論上總線容量可以達(dá)到2032個設(shè)備[3]。但在實際應(yīng)用中,不同的收發(fā)器芯片所支持的節(jié)點(diǎn)數(shù)不同,PHILIPS公司的PCA82C250僅支持110個節(jié)點(diǎn)。
依據(jù)CAN210標(biāo)準(zhǔn)規(guī)范,CAN包含數(shù)據(jù)鏈路層和物理層。其中鏈路層完成幀結(jié)構(gòu)控制、仲裁執(zhí)行、錯誤檢測、出錯標(biāo)定、故障界定等功能,而物理層實現(xiàn)不同節(jié)點(diǎn)之間根據(jù)電氣屬性進(jìn)行位信息的傳輸功能[4]。
為了實現(xiàn)聯(lián)防報警系統(tǒng)中各個節(jié)點(diǎn)的控制,首先由發(fā)送器節(jié)點(diǎn)觸發(fā)發(fā)送事件,并執(zhí)行發(fā)送命令TraCMD,CAN鏈路層和物理層負(fù)責(zé)將發(fā)送數(shù)據(jù)封裝成CAN協(xié)議報文并完成數(shù)據(jù)發(fā)送。網(wǎng)絡(luò)中的其他接收器節(jié)點(diǎn)接收到報文后,解析協(xié)議,執(zhí)行RevCMD命令讀取數(shù)據(jù),并依據(jù)接收的ID判斷該數(shù)據(jù)幀為廣播幀還是特定目標(biāo)幀,然后對所接收的數(shù)據(jù)采取相應(yīng)的操作。
智能聯(lián)防報警系統(tǒng)由報警子機(jī)、報警分機(jī)和主機(jī)組成,主機(jī)安裝在派出所,報警分機(jī)安裝在聯(lián)防組長家,報警子機(jī)安裝在聯(lián)防村民家。分機(jī)和子機(jī)之間通過CAN總線進(jìn)行連接,分機(jī)和主機(jī)之間通過公共交換電話網(wǎng)PSTN(Public Switched Telephone Network)進(jìn)行通訊。因此,CAN通信節(jié)點(diǎn)之間信息傳輸?shù)目煽渴潜WC報警系統(tǒng)正常工作的前提。
CAN總線具有工作方式靈活、穩(wěn)定性和容錯性好等特點(diǎn),且傳輸距離遠(yuǎn),當(dāng)通信距離達(dá)3300米時,其傳輸能力還能達(dá)到20Kbit/s[5]。系統(tǒng)采用PHILIPS公司的CAN協(xié)議控制器SJA1000和CAN收發(fā)器PCA82C250來實現(xiàn)數(shù)據(jù)的傳輸。
CAN收發(fā)器完成邏輯電平TT L與CAN物理層 (CANH、CANL)電平之間的轉(zhuǎn)換,而CAN協(xié)議控制器主要實現(xiàn)CAN鏈路層的功能,主要是接收和發(fā)送報文,并與主控制器STC89C58RD+進(jìn)行通信。主控制器根據(jù)外部報警按鍵或接收報文觸發(fā)報警或接警操作流程。系統(tǒng)組網(wǎng)模型如圖1所示。
圖1 系統(tǒng)組網(wǎng)模型
大容量和靈活組網(wǎng)是系統(tǒng)的主要特點(diǎn)之一,每個報警分機(jī)可與多達(dá)109個報警子機(jī)組成一個聯(lián)防組,且報警點(diǎn)之間只需用一根兩芯雙絞線連接,布線簡單。主機(jī)最多可覆蓋255個報警組,包含上萬個報警點(diǎn)。
數(shù)據(jù)和語音傳輸是系統(tǒng)的另一主要特點(diǎn),系統(tǒng)除了傳輸報警信息外,還能實現(xiàn)壓縮語音數(shù)據(jù)傳輸,實現(xiàn)對報警現(xiàn)場的語音監(jiān)聽。
智能報警接警和故障檢測是系統(tǒng)的又一主要特點(diǎn),當(dāng)有警情或特殊情況發(fā)生時,按下報警子機(jī)或分機(jī)的“告警”按鈕,組內(nèi)的其它子機(jī)或分機(jī)均可收到該報警點(diǎn)的“號碼 (即ID)”,發(fā)出告警音后自動進(jìn)入監(jiān)聽狀態(tài)。在系統(tǒng)空閑狀態(tài)下,分機(jī)能定時地向網(wǎng)絡(luò)內(nèi)其他子機(jī)發(fā)送巡檢命令,以檢查各個子機(jī)的狀態(tài)。
系統(tǒng)的硬件部分包括子機(jī)硬件電路、分機(jī)硬件電路及主機(jī)PCI接入控制板電路,分機(jī)電路除了比子機(jī)電路多電話接口外,其他電路相同。主機(jī)PCI接入控制板電路主要包括多路電話接口 (可配置)及PCI接口電路,插入PC機(jī)擴(kuò)展槽與系統(tǒng)軟件平臺實現(xiàn)通信。
子機(jī)硬件電路主要包括語音壓縮/解壓縮模塊、CAN接口模塊和主控制器模塊等,CAN接口由獨(dú)立的CAN協(xié)議控制器SJA1000和CAN收發(fā)器PCA82C250及光電隔離電路組成,主控制器采用宏晶公司可在線編程微控制器STC89C58RD+。
系統(tǒng)的CAN接口電路原理如圖2所示。主控制器STC89C58RD+為SJA1000提供片選、讀寫等控制信號,SJA1000的CAN端輸出和輸入引腳TX0和RX0通過光電隔離電路與收發(fā)器PCA82C250相連,PCA82C250的CANH和CANL引腳接至CAN物理總線上。
圖2 CAN接口原理圖
SJA1000能夠處理所有CAN210B規(guī)范的幀類型,而且還提供一些增強(qiáng)功能,使SJA1000能應(yīng)用于更廣的領(lǐng)域。它具有以下特點(diǎn):靈活的微處理器接口;可編程的CAN輸出驅(qū)動器;高達(dá)1Mbit/sCAN位頻率;自身測試功能。
STC89C58RD+完成SJA1000的初始化以及CAN報文的發(fā)送和接收,初始化包括初始化工作模式、位速率、驗收濾波器、收發(fā)報文緩存地址以及輸出控制寄存器等。
CAN協(xié)議只規(guī)范了物理層和鏈路層,采用逐位仲裁的方式進(jìn)行報文傳輸。本文采用CAN標(biāo)準(zhǔn)幀格式進(jìn)行數(shù)據(jù)傳輸,其幀格式主要包括幀起始位 (SOF)、仲裁場 (Arbitration Field)、控制場 (Control Field)、數(shù)據(jù)場 (Data Field)以及CRC校驗場。仲裁場由11位識別符和1位遠(yuǎn)程發(fā)送請求位 (RTR)組成,RTR在數(shù)據(jù)幀里為“顯性”,在遠(yuǎn)程幀里為“隱性”。控制場由1位識別符擴(kuò)展位 (IDE)和1位保留位 (r0)及4位數(shù)據(jù)長度代碼 (DLC)組成,IDE在標(biāo)準(zhǔn)幀里為“顯性”,在擴(kuò)展幀里為“隱性”,保留位默認(rèn)為“顯性”,數(shù)據(jù)長度代碼指示數(shù)據(jù)場的字節(jié)數(shù)量,范圍為0到8。為了實現(xiàn)CAN網(wǎng)絡(luò)各個節(jié)點(diǎn)正確處理不同的報文,本文對標(biāo)準(zhǔn)幀格式的仲裁場 (主要是ID)和控制場進(jìn)行了詳細(xì)的規(guī)劃,設(shè)計了切實可行的應(yīng)用層協(xié)議。其協(xié)議規(guī)范如表1所示。其中ID11 ID10 ID9定義為報文優(yōu)先級,“000”具有最高優(yōu)先級。ID8 ID7定義為報文類型,“11”為報警信息報文,其后的ID6 ID5 ID4 ID3 ID2 ID1為報警子機(jī)的源地址,數(shù)據(jù)長度代碼為0;“10”為語音信息報文,ID6 ID5 ID4 ID3 ID2 ID1為報警子機(jī)的源地址,數(shù)據(jù)代碼長度為0-8;“01”為巡檢信息報文,由分機(jī)主動發(fā)起,ID6 ID5 ID4 ID3 ID2 ID1為目標(biāo)子機(jī)地址,目標(biāo)子機(jī)收到該報文時,發(fā)送同樣優(yōu)先級的確認(rèn)報文,報文目的地址為分機(jī)地址 (默認(rèn)為0),以通知分機(jī)該子機(jī)在線,否則為故障,巡檢報文的數(shù)據(jù)代碼長度為0。
表1 應(yīng)用層協(xié)議規(guī)范
主機(jī)管理軟件平臺采用VC++開發(fā)工具開發(fā),數(shù)據(jù)庫采用SQL Server2000,實現(xiàn)報警信息在電子地圖上的動態(tài)顯示及現(xiàn)場錄音等功能。管理平臺軟件架構(gòu)如圖3所示。
系統(tǒng)接警后立即接入報警處理程序,自動控制彈出多級電子地圖,顯示報警的位置,并啟動遠(yuǎn)程監(jiān)聽和錄音,同時記錄警情發(fā)生的時間、警種、處警時間、方式等;通過信息錄入模塊可完成電子地圖、用戶信息的錄入;通過窗口操作模塊完成對地圖的放大、縮小、測量距離等功能;通過圖層管理模塊實現(xiàn)圖層打開、編輯和修改等功能;通過信息查詢和錄/放音模塊完成報警信息與處理結(jié)果查詢及錄放音等功能;通過PCI通信模塊接收實時報警信息。
圖3 系統(tǒng)軟件平臺架構(gòu)
采用CAN總線進(jìn)行智能聯(lián)防報警系統(tǒng)的研究與設(shè)計,能夠提高報警信息傳輸?shù)陌踩?、可靠性和實時性,是解決廣大邊防鄉(xiāng)鎮(zhèn)地區(qū)治安問題的有效方式。系統(tǒng)設(shè)計的CAN應(yīng)用層協(xié)議為以后系統(tǒng)升級提供了基礎(chǔ)和靈活的接口。該系統(tǒng)已實際應(yīng)用于吉林省延邊地區(qū)的邊防鄉(xiāng)鎮(zhèn)地區(qū),取得了良好的經(jīng)濟(jì)和社會效益。
[1]鄔寬明.CAN總線原理和應(yīng)用系統(tǒng)設(shè)計[M].北京:北京航空航天大學(xué)出版社,2001.
[2]鄭凱,趙宏偉,陳鵬.基于MPC565的CAN總線智能節(jié)點(diǎn)的研究[J].微計算機(jī)信息,2009(1-2):59-61.
[3]Krishnamoorthy,Ratna.Controller Area Network as a serial communication protocol[C].Proceedings of Modelling and Simulation,MS’2004.
[4]BOSCH Company.CAN Specification Version 2.0[M].Germany:BOSCH Company,1991.
[5]Ping Ran,Baoqiang Wang,Wei Wang.The Design of Communication Converter based on CAN Bus;Proceedingsof the IEEE International Conference on Industrial Technology,2008:1-5.
Research on the Intelligent Joint-defense Alarm System Based on CAN Bus
WANG Chu-hang
(Network Center of Changchun Normal University,Changchun 130032,China)
Through analyzing CAN(Controller Area Network)bus protocol and its technology features and communication principle,a method of using CAN bus to design an intelligent joint-defense alarm system was presented,and the hardware circuits,application layer protocol and software framework of the system were proposed.Besides,the network model of the system was built.The results byfield tests showed that the system met the requirementsof intelligent control and gained good effects.
joint-defense alarm;CAN bus;intelligent control
TP277
A
1008-178X(2011)01-0030-04
2010-11-29
吉林省科技廳創(chuàng)新基金項目 (SC0701022)。
王出航 (1976-),女,吉林長春人,長春師范學(xué)院網(wǎng)絡(luò)中心講師,從事嵌入式系統(tǒng)與智能網(wǎng)絡(luò)控制研究。