面向多传感器模块接入的低功耗无线传感器节点*

2011-05-31 06:15虞致国万书芹黄召军陈子逢
电子与封装 2011年10期
关键词:低功耗无线供电

虞致国,魏 斌,万书芹,黄召军,陈子逢

(中国电子科技集团公司第58研究所,江苏 无锡 214035)

1 引言

从物联网通用的技术分类看,物联网可分为三层构架,即:感知层、网络层和应用层。其中感知层因为直接面向具体物体,产品的种类繁多,需要的数量也十分巨大。目前,感知层主要由无线传感器网络承担,该网络包括传感器节点、网关节点(或数据汇聚节点)和管理终端。传感器节点分布于目标区域,决定了网络的功能和应用范围。如何设计新型高效的传感器节点成为提高传感器网络性能、扩展其应用范围的关键问题[1]。另一方面,在不同的应用范围中,节点的大多数功能是类似的[2~8],因此需要设计一种能够支持多种传感器接入方式的传感器节点,并具有可扩展性、可配置性及低功耗等特点,从而避免不同应用系统的重复开发成本。

本文设计的传感器节点采用ZigBee通信技术,可兼容多种传感器,包括模拟量传感器、数字输入输出、智能传感器接口(如I2C、UART、SPI接口等);可以兼容多种供电方式,方便不同的应用场合;采用模块化设计,增强了各个模块的通用性,降低了硬件成本。

2 ZigBee技术

ZigBee是一种新兴的短距离、低速率、低功耗、低成本和低复杂度的无线传输技术,由IEEE802.15.4和ZigBee联盟共同制订完成。ZigBee协议采用2.4GHz ISM频段时,传输速率为250 kb/s,传输距离为10m~75m;ZigBee的协议架构由用户层、应用层、网络层、MAC层和物理层组成。ZigBee物理层和MAC层采用802.15.4标准,网络层和应用层由ZigBee联盟定义,用户层由用户定义[10]。目前,已有众多公司加入了ZigBee联盟,支持ZigBee技术的芯片和产品也纷纷开始面世。

3 系统网络结构

构建的传感网系统包括传感器节点、路由节点、网关节点和后台管理终端,结构如图1所示。传感器节点安装在使用现场(可用电池供电),周期性采集相关参数,采用多跳的方式通过路由节点汇聚到网关节点,然后送到管理终端。网关节点完成网络的组织、协调、管理和维护。管理终端负责维护系统数据库、数据分析、报警、报表、网络远程配置等功能。用户可以通过管理终端对目标区域的传感器数据进行读取、存储、分析。

图1 系统网络结构图

4 传感器节点的设计

传感器节点包括硬件设计和嵌入式软件设计两部分。硬件设计着重考虑MCU的选择、低功耗、对外接口等,并为提高电池的使用效率和软件低功耗提供硬件支撑。软件设计考虑协议栈和应用程序的实现,并采用低功耗工作模式。为了使得节点具备更高的通用性,硬件采用模块化设计思想,尽量将一些公用模块独立出来。射频部分为各种类型节点所必须,为节点的核心部分,可单独设计。

传感器节点的硬件结构如图2所示,包括三个部分:射频子板、传感器节点主板、传感器模块。射频子板和传感器节点主板一起构成节点的主体部分。传感器模块根据不同系统需求进行选择,通过通用传感器接口和节点主板连接在一起。

图2 传感器节点硬件框图

4.1 射频子板的硬件设计

射频子板实现系统的无线收发部分,硬件包括ZigBee系统芯片、时钟模块、RF匹配电路、天线和相应的对外接口等,射频子板的结构如图3所示。

图3 射频子板框图

4.1.1 MCU的选择

芯片的选择主要考虑其低功耗、集成度、价格等因素。MCU选用FreeScale公司MC13224V,工作电压为2.0V~3.6V,芯片集成标准的ARM内核、2.4GHz射频收发器、IEEE 802.15.4 MAC硬件加速器和AES硬件加速器,并在开发环境中提供最新的ZigBee 2007/Pro协议栈。MC13224V上集成了较多的外围资源,主要包括:

(1)时钟模块,包括两个晶体振荡器和一个环形振荡器(2kHz);

(2)一个SPI接口、一个SSI接口,两个UART接口,一个I2C接口;

(3)两个12bit ADC(共八路外部输入);

(4)低功耗管理模块,芯片支持Hibernate和Doze两种低功耗模式。

4.1.2 时钟系统

外部设计采用了两个晶振,一个是主晶振,振荡频率为24MHz;另一个为32.768kHz的辅助晶振。在正常工作状态下,采用主晶振时钟,当处理器进入睡眠状态时采用辅助晶振或2kHz的环形振荡器(根据功耗及休眠间隔来定),达到降低功耗的目的。

