近几年来,随着海洋事业的迅速发展,海洋环保已经提上议事日程。因此,海洋水环境监测成为人们越来越关注的焦点。
无线传感器网络所具有的众多类型的传感器,可探测包括地震、电磁、温度、湿度、噪声、光强度、压力、土壤成分、移动物体的大小、速度和方向等周边环境中多种多样的现象。基于MEMS的微传感技术和无线联网技术为无线传感器网络赋予了广阔的应用前景。这些潜在的应用领域可以归纳为:军事、航空、反恐、防爆、救灾、环境、医疗、保健、家居、工业、商业等领域。无线传感器网络是一种全新的信息获取平台,能够实时监测和采集网络分布区域内的各种检测对象的信息,并将这些信息发送到网关节点,以实现复杂的指定范围内目标检测与跟踪,具有快速展开、抗毁性强等特点,有着广阔的应用前景。
ZigBee是一种高可靠的无线数传网络,类似于CDMA和GSM网络。ZigBee数传模块类似于移动网络基站。通讯距离从标准的75m到几百米、几公里,并且支持无限扩展。ZigBee是一个由可多到65000个无线数传模块组成的一个无线数传网络平台,在整个网络范围内,每一个ZigBee网络数传模块之间可以相互通信,每个网络节点间的距离可以从标准的75m无限扩展。与移动通信的CDMA网或GSM网不同的是,ZigBee网络主要是为工业现场自动化控制数据传输而建立,因而,它必须具有简单,使用方便,工作可靠,价格低的特点。而移动通信网主要是为语音通信而建立,每个基站价值一般都在百万元人民币以上,而每个ZigBee“基站”却不到1000元人民币。每个ZigBee网络节点不仅本身可以作为监控对象,例如其所连接的传感器直接进行数据采集和监控,还可以自动中转别的网络节点传过来的数据资料。除此之外,每一个Zigbee网络节点(FFD)还可在自己信号覆盖的范围内,和多个不承担网络信息中转任务的孤立的子节点(RFD)无线连接。
随着通信技术的迅速发展,人们提出了在人自身附近几米范围之内通信的需求,这样就出现了个人区域网络(personal area network, PAN)和无线个人区域网络(wireless personal area network, WPAN)的概念。WPAN网络为近距离范围内的设备建立无线连接,把几米范围内的多个设备通过无线方式连接在一起,使它们可以相互通信甚至接入LAN或Internet.1998年3月,IEEE 802.15工作组。这个工作组致力于WPAN网络的物理层(PHY)和媒体访问层(MAC)的标准化工作,目标是为在个人操作空间(personal operaTIng space, POS)内相互通信的无线通信设备提供通信标准。POS一般是指用户附近10米左右的空间范围,在这个范围内用户可以是固定的,也可以是移动的。在IEEE 802.15工作组内有四个任务组(task group, TG),分别制定适合不同应用的标准。这些标准在传输速率、功耗和支持的服务等方面存在差异。协议栈结构如图l所示。
1 传感网络的构成
本文设计的无线传感器网络的组成包括传感器节点、汇聚节点和网关节点,主要负责探测海洋区域内的各种情况,包括油污检测、浊度测量、化学需氧量测量、海藻测量等等。
传感器节点主要负责网络的形成,海洋各项参数的采集,并将数据通过多跳的形式传输到汇聚节点。
汇聚节点是无线传感器网络的中心节点,负责网络的发起,拓扑的形成与维护,网路数据的汇聚与处理,与监控系统的通信与信息交互。汇聚节点是传感器节点终端节点中能力较强的一种。
网关节点接收来自其他节点的数据,并对数据进行校正、融合等处理,然后发送给监测中心。对于监测中心所发指令进行相应处理,用来确定各个节点的工作状态。
后台监测中心负责对发送回来的海洋参数数据进行汇总与处理,网络拓扑的控制,网络的监护等工作。
整个海洋监测系统由一定数量的传感器网络终端节点、少量汇聚节点、一个网关节点以及后台监测系统组成。为了探测一定区域,需要在该区域内布置一定数量的传感器节点,以达到对整个区域的覆盖,并且需要一个网关节点完成对来自传感器终端的数据的融合,上传给后台监测系统,完成数据的分析与处理。从网关节点到监控中心距离一般都比较远,可采用现有的GPRS网络进行远程数据传输。GPRS网络连接费用相对低廉,传输速率较高,性价比较高,而且能够永远在线。传感网络结构示意图如图2所示。
传感器终端节点与汇聚节点能够自动形成一个自组织、多跳的网络。传感器终端节点按指令采集数据,并将数据及时地通过自适应的路由、多跳中继后传输给网关节点,网关节点将汇集的数据打包后,转发给后台监控系统。
2 硬件设计
本海洋监测系统中的传感器节点是传感网络中最重要的部分,其硬件包括微处理器单元、一个zigbee通信模块及电源管理模块;汇聚节点硬件包括微处理器单元、两个Zigbee通信模块及电源管理模块;网关节点硬件包括微处理器单元、一个Zigbee通信模块、一个GPRS模块及电源管理模块。
2.1 节点微处理器MSP430F149单片机
由于无线传感器网络节点需要将传感器输出的模拟信号转换为数字信号,可选择一款集成有AD转换功能的微控制器。另外,无线传感器网络节点除完成数据采集功能外,还要完成数据转发和路由功能,因而要有足够的处理能力、程序空间及数据空间。本设计MCU采用的是MSP-430F149单片机,它是TI公司生产的一种16位超低功耗混合信号处理器,称之为混合信号处理器,主要是由于其针对实际应用需求,把许多模拟电路、数字电路和微处理器集成在一个芯片上,以提供“单片”解决方案。其突出优点是低电源电压、超低功耗。由于为FLASH型,所以可以在线对单片机进行调试和下载程序。
MSP430F149低频辅助时钟采用32kHz时钟晶振直接驱动,可作为后台实时时钟实现自唤醒功能。集成的高速数字控制振荡器(DCO)频率为8MHz,可作为CPU的主系统时钟(MSLK)源,也可以作为CPU的子系统时钟(SMCLK)源。
2.2 节点Zigbee通信模块CC2420
本系统中无线传感器网络硬件中的Zigbee通信模块采用低功耗高性能的无线网络模块CC2420来实现,它工作在全球通用的2.4GHz频段。CC2420是一款符合IEEE802.15.4标准的射频收发器,性能稳定且功耗极低。CC2420的选择性和灵敏度指数超过IEEE802.15.4标准的要求,可确保短距离通信的有效性和可靠性,利用此芯片开发的无线通信设备支持数传速率高达250kb/s,可实现多点对多点的快速组网。 CC2420发送数据时,使用直接正交上变频。基带信号的同相分量和正交分量直接被DAC转换为模拟信号,通过低频滤波器,直接变频到设定的信道上,再由天线发射出去。
Zigbee通信模块CC2420与单片机的连接电路,如图3所示。
CC2420只需要极少的外围电路,包括时钟电路、射频I/O匹配电路和微控制器接口电路三部分。芯片本振信号既可由外部有源晶体提供,也可以由内部电路提供。由内部电路提供时需要外加晶体振荡器和两个负载电容,电容的大小取决于晶体的频率及输入容抗等参数。例如当采用16MHz晶振时,其电容约为22pF.射频I/O匹配电路主要用来匹配芯片的输入/输出阻抗。CC2420与微处理器的连接非常方便,它使用SFD、FIFO、FIFOP、和CCA四个引脚表示收发数据的状态;微处理器通过SPI接口与CC2420交换数据、发送命令等。
CC2420收到物理帧的SFD字段后,会在SFD引脚输出高电平,直到接收完该帧。如果启动了地址辨识,在地址辨识失败后,SFD引脚立即转为输出低电平。FIFO和FIFOP引脚表示接收FIFO的缓存区状态,如果接收FIFO缓存区有数据,FIFO引脚输出高电平;当接收FIFO缓存区为空,FIFO引脚输出低电平;当FIFO引脚在接收FIFO缓存区的数据超过某个临界值时,或在CC2420接收到一个完整的帧以后输出高电平临界值时,可以通过CC2420的寄存器设置。CCA引脚在信道上有信号时输出高电平,它只在接收状态下有效,在CC2420进入接收状态至少8个符号周期后,才会在CCA引脚上输出有效的信道状态信息。
SPI接口由CSn、SI、SO和SCLK引脚组成,微处理器通过SPI接口访问CC2420内部寄存器和存储器。在访问过程中,CC2420是SPI接口的从设备,接收来自微处理器的时钟信号和片选信号并在微处理器的控制下执行输入/输出操作。SPI接口接收或者发送数据时,都与时钟下降沿对齐,CC2420与MSP430F149是通过SPI连接的,其中MSP430F149处于主模式,CC2420处于从模式。MSP430F149还有4个I/O口与CC2420相连,主要起查询CC2420状态的作用。
电源管理模块为传感器单元、处理器单元、无线通信模块提供能源,并对电源进行管理,以提高能量的利用率。
2.3 系统IEEE802.15.4工作模式
IEEE802.15.4规范中规定使用DSSS调制方式,CC2420中的调制和扩频功能框图如图4所示。
每个字节分为两组符号,4位一组,低位符号首先传送,对于多字节域,则是低位字节首先传送,但是,与安全有关的域先传送高位字节。每个符号映射为一个超过16位的伪随机序列,即32位片码序列。片码序列以2Mchip/s的速率传送,对于每个符号,首先传送低位片码。
调制方式为偏移正交相移键控,具有半个正弦的形状,相当于最小频移键控(MFSK)调制,每片的形状通过半个正弦波交替在同相和正交相位信道传送。
2.4 数据通信帧格式设置
同步头包括前导序列和开始帧分隔符,在CC2420中前导序列长度和开始帧分隔符是能设置的,默认值4字节和1字节,是符合IEEE.80 2.15.4协议的;物理头位为1字节,帧控制和序列号分别为2字节和1字节:地址和源地址共6字节,待发数据段长度为帧长度减去地址和帧校验序列。当MODEMCTRL0.AUTOCRC控制位置位时,这个帧校验序列自动产生2字节,并由CC2420硬件自动插入。
3 软件设计
本设计中,无线传感器网络是一个多路的自组织无线网络,可以实现自动组网,自动路由查询,自动数据采集与传输,软件设计上必须能够实现多跳自组织的功能。另外,传感器节点必须要求极低的功耗,而低功耗除了硬件设计上的低功耗外,更重要的是软件设计的低功耗。
此无线传感器网络终端在开机后首先进行自检,如果自检失败了,则进行硬件故障提示,而且自动关机。在自检通过后,进一步判断工作模式。传感器节点在自检通过后进入接入状态,如果接入失败则进入等待状态。处于等待状态的节点关闭射频收发器以节省功耗,当等待定时器溢出时,节点再次回到接入状态进行新的介入尝试。如果节点接入成功便转入业务状态。处于业务状态的节点,完成数据的采集与传输,对近节点数据的中继转发,新节点入网的介入确认等操作。节点为了实现低功耗,必须在业务状态(活动状态)与休眠状态之间轮换。
软件开发以IAR Embedded Workbench V2.10为平台,采用C语言编写。节点的MSP430系列单片机支持C语言程序设计。适用于MSP430系列的C语言与标准C语言兼容程度高,大大提高了软件开发的工作效率,增强了程序代码的可靠性、可读性和可移植性。软件编程的基本思想是:先对SPI、CC2420控制端口初始化,使能SPI、UART端口,使能ADC,开机后,就可以运行任务程序,实现接收或发送数据及命令了。
传感器节点、汇聚节点的工作流程如图5所示。
对于网关节点的设计,接收数据部分仍采用CC2420无线收发模块,可以采用统一的传输协议,保证传输的可靠性;由于还要进行数据的处理,网关节点就不附加传感器了,以便提高处理器对数据的处理能力,MCU统一采用MSP430F149单片机;同时,监控中心一般远离监测点,需要采用GPRS模块来实现数据的远程传输。其工作流程如图6所示。
4 结论
本文设计的有关海洋水环境监测的无线传感器网络综合运用了无线传感技术、嵌入式计算技术、现代网络技术、无线通信技术和分布式智能信息处理技术,将功能相同或不同的无线智能传感器构成网络化、智能化的传感网络,大大提高了监测海洋各项参数的传感器的监测能力。这样的基于无线传感器网络的实时监控系统采用中短距离、低功耗无线网络,射频传输成本低;可根据需要采用多种供电模式,节能效果好;可实现灵活的快速组网和自动配置,扩展性好。