基于TinyOS的CC2430 RSSI定位的设计与实现

发布者:心灵舞者最新更新时间:2013-10-12 来源: eefocus关键字:TinyOS  无线传感器网络  RSSI 手机看文章 扫描二维码
随时随地手机看文章
无线传感器网络是由分布在给定区域内大量传感器节点以无线自组织多跳的通信方式构成的网络系统,目前在环境监测保护、楼宇监控、家庭安防、医疗护理、目标跟踪、军事等领域已获得了广泛的应用。

1 CC2430芯片介绍

CC2430芯片是TI/Chipcon公司生产的真正意义上的片上系统(SOC)级解决方案,它集增强型工业标准8051核心、优秀的射频芯片CC24 20、强大的外围资源于一体。集成的外设资源主要有DMA、定时/计数器、看门狗定时器、AES-128协处理器、8通道8~14位ADC、USART、休眠模式定时器、复位电路及21个可编程I/O,支持IEEE802.15.4和ZigBee协议。
CC2430芯片具有性能高、功耗低、接收灵敏度高、抗干扰性强、硬件CSMA/CA支持、数字化RSSI/LQI支持、DMA支持等特点,支持无线数据传输率高达250 kbps.

2 TinyOS系统与nesC语言

由于无线传感器网络的特殊性,需要操作系统能够高效地使用传感器节点的有限内存、低功耗处理器、多样传感器、有限的电源,并且能对各种特定应用提供最大的支持。
基于此,UC Berkeley研究人员专为嵌入式无线传感器网络开发出TinyOS系统,目前已经成为无线传感器网络领域事实上的标准平台。 TinyOS系统具有组件化编程、事件驱动模式、轻量级线程技术、主动消息通信技术等特点。TinyOS采用组件架构方式,快速实现各种应用,组件包括网络协议、分布式服务、传感器驱动以及数据获取工具等,一个完整的应用系统通过组合不同的组件来实现。采用事件驱动的运行模型,可以处理高并发性的事件,并实现节能。

TinyOS应用程序通常由顶层配件、核心处理模块和其它组件构成。每个应用程序有且仅有一个顶层配件,组件间通过接口进行连接通信,下层组件提供接口,通过provideinterface interfaceName来声明,上层组件使用接口,通过useinterface interfaceName来声明。接口提供两类函数,分别是命令(command)函数与事件(event)函数,上层组件向下层组件发出命令,启动下层组件的功能:下层组件完成相应的功能后向上层组件报告事件。应用程序总体框架如图1所示。

TinyOS系统本身以及应用程序都是采用nesC语言编写,nesC语言是对C语言的扩展,具有类似于C语言的语法,但支持TinyOS的并发模型,同时具有组件化机制,能够与其他组件连接在一起从而形成一个鲁棒性很好的嵌入式系统。nesC语言把组件化/模块化的编程思想和基于事件驱动的执行模型紧密结合起来。应用nesC语言能够更快速方便地编写基于TinyOS的应用程序。

3 RSSI定位原理

RSSI全称Received Signal Strength Indicator(接收信号强度指示),是一种基于距离的定位算法。RSSI原理是已知发射节点的发射信号强度,接收节点根据接收信号的强度,计算出信号在传播过程中的损耗,利用理论和经验模型将传输损耗转化为距离,再根据接收节点的已知位置利用三边测量法计算出发射节点的位置。由于该方法不需要额外的硬件设备,是一种低功耗廉价的测距技术,因此在很多项目中得到了广泛的应用。

本文在RSSI定位基础上使用质心算法提高定位精度,如图2所示,最后求得的盲节点坐标为点D、E和F组成的三角形的质心。
[page]


4 定位算法在TinyOS中的实现

根据RSSI测距原理,要确定盲节点的位置,至少需要三个锚节点(已知位置的接收节点),并需要一个汇聚节点来传输各锚节点的RSSI寄存器值到PC机,最终通过串口调试助手来显示结果并进一步定位盲节点坐标。下面分别介绍移动盲节点、静态锚节点以及汇聚节点的实现流程。

4.1 盲节点

盲节点的主要任务是向所有锚节点广播信息,具体的流程如图3所示。

Tiny OS程序顶层配件主体如下:


4.2 静态锚节点

锚节点主要功能是接收盲节点的广播信息,然后提取RSSI寄存器中的值,通过路由层发送接口转发给汇聚节点,或转发其它锚节点的数据给汇聚节点。主要实现流程如图4所示。

锚节点的组件连接如下:

静态锚节点通过CC2420Packet接口来获取RSSI值,具体函数如下:
rssi=((int)call CC2420Paeket.getRssi(msg));

4.3 汇聚节点

汇聚节点,也称为基站,主要负责接收各锚节点发送的接收表信息,包括锚节点ID、DSN和RSSI,并将这些数据包通过串口转发到PC机。具体流程如图5所示。
[page]
汇聚节点组件连接如下:


4.4 程序移植与实验结果

本实验在Cygwin平台下进行编译与移植,编译过程如图6所示。

图6 TinyOS编译流程图

进入Cygwin环境,切换到TinyOS定位程序目录下,输入编译移植命令:

