Ubuntu20.04安装ROS1+PX4+MAVROS+QGC

  金牌会员 | 2024-6-22 00:50:25 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 992|帖子 992|积分 2976

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
目录
1. 一键安装ROS1
2. 安装PX4
3. 添加变量
4. 安装MAVROS 
5. 测试MAVROS与PX4是否连接
6. 安装QGC
参考
1. 一键安装ROS1

 (参考鱼香ROS大佬:小鱼的一键安装系列) 
  1. wget http://fishros.com/install -O fishros && . fishros
复制代码


输入1,安装 ROS,背面就按照推荐的来




ROS1安装完成 ,举行小海龟测试
打开终端,运行
  1. roscore
复制代码

另外打开一个终端,输入 
  1. rosrun turtlesim turtlesim_node
复制代码

再另外打开一个终端,输入
  1. rosrun turtlesim turtle_teleop_key
复制代码
 可以通过方向键控制小海龟运动
2. 安装PX4

从github上下载源码(必要挂代理)
  1. git clone https://github.com/PX4/PX4-Autopilot.git --recursive
复制代码
如果出现如下错误

则运行
  1. sudo apt install git
复制代码

等待几分钟后源码下载完成

进入PX4-Autopilot文件夹,继续下载未下载完的组件 
  1. cd PX4-Autopilot/
  2. git submodule update --init --recursive
复制代码

继续实行ubuntu.sh脚本
  1. cd ..
  2. bash ./PX4-Autopilot/Tools/setup/ubuntu.sh
复制代码
中央如果堕落

实行指令
  1. python3 -m pip install --upgrade pip
  2. python3 -m pip install --upgrade Pillow
复制代码

 如果过程中有安装失败的地方,可以更新修复一下
  1. bash ./PX4-Autopilot/Tools/setup/ubuntu.sh --fix-missing
复制代码

完成后重启系统,并进入PX4-Autopilot文件夹举行测试
  1. cd PX4-Autopilot
  2. make px4_sitl_default gazebo
复制代码

输入腾飞指令
  1. commander takeoff
复制代码

然后关闭Gazebo
  1. shutdown
复制代码
3. 添加变量

在情况变量文件中直接添加
1. 打开文件,在终端输入
  1. sudo  gedit ~/.bashrc
复制代码

 2. 在ROS行背面添加代码
  1. source ~/PX4-Autopilot/Tools/simulation/gazebo-classic/setup_gazebo.bash ~/PX4-Autopilot ~/PX4-Autopilot/build/px4_sitl_default
  2. export ROS_PACKAGE_PATH=$ROS_PACKAGE_PATH:~/PX4-Autopilot
  3. export ROS_PACKAGE_PATH=$ROS_PACKAGE_PATH:~/PX4-Autopilot/Tools/simulation/gazebo-classic/sitl_gazebo-classic
复制代码

3. 点击保存,并关闭,在终端输入
  1. source ~/.bashrc
复制代码

4. 重启终端,顶端出现下图所示,代表添加变量成功

4. 安装MAVROS 

打开终端运行
  1. sudo apt-get install ros-noetic-mavros ros-noetic-mavros-extras
复制代码


举行测试 
  1. roslaunch mavros px4.launch
复制代码
 如果报错

运行
  1. sudo /opt/ros/noetic/lib/mavros/install_geographiclib_datasets.sh
复制代码

再次测试,还是同样错误,颠末搜索,发现是未连接硬件的正常征象
http://www.360doc.com/content/12/0121/07/1676247_1081096209.shtml


注意:如果接上飞控还报错的话,可实行下面操作:
终端输入
  1. cd /opt/ros/noetic/share/mavros/launch/
  2. sudo touch px4_ACM0.launch
复制代码
打开 px4_ACM0.launch 文件,
  1. sudo gedit px4_ACM0.launch
复制代码
将其内容改为
  1. <launch>
  2.         <!-- vim: set ft=xml noet : -->
  3.         <!-- example launch script for PX4 based FCU's -->
  4.         <arg name="fcu_url" default="/dev/ttyACM0:921600" />
  5.         <arg name="gcs_url" default="" />
  6.         <arg name="tgt_system" default="1" />
  7.         <arg name="tgt_component" default="1" />
  8.         <arg name="log_output" default="screen" />
  9.         <arg name="fcu_protocol" default="v2.0" />
  10.         <arg name="respawn_mavros" default="false" />
  11.         <include file="$(find mavros)/launch/node.launch">
  12.                 <arg name="pluginlists_yaml" value="$(find mavros)/launch/px4_pluginlists.yaml" />
  13.                 <arg name="config_yaml" value="$(find mavros)/launch/px4_config.yaml" />
  14.                 <arg name="fcu_url" value="$(arg fcu_url)" />
  15.                 <arg name="gcs_url" value="$(arg gcs_url)" />
  16.                 <arg name="tgt_system" value="$(arg tgt_system)" />
  17.                 <arg name="tgt_component" value="$(arg tgt_component)" />
  18.                 <arg name="log_output" value="$(arg log_output)" />
  19.                 <arg name="fcu_protocol" value="$(arg fcu_protocol)" />
  20.                 <arg name="respawn_mavros" default="$(arg respawn_mavros)" />
  21.         </include>
  22. </launch>
复制代码
保存退出。
然后终端输入
  1. sudo chmod 777 /dev/ttyACM0
复制代码
然后再次启动 mavros,终端输入
  1. roslaunch mavros px4.launch
复制代码
 不再报错。
5. 测试MAVROS与PX4是否连接

运行
  1. roslaunch px4 mavros_posix_sitl.launch
复制代码
 Gazebo,PX4和MAVROS启动,说明连接正常

另外打开一个终端,运行
  1. rostopic echo /mavros/state
复制代码
connected表现ture表示连接正常 

如果实行命令后表现错误,可在另一终端运行roscore后,再重新测试。
6. 安装QGC

参考文档
https://docs.qgroundcontrol.com/master/en/getting_started/download_and_install.html
打开终端,运行
  1. sudo usermod -a -G dialout $USER
复制代码

运行
  1. sudo apt-get remove modemmanager -y
复制代码

运行
  1. sudo apt install gstreamer1.0-plugins-bad gstreamer1.0-libav gstreamer1.0-gl -y
复制代码

运行
  1. sudo apt install libqt5gui5 -y
复制代码

运行
  1. sudo apt install libfuse2 -y
复制代码
 注销并重新登录,以确保更改生效
下载 QGroundControl.AppImage

在下载文件夹中打开终端,并运行
  1. chmod +x ./QGroundControl.AppImage
  2. ./QGroundControl.AppImage
复制代码

安装完成
参考


  • Ubuntu20.04+MAVROS+PX4+Gazebo保姆级安装教程
  • Ubuntu18.04下ROS+Gazebo+Mavros+PX4安装教程(最新!最全!)

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

正序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表