面向环境监测的定向感知无线多媒体传感器网络设计
2018-07-27吴蓬勃王贺珍张志平
吴蓬勃, 王贺珍, 张志平
(石家庄邮电职业技术学院, 电信工程系, 石家庄 050021)
0 引 言
无线传感器网络(Wireless Sensor Network, WSN)深刻地改变了人类与自然的交互方式[1-3],并广泛应用于军事、工业、医疗、环境监测等诸多领域[4,5]。随着人们对物理世界认识的加深和环境日趋复杂,传统WSN节点所获取的简单数据已经无法满足人们实现全面环境监测的需求,迫切需要将图像、音频等媒体信息引入到无线传感器网络中来,实现更精准、细微的监测,无线多媒体传感器网络(Wireless Multimedia Sensor Networks,WMSN)由此应运而生[6]。
相对WSN而言,多媒体信息的引入使WMSN的数据处理速度、网络存储容量、网络传输、能量供应等方面显著增强,可完成传统WSN无法实现的复杂任务[7-8],满足人们对环境监测的多样化需求。基于ZigBee网络,将串口摄像头模块采集的图像数据通过ZigBee节点发送到协调器,协调器再通过串口上传到PC机[9]。经实验研究证实,节点电量大小、图像传输距离、图像数据多跳数量都会影响图像的传输质量[9];由于其在整个过程中均采用串口进行数据传输,使得其传输的单帧图像分辨率较低。文献[9]的研究结果也证实了,基于ZigBee网络进行非压缩图像的传输是不可靠、不实用的。文献[10-11]中对无线传感器网络中的图像压缩技术进行了深入的研究,经其证实,无线多媒体图像感知节点的能量消耗中,图像压缩所占比例最高[11]。因此,提出的多点协同分布式图像压缩算法,基于多媒体图像感知节点的多个邻节点,实现分布式图像压缩,经过仿真实验证实,确实可以平衡网络节点的能耗,延长网络生命周期[10-11]。但该分布式图像压缩算法要求图像采集节点必须有足够的邻节点,而且距离要近。然而,实际的工作环境往往千变万化,图像节点附近不一定有足够的节点来实现分布式编码,而且这些节点的性能不一定能够满足图像编码的要求。此外,目前绝大部分的无线传感器网络节点,为了保证低功耗、低成本,普遍计算能力较弱.文献[12]中为降低系统功耗、满足图像采集需要,专门设计的无线图像采集专用MSENS SoC采用了8051内核[12]。
综上,现有的ZigBee网络不适合实现多媒体信息的可靠有效传输。而WiFi(802.11)拥有很高的网络吞吐能力,可以提供高品质的视频图像质量和较好的通信实时性;但其组网能力低,扩展空间受限,不易实现大范围的信号覆盖。其特性正好与ZigBee网络的“自组织网络结构、覆盖范围广、功耗低、网络带宽有限”的特性相互补。
因此,本系统基于WiFi和ZigBee协议,设计了可连接WiFi和ZigBee网络的多媒体感知节点和可连接ZigBee网络的普通感知节点,构建基于混合通信协议的WMSN进行环境监测。另外,传统多媒体感知节点多为固定方位感知,无法对热点区域进行动态感知。为此,本文设计了一种多媒体感知节点与普通节点联动机制,当某个普通感知节点区域出现异常情况时,多媒体感知节点可自动调整感知方向,从而对异常区域现场环境实现更加丰富的感知。
1 WMSN系统整体方案
WMSN系统框架如图1所示。基于以太网、无线路由器、无线网桥,在需进行环境监测的骨干网络区域构建WiFi覆盖。同时,在监测区域构建ZigBee无线传感网,实现对温度、湿度等标量数据的采集。然后,根据环境监测需要,选择部分ZigBee网络中能量供应充足的路由器和协调器,增加图像、语音采集功能,其所采集的多媒体数据和附近普通感知节点上传的标量数据,一起经过WiFi网络上传到服务器。对多媒体数据是否开启采集,以及采集的频率,可由服务器设置,也可设置为由普通感知节点触发,在实现关键信息采集的同时,降低网络数据传输负担、降低系统功耗。
图1 WMSN系统架构图
2 WMSN节点硬件设计
WMSN系统的节点主要包括两种:基于ZigBee网络的普通无线感知节点、基于WiFi+ZigBee网络的多媒体无线感知节点。
2.1 普通无线感知节点
普通无线感知节点用于标量信息的周期性采集和上报,这里的标量(即:只有大小没有方向的量)信息指环境温度、湿度、烟雾、人体探测值等点式数据信息,此种信息数据量小、数据传输速率低[13]。所以,更适合采用传统的WSN网络实现。
本系统中采用CC2530+Sensor的方案实现标量数据的采集。其中,对需要多媒体节点进行定向监测的普通感知节点,需要安装GPS模块。当普通感知节点检测到异常时,通过ZigBee网络传送自身GPS经纬度到附近多媒体感知节点,多媒体感知节点调整云台状态,实现对异常区域的多媒体信息采集。
2.2 多媒体无线感知节点
多媒体无线感知节点结构,如图2所示。该节点主要包括:由CMOS Camera MT9D111、语音采集与播放模块、WiFi MCU CC3200 构成的多媒体信息采集与传输部分;由ZigBee MCU CC2530构成的无线传感器网络数据采集传输部分;由GPS模块、6轴姿态传感器MPU6050、舵机构成的定向感知控制部分;由电源管理单元、可充电电池、太阳能板构成的系统电源保障部分。本部分重点对多媒体信息采集与传输部分做详细介绍。
CC3200为TI公司面向物联网应用推出的一款无线MCU,其内部集成了WiFi网络处理器和运行频率为80 MHz的Cortex-M4内核,并具有快速并行摄像头接口、音频I2S、UART等多种外设[14]。CC3200支持基站STA、访问点AP和WiFi直连模式,内置TCP/IP、HTTP等多种网络协议[14]。CC3200部分电路图如图3所示,CC3200的程序运行在外部串行Flash中,采用40 MHz外部晶振做主时钟,32.768 kHz外部晶振做实时时钟。在本系统中,CC3200主要实现图像、音频数据采集与播放和WiFi数据传输的功能。
图2 多媒体无线感知节点
图像采集部分采用的是1/3.2英寸200万像素CMOS摄像头MT9D111。MT9D111可选择输出ITU-R BT.601(YCbCr)、565RGB、JPEG4:2:2、JPEG4:2:0和10bit Raw等多种格式的图像数据。CC3200通过并行摄像头接口与MT9D111连接,实现图像快速采集。其电路原理图如图4所示。
音频采集与播放部分,通过采用内嵌可编程 miniDSP 的超低功耗立体声音频编解码器TLV320AIC3254实现音频采集编码和音频解码,通过MIC进行语音采集,耳机接口可连接外部功放,其电路原理图如图5所示。
3 WMSN系统软件设计
WMSN系统软件部分,主要包括:普通感知节点、多媒体感知节点和服务器端的软件设计。普通感知节点为传统标量数据采集,在此不再熬述。本部分重点对多媒体感知节点和服务器端管理软件部分进行详细介绍。
图4 多媒体感知节点——图像采集电路图
3.1 多媒体感知节点软件设计
3.1.1图像的采集与传输
图像采集与传输部分,基于CC3200的8位并行Camera接口和CMOS摄像头MT9D111进行图像采集,使用WiFi进行图像传输。具体工作流程(见图6)包括:
(1) 配置CC3200的中断向量表、时钟和DMA,配置DMA 为ping-pong模式,以提高图像采集效率。
(2) 配置CC3200的I2C接口和8位并行Camera接口;其中CC3200通过I2C接口对CMOS摄像头MT9D111的寄存器进行配置,包括:图像尺寸、工作频率、帧率、JPEG压缩率;对8位并行Camera接口的配置包括:时钟配置、行场时钟极性配置等。
(3) 配置CC3200为WiFi Station模式,启动网络服务,连接到路由器,与服务器创建TCP连接。
(4) 当捕获到一帧图像后,为其创建JFIF格式JPEG头。CC3200基于TCP连接将JPEG格式的图像发送到服务器。同时CC3200通过串口接收ZigBee网络的传感器数据,将这些数据打包后发送到服务器。
图6 CC3200图像采集与传输工作流程
3.1.2音频采集播放与传输
音频采集播放与传输部分的工作流程图,如图7所示。首先,初始化CC3200的I2C接口,为语音采集与播放创建环形缓冲区,用于临时存储语音数据。然后,通过I2C接口对音频编解码芯片TLV320AIC3254进行参数配置,其中包括:设置立体声、16位、16 kHz采样率、设置录音和放音音量等参数的配置。然后,初始化CC3200的I2S语音传输接口;初始化DMA,并通过DMA建立I2S接口与环形缓冲区之间的连接。由于语音采集播放涉及到了多个实时的任务,所以此部分使用了TI的实时操作系统TI-RTOS,共计创建了网络连接、语音播放、语音采集等3个任务,主要实现:启动网络服务并连接到路由器、与服务器创建UDP连接、接收UDP数据进行语音播放、语音的采集和UDP上传几项功能[16]。
图7 CC3200语音采集播放与传输工作流程
3.1.3定向感知功能设计
本部分主要实现多媒体感知节点对附近异常告警节点的动态定向监测。当多媒体节点附近有节点出现异常告警时,异常节点会向多媒体节点发送告警信息和自身GPS经纬度。多媒体节点通过6轴姿态传感器MPU6050获取自身方位角,通过将自身GPS经纬度与异常节点GPS经纬度的对比,判定云台应该旋转的角度,控制舵机动作,使得多媒体节点能够采集到异常节点的图像信息,从而实现对异常区域的动态定向感知。
在此需要说明,GPS经纬度对应的是地理坐标,配合电子罗盘使用是最合适的。但是,在实际使用中电子罗盘会受到舵机等设备的磁场干扰,出现较大误差,而且各地的地磁偏角又有所不同,这些都可能导致系统可靠性降低。所以本系统选择了姿态传感器进行自身方位角感知。MPU6050本身输出的是载体坐标系,所以需要将MPU6050的坐标系转化为东-北-天坐标系,以便与GPS经纬度坐标系一致。
现建立坐标系,如图8所示,中间灰色矩形为多媒体感知节点盒子,盒子中间安装有姿态传感器,盒子右侧的箭头为摄像头安装位置,灰色扇形区域为摄像头视觉区域,盒子竖向中心线与北纬纬度重合,横向中心线与东经经度线重合。由于进行舵机旋转角度运算的是具有8051内核的CC2530,进行三角函数运算会增加系统负担。所以,本系统结合摄像头视域为扇形的特点,将盒子周围360°区域分成8个区域,每个区域为45°,盒子下面270°云台舵机处于中间位置(舵机角度135°)。通过运算,控制舵机上面的摄像头旋转到异常节点所在区域即可采集到图像信息。
图8 图像采集区域划分(盒子与N纬度轴重合)
以盒子上面的GPS模块经纬度为原点,通过异常节点GPS经纬度与盒子自身GPS经纬度差值作为位置区域判断依据。计算摄像头当前所在区域和目标区域的夹角,即可得到舵机云台需要旋转的角度。而实际的安装过程中,盒子竖向中心线不一定和北纬纬度线重合,会存在一定的夹角,如图9中所示夹角NA。所以在计算舵机旋转角度时,需将夹角NA考虑进去。
图9 图像采集区域划分 (盒子从N纬度轴逆时针旋转NA角)
由于于舵机旋转角度限制(最大270°),摄像头的观察范围存在约45°的视觉盲区,此问题可通过选择360°的舵机得到解决。但考虑到实际环境监测中,多媒体节点一般固定安装在建筑物或植物上,节点后侧45°区域是被遮挡的区域,所以本系统仍然采用了270°舵机。
3.2 服务端管理软件设计
为增加移动性,本系统的服务端管理软件基于Android系统,在PAD上运行。PAD与多媒体感知节点通过路由器建立WiFi连接;基于TCP协议实现图像传输和显示;基于UDP协议实现语音采集传输和播放;同时基于TCP协议实现ZigBee网络数据的接收和显示。此外,还可设置报警阈值和多传感器数据组触发报警等。
4 测试验证
4.1 系统样机试制
根据系统的设计方案,进行了样机试制。图10是系统样机实物图,从左到右依次为:带太阳能板、摄像头、语音采集播放的多媒体感知节点、ZigBee烟雾感知节点、ZigBee人体感知节点、ZigBee温湿度感知节点和PAD端管理软件。
图10 系统样机实物图
4.2 系统测试
为测试系统各项功能,本系统在校园内进行了环境监测实验。图11所示为系统测试场景,测试区域为教学楼与学生公寓之间的区域,在教学楼东门口附近放置多媒体感知节点、在学生宿舍前面街道分别放置:烟雾感知节点、温湿度感知节点和人体感知节点。
图12分别是烟雾感知节点告警、人体感知节点告警时,多媒体节点通过WiFi传送到PAD端管理软件的图像和数据信息截屏,可知系统实现了各传感器节点的数据采集和显示、实现了对异常区域定向图像采集的目的。
(a) 烟雾(b) 人体
图12 感知节点告警
5 结 语
针对环境监测中进行细粒度、重点区域监测的实际需要,设计开发了一种基于无线多媒体传感器网络的环境监测系统。设计了普通ZigBee无线感知节点,实现普通标量数据的感知和传输。基于ZigBee和WiFi设计了多媒体感知节点,在实现标量数据传输的同时,实现了环境图像、语音数据采集;同时添加了舵机云台、姿态感知和GPS定位系统,实现了对于异常区域的图像、语音数据采集。试验证明,本系统实现了对环境的细粒度感知和异常区域定向监测,具有很好的实用价值。