技术分享 | 关于Prometheus自主无人机开发你需要懂得一些“小事”(下)

2023-05-16

上期我们讲解了关于(Prometheus自主无人机开发课程的学习心得,大家可以回顾一下,本期继续为大家带来Prometheus自主无人机,开发的流程和控制模块的讲解。

3. 开发流程

 

1.硬件的选择

整个开发流程先从硬件选择开始。这就需要我们前面所提到的知识,对于自主无人机组成构架是否有一个清楚地认知,你才能够选择合适的机架、机载电脑和传感器等等来组成属于你自己的无人机。

2.软件(功能)选型

对于软件的选型就是对飞控软件、机载处理软件的选型。机载电脑处理软件这里除了包括ROS,Mavros的功能包还需要Prometheus及其他的功能包。

 

3.二次开发

一般是不需要用到这一块内容的,目前Prometheus开发出的功能已经很详尽了,可以直接供大家使用。但如果想要了解,需要先行懂得嵌入式开发和Prometheus所有功能,再来进行研究。

 

4.仿真实验

以上都做好后,我们可以先进行仿真实验,先对代码进行功能测试,测试是否可行,之后进行实物实验,可以节约时间成本。

 

5.最后一步就是进行实物实验

 

4.Prometheus四大模块

Prometheus目前有四个学习demo,分别为控制模块、规划模块、目标检测模块和SLAM模块。这里由于时间问题,只详解了控制模块,对于其他模块,可以参考铂贝学院有关Prometheus的课程自行学习。

 

https://bbs.amovlab.com/plugin.php?id=zhanmishu_video:video&mod=video&cid=43(Prometheus课程网址)

 

4.1. 控制模块

图片

图片 

位置控制

位置控制可以根据控制目标分为三种:位置追踪(定点)、速度追踪(定速)、轨迹追踪。目前广泛适用于无人机自动驾驶仪的控制为串级PID控制器,可以实现位置追踪和速度追踪。而轨迹追踪更常应用于理论学术研究。

 

怎么判断你所设计出来的模型是不是稳定的呢?可以根据数学模型的形式,经过计算,通过稳定判定方法判断稳定性。主要判定方法有:劳斯判据、赫尔维茨判据和李雅普诺夫。劳斯判据和赫尔维茨判据主要通过判断系统的特征值是否小于零来判定系统是否稳定,而李雅普诺夫主要通过考察系统能量的衰减来判断稳定性。

 

四旋翼常见的控制器可以按着有无模型、模型是否线形进行分类。按着模型是否线性分为线性和非线性,

线性:LQR;

非线性:反步法,滑膜,自适应,H无穷等。

 

姿态控制可以分为三类:传统yaw-roll-pitch分别控制、旋转矩阵、四元数。

 

对于控制程度需要了解的是,控制程度的优劣取决于很多方面,包括系统的模型、系统的状态估计(例如当前反馈的位置姿态速度准不准)、控制算法(理论算法,实现出来效果是否可以)、闭环结构的响应等多方面因素。

 

如果想要提升控制性能,可以从以下几个点进行操作。首先要建立更准确的模型(比如参数辨识更好或者参加了动力学模型),之后可以提升系统状态估计(使用GPS、差分GPS),最后改变控制算法(一般PID控制就足够用了),最后可以更换性能更高的硬件。需要值得注意的是提升控制性能需要整体提升才可以,而算法弥补不了整体结构。

 

在Prometheus项目中,px4用到的控制为:PID串级控制、位置环控制。控制框架为三个模式——位置控制、姿态控制和混控。而混控一般不会用到,除非涉及到新机型开发,例如要用到五旋翼或者特殊构型。串级PID的控制方式有很多优点,比如内环相应比外环快等,所以在工程实现中比较多用到串级PID的控制方式。

 

PX4中位置环控制

 

图片

 

图片

图片

 

下面是位置环控制模块文件数,其中:

CMakeList.txt是编译脚本,

mc_pos_control_main.cpp是主程序,

PositionControl.cpp是控制算法,

mc_pos_control_params.c是参数文件。

 

图片

 

图片

 

图片

 

图片

下面是姿态环源码,其内容类似于位置环控制模块。

 

图片

 

接下来介绍怎么进行二次开发,用姿态环二次开发作为例子。

 

由于姿态环属于底层,所以建议在飞控端修改源码。直接修改源码前,需要将所有代码都看一遍。当然也可以选择第二种方法,使用Simulink转C语言后导入。修改完代码后要经过测试流程。通过理论推导,进行Matlab仿真。代码的实现可以通过gazebo仿真器测试代码逻辑,最后通过转台测试进行性能对比后就可以进行实飞测试了。

 

总的来说对于上层开发者,例如做视觉和规划的,只需要了解自定义的每一条msg的含义,直接用于订阅和发布。其次,能够了解控制模块所提供的接口,用于发布正确的指令给控制模块执行。最后还需要了解一下控制模块的一些常见逻辑,更利于开发使用。

 

对于位置环控制器开发者,需要了解位置控制器的代码的编写,也需要使用terminal_control进行各种控制测试。

 

对于编队控制开发者(程度较难),需要掌握PX4仿真机理,知道如何增加飞机等。最后还需要了解编队控制算法。

 

好了,今天的分享内容到此结束啦,以上内容是通过学习铂贝学院《Prometheus自主无人机二次开发》课程而来的,如有其它问题可以观看课程自行学习。

 

https://bbs.amovlab.com/plugin.php?id=zhanmishu_video:video&mod=video&cid=43(Prometheus课程网址)

- End -

 

技术发展的日新月异,阿木实验室将紧跟技术的脚步,不断把机器人行业最新的技术和硬件推荐给大家。看到经过我们培训的学员在技术上突飞猛进,是我们培训最大的价值。如果你在机器人行业,就请关注我们的公众号,我们将持续发布机器人行业最有价值的信息和技术。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

技术分享 | 关于Prometheus自主无人机开发你需要懂得一些“小事”(下) 的相关文章

  • 无人系统路径规划开发流程(避障方向)含代码

    有很多同学在我们微信群和我们阿木实验室论坛提问 xff0c 无人机 无人车的路径规划和避障应该怎么入手 随着无人系统的发展 xff0c 无人系统的路径规划的研究也越来热 生活中无人机器系统也越来越多的出现 xff0c 从无人机 xff0c

随机推荐

  • 双旋翼Falcon无人机背后技术之PX4混控器

    最近被零零科技的矢量动力双旋翼Falcon无人机刷屏了 xff0c 其50分钟的续航让行业惊艳 感谢零零科技为无人机行业带来了创新的正能量 xff01 可能很多人会有疑惑 xff1f 为什么四旋翼无人机可以变身双旋翼无人机 xff0c 背后
  • PX4-Vision 自主无人机开发平台测评

    对于目前的自主无人机开发平台上 xff0c 国内的用户除了我们阿木实验室出品的自主无人机开发平台上 xff0c 又多了一种选择 xff0c 就是这个 PX4 Vision 自主无人机开发平台 硬件上是 pixhawk 4 一个 UP Boa
  • Matlab的GUI的slider滑动条和edit动态文本框联合使用例程

    代码链接 xff1a https download csdn net download benchuspx 12404653 今天想用matlab的plot画个函数的曲线图 xff0c 函数有一个参数a可以调 xff0c 不同的a对应不同的
  • 【收藏备用】控制理论结构图——一目了然全面了解控制理论

    中国自动化学会会员 System control xff0c 通过整合各种资源以及IEEE控制系统协会 国内外控制领域同仁的建议 历时12天 xff0c 迭代6个版本 xff0c 最终绘制而成的控制理论结构图 强烈建议收藏备用 xff01
  • 工程开发利器-Homer高带宽 多接口 可组网数据传输链路

    我们阿木实验室经常做各种无人系统的实验 xff0c 比如需要从远端无线采集视频图像 xff0c 本地给远端一个串口控制量 xff0c 采集远端的各种传感器数据等 有的时候需要支持TCP IP的网络数据 xff0c 有的时候需要串口透明传输数
  • 开源自主无人机软件平台—Prometheus

    Prometheus xff0c 在希腊神话中 xff0c 是最具智慧的神明之一 xff0c 希望Prometheus项目能为无人机研发工作带来无限的智慧与光明 同时电影普罗米修斯里面的无人机在黑洞中自由穿越 xff0c 也是我们在技术层面
  • 课程学习 | 开源水下机器人地面站软件开发

    鳌海海洋 xff08 AOHI Ocean xff09 是一家由国内著名高校博士 海归博士等人创立 xff0c 长期致力于以水下机器人技术为核心的海洋装备研究与开发 xff0c 正在为国家海洋局 国家电网 中船集团 蓝天救援队 千岛湖消防队
  • 阿木实验室技术课程和项目科研招募,分享知识获取收益

    阿木实验室专注于无人化系统开发平台的研发与生产 xff0c 并致力于推广前沿IT科技技术及其教育 希望通过整合优质资源 xff0c 提升研发效率 xff0c 从而促进整个技术生态的发展 为了达成这一宏伟愿景 xff0c 单靠我们是不够的 因
  • 技术专栏|阿木无人机室内避障

    之前阿木实验室提供了一系列室内定位的方案 xff0c 以及对各自的特点进行了介绍 本期我们采用T265的视觉定位方案 xff0c Matlab ROS Toolbox进行了VFH室内避障测试 Matlab ROS Toolbox 众所周知
  • 大疆览沃浩界(Livox Horizon)激光雷达测评

    测评人 董小胖 Livox Horizon xff08 览沃浩界 xff09 介绍 Livox Horizon xff08 览沃浩界 xff09 是大疆专为L3 L4自动驾驶打造的一款激光雷达 与传统的采用机械旋转结构的激光雷达不同 xff
  • 大疆Payload SDK开发火热来袭!

    DJI SDK开发课程之 大疆Payload SDK xff08 PSDK xff09 开发今日正式上线 本课程由 铂贝学院 xff08 阿木实验室 xff09 联合DJI 大疆共同推出 xff01 大疆PSDK开发课程介绍 DJI 为支持
  • 技术专栏 | 关于吊舱你了解多少?

    01 背景及预期目标 在无人机航拍领域中 xff0c 为了实现追踪拍摄 xff0c 目标检测和追踪必不可少 xff0c 因此 xff0c 目标检测和追踪技术是无人机航拍领域的重要研究方向 在本项目中 xff0c 我们将yolov3目标检测方
  • PX4官方动态 | 通过WSL2在AirSim下实现PX4仿真

    支持PX4仿真的开源项目AirSim PX4作为主流的开源飞控 xff0c 为无人机开发者们提供了一个优秀的平台 PX4用户可以将飞控板作为核心 xff0c 构建属于自己的无人机 但开源无人机的初学者很难避免炸机的惨剧 xff0c 轻则螺旋
  • P200阿木无人机学习笔记--二维码引导着陆

    目录 我手上的阿木实验室的P200无人机配置 现阶段目标 xff1a 实现二维码引导着陆 项目理解 进度 更新中 踩坑经验 初次设置时没有显示器如何远程连接TX2 xff1f 虚拟机和双系统谁更好 xff08 ubuntu xff09 无人
  • 技术分享 | 基础知识干货,带你走进PX4的世界

    上期我们讲解了PX4的基础知识 xff08 上 xff09 大家可以回顾一下 xff0c 本期继续为大家带来PX4基础知识下半部分内容的讲解 1 PX4的开发流程 飞控简单来讲 xff0c 就是通过控制电机速度从而控制飞机飞行状态 xff0
  • 新品发布 | 无人机集群编队全套方案来啦!

    无人机集群编队开发平台 当我们研究集群算法或相关应用时 xff0c 一般情况下 xff0c 都会先开发仿真 xff0c 仿真开发完毕后 xff0c 常常因为找不到合适的无人机平台验证自己的集群算法或代码而发愁 xff0c 好不容易找到接近的
  • 技术分享 | P450-二维码降落

    原理说明 二维码降落原理 ArUco a minimal library for Augmented Reality applications based on OpenCV xff0c 是科尔多瓦大学 34 人工视觉应用 34 研究小组
  • 技术分享 | P450 ego-planner的干货分享

    原理说明 传统的基于梯度的运动规划算法需要构建所需的ESDF地图 xff0c 然而构建地图花费了整个规划算法70 的时间 xff0c 从而限制了在有限资源情况下的运动规划方法的使用 ESDF的构建方式有全局增量式和批量本地计算两种方式 xf
  • 技术分享 | 关于Prometheus自主无人机开发你需要懂得一些“小事”(上)

    最近学习了关于Prometheus课程 xff0c 以下是我对该课程的大致了解 xff0c 写的可能有点偏基础 xff0c 但是想和大家一起分享一下学习经验 顺便想鼓励一下想学无人机的盆友们 xff0c 如果你想接触但却担心没有基础感觉手足
  • 技术分享 | 关于Prometheus自主无人机开发你需要懂得一些“小事”(下)

    上期我们讲解了关于 xff08 Prometheus自主无人机开发课程的学习心得 xff09 xff0c 大家可以回顾一下 xff0c 本期继续为大家带来Prometheus自主无人机 xff0c 开发的流程和控制模块的讲解 3 开发流程