打开文本图片集
摘 要:随着人们对无线传感器网络的深入研究,其应用逐渐深入到人们生活的各个领域,扮演重要的角色,该次系统是基于rssi的锚节点定位法,对无线传感网络进行研究和设计,使用cc2530作为主芯片模块,实现信号的发送与接收,然后在电脑终端显示出接收到的数据的信号强度,用单片机处理终端记录到的信号强度,然后在显示器上显示发送端与接收端的距离,最后通过给定的公式计算出发送端的坐标,应用前景广泛。
关键词:rssi 定位 cc2530
中图分类号:tn929.5 文献标识码:a 文章编号:1672-3791(2015)11(c)-0001-02
无线传感器网络(wsn)是一种分布式传感网络,它的末梢是可以感知和检查外部世界的传感器。wsn中的传感器通过无线方式通信,因此网络设置灵活,设备位置可以随时更改,还可以跟互联网进行有线或无线方式的连接。通过无线通信方式形成的一个多跳自组织网络。wsn广泛应用于军事、智能交通、环境监控、医疗卫生等多个领域。无线传感器网络的诸多应用都与节点信息相关,如定位系统,对于节点定位方面,可以采用少量锚节点来辅助对未知节点的自身定位的方案,用基于rssi的定位方法,实现基本的定位功能。
1 rssi理论基础
经过多年的研究,诸多的节点自定位算法已经被提出,由于每一种算法都有适用的环境,因此目前并没有一种通用的定位算法,其中rssi定位算法优势比较明显,因为其大多数的节点都有rf发射能力,成本低廉、能耗低,因此很多的应用都是基于rssi来进行距离测算的,同时要注意的是为了使测距误差大大降低,提高rssi测距的精确度,通常会设计一些滤波器来辅助测量。目前在无线传感器网络中使用的定位算法主要有以下几种分类方式:(1)基于测距的定位和无需测距的定位。(2)集中式计算的定位与分布式计算的定位。(3)静态网络节点的定位和移动网络节点的定位。
2 系统总体设计
系统总体本着可靠、安全、灵活的原则进行设计,遵循发送-接收-数据处理-计算坐标值的过程,注意实现每一个模块环节的最佳优化配置。
2.1 定位算法
可以采用是三角质心算法(图1、图2),这种算法的优点是可以减少rssi定位的误差。
如图1,a、b、c为锚节点,d是待测节点,由rssi模型计算出a、b、c三点到d点距离分别为ra、rb、rc,再以ra、rb、rc为半径,对应以a、b、c为圆心画圆,可得到3个圆相交的区域。这里的三角质心算法的基本思想:在这交叠区域内,以任意2个圆的交点为特征点,如图2的e,f,g 三个点即为特征点,其中n与m点分别为三边测量法求出的被测点坐标与三角质心算法求出的被测点坐标,由此可见,三角质心算法得出的被测点的坐标更为准确。然后,通过这3个特征点计算出被测节点d 的坐标。特征点的计算方法为≤ r,其中x,y为圆心坐标,r为半径,同样的方法可以计算出f点,g点的坐标,此时被测点的坐标为式:而该设计是线形的锚节点,可将3个锚节点形成的线看作为一个特殊的三角形,建立数学模型如图3所示。
d点为被测点,a、b、c为3个锚节点,呈线形分布,可通过rssi模型测出a、b、c三个锚节点到被测点d的距离,分别为ra、rb、rc,再以a为圆心ra为半径画出圆a,同理画出圆b,圆c、d点正好为三个圆的交点,满足对特征点计算的条件,通过特征点求出d点坐标,这样算的优点在于通过三个特征点求出的被测点d点的坐标误差会减小很多。
2.2 硬件选择
信号传输模块主芯片选用的是cc2530芯片的模块。cc2530 是用于2.4-ghz ieee 802.15.4、zigbee和rf4ce应用的一个真正的片上系统(soc)博天堂手机app的解决方案。它能够以非常低的总的材料成本建立强大的网络节点。cc2530 结合了领先的rf 收发器的优良性能,业界标准的增强型8051 cpu,系统内可编程闪存,8-kb ram 和许多其它强大的功能。cc2530具有不同的运行模式,使得它尤其适应超低功耗要求的系统。运行模式之间的转换时间短进一步确保了低能源消耗。数据处理模块可选用单片机stc89c52进行模块设计。液晶显示模块该次选用的是选择1602液晶显示器。串口通信模块选用rs232标准u转串模块。
2.3 软件设计
软件程序设计使用c语言,使系统的各个模块功能清晰易懂,有利于以后的修改,功能非常强大。单片机的程序设计采用c语言配套keil软件。cc2530芯片则使用iar embedded workbench软件来进行程序编写、调试、写入。
如图4所示,首先在电脑平台与单片机连接好后,向单片机传输从信号接收端接收到的rssi值,单片机接收到rssi值后进行数据处理,可以利用公式a),其中n为信号传播系数;d为与发送者的距离;a为距发送者1 m时的信号强度,即传输单位长度的信号强度。rssi测距精度的高低是由n与a实际取值大小来决定的。了使a值精确,可多次测量然后求平均值。对于n值来说,可以先放置好所有的参考节点,然后尝试用不同的n_index值找到最适合这个具体环境的n值。单片机将计算得出的距离数值通过电路传给液晶显示器(该系统选用1602液晶屏),显示数值后,液晶显示器进入等待状态,手动记录距离数值后,如果还有rssi值在处理中,则继续等待显示下一个rssi值的完成,待所有rssi值处理完毕后,则可以关闭单片机,结束该模块单元的处理过程。
发送接收模块程序设计如下。
如图5所示,系统开始运行后,发送端cc2530通过芯片内部的32 mhz的晶振产生信号,然后将产生的信号发送出去,信号成方波形式,在高电平是有效,从而能通过延时不断的向接收端发送信号。如图6所示,系统开始运行后,接收端开始接收发送端发送的信号,将接收的信号进行处理,根据接收到信号的强弱产生rssi值,再将产生的rssi值取平均得出该点的最终rssi值,把得出的最终rssi值存入cc2530芯片的寄存器中以供pc机读取。然后,pc机通过串口将接收端寄存器中的rssi值逐一读取出来,在pc机上显示读出的rssi值,大约20到30 s后,rssi值趋于稳定。整个系统完成后,对以上软硬件进行调试运行,可依次得到所需测量的数值。
3 结语
该文对经典rssi测距模型进行了简单的介绍,通过理论分析和设计实现,将rssi测距定位很好的运用到实际的系统中,为锚节点定位如何结合实际系统来实现进行了简单的设计启发,当然,在设计过程中还有不足之处,需要进一步完善。随着无线传感器网络技术的普及和深入,更深更宽更广的领域将会进一步的被开发。
参考文献
[1]朱敏,高弘博,肖震,等.wsn中一种基于虚拟锚节点的va-rssi定位算法[j].四川大学学报:工程科学版,2013(11):110-114.
[2]石为人,熊志广,许磊.一种用于室内人员定位的 rssi 定位算法[j].计算机工程与应用,2010(17):232-235.
[3]周立君,刘宇.基于rssi的无线传感器网络节点定位技术研究[j].电子测量技术,2010(8):115-118.
[4]郑学理,付敬奇.基于pdr和rssi的室内定位算法研究[j].仪器仪表学报,2015(5):1178-1185.
[5]刘雪兰,王宜怀,陆全华,等.无线传感器网络定位算法的改进[j].2013(11):87-89.
推荐访问: