无人机的相关基础知识(看不懂了 待定以后继续补充)

news2024/7/6 17:55:25

视频:

【浙江大学】浙大博导带你从0制作无人机_哔哩哔哩_bilibili

什么是无人飞行器

 无人机自主导航构架

IMU(加速度计和陀螺仪),可以测出当前的 加速度和角速度 这俩信息再去融合外部传感器 (例如视觉传感器或者雷达传感器)得到点云数据或者图像数据 把IMU数据和点云(图像)数据   二者进行融合  就能搭建出一个定位建图的功能 ,再用定位解算出来的 无人机实时位置数据和姿态数据 再结合 环境传感器 进行测距 全部信息融合 就能得到一个稠密的地图 

控制器分上下两层控制器: 下层:姿态控制(完全交给飞控)  上层:位置、速度等上层的控制量(交给 无人机 机载电脑里处理)

感知动作闭环回路:首先传感器有数据进来  定位和建图让无人机知道了自己在哪、周围的环境长什么样  运动规划则告诉无人机要去想去的地方应该如何生成运动的轨迹  运动的轨迹交给控制器去执行(就是四个电机的转速)

定位:

1.GPS(卫星导航定位)获得一个 全局的定位 (但是 只能用于开阔地带 室内有遮挡就不行了)

2.动作捕捉系统 :专门研究高精度控制、纯规划控制算法时想抛开定位,测试利用整个系统的依耐性,我们可以在室内构建一个动作捕捉系统。(动作捕捉系统  必然依赖 环境事先布置好的相机 只能在室内房间使用)

具体方法:在无人机上,粘贴几个发光的小球,可以高精度的解算出实时所处的位置和姿态 以此来验证 控制算法。

3.视觉惯性里程计(VIO)

4.激光惯性里程计(LLO)

用 3、4时 当算法合理时 理论上可以在任何一个未知复杂的环境去自由的定位。

建图:

1.点云地图:用深度测量 构建 点云地图

2. 栅格地图:对环境进行栅格化、离散化的栅格地图

3.欧氏距离场(非常适用于无人机的局部避障):在点云和栅格的基础上更高级的地图 欧氏距离场 欧式距离场首先需要一个栅格地图,此外 会记录栅格地图中的每一个点到最临近障碍物的距离。

4.八叉树地图:更精巧的地图,存储的复杂度更低 但有些东西的复杂性会高一点。

路径搜索:

路径规划包括: 前端的路径搜索 后端的轨迹优化

         

轨迹优化

无人机的软、硬架构

一般的无人机 的构架为下图所示(与科研 自主导航无人机不同 科研自主导航的无人机可以不装载云台相机和GPS 但需要搭载  其他的传感器 和 机载电脑 )

1.飞控:无人机的小脑

用于: 根据输入指令 来解算 电机的转速(推力)从而控制无人机飞行。

一个飞控中  一般会

内置    IMU 输出 加速度信息

内置 气压计 输出无人机的高度

内置 磁罗盘 获取无人机朝向

此外 还提供了 丰富的接口 

PX4派系:有良好的 开源社区 和 丰富的可自定义的功能 玩法比DJI(大疆)的飞控多很多。

决定一台飞控的好坏: 是否 具有 内置减震系统(避免IMU在飞行过程中出现过大的振动) 和 恒温系统(避免IMU避免温飘),从而影响性能 

 2.电调(电子调速器/电机驱动器):

可以理解为 电机驱动器

作用:将输入的控制信号 转化成 电流 来控制电机的转动

电调分类:

四合一电调  :四个电机接在同一个电调上 体积比较小、排线清爽(更多在 空间比较紧凑的穿越机上)

分体电调:每个电机连接一个电调(更常用在航拍无人机上)

3.电机

作用:带动桨叶,提供升力

一般无人机上 用的是 无刷电机

但便宜的 可以用空心杯电机:价格便宜 但比较容易损坏(华强北100多的无人机就是用的空心杯)

越大的电机 就能配更大的桨叶(就会有更强的升力)

尺寸:2205 (22*05)  前两位表示 定子的直径  后两位表示定子的高度 

KV值:电机供电 每提高 1V 转速提高的 数值(工作电压越小,适配桨叶越小的电机,Kv值越大)。

实际需要根据无人机的工作电压和桨叶尺寸 来选择合适的KV值。

力效表:可以根据力效表 粗略的算出 飞机续航以及工作电流等等(购买电机时 会提供)(力效表 可能会有虚构 实际用的时候会大打折扣 买的时候注意)

例如: 预计起飞重量 2KG 

悬停时  每个桨叶就要提供 2000/4=500g的升力

