【转】无线传感器网络实验平台的实现

原文:http://www.chinaaet.com/article/index.aspx?id=19266 

 

李 婧,赵保华,张英堂 时间:2010年01月06日

字 体:

关键词:无线传感器网络实验平台传感器节点

摘  要: 详细阐述了基于无线传感器硬件搭建无线传感器网络实验平台并利用TinyOS进行传感器硬件通信验证的实现方案。
关键词: 无线传感器网络  实验平台  传感器节点

  集成了传感器、微机电系统和网络三大技术而形成的无线传感器网络是一种全新的信息获取和处理技术,具有十分广阔的应用前景。
  无线传感器网络是一种特殊的无线自组网,它由成千上万甚至数以百计的“沙粒”(motes)构成。“沙粒”即无线传感器网络节点,大小相当于给它提供能量的2节AA电池。它还包含一个微型处理器,很少的内存以及用于感应光、温度、压力、热量等的传感器,此外还有一个微型无线电收发机,用来接收和发送无线电信号。无线传感器网络被部署在应用现场后能够实时感知和采集各种监测对象的信息,并对其进行处理,最后传送到用户。它在国防军事、反恐抗灾、环境监测、交通管理、工程安全、医疗卫生等领域都将得到广泛的应用,必将引发信息感知和采集的革命[1]。
  典型的无线传感器网络结构如图1所示。此网络由传感器节点、基站(Base Station)、Internet或通信卫星、任务管理节点(Task Manager Node)等部分构成。传感器节点通过飞行器撒播、人工埋置和火箭弹射等方式散布在指定的感知区域内,每个节点都可以收集数据,并通过“多跳”路由方式把数据传送到基站。基站也可用同样的方式将信息发送给各节点。基站直接与Internet或通信卫星相连,通过Internet或通信卫星实现任务管理节点(即观察者)与传感器之间的通信[2]。

  无线传感器网络的广阔应用前景引起了学术界和工业界的高度重视。由于各方面条件的限制,目前针对无线传感器网络的研究大多基于模拟环境(如NS-2),然而在实际网络系统的研究中会遇到在模拟环境下无法预料的问题。因此,无线传感器网络实验平台的实现在整个传感器网络研究中占据非常重要的作用。为此本文主要介绍了如何搭建无线传感器网络实验平台,包括利用TinyOS在传感器硬件上进行测试,保证传感器节点间无线通信正常,这些都是实现传感器应用实例的前提工作。本文将重点介绍如何利用Crossbow公司的无线传感器产品来实现无线传感器网络实验平台和基于此实验平台的节点验证;Crossbow公司的5040系列硬件产品;TinyOS系统和传感器硬件验证;将来的研究方向。
1  硬  件
  Crossbow公司是全球第一家提供Smart Dust无线传感器的公司。该公司提供了一系列传感器和相关硬件,其中大部分产品是即插即用的。硬件产品上的所有部件都支持TinyOS操作系统(此系统是美国加州大学伯克利分校专为嵌入式系统开发的微型操作系统)。
  实验平台硬件采用的是MOTE-KIT 5040系列。它包括4个MICA2 Processor/Radio Boards、4个MICA2DOT Boards、3个MTS310 Sensor Boards、2个MDA500 MICA2DOT 原型和数据采集板以及1个MIB510编程接口板。
  MOTE-KIT5040系列的主要部件是MICA2。它是早期产品MICA的改进,采用的TinyOS操作系统是一个小型、开源、节能的软件操作系统,支持大规模、自配置的无线传感器网络,其源代码和软件开发工具可以在网上下载。MICA2采用的硬件平台为MPR400CB,MPR400CB采用了Atmel Atmega 128L微控制器,该控制器从其自带的ROM中运行TinyOS操作系统。可以利用编程接口板对其进行开发。MICA2具有许多优良的特性:
  ①是第三代小型智能无线传感器节点。
  ②内嵌TinyOS操作系统,提供了前所未有的通信和处理能力。
  ③在休眠模式,AA电池可以使用一年。
  ④无线通信功能强大,并且每个节点都具有路由器的功能。
  ⑤433MHz或868/916MHz的多信道收发天线。
  ⑥光敏、温度、RH、气压、震动、声学、电磁以及诸多可选的传感器。
  ⑦支持无线的远程重编程。
  ⑧具有大量可用的传感器板和数据采集板。
  ⑨与下一代产品MICA2DOT完全兼容。
  MICA2DOT与MICA2相比的主要优点在于其体积约是MICA2的四分之一。其他功能与MICA2极其类似。
