欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 健康 > 养生 > 安装mavros_controller

安装mavros_controller

2025/6/2 0:56:50 来源:https://blog.csdn.net/weixin_55944949/article/details/144932621  浏览:    关键词:安装mavros_controller

mavros_controller

  • 1. 准备
    • ROS
    • PX4 仿真环境
  • 2. 安装
    • 下载源码
    • 编译
    • 运行
  • 参考

适用 Ubuntu 18.04 + ROS melodic、Ubuntu 20.04 + ROS noetic

1. 准备

ROS

安装之前必须确保你的系统已经安装了ROS,如果没有安装可以参考下面这篇文章👇
ubuntu安装ROS(1) —— 以 ROS1 melodic 为例(最新、超详细图文教程,包含配置rosdep)

(没有创建工作空间,可以执行下列代码,如果创建了可以跳过)

sudo apt-get install python-catkin-tools python-rosinstall-generator -y
# for Ubuntu 20
# sudo apt install python3-catkin-tools python3-rosinstall-generator python3-osrf-pycommon -y
mkdir -p ~/catkin_ws/src
cd catkin_ws && catkin init
catkin build

PX4 仿真环境

安装之前必须确保你的Ubuntu已经配置好了PX4基础仿真环境,如果没有安装可以参考下面这篇文章👇

(最新)ubuntu搭建PX4无人机仿真环境(4) ——仿真环境搭建(以Ubuntu 18.04,ROS1 Melodic 为例)_px4仿真环境搭建-CSDN博客

2. 安装

下载源码

cd ~/catkin_ws/src
wstool init
git clone https://github.com/Jaeyoung-Lim/mavros_controllers
cd ~/catkin_ws
wstool merge -t src src/mavros_controllers/dependencies.rosinstall
wstool update -t src -j4 # 这会从 Github上下载源码,所以比较考验网络
rosdep install --from-paths src --ignore-src -y --rosdistro $ROS_DISTRO

编译

cd ~/catkin_ws
catkin build

运行

sitl_trajectory_track_circle.launch 文件会同时启动 PX4 仿真和 mavros_controller,我们这里修改一下,让它们分开启动**(确保PX4仿真是好的)**

<launch><arg name="mav_name" default="iris"/><arg name="fcu_url" default="udp://:14540@127.0.0.1:14557"/><arg name="gcs_url" default="" /><arg name="tgt_system" default="1" /><arg name="tgt_component" default="1" /><arg name="command_input" default="2" /><arg name="gazebo_simulation" default="true" /><arg name="visualization" default="false"/><arg name="log_output" default="screen" /><arg name="fcu_protocol" default="v2.0" /><arg name="respawn_mavros" default="false" /><node pkg="geometric_controller" type="geometric_controller_node" name="geometric_controller" output="screen"><param name="mav_name" type="string" value="$(arg mav_name)" /><remap from="command/bodyrate_command" to="/mavros/setpoint_raw/attitude"/><param name="ctrl_mode" value="$(arg command_input)" /><param name="enable_sim" value="$(arg gazebo_simulation)" /><param name="enable_gazebo_state" value="true"/><param name="max_acc" value="10.0" /><!--Params specific for Iris copter--><param name="attctrl_constant" value="0.3"/><param name="normalizedthrust_constant" value="0.06"/><param name="normalizedthrust_offset" value="0.1"/><param name="Kp_x" value="10.0" /><param name="Kp_y" value="10.0" /><param name="Kp_z" value="20.0" /><param name="Kv_x" value="5.0"/><param name="Kv_y" value="5.0"/><param name="Kv_z" value="10.0"/></node><node pkg="trajectory_publisher" type="trajectory_publisher" name="trajectory_publisher" output="screen"><param name="trajectory_type" value="1" /><param name="shape_omega" value="1.2" /><param name="initpos_z" value="2.0" /><param name="reference_type" value="2" /></node><!-- Launch rqt_reconfigure --><node pkg="rqt_reconfigure" type="rqt_reconfigure" output="screen" name="rqt_reconfigure" /><!-- <include file="$(find mavros)/launch/node.launch"><arg name="pluginlists_yaml" value="$(find mavros)/launch/px4_pluginlists.yaml" /><arg name="config_yaml" value="$(find mavros)/launch/px4_config.yaml" /><arg name="fcu_url" value="$(arg fcu_url)" /><arg name="gcs_url" value="$(arg gcs_url)" /><arg name="tgt_system" value="$(arg tgt_system)" /><arg name="tgt_component" value="$(arg tgt_component)" /><arg name="log_output" value="$(arg log_output)" /><arg name="fcu_protocol" value="$(arg fcu_protocol)" /><arg name="respawn_mavros" default="$(arg respawn_mavros)" /></include><include file="$(find px4)/launch/posix_sitl.launch"><arg name="vehicle" value="$(arg mav_name)"/></include> --><group if="$(arg visualization)"><node type="rviz" name="rviz" pkg="rviz" args="-d $(find geometric_controller)/launch/config_file.rviz" /></group></launch>

修改好后记得保存(这里只是注释了)

  • 终端一:
roslaunch px4 mavros_posix_sitl.launch
  • 终端二:
source ~/catkin_ws/devel/setup.bash
roslaunch geometric_controller sitl_trajectory_track_circle.launch

演示:(飞圆形)

项目复现——mavros

参考

mavros_controller

如有其他问题,或者发现文章有错误,请在评论区留言
Keep learning!

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com