如果选择表中的7042型号的二叶桨

500g对应的大致升力 为35%的油门 

此时力效为5.68 

悬停功率:2000/5.68≈350W

电流350/23.93≈15A

如果我想续航 有30Min   则如何选择电池  用电流*时间   15*0.5= 7.5Ah=7500mAh

还能根据 最大工作电流 选择 电调

在下图7042桨叶 中 油门点达到100% 时 

工作电流为47.07A 那么 我们就应该选购一个 50A以上的电调,来适配这款电机

 4.其他配件:电池、电压计、接收机、遥控器、GPS、视觉惯性里程计、机架、机载电脑、常见的传感器

电池: 一般是 锂电池

作用:为电机、飞控、机载电脑供电 

选购:最关心的是   电池的 电压 容量 和  放电倍率 等

航模电池 常说是 4S  6S电池  S代表的是 串联电池的芯数  每片电芯 输出约4V  4S=16V  6S=24V(电芯越多 电机输出越暴力)

电压计 会在 电池电压 过低的时候       发出 哔哔哔的响声(一般阈值设置在3.3V)避免电池过放 避免电池电压过低 导致坠机 。

接收机:

为 飞控接收 遥控信号(装载在 飞控上  接收机 接收到 遥控器 发出的信号 再给到 主控芯片)

遥控器:

发送 控制指令 给接收机 接收机接收到后 给主控芯片 主控芯片来控制无人机。

GPS:

接收卫星信号,为无人机定位,在航拍无人机中是标配,可以在定点模式下 通过GPS 把无人机像钉子一样 钉在空中。 (定点模式 就是 根据GPS 的数据 让无人机在这个数据下 进行悬停或者运动)。 

视觉惯性里程计:

很多 科研开发的 通常会需要 在室内 没有GPS信号的环境中使用, 所以使用 视觉惯性里程计等来定位

机架:

参数:轴距:(两个电机中心的距离) 下图 250 330 450指的就是 轴距  

重量

起落架:

机载电脑:

运行在无人机上的 小型电脑。  可以运行各种复杂的感知算法 导航算法  理解为无人机的大脑。

 一般是运行的系统:LINUX的 Ubentu  

下图的 价格较贵    一般也可以使用 树莓派来进行开发

USB摄像头:

可以进行视觉识别 和 感知 的任务

双目相机/激光雷达:

感知环境、进行地图的构建

光流传感器:

为无人机做 简单 的定位 

追踪相机:

在 复杂 的环境中为无人机 进行 定位

5.螺旋桨

螺旋桨 一般有 4个数字 前两位 代表 螺旋桨直径  后两位 代表 螺旋桨 螺距 (单位 英尺)

APC1045   直径10英尺  螺距 4.5英尺 (1英尺=2.54cm)

把 顺时针旋转的 叫 逆桨  (带R)

把 逆时针 旋转的 叫 正桨(不带R)

无人机的结构 :

无人机:整体由机架构成 加上 飞控、机载电脑、电机、电池、传感器 就形成了 自主无人机

无人机设计方法:

当 得到一个任务 该如何根据该任务分析 对硬件进行选型 并搭建无人机呢?

1.根据应用场景要求 选择传感器

 如果需要高精度地图—— 搭载雷达 获得高精度点云 从而建立高精度的地图

简单的避障 —— 双目相机 提供的 深度图 就可以胜任

需要外部定位—— 双目相机运行视觉惯性里程计、雷达来运行雷达惯性里程计

视觉识别 —— USB摄像头就行

2.根据负载续航选择机架

轴距越大的机架负载越大、续航越长 在满足 续航和负载的情况下 尽量要让无人机 小 来保证无人机的 机动性

3.推质比 选择动力套件

推质比越大 就需要越大的KV值电机  或 电压越大的电池  没有推质比要求 则选择机架相配套的搭配

4.根据算法算力的要求 选择机载电脑

如果有视觉识别的要求 —— 需要运行 神经网络 可以选择  (没听懂 第二节 14分50S)

如果有比较高的 CPU算力要求 —— 大疆的妙算 

经典案例 1:未知环境的自主飞行无人机

首先 分析应用场景:在复杂环境中 高速 自主 飞行 的规划器    无人机在未知的环境中进行穿梭。

双目相机 :无人机需要在 复杂的环境中进行导航 并且需要建图 且没有外部定位  

Q250机架:无需搭载过多的传感器 飞机起飞重量不大 选择最常见的 250mm的机架就可以了

推质比: 在这个任务中 无人机需要进行较高速度的飞行 可以选择 KV值比较大的电机 来提供更高的推质比

机载电脑:妙算  因为需要运行比较 占用CPU算力的视觉惯性里程计

