2.4 节点功能模块设计
(1)供电电路
基于ZigBee技术的定位系统节点有多种用电特点,本文的供电电路设计了直流供电和电源直接供电模块供电两种方式[9]。如图9所示:电池供电直接用两节电池就可以。而直流电源功能供电是SV供电,用电压转换芯片AMS1117-3.3输出3.3V的电压,它还可以提供500mA的电流。
图9 供电模块电路图
(2)串口转换电路
为了满足设计的工作电压需求(3V-5.5V),本文使用MAX3232双通道转换芯片,它的主要功能是用于计算机和网关之间的串口电压转换。
(3)状态指示电路
定位节点状态指示需要指示灯和蜂鸣器。指示电路分别如图10、图11。
图10 蜂鸣器电路
图11 状态指示灯电路
在整个室内定位系统中,除了以上的集中功能模块电路,还有JTAG下载电路、按键电路、复位电路与状态指示电路[10]。
3. 数据传输
3.1 网关与节点间的无线通信
网关与节点间的无线通信是通过发送命令实现的。在本文中网关(协调器节点)和参考节点都是用CC2430实现,定位节点用CC2431实现,所以这个通信过程相当于芯片间的通信。
(1)网关到节点通信方式是广播,发送函数如下:
AF_dataRequest(&SampleApp_Alles_DstAddr, //发送的模式:广播
&SampleApp_ epDesc, //发送的地址:OXFFFF
SampleApp_CLUSTERID2, //发送节点的串ID
10, //发送数据长度
BUFFER, //发送数据内容
SampleApp_tRANSID,
AF_DISCV_ROUTE,
AF_DEFAULT_RADIUS)==atSatatus_SUCCESS
(2)节点到网关的通信函数如下:
AF_dataRequest(&SampleApp_Alles_DstAddr, //发送的模式:广播
&SampleApp_ epDesc, //发送的地址:OX0000
SarnpleApp_CLUSTERID1, //发送节点的串ID
Leng, //发送数据长度
BUFFER, //发送数据内容
&SampleApp_tRANSID,
AF_DISCV_ROUTE,
AF_EFAULT_RADIUS)==atSatatus_SUCCESS
3.2 网关与计算机之间的串口通信
图12所示协调器节点与计算机的通信流程图。
无线网络与计算机之间的通信(通过串口回调函数),在本文中相当于协调器节点与计算机之间的通信。
图12 协调器通信流程
4. 基于RSSI 的算法及MATLAB仿真
4.1 基于RSSI的测距原理
信号强度算法的测距原理是传播信号随着传播距离的越来越远传播信号的强度越来越弱的衰减规律,那么就可以根据信号强度的测量结果来估算出物理距离[11]。在理论上,按照物理学中的能量法则,能量强度随着距离的扩大衰减。建立了对数距离路径损耗模型,其数学表达式如下式1: ZigBee室内定位系统的研究与设计+RSSI的算法及MATLAB仿真(5):http://www.751com.cn/zidonghua/lunwen_908.html