ROS学习十、无人机通信模块mavros(1)常用的mavros消息类型

  • 前言
  • 数传
  • 全局位置
  • IMU惯导
  • 本地位置
  • 飞控命令
  • 设置飞行位点、速度、加速度
  • 系统状态
  • 系统时间
  • 其它

前言

mavros用于无人机通信,可以将飞控与主控的信息进行交换。本次记录常用的mavros消息类型。

数传

用于查看数传状态:

3DR_RADIO:
/mavros/radio_status (mavros_msgs/RadioStatus)

全局位置

mavros中的飞控和GPS消息。

GPS:
/mavros/global_position/global (sensor_msgs/NavSatFix)sensor_msgs/NavSatFix.msg
-----------------------------------------------
float64 latitude    //经度
float64 lontitude   //纬度
float64 altitude    //高度
float64[9] position_covariance
uint8 position_covariance_type

IMU惯导

mavros中用于imu数据通信的消息。

IMU:
/mavros/imu/data (sensor_msgs/Imu)sensor_msgs/Imu.msg:
------------------------------------------------
std_msgs/Header header
geometry_msgs/Quaternion orientation    //四元数,旋转方向
float64[9] orientation_covariance   //旋转方向的协方差
geometry_msgs/Vector3 angular_velocity    //角速度
float64[9] angular_velocity_covariance     //角速度的协方差
geometry_msgs/Vector3 linear_acceleration    //线加速度
float64[9] linear_acceleration_covariance    //线加速度的协方差

本地位置

mavros中发布本地位置位姿和速度的消息。

Local pose:
/mavros/local_position/pose (geometry_msgs/PoseStamped)Local velocity:
/mavros/local_position/velocity (geometry_msgs/TwistStamped)

飞控命令

用于向FCU发送解锁、起飞、降落等指令:

Services:/mavros/cmd/arming (mavros_msgs/CommandBool)
/mavros/cmd/set_home (mavros_msgs/CommandHome)
/mavros/cmd/takeoff (mavros_msgs/CommandTOL)
/mavros/cmd/land (mavros_msgs/CommandTOL)
/mavros/cmd/trigger_control (mavros_msgs/CommandTriggerControl)

设置飞行位点、速度、加速度

mavros中用于向FCU指定飞行位置、速度,加速度、姿态等的消息,非常重要。

设置加速度:

set acceleration:
/mavros/setpoint_accel/accel (geometry_msgs/Vector3Stamped)

设置速度:

set velocity:
/mavros/setpoint_velocity/cmd_vel_unstamped (geometry_msgs/Twist)

设置位姿:

set attitude:
/mavros/setpoint_attitude/attitude (geometry_msgs/PoseStamped)

设置角速度:

set angular velocity:
setpoint_attitude/cmd_vel (geometry_msgs/TwistStamped)

设置油门:

set thrust:
/mavros/setpoint_attitude/thrust (mavros_msgs/Thrust)

设置飞行位点:

set local position:
/mavros/setpoint_position/local (geometry_msgs/PoseStamped)set global position:
/mavros/setpoint_position/global (geographic_msgs/GeoPoseStamped)

自己写飞控和回环的话有/mavros/setpoint_raw的一系列话题,这里就不多涉及了。

系统状态

用于检测FCU状态。

Sys state:Publish:
/mavros/state (mavros_msgs/State)Service:
/mavros/set_mode (mavros_msgs/SetMode)

系统时间

用于时间同步。

Time:
/mavros/time_reference (sensor_msgs/TimeReference)

其它

除了上面这些,mavros还提供了手动操作manual_control混控器actuator_control无线电接收rc_io安全区域safety_area航点任务mission等。不过目前我的方向用这些消息比较少。

