物联传媒 旗下网站
登录 注册
RFID世界网 >  技术文章  >  其他  >  正文

基于nRF2401光线收发模块和超声波技术的精确定位系统的研制

作者:RFID世界网 茗澜
来源:RFID世界网
日期:2007-05-23 14:21:20
摘要:本系统的特点是电子系统复杂性低,容易实现且成本低;定位精度高,容错性能好;定位信标体积小,可以附着在任何需要定位的移动或不移动物体上;除了被定位物体策动定位请求外,还允许外部网络策动定位请求和监控被定位物体。
随着计算机技术和无线电通信技术的发展,普适计算(Ubiquitous Computing)将被应用在各种领域,融入到人们的日常生活中,提高人们的生活质量和水平。普适计算的一个前题条件是必须获取普适计算对象的位置信息,这个位置信息依据普适计算的不同应用,可以是基于区域范围的,也可以是基于精确坐标的。 

有很多定位技术都可以对物体进行定位,但适合普适计算要求的、对多个移动物体精确定位的、电子系统复杂性低的技术却并不多。普适计算的应用环境一般在室内,并且要求定位精度达到厘米级,定位系统必须能很方便地在空间布置。基于无线收发模块和超声波技术的精确定位系统是一种可行的适合普适计算要求的定位系统。本系统的特点是电子系统复杂性低,容易实现且成本低;定位精度高,容错性能好;定位信标体积小,可以附着在任何需要定位的移动或不移动物体上;除了被定位物体策动定位请求外,还允许外部网络策动定位请求和监控被定位物体。 

1 定位系统的组成 

定位系统的组成如图1所示。超声波信标节点由无线收/发模块、MCU、超声波发射头、与被定位物体通信的接口和电源等组成;传感器节点(即普通节点)由无线收/发模块、MCU、超声波接收头和电源等组成;而中心节点则由无线收/发模块、DSP、与外部网络(可用于策动定位请求和监视追踪目标)的接口等几部分组成,具有极强的计算能力,用于控制定位系统中超声波发射和接收的同步。每个普通节点的空间位置在这个定位系统构筑期间已经确定,并存储在中心节点内。定位请求可以由外部网络通过中心节点发起,也可以由被定位物体通过其附着的超声波信标节点发起,分别如图2和图3所示。定位请求的主要内容是被定位物体的ID。 

无论是谁发起的定位请求,当中心节点收到定位请求时,马上以广播方式发布定位公告(内容包含被定位特体的ID和发起源标志)。超声波信标节点收到与其所附物体相同ID的定位公告后,马上发射超声波信标;而普通节点i(1<i<n)收到定位公告后,便启动计时器并接收超声波信号。普通节点一旦接收到超声波信号马上停止计数器,此刻计时器对应的时间ti就是该普通节点测得的超声波收发时间差。每个普通节点把它所测得的时间差发送给中心节点,由中心节点来完成定位计算。 

2 定位算法 

定位算法是在定位系统的中心节点完成的。超声波的传播速度为: 

  

式中,T为环境摄氏温度。 

假定被定位物体的三维坐标为(x,y,z)和至少有四个传感器节点不在同一平面上,则被定位物体到传感器节点的距离为: 

  

很明显,(2)式是一组非线性超定方程,被定位物体的三维坐标估计值可用最小二乘法求出: 

  

可以证明,只要每个传感器节点对V·ti的测量误差都满足N(0,σ2)且相互独立,则(3)式的结果是最大似然估计。随着n的增加,它将是无偏估计。 

3 定位系统的具体设计与实现 

考虑到低成本和小型化的需要,本系统选用Nordic VLSI公司的单片无线收发模块nRF2401构成无线传感器网络。该模块工作在2.4~2.5GHz的ISM频段上,典型输出功率为0dBm,接收灵敏度为-90dB,无线传输距离为30~40m,这与20m左右的超声波测距能力相当。该模块是收/发半双工的,总共125个频道,频道可以编程设置,频道间隔为1MHz,频道切换时间<200μs,还可以对同频道上工作的模块进行编址。该模块支持ShockBurst工作模式,即利用片上FIFO,无线收/发的数据速率可达1Mb/s,而无线收/发模块与MCU的数据交换速率则可以是低速的,如10kb/s。这样做的好处是减少了无线电波发射时间、降低了能耗和空中无线电波发生冲突的机会,另外也降低了对MCU的速度要求。该模块还支持DuoCeiver模式,通过一根天线同时接收两个频道的数据(第一个频道可收可发,设为CH1;第二个频道只收到发,且必为CH2=CH1+8MHz),并且两路数据独立地以三线制方式输出。其它参数和功能可参见参考文献。 

