室内环境下移动目标的定位方法、系统及移动机器人与流程

文档序号:20703918发布日期:2020-05-12 16:07阅读:202来源:国知局
室内环境下移动目标的定位方法、系统及移动机器人与流程

本发明涉及通信定位技术领域,特别是涉及一种室内环境下移动目标的定位方法、系统及一种移动机器人。



背景技术:

在复杂环境中gps定位精确度会因为干扰导致定位精度大大降低。在日常生活中,人类大部分活动都是在室内进行,gps定位更会因为遮挡而难以实现。另一方面,基站定位由于多径效应的存在,以及信号易受干扰,决定了其定位精确度较低,无法单独应用于室内定位中。

室内定位是指在室内环境中实现位置定位,主要采用无线通信定位、惯导定位或基站定位等多种技术集成形成的室内位置定位系统。

目前随着移动智能设备和物联网的普及和应用,室内场景中移动目标位置的精确定位越来越具有商业价值,尤其是家庭服务型机器人以及物联网设备的位置精确定位更有广泛需要。

现有技术的室内定位系统,比如蓝牙室内定位,其基于传播时间和信号衰减的测量方法,使该方案在多径效应明显的室内环境下测量误差较大,因为在同步时钟需要达到纳秒级才能使测距误差减小的情况下,蓝牙技术很难做到。另外,wi-fi技术虽然具有高带宽、高传输速率和高覆盖度等特点受非视距(notlineofsight,nlos)影响小。但在室内环境下,由于多径效应的存在,也不适用通过信号衰减的目标定位。而且wi-fi定位精度一般只能做到2m~20m的范围,定位精度较差。



技术实现要素:

本发明所要解决的技术问题是针对现有技术的不足,提供一种室内环境下移动目标的定位方法、系统及一种移动机器人,通过采用自定位和相对定位结合,近定位和远定位结合,以及多定位信息融合算法实现室内环境下多移动目标间的精准定位。

本发明解决上述技术问题的技术方案如下:

根据本发明实施例的一个方面,一种室内环境下移动目标的定位方法,包括:

多个移动目标间通过自组网建立通信网络,所述多个移动目标中有一个为所述通信网络的主节点,其余为所述通信网络的子节点;

每个所述移动目标通过自身的惯导系统实现自定位,形成第一定位信息;

所述主节点对应的移动目标和所述子节点对应的移动目标间通过所述通信网络实现近距离相对定位,形成第二定位信息;

所述主节点对应的移动目标和所述子节点对应的移动目标间通过所述通信网络实现远距离相对定位,形成第三定位信息;

所述第一定位信息、所述第二定位信息和所述第三定位信息通过信息融合形成每个所述移动目标的最终定位结果。

本实施例的有益效果在于,通过采用移动目标自定位和相对定位相结合,近定位和远定位相结合,以及多定位信息的融合,实现了多移动目标间的精准定位。

进一步的,所述主节点和所述子节点间的通信是以主节点为中心节点的全双工无线通信,所述全双工无线通信由主节点发起,所述主节点以单播或广播模式向所述子节点发送请求,所述子节点仅在收到主节点的请求时发送反馈数据。

本实施方式的有益效果在于,通过采用全双工无线通信,以及所述主节点单播或广播模式的通信方式,最大可能地避免了信道冲突及主、子节点间的通信延迟,进而提升了移动目标间的定位精度。

进一步的,所述主节点具有对外通信的信道,所述子节点通过所述主节点间接对外通信。

本实施方式的有益效果在于,既满足了各节点移动目标对外通信的需要,又避免了外部信源直接与子节点通信对主、子节点间通信的影响。

进一步的,所述通信网络采用直接存储器访问dma(directmemoryaccess,dma)收发和空闲中断配合的通信机制进行通信。

本实施方式的有益效果在于,通过采用dma收发和空闲中断配合的通信机制,使通信数据长度不受限制,不仅可以大大提高cpu的利用效率,也能够实现多移动目标间的更快速的通信和更精准的定位。

进一步的,所述近距离相对定位为超宽带uwb(ultrawideband,uwb)定位,所述远距离相对定位为远距离无线电lora(longrangeradio,lora)定位。

进一步的,所述uwb定位和所述lora定位均是采用飞行时间测距法tof(timeofflight,tof)进行定位。

进一步的,所述第一定位信息、所述第二定位信息和所述第三定位信息通过信息融合形成每个所述移动目标的最终定位结果的过程包括:

对每个所述移动目标形成所述第一定位信息的第一传感器、形成所述第二定位信息的第二传感器和形成所述第三定位信息的第三传感器的测量值与每次测量时的测量仪数据进行卡尔曼滤波;

将经卡尔曼滤波确定的所述测量值和测量仪数据作为bp神经网络的神经元的输入,推导所述第一传感器、所述第二传感器和所述第三传感器的权系数与测量方差的关系,估算各传感器的测量方差,从而对各传感器的权值进行合理的分配;

根据所述第一传感器、所述第二传感器和所述第三传感器的权值对所述第一定位信息、第二定位信息和第三定位信息进行加权形成每个所述移动目标的最终定位结果。

本实施方式的有益效果在于,通过卡尔曼滤波对传感器信息进行了有效筛选,通过bp神经网络推导对不同传感器分配了适当权值,使各传感器对应的各定位信息加权形成的最终定位结果更加精准。

根据本发明实施例的另一个方面,一种移动机器人的定位方法,所述移动机器人对应于上述任一方法实施例中的所述移动目标,所述移动机器人的定位方法采用上述任一方法实施例所述的定位方法。

根据本发明实施例的另一个方面,一种室内环境下移动目标的定位系统,包括:

自组网模块,用于多个移动目标间通过自组网建立通信网络,所述多个移动目标中有一个为所述通信网络的主节点,其余为所述通信网络的子节点;

自定位模块,用于每个所述移动目标通过自身的惯导系统实现自定位,形成第一定位信息;

近距离定位模块,用于所述主节点对应的移动目标和所述子节点对应的移动目标间通过所述通信网络实现近距离相对定位,形成第二定位信息;

远距离定位模块,用于所述主节点对应的移动目标和所述子节点对应的移动目标间通过所述通信网络实现远距离相对定位,形成第三定位信息;

定位信息融合模块,用于所述第一定位信息、所述第二定位信息和所述第三定位信息通过信息融合形成每个所述移动目标的最终定位结果。

根据本发明实施例的另一个方面,一种移动机器人,所述移动机器人对应于上述产品实施例中的所述移动目标,所述移动机器人采用上述产品实施例中的定位系统。

本发明附加的方面的优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明实践了解到。

附图说明

图1为本发明所述定位方法实施例的流程示意图;

图2为本发明所述定位信息融合的框架结构图;

图3为本发明所述定位系统的结构框图;

图4为本发明所述定位系统的实例示意图。

具体实施方式

以下结合附图对本发明的原理和特征进行描述,所举实施例只用于解释本发明,并非用于限定本发明的范围。

移动目标的自定位关键是要能测量出移动目标走过的距离,以及在这段时间内所述移动目标移动方向的变化。本发明所述移动目标的自定位是利用陀螺仪和加速度计分别测量其旋转率和加速率,再对测量结果进行积分,从而求解出所述移动目标移动的距离及方向的变化,再根据轨迹推算,求得所述移动目标的位置和姿态,这种方法具有自身优点,即无需外部参照,但随时间的延长会出现漂移,积分之后任何小的常数误差都会无限增长。因此,本发明所述移动目标通过自定位和相对定位结合,实现了更精确的定位,并可将新的位置记录作为新的起点以减小累积误差。

实施例1

如图1所示,一种室内环境下移动目标的定位方法,包括:

s01,多个移动目标间通过自组网建立通信网络,所述多个移动目标中有一个为所述通信网络的主节点,其余为所述通信网络的子节点;

所述通信网络是以所述主节点为中心形成的星型通信网络,在所述通信网络中所述主节点和每个所述子节点间均能互相通信。

s02,每个所述移动目标通过自身的惯导系统实现自定位,形成第一定位信息;

所述第一定位信息由用于自定位的惯导系统中的第一传感器形成。

s03,所述主节点对应的移动目标和所述子节点对应的移动目标间通过所述通信网络实现近距离相对定位,形成第二定位信息;

所述第二定位信息由用于近距离相对定位的第二传感器形成。

s04,所述主节点对应的移动目标和所述子节点对应的移动目标间通过所述通信网络实现远距离相对定位,形成第三定位信息;

所述第三定位信息由用于远距离相对定位的第三传感器形成。

s05,所述第一定位信息、所述第二定位信息和所述第三定位信息通过信息融合形成每个所述移动目标的最终定位结果。

本实施例中所述信息融合是指通过信息融合算法使不同定位信息分配相应权值,然后对三种定位信息依权值加权后形成最终定位结果。

实施例2

在实施例1的基础上,进一步的所述主节点和所述子节点间的通信是以主节点为中心节点的全双工无线通信,所述全双工无线通信由主节点发起,所述主节点以单播或广播模式向所述子节点发送请求,所述子节点仅在收到主节点的请求时发送反馈数据。

全双工通信,是指通信的双方可以同时发送和接收信息的信息交互方式。全双工方式在发送设备的发送方和接收设备的接收方之间采取点到点的连接,即意味着在全双工的传送方式下,可以得到更高的数据传输速度。

在单播模式下,主节点以特定地址访问某个子节点,子节点接到并处理完请求后向主节点返回一个报文(应答)。在该模式下,一个事务处理包含2个报文:一个来自主节点的请求,一个来自子节点的应答。每个子节点必须有唯一的地址(1到247),才能区别于其它节点被独立寻址。

在广播模式下,主节点向所有的子节点发送请求。对于主节点广播的请求没有报文(应答)返回。广播请求一般用于写命令。所有设备必须接受广播模式的写功能。地址0是专门用于表示广播数据的。

本实施方式通过采用全双工无线通信,以及所述主节点单播或广播模式的通信方式,最大可能地避免了信道冲突及主、子节点间的通信延迟,进而提升了移动目标间的定位精度。

实施例3

在实施例1的基础上,进一步的所述主节点具有对外通信的信道,所述子节点通过所述主节点间接对外通信。

本实施对节点通信信道的设置方式,主要在于使所述通信网络有且仅有一个对外通信的信道。既满足了各节点移动目标对外通信的需要,又避免了外部信源直接与子节点通信对主、子节点间通信的影响。

实施例4

在实施例1的基础上,进一步的所述通信网络采用dma收发和空闲中断配合的通信机制进行通信。

直接内存存取(directmemoryaccess,dma)允许不同速度的硬件装置相互沟通,不需要依赖于cpu大量中断负载。dma收发是将数据从一个地址空间复制到另外一个地址空间。当cpu初始化这个收发动作时,收发动作本身是由dma控制器来实行和完成。比如,移动一个外部内存的区块到芯片内部更快的内存区,其操作并没有让cpu产生工作拖延,而是可以让cpu被重新排程去处理其他的工作。

由于dma传输中并不能直接确定接收到的一条数据是否完整,所以就要通过空闲中断来配合实现。

空闲中断是指每接收到一条完整的数据就会置位空闲标志位,每次只需要判断空闲标志位是否置1就可确定是不是接收到了一条完整的数据。

本实施例通过采用dma收发和空闲中断配合的通信机制,使通信数据长度不受限制,不仅可以大大提高cpu的利用效率,也能够实现多移动目标间的更快速的通信和更精准的定位。

实施例5

在实施例1的基础上,进一步的所述近距离相对定位为uwb定位,所述远距离相对定位为lora定位。进一步的,所述uwb定位和所述lora定位均是采用tof的方法进行定位。

超宽带(ultrawideband,uwb)技术通过对具有陡峭上升和下降时间的冲激脉冲进行直接调制,使信号具有ghz量级的带宽。它具有对信道衰落不敏感、发射信号功率谱密度低、低截获能力、系统复杂度低、能提供数厘米的定位精度等优点。uwb定位正是根据超宽带技术的上述优点利用其亚纳秒级超窄脉冲来做近距离精确室内定位的。

uwb测距原理是利用飞行时间法(timeofflight,tof),使每个移动目标从启动开始即会生成一条独立的时间戳。比如移动目标a的发射机在其时间戳上的ta1发射请求性质的脉冲信号,移动目标b在tb2时刻发射一个响应性质的信号,被移动目标a在自己的时间戳ta2时刻接收。由此可以计算出脉冲信号在两个移动目标之间的移动时间,从而确定移动距离s,公式如下:

s=c[(ta2-ta1)-(tb2-tb1)]/2,其中c为光速。

uwb定位方法通常需要在定位空间内设置合适数量的定位基站,待测移动目标将可以产生超宽带信号的定位标签佩带在身上,从而可以测出和基站之间的距离信息和角度信息等,最后可计算出目标的位置信息。其流程为:

(1)每个移动目标上的定位标签以uwb脉冲重复不间断发送数据帧;

(2)所述数据帧被所述定位基站接收;

(3)每个定位基站用高敏度的短脉冲侦测器测量每个定位标签的数据帧到达接收器端的时间;

(4)定位引擎参考标签发送过来的校准数据,确定标签达到不同定位基站之间的时间差,并利用三点定位技术及优化算法来计算标签位置;

(5)利用多基站定位,多采用tdoa(timedifferenceofarrival)算法。

tdoa(timedifferenceofarrival)算法原理是先测得待测移动目标信号也就是信号源信号,亦即标签信号到每个已知基站之间的到达时间差,再乘以电磁波传播速度c得到距离差,利用距离差构建双曲线方程,求出距离信息。

远距离无线电(longrangeradio,lora)技术是一种低功耗局域网无线标准,低功耗一般很难覆盖远距离,但lora技术的最大特点就是在同样的功耗条件下比其他无线方式传播的距离更远,实现了低功耗和远距离的统一,它在同样的功耗下比传统的无线射频通信距离扩大3-5倍。

飞行时间法(time-of-flight,tof)是指各种测量飞行时间的方法,更确切的是指一个物体或粒子或声波或电波等其他波类在某种介质内穿越一段距离所用的时间。tof测距可以理解为根据飞行时差进行测距(timeofflightmeasurement)。传统的测距技术分为双向测距(twowayranging)和单向测距(onewayranging),tof测距法属于双向测距技术,它主要利用信号在两个异步收发机(transceiver)之间往返的飞行时间来测量节点间的距离。

tof测距方法属于双向测距技术,其原理就是利用数据信号在一对收发机之间往返的飞行时间来测量两点间的距离。具体做法是将发射端发出数据信号和接收到接收端应答信号的时间间隔记为tt,接收端收到发射端的数据信号和发出应答信号的时间间隔记为tr,信号在收、发机之单向飞行时间tf=(tt-tr)/2,则两点间的距离d=c*tf,其中c表示电磁波传播速度。如图2所示,其流程为:

i:一个sx1280作为主节点向另一个从节点发起测距请求,同时主节点开启内部的定时器;

ii:从节点收到测距请求后会同步该请求信号,鉴于主节点和从节点不会同步时间,所以从节点并不知道请求发来的时间,但对于主节点来说,同步过程需要的时间确是固定的;

iii:最后从节点把同步完的测距应答发回给主节点,基于这个应答的间隙,主节点可以推断出信号来回的飞行时间,进而得出测距的数据。

其中,节点上的单片机与sx1280的通信接口是spi,可同时读取dio引脚获得芯片的状态信息。采集到的lora定位获取的值最终会通过tll转usb返回到pc端。sx1280芯片的工作状态在接收和发送数据的过程中不断变换。

本实施例中所述uwb定位和lora定位,都是采用tof原理的tof测距方法。

实施例6

在实施例1的基础上,进一步的所述第一定位信息、所述第二定位信息和所述第三定位信息通过信息融合形成每个所述移动目标的最终定位结果的过程包括:

对每个所述移动目标形成所述第一定位信息的第一传感器、形成所述第二定位信息的第二传感器和形成所述第三定位信息的第三传感器的测量值与每次测量时的测量仪数据进行卡尔曼滤波;

将经卡尔曼滤波确定的所述测量值和测量仪数据作为bp神经网络的神经元的输入,推导所述第一传感器、所述第二传感器和所述第三传感器的权系数与测量方差的关系,估算各传感器的测量方差,从而对各传感器的权值进行合理的分配;

根据所述第一传感器、所述第二传感器和所述第三传感器的权值对所述第一定位信息、第二定位信息和第三定位信息进行加权形成每个所述移动目标的最终定位结果。

如图2所示,本实施例通过采用移动目标自定位和相对定位结合,近定位和远定位相结合,以及以及对定位信息的融合实现了多移动目标间的精准定位。由于多移动目标自定位时,惯性导航容易出现积分累积误差,所以在自定位时位置会产生偏差,这时可以通过相对定位的位置信息修正自定位的位置偏差,使得移动目标自定位更加精准。同时,由于相对定位的通信并不稳定,导致有时相对定位信息测不出或存在误差,这时就可以采用惯性导航的位置信息校正相对位置信息。图中,局部本体1是通过惯导系统产生第一定位信息的第一传感器,局部本体2是通过uwb定位产生第二定位信息的第二传感器,局部本体3是通过lora定位产生第三定位信息的第三传感器,全局本体是装设有三种传感器的移动目标本体。所述通过信息融合形成每个所述移动目标的最终定位结果是通过扩展的卡尔曼滤波融合算法和bp神经网络算法来实现的。

经典的卡尔曼滤波算法的过程分为时间更新方程和测量更新方程两个部分进行。其中时间更新方程描述的是系统的预测过程,根据k-1时刻的系统的状态量和控制量输入估计出下一时刻k的状态变量以及误差的协方差。测量更新方程是对时间更新的校正过程。

本实施例中为扩展的卡尔曼滤波算法,主要是将每一个传感器的实际的测量值与每次的测量仪的数据经过卡尔曼滤波来确定为每个bp神经网络的神经元的输入,其中第一步的状态的测量方程为:

其中,k为当前时刻,即每个传感器的测量数据。

然后确定均方误差和滤波增益方程:

最后根据状态滤波估计方程:

把直接影响卡尔曼滤波估计的参数作为bp神经网络的输入,系统输入值与卡尔曼滤波状态估计值之差x(k)-x(k,k)作为bp神经网络的输出,对bp网络进行训练,经过学习训练后,神经网络的输出值即相当于卡尔曼滤波值的补偿量,改进算法的状态估计值为卡尔曼滤波值x(k,k)与神经网络输出量之和。同时通过基本的卡尔曼滤波来预处理数据的有效性,增加数据的可靠性,从开始慢慢的精确到每个神经网络的单个的神经元的输入。

本实施方式通过卡尔曼滤波对传感器信息进行了有效筛选,通过bp神经网络推导对不同传感器分配了适当权值,使各传感器对应的各定位信息加权形成的最终定位结果更加精准。

实施例7

一种移动机器人的定位方法,所述移动机器人对应于上述任一方法实施例中的所述移动目标,所述移动机器人的定位方法采用上述任一方法实施例所述的定位方法。

实施例8

如图3所示,一种室内环境下移动目标的定位系统,包括:

自组网模块1,用于多个移动目标间通过自组网建立通信网络,所述多个移动目标中有一个为所述通信网络的主节点,其余为所述通信网络的子节点;

自定位模块2,用于每个所述移动目标通过自身的惯导系统实现自定位,形成第一定位信息;

近距离定位模块3,用于所述主节点对应的移动目标和所述子节点对应的移动目标间通过所述通信网络实现近距离相对定位,形成第二定位信息;

远距离定位模块4,用于所述主节点对应的移动目标和所述子节点对应的移动目标间通过所述通信网络实现远距离相对定位,形成第三定位信息;

定位信息融合模块5,用于所述第一定位信息、所述第二定位信息和所述第三定位信息通过信息融合形成每个所述移动目标的最终定位结果。

如图4所示,本实施例所述移动目标的uwb芯片采用爱尔兰decawave公司的dwm1000,主控芯片采用意法半导体公司stm32f103,主控芯片通过串口与dw1000进行通信,通过spi与lora模块(sx1280)进行通信,物理通信接口预留了多的串口、usb、ttl电平的spi、can三个接口,节点供电电压为3.7v到5.2v,通过usb接口进行供电,通过稳压芯片将其电压降压到3.3v给相应电路。

所述移动目标的自定位采用陀螺仪和加速度计获得方向和位移参数进行积分计算获得,选择mpu6050,采用i2c接口与主控制器相连。

为了有效的消除单移动目标的单传感器的不足,本实施例结合了lora和uwb定位技术来实现精确测距以及惯性导航技术对位置进行纠偏,并进一步采用了bp神经网络和扩展的卡尔曼滤波来实现多定位信息融合。

其中,lora通信具有通信距离远、功耗低、灵敏度高以及抗干扰能力强等优点;uwb通信不需要使用传统通信体制中的载波,而是通过发送和接收具有纳秒或纳秒级以下的极窄脉冲来传输数据,因此具有ghz量级的带宽。由于uwb通信定位技术具有穿透力强、抗多径效果好、安全性高、系统复杂度低、能提供精确定位精度等优点。

bp神经网络工作信号正向传递过程为:

1、输入层的每个节点,都要与隐藏层每个节点做点对点的计算,计算的方法是加权求和+激活。

2、利用隐藏层计算出的每个值,再用相同的方法,由输出层进行计算。

3、隐藏层是用sigmoid作激活函数,而输出层是用purelin作激活函数,这是因为purelin可以保持之前任意范围的数值缩放,便于和样本值作比较,而sigmoid的数值范围只能在0~1之间。

4、起初输入层的数值通过网络计算分别传播到隐藏层,再以相同的方式传播到输出层,最终的输出值和样本值作比较计算出误差。

其中主要的是误差信号反向传递过程:

5、利用前向传播最后输出的结果来计算误差的偏导数(前向传播后求偏导),

6、再用这个偏导数和前面的隐藏层进行加权求和

7、如此一层一层的向后传下去(隐藏层间偏导加权求和)

8、直到输入层(不计算输入层)(也就是第一隐藏层到输入层的偏导加权求和)

9、最后利用每个节点求出的偏导数来更新权重。

实施例9

一种移动机器人,所述移动机器人对应于上述产品实施例中的所述移动目标,所述移动机器人采用上述产品实施例中的定位系统。

读者应理解,在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的方法实施例仅仅是示意性的,例如,步骤的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个步骤可以结合或者可以集成到另一个步骤,或一些特征可以忽略,或不执行。

上述方法如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1