MOTE-KIT5040还提供了3块传感器板,这些接口板可以通过一个51脚的接口连到MICA2上。任何一个MICA2节点都可以配置成基站来进行工作。基站可将从无线传感器网络取得的数据汇集到计算机上。
2  基于TinyOS实验平台的实现
  TinyOS操作系统是一个小型、开源、节能的软件操作系统。该操作系统支持大规模、自配置的无线传感器网络,安装比较简单,与普通应用软件安装过程类似。完整的安装包包括如下软件(一般选择完全安装): TinyOS、TinyOS Tools、NesC、Cygwin、Support Tools、Java 1.4 JDK & Java COMM 2.0、Graphviz、AVR Tools(avr-binutils、avr-libc、avr-gcc、avarice、avr-insight)。
  调试嵌入式系统应用程序的难点是:难以区分错误源在应用程序还是在嵌入式系统平台。但由于TinyOS安装包包括了2个用于对系统和传感器硬件进行验证的工具,因此可以利用这2个工具在调试应用程序前确认传感器节点本身是否有问题。
  首先,对传感器硬件验证前要先对安装的PC工具进行确认,包括 avr gcc compiler、perl、flex、cygwin(如果使用Windows操作系统)、JDK 1.4.x等。利用TinyOS自带的 toscheck工具可以检验PC工具是否安装完全,其操作步骤是:双击图标运行cygwin应用程序,进入/tools/scripts目录,键入toscheck。运行后,最后1行输出应为“toscheck completed  without error”。若发现显示错误,则必须先解决该错误再继续下面的步骤。
  接下来可以使用下面2种方法[3]进行传感器节点的硬件验证:
  (1)TinyOS自带的MicaHWVerify程序。
  (2)Crossbow提供的图形用户界面程序Mote-Test。
