戴 鵬,杜少武,儲(chǔ)昭碧,張 毅
(合肥工業(yè)大學(xué) 電氣與自動(dòng)化工程學(xué)院,安徽 合肥 230009)
隨著社會(huì)的發(fā)展,大量高密度的特大型建筑不斷涌現(xiàn),導(dǎo)致火災(zāi)逃生通道更為復(fù)雜,加大了火災(zāi)發(fā)生時(shí)的逃生難度。對(duì)于消防疏散而言,怎樣在火災(zāi)發(fā)生時(shí)使逃生更安全、更準(zhǔn)確、更迅速,正是時(shí)代對(duì)建筑防災(zāi)提出的新課題。目前消防應(yīng)急標(biāo)志燈大多作為單體存在,無(wú)法依據(jù)火災(zāi)現(xiàn)場(chǎng)的變化,動(dòng)態(tài)地調(diào)整逃生方向指示。此外,應(yīng)急標(biāo)志燈的日常維護(hù)和檢修也存在嚴(yán)重的滯后現(xiàn)象。應(yīng)急標(biāo)志燈最主要的作用是能在發(fā)生火災(zāi)時(shí)應(yīng)急啟動(dòng),而應(yīng)急啟動(dòng)的關(guān)鍵在于其電池充放電工作是否正常。依靠人力的維護(hù)和檢修,難以及時(shí)發(fā)現(xiàn)產(chǎn)品問題,在發(fā)生火災(zāi)時(shí)往往會(huì)給逃生疏散指示帶來(lái)許多盲區(qū)。越來(lái)越高的公共安全要求使得消防應(yīng)急標(biāo)志燈從各自獨(dú)立工作發(fā)展為智能化消防應(yīng)急燈監(jiān)控系統(tǒng)。在火災(zāi)來(lái)臨之時(shí),該系統(tǒng)能迅速、準(zhǔn)確地收集火警現(xiàn)場(chǎng)的信息,智能地選擇最佳的逃生路線,通過集中控制消防應(yīng)急燈具,以光流、語(yǔ)音、頻閃形式,從聽覺、視覺等感觀上引導(dǎo)人們正確逃生。系統(tǒng)還可以不間斷地巡檢智能應(yīng)急燈具運(yùn)行狀態(tài),及時(shí)發(fā)現(xiàn)燈具故障,提高整個(gè)系統(tǒng)的可靠性和應(yīng)急安全性[1-2]。
圖1 具有雙環(huán)形總線的消防應(yīng)急燈系統(tǒng)
圖1展示了采用雙環(huán)形總線拓?fù)浣Y(jié)構(gòu)的消防應(yīng)急燈具智能監(jiān)控系統(tǒng),包括上位監(jiān)控計(jì)算機(jī)、中繼網(wǎng)關(guān)和智能消防應(yīng)急燈具三級(jí),通過兩級(jí)RS-485環(huán)形總線進(jìn)行相互通信。所有的控制命令都由監(jiān)控計(jì)算機(jī)發(fā)出,通過第一級(jí)總線環(huán)路傳送到中繼網(wǎng)關(guān),再由中繼網(wǎng)關(guān)通過第二級(jí)總線環(huán)路網(wǎng)絡(luò)傳遞至每個(gè)燈具,燈具執(zhí)行命令后,依次通過第二級(jí)、第一級(jí)環(huán)路返回執(zhí)行結(jié)果。在該系統(tǒng)中,監(jiān)控計(jì)算機(jī)從火災(zāi)報(bào)警系統(tǒng)(FANS)獲得火源信息,智能決策選擇最優(yōu)逃生路線,通過總線網(wǎng)絡(luò)將指令信息傳遞至中繼網(wǎng)關(guān),然后再由中繼網(wǎng)關(guān)發(fā)送至各燈具,指示安全可靠的逃生通道[3]。
總線型拓?fù)浣Y(jié)構(gòu)簡(jiǎn)單,控制方便,易于擴(kuò)展,所以目前大多數(shù)消防和門禁系統(tǒng)都是采用這種拓?fù)浣Y(jié)構(gòu)[4]。環(huán)形網(wǎng)絡(luò)還具有較好的可靠性,如果環(huán)形總線在某處斷開,則可分成兩個(gè)總線網(wǎng)絡(luò),分別連接到主站的兩個(gè)接口上,仍然能夠保證主站與從站之間的信息交換,大大提高了網(wǎng)絡(luò)傳輸?shù)目煽啃浴杉?jí)環(huán)形總線結(jié)構(gòu)的另一個(gè)優(yōu)點(diǎn)是,多個(gè)環(huán)路可并行工作,均衡并減輕單一總線上的通信負(fù)載。
在應(yīng)急狀態(tài)下,應(yīng)急燈及其監(jiān)控系統(tǒng)有集中供電和獨(dú)立供電兩種方式。在應(yīng)急狀態(tài)下,集中供電系統(tǒng)的每個(gè)燈具以及所有中繼網(wǎng)關(guān)都從同一個(gè)專用的應(yīng)急電源獲得工作電源,而獨(dú)立供電系統(tǒng)的工作電源由每個(gè)燈具或網(wǎng)關(guān)自帶的電池提供。因此,監(jiān)控電池的儲(chǔ)能性能及保證電池的可用性都至關(guān)重要。通過控制命令可以隨時(shí)檢測(cè)電池電壓,也可每月每年定期檢查。
在圖1所示的應(yīng)急燈智能監(jiān)控系統(tǒng)中,中繼網(wǎng)關(guān)作為上下兩級(jí)環(huán)路之間的聯(lián)絡(luò),是監(jiān)控計(jì)算機(jī)與燈具之間交換數(shù)據(jù)的中轉(zhuǎn)站,其結(jié)構(gòu)和功能設(shè)計(jì)是整個(gè)系統(tǒng)設(shè)計(jì)的重要內(nèi)容。
圖2為獨(dú)立供電型中繼網(wǎng)關(guān)總體結(jié)構(gòu)圖。在主電狀態(tài)下,通過市電獲得工作電源。在應(yīng)急狀態(tài)下,由自帶電池提供工作電源。網(wǎng)關(guān)具有電源變換、電池充放電控制功能。在整個(gè)消防應(yīng)急系統(tǒng)中,中繼網(wǎng)關(guān)可以通過平常的抽樣和制定燈具查詢?cè)摥h(huán)路燈具狀態(tài),與下位機(jī)節(jié)點(diǎn)通信時(shí),將發(fā)送第一個(gè)節(jié)點(diǎn)ID而功能碼以及它們的數(shù)據(jù)項(xiàng)還有校驗(yàn)碼所形成的數(shù)據(jù)幀,通過RS-485總線發(fā)送到第一個(gè)節(jié)點(diǎn)上,之后變?yōu)榻邮諣顟B(tài),接收第一個(gè)節(jié)點(diǎn)發(fā)送過來(lái)的數(shù)據(jù)幀并進(jìn)行解析。當(dāng)解析出下位機(jī)節(jié)點(diǎn)發(fā)送故障報(bào)警時(shí),將報(bào)警信息顯示在液晶顯示屏上,并啟動(dòng)聲光報(bào)警。由于監(jiān)控主機(jī)程序中設(shè)有定時(shí)器,因此,如果節(jié)點(diǎn)未能在一定的時(shí)間發(fā)送回?cái)?shù)據(jù)幀,則提示異常,提醒相關(guān)人員進(jìn)行檢查。如果未出現(xiàn)報(bào)警信息,則再輪詢下一個(gè)節(jié)點(diǎn)。
圖2 獨(dú)立供電型中繼網(wǎng)關(guān)結(jié)構(gòu)圖
系統(tǒng)使用主從通信協(xié)議,兩級(jí)環(huán)形網(wǎng)絡(luò)都采用RS-485總線。在系統(tǒng)網(wǎng)絡(luò)拓?fù)渲?,中繼網(wǎng)關(guān)作為第一級(jí)環(huán)路總線網(wǎng)絡(luò)的從站,同時(shí)又是第二級(jí)環(huán)路的主站。中繼網(wǎng)關(guān)需要3個(gè)串口,1個(gè)負(fù)責(zé)接收監(jiān)控計(jì)算機(jī)命令以及把燈具和網(wǎng)關(guān)本身的信息整理后回饋,另外兩個(gè)串口正好形成環(huán)路主站,1個(gè)負(fù)責(zé)發(fā)送,1個(gè)負(fù)責(zé)接收,如果出現(xiàn)環(huán)路斷線,則兩個(gè)都可以作為發(fā)送。
本設(shè)計(jì)中選擇具有兩個(gè)串口的單片機(jī)STC12C5A32S2(以下簡(jiǎn)稱STC12)作為主要控制芯片,它具有2個(gè)異步串行接口(UART),1個(gè)同步串行口(SPI),以及和普通單片機(jī)相同的256 B的內(nèi)部RAM,以及擴(kuò)展的1 024 B的外部RAM,還有28 KB的EEPROM。較大的存儲(chǔ)空間方便燈具的連接以及大量數(shù)據(jù)的存儲(chǔ)[5]。把STC12單片機(jī)自帶的兩個(gè)串口設(shè)計(jì)成1#和2#RS-485接口,作為第二級(jí)環(huán)路的主站,還需要擴(kuò)展另一個(gè)串口構(gòu)成0#RS-485接口,作為第一級(jí)環(huán)路的從站。
串口擴(kuò)展的方式有:(1)硬件的擴(kuò)展方式。使用市面上對(duì)串口進(jìn)行擴(kuò)展的芯片(有 SP2338DP,GM8123系列)。在這里對(duì)于幀的格式是不可編程的[6]。(2)軟件模擬法??筛鶕?jù)串行通信的傳送格式,利用定時(shí)器和主機(jī)的I/O口來(lái)模擬串行通信的時(shí)序,以達(dá)到擴(kuò)展串口的目的。接收過程中需要檢測(cè)起始位,這可以使用查詢方式或中斷方式進(jìn)行處理。接收和發(fā)送過程中,對(duì)定時(shí)的處理既可以使用查詢方式也可以使用定時(shí)器中斷方式。而這種方法需要占用大量的CPU時(shí)間,只能用于功能簡(jiǎn)單的應(yīng)用中,并不適合中繼網(wǎng)關(guān)這類功能復(fù)雜的設(shè)備。
綜合考慮成本和性能等因素,本設(shè)計(jì)使用STC12單片機(jī)的同步串行口 (SPI)和另一個(gè)帶有串口的單片機(jī)STC11F04E(以下簡(jiǎn)稱為STC11)來(lái)擴(kuò)展串口,其原理如圖3所示。其中TX、RX分別是串口的數(shù)據(jù)發(fā)送信號(hào)和數(shù)據(jù)接收引腳。RE用于控制MAX485的接收或發(fā)送狀態(tài)。圖中下部分給出了光電隔離型RS-485接口原理。3個(gè)RS-485接口使用相同的原理,但3個(gè)接口中MAX485芯片的工作電源是各自獨(dú)立的。
圖3 用SPI擴(kuò)展串口的電路構(gòu)造
圖3中,SCK、MISO、MOSI分別是SPI接口的時(shí)鐘信號(hào)、主站輸入信號(hào)、主站輸出信號(hào)。定義STC12的SPI接口工作在從站方式,STC11作為SPI主站。由于STC11單片機(jī)沒有SPI功能,必須用軟件模擬SPI主站功能,這里僅將STC11作為字節(jié)數(shù)據(jù)傳輸?shù)闹修D(zhuǎn)站,不進(jìn)行信息幀的校驗(yàn)、存儲(chǔ)和轉(zhuǎn)換。監(jiān)控計(jì)算機(jī)發(fā)出指令經(jīng)STC11的串口接收,通過SPI發(fā)送至STC12進(jìn)行處理。STC11再通過SPI接收返回信息,然后通過串口發(fā)送至監(jiān)控計(jì)算機(jī)。設(shè)計(jì)中,STC12通過在SPI_TX引腳的輸出下降沿,告知STC11啟動(dòng)模擬SPI主站功能,從STC12的SPI接口寄存器中讀取一個(gè)字節(jié)數(shù)據(jù)。
圖4為單片機(jī)采用查詢方式的程序流程圖。RI、TI分別是串口接收標(biāo)志和發(fā)送標(biāo)志。TX_FLG=0表示STC11處于接收狀態(tài),TX_FLG=1表示發(fā)送狀態(tài)。子程序SPI_BYTE實(shí)現(xiàn)模擬SPI主站功能。
在第二級(jí)環(huán)路通信中,中繼網(wǎng)關(guān)作為環(huán)路主站,由STC12單片機(jī)的串口1和串口2構(gòu)成的兩個(gè)RS-485端口實(shí)現(xiàn)。3個(gè)通信端口分別設(shè)有獨(dú)立的接收 (RX)緩沖區(qū)、發(fā)送(TX)緩沖區(qū)以及專用標(biāo)志寄存器。
實(shí)現(xiàn)環(huán)路通信主站的軟件結(jié)構(gòu)如圖5所示。正常工作時(shí),兩個(gè)串口一個(gè)作為發(fā)送方,另一個(gè)作接收方。比較接收方的接收數(shù)據(jù)與發(fā)送方的發(fā)送數(shù)據(jù),若相等則環(huán)路總線是通的;否則,總線出現(xiàn)斷路故障,用標(biāo)志位LP_BRK=1表示。
在環(huán)路總線完好的情況下,在線的燈具總是既連接在串口1上,也連接在串口2上。在環(huán)路斷線狀態(tài)下,對(duì)每個(gè)燈具,從串口2(或串口 1)發(fā)送命令,若接收到正確應(yīng)答數(shù)據(jù),則記錄該燈具連接在該端口上,用標(biāo)志位ON_COM2=1(或 ON_COM1=1)表示;若應(yīng)答信息超時(shí)或返回信息不正確,則重發(fā)相同命令數(shù)據(jù)至多3次,仍然收不到正確應(yīng)答信號(hào),則判斷該燈具沒有連接在該發(fā)送端口上,用 ON_COM2=0(或 ON_COM1=0)表示。 這樣,根據(jù)每個(gè)燈具所連接串口的不同,可以判斷環(huán)路斷線所在位置。
圖4 擴(kuò)展串口的STC11單片機(jī)流程圖
圖5 環(huán)形總線主站通信流程圖
當(dāng)環(huán)路斷開時(shí),兩個(gè)串口都作為命令發(fā)送方,整個(gè)環(huán)路分為兩個(gè)單總線結(jié)構(gòu),提高了網(wǎng)絡(luò)傳輸可靠性。
基于兩級(jí)RS485總線環(huán)形通信網(wǎng)路的應(yīng)急燈智能監(jiān)控系統(tǒng),設(shè)計(jì)了三端口通信網(wǎng)關(guān),實(shí)現(xiàn)了監(jiān)控計(jì)算機(jī)與大量智能應(yīng)急燈之間命令和狀態(tài)信息交換,監(jiān)控計(jì)算機(jī)管理整個(gè)系統(tǒng),網(wǎng)關(guān)負(fù)責(zé)傳遞發(fā)送至智能應(yīng)急燈的信息,同時(shí)也將從燈具接收到的信息反饋至監(jiān)控計(jì)算機(jī)。此外也可不通過監(jiān)控計(jì)算機(jī)直接控制該環(huán)路中的智能應(yīng)急標(biāo)志燈。經(jīng)調(diào)試,所預(yù)設(shè)功能完全實(shí)現(xiàn)。
[1]陳映雄.消防應(yīng)急燈具的技術(shù)發(fā)展趨勢(shì) [C].中國(guó)科協(xié)2005年學(xué)術(shù)年會(huì)第 24分會(huì)場(chǎng)論文集,2005:533-536.
[2]孫濤.開放式消防系統(tǒng)實(shí)現(xiàn)關(guān)鍵技術(shù)分析[J].科學(xué)技術(shù),2009,(36):156-157.
[3]趙婉芳,于京,田偉.基于Linux系統(tǒng)的VoIP語(yǔ)音接入網(wǎng)關(guān)設(shè)計(jì)與實(shí)現(xiàn)[J].電子技術(shù)應(yīng)用,2008,34(11):91-94.
[4]莊克玉,胡繼珍,張超.低壓電力無(wú)線集中抄表系統(tǒng)數(shù)據(jù) 采 集 終 端 設(shè) 計(jì)[J].微 型 機(jī) 與 應(yīng) 用 ,2009,28(9):108-110.
[5]STC12C5A60S2系列單片機(jī)器件手冊(cè)[Z].2009.
[6]鮑夢(mèng),劉智萍.51系列單片機(jī)的串口擴(kuò)展方案[J].軟件導(dǎo)刊,2008(5):135-136.