make cc2430em install NID=0x GRP=00

其中NID是节点号,是节点的身份标识,同一网络中的节点号必须惟一;GRP是网络号,同一网络中所有节点的网络号必须一致。

在所有节点的TinyOS移植完毕后,启动所有节点,应用串口调试助手显示汇聚节点发送到PC机的RSSI数据,数据结构如图7所示,其中1~7个字节数据为信息包的包头,8~9两字节为中继锚节点的节点号,10~11两字节为源锚节点的节点号,12~13字节为源锚节点到汇聚节点的跳数,14~15字节为盲节点的节点号,21~22两字节数据为锚节点的RSSI值。

图7 锚节点RSSI值

在确定PC机能够正确接收各锚节点的RSSI值后,还需要选取合适的RSSI测距信号衰减模型,将RSSI值转化为距离。本实验中采用在无线信号传输中应用广泛的对数--常态模型,如式(1)所示:

RSSI=-(10n·lg(d)+A)+45 (1)

其中A为盲节点与锚节点相距1米时RSSI的绝对值,本实验中测得A≈40,n为无线信号传播指数,一般取2~4,经过多次试验取3.0较为合适。将本模型应用在所测得的RSSI中,并对比实际距离得到如表1和图8所示结果:表1中d为RSSI理论模型所得距离,D为实际测量结果。

表1 RSSI值与距离的转换

图8 RSSI测距模型验证

在实验室环境下布置了4个锚节点、1个汇聚节点和1个盲节点,4个锚节点分布在4.8x3.6 m2矩形的4个点,盲节点位于矩形区域内,汇聚节点在矩形区域外。

读取如图7所示的各锚节点RSSI值,在Matlab环境下通过对数--常态传播模型将RSSI值转变为距离,最后通过质心算法对盲节点进行定位,计算出盲节点的坐标。在实验中采用10次测量取平均值来减小定位误差,并计算对比盲节点理论坐标与实际坐标的误差,得到如图9所示的定位结果。

图9 RSSI定位结果

通过定位算法计算出的盲节点坐标为(2.483 1,1.018 5),实际盲节点坐标为(2.4,1.2),误差为0.199 6 m,基本实现了对盲节点的定位。

5 结论

本文在TinyOS操作系统下实现了基于CC2430模块的RSSI定位,分析了盲节点、锚节点和汇聚节点的工作流程,确定了实验室条件下无线传输模型Shadowing模型参数,最后利用Matlab计算出盲节点坐标。定位结果显示,通过定位算法所得的盲节点坐标与实际坐标误差为0.199 6 m,可满足大多数无线传感器网络对节点定位的要求。

关键字:TinyOS  无线传感器网络  RSSI 引用地址:基于TinyOS的CC2430 RSSI定位的设计与实现

上一篇:基于AVR的“三电”测量仪表设计
下一篇:基于GSM的新型智能车牌报警系统设计

推荐阅读最新更新时间:2024-03-16 13:28

用于矿井环境监测的无线传感器网络
   摘 要: 提出了利用无线传感器网络进行矿井环境探测的方法,给出了适用于矿井环境探测的无线传感器网络的网络框架、拓扑结构和网络协议。   在矿井环境监测中通常需要对矿井风速、矿尘、一氧化碳、温度、湿度、氧气、硫化氢和二氧化碳等参数进行检测。现有的监控检测系统需要在矿井内设通信线路,传递监测信息。生产过程中矿井结构在不停变化,加之有些坑道空间狭小,对通信线路的延伸和维护提出了很高的要求。一旦通信链路发生故障,整个监测系统就可能瘫痪。为解决上述问题,本文提出使用无线传感器网络来进行矿井环境的监测监控。使用无线传感器网络进行环境监控有三个显著的优势:(1)传感器节点体积小且整个网络只需要部署一次,因此部署传感器网络对监控环境的人为
[安防电子]
用于矿井环境监测的<font color='red'>无线传感器网络</font>
无线传感器网络时间同步协议的实现
    本文主要是以高速运动目标的监测系统为研究背景,该监测系统是将多个ZigBee节点布设在监测区域(移动目标可能出现的区域),其中心节点和路由节点一直处于丁作状态;其他的节点在没有任务时,设定唤醒时间后进入休眠状态。最终各个传感器节点通过不同跳转路径将数据汇总到中心节点,由中心节点进行处理或者通过网关将数据传送到其他设备再进行处理。整个系统的网络示意图如图1所示。     本系统中由于目标的运动速度非常高,目标的具体位置和状态需要由多个ZigBee节点共同协作来工作,所以针对系统的时间同步研究是非常的重要。而导致时间同步的因素很多,除了发送时间、访问时间、传送时间、传播时间、接收时间、接受时间会影响网络时间的同步,还有就是
