阿木实验室普罗米修斯项目环境配置

引言

普罗米修斯项目其实只是个大ROS功能包, 里面每个模块就是每个ROS功能包,比如控制模块,视觉模块等等。对PX4配置的与这个一样,另外他是使用自己的P系列无人机(我个人是P450),所以你得去下载他自己的适配的PX4的代码,他叫prometheus_px4,其实本质也是PX4的代码,里面修改一些参数和配置。

prometheus_px4环境配置

为什么要配置prometheus_px4,因为使用的是适配P系列无人机的PX4代码,他换个了名字,叫做prometheus_px4,其实里面还是PX4.

git clone -b Prometheus_PX4_1.11.1 https://gitee.com/amovlab/prometheus_px4.git
#进入目录检查一下分支
cd prometheus_px4/
git branch
#显示* Prometheus_PX4_1.11.1代表分支下载正确

如果你是第一次安装PX4的话,是需要安装PX4环境的(主要是编译环境)

#更新一下
cd prometheus_px4
git submodule update --init --recursive
#开始安装编译环境
cd prometheus_px4/Tools/setup## 请在运行此脚本时注意终端的打印信息,保证每一项均顺利安装## 这一步问题最多,一定仔细检查是否正确安装!!!   ## 若有某一项失败或一直卡住,请重新运行即可!
source ./ubuntu.sh

Prometheus配置

git clone -b v1.1 https://gitee.com/amovlab/Prometheus.git#进入目录检查一下分支
cd Prometheus
git branch
#显示* v1.1代表分支下载正确

下载完毕之后,进行编译,因为Prometheus本质是个ROS功能包,这个看你需要使用什么模块儿了,就编译什么模块。

cd Prometheus
sudo chmod 777 ./compile_all.sh (第一次运行才需要执行此赋权命令)
./compile_all.sh

特别强调说明:

目前每个模块都是一个独立的ros包,编译脚本会负责全部或部分编译模块代码,每个包的命名规则为prometheus_xxx
因此如果你只做控制或者只做视觉,只需要编译对应的脚本即可,极大降低开发难度(比如你编译的时候你不感兴趣的代码报错了,也许这个报错你完全不需要考虑)
编译脚本说明:

compile_all.sh默认编译项目中所有代码,因此编译时请确认每个模块都没有报错
compile_control.sh则只编译控制部分代码,若只需要使用控制部分代码,运行./compile_control.sh即可,其他编译脚本其自行查阅理解

在这里插入图片描述

Gazebo仿真测试

记得打开QGC地面站

#启动仿真环境
roslaunch prometheus_gazebo sitl.launch

此时,第一个终端同时运行了PX4仿真、Mavros、px4_pos_estimator、px4_pos_controller四个节点,第二个终端则运行了ground_station节点。因此,若第一个终端无报错,第二个终端显示[Connected]并能够查看到飞机状态,且Gazebo成功运行,代表成功运行。

在Gazebo仿真环境中,根据仿真目的不同提供以下方式控制无人机飞行:


启动普罗米修斯功能包
运行之后需要选择使用command input control(通过输入目标点的方式控制) 或者keyboard input control(通过键盘控制)两种方式

command input control

​ 一般情况下,首先输入999解锁并切换至offboard模式,然后输入1起飞,然后再根据提示输入其他指令(悬停、降落、机体系移动、惯性系移动、轨迹追踪等等)

rosrun prometheus_control terminal_control

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/268371.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Objection

本文作者:杉木涂鸦智能安全实验室 Home objection - 基于frida的命令行hook工具食用手册 实用FRIDA进阶:内存漫游、hook anywhere、抓包-安全客 - 安全资讯平台 Objection是一个基于Frida的命令行hook工具,用于移动设备的运行时探索。它可…

Idea的Marketplace下载不了插件,idea下不了插件

Idea的Marketplace下载不了插件 解决方案(配置代理) 附一张成功界面 2.问题复现 3.问题原因和解决方式:下载安装IDEA之后HTTP Proxy没有进行相关配置的问题,解决方式如下 1.首先打开file->setting->Appearance & B…

Maxscript入门教程:Print与Format命令

本文对Maxscript中的“Print”和“Format”命令之间的差异进行了一些小小的研究,得出的结论主要的差异是它们的结果中的引号“”。 “Print”很简单,直接使用,在调试时非常有用。为了工作,它只需要一个字符串(这是两个…

[学习笔记]在CentOS7中用Docker方式安装Jenkins

文章目录 原理:创建Docker网桥网络安装DinD创建镜像构建镜像运行容器 原理: Docker in Docker (以下简称 DinD)可以在 Container 中直接运行一个 Docker Daemon ,然后使用 Container 中的 Docker CLI 工具操作容器。其…

最详细的Selenium+Pytest自动化测试框架实战

前言 selenium自动化 pytest测试框架 本章你需要 一定的python基础——至少明白类与对象,封装继承 一定的selenium基础——本篇不讲selenium, 测试框架简介 测试框架有什么优点呢: 代码复用率高,如果不使用框架的话&#xff…

【模拟】LeetCode-48. 旋转图像

旋转图像。 给定一个 n n 的二维矩阵 matrix 表示一个图像。请你将图像顺时针旋转 90 度。 你必须在 原地 旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要 使用另一个矩阵来旋转图像。 示例 1: 输入:matrix [[1,2,3],[4,5,6]…

武汉凯迪正大—门尼粘度试验机

武汉凯迪正大KY-6004型门尼粘度仪用于胶料粘度和硫化指数的测定。试样在一定的温度和压力下,转子以一定的旋转力矩对试样加以一定的剪切力,仪器测出橡胶的反剪切力矩,是再生胶、橡胶、电线电缆行业常用的仪器之一。 武汉凯迪正大KY-6004型门…

科技与艺术相结合,虚拟人裸眼3D动画亮相城市商圈

随着元宇宙概念的火爆,虚拟制作技术的快速发展,虚拟人可以将虚拟世界与现实世界相结合,为用户带来沉浸式体验。如虚拟人壬子希以裸眼3D动画的形式亮相城市商圈,助力文旅以科技与艺术相结合的形式,展现城市文化与科技成…

【SpringBoot】入门精简

目录 一、初识 SpringBoot 1.1 介绍 1.2 项目创建 1.3 目录结构 1.4 修改配置 二、SpringBoot 集成 2.1 集成 Mybatis框架 2.2 集成 Pagehepler分页插件 2.3 集成 Druid数据库连接池 2.4 集成 Log日志管理 一、初识 SpringBoot 1.1 介绍 Spring Boot是一个用于简化Sp…

软件开发流程分析

软件开发流程分析 相关概念1 原型设计2 产品设计3 交互设计4 代码实现详细步骤 相关概念 前端:自研API,调用第三放API 后端:自研API,第三方API 数据库:Mysql,数据采集,数据迁移 服务器&#xf…

nuitka Unknown property box-shadow,transition,transform

nuitka 打包后,控制台的错误解决方法 nuitka --standalone --show-memory --show-progress --nofollow-imports --follow-import-toneed --output-dirout --windows-icon-from-ico./static/test.ico mainUI2.py 由于Qt样式表不是CSS,QSS基于CSS2.1&…

绘图示例---QT手动调用绘图事件,按钮控制图片

效果: 点击 “移动” 图片向右移动20,点击 “西理win嘛” 图片每秒向右移动20 QQ录屏20231212164128 下面时代码详解: 注意使用UI和代码实现按钮的不同 UI: ui->pushButton->setGeometry(windowWidth-105, windowHeight-25, 100, 20);…