基于激光导航AGV惯导航向角原点变换及误差补偿算法的制作方法

文档序号:16256507发布日期:2018-12-12 00:30阅读:493来源:国知局

本发明涉及agv控制技术,特别涉及agv导航控制技术领域,具体的,其展示一种基于激光导航agv惯导航向角原点变换及误差补偿算法。



背景技术:

agv是(automatedguidedvehicle)的缩写,意即"自动导引运输车",是指装备有电磁或光学等自动导引装置,它能够沿规定的导引路径行驶,具有安全保护以及各种移载功能的运输车。

agv之所以能够实现无人驾驶,导航和导引对其起到了至关重要的作用;但现阶段的惯导器件累计误差大,经过复杂计算输出的航向角不能直接用于导航纠偏,导致程序开发复杂、不通用、可移植性差等的缺点。

因此,有必要提供一种基于激光导航agv惯导航向角原点变换及误差补偿算法来解决上述问题。



技术实现要素:

本发明的目的是提供一种基于激光导航agv惯导航向角原点变换及误差补偿算法。

技术方案如下:

一种基于激光导航agv惯导航向角原点变换及误差补偿算法,步骤如下:

1)在有激光slam检测数据时航向角为a,惯导器件航向角为b,那么零度角偏差c为a-b;

惯导航向角统一零度角后,数据输出将与激光slam输出一致。

2)通过对激光slam航向角变量a与惯导航向角变量b的积分,记录航向角累计旋转角度,根据陀螺仪角速度,对slam航向角及惯导航向角,分别进行逆时针、顺时针的积分计算:∑a、∑b;

3)假定激光slam航向角为绝对准确,那么通过比较顺逆时针两角积分,可以得出惯导航向角的累计误差值,进而得出惯导航向角的误差模型:

4)在机器人惯性导航期间对惯导航向角进行误差补偿,补偿后航向角为yaw,公式为:

yaw=b+(∑b)*b′

5)设定目标航向角dir与当前航向角的偏差值angle,基于步骤1)-步骤4)的零度角统一,惯导航向角误差补偿计算,得出更准确的偏差值:

angle=yaw-dir

floatvirtualangle(floatyaw,floatdir){

floatangle=0;

if(yaw>180)yaw-=360.0;

angle=yaw-dir;

if(angle>=180)angle-=360.0;

elseif(angle<=-180)angle+=360.0;

returnangle;}。

与现有技术相比,本发明将惯导器件航向角的零度角统一,并实时计算出惯导航向角累计误差模型,从而对惯导航向角进行误差补偿;通过导航目标航向角,计算出当前角度偏差;进一步降低当前惯导器件的累计误差,可以将惯导器件的输出数据统一化,保证导航的精确性,便于机器人控制程序开发。

具体实施方式

实施例:

本实施例展示一种基于激光导航agv惯导航向角原点变换及误差补偿算法,步骤如下:

1)在有激光slam检测数据时航向角为a,惯导器件航向角为b,那么零度角偏差c为a-b;

惯导航向角统一零度角后,数据输出将与激光slam输出一致。

2)通过对激光slam航向角变量a与惯导航向角变量b的积分,记录航向角累计旋转角度,根据陀螺仪角速度,对slam航向角及惯导航向角,分别进行逆时针、顺时针的积分计算:∑a、∑b;

3)假定激光slam航向角为绝对准确,那么通过比较顺逆时针两角积分,可以得出惯导航向角的累计误差值,进而得出惯导航向角的误差模型:

4)在机器人惯性导航期间对惯导航向角进行误差补偿,补偿后航向角为yaw,公式为:

yaw=b+(∑b)*b′

5)设定目标航向角dir与当前航向角的偏差值angle,基于步骤1)-步骤4)的零度角统一,惯导航向角误差补偿计算,得出更准确的偏差值:

angle=yaw-dir

floatvirtualangle(floatyaw,floatdir){

floatangle=0;

if(yaw>180)yaw-=360.0;

angle=yaw-dir;

if(angle>=180)angle-=360.0;

elseif(angle<=-180)angle+=360.0;

returnangle;}。

与现有技术相比,本发明将惯导器件航向角的零度角统一,并实时计算出惯导航向角累计误差模型,从而对惯导航向角进行误差补偿;通过导航目标航向角,计算出当前角度偏差;进一步降低当前惯导器件的累计误差,可以将惯导器件的输出数据统一化,保证导航的精确性,便于机器人控制程序开发。

以上所述的仅是本发明的一些实施方式。对于本领域的普通技术人员来说,在不脱离本发明创造构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。



技术特征:

技术总结
本发明一种基于激光导航AGV惯导航向角原点变换及误差补偿算法,步骤如下:在有激光slam检测数据时航向角为A,惯导器件航向角为B,那么零度角偏差C为A‑B;通过对激光slam航向角变量a与惯导航向角变量b的积分,记录航向角累计旋转角度;得出惯导航向角的误差模型:在机器人惯性导航期间对惯导航向角进行误差补偿;设定目标航向角dir与当前航向角的偏差值angle,基于零度角统一,惯导航向角误差补偿计算,得出更准确的偏差值。本发明将惯导器件航向角的零度角与其统一,并实时计算出惯导航向角累计误差模型,从而对惯导航向角进行误差补偿;降低当前惯导器件的累计误差,可以将惯导器件的输出数据统一化,保证导航的精确性,便于机器人控制程序开发。

技术研发人员:钱灏;陈凤阳
受保护的技术使用者:苏州极客嘉智能科技有限公司
技术研发日:2018.05.29
技术公布日:2018.12.11
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1