无线传感器网络硬件设计简介

news/2024/5/24 12:22:09/

无线传感器网络硬件设计简介

无线传感器网络因其巨大的应用前景越来越受到学术界和工业界的广泛关注。本文介绍了无线传感器网络节点的体系结构,分析比较了国内外当前典型的硬件平台,重点讨论了目前无线传感器网络节点常用的处理器、射频芯片、电源和传感器各自的优缺点,并详细比较了目前应用于无线传感器网络的无线通信技术。

关键词 无线传感器网络 硬件平台 低功耗 无线通信

引言

  无线传感器网络WSN(Wireless Sensor Network)是一种由传感器节点构成的网络,能够实时地监测、感知和采集节点部署区的观察者感兴趣的感知对象的各种信息(如光强、温度、湿度、噪音和有害气体浓度等物理现象),并对这些信息进行处理后以无线的方式发送出去,通过无线网络最终发送给观察者。无线传感器网络在军事侦察、环境监测、医疗护理、智能家居、工业生产控制以及商业等领域有着广阔的应用前景。

  在传感器网络中,传感器节点具有端节点和路由的功能: 一方面实现数据的采集和处理;另一方面实现数据的融合和路由,对本身采集的数据和收到的其他节点发送的数据进行综合,转发路由到网关节点。网关节点往往个数有限,而且常常能量能够得到补充;网关通常使用多种方式(如Internet、卫星或移动通信网络等)与外界通信。而传感器节点数目非常庞大,通常采用不能补充的电池提供能量;传感器节点的能量一旦耗尽,那么该节点就不能进行数据采集和路由的功能,直接影响整个传感器网络的健壮性和生命周期。因此,传感器网络主要研究的是传感器网络节点。具体应用不同,传感器网络节点的设计也不尽相同,但是其基本结构是一样的。传感器网络节点一般由处理器单元、无线传输单元、传感器单元和电源模块单元4部分组成,如图1所示。


图1  无线传感器网络节点典型组成

1  无线传感器网络典型节点

  传感器网络节点作为一种微型化的嵌入式系统,构成了无线传感器网络的基础层支撑平台。因为无线传感器网络大部分是采用电池供电,工作环境通常比较恶劣,而且数量大,更换电池非常困难,所以低功耗是无线传感器网络最重要的设计准则之一,从无线传感器网络节点的硬件设计到整个网络各层的协议设计都把节能作为设计的目标之一,尽可能延长无线传感器网络的寿命。

  由于具体的应用背景不同,目前国内外出现了多种无线传感器网络节点的硬件平台。典型的节点包括Mica系列、Sensoria WINS、Toles、μAMPS系列、XYZnode、Zabranet等。实际上各平台最主要的区别是采用了不同的处理器、无线通信协议和与应用相关的不同的传感器。常用的无线通信协议有802.11b、802.15.4(ZigBee)、Bluetooth、UWB和自定义协议;处理器从4位的微控制器到32位ARM内核的高端处理器都有所应用。还有一类节点是用集成了无线模块的单片机,典型的是WiseNet。典型无线传感器网络节点如表1所列。

  本文介绍了无线传感器网络的概念、特点以及无线传感器网络节点的组成,重点分析比较节点各组成单元各种常用芯片的特点,并且始终将低功耗作为比较的重要标准之一。

2  典型无线传感器网络节点比较

  目前,国内外研究人员已经开发出多种无线传感器网络节点,其实这些节点的组成部分是类似的,只是其应用背景不同,对节点性能的要求也不尽相同,因此所采用的硬件组件有很大差异。

2.1  处理器单元

  处理器单元是传感器网络节点的核心,和其他单元一起完成数据的采集、处理和收发。EM6603是4位微控制器,功耗很低,但处理能力也非常有限。Berkerly大学研制的Mica系列节点大多是采用Atmel公司的微控制器。其中,Mica2节点采用Atmel增强型微控制器ATmega128L。该微控制器拥有丰富的片上资源,包括4个定时器、4 KB SRAM、128 KB Flash和4 KB EEPROM,拥有UART、SPI、I2C、JTAG接口,方便无线芯片和传感器的接入;有6种电源节能模式,方便低功耗设计。采用该处理器的另外一个优点是: 编译器很多,其中GCC(WINAVR)是完全免费、开放的软件。由于以上优点和Mica2节点的影响,在实际的无线传感器设计中应用很多。但是从低功耗角度来讲,该芯片并不是最佳选择。

  如表1所列,就低功耗而言,MSP430F1xx MCU系列提供业界较低的电流消耗,工作电压为1.8 V,实时时钟待机电流的消耗仅为 1.1 μA,而运行模式电流低至 300 μA (1 MHz),从休眠至正常工作整个唤醒过程仅需6 μs。PIC系列微控制器也有低功耗的产品问世。Toles节点和ZebraNet节点就是采用MSP430系列的微控制器,功耗非常低。在某些数据量大的应用中,高端的处理器也有应用。例如μAMPS1节点采用StrongARM处理器SA1110,功耗为27~976 mW。该处理器支持DVS节能,可以降低功耗450 mW左右;关掉无线模块功耗可以降低300 mW。μAMPS2采用的处理器是DSP。XYZnode采用的处理器是OKI公司的ARMTDMI内核的ML67Q5002,该处理器也支持DFS(动态频率调节),工作电流为15~72 mA,频率为1.8~57.6 MHz。

