基于物联网的家居室内环境在线监控系统研究
扫描二维码
随时随地手机看文章
物联网IoT(Internet of Things)是指在物理世界的实体中部署具有一定感知能力、计算能力和执行能力的各种信息传感设备,通过网络设施实施信息传输、协同和处理,从而实现广域或更大范围的人与物、物与物之间的信息交换和互换。其目的是实现物与物、物与人、所有的物品与网络的连接,方便识别、管理和控制。物联网技术在国防、工业、城市管理、公共安全、远程医疗、智能交通、智能家居、智能电网、环境监测和绿色农业等领域拥有广阔的应用前景。在当前大力提倡节能减排、延缓全球气候变暖的新形势下,物联网适时地提供了实现“高效、节能、安全、环保”的和谐社会的“管控营一体化”基础和关键技术,因此,该技术被认为掀起了信息革命的第三次浪潮。本文在物联网的架构上,尝试以家居室内环境为场景,讨论了相关概念,给出了应用模型,分析了数据感知、处理、舒适度监测等实用性关键技术,并进行了实验,做出了探索性的结论。
1 相关研究
物联网概念最早应该是1999年由麻省理工学院研究RFID的Auto—ID中心主任ASHTON K教授提出来的。各国政府部门对物联网相关技术和产业进行了广泛的调研,制订了一系列发展计划。
2011年7月,我国科学技术部发布了《国家“十二五”科学和技术发展规划》,将物联网作为新一代信息技术纳入国家重点发展的战略性新兴产业,同时将物联网列入“新一代宽带移动无线通信网”国家科技重大专项中。但现有的研究成果主要集中在工业、交通、安防等领域,针对智能家居、厂房环境监控的室内物联网研究较少。
近年来,云计算技术的出现,允许用户通过互联网随时随地获取各类计算资源,如计算能力、存储能力、应用、服务等,给物联网发展提供了支撑;同时,人们对家居室内环境越来越关注,室内环境质量的高低直接影响到人类生活质量的高低,甚至关系着人类的生存问题。参考文献讨论了室内环境参数(温度、相对湿度、声环境和光环境)与室内环境舒适度的关系问题。
2 系统模型设计
在物联网发展的初级阶段,其标准体系结构一般为3层:感知层、网络层和应用层,但物联网产生、分析、处理和管理的数据是海量的,原始数据若要具备各种实际意义,需要可扩展的巨量计算资源予以支持。而云计算能够提供弹性、无限可扩展、价格低廉的计算和存储服务,满足物联网需求,因此本文在物联网体系结构上加入云计算,为物联网业务需求提供强大的计算能力和计算智能服务,构成改进的包含感知层、网络层、云服务层和应用层4层的家居室内环境在线监控模型,如图1所示。
感知层包括传感器等数据采集终端设备以及数据输入网关前的传感器网络,在模型中这层是基于ZigBee协议的无线传感器网络;网络层主要负责网络接入、网络传输以及相应的管理与控制,这层由互联网、远程智能监控平台和服务器集群的网络接入程序组成;云服务层主要负责存储、挖掘、分析已有数据,为应用层提供及时、可扩展、智能化的服务,保证应用层的可靠性、安全性、可扩展性,可以根据需要对海量数据提供存储、查询、分析、挖掘、理解以及基于感知数据决策和行为的基础服务;应用层解决系统需求上的信息处理与人机交互的问题,是以家居室内环境为应用场景的Web应用服务系统,监控室内环境及终端设备,可以调节、分析和预测环境状态。
3 系统平台设计
3.1 无线传感器网络
本系统中无线传感器网络硬件平台选用美国TI公司的无线通信芯片CC2530开发平台,并使用ZigBee协议栈ZStack-CC2530-2.3.0- 1.4.0和嵌入式开发集成环境(IDE)IAR Embedded Workbench进行开发并管理无线传感网络应用工程。
3.1.1 网络结构
模型中所包含的无线传感器网络部分采用基于ZigBee技术的星型拓扑结构,由主协调器和多个终端节点组成,终端节点只能与对应的主协调器进行通信,终端节点之间不能通信。星型拓扑结构具有网络结构简单、终端节点能耗较小等优势,在电池供电情况下主协调器和终端节点可以拥有更长的工作时间。
ZigBee是基于IEEE802.15.4无线标准研制开发的有关组网、安全和应用软件方面的技术标准,其特点是近距离、低复杂度、自组织、低功耗、低数据速率、低成本。美国TI公司的CC2530芯片集成了51单片机内核,其开发平台具有基于2004/2006/2007/PRO协议栈的开发模板。针对CC2530芯片的ZigBee开发平台可与IAR for MCS-51集成开发环境无缝连接,操作和连接方便。系统中主协调器负责启动整个网络,由USB接口直接供电;终端节点由自带电池供电;主协调器与远程智能监控平台通过USB直接串口连接,并通过CC2530的射频模块实现与终端设备的无线通信。
3.1.2 CC2530开发平台
TI CC2530开发平台采用Z-Stack微操作系统进行应用程序的开发。Z-Stack是由TI公司推出的业界领先的ZigBee协议栈,支持多种平台。Z-Stack包含了网状网络拓扑的几近于全功能的协议栈,采用操作系统的思想来构建,采用事件轮循机制,当各层初始化之后,系统进入低功耗模式;当事件发生时,唤醒系统,开始进入中断处理事件,结束后继续进入低功耗模式。如果同时有几个事件发生,则判断优先级,逐次处理事件。这种软件构架可以极大地降低系统功耗。整个Z-Stack的主要工作流程大致分为系统启动、驱动初始化、OSAL初始化和启动、进入任务轮循几个阶段。
在本系统中,由于传感节点少、传输距离短,选择星型网络的拓扑结构,协调器采用广播的方式发送信息,而终端节点采用单播发送方式数据。CC2530平台支持避免冲突的载波侦听多路存取(CSMA/CA)功能,在无线传感器网络启动后,主协调器处于监听状态,终端节点进行数据的发送,如果侦听信道状态空闲则传送数据包,否则等待并延时,直到信道状态空闲数据包发送成功为止。无线传感器网络中终端节点内部程序流程如图2所示。
3.2 远程智能监控平台
本系统中实现与无线传感器网络中主协调器进行通信的远程智能监控平台是Web系统。连接程序在MyEclipse2013环境下用Java编写,RXTXcomm.jar函数库支持串口通信。页面程序通过JSP实现,可以对波特率及COM端口等进行设置调整,并可以进行远程监控。该平台实现了对无线传感器网络的数据接收,并按照设置好的数据格式进行数据采集,通过Java编写的存储程序存入远程服务器的数据库。接口程序流程如图3所示。
本系统通过一个结构体对各个节点的数据包进行规范,以便于数据采集。数据包格式如表1所示。数据头使用的是“&&”字符,数据尾采用1个“&”。
例如路由节点采集温度时使用如下填充数据的方式,如表2所示。设备名称temp表示设备是温度设备;节点类型ROU表示节点是路由节点;后面紧跟路由器的网络地址;传感器数据值字段采集的是含1位小数的4位温度值。