2.1 使用MicaHWVerify进行硬件验证
  MicaHWVerify程序专门用来验证MICA/MICA2/MICA2DOT节点硬件。若所使用的硬件平台不同则不适宜使用该程序。以下步骤都以验证MICA2节点为例(对MICA2-DOT节点只需修改相应参数即可)。对传感器节点硬件编程时须注意:若使用配套的电源给编程接口板供电,将传感器节点插到接口板前要保证节点上的电池已取出;若利用传感器节点上的电池给编程接口板供电,则不需再接电源但必须保证电池电量≥3.0V,且节点上开关状态为On。验证步骤如下。
  (1)运行cygwin后,进入/apps/MicaHWVerify目录。键入make mica2编译MicaHWVerify程序。若使用MICA2/MICA2DOT平台,完整的命令应该是PFLAGS=-DCC1K_MANUAL_FREQ=<freq> make <mica2|mica2dot>。其中,<freq>可以根据需要在315MHz、433MHz和915MHz中任选1个,具体设置方式见参考文献[5]。本文则选用915MHz的频率;若使用MICA平台,则键入make mica。
  (2)将MICA2节点插到编程接口板上(MIB510),用电池或电源供电(通电后编程接口板上的绿灯亮)。
  (3)将编程接口板通过串口连到计算机。如果使用编程接口板MIB500,则将编程接口板通过并口连到计算机(以下未特别声明的编程接口板都是指MIB510)。
  (4)将程序装载到MICA2节点上。键入MIB510=COM# make reinstall mica2。其中:COM#表示MIB510连接在计算机端口COM#上(#=1、2、3……本文取为COM1);rein-stall是直接将已编译过的程序装载到指定节点上而不再重新编译程序,因此速度较快;若使用命令install代替reinstall,则先对目标平台编译再将程序装载到节点。如果使用MIB500,则键入make reinstall mica2即可。回车后,MIB510编程接口板的典型输出如下:
  $ mib510 make reinstall mica2
  installing mica2 binary
  uisp -dprog=mib510 -dserial=COM1 -dpart=ATmega128 --wr_fuse_e=ff --erase --upload if=build/mica2/main.srec
  Firmware Version:2.1
  Atmel AVR ATmega128 is found.
  Uploading:flash
  Fuse Extended Byte set to 0xff
  这时可以知道编程接口板和计算机串口工作正常。接下来继续验证传感器节点硬件。
  (5)键入make -f jmakefile,再键入MOTECOM=serial@
  COM1:57 600 java hardware_check,计算机上的输出应该大致为:
  hardware_check started
  hardware verification successful
  Node Serial ID:1 60 48 fb 6 0 0 1d
  其中,Node Serial ID是MicaHWVerify程序分配给MICA2节点的序列号,该程序检查结点序列号、闪存连通性、UART功能和外部时钟。当这些状态都正常时,屏幕上就会打印出硬件检测成功的消息。由于MICA2DOT没有序列号,当编译MicaHWVerify时会提示警告信息“Serial ID not supported on mica2dot platform”,最终的运行结果serial ID输出全为0xFF。
  最后,验证传感器节点间的无线通信。应注意通信时传感器节点间要使用统一的频率,即 PFLAGS=-DCC1K_MANUAL_FREQ=915 988 000。为操作方便,可以在apps/目录下建立一个Makelocal文件来设定参数默认值,其内容如下:
  PFLAGS=-DCC1K_DEFAULT_FREQ=CC1K_915_998_MHZ
  MIB510=COM1
  这样,以后就不必每次输入MIB510=……、PFLAGS=……等表设置参数了。
        通信实验需要2个传感器节点,因此先对另一个传感器节点进行硬件检测,再按下述步骤操作,使其充当第一个节点的无线网关程序。
  (6)进入/apps/TOSBase目录,键入make mica2编译TOSBase程序。
  (7)将TOSBase程序装载到插在MIB510编程接口板上的传感器节点,并将另一个传感器节点(注意:该节点装载的是MicaHWVerify程序)放在附近。
  (8)键入MOTECOM=serial@COM1:57600 java hardware_check来运行hardware_check java程序,输出结果应和前面类似:
  hardware_check started
  Hardware verification successful.
  Node Serial ID:1 60 48 fb 6 0 0 1e
  这里返回远端节点的序列号,表示传感器节点间无线通信验证成功。如果远端传感器节点关闭或工作不正常,将返回提示信息“Node transmission failure”。
2.2 使用Mote-Test进行硬件验证
  验证传感器硬件还有另外一种更快捷的方法,即使用Mote-Test程序。介绍如下。
  (1)从光盘运行/Crossbow Software/Mote-Test文件夹下的setup.exe安装Mote-Test。
  (2)从光盘/Crossbow Software/Mote Firmware目录下拷贝MICA2_TEST_315、MICA2_TEST_433、MICA2_TEST_916、MICA2DOT_TEST_315、MICA2DOT_TEST_433、MICA2DOT_TEST_916文件夹到/apps目录下。
  (3)用电源给MIB510编程接口板供电,并通过串口与计算机相连。首先,在MICA2上装载测试固件(Test Firm-ware)。
  (4)运行cygwin,进入MICA2_TEST_XXX目录(XXX是频率,本实验中使用的是MICA2_TEST_916)。
  (5)键入MIB510=COM1 make mica2 reinstall,在待测试的传感器节点上装载测试固件,如果装载成功,按下编程板上的RESET按钮后会看到LEDs闪烁,验证了编程接口板和计算机串口工作正常。
  (6)设置Mote-Test检测传感器节点。运行Mote-Test,在窗口中点击GONFIGURE 按钮,弹出一个配置对话框。在其中选择正确的端口号(这里是COM1)。MICA2固件配置的波特率是57 600,默认的包大小是36,UART CRC设置为不可用。一旦配置好,按下SET NOW 按钮,主屏幕就会弹出。
  (7)接下来验证传感器节点硬件工作是否正常。Mote-Test允许使用插在MIB500/MIB510上的一个MICA2或MICA2DOT节点来创建一个基站或PC的串行网关,用来测试和演示2个传感器节点间的双向无线通信,也可以验证传感器硬件和计算机串口是否工作正常。
  ①使用一个装载过MICA2_TEST_916固件、电池供电的传感器节点作为测试无线通信功能的远程节点。
  ②将一个装载过MICA2_TEST_916固件的传感器节点插到编程接口板上,称此节点为基站。基站的频率要和远程节点相同。
  ③将MIB510编程接口板通过串口连到计算机。
  ④按下SELF TEST按钮,选择好测试对象后,将远程节点放在距离基站大于0.6米的地方。
  ⑤运行MICA2硬件验证测试,按下START TEST按钮。