依据无线收发模块的上述功能和参数以及定位系统所要达到的功能,本系统的无线通信用简单的单跳直接通信(包括上行和下长),因此网络层相对比较简单;由于收发模块的半双工工作模式和无线电信道的竞争,本系统的媒体介入层(MAC)较复杂,如图4所示。 

中心节点的第一频道设置为CH1,并且半双工可发可收,而第二频道(必为CH2=CH1+8MHz)设置为可收,但两个频道平时都在收状态。普通节点的第一频道设置为CH1,并且半双工可发可收,而第二频道(必为CH2=CH1+8MHz)不用。普通节点平时处在收状态,而在需要送时,普通节点依据预定义的时隙(与其ID关联)时分发送(TDMA)。信标节点的第一频道设置为CH1,而第二频道必为CH2=CH1+8MHz),平时都设置为收状态。当信标节点定位请求时,它的无线收/发模块的第一频道(因为只有第一频道才能发)被重配置为CH1+8MHz,与中心节点和其它处在收状态的信标节点的第二频道相对应。这样做的真正目的是为了不干扰中心节点可能同时在CH1上发的由外部网络策动的定位公告,保证外部网络的定位请求优先,而不与移动物体的定位请求竞争。定位请求发送完毕后,第一频道恢复为CH1,此时第二频道也恢复为CH2。很显然,信标节点的第二频道为CH2时,可用于监听别的信标节点的定位请求。 

即使这样,信标节点发出定位请求后仍然可能发生碰撞,而收不到相应的定位公告。其原因有二:其一是由无线收/发模块半双工的工作方式造成的,信标节点在发定位请求的同时,中心节点正在发外部网络策动的定位公告;其二是无线电波碰撞,两个或多个信标节点同时发定位请求。为有效解决这个问题,本系统规定信标节点在发出定位请求后的一段时间内收不到与其对应的定位公告时,随机延迟若干个定位周期,在其C上和C虎上均未监听到信号后,重发定位请求。随机延迟定位周期数的取值范围依据系统的信标节点数量(或者最大可容纳的数量)和正常情况下一个信标节点被请求定位的频度来确定。 

在特殊情况下,无线收/发模块半双工的工作方式还会造成中心节点在发出外部网络策略的定位公告后系统收不到超声波信标,也就是中心节点发外部网络策动的定位公告的同时,与这个定位公告对应的被定位物体正在发定位请求。发生这种情况的概率极低,信标节点的处理方法同上(因为信标节点也收不到对应的定位公告),而中心节点在等不到超声信标后,出现空闲时就重发定位请求。 

4 超声波收发时间差的修正 

为了准确地测出被定位物体的精确坐标,超声波的收发时间差必须测得非常准确。 

在普通节点中定时器获得的时间差是T’7-T3。很明显,这不是超声波所测距离的传播时间,真正的传播时间应为T’5-T’4。测出每一步的时延,然后再计算出超声波所测距离的真正传播时间是复杂和不现实的。只要让普通节点的超声波接收头与信标节点的超声波发射头零距离,运行一次,读取普通节点中定时器的值t校正,则系统正式运行时,超声波所测距离的真正传播时间为: 

t’i=ti-t校正 (4) 

用t’I代替(2)式和(3)式中的ti,经过计算将得到更准确的被定位特体的坐标。 

5 实验结果和结论 

很显然,本系统可以独立存在和运行,可以广泛应用于其它需要精确度定位的系统中。图5显示了一个定位目标使用本系统测定位置时,测量值和实际值之间的距离差;实验结果表明本系统达到了设计目标。影响定位精度的因素主要来源于应用环境的温度梯度、风速和超声波的LOS传播路径等。