最后设计一些结构件 来连接各硬件 调试飞机 就能得到一篇 国际顶级期刊的 所需的无人机

 经典案例2:空地两用无人机

任务要求:在复杂环境中 切换 空地运动 模式的 无人机 并要求无人机 尽可能的小型化

应用场景要求: 无外部定位,需要建图 ——双目相机

续航至少 8min  负载约为600g ——200mm机架

推质比:无需高速飞行 但对续航有要求 —— 比较节能的F2203.5 KV2850+4寸桨

 需要运行视觉惯性里程计  但需要小型化  ——Xavier NX

经典案例3:

 无人机软件架构

一台自主导航无人机 的 软件  主要由以下几个部分组成

首先 需要运行 定位算法  如果使用 视觉传感器 则运行视觉惯性里程计  如果使用雷达传感器 则运行雷达惯性里程计  

获得定位后  结合 双目摄像机的 深度图 或者 雷达的点云数据 就可以开始建图了

建图完成后  就可以进入 运动规划层面 

主要分为前端和后端

前端:主要进行 路径搜索 和 路径采样 来获得一条可通行的路径 但不一定满足动力学约束

后端:在前端提供的 粗糙路径 基础上 根据各种方程对轨迹进行优化  从而使轨迹光滑 并且满足 事先设定好的条件 

最后 控制器 接收到轨迹  将轨迹上的点 转化为控制指令 发送给 飞控 完成飞行 

无人机算法

系统的控制和架构:

无人机的 位置控制、位置 和 速度  是在上层电脑里控制的 会产生双层的级联控制器 会产生 推力和姿态 或者  推力和角速度的  控制信号  这是一个 设定值 这个设定值 给到飞控 剩下的交给飞控。

飞控完成的任务 只有 对 推力和姿态的跟踪  其他的什么都不管

整个系统架构: 

 传感器 的 结果 给 感知和定位  分别用于 建图和定位 (无人机知道自己在哪,知道要去哪)

然后规划模块 根据周围的环境长什么样 以及无人机要去哪和 自己在哪 计算出一条轨迹

轨迹怎么给控制:  轨迹和控制的必然联系是什么 ??

没听懂  大致就是  给个 点 然后 解算 位置和速度分别是外环和内环 设定值信号 然后 在控制器里构成一个负反馈

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

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

相关文章

一款网站源码下载开源工具 Website Downloader

一、简介 Website Downloader 是一款免费的网站源码下载器,下载任何网站的完整源代码,包括 JavaScript、样式表、图像等等,而且使用也非常简单,只需要粘贴网址,用户即可将网页链接内容下载到本地,而且自动…

文件操作知识点

前言: 我们应该知道一般程序运行时产生的数据是存放在内存中的。但是如果程序关闭后这些内存就会被系统回收,如果内存内的有用的数据没有被保存下来,这些数据就丢失了。所以这个时候我们就可以使用磁盘来储存我们的数据。 目录 程序文件的分类 文件名…

Jenkins 流水线(Pipeline)详解