检测后,输出结果如图2所示。

  从图中可以看出,若Memory检测成功,MEM OK绿灯亮;Battery检测电池电量大小;RSSI测试有2个值,可以显示远端节点与基站的连通性。若RSSI值小于-80.00将显示FAIL,但这并不意味着节点无线通信失败,可能因为MICA2节点距离基站太远,可以通过缩短MICA2节点与基站间距离来改善RSSI值。在本实验中,RSSI实际测得的数据分别为-64.50和-61.88,说明连通性较好。Serial ID NUMBER显示本地传感器节点的硬件序列号。当各项状态都正常时,最上面的PASS绿灯亮。传感器硬件测试完成后,就可以根据需求自己编写程序,通过编程接口板加载到传感器上,实现无线传感器网络的各种功能。
3  结论及下一步工作
  本文介绍了如何搭建无线传感器网络实验平台以及在此平台上的系统验证。内容涉及无线传感器网络的结构和发展前景、传感器节点的硬件测试、传感器节点间无线通信等。在此实验平台上,可以编写应用程序(Nesc和Java程序)完成传感器网络的各种功能。
  下一步的工作是在该实验平台上研究具体的无线传感器网络协议,需要解决如下问题:(1)无线传感器网络中的定位和同步问题。(2)研究网络层协议中的路由算法。(3)研究传感器网络的管理问题。
参考文献
1   李建中,李金宝,石胜飞.传感器网络及其数据管理的概念、问题与进展.软件学报,2003;14(10)
2   任丰原,黄海宁,林闯.无线传感器网络.软件学报,2003;14 (7)
3   http://www.xbow.com/Support/Support_pdf_files/UISPHELP.pdf.UISP,MoteProgramming,and Mote Fuse Help Guide version 20030315.Crossbow Technology Inc,2003

时间: 2024-09-18 20:47:18

【转】无线传感器网络实验平台的实现的相关文章

基于JSP技术的网络教学平台设计

js|设计|网络 摘要 网络教学平台是面向教师和学生的网络教学系统,采用JSP+XML+SQL Server开发,对该平台的体系结构.功能进行了详细的分析,并介绍了设计中所采用的关键技术. 关键词 网络;三层结构;教学平台;JSP;流媒体 引言 随着计算机技术的飞速发展,信息网络已成为社会发展的重要保证.如何以网络为纽带快速.高效.方便地实现知识传递,以现代化手段促进教学改革,将传统的课堂教学转变为课堂+电脑+网络课堂+internet等多种学习方式,是教育工作者应当为之努力的方向.基于JSP技

无线传感器网络标准化进展与协议分析

无线传感器网络作为一门面向应用的研究领域,在近几年获得了飞速发展.在关键技术的研发方面,学术界从网络协议.数据融合.测试测量.操作系统.服务质量.节点定位.时间同步等方面开展了大量研究,取得丰硕的成果;工业界也在环境监测.军事目标跟踪.智能家居.自动抄表.灯光控制.建筑物健康监测.电力线监控等领域进行应用探索.随着应用的推广,无线传感器网络技术开始暴露出越来越多的问题.不同厂商的设备需要实现互联互通,且要避免与现行系统的相互干扰,因此要求不同的芯片厂商.方案提供商.产品提供商及关联设备提供商达成

物联网无线传感器网络具有7个特点

无线传感器网络是一种无中心节点的全分布系统.通过随机投放的方式,众多传感器节 点被密集部署于监控区域.这些传感器节点集成有传感器.数据处理单元和通信模块,它们 通过无线通道相连,自组织地构成网络系统. 传感器节点借助于其内置的形式多样的传感器,测量所在周边环境中的热.红外.声呐.雷达和地震波信号,也包括温度.湿度.噪声.光强度.压力.土壤成分.移动物体的大小.速度和方向等众多人们感兴趣的物理现象.传感器节点间具有良好的协作能力,通过局部的数据交换来完成全局任务. 由于传感器 网络的节点特点的要求