表1  典型无线传感器网络节点

  从处理器的角度看,无线传感器网络节点基本可以分为两类: 一类采用以ARM处理器为代表的高端处理器。该类节点的能量消耗比采用微控制器大很多,多数支持DVS(动态电压调节)或DFS(动态频率调节)等节能策略,但是其处理能力也强很多,适合图像等高数据量业务的应用;此外,采用高端处理器来作为网关节点也是不错的选择。表2中最后3款处理器是ARM内核的处理器,功耗明显比低端微控制器高很多。另一类是以采用低端微控制器为代表的节点。该类节点的处理能力较弱,但是能量消耗功率也很小。在选择处理器时应该首先考虑系统对处理能力的需要,然后再考虑功耗问题。

表2  各种常见的微控制器性能比较

2.2  无线传输技术及芯片

  可以利用的传输媒体有空气、红外、激光、超声波等,常用的无线通信技术有: 802.11b、802.15.4(ZigBee)、Bluetooth、UWB、RFID、IrDA等;还有很多芯片双方通信的协议由用户自己定义,这些芯片一般工作在ISM免费频段,如表3所列。利用激光作为传输媒体,功耗比用电磁波低,更安全。缺点是: 只能直线传输;易受大气状况影响;传输具有方向性。这些缺点决定这不是一种理想的传输介质。红外线的传输也具有方向性,距离短,不需要天线。芯片83F88S是一种符合IrDA标准的无线收发芯片。UWB具有发射信号功率谱密度低、系统复杂度低、对信道衰落不敏感、安全性好、数据传输率高、能提供数cm的定位精度等优点;缺点是传输距离只有10 m左右,隔墙穿透力不好。802.11b因为功耗高而应用不多,Bluetooth工作在2.4 GHz频段,传输速率可达10 Mbps;缺点是传输距离只有10 m左右,完整协议栈有250 KB,不适合使用低端处理器,多用于家庭个人无线局域网,在无线传感器网络中也有所应用。在无线传感器网络中应用最多的是ZigBee和普通射频芯片。ZigBee是一种近距离、低复杂度、低功耗、低数据速率、低成本的双向无线通信技术,完整的协议栈只有32 KB,可以嵌入各种设备中,同时支持地理定位功能。以上特点决定ZigBee技术非常适合应用在无线传感器网络中。目前市场上常见的支持ZigBee协议的芯片制造商有Chipcon公司和Freescale半导体公司,Figure8公司还专门开发了ZigBee协议栈。Chipcon公司的CC2420芯片应用较多,Toles节点和XYZ节点都是采用该芯片;Chipcon公司提供包含Figure8公司开发的ZigBee协议的完整开发套件。Freescale半导体公司提供ZigBee的2.4 GHz无线传输芯片有MC13191、MC13192、MC13193;该公司还提供配套的开发套件。

表3  应用于无线传感器网络的无线通信技术

  普通的射频芯片也是一种理想的选择,可以自定义通信协议,比较有代表性的MAC协议有TMAC、SMA、CWiseMAC、BMAC、DMAC等。路由协议有Gossiping、SPIN协议、LEACH协议、TEEN协议等。从性能、成本、功耗方面考虑,RFM公司的TR1000和Chipcon公司的CC1000是理想的选择。这两种芯片各有所长,TR1000功耗低一些,CC1000灵敏度高一些,传输距离更远。WeC、Renee和Mica节点均采用TR1000芯片;Mica2采用CC1000芯片;Mica3采用Chipcon公司的CC1020芯片,传输速率可达153.6 kbps,支持OOK、FSK和GFSK调制方式;Micaz节点则采用CC2420 ZigBee芯片。还有一类无线芯片本身集成了处理器,例如CC2430是在CC2420的基础上集成了51内核的单片机;CC1010是在CC1000的基础上集成了51内核的单片机,使得芯片的集成度进一步提高。WiseNet节点采用的是CC1010芯片。常见的无线芯片还有Nordic公司的nRF905、nRF2401等系列芯片,因为功耗较高,接收灵敏度比较低,开发难度较大,在实际的无线传感器网络中应用较少。常用无线芯片的主要参数比较如表4所列。

表4  常用无线芯片主要参数比较

2.3  电源模块

  电池种类很多,电池储能大小与形状、活动离子的扩散速度、电极材料的选择等因素有关。无线传感器网络节点的电池一般不易更换,所以选择电池非常重要,DCDC模块的效率也至关重要;另外,还可以利用自然界的能源来补充电池的能量。

  按照能否充电,电池可分为可充电电池和不可充电电池;根据电极材料,电池可以分为镍铬电池、镍锌电池、银锌电池和锂电池、锂聚合物电池等。一般不可充电电池比可充电电池能量密度高,如果没有能量补给来源,则应选择不可充电电池。在可充电电池中,锂电池和锂聚合物电池的能量密度最高,但是成本也比较高;镍锰电池和锂聚合物电池是唯一没有毒性的可充电电池。常见电池的性能参数如表5所列。无线传感器网络节点一般工作在户外,可以利用自然能源来补给电池的能量。自然界可利用的能量有太阳能、电磁能、振动能、核能等。由于可充电电池的次数是有限的,而且大多数可充电电池有记忆效应,因此利用自然界的能量不能频繁对电池充电,否则会大大缩短电池的使用寿命。

表5  常见电池的性能参数

2.4  传感器模块

  传感器种类很多,可以检测温湿度、光照、噪声、振动、磁场、加速度等物理量。美国Crossbow公司基于Mica节点开发了一系列传感器板,采用的传感器有光敏电阻Clairex CL94L、温敏电阻ERTJ1VR103J(松下电子公司)、加速度传感器ADI ADXL202、磁传感器Honeywell HMC1002等。温湿度传感器SHTxx系列能支持低功耗模式,采集完数据后自动转入休眠模式,电流小于1μA。

  传感器电源的供电电路设计对传感器模块的能量消耗来说非常重要。对于小电流工作的传感器(几百μA),可由处理器I/O口直接驱动;当不用该传感器时,将I/O口设置为输入方式。这样外部传感器没有能量输入,也就没有能量消耗,例如温度传感器DS18B20可以采用这种方式。对于大电流工作的传感器模块,I/O口不能直接驱动传感器,通常使用场效应管(如Irlm16402)来控制后级电路能量输入。当有多个大电流传感器接入时,通常使用集成的模拟开关芯片来实现电源控制,MAX4678就是这样一款芯片。

3  结论

  由于应用背景不同,目前国内外存在很多硬件平台,采用的无线通信技术也有很多种。本文主要总结了目前常见的无线传感器网络硬件平台,分析比较了常用的处理器、无线芯片、无线通信技术、传感器和电源,并始终把功耗作为考虑的重要比较因素之一。通过对无线传感器网络硬件平台的详细分析,期望能对我国的无线传感器网络的研究和发展起到积极作用。


http://www.ppmy.cn/news/47289.html

相关文章

Java IO流

Java IO流 IO就是Intput和Output也就是输入输出,将数据输入到计算机内存的过程叫做输入,从内存读取出来的数据叫做输出。Java的IO流总共有40多个类,他们都是由下个4个抽象类派生出来的,InputStream和Read和OutputStream和Writer。…

网络拥塞控制,对越远的流量越宽容

考虑下面的网络传输场景: ​ S1,S2,S3,S4 向 D 方向发送,R4 发生拥塞。R4 必须丢弃一些数据进行疏导反馈拥塞信号,否则谁也过不去。 优先丢掉离得最近的 S4 的数据,其次依次丢 S3,S2…

ChatGPT会如何改变制造业?

来源 | Smart Industry Edgenesis编译 ChatGPT最新版本的发布成为热门头条。OpenAI表示该版本的ChatGPT能够在多个专业测试中达到“人类水平”的表现,例如司法考试和SAT考试。不过,在工业领域中,ChatGPT能够发挥怎样的作用呢?Sma…

计算广告(十七)

多渠道组合路径效率评价 ​ 编辑切换为居中 添加图片注释,不超过 140 字(可选) 分析背景: 电商归因分析通常以 last_click 为基准,将成交转化归功于用户完成转化前的最近一个广告系列。然而,在此之前&a…

HTTP的那些事儿

超文本传输协议(Hyper Text Transfer Protocol,HTTP),它是在计算机世界中的两个点之间传递文本,图片,多媒体等超文本文件的协议。HTTP处在数据链路层,网络层,传输层,应用…

java 资料地址汇总

1 SpringBoot - 使用 Assert 校验让业务代码更简洁 SpringBoot - 使用 Assert 校验让业务代码更简洁 2 MyBatis-Plus 还手写 Join 联表查询?一个依赖轻松搞定,真香! MyBatis-Plus 还手写 Join 联表查询?一个依赖轻松搞定&#…