大家好,Jenkins 流水线(Pipeline)是一种可编排的持续集成和交付(CI/CD)方法,它以代码的方式定义整个软件开发过程中的构建、测试和部署流程。接下来就跟大家分享一下Jenkins 流水线(Pipeline&am…

MySQL:图文超详细教程MySQL5.7下载与安装

一、前言 MySQL 5.7 是一个重要的数据库管理系统版本,它带来了多项改进和新特性,本文将超详细的带大家手动安装一下MySQL5.7。 二、下载MySQL5.7版本 MySQL5.7安装包 链接:https://pan.baidu.com/s/1lz5rp9PwfyeHzkEfI_lW6A 提取码&#…

基于小波分析和机器学习(SVM,KNN,NB,MLP)的癫痫脑电图检测(MATLAB环境)

癫痫是一种由大脑神经元突发性异常放电导致的大脑功能性障碍疾病。据世界卫生组织统计,全球约有7000万人患有癫痫。癫痫患者在发病时呈现肌肉抽搐、呼吸困难、意识丧失等症状。由于癫痫发作的偶然性,患者极有可能在高空、驾驶、游泳等危险情况下发病并丧…

基于混合Transformer-CNN模型的多分辨率学习方法的解剖学标志检测

文章目录 Anatomical Landmark Detection Using a Multiresolution Learning Approach with a Hybrid Transformer-CNN Model摘要方法实验结果 Anatomical Landmark Detection Using a Multiresolution Learning Approach with a Hybrid Transformer-CNN Model 摘要 精确定位…

数据分析实战:从0到1完成数据获取分析到可视化

文章目录 1.数据分析基本流程1.1 数据采集1.2 数据提炼1.3 数据探索分析 2.数据获取的方法和工具2.1 数据解锁器2.2 爬虫浏览器2.3 数据洞察市场 3.完整案例分析:从数据采集到数据可视化3.1 直接按需定制数据集获取数据3.2 获取IP代理,利用python爬取数据…

JavaScript Window对象

一、BOM(浏览器对象模型) window对象是一个全局对象,也可以说是JavaScript中的顶级对象。 像document、alert()、console.log()这些都是window的属性,基本BOM的属性和方法都是window的。 所有通过var定义在全局作用域中的变量、…

WindowsLinux环境下Spring Boot启动和关闭脚本

GitHub:SpringBootDemo Gitee:SpringBootDemo 微信公众号: 如果我们Spring Boot服务直接部署在Windows或Linux环境下,如果我们启动或关闭服务,需要频繁手敲命令,很不方便。 此时,我们可以编…

基于微信小程序的在电影线订票小程序+web管理 uniapp,vue,ssm

基于微信小程序的在电影线订票小程序web管理 uniapp,vue,ssm 相关技术 javassmuniapp微信开发者工具hbuildervueelementui前后端分离 -mysql

前端开发工程师——webpack

一.环境准备 npm init -y npm i webpack webpack-cli -D 打包命令 npx webpack ./src/main.js --modedevelopment //development开发模式 //production生产模式 npx webpack 直接运行就行 二.加载器loader 在less/stylus/css/sass/images中添加适当的样式 例如&#xff1…

【时间复杂度空间复杂度】(详)

🌠个人主页 : 赶路人- - 🌌个人格言 : 要努力成为梧桐,让喜鹊在这里栖息。 要努力成为大海,让百川在这里聚积。 13.with,prep.用,与,随着 [wɪθ] 14.format,n.格式 [ˈfɔrmt] 1.算法效率 算法效率分析分…

SparkStreaming概述

Spark概述 SparkStreaming概述 Spark Streaming 是 Apache Spark 生态系统中的一个组件,用于实时流数据处理。它允许用户通过流式计算引擎处理实时数据流,并以低延迟的方式对数据进行分析、处理和存储。 背景 在大数据领域,传统的批处理系统…

Go语言实现简单分布式系统(笔记)

视频: Go语言编写简单分布式系统(完结)_哔哩哔哩_bilibili,作者:杨旭,非常感谢,大佬真牛批 参考笔记及代码: Go语言实现简单分布式系统 - N3ptune - 博客园 (cnblogs.com) 整体框…

Nvidia 如何成为 AI 训练的超级强国

周三,英伟达公布了第一季度的财务业绩,再次超出了分析师的预期。在截至 4 月 28 日的季度中,该公司的利润同比飙升 262%,股价一度创下 1000 美元以上的新高。 目前,英伟达的市值超过 2.3 万亿美元,是全球第…

React自定义Componment和State深层次理解-07

本节主要从底层原理上分析下React开发相关的内容和注意事项,本节会围绕使用展开,而非源码讲解。 Componment详解 什么是组件 在 MVVM架构出现之前,组件主要分为两种。 狭义上的组件,又称为 UI 组件,比如 Tabs 组件、…

shell脚本开发基础

shell脚本开发基础 什么是linux内置命令?什么是外置命令 内置命令:在系统启动时就加载入内存,常驻内存,执行效率更高,但是占用资源,cd 外置命令:系统需要从硬盘中读取程序文件,再读…

C语言对一阶指针 二阶指针的本质理解

代码&#xff1a; #include <stdio.h>char a 2; char* p &a; char** d &p;int main(){printf("a -> %d, &a -> %p\n", a, &a);printf("*p -> %d, p -> %p, &p -> %p\n", *p, p, &p);printf(&qu…

数据库(8)——DML数据操作

增添数据 给指定字段添加数据 INSERT INTO 表名 (字段名1&#xff0c;字段名2,...)VALUES(值1,值2...); 没有的添加的字段默认为NULL。 给全部字段添加数据 INSERT INTO 表名 VALUE (值1,值2,....值n); 此时值的顺序对应表中字段的顺序 批量添加数据 INSERT INTO 表名(字段1,…

【docker】仓库harbor的部署

harbor介绍 Harbor 是一个用于存储和管理 Docker 镜像的开源仓库。它提供了一系列的功能&#xff0c;比如用户管理、访问控制、镜像管理、日志审计和安全扫描等。Harbor 可以作为私有仓库来使用&#xff0c;也可以与公有仓库&#xff08;如 Docker Hub&#xff09;集成使用。 …