4.2 对外接口部分

射频模块接口有通用输入输出GPIO(和I2C、UART等接口复用)、模数转换口、JTAG口三类。GPIO口用于数字信号通讯,模数转换口可对所监测的模拟量进行模数转换。JTAG仿真下载接口,主要有两个功能:一是在线调试,二是下载源程序。

4.3 天线设计

传感器节点的天线及其相关电路有其自身的特点与要求,在设计传感器节点的时候,应根据这些特点和要求重视天线及其相关电路的设计,注重提高天线的性能。由于MC13224V内部集成了平衡-不平衡转换器(即巴伦电路),故天线设计相对简单,只需要重点考虑50Ω的电阻匹配。

4.4 传感器节点主板设计

传感器节点主板完成状态指示、供电、配置、下载编程、对外扩展等功能,其结构如图4所示。

图4 传感器节点结构图

4.4.1 配置接口

在实际使用中,常常需要对节点的相应参数进行配置,如节点的休眠时间、节点的采集速度、相关的网络参数等。为了让用户使用更加灵活,决定提供USB接口进行配置(这些参数也可等节点组网后再通过无线的方式进行配置)。MC13224V原本没有USB接口,只有UART接口,考虑到现在很多台式机和笔记本都没有配备RS232接口,采用协议转换芯片FT232RL进行转换。

当配置完毕时,系统将参数重新保存在芯片的Flash中。因为配置电路不常用,为了降低节点功耗,对FT323RL设置单独的电源开关。在正常使用时,将配置电路关闭。

4.4.2 接口模块

接口模块为节点对外连接传感器的通道及输出控制通道,必须充分考虑其通用性。对于一般常见的应用,只需要接上所需要的传感器等设备。节点的接口主要有UART接口、I2C接口、SPI接口、ADC接口、电源VCC(5V)、GND,除电源外所有的接口均可以配置成通用输入输出口(GPIO)。ADC接口用于模拟量的输入,可把传感器的模拟信号转换成数字信号,最大支持12bit。UART接口、I2C接口、SPI接口等可用来连接支持相应接口的各种智能传感器和设备。如果配置成GPIO,则可用作数量的采集和输出,实现对外接设备的控制和状态采集。接口模块采用工业级的接插件,可多次插拔,插好之后接口稳定。通过通用化的接口设计,增强了节点外接设备的灵活性,可以迅速组成应用系统。

4.4.3 人机接口

人机接口包括按键、LED及LCD。为了便于人机对话,在主板上设置了多个按键以实现不同的控制功能,如网络连接控制按钮,设备之间的绑定、复位按钮等。

4.5 传感器节点的软件设计

为了快速开发和应用其硬件平台,FreeScale公司开发了BeeKit无线连接工具箱。BeeKit可以帮助开发人员快速创建ZigBee应用,并修改、配置其参数。BeeKit生成的工程可以导入到IAR System,并进一步加入用户自己的应用,最终下载到MC13224V。

节点的ZigBee协议栈采用FreeScale公司的BeeStack协议栈,它是一个轮转查询式操作系统。BeeStack已经编写了从MAC层到ZigBee设备应用层的事件处理函数,一般情况下无需修改这些函数,只需要按照自己的需求编写应用层的任务及事件处理函数。

传感器节点负责数据采集和上传任务,节点在正常状态和休眠状态进行切换,其中工作时间和休眠周期由网关节点控制并实现同步。采集和整个软件系统分为初始化、入网、命令处理、数据采集等部分,其工作流程图如图5所示。

图5 传感器节点软件流程

5 系统的低功耗设计

5.1 硬件低功耗设计

因为传感器节点大部分情况下是采用电池供电,但用户也可采用外部5V供电或使用USB对节点进行配置(USB可提供5V电源)。采用USB供电时,节点会使用电压转换电路、USB与RS232转换电路;采用外部5V供电时,节点会使用电压转换电路。因此,硬件在低功耗方面必须支持两个特性:一是能尽可能提高电池使用效率;二是在电池供电时,配置电路、电压转换芯片、基准源电路能够进入低功耗模式或断电。

5.1.1 射频子板的Buck电路

为了提高电池使用效率,采用了MC13324V内部提供的Buck电路。它可以将电池电压降至1.8V~2.0V,从而有效降低网络电流,延长了电池使用寿命。

5.1.2 节点主板的基准源电路

MC13224V没有提供ADC电路的基准源,因此主板上必须提供基准源芯片。另一方面,如该板采用数字接口对外进行通信,可将基准源芯片关闭,以降低系统功耗。基准源芯片采用LM285M,电路设计如图6所示。

图6 基准源电路

5.1.3 节点的电源系统