轻松搭建网络办公平台:71BASE-OFFICE网络办公系统v1.3

网络|网络办公 搭建网络办公平台1 [ 作者:孙成 转贴自:本站原创 点击数:60 更新时间:2003-12-11 文章录入:tjrao ] 局域网中轻松搭建网络办公平台 网络迅速发展的今天,电子商务.电子政务在企业和机关单位迅速普及,网络办公已经成为现代办公的主流,它不但提高了员工的工作效率,而且减少了办公费用的支出,这种以网络为媒介的办公就是我们常说的"无纸办公",所有的日常工作以及员工间的相互协作都是在网络中完成的,下面我们就使用"71BASE-OFFICE网络办公系统

私自架起传奇私服,通过网络支付平台从中获利

卖毒品?走私?都不是,他们只是一款网络游戏的私服运营商. 昨日,这起被称为全国最大网络游戏私服类侵权案件在沈阳高新技术产业开发区人民法院开庭审理,庭审预计3天. 上海盛大网络发展有限公司是中国大陆唯一拥有热门网游<热血传奇>的网游运营公司,然而在盛大网络不知情的情况下,辽宁数家公司却私自架起传奇私服,通过网络支付平台从中获利. 作为盘锦久网通信网络有限公司.辽宁久网网络科技发展有限公司和盘锦新兴科技有限公司的总经理,被告人唐某2008年起在沈阳市和平区三好街百脑汇大厦招录了数十人,组织研发了四

一个小时玩转阿里云 | 免费的自助实验平台上线了

      告诉同学们一个好消息,阿里云的自助实验正式上线了 阿里云的自助实验课为同学们提供了一个真实的阿里云操作环境,你可以通过自助实验课中提供的各种小型实验, 快速掌握包括ECS.RDS等云产品的使用与操作.最重要的是这不是一个视频教学或帮助手册,而是完全实战的. 可以直接操作真实阿里云产品的实验平台.自助实验现在免费体验,活动截止时间3月底,想免费学要快哦!   看看一个励志于学习阿里云的女同学在使用自助实验后的变化吧~ 同学们可以按照以下步骤快速开启学习模式,也可以直接登陆 www.al

单播-一个非常纠结网络实验问题,求解惑(系统层丢包问题,网络通信原理)?

问题描述 一个非常纠结网络实验问题,求解惑(系统层丢包问题,网络通信原理)? 实验一: HOSTA :192.168.80.4/24 gw: 192.168.2.1 HOSTB : 192.168.188.86/16 gw: 192.168.2.1 1) A ping B 1.1) 交换机网络:无法PING通 分析:因为找不到直接路由项,所有数据包通过默认默认路由转发:因为网络中不存在默认路由指定的路由器,故数据在发送端就无法发送出去. 1.2) 网络中存在正确的路由配置:可以PING通. 分析

怎么做求帮助-基于Web的SQL Server数据库实验平台

问题描述 基于Web的SQL Server数据库实验平台 传统数据库课程实验教学存在课时安排不足.学生在课外实验又缺乏有效的指导和教师无法进行有效监督等问题.该题目要求实现一个基于Web的SQL Server数据库实验平台,使得学生能够在任何地点.时间通过 Internet 进行数据库相关的增. 删.改.查等数据库实验,同时教师可以布置数据库实验,监控和指导学生的实验等. 想知道用什么工具 怎么做呀 如何在internet上用sql语句进行相关的增删除改啊

毕业论文-求大神给个无线传感器网络基于rssi测距的加权质心算法matlab代码的

问题描述 求大神给个无线传感器网络基于rssi测距的加权质心算法matlab代码的 急用代码-能不能给一点定位和目标跟踪的 解决方案 http://wenku.baidu.com/link?url=toEogyXL99LGEJaBMOVmDoYO9AsFkrc1U3bxa-PilQOZk6RjFVikigloEi0lqqRNBmgPLHUlYBqLKu23R5jLHn3rwckl5NmdAOP47VEFf5S 解决方案二: 求大神-必谢谢-407883995微信号