ROS学习十、无人机通信模块mavros(1)常用的mavros消息类型相关推荐

  1. 【ROS学习笔记】(一)常用命令的解释与举例

    1. roscore roscore是用来启动ros master,是运行ros系统前首先运行的命令 2. rosrun rosrun是用来运行某个功能包内的某个节点的指令,有两个参数,第一个参数是功 ...

  2. ROS学习笔记(1):发布者和订阅者

    ROS学习笔记(1):publishers and subscribers 1.ros通信简介 2.C++中的类与对象 3.publishers/subscribers 4.常用指令 1.ros通信简 ...

  3. Eigen类型与ROS中tf相关消息类型进行相互转换工具

    在ROS机器人编程资料书中,有个Eigen消息类型与TF相关消息类型进行互相转换的工具包感觉挺好使,修改一下方便以后使用. 1.头文件 #include <Eigen/Eigen> #in ...

  4. 无人机仿真XTDrone学习二:常用的mavros消息类型

    mavros用于无人机通信,可以将飞控与主控的信息进行交换.本次记录常用的mavros消息类型. 官方Wiki最正确,如有疑问首先查阅Wiki. mavros wiki CSDN参考 常用话题 数传 ...

  5. 古月居ROS暑期学校无人机部分学习笔记

    本次主要学习,无人机领域的几位大咖,全权.戴训华和戚煜华的讲座. 1.基于模型的单机开发到基于视觉的分布式集群仿真--全权 北京航空航天大学 1.1 多旋翼飞行器领域涉及8大学科 1.2 新形势下,多 ...

  6. ROS学习笔记——基于Prometheus无人机开源项目仿真环境配置

    本笔记基于ubuntu18.04版本,配置基于Prometheus无人机开源项目仿真环境. 需要事先在电脑上安装了ROS,Mavros功能包,其余可参考Amov教程,                  ...

  7. jQuery框架学习第十天:实战jQueryUI常用功能

    jQuery框架学习第一天:开始认识jQuery jQuery框架学习第二天:jQuery中万能的选择器 jQuery框架学习第三天:如何管理jQuery包装集  jQuery框架学习第四天:使用jQ ...

  8. JavaScript学习(六十六)—字符串对象常用的属性和方法总结以及数组元素的排序问题

    JavaScript学习(六十六)-字符串对象常用的属性和方法总结以及数组元素的排序问题 学习内容 一.数组去重问题 二.二维数组的定义 三.二维数组的元素操作 四.二维数组的遍历 五.关联数组 六. ...

  9. ROS学习笔记十二:使用roswtf

    ROS学习笔记十二:使用roswtf 在使用ROS过程中,roswtf工具可以为我们提供ROS系统是否正常工作的检查作用. 注意:在进行下列操作之前,请确保roscore没有运行. 检查ROS是否安装 ...

最新文章

  1. 揭露Windows中各种不老实的服务
  2. linux下修复bash漏洞
  3. win10桌面和手机的扩展API,判断是否有实体后退键API
  4. python经典小游戏-用Python设计一个经典小游戏
  5. 基于 Knative 低成本部署在线应用,灵活自动伸缩
  6. 计算机视觉大作业 抓取手势类型集_CS231n第一周[任务1]计算机视觉发展历史以及一些计算机视觉任务概念...
  7. HOJ 1640 Mobile Phone
  8. Javascript日期函数使用需要注意地方
  9. 【已解决】清除linux系统的多余引导
  10. 嵌入式Linux系统编程学习之十四signal信号处理机制
  11. ESXi 中重新启动管理代理
  12. 【NOIP2005】【Luogu1052】过河
  13. 基于OMCS的远程桌面实现远程控制地面站
  14. xmind思维导图模板_思维导图模板
  15. 集群机器搭建多节点MPI运行环境
  16. 打开计算机出现服务器运行失败,win7打开Windows Media Player听歌提示“服务器运行失败”怎么办...
  17. win7系统换主板后无法进系统,卡logo,无法进安全模式的解决方案
  18. 形容谣言的四字词语_形容会说谎的四字词
  19. Python glob()用法
  20. 计算机单片机考试作弊检讨书,关于大学生考试作弊检讨书1000字范文[共7页]

热门文章

  1. 关于J-Flash ARM V4.14c识别Flash ID错误
  2. c语言循环嵌套寻找最大数,C语言的大海里:嵌套的循环语句的重要程序竟然是这几个?...
  3. 除了封装,继承,多态 您还知道那些?-面向对象设计的金字塔
  4. nupt-acm1004
  5. 结构体类型和变量定义及基本操作
  6. cdn搭建原理_什么叫cdn服务器?怎么部署?
  7. 拉伯证券|2023年净利“超十倍潜力股”揭秘
  8. dokuwiki中文linux,linux下安装 Dokuwiki
  9. OpenCV-Python中的标量Scalar是什么
  10. MYSQL查看某个数据库下所有表索引的数据量及占用空间大小