基于ZigBee和ARM技术的火灾信息数据无线采集系统

发布者:小悟空111最新更新时间:2012-03-17 来源: 单片机与嵌入式系统 关键字:ZigBee  ARM  数据采集  火灾报警 手机看文章 扫描二维码
随时随地手机看文章
    消防联网监控系统在我国已经日益发展起来,现在许多城市已经建立起了城市消防联网监控系统,一些企业也将自己的火灾报警设备通过传输设备实现了联网,建立一个监控中心进行集中监控管理。而在实际的联网中,尤其是企业网,因为客户需要监控的信息较多,被监控的消防设备安装分散,从而产生了数据采集困难的问题。本文介绍的系统是在消防联网监控系统的基础上延伸的一套数据采集系统,将以前无法进行数据采集或很难进行数据采集的联动控制系统上的数据信息通过安装一个数据采集模块,通过短距离无线通信集中传送到传输设备上,再由传输设备将数据远传给消防监控中心。

1 系统组成
1.1 系统结构及工作原理
    系统结构如图1所示。消防监控中心是由PC机、数据接收及处理软件、数据库等组成的一套监控系统,可以通过互联网、公用电话网或无线网络接收由传输设备上传的信息,这些信息包括火灾自动报警控制系统的火警、故障、消音、复位及其他联动信息。传输设备将火灾自动报警系统的信息进行采集整理,通过电话网络或者Internet网络或者GPRS网上传给消防监控中心。现场的数据采集模块通过串口或开关量采集联动设备和火灾自动报警系统的信息。

a.jpg


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路继电器输出型开关量能通过监控中心进行开关与闭合的控制,能给一些需要远程控制的设备提供开关与闭合的控制信号。

b.jpg


    数据采集模块的主控芯片采用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进行数据通信。模块的高度集成极大地简化了设计、降低了功耗,节约了整个系统的成本。

[page]

    硬件编程采用C语言,程序流程图如图3所示。数据采集模块分别采集连接到串口、模拟量口及开关量端口的数据,由主控芯片对采集到的数据进行转换封装,由ZigBee网络传送给传输设备。传输设备与数据采集模块之间的通信协议采用“一主多从”方式,传输设备作为主机巡检各个控制模块,每个模块有惟一的ID号,只有接收到与自己ID号一致的巡检命令才执行数据上传或动作,这样能有效地提高通信的可靠性。

c.jpg


    LPC2132包含一个带8路输入的10位逐次逼近型模数转换器,测量范围为0~3.3 V,每秒可执行400 000次10位采样。所以可采集的模拟量类型可以是电压信号,也可以是电流LPC信号,电流型/电压型可通过图4电路转换输入给2132的AD管脚。

d.jpg


    图4中,S1和S2为跳线,通过跳线帽同时短路1,2或者2,3来实现电压与电流输入的切换,同时短路1,2时是电流输入,输入范围为0~20 mA,同时短路2,3时是电压输入,输入范围为0~5 V。其中ADIN1为外部模拟量输入,AD1为LPC2132模拟量输入管脚。此外,可通过改变R4电阻值来改变电流的输入范围,还可以通过改变R3和R5电阻值来改变电压的输入范围。

[page]

2 主要功能函数
2.1 主要功能函数
    主要功能函数如下:
    e.jpg
    函数说明如下:
    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数值读取如下:
    f.jpg
    初始化A/D管脚连接到通道0,转化时钟为1 MHz,工作于正常模式。
    g.jpg
    此函数实现A/D寄存器中数值的读取并计算实际电压值,存放到ad_data数组中,参数channel_num是需要转换的通道数。
2.3 串口信息处理
    串口信息处理如下:
    h.jpg
    串口1中断服务,将接收到的火灾报警控制器数据放入到rXd_uartl数组中,在主函数中通过调用Deal_Data_Uartl()函数对采集到的数据进行整理暂存,以便发送给传输设备。

3 结语
    本系统采用短距离无线技术及远程联网监控技术,实现了对火灾报警控制系统及联动系统的数据采集与远传,为消防联网监控系统的数据采集提供了一种新的思路和方法。

关键字:ZigBee  ARM  数据采集  火灾报警 引用地址:基于ZigBee和ARM技术的火灾信息数据无线采集系统

上一篇:基于DSP+ARM构架的嵌入式电能质量监测装置的解决方案
下一篇:基于ARM9的电力负控终端系统的设计

推荐阅读最新更新时间:2024-03-16 12:55

ARM CPU上广泛采用的三种嵌入式操作系统浅析
嵌入式操作系统是ARMCPU的软件基础,从8位/16位单片机发展到以ARMCPU核为代表的32位嵌入式处理器,嵌入式操作系统将替代传统的由手工编制的监控程序或调度程序,成为重要的基础组件。更重要的是嵌入式操作系统对应用程序可以起到屏蔽的作用,使应用程序员面向操作系统级开发应用软件,并易于在不同的ARM核的嵌入式处理器上移植。 嵌入式操作系统都具有一定的实时性,易于裁剪和伸缩,可以适合于从ARM7到Xscale各种ARMCPU和各种档次的应用,嵌入式操作系统可以使用广泛流行的ARM开发工具,如ARM公司的SDT/ADS和RealView等,也可以使用开发软件,如GCC/GDB、KDE或Eclipe开发环境,市场上还有专用的开发工
[单片机]
在<font color='red'>ARM</font> CPU上广泛采用的三种嵌入式操作系统浅析
IOT数据采集有什么作用?云维保为你解答
随着新一代科学技术的迅速发展,越来越多的企业意识到数据采集的重要性,但如何使用这些数据,企业自身也缺乏经验,一些数采供应商也说不清,于是数据采集工作陷入困境,停滞不前。 当不明白数据采集的作用时,千万不能有能采多采的想法。数采是为了数字化,数字化是为了转型,只有明白转型要转什么、采集的数据会给管理带来什么改变,才能理解采集数据如何发挥作用。本文将介绍云维保Mbox设备听诊的数据采集技术,并讲述传统工厂各管理层在数据处理上的痛点,与数据采集的应用能给管理层带来什么变化。 云维保Mbox设备听诊是一个独立的智能系统,可以把信息的获取、处理和执行集成在一起,通过无线通信网络将设备运行数据传送到平台,结合云维保工厂维保SaaS服务
[工业控制]
ARM汇编指令集5
为什么需要多寄存器访问指令? ldr/str每周期只能访问4字节内存,如果需要批量读取、写入内存时太慢,解决方案是stm/ld 举例(uboot start.S 537行) stmia sp, {r0 - r12} 将r0存入sp指向的内存处(假设为0x30001000);然后地址+4(即指向0x30001004),将r1存入该地址;然后地址再+4(指向 0x30001008),将 r2存入该地址······直到r12内容放入(0x3000130),指令完成。 一个访存周期同时完成13个寄存器的读写 8种后缀
[单片机]
全站仪数据采集的操作步骤详解
  随着电子测距技术的出现,大大地推动了速测仪的发展。用电磁波测距仪代替光学视距经纬仪,使得测程更大、测量时间更短、精度更高。人们将距离由电磁波测距仪测定的速测仪笼统地称之为“电子速测仪”(Electronic Tachymeter)。然而,随着电子测角技术的出现。这一“电子速测仪”的概念又相应地发生了变化,根据测角方法的不同分为半站型电子速测仪和全站型电子速测仪。半站型电子速测仪是指用光学方法测角的电子速测仪,也有称之为“测距经纬仪”。   这种速测仪出现较早,并且进行了不断的改进,可将光学角度读数通过键盘输入到测距仪,对斜距进行化算,最后得出平距、高差、方向角和坐标差,这些结果都可自动地传输到外部存储器中。全站型电子速测仪