考虑到节点板的通用性,兼顾到有稳定电源和采用电池供电两种工作方式。外部输入电源时有两种途径:(1)通过USB接口,可由带USB接口的设备提供电源;(2)直接由有线电源供电。非电池供电时输入电压为5V,电池供电采用2节1.5V电池。每一组电源都能够单独关闭。电路结构如图7所示。

5.2 软件低功耗设计

传感器节点消耗能量的模块主要包括传感器模块、处理器模块和无线通信模块。低功耗设计包括硬件和软件两个层面,其中硬件为基础。软件低功耗设计主要从以下几个方面考虑:

(1)充分利用MCU的低功耗工作模式。MC13224V共设有多种休眠模式,因此必须根据实际需求,使之在需要采集、发送数据时才正常工作,其余时间处于睡眠状态。

(2)根据不同的传感器节点和监测需求设置合理的采样间隔时间,以延长电池使用寿命。

(3)优化节点的通信协议,包括:对节点采集到的数据进行处理,发送有用数据,减少通信量;设计合理的绑定关系,使传感器节点既能完成既定功能,又能避免不必要的通信造成的能量损耗。

图7 节点的电源系统

6 传感器节点的测试方法

节点的测试主要从软件调试、网络功能、功耗分析及接口测试等方面展开。

6.1 调试软件

采用IAR System进行编译调试,J-Link下载器进行烧写。IAR System是为单片机开发的C/C++语言集成开发环境,提供多种向导和工具,可以在一定程度上实现了软件的自动生成和可视化编程,同时支持多种类型工程。

6.2 功能测试

为了测试节点的功能,主要是利用FreeScale ZTC进行抓包,采用协调器组网等方式。

6.3 接口测试及功耗分析

接口测试的方法如下:通过USB对节点进行接口功能设定,并和协调器进行远程通信,再外接相应的传感器或设备来测试其功能是否正常。

文献表明[10~12],功耗的大小主要取决于睡眠状态时的电流、降低正常工作状态的工作时间,因此调试的重点在如何降低睡眠状态的电流、减少通信容量等。经过实际调试,在3V供电情况下,节点进入低功耗的电流为11μA,符合设计要求。

7 结束语

随着无线传感器网络应用系统所覆盖的范围越来越广,对传感器节点提出的功能要求也越来越高,越来越复杂。本文详细阐述了一种面向多传感器模块接入的低功耗无线传感器节点的硬件设计、软件设计、低功耗设计及性能测试方法。设计的节点具备通用型、模块化、功能可重构等特点,能够根据特定的应用场景,快速进行应用,从而节约了开发成本和时间。

[1] 彭东. 一种多传感模块无线传感器网络新型节点的设计与实现[D]. 北京交通大学,2009.

[2] 陈安都,刘少强. 振动信号在线检测的超低功耗无线传感器节点设计[J]. 计算机工程与科学,2008,30(4):95-97.

[3] 陈德海,梁毓明. 低功耗温室无线测量节点的设计[J].自动化仪表,2010,31(5):65-68.

[4] 孙延明,刘志远,蔡春丽,等. 低功耗无线传感器网络节点的设计[J]. 微计算机应用,2009,30(2):21-25.

[5] 李明明,李伟. 低功耗无线传感器网络节点的设计技术[J]. 测控技术,2010,29(6):8-11.

[6] 杨琦,陈辉煌,石江宏. 低功耗无线传感器网络终端节点设计[J]. 厦门大学学报(自然科学版),2008,47(3):357-360.

[7] 赖成瑜. 基于煤矿监测的低功耗无线传感器节点的研究与设计[J]. 通信技术,2008,41(12):282-283.

[8] 奚大顺,王洪辉,庹先国,等. 山体裂缝远程监测系统传感器节点的低功耗设计[J]. 2010,29(8):43-45,49.

[9] 冯勇平,等. 一种低功耗无线传感器网络节点的设计[J].电子技术应用,2009,4:33-35.

[10] 李文江,魏娟. ZigBee无线传感器网络节点的低功耗设计[J]. 成都大学学报(自然科学版),2008,27(3):239-241.

[11] 涂巧玲,张杰,潘建权,等. 无线传感器网络节点低功耗设计策略[J]. 电子测量技术,2009,32(1):158-161.

[12] 赵洪飞,国兵,杜晓通,等. 用于油管检漏的WSNs 节点低功耗设计[J]. 微计算机信息(测控自动化),2009,25(8-1):91-93.

猜你喜欢
低功耗无线供电
超高层建筑供电分析
一种高速低功耗比较器设计
《无线互联科技》征稿词(2021)
战洪魔保供电
红军与供电人的故事
无线追踪3
基于ARM的无线WiFi插排的设计
一种用于6LoWPAN的低功耗路由协议
山西直供电折戟
ADF7021-N在无线寻呼发射系统中的应用