/Prometheus

Open source software for autonomous drones.

Primary LanguageC++Apache License 2.0Apache-2.0

prometheus logo

Prometheus - 自主无人机开源项目

[English Readme]

Prometheus是希腊神话中最具智慧的神明之一,希望本项目能为无人机研发带来无限的智慧与光明。

修改说明

  • 本项目已经经过编译,如果需要移植,需要先用原始的Prometheus项目进行编译,然后把/Prometheus文件夹换成本文件夹
  • 本机环境:
    • Ubuntu20.04
    • OpenCV4.3.0(在object_detection的CMakeLists.txt中手动指定了OpenCV的路径)
    • NVIDIA-SMI 515.65.01 Driver Version: 515.65.01 CUDA Version: 11.7
    • 目标检测模块需要conda对应的python环境,具体见Prometheus使用手册
  • YoloV5部分是个内嵌的git仓库,为了方便我把它变成了普通文件夹
  • 我把原始项目的darknet_ros部分换成了github上原作者的项目,同时修改了CMakeLists.txt
  • 部分需要用到旧版本OpenCV的模块被我注释了,比如椭圆检测部分,实际不影响其他demo运行

  • 修改了部分sdf和world文件内容(在我的机子上无法通过include直接引用sdf的话题,推测为gazebo的问题)
  • 添加了若干用于调试的脚本
  • 训练了自己的yolov5模型

  • 结合了追踪和避障模块,整合了启动脚本于merge_yolo_and_egoplan/
  • 修改了ego的状态机,使之能边规划边飞行
  • 修改了traj_server_for_prometheus.cpp的pub_prometheus_command函数,使飞机的姿态角始终对准目标

项目总览

Prometheus是一套开源的自主无人机软件系统平台,为无人机的智能与自主飞行提供全套解决方案。本项目基于PX4开源飞控固件ROS机器人操作系统,旨在为无人机开发者配套成熟可用的机载电脑端软件系统,提供更加简洁快速的开发体验。目前已集成控制规划目标检测等研究方向,提供多个功能demo,并配套有Amovlab仿真组件。

快速入门

  • 安装及使用:Prometheus使用手册

    • 需掌握C语言基础(大部分程序为C语言,部分模块有少量C++和python的语法)。
    • 纯新手入门者建议先自学ROS官网教程。
    • PX4飞控代码可不掌握,但需要掌握基本概念及基本操作。
  • 答疑及交流:

    • 答疑论坛(官方定期答疑,推荐):阿木社区-Prometheus问答专区
    • 添加微信jiayue199506(备注消息:Prometheus)进入Prometheus自主无人机交流群。
    • B站搜索并关注“阿木社区”,开发团队定期直播答疑。

进阶学习

  • Promehteus自主无人机二次开发课程: 本课程偏重本项目中的基础知识和操作实践,适合本项目入门者。课程报名请戳这里
  • 更多进阶学习资料正在紧张筹备中。

硬件产品

Prometheus校园赞助计划

  • 奖励使用Prometheus进行实验并发表相关论文的学生科研工作者。

    @misc{Prometheus, author = "Amovlab", title = "Prometheus autonomous UAV opensource project", howpublished = "\url{https://github.com/amov-lab/Prometheus }", }

  • 奖励为Prometheus提供新功能或帮忙进行测试的学生开发者。

  • 详情请戳这里

联系我们

  • 公司官网:阿木实验室

  • 项目合作、无人机软硬件定制,请添加微信“yanyue199506”(备注消息:Prometheus定制)。

版权声明

  • 本项目受 Apache License 2.0 协议保护。点击 LICENSE了解更多
  • 本项目仅限个人使用,请勿用于商业用途。
  • 如利用本项目进行营利活动,阿木实验室将追究侵权行为。