当前位置:   article > 正文

无人机的相关基础知识(看不懂了 待定以后继续补充)_无人机底层控制架构

无人机底层控制架构

视频:

【浙江大学】浙大博导带你从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、视觉惯性里程计、机架、机载电脑、常见的传感器

电池: 一般是 锂电池(不要过放)

电池

串联增加电压(但不增加容量) 

并联增加容量(但不增加电压)

30C: 放电倍率 

例: 4S的4.2V电池 一共电压 = 4*4.2=16.8V  由下图可知 单节电芯 满电4.2V低于3.6V就不行了

所以 4.2-3.6=0.6V 相当于每个电池 亏电0.6V就算是过放了   0.6*4=2.4V  16.8-2.4=14.4V 15V时就算过放了 一般16.8V 放到15.2 15.3就得充电了  低于15V就算过放了。

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

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

航模电池 常说是 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)

电调

两相电变成三相电。

电调中的 2~3S 的S是什么意思 ?  参考电池中的 s  和p

30A:代表电调的 最大持续电流

传感器和外设

控制系统

飞控:输出PWM波 ,对电机进行控制

其他控制器 充当 高级控制器  对飞控进行控制

例如 遥控器  先接上飞控 再用遥控器把信号传给飞控 飞控再去控制无人机

飞控

地面站

自主飞行任务规划:可以自己设计航路点 然后让无人机 绕着航路点进行飞行

无人机初步认识:

无人机 GPS箭头方向为 机头

右上角的旋翼 是1号翼

左下的旋翼为 2号

左上角叫3号

右下角 4号

地理坐标系

常见坐标系:NED FRD

NED: X轴:N   Y轴:E   Z轴:D

机载坐标系:F:前 R:右 D:地

FRD: X:F前方 Y:R右边 Z:D地

飞行状态

无人机的结构 :

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

PX4飞行模式(可以用遥控器或者地面站进行模式切换)

手动: 飞手通过操纵遥控杆 进行操控无人机

自主: 完全由飞控控制 或者三维控制

自稳模式(Stabilized):

定高模式(Altitude):

定点模式(Position):

无人机设计方法:

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

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:

 无人机软件架构

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

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

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

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

主要分为前端和后端

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

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

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

无人机算法

系统的控制和架构:

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

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

整个系统架构: 

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

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

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

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

仿真环境介绍及配置

仿真器(面向开发者):开发者可以调用 一些API 对飞机进行控制 进而验证自己的算法 对算法可行性进行验证

模拟器:练习一下飞行技术 熟悉一下操作

ROS--参考资料 

ROS--五个特点

 

 

ROS四位一体

ROS+PX4 学习思想

这个 框架图 是 日常生活中使用无人机或无人车的框架图

红色:经常使用的 硬件

深色:最终要实现的目标 比如 实现 无人机的定位  建图 识别目标位置

从硬件开始:

无人机或无人车会搭载 (树莓派、Jetson nano 、NUCmini电脑 )统称(上位机),

我们都会 给 装上 Ubentu 系统 那既然装上后   就是性能上的差别 具体 ROS 上来说 这些模块没有任何区别的 所以应该重点关注 不是应该用哪种上位机 而是用哪种上位机可以满足需求 不用具象化   最终的目的就是 装上Ubentu 然后跑 ROS

PX4、单片机:飞控  执行部分

就是接收 上位机的一个指令 比如:上位机 通过目标处理识别到 要追踪一个人 把人的位置 或者 要追踪的速度 发给单片机 单片机就去执行 最终 就是用PWM控制电机

通常 在上位机上 接上 识别模块  初学者不用具体学习具体型号 可以先从宏观的角度去知道一个模块 最终目的是什么  再去做  比如: 想实现 建图 的功能

要有输入 输出的思想(需要什么数据 选择什么硬件)

ROS系统将需要的数据 的 格式 都规范好了,在规定的位置放规定的数据即可。

需要: 雷达扫描数据就会有scan格式的数据 我们应该是用 官方提供的算法 提取出模块的输出

  而不是去探究内部怎么用的 怎么实现的 

通过官方提供的算法 按照官方的代码和操作方法 去执行 跑完之后 

最终目的: 获取scan

建图: 需要 scan 的数据 所以选择了 激光雷达(建图也有很多算法 有些算法需要的数据是不一样的 通过算法需要的数据 来选择 硬件) 

输入:雷达扫描 scan数据

输出:建图的 map数据 

整体学习ROS思想

 拿到一个上位机(任何上位机)  ---- 装上 Ubentu 里面跑了ROS ------  就能实现一些算法-----算法需要 入口(输入) -----可能需要雷达数据 或者 点云数据(假如需要) ----- 寻找 能生成这两种 话题 数据 的 模块  ---找到了 雷达:激光雷达  点云:深度相机 --- 利用官方提供的算法 将数据 出口(输出!) ---- 如果是PX4的话  就会通过 Offboard模式 将数据 发到 PX4(内部集成了一套系统)就会自己输出PWM去控制 电机  运动   (自己做单片机 一般就是用串口)

一般用PX4都会用 mabros   这个就会用到offboard 模式  这个模式 就是 算法模块全跑完后的最终落脚点 会使你 无人机 切换到这个模式 接收上位机的数据 再自动运行

位置控制:无人机自身的位置 会一直保持在这  一般 用遥控器 遥控 就会切换到 位置模式

offboard控制: 用上位机 不再用人控制时  一般切换到 offboard模式  上位机 就通过mobROS给无人机发指令 控制电机 

         

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Li_阴宅/article/detail/1021261
推荐阅读
相关标签
  

闽ICP备14008679号