无人机跟随一维高度避障场景--逻辑分析

无人机跟随一维高度避障场景--逻辑分析

  • 1. 源由
  • 2. 视频
  • 3. 问题
    • 3.1 思维发散
    • 3.2 问题收敛
  • 4. 图示
    • 4.1 水平模式
    • 4.2 下坡模式
    • 4.3 上坡模式
    • 4.4 碰撞分析
  • 5. 总结
    • 5.1 一维高度避障场景
    • 5.2 业界跟随产品
    • 5.3 APM集成跟随
    • 示意图一:
    • 示意图二:
    • 示意图三:
  • 6. 参考资料
  • 7. 补充资料 - 大疆智能跟随
    • 7.1 炸机
    • 7.2 成功

1. 源由

最近拿到一台测试样机,功能很多,就不多赘述。

这里针对跟随功能进行下吐槽和分析,当然由于成本或者技术问题,该机不配备3D/2D避障功能。

2. 视频

首先,上视频,不废话。

HoverX1 同样的路不一定好走,但低头走路一定不行

3. 问题

问题就是我走的好好的,结果这个跟随的飞机碰到树的枝叶了。

头脑风暴开始需要发散,然而实际问题需要收敛。

3.1 思维发散

通常认为【在指定时刻】,【3维空间】无人机对主体目标的【可视无遮挡】【相对位置】。

这里将几个比较关键的描述用“【】”给加强出来。

所以该问题实际上存在几个分析点:

  • 两个相对物体(无人机,主体目标)同一时刻下
  • 在三维空间坐标系统下的坐标和速度
  • 在可视区域,中间无遮挡的情况下
  • 相对位置在可控范围(视频能看清/跟踪信号良好等)

3.2 问题收敛

接下来,比较务实的来收敛这个问题,假设如下:

  • 地面物体低速运动(< 10m/s)场景 // 100米奥运世界纪录是9.58秒,由博尔特创造的记录。
  • 路径规划xy跟随目标行进路线
  • 不提升硬件规格或者设计前提

基于以上假设,可以认为:

  • 无人机速度能够跟得上低速运动跟随目标。
  • 在目标运动xy轨迹与横截面构成的空间区域可以定义为无障碍空间。

此时,需要考虑如下几个场景

  • 常规异常情况【电池耗尽、目标丢失等等】
  • 当飞行高度超过目标高度时,在飞行高度上出现障碍物
  • 跟随飞行过程中,在目标与无人机之间突然出现障碍物
  • 跟随飞行过程中,目标高度出现变化(比如:人弯腰行进等)

综合上面场景,将问题收敛到在原有策略基础上增加一维高度维度的障碍物感知分析。

4. 图示

测试视频是设置平拍模式。

按照本人的理解平拍是在某个高度(智能的角度,VIO自动测定的一个跟踪目标的高度)。

注:鉴于测试样机是可以选择跟随高度:高、中(平拍)、低。

4.1 水平模式

在这里插入图片描述

4.2 下坡模式

在这里插入图片描述

4.3 上坡模式

在这里插入图片描述

4.4 碰撞分析

视频在上坡时发生与树枝的碰撞,如图所示。

如此时能在Z方向的高度维度进行视频障碍物检查,降低高度,同时跟随摄像头抬高视角,走到S位置,将可以规避该风险。

在这里插入图片描述
从实际视频效果看,小飞机跟随策略是始终保持头部高度以上一点的位置,因此,下坡就没有类似问题。

在这里插入图片描述

5. 总结

5.1 一维高度避障场景

这里仅仅针对上桥跟随视频出现树枝遮挡这种障碍物场景进行了简单的分析。

从逻辑的角度,如果没有3D避障传感器支持的情况下,需要通过单目摄像头测距,平面解析几何,来做出高度方向的规划。

作为有保护圈的小型无人机,可以考虑降低以安全避开此类障碍物,因为低空通过性会更好,更安全(需要考虑最低高度,越低出现突然障碍物的可性能就会大幅度提高,比如:小孩)。

在公园或者小树林,其实这种场景是很多的。如果没有很好的3D避障传感器,那么做一个跟随一维高度避障就显得很有意义。

以下是设置平拍(勉强在这个公园能通过,不过一些角落是没有去的),如果设置高,那么100%会碰到树枝。

HoverX1 城北公园散步

5.2 业界跟随产品

目前,市场上比较成熟的产品可以参考下以下视频:

Top 5 best follow me drone 2023

5.3 APM集成跟随

当然目前业界排名前列的产品也并非做到了非常好的跟随效果,尤其是在避障方面。

通过对Ardupilot的了解,如果能将ROS在避障方面的智能集成进来,也未尝不是一种很好的解决方案。

示意图一:

在这里插入图片描述

示意图二:

在这里插入图片描述

示意图三:

在这里插入图片描述
上述方案可能或多或少都会涉及到新增飞行模式(当然也看飞控和传感器的物理连接方式,这里主要是针对ArduPilot),关于飞行模式可以参考:ArduPilot开源飞控之飞行模式


  • Object Avoidance
  • ROS and VIO tracking camera for non-GPS Navigation
  • Follow
  • FollowMe
  • Adding a New Flight Mode to Copter

Drone based follow

6. 参考资料

【1】ArduPilot开源飞控系统之简单介绍

7. 补充资料 - 大疆智能跟随

总的来看,避障方面做的都不太好。所以有所突破就是产品亮点。

7.1 炸机

【损失桨叶一套】MNI 3 PRO智能跟随炸机了

大疆mini3pro自动跟随模式炸机啦!视频结尾处~

大疆御3,萌新自动跟随炸机

大疆御3自动跟随炸机,撞树。维修费用自理。大家看看是否正常。宣传片里可以穿林,在树梢穿越。是否属于虚假宣传?

DJI Mini 3 Pro 自动跟随炸机

7.2 成功

mini3pro智能跟随

大疆无人机智能跟随,避障功能无敌了,结果真没想到……

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

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

相关文章

Java算法_ 验证二叉搜索树(LeetCode_Hot100)

题目描述&#xff1a; 给你一个二叉树的根节点 &#xff0c;判断其是否是一个有效的二叉搜索树。root 有效 二叉搜索树定义如下&#xff1a; 节点的左子树只包含 小于 当前节点的数。 节点的右子树只包含 大于 当前节点的数。 所有左子树和右子树自身必须也是二叉搜索树。 获得…

【TypeScript】tsc -v 报错 —— 在此系统上禁止运行脚本

在 VS Code 终端中执行 tsc -v &#xff0c;报错 —— 在此系统上禁止运行脚本 然后 windows x &#xff0c;打开终端管理员&#xff0c;出现同样的问题 解决方法&#xff1a; 终端&#xff08;管理员&#xff09;执行以下命令&#xff1a; 出现 RemoteSigned 则代表更改成功…

开发一个文生图的功能

文章目录 效果开发环境原理核心代码代码仓库问题效果 开发环境 Python 3.10PyCharm原理 借助开源项目stable-diffusion,通过该项目封装python库diffusers,可以轻易的实现文生图的功能。 关于更多diffusers的功能请访问:https://huggingface.co/docs/diffusers/index 核心代…

【数据结构与算法】十大经典排序算法-归并排序

&#x1f31f;个人博客&#xff1a;www.hellocode.top &#x1f3f0;Java知识导航&#xff1a;Java-Navigate &#x1f525;CSDN&#xff1a;HelloCode. &#x1f31e;知乎&#xff1a;HelloCode &#x1f334;掘金&#xff1a;HelloCode ⚡如有问题&#xff0c;欢迎指正&#…

如何用输入函数为数组赋值

在编写程序时我们经常使用数组&#xff0c;而数组的大小可能是很大的但是我们并不需要为每个元素都自己赋值&#xff0c;我们可能会自定义输入数组元素个数&#xff0c;我们应该如何实现通过输入函数为数组赋值呢&#xff1f; 目录 第一种&#xff1a; 第二种&#xff1a; 第一…

CSS3:图片边框

简介 图片也可以作为边框&#xff0c;以下是实例演示 注意 实现该效果必须添加border样式&#xff0c;且必须位于border-image-socure之前否则不会生效 实例 <html lang"en"><head><style>p {width: 600px;margin: 200px auto;border: 30px soli…

maven工具-maven的使用-镜像仓库、本地仓、IDEA使用maven

Maven 一、为什么使用maven 添加第三方jar包jar包之间的依赖关系处理jar包之间的冲突获取第三方jar包将项目拆分成多个工程模块实现项目的分布式部署 二、maven简介 ​ Maven项目对象模型(POM)&#xff0c;可以通过一小段描述信息来管理项目的构建&#xff0c;报告和文档的…

2023.8 - java - 对象和类

public class Dog {String breed;int size;String colour;int age;void eat() {}void run() {}void sleep(){}void name(){} } 一个类可以包含以下类型变量&#xff1a; 局部变量&#xff1a;在方法、构造方法或者语句块中定义的变量被称为局部变量。变量声明和初始化都是在方…

基于STM32标准库智能风扇设计

目录 一&#xff0c;前言 二&#xff0c;系统方案选择 三&#xff0c;实体展示 工程分类 四&#xff0c;相关代码 PWM.c PWM.h AD.c AD.h 电机驱动程序 舵机驱动 一&#xff0c;前言 当今生活中&#xff0c;风扇已成为人们解暑的重要工具&#xff0c;然而使用风扇缓解…

CentOS系统环境搭建(九)——centos系统下使用docker部署项目

centos系统环境搭建专栏&#x1f517;点击跳转 关于Docker-compose安装请看CentOS系统环境搭建&#xff08;三&#xff09;——Centos7安装Docker&Docker Compose&#xff0c;该文章同样收录于centos系统环境搭建专栏。 Centos7部署项目 采用前后端分离的形式部署。使用Do…

QT学习笔记-QT5.15编译及安装谷歌拼音输入法(QtInputMethod_GooglePinyin)

QT学习笔记-QT5.15编译及安装谷歌拼音输入法&#xff08;QtInputMethod_GooglePinyin&#xff09; 0、背景1、环境2、下载QtInputMethod_GooglePinyin源码3、使用MinGW64构建套件编译3.1 编译QtInputMethod_GooglePinyin源码3.2、部署tgtsmlInputContextPlugin输入法插件3.3、运…

分布式 - 服务器Nginx:一小时入门系列之负载均衡

文章目录 1. 负载均衡2. 负载均衡策略1. 轮询策略2. 最小连接策略3. IP 哈希策略4. 哈希策略5. 加权轮询策略 1. 负载均衡 跨多个应用程序实例的负载平衡是一种常用技术&#xff0c;用于优化资源利用率、最大化吞吐量、减少延迟和确保容错配置。‎使用 nginx 作为非常有效的HT…

2023 最新版网络安全保姆级指南,从 0 基础进阶网络攻防工程师

一、网络安全学习的误区 1.不要试图以编程为基础去学习网络安全 不要以编程为基础再开始学习网络安全&#xff0c;一般来说&#xff0c;学习编程不但学习周期长&#xff0c;且过渡到网络安全用到编程的用到的编程的关键点不多。一般人如果想要把编程学好再开始学习网络安全往…

Lnton羚通关于PyTorch的保存和加载模型基础知识

SAVE AND LOAD THE MODEL (保存和加载模型) PyTorch 模型存储学习到的参数在内部状态字典中&#xff0c;称为 state_dict, 他们的持久化通过 torch.save 方法。 model models.shufflenet_v2_x0_5(pretrainedTrue) torch.save(model, "../../data/ShuffleNetV2_X0.5.pth…

vue2.6升级vue2.7(panjiachen升级指南)vue-cli5多页面应用升级的坑

vue2.7升级指南 vue2.7升级指南 之前的架子使用的是 panjiachen&#xff0c;使用的是 vue2.6.14&#xff0c;现在升级为 vue2.7.x 升级vue/cli vue upgrade 这里推荐使用 vue upgrade 命令自动升级 # 确保安装全局 vue/cli $ npm install -g vue/cli $ vue upgradeWARN Th…

水库大坝安全监测MCU,提升大坝管理效率的利器!

水库大坝作为防洪度汛的重要设施&#xff0c;承担着防洪抗旱&#xff0c;节流发电的重要作用。大坝的安全直接关系到水库的安全和人民群众的生命财产安全。但因为水库大坝的隐患不易被察觉&#xff0c;发现时往往为时已晚。因此&#xff0c;必须加强对大坝的安全管理。其安全监…

RFID技术助力汽车零配件装配产线,提升效率与准确性

随着科技的不断发展&#xff0c;越来越多的自动化设备被应用到汽车零配件装配产线中。其中&#xff0c;射频识别&#xff08;Radio Frequency Identification&#xff0c;简称RFID&#xff09;技术凭借其独特的优势&#xff0c;已经成为了这一领域的重要技术之一。本文将介绍RF…

【SLAM】ORBSLAM34macOS: ORBSLAM3 Project 4(for) macOS Platform

文章目录 配置ORBSLAM34macOS 版本运行步骤&#xff1a;版本修复问题记录&#xff1a;编译 fix运行 fix 配置 硬件&#xff1a;MacBook Pro Intel CPU 系统&#xff1a;macOS Ventura 13.4.1 ORBSLAM34macOS 版本 https://github.com/phdsky/ORB_SLAM3/tree/macOS 运行步骤&…

初识结构体

文章目录 目录1. 结构体类型的声明1.1 结构的基础知识1.2 结构的声明1.3 结构成员的类型1.4 结构体变量的定义和初始化 2. 结构体成员的访问3. 结构体传参 目录 结构体类型的声明结构体初始化结构体成员访问结构体传参 1. 结构体类型的声明 1.1 结构的基础知识 结构是一些值的…

三维可视化平台有哪些?Sovit3D可视化平台怎么样?

随着社会经济的发展和数字技术的进步&#xff0c;互联网行业发展迅速。为了适应新时代社会发展的需要&#xff0c;大数据在这个社会经济发展过程中随着技术的进步而显得尤为重要。同时&#xff0c;大数据技术的快速发展进程也推动了可视化技术的飞速发展&#xff0c;国内外各类…