[嵌入式]
无线传感器网络在车位控制中的应用研究
  1  引言    无线传感器网络是一种全新的信息获取和处理技术,在现实生活中得到了越来越广泛的应用。随着通信技术、嵌入式技术、传感器技术的发展,传感器正逐渐向智能化、微型化、无线网络化发展 。目前,国内外主要研究无线传感器网络节点的低功耗硬件平台设计拓扑控制和网络协议、定位技术等。这个设计以检测超声波强度的传感器为例,实现了一个无线传感器网络,根据传感器所检测的超声波强弱来决定开启或关闭车位指示灯,从而判断是否有车辆进入检测区域。这种传感器网络综合了嵌入式技术、传感器技术、短程无线通信技术,有着广泛的应用。该系统不需要对现场结构进行改动,不需要原先任何固定网络的支持,能够快速布置,方便调整,并且具有很好的可维护性和拓展性。
[工业控制]
无线传感器网络节点的设计与实现
无线传感器网络是信息技术发展到一定阶段后出现的一种聚合传感器、嵌入式、现代网络以及无线通信、分布式信息处理等多种综合性的技术。传感器网络能够广泛用于军事、环境监测和预报、健康护理、智能家居、建筑物状态监控、复杂机械控制、城市交通、空间探索、大型车间和仓库管理,以及机场、大型工业园区的安全监测等领域。文中设计了一种无线传感器节点,硬件设计基于Moteiv方案,采用超低功耗单片机MSP430F1611作为数据处理芯片,以CC2420无线射频芯片作为收发芯片,并拥有JTAG以及其他扩展接口。通过硬件测试以及软件调试该节点符合设计指标。 1 系统概述 无线传感器网络由大量无线传感器节点组成,每个节点由传感器采集数据,数据处理芯片负责接
[单片机]
<font color='red'>无线传感器网络</font>节点的设计与实现
基于ZigBee无线传感器网络的工业废气监控系统
  摘要: 结合ZigBee无线短距离通信技术,提出一种应用于工业废气监控的无线传感器网络系统架构。该方案网络节点硬件电路以ATmega128L 为控制器、CC2430为射频收发器,详细规划了网络中节点硬件设计与软件设计,并对网络中数据安全通信进行了充分考虑。该系统利用遗传聚类思想实现监测节点能量均衡消耗,具有低成本、低功耗、易扩展、安全性高等特点,能实时监测工业环境空气中废气含量,可广泛应用于工业生产领域中工业废气监控。   0 引言   大气污染物可分为天然污染物和人为污染物2种,而引起公害的往往是人为污染物,于燃料燃烧和大规模的工矿企业的气态污染物是大气污染的重要之一。随着我国工业化和城市化进程的不断发展,我国空气污染的
[单片机]
基于ZigBee<font color='red'>无线传感器网络</font>的工业废气监控系统
凌力尔特无线传感器网络被Advantech的M2.COM物联网传感器选中
加利福尼亚州米尔皮塔斯 (MILPITAS, CA) 2016 年 10 月 3 日 凌力尔特 (Linear Technology Corporation) 宣布作为嵌入式和自动化产品与解决方案的领先供应商 Advantech 选择了凌力尔特的 SmartMesh IP 无线网格技术,利用 Advantech 的新型标准化 M2.COM 传感器平台以实现可靠的低功率工业 IoT 应用。 M2.COM 平台把无线技术、微控制器单元 (MCU) 和网络能力与一个用于传感器的标准化接口组合在一起。在该平台上引入 SmartMesh IP 网格网络将为客户提供把无线网格通信嵌入其工业 IoT 解决方案的机会。SmartMesh I
[物联网]
基于无线传感器网络的油田数据采集网络设计
0 引言 随着石油资源逐渐开采,可用油资源日益紧缺,并且随着人类社会经济发展,石油消耗量日益增大。在这样的形势下,对现有石油资源进行科学采集、提高开采利用率显得愈发重要。 普通采油厂一般由多口油井、计量站、管汇阀组、转油站、联合站、原油外输系统、油罐以及油田的其他分散设施组成,整个采油厂的各种设施的工作状态及采出油品的数据(主要有温度、压力、流量等)直接关系到油田生产的稳定及原油质量。 数字油田是将油田中所有的事物(盆地、地面、井中、油藏)全部抽象为逻辑数字,通过高性能计算机多元异构的全面处理(运算、模拟、建设平台和存储),从而可以对油田地上、地下做完整的表征和直观的展示。 也就是说能够用数字展示和表述全部油田事物
[嵌入式]
基于Atmel的无线传感器网络节点的研究与实现
  无线 传感器 网络是新兴的研究领域,在军事、环境、健康、家庭、商业领域等许多方面有着巨大的潜在应用前景。无线传感器网络节点是组成网络的基本单元,无线传感器网络的迅速发展,给无线传感器网络节点的设计和管理提出了许多挑战。    无线传感器网络节点   无线传感器网络是集数据采集、处理及通信功能于一体的分布式自组织网络。无线传感器网络由在一定区域范围内的多个具有无线通信、传感、数据处理功能的网络节点组成。传感器节点负责采集、处理、压缩数据、中转其他节点的数据包并将数据包发送出去。在不同的应用中,传感器网络节点的结构不尽相同,一般由数据采集单元(传感器、A/D 转换器 )、数据处理和控制单元( 微处理器 、存储器)、无线通信单元
[测试测量]
基于Atmel的<font color='red'>无线传感器网络</font>节点的研究与实现
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved