坐标系介绍

  • 世界坐标(map)
    该map坐标系是一个世界固定坐标系,其Z轴指向上方。相对于map坐标系的移动平台的姿态,不应该随时间显著移动。map坐标是不连续的,这意味着在map坐标系中移动平台的姿态可以随时发生离散的跳变。
    典型的设置中,定位模块基于传感器的监测,不断的重新计算世界坐标中机器人的位姿,从而消除偏差,但是当新的传感器信息到达时可能会跳变。
    map坐标系作为长期的全局参考是很有用的,但是跳变使得对于本地传感和执行器来说,其实是一个不好的参考坐标。
  • 里程计坐标系(odom)
    odom 坐标系是一个世界固定坐标系。在odom 坐标系中移动平台的位姿可以任意移动,没有任何界限。这种移动使得odom 坐标系不能作为长期的全局参考。然而,在odom 坐标系中的机器人的姿态能够保证是连续的,这意味着在odom 坐标系中的移动平台的姿态总是平滑变化,没有跳变。
    在一个典型设置中,odom 坐标系是基于测距源来计算的,如车轮里程计,视觉里程计或惯性测量单元。
    odom 坐标系作为一种精确,作为短期的本地参考是很有用的,但偏移使得它不能作为长期参考。
  • 基座标(base_link)
    该base_link坐标刚性地连接到移动机器人基座。base_link可以安装在基座中的任意方位;对于每个硬件平台,在基座上的不同地方都会提供一个明显的参考点。

坐标系之间的关系

map --> odom --> base_link
世界坐标系是odom坐标系的父,odom坐标系是base_link的父。虽然直观来说,map和odom应连接到base_link,这是不允许的,因为每坐标系只能有一个父类。

通俗理解

odom和map坐标系在机器人运动开始是重合的。但是,随着时间的推移是不重合的,而出现的偏差就是里程计的累积误差。那map–>odom的tf就是在一些校正传感器合作校正的package比如gmapping会给出一个位置估计(localization),这可以得到map–>base_link的tf,所以估计位置和里程计位置的偏差也就是odom与map的坐标系偏差。所以,如果你的odom计算没有错误,那么map–->odom的tf就是

Reference:
https://upload-images.jianshu.io/upload_images/9676334-9e9be0202177671a?imageMogr2/auto-orient/strip|imageView2/2/w/1000

ROS 移动机器人 坐标系统相关推荐

  1. ROS 移动机器人 STM32 Kinect2 智能车

    基于ROS平台的移动机器人-目录 说明 本系列博文将介绍基于ROS平台的移动机器人的搭建,包括小车的底盘的制作,控制和与上位机的通信,建图和导航. 目录 基于ROS平台的移动机器人-1-小车底盘的搭建 ...

  2. 从零开始搭建ROS移动机器人系列之(一)预备知识及总体框架

    " 笔者2020年初次接触ROS,2021年参加工作以后,愈发对ROS产生浓厚的兴趣,渴望拥有一台ROS机器人,淘宝上一搜再搜,发现有很多现成的产品,但是价格属实让人望而却步,遂产生了自己搭 ...

  3. 古月 ROS移动机器人实战 二维slam地图构建 笔记

    二维slam地图构建 Gmapping功能包 一种粒子滤波算法,将定位与建图分离,先进行定位.再进行建图,适合构建小场景环境下的地图信息. 需要机器人提供里程计信息作为先验知识. 虽然可以降低对激光雷 ...

  4. 古月 ROS移动机器人实战5.3ROS导航框架介绍笔记

    机器人自主导航流程 机器人躲避障碍物,偏离最优路径,由本地规划器完成.本地规划器实时规划避障路径,还会努力让机器人沿着全局路径运动,也就是规划机器人每时每刻的运动速度,速度通过cmd_vel发送给底盘 ...

  5. ros移动机器人,激光雷达里程计rf2o_laser_odometry的使用与分析

    目录 1.问题分析 2.激光雷达里程计 2.1 代码下载 2.2 使用方法 (1) ERRO:"base_link" passed to lookupTransform argum ...

  6. ROS移动机器人——ROS基础知识与编程

    此文章基于冰达机器人进行笔记整理,使用的环境为其配套环境,可结合之前的ROS,赵虚左老师的文章结合进行观看,后期也会进行整合 同时建议观看cn/ROS/Tutorials - ROS Wiki 官方教 ...

  7. ROS移动机器人 Solidworks整个机器人设计文件(三维 激光雷达 arduino nvidia)(SLDPRT SLDASM)

    还是17年本科时制作的毕业设计,基于solidworks 2014所制作. 文件里包含了制作的整个移动机器人的SolidWorks原文件. 是设计完各个零件然后组合在一起的,所以适用性很强,可以根据你 ...

  8. ROS移动机器人开发——硬件引脚

    我们使用的32开发板为冰达机器人官方的开发板,类型为STM32RCT6.32章节的目的为,将官方所给源码转化为 官方标准库函数来进行使用 -------------- 需求提出: 电源 1. 3.3V ...

  9. ROS移动机器人——32电机驱动

    驱动电机,我们在这里使用TB6612来驱动电机,同时,电机的内部我们有编码器进行计次 输出比较 cnt,就是时基单元寄存器 ccr,在cnt下方,为捕获比较寄存器,cc是捕获比较的意思,r就是寄存器 ...

最新文章

  1. python语言基础汇总
  2. android 手机命令大全,adb 命令大全
  3. 通过Maven构建打包Spring boot,并将config配置文件提取到jar文件外
  4. 带你认识Flink容错机制的两大方面:作业执行和守护进程
  5. c语言程序设计扫雷游戏实验报告,C语言程序设计扫雷游戏实验报告.pdf
  6. 内存管理, 对象的生命周期
  7. java爬取网页并保存_Java结合WebMagic实现网页内容爬取
  8. python配置文件转dict
  9. java JDK 自带的 native2ascii 和它的 reverse 命令
  10. RandomAccess接口
  11. 使用Node.js 搭建静态服务器
  12. python编程的50种基础算法_Python入门教程:几种常见的Python算法实现
  13. 数学分析(3): 函数极限
  14. 什么是索引回表,如何避免(索引覆盖)
  15. ir2104s的自举电容_IR2104s半桥驱动芯片使用经验及注意事项
  16. python多元回归因子选取_用Python进行多元线性回归分析(附代码)
  17. win10格局法判断八字
  18. 45个Word、Excel、PPT快捷键汇总!
  19. educoder数据结构与算法 图 第2关:实现图的深度优先遍历
  20. 挖地兔股票数据接口 tushare 初接触

热门文章

  1. 弘辽科技:有赞微信小程序升级
  2. bugku 简单套娃
  3. HTML制作开心网游戏静态页面
  4. 【论文笔记 医疗影像分割—nnUNet】nnU-Net: Self-adapting Framework for U-Net-Based Medical Image Segmentation
  5. 运营商大数据,精准获客,降低获客成本
  6. setf 使用方法
  7. web(四) 表格与合并单元格
  8. 制作自己的Vscode主题插件
  9. 使用DNS2TCP搭建DNS隧道,绕过网络认证,实现免验证上网
  10. Spark Core Aggregator