中小企业面临怎样的数字化转型局面

当前,我国经济长期向好的基本面没有改变,但承受着“需求收缩、供给冲击、预期减弱”的三重压力,中小企业的数字化转型之路较之以往更加艰难、曲折。为帮助中小企业纾困解难、平稳渡过危机,需进一步优化政策“组合拳”,…

CMake

CMake定义 CMake是一个跨平台的安装(编译)工具,可以用简单的语句来描述所有平台的安装(编译过程)。他能够输出各种各样的makefile或者project文件,能测试编译器所支持的C特性,类似UNIX下的automake。只是 CMake 的组态档取名为 C…

背包问题——01背包|完全背包

目录 前言&背包问题的历史 01背包 1、题目 2、暴力解01背包 Ⅰ、代码 3、动态规划解01背包 Ⅰ、二维dp数组解01背包 1)dp数组的含义 2)递推公式 3)dp数组的初始化 4)遍历顺序的讨论 5、代码 Ⅱ、一维数组解01背包 1&…

[API]集合Collection常用方法集合遍历新循环泛型(三)

什么是集合: 集合和数组一样,可以保存一组数据,并且提供了操作数组元素的相关方法,使用用更加方便 集合框架中的相关接口: java.util.Collection接口:是所有集合的顶级接口,封装了所有集合所…

【理解 C++ 中的头文件和源文件的作用 】

include文件中定义 src文件中声明 头文件中应该只放变量和函数的声明,而不能放它们的定义。 在 C 中,头文件和源文件有着不同的作用。它们共同组成了 C 项目的基本结构。让我们逐个了解它们的作用。 头文件(.h 或 .hpp 文件)&a…

【从零开始学Skynet】实战篇《球球大作战》(十四):agent跨服务器版

至此,我们已完成了《球球大作战》的绝大部分功能,只剩下完 善agent ,让它和 scene 服务联动了。 1、多个模块 一般而言,代理服务会承载很多系统,比如邮件、成就等,此处涉及的代码较多,容易混 乱…

初中级测试工程师,软件测试面试题总结大全(功能/接口/自动化测试)你要的都有...

目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 一般软件测试的面…

程序员只能吃青春饭?3条晋升之路帮你摆脱程序员中年魔咒!

作为一个程序员 尤其是在这些中 不管是中国 还是美国的这些大的公司里边呢 往往呢 有大概两条这样的一个境界之路 根据你自己个人的这种能力兴趣 其实你可以进行自己的选择 科技大佬们其实往往呢也都是从 这个比较年轻的时候对吧 归国创业也好 还是自己出自于草根 然后一下子凝…

【Python_Scrapy学习笔记(十三)】基于Scrapy框架的图片管道实现图片抓取

基于Scrapy框架的图片管道实现图片抓取 前言 本文中介绍 如何基于 Scrapy 框架的图片管道实现图片抓取,并以抓取 360 图片为例进行展示。 正文 1、Scrapy框架抓取图片原理 利用 Scrapy 框架提供的图片管道类 ImagesPipeline 抓取页面图片,在使用时需…

今天面了个字阿里拿38K出来的,真是纹身师闭眼,秀了我一脸啊

公司前段缺人,也面了不少测试,前面一开始瞄准的就是中级的水准,也没指望来大牛,提供的薪资在15-20k,面试的人很多,但平均水平很让人失望。看简历很多都是4年工作经验,但面试中,不提测…

【已解决】Field ‘id‘ doesn‘t have a default value 错误的解决办法

介绍 这里是小编成长之路的历程,也是小编的学习之路。希望和各位大佬们一起成长! 以下为小编最喜欢的两句话: 要有最朴素的生活和最遥远的梦想,即使明天天寒地冻,山高水远,路远马亡。 一个人为什么要努力&a…

Qt 项目A调用项目B方法(项目架构管理)

前言 项目开发中,如果项目比较大,大多采用多项目的方式,主要是为了方便代码管理,也更开发变得更加方便。操作如下: 注:我用的版本是Qt 5.12.3 一、建立项目目录 要求: 1、项目A为主&#xff…

Java之~ Aop自定义注解日志

大纲步骤: 一,创建需要记录的日志表,创建基础方法。(省略) 二,在需要加记录日志的方法上加Aop注解1,创建一个注解类,Aop中定义一个注解import java.lang.annotation.*; /*** http 请…

Spring IoC注解开发

Component 组件 Controller 控制器 Service 业务 Repository 仓库 这四个标签是为了创建对象 其实他们四个本质都一样,只不过另外三个是Component的别名,在不同层使用容易区分 首先需要加入aop依赖,如果你事先加入spring-context依赖…