基于ZigBee和ARM技术的火灾信息数据无线采集系统
扫描二维码
随时随地手机看文章
摘要:为解决目前火灾自动报警及其联动系统信号采集时布线困难,尤其是联动系统信号采集点分散的问题,设计了一套采用ARM处理器、传感器、ZigBee网络、无线通信等技术组成的火灾信息数据无线采集系统。该系统主要由数据采集与控制模块、ZigBee数传模块及传输设备组成。其中数据采集与控制模块负责采集火灾自动报警系统的信息,ZigBee数传模块负责将采集到的数据传送给传输设备,传输设备将接收到的数据通过电话、Internet网或无线网络远传到集中监控中心。经过连接火灾报警联动系统实验,此套系统数据采集准确及时,工作可靠稳定。
关键词:ZigBee;ARM;数据采集;火灾报警
消防联网监控系统在我国已经日益发展起来,现在许多城市已经建立起了城市消防联网监控系统,一些企业也将自己的火灾报警设备通过传输设备实现了联网,建立一个监控中心进行集中监控管理。而在实际的联网中,尤其是企业网,因为客户需要监控的信息较多,被监控的消防设备安装分散,从而产生了数据采集困难的问题。本文介绍的系统是在消防联网监控系统的基础上延伸的一套数据采集系统,将以前无法进行数据采集或很难进行数据采集的联动控制系统上的数据信息通过安装一个数据采集模块,通过短距离无线通信集中传送到传输设备上,再由传输设备将数据远传给消防监控中心。
1 系统组成
1.1 系统结构及工作原理
系统结构如图1所示。消防监控中心是由PC机、数据接收及处理软件、数据库等组成的一套监控系统,可以通过互联网、公用电话网或无线网络接收由传输设备上传的信息,这些信息包括火灾自动报警控制系统的火警、故障、消音、复位及其他联动信息。传输设备将火灾自动报警系统的信息进行采集整理,通过电话网络或者Internet网络或者GPRS网上传给消防监控中心。现场的数据采集模块通过串口或开关量采集联动设备和火灾自动报警系统的信息。
1.2 消防监控中心及传输设备
目前,在国内已经有很多城市建立起了城市远程消防联网监控系统,此系统常年实时监控城市中联网用户火灾自动报警设备的运行状况及人员值班情况。系统中的联网用户通过传输设备可以快速、准确地将火灾自动报警设备的火警、运行状态、人员值班情况等信息通过传输网络传送至消防监控中心,中心根据掌握的详细的火警信息、GIS地理信息、现场视频图像信息及灭火预案为消防部门快速反应提供辅助决策,达到早期发现火警,及时报警,快速灭火的目的,并根据上传的消防设施运行信息为公安消防部门提供联网用户消防设施运行状态信息,从而实现对联网用户消防设施及值班人员的双重管理,保障消防设施的正常运行。
1.3 ZigBee无线网络
ZigBee通信技术的前身是“HomeRFlite”技术,其核心协议由IEEE 802.15.4工作组制定,高层应用、互联互通测试及市场推广由Zig Bee联盟负责。ZigBee具有低成本、低功耗、双向传输、感应网络功能等特点。ZigBee作为一种无线连接,可工作在2.4 GHz,868 MHz和915 MHz三个频段上。通过近几年来的发展,通信距离由当初的几十米到现在的几百米乃至上千米。而在安全方面,ZigBee提供了完善的认证及加密技术,认证技术能有效阻止攻击者修改一个设备来模仿另外一个设备对系统网络的攻击;同时,ZigBee使用128位AES加密算法,这种加密保护可应用在网络层和设备层上。正是由于ZigBee技术所具有的低功耗、低成本、高容量、高安全及免执照频段使用等特点,使其在PC外设(鼠标、键盘、游戏操控杆)、消费类电子设备(TV,VCR,CD,VCD,DVD等设备上的遥控装置)、家庭内智能控制(照明、煤气计量控制及报警等)、玩具(电子宠物)、医护(监视器和传感器)、工控(监视器、传感器和自动控制设备)等领域的使用具有相当大的优势。
1.4 数据采集模块
数据采集模块设计有1路串口(RS 232,RS 485可选)、8路模拟量、4路开关量(2路有源和2路无源)及4路开关量输出,其结构如图2所示。丰富的数据采集端口基本包括了火灾自动报警控制系统及其联动系统的数据输出端口,保证了模块的适用性,同时,4路继电器输出型开关量能通过监控中心进行开关与闭合的控制,能给一些需要远程控制的设备提供开关与闭合的控制信号。
数据采集模块的主控芯片采用NXP的LPC2132,LPC2132是一款ARM7系列的CPU,具有多个32位定时器、1个10位8路的ADC、10位DAC、PWM通道、47个GPIO以及多达9个边沿或电平触发的外部中断,特别适用于工控系统。ZigBee无线通信芯片采用美国CEL公司的MeshConnect模块集成CPU的单片ZigBee芯片,它遵从ZigBee规范和IEEE 802.15.4标准,由一个含有基带modem的射频收发器、硬连线的MAC和内嵌8051内核的微控制器(带有内部FLASH存储器)组成,它内建ZigBee协议栈,通过串口与LPC2132进行数据通信。模块的高度集成极大地简化了设计、降低了功耗,节约了整个系统的成本。
硬件编程采用C语言,程序流程图如图3所示。数据采集模块分别采集连接到串口、模拟量口及开关量端口的数据,由主控芯片对采集到的数据进行转换封装,由ZigBee网络传送给传输设备。传输设备与数据采集模块之间的通信协议采用“一主多从”方式,传输设备作为主机巡检各个控制模块,每个模块有惟一的ID号,只有接收到与自己ID号一致的巡检命令才执行数据上传或动作,这样能有效地提高通信的可靠性。
LPC2132包含一个带8路输入的10位逐次逼近型模数转换器,测量范围为0~3.3 V,每秒可执行400 000次10位采样。所以可采集的模拟量类型可以是电压信号,也可以是电流LPC信号,电流型/电压型可通过图4电路转换输入给2132的AD管脚。
图4中,S1和S2为跳线,通过跳线帽同时短路1,2或者2,3来实现电压与电流输入的切换,同时短路1,2时是电流输入,输入范围为0~20 mA,同时短路2,3时是电压输入,输入范围为0~5 V。其中ADIN1为外部模拟量输入,AD1为LPC2132模拟量输入管脚。此外,可通过改变R4电阻值来改变电流的输入范围,还可以通过改变R3和R5电阻值来改变电压的输入范围。
2 主要功能函数
2.1 主要功能函数
主要功能函数如下:
函数说明如下:
Init_All():初始化变量,配置ARM内部寄存器;
Read_Config():从24C256中读取设置参数;
Deal_Data_Uart0():处理与ZigBee模块接口数据,将采集到的数据按协议封装好后发给传输设备;
Deal_Data_Uartl():采集数据,并将数据整理暂存;
Check_In():采集开关量数据;
Updata_Ad(8):采集更新模拟量数据;
Updata_Respon():更新需要应答上位机巡检的数据。
2.2 ADC初始化及A/D数值读取
ADC初始化及A/D数值读取如下:
初始化A/D管脚连接到通道0,转化时钟为1 MHz,工作于正常模式。
此函数实现A/D寄存器中数值的读取并计算实际电压值,存放到ad_data数组中,参数channel_num是需要转换的通道数。
2.3 串口信息处理
串口信息处理如下:
串口1中断服务,将接收到的火灾报警控制器数据放入到rXd_uartl数组中,在主函数中通过调用Deal_Data_Uartl()函数对采集到的数据进行整理暂存,以便发送给传输设备。
3 结语
本系统采用短距离无线技术及远程联网监控技术,实现了对火灾报警控制系统及联动系统的数据采集与远传,为消防联网监控系统的数据采集提供了一种新的思路和方法。