[测试测量]
全站仪<font color='red'>数据采集</font>的操作步骤详解
基于ARM的嵌入式文件系统YAFFS的移植
1引言 目前,嵌入式系统大多采用用JAFFS和YAFFS文件系统,但JAFFS文件系统主要用于NOR FLASH,由于NOR FLASH 内部结构的局限性,只适合于小容量的存储,并且NOR FLASH读写速度慢,不能满足系统实时性的需要,在我的测试过程中,在NAND FLASH上挂载的JFFS2文件系统很不稳定,经常有CRC错误产生。特别是进行写操作的时候,每次复位都会产生CRC错误,可以说支持NAND FLASH的 JFFS2文件系统目前还不成熟。YAFFS(Yet Another Flash File System)类似于JFFS/JFFS2,是专门为 NAND闪存设计的嵌入式文件系统,适用于大容量的存储设备.YAFFS内部
[单片机]
基于ARM-Linux和CDMA的远程视频监控系统
0 引言   CDMA(码分多址)无线网络具有覆盖面广,高效、低成本的特点,CDMA网络的数据传输速率可达200kb/s,这里开发的 嵌入式 远程视频监控系统就是充分利用CDMA无线网络技术和 嵌入式 系统的特点而搭建的数据传输系统,特别适合边远偏僻或不具备常规网络传输条件的地方使用,例如车载视频监控系统、交通路口(车牌实时监视)及城市路灯的监控等。 1 嵌入式 Linux系统    嵌入式 系统是以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应对功能、可靠性、成本、体积、功耗要求严格的专用计算机系统,目前 嵌入式 系统已经无处不在,从汽车、家用微波炉、PDA(个人数字助理)、电视机、到工控生产现场、通信、仪器、
[安防电子]
基于<font color='red'>ARM</font>-Linux和CDMA的远程视频监控系统
虹科方案 | 汽车CAN/LIN总线数据采集解决方案
一、汽车总线数据采集 1. 什么是汽车总线数据采集? 汽车总线数据采集是指从汽车的各种电子控制单元和传感器中获取数据,这些数据可以用于监测、分析和控制车辆的各种系统和功能。 在现代汽车中,使用了许多不同类型的传感器和控制器,用于监测和控制引擎、传输、底盘、安全系统等各个方面,这些传感器和控制器之间通过总线系统进行数据交换,而汽车总线数据采集就是从这些总线中获取信息。 2. 整车数据采集与测试的重要性? 整车数据采集与测试是汽车制造业的核心环节之一。 ● 确保车辆的运行性能:车辆制造商和研发团队需要全面了解车辆在不同工况下的运行状态,从而确保车辆的质量、安全和性能。 ● 检测与验证汽车子系统:在整车开发过程中,需要对车辆的各个子系统
[嵌入式]
虹科方案 | 汽车CAN/LIN总线<font color='red'>数据采集</font>解决方案
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
  • ARM裸机篇--按键中断
    先看看GPOI的输入实验:按键电路图:GPF1管教的功能:EINT1要使用GPF1作为EINT1的功能时,只要将GPFCON的3:2位配置成10就可以了!GPF1先配 ...
  • 网上下的--ARM入门笔记
    简单的介绍打今天起菜鸟的ARM笔记算是开张了,也算给我的这些笔记找个存的地方。为什么要发布出来?也许是大家感兴趣的,其实这些笔记之所 ...
  • 学习ARM开发(23)
    三个任务准备与运行结果下来看看创建任务和任运的栈空间怎么样的,以及运行输出。Made in china by UCSDN(caijunsheng)Lichee 1 0 0 ...
  • 学习ARM开发(22)
    关闭中断与打开中断中断是一种高效的对话机制,但有时并不想程序运行的过程中中断运行,比如正在打印东西,但程序突然中断了,又让另外一个 ...
  • 学习ARM开发(21)
    先要声明任务指针,因为后面需要使用。 任务指针 volatile TASK_TCB* volatile g_pCurrentTask = NULL;volatile TASK_TCB* vol ...
  • 学习ARM开发(20)
  • 学习ARM开发(19)
  • 学习ARM开发(14)
  • 学习ARM开发(15)
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved