基于DSP与超声波的室内小距离移动机器人定位方法与流程

文档序号:14360482阅读:157来源:国知局

本发明属于移动机器人定位技术领域,具体的说是涉及一种基于dsp与超声波的室内小距离移动机器人相对定位方法。



背景技术:

作为机器人工作的基础,移动机器人的定位问题一直该领域的研究热点。室内定位方法可分为相对定位和绝对定位,相对定位主要是利用安装在机器人上的编码器根据最初位姿进行航迹推算(dead-reckoning),但随着机器人航行距离的增大,定位误差会累积,需要引入绝对定位手段辅助。绝对定位是指移动机器人在运动环境中能够直接定位其或目标在环境中的坐标。主要有导航信标、标识定位、图形匹配定位和gps定位等方法。相对于其他环境感知传感器,超声波传感器因其价格低廉、硬件易实现并且技术成熟等优点,已被广泛应用于移动机器人的室内定位。

目前自主移动机器人定位的研究已在世界范围内广泛开展。例如国际领域内基于全方向彩色图像的机器人自主定位系统、基于局部特征的机器人辨识与定位的视觉系统、带有声音定位系统的机器人等。国内的如基于活动轮廓的机器人视觉伺服控制、基于活动单眼定位的移动机器人、空间机器人自主定位定向方法、基于激光雷达的自主移动机器人、基于超声定位的室内自主移动机器人、基于路标的定位方法等。



技术实现要素:

本发明提供一种基于dsp控制板,光电编码器、超声波传感器等实现室内相对定位的方法,电机码盘是和驱动电机同轴安装的光电码盘,四个驱动电机均有一个光电码盘,并且都具有正交编码信号输出,将光电码盘的正交编码信号输入到主控板控制器tms320f28335的正交编码脉冲外设可以获得电机的位置信息,通过一定的数学算法获得机器人的位移、旋转角度,实现机器人位姿的相对定位。

为了达到上述目的,本发明是通过以下技术方案实现的:

本发明是一种基于dsp与超声波的室内小距离移动机器人相对定位方法,所述定位方法包括如下步骤:

(1)启动一个安置在初始点的超声波接收模块,超声波接收模块进初始化状态;

(2)一个安置在移动机器人上的超声波发射模块,其中dsp控制器向向超声波发射模块发出定位请求,超声波发射模块发送射频信号和超声波信号;

(3)超声波接收模块接收到射频信号后,超声波接收模块开始计时,直到检测到超声波信号,超声波接收模块停止计时,并将时间信息打包成数据包,将数据包通过射频通讯的形式发送给超声波发射模块;

(4)超声波发射模块将接收到的数据包和检测的温度信息通过串口通讯的方式发送给控制模块;

(5)控制模块根据超声波在一定温度下空气中的传播速度和各接收模块的时间信息,计算出超声波接收模块与超声波发射模块之间的距离;

(6)不间断的将光电码盘的正交编码信号输入到主控板控制器tms320f28335的正交编码脉冲外设中;利用光电码盘单位时间内检测出机器人的左右轮位移δs,由此可以推断出单位时间内机器人位置变化量δx、δy得到一个位置的数据值,通过移动机器人的左右轮位移累积到机器人位置,算出机器人与初始点之间的距离,与超声波测距所得距离再与实际距离作比较得到一系列偏差值分别得到超声波测距与实际的偏差系数,累积值与超声波测距所得值的偏差系数,使得δx、δy的累积值x,y精度达到要求,然后通过检测到有限位的数据量通过一定的算法综合所有数据,得到一条一次位移曲线,这样就得到机器人的位移偏角,也就得到了机器人的定位值;

(7)利用光电码盘单位时间内检测出机器人的左右轮位移δs,计算出出单位时间内机器人姿态变化量δθ,累积得到一组姿态值,与实际姿态作比较,得到一系列误差值,算出补偿系数,从而得到姿态值。

本发明的有益效果是:本发明提供一种基于dsp控制板,光电编码器、超声波传感器等实现室内相对定位的方法,电机码盘是和驱动电机同轴安装的光电码盘,四个驱动电机均有一个光电码盘,并且都具有正交编码信号输出。将光电码盘的正交编码信号输入到主控板控制器tms320f28335的正交编码脉冲外设可以获得电机的位置信息,通过一定的算法获得机器人的旋转角度,实现机器人的相对定位。

本发明对室内小距离定位而言具有实现简单,使用方便,准确度较高等优点。

附图说明

图1是本发明数字模型图。

图2是位移曲线图。

具体实施方式

为了加深对本发明的理解,下面将结合附图和实施例对本发明做进一步详细描述,该实施例仅用于解释本发明,并不对本发明的保护范围构成限定。

如图1-2所示,本发明是一种基于dsp与超声波的室内小距离移动机器人相对定位方法,其特征在于:所述定位方法包括如下步骤:

(1)启动一个安置在初始点的超声波接收模块,超声波接收模块进初始化状态;

(2)一个安置在移动机器人上的超声波发射模块,其中dsp控制器向向超声波发射模块发出定位请求,超声波发射模块发送射频信号和超声波信号;

(3)超声波接收模块接收到射频信号后,超声波接收模块开始计时,直到检测到超声波信号,超声波接收模块停止计时,并将时间信息打包成数据包,将数据包通过射频通讯的形式发送给超声波发射模块;

(4)超声波发射模块将接收到的数据包和检测的温度信息通过串口通讯的方式发送给控制模块;

(5)控制模块根据超声波在一定温度下空气中的传播速度和各接收模块的时间信息,计算出超声波接收模块与超声波发射模块之间的距离;

(6)不间断的将光电码盘的正交编码信号输入到主控板控制器tms320f28335的正交编码脉冲外设中;利用光电码盘单位时间内检测出机器人的左右轮位移δs,由此可以推断出单位时间内机器人位置变化量δx、δy得到一个位置的数据值,通过移动机器人的左右轮位移累积到机器人位置,算出机器人与初始点之间的距离,与超声波测距所得距离再与实际距离作比较得到一系列偏差值分别得到超声波测距与实际的偏差系数,累积值与超声波测距所得值的偏差系数,使得δx、δy的累积值x,y精度达到要求,然后通过检测到有限位的数据量通过高斯过程回归算法(gpr),gpr是任意有限个随机变量均具有联合高斯分布的集合,其性质完全由均值函数和协方差函数确定,即

其中为任意随机变量,为核函数,因此gp可定义为,通常对数据作预处理,使其均值函数等于0。

选择高斯核函数,其形式为:

其中k(||x-xc||)定义为空间中任一点x到某一中心xc之间欧氏距离的单调函数,xc为核函数中心,σ为函数的宽度参数,控制了函数的径向作用范围。通过上述算法综合所有数据,得到一条一次位移曲线,如图2所示,其中红色表示置信度为0.95的置信区间,黑色点表示已知数据,星号表示说要测位置点数据,这样通过高斯过程回归线就得到机器人的位移偏角,也就得到了机器人的定位值;

(7)利用光电码盘单位时间内检测出机器人的左右轮位移δs,计算出出单位时间内机器人姿态变化量δθ,累积得到一组姿态值,与实际姿态作比较,得到一系列误差值,算出补偿系数,从而得到姿态值,这样就可以得到任意时刻移动机器人的位、姿信息。

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