导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→基于CC2431的Zigbee定位算法剖析[原创][老施看无线]

 *第20725篇: 基于CC2431的Zigbee定位算法剖析[原创]

  
楼 主:老施看无线 2008年11月21日23:23
 基于CC2431的Zigbee定位算法剖析[原创]
1. Zigbee简介
1.1 Zigbee是什么Zigbee是一个由可多到65535个无线数传模块组成的一个无线数传网络平台,十分类似现有的移动通信的CDMA网或GSM网,每一个Zigbee网络数传模块类似移动网络的一个基站,在整个网络范围内,它们之间可以进行相互通信;每个网络节点间的距离可以从标准的75米,到扩展后的几百米,甚至几公里;另外整个Zigbee网络还可以与现有的其它的各种网络连接。例如,你可以通过互联网在北京监控云南某地的一个Zigbee控制网络。

不同的是,Zigbee网络主要是为自动化控制数据传输而建立,而移动通信网主要是为语音通信而建立;每个移动基站价值一般都在百万元人民币以上,而每个Zigbee“基站”却不到100元人民币;每个Zigbee 网络节点不仅本身可以与监控对对象,例如传感器连接直接进行数据采集和监控,它还可以自动中转别的网络节点传过来的数据资料; 除此之外,每一个Zigbee网络节点(FFD)还可在自己信号覆盖的范围内,和多个不承担网络信息中转任务的孤立的子节点(RFD)无线连接。

1.2 Zigbee技术的应用领域Zigbee技术的目标就是针对工业,家庭自动化,遥测遥控,汽车自动化、农业自动化和医疗护理等,例如灯光自动化控制,传感器的无线数据采集和监控,油田,电力,矿山和物流管理等应用领域。另外它还可以对局部区域内固定或移动目标进行定位。

通常,符合如下条件之一的应用,就可以考虑采用Zigbee技术做无线传输:   

1.  需要数据采集或监控的网点多;

2.  要求传输的数据量不大,而要求设备成本低;

3.  要求数据传输可性高,安全性高;

4.  设备体积很小,不便放置较大的充电电池或者电源模块;

5.  电池供电;

6.  地形复杂,监测点多,需要较大的网络覆盖;

7.  现有移动网络的覆盖盲区;

8.  使用现存移动网络进行低数据量传输的遥测遥控系统。

9.  使用GPS效果差,或成本太高的局部区域移动目标的定位应用。

1.3 Zigbee 技术的特点省电:两节五号电池支持长达6个月到2年左右的使用时间  

可靠:采用了碰撞避免机制,同时为需要固定带宽的通信业务预留了专用时隙,避免了发送数据时的竞争和冲突;节点模块之间具有自动动态组网的功能,信息在整个Zigbee网络中通过自动路由的方式进行传输,从而保证了信息传输的可靠性 

时延短:针对时延敏感的应用做了优化,通信时延和从休眠状态激活的时延都非常短

网络容量大:可支持达65535个节点。

安全:ZigBee提供了数据完整性检查和鉴权功能,加密算法采用通用的AES-128。高保密性:64位出厂编号和支持AES-128加密。

2. 位置计算的实现
2.1系统介绍下面以上海无线龙/随乐电子科技有限公司提供的无线实时定位系统C51RF-CC2431-ZDK (下面简称ZDK) 为例,介绍如何利用Zigbee实现定位。

ZDK是一套建立在CC2430/CC2431平台上,基于Zigbee2006协议规范的无线实时定位系统。该系统以0.25m为无线定位分辨率。在监狱人员管理系统、集装箱运输跟踪系统、长距离RFID系统、车辆管理系统、人员管理系统、运动会运动员的计时计圈系统、城市公交智能站台、车辆调度的智能管理系统、列车/车厢自动抄号、调度管理系统、小区/工厂门禁系统等方面有广泛应用前景。


该系统以3-12个参考节点,构成一个最大区域为63.75X63.75米的无线定位网。参考节点之间,通过802.15.4/ZigBee无线通讯标准,保持无线联系,通过上位机软件可以实现对全部参考节点的无线参数配置。

2.2系统中的设备上图中是一个定位的典型布局和使用,下面通过该图讲解定位的实现过程,在图中右上角白色小圆点做为网关节点,该节点是整个网络的起始,在建立好网络以后,它就只要负责管理网络中的其他设备,并作为Zigbee和PC之间的桥梁。

黄色的小圆点在系统中作为参考节点使用,除了为盲节点提供坐标参考和信号强度值外,这些小圆点还要负责整个网络的通讯链路,它们每一个设备都具有路由的功能,所以它们也是一个路由器。每个参考节点都会有自己的坐标信息,这些信息是用来提供盲节点计算位置的重要参考依据。

红色的小圆点在系统中作为盲节点使用,这个设备可以为路由器,也可以为终端设备,可以根据具体的情况改变,使用路由器可以让实时性更好,使用终端设备可以做低功耗,让能源得到更合理的应用。

2.3盲节点坐标的计算流程和方法盲节点坐标的计算通过CC2431的定位引擎实现,这个定位引擎通过硬件计算出坐标值,然后放在相应的寄存器中,我们只需要提供定位引擎需要的参数就可以了。

首先,盲节点发起计算的请求,它会向附近的参考节点广播一个信息,参考节点接收到信息后会将此次通讯收获取的信号强度值收集,这样连续发生多次(一般是8次),然后参考节点会将这8次信号强度值求平均值,然后连同自己的坐标发送给盲节点。

盲节点收到这些信息后,选择三个或多于三个参考节点之中,信号最好的参考节点信息备用,然后再加入设置的A值和N值(A值:定位节点到一个参考节点一米之间通讯的信号强度值;N值定位节点远离参考节点一米后衰减的信号强度值)最后启动定位引擎,开始计算位置信息。

 

参考系统C51RF-CC2431-ZDK相关信息见


>>>>>>对该主题发表你的看法

本主题贴数1,分页: [第1页]


[上一篇主题]:电子无忧网免费赠送源代码开原理图大型公益活动[下载]

[下一篇主题]:[转帖]TDK推出高速16/32/64GB 1.8英寸microSATA固态驱动器