胡鵬, 殳國華
(上海交通大學(xué) 電子信息與電氣工程學(xué)院,上海 200240)
隨著我國大型公共建筑和擴建項目不斷增加,對消防設(shè)備的安全性、穩(wěn)定性、兼容性及實時性的要求也越來越高[1]。目前市面上大多為單一的消防電源監(jiān)控系統(tǒng),其目的是對檢測消防設(shè)備在緊急情況下能否正常工作進行數(shù)據(jù)采集,對于故障進行報警,并將數(shù)據(jù)進行匯總提供給用戶,方便日常維護。但由于缺乏市場的考驗,仍然在監(jiān)控精準性、系統(tǒng)通信穩(wěn)定[2]以及價格等方面存在問題。
針對以上問題,本系統(tǒng)在電源監(jiān)控設(shè)備的基礎(chǔ)上面做出改進:以STM32F103VCT6為核心控制器,基于ARM-Cortex M3的內(nèi)核相比其他芯片開發(fā)周期短,具有豐富的接口;基于ARM單片機的嵌入式系統(tǒng)在實時性上有很大的靈活性和擴展性,便于后期軟件維護[3-4],其內(nèi)部高性能的ADC模塊能提高監(jiān)控精準性;RS485總線替代以往的二總線,保證系統(tǒng)通信的穩(wěn)定性;使用串行輸入,并行輸出控制的方式節(jié)省硬件成本;在功能方面增加聯(lián)動控制功能,能根據(jù)各種聯(lián)動信號做出不同的響應(yīng)動作,減少消防事故的發(fā)生。該設(shè)計也為物聯(lián)網(wǎng)在消防設(shè)備的應(yīng)用提供了思路,具有更加廣闊的應(yīng)用前景。
基于STM32的消防聯(lián)動控制設(shè)備的總體方案采用分塊化功能設(shè)計如圖1所示。消防聯(lián)動控制設(shè)備由電源轉(zhuǎn)換電路、STM32主控電路、ADC(analog-to-digital converter)電路、LCD(liquid crystal display)、TM1659驅(qū)動電路、聯(lián)動控制信號輸入電路、繼電器輸出電路以及RS485通信等功能電路組成。STM32對設(shè)備聯(lián)動輸入信號和按鍵信號做出相應(yīng)的邏輯響應(yīng)動作,并對輸入電源信號進行監(jiān)控,將采樣值實時顯示至LCD顯示屏,通過串口總線傳
送至上位機,一旦發(fā)生聯(lián)動報警或電源故障報警,能及時有效地做出報警動作。
利用線性光耦元件PC817對聯(lián)動輸入信號和STM32內(nèi)部I/O口進行隔離,提高系統(tǒng)的抗干擾性和安全性,其電路設(shè)計如圖3所示。
圖3中,R1=3.3 kΩ為限流電阻,當聯(lián)動輸入信號接通時,光耦器件工作,右側(cè)I/O口為高電平;反之則為低電平。
2.3.1 TM1639驅(qū)動控制電路
TM1639芯片是帶鍵盤掃描接口的LED驅(qū)動控制專用電路,由于其穩(wěn)定性好、抗干擾能力強、成本較低,內(nèi)部集成的串行接口與MCU相連,多用來驅(qū)動多位LED和鍵盤掃描,以減少外圍電路硬件成本,軟件開銷也相對較小,其設(shè)計思路如圖4所示。由于TM1639標準工作電平為5 V,與STM32的工作電壓3.3 V無法兼容,因此中間需增加一級電平轉(zhuǎn)換電路,其中Q1為MOSFET場效應(yīng)管,R1=R2=10 kΩ,當L=0 V時,Q1導(dǎo)通,H=0 V;當L=3.3 V時,Q1截至,H=5 V,從而實現(xiàn)了電平的高低轉(zhuǎn)換。D1為肖特基二極管,連接至Q1的漏極(D)和源極(S)之間,由于Q1工作頻率很高,電路會產(chǎn)生很大的瞬間反向電流,此時需通過D1導(dǎo)出;同時D1亦可防止D、S極之間的電壓過高擊穿MOS管。
2.3.2 DS1302時鐘驅(qū)動電路
DS1302是由美國DALLAS公司推出的具有涓細電流充電能力的低功耗實時時鐘芯片,其與CPU連接的電路設(shè)計如圖5所示,其中:Vcc1由系統(tǒng)供電,Vcc2由紐扣電池供電,保證系統(tǒng)斷電的情況下時鐘還能繼續(xù)運行,晶振為32.768 2 kHz。
74HC595D是一個8位串行輸入、并行輸出的位移寄存器,具有移位時鐘頻率高、具備標準串行(serial peripheral interface, SPI)接口且能用于多個設(shè)備的級聯(lián)的特點被得到廣泛應(yīng)用。但是由于輸出電流較小不具備驅(qū)動繼電器的能力,因此后級電路會需串聯(lián)大電流驅(qū)動電路。ULN2003為高耐壓、大電流復(fù)合晶體管陣列,內(nèi)部由七對達林頓管串聯(lián)2.7 kΩ的基級電阻,最大輸出電流可達500 mA,一般用于高速大功率的驅(qū)動電路。
繼電器輸出電路設(shè)計如圖6所示。由STM32的三個I/O口控制兩個74HC595D芯片組成的級聯(lián)電路(第一個74HC595D的SQH口連接至第二個DATA端口作為輸入,若需更多級,依此類推即可),圖中R1=R2=R3=10 kΩ為上拉電阻,其目的為提高芯片傳輸信號的噪聲容限,增強抗干擾能力;14組繼電器輸由后一級電路ULN2003組成的電路來驅(qū)動,簡化了電路設(shè)計,降低了硬件成本。
采用HJ12864圖形液晶點陣實時顯示三相交流電源有效值和時鐘信息,其工作電壓為3.3 V或者5.0 V,采用8位并行通信口,128×64點陣顯示取模,正常工作模式下電流1 mA。用來顯示三相電壓實時測量值和時間以及設(shè)置報警參考值。
采用MAX485芯片作為RS485通信的低功耗收發(fā)器,使用Modbus_RTU協(xié)議與上位機實現(xiàn)通信交互[6],可以實現(xiàn)最高2.5 Mbps的傳輸速率,電路設(shè)計如圖7所示,其中:R1=1 kΩ,消除了長距離傳輸時信號由于阻抗不匹配引起的反射現(xiàn)象,保證信號的穩(wěn)定性;同時亦可有效地抑制干擾。GPIO為接收或發(fā)送功能使能引腳,低電平接收,高電平發(fā)送,默認為低電平接收狀態(tài)。
交流24 V輸入,經(jīng)過整流橋整流,穩(wěn)壓管LM317穩(wěn)壓,再由DC/DC轉(zhuǎn)換成5 V電壓,最后再分別由LDO轉(zhuǎn)換成3.3 V和1.5 V,設(shè)計思路如圖8所示。LDO(low dropout regulator)是一種微功耗的低壓線性穩(wěn)壓器,它具有極低的自由噪聲和較高的電源抑制比PSRR(power supply rejection ratio),能有效降低電源紋波,增強系統(tǒng)的穩(wěn)定性。
基于keil軟件開放平臺,設(shè)計了控制系統(tǒng)的C語言代碼。系統(tǒng)上電完成初始化,首先判定電源是否發(fā)生故障,再依次檢測上位機指令是否到達、按鍵動作以及聯(lián)動輸入信號,并根據(jù)相應(yīng)的狀態(tài)完成對應(yīng)的邏輯響應(yīng)動作,軟件流程如設(shè)計圖9所示。
基于STM32的消防聯(lián)動控制電路試驗板如圖10所示。
設(shè)置電源閾值上限為標準電壓的115%(253 V),下限為標準值的75%(165 V),調(diào)節(jié)測量電壓分別至欠壓、標準和過壓,進行3次試驗,試驗測試數(shù)據(jù)如表1所示。
表1 不同模型的預(yù)測誤差比較
表1 交流電壓檢測試驗
表2 上位機指令
表3為單片機應(yīng)答指令,數(shù)據(jù)1表示單片機電壓報警,數(shù)據(jù)3、4、5分別表示A、B、C三相測量實際值為256 V、272 V、288 V。試驗結(jié)果表明,隨著測量電壓的改變,系統(tǒng)可以及時有效地做出相應(yīng)的預(yù)警和響應(yīng)動作。
表3 單片機應(yīng)答信息
基于STM32的消防聯(lián)動控制裝置,與目前市面應(yīng)用的相關(guān)設(shè)備相比具有如下優(yōu)點:①采用STM32內(nèi)部高性能的ADC采樣模塊,采樣精確度高,反應(yīng)速度快;②采用RS485半雙工總線,取代以往的二總線,傳輸距離更遠、速度更快和抗干擾能力更強;③整體具有更加高效和穩(wěn)定的預(yù)警系統(tǒng),一旦發(fā)生報警,能及時有效地對其進行監(jiān)控及預(yù)警?;贏RM的嵌入式系統(tǒng)設(shè)計具有更好的移植性和可拓展性及穩(wěn)定性,更方便后期維護。