关于几个坐标系的关系NED ENU ROS

2023-05-16

几个坐标系转来转去,时间一长又搞混了。
px4使用的坐标系为NED(北东地)坐标系或者FRD(前右下)坐标系。然而mavros(melodic版本)中常使用的是ENU(东北天)坐标系或者body系FLU(前左上),mavros会自动将输入的ENU坐标值或者body系坐标值转换到NED坐标系中,再通过mavlink发送给飞控

mavros中经常出现的FCU 不是代表坐标系缩写,Flight Control Unit 直译就是飞行控制单元

在这里插入图片描述
coordinate_frame=1虽然代表向px4发送LOCAL_NED坐标值,但是你发送到这个话题的坐标系应该用ENU,mavros会自动完成这个坐标系的转换。同样的,coordinate=8 也不是BODY_NED系,而是FLU系。目前px4暂不支持向话题里发布coordinate=7、9的坐标值。
在这里插入图片描述
在这里插入图片描述

机体坐标系 NED 惯性系
x轴在多旋翼对称平面内指向机头(机头方向与多旋+字形或X字形相关)。 z轴在飞机对称平面内,垂直轴向下。然后,按右手定则确定y轴 。
欧拉角是基于上面两个坐标系的转换。pitch+为抬头,roll+为右旋转,yaw+为右偏航。

Yaw与指南针角度的关系

指南针的角度是确定不变的,北朝向为0度,东为90度,南为180度,西为270度。
Yaw角是当前机头方向与正北方向的夹角(若地球固联坐标系为NED)
也就是说当我们知道YAW角时我们就可以确定飞机当前的航向(东,北哪个方向),比如我们的vision通过mavros给飞控的Yaw的角度是90度,而且飞机的地球固联坐标系为NED,那么可以确定飞机机头当前指向为正东。
在PX4中用到的地球固联坐标轴是NED坐标系,即x,y,z的方向固定不变(Offboard模式下除外,但是在offboard模式下,初始上电后其东北方向由Yaw角决定)

ROS坐标系 ENU
在这里插入图片描述
在这里插入图片描述
GPS坐标系 WGS-84 X 指向正东 Y指向正北 Z朝上
在这里插入图片描述
为了方便使用GPS速度向量进行无人机控制,需要把它转换在无人机所在位置的平面坐标系Local NED
旋转推导公式
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

关于几个坐标系的关系NED ENU ROS 的相关文章

  • QGC-TX2-PX4

    span class token number 1 span 安装mavros sudo apt install ros span class token operator span melodic span class token ope
  • ROS--geometry_msgs/PoseStanped消息解读

    http wiki ros org geometry msgs 可以看到不同类型的消息 xff0c 点击PoseStamped进入PoseStamped message 页面 1 通过包含头文件可以调用该类型的消息 span class t
  • MAVRos--SetMavFrame更改速度控制的坐标系

    使用服务 xff08 Service xff09 来更改速度控制的坐标系 mavros支持的坐标系 uint8 FRAME GLOBAL span class token operator 61 span span class token
  • PX4中的控制分配

    PX4中的控制分配 本文主要讲讲在PX4代码中pwm计算的过程 xff0c 即如何将旋翼姿态控制模块产生的控制指令 三轴力矩 43 机体轴升力 转换为对应的PWM信号 xff1f 如果您想修改控制分配矩阵 xff0c 或者修改混控算法 xf
  • 常用MAVROS话题和服务

    https zhuanlan zhihu com p 364872655 一 常用接收的话题 1 1 系统状态 消息名称 xff1a mavros state 类型 xff1a mavros msgs State 头文件 xff1a mav
  • QGC for Android 串口深扒

    QT for Android 实现机制是需要java库支持的 xff0c QT原生接口QSerialPort不支持Android系统的串口开发 QGC使用QT框架 xff0c 采用c 43 43 语言通过基类linkinterface和qt
  • ROS系统 摄像头标定camera calibration

    1 安装标定功能包 sudo apt span class token operator span get install ros span class token operator span melodic span class toke
  • make px4_sitl_default gazebo

    make px4 sitl default gazebo这个过程可能比较考验电脑内存 xff0c 我电脑有几次CPU都是100 运行 xff0c 而且停下卡住 情况可能如下 xff1a 11 33 Building CXX object C
  • sklearn学习笔记9:逻辑回归

    定义 xff1a 是一种名为回归的线性分类器 xff0c 其本质是由线性回归变化而来的 xff0c 一种广泛使用于分类问题中的广义回归算法 xff0c 通常用于二分类问题 xff0c 也可以做多分类 本质 xff1a 是一个返回对数几率的
  • XTDrone--执行roslaunch px4 indoor1.launch 遇到的问题

    RLException while processing home karasi PX4 Firmware launch single vehicle spawn xtd launch Invalid tag Cannot load com
  • PX4编译中的各种问题

    最近在研究如何使用UAV xff0c 由于是初学者 xff0c 不好直接上手实体无人机 xff0c 因此考虑通过在gazebo中模拟的方式进行一下无人机的简单使用模拟 xff0c 于是了解到了PX4这个东西 xff0c 他不仅支持固件写入
  • T265+ROS+opencv4.5.3

    OpenCV4 for CUDA安装 OpenCV提供图像处理过程中的基础API xff0c 所以首先完成OpenCV4的构建 为了利用Jetson平台拥有CUDA加速的优势需要先安装OpenCV的CUDA版本 xff08 Jetpack默
  • PX4官方视觉惯性里程计测距 VIO

    官方地址 xff1a https docs px4 io master zh computer vision visual inertial odometry html 视觉位置和GPS不能同时运行 VIO使用视觉里程计 xff08 vis
  • flycarcq problem

    1 install ceres Could not find a package configuration file provided by Ceres with any of the following names CeresConfi
  • jetson xavier nx 安装D435i

    1 xff0c Realsense sdk安装 git clone https span class token operator span span class token comment github com jetsonhacks i
  • 卸载opencv 安装cuda版本的opencv

    第一推荐 https span class token operator span span class token comment zhuanlan zhihu com p 411901208 span 一 卸载opencv xff08
  • D435i VINS-Fusion环境搭建

    参考网址 https span class token operator span span class token comment github com kuankuan yue VINS FUSION leanrning span 1
  • jetson nx 安装cuda 10.2

    看到的另外两个方案 https span class token operator span span class token comment blog csdn net FRD2009041510 article details 4204
  • LIO-SAM ouster

    1 ROS tested with Melodic sudo apt span class token operator span get install span class token operator span y ros span
  • 数据分析业务场景 | 用户画像

    一 概况 定义 是根据用户的一系列行为和意识过程建立起来的多维度标签 xff1b 是根据用户人口学特征 xff0c 网络浏览内容 xff0c 网络社交活动和消费行为等信息而抽象出的一个标签化的用户模型 xff1b 首要任务 xff1a 根据

随机推荐

  • D435i vins搜集资料

    在D435i上运行VINS Mono 前面都测试好之后就可以再D435i上运行VINS Mone了 xff0c 这里特地感谢下博客如何用Realsense D435i运行VINS Mono等VIO算法 获取IMU同步数据的作者Manii x
  • mavros常用控制消息

    数传 用于查看数传状态 xff1a span class token operator span mavros span class token operator span span class token function radio s
  • 启动T265

    室内T265定点飞行 先启动基本vio脚本 roslaunch p450 experiment p450 vio onboard launch 再启动控制脚本 roslaunch p450 experiment p450 vio contr
  • VINS标定---Ego-planner

    1 检查realsense 和飞控的连接 查看飞控串口 ls span class token operator span dev span class token operator span ttyA span class token o
  • ego-planner框架和参数

    drone id 对应飞机的编号 从0开始 map size xyz 地图场地大小 xff0c 给的目标点要在地图范围内 fx fy cx cy 相机内参 obstacles inflation 障碍物膨胀大小 是 飞机外廓尺寸的1 5倍
  • 执行 install_geographiclib_datasets.sh 错误

    https blog csdn net weixin 41865104 article details 119418901 在 usr share 新建GeographicLib文件夹 在 usr share GeographicLib 文
  • 通过mavros的桥接连接qgc

    fcu url指定的是飞控的连接方式 xff0c 设置飞控为正确的端口即可 gcs url指定的是QGC所在主机的IP xff0c 这个换为运行QGC主机的IP地址即可 如果不知道主机的IP地址可以用udp发布方式 gcs url span
  • ros在同一工作空间下调用其它功能包的头文件

    A功能包需要调用B功能包的头文件 在B功能包CMakeLists txt中修改 去掉catkin package中的include注释 xff08 让别人能识别到自己的头文件 xff09 A功能包在find package时能识别到B功能包
  • 千寻位置NTRIP网络基准站

    端口选择NTRIP连接方式 xff1b 点击 Connect 输入Enter URL Enter URL格式 xff1a http NTRIP账号 xff1a 密码 64 rtk ntrip qxwz com 通道号 RTCM32 GGB
  • 关于egoplanner fastplanner内PID的控制

    Kp0 Kp1 Kp2 Kv0 Kv1 Kv2
  • 如何描述数据分布的特征?

    数据分布的特征可以从集中趋势 xff0c 离中趋势 xff0c 偏态和峰态三个方面进行描述 一 集中趋势 xff08 位置 xff09 是一组平均指标 xff0c 它反映了总体的一般水平或分布 1 平均数 分为 xff1a 简单平均数 xf
  • 对于egoplanner的障碍物分析

    根源 根据障碍物检查并分段初始轨迹 bool BsplineOptimizer span class token operator span span class token function check collision and reb
  • t265 通过mavros传递定位信息px4

    https github com thien94 vision to mavros 通过话题 mavros vision pose pose 向PX4发送位置数据 t265两种安装方式 xff1a USB口朝右镜头向前和向下安装 如需其它方
  • T265 VS D435i

  • px4_sitl_defult error

    span class token operator span Firmware span class token operator span Tools span class token operator span sitl gazebo
  • Intel RealSense D435i与IMU标定用于vins-fusion

    1 标定imu工具 mkdir span class token operator span p imu catkin ws span class token operator span src cd imu catkin ws span
  • PCL点云滤波处理D435i深度图用于octomap

    D435i直接输出的深度点云噪点太多经过滤波处理后再使用 直通滤波 保留或删除某一轴线特定范围内的点 xff0c 改变视野范围 pcl span class token operator span PassThrough span clas
  • ros编译过程中缺少各种依赖库的集合操作

    1 OpenGL All the OpenGL functionality tests failed You might need to modify the include and library search paths by edit
  • ROS发布自定义数组和数据

    主要使用std msgs数据结构 rosmsg show std msgs 自定义话题消息 1 新建msg文件 2 修改CMakeLists txt文件 3 修改package xml文件 4 生成对应头文件 5 编写发布者程序 6 编写接
  • 关于几个坐标系的关系NED ENU ROS

    几个坐标系转来转去 xff0c 时间一长又搞混了 px4使用的坐标系为NED xff08 北东地 xff09 坐标系或者FRD xff08 前右下 xff09 坐标系 然而mavros xff08 melodic版本 xff09 中常使用的