当前位置:   article > 正文

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

mavros

前言

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

数传

用于查看数传状态:

3DR_RADIO:
/mavros/radio_status (mavros_msgs/RadioStatus)
  • 1
  • 2

全局位置

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
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

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    //线加速度的协方差
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

本地位置

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

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

Local velocity:
/mavros/local_position/velocity (geometry_msgs/TwistStamped)
  • 1
  • 2
  • 3
  • 4
  • 5

飞控命令

用于向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)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

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

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

设置加速度:

set acceleration:
/mavros/setpoint_accel/accel (geometry_msgs/Vector3Stamped)
  • 1
  • 2

设置速度:

set velocity:
/mavros/setpoint_velocity/cmd_vel_unstamped (geometry_msgs/Twist)
  • 1
  • 2

设置位姿:

set attitude:
/mavros/setpoint_attitude/attitude (geometry_msgs/PoseStamped)
  • 1
  • 2

设置角速度:

set angular velocity:
setpoint_attitude/cmd_vel (geometry_msgs/TwistStamped)
  • 1
  • 2

设置油门:

set thrust:
/mavros/setpoint_attitude/thrust (mavros_msgs/Thrust)
  • 1
  • 2

设置飞行位点:

set local position:
/mavros/setpoint_position/local (geometry_msgs/PoseStamped)

set global position:
/mavros/setpoint_position/global (geographic_msgs/GeoPoseStamped)
  • 1
  • 2
  • 3
  • 4
  • 5

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

系统状态

用于检测FCU状态。

Sys state:

Publish:
/mavros/state (mavros_msgs/State)

Service:
/mavros/set_mode (mavros_msgs/SetMode)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

系统时间

用于时间同步。

Time:
/mavros/time_reference (sensor_msgs/TimeReference)
  • 1
  • 2

其它

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

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/393224
推荐阅读
相关标签
  

闽ICP备14008679号