无人机基础知识点总结

2023-05-16

一.基本概念

  • 飞控:飞机的控制系统,其中硬件包含传感器部分IMU和控制部分的MCU,软件部分包含控制算法。

  • 俯仰:pitch,绕坐标系y轴旋转,想象一下平时的飞机

  • 航向:yaw,绕坐标系z轴旋转,想象一下平时的飞机

  • 横滚:roll,绕坐标系x轴旋转,想象一下平时的飞机

  • 陀螺仪:感测角速度,具有高动态特性, 但是它是一个间接测量角度的器件, 它测量的是角度的导数, 角速度, 要将角速度对时间积分才能得到角度。一般不受外界影响干扰,不过会出现积分误差的问题。

  • 加速度计:感测加速度,包括重力加速度,重力加速度和地理坐标系是固连的,因此可以通过这种关系得到加速度计和地面的角度关系,但是如果绕着Z轴旋转是不会改变的,也就是无法感知水平旋转。生活中的手机自动旋转屏幕就用到这个。

  • 磁力计HMC5883L,是利用地磁场来定北极的一种方法,由地球的磁场来感测方向类似与指南针的功能。

  • MPU6050:六轴传感器,集成了3轴陀螺仪和3轴加速度计,还有预留的IIC接口可以接磁力计,同时含有DMP可以进行硬件解算四元数,而输出的是通过IIC输出AD值。

  • 惯性导航模块:IMU,包括陀螺仪,加速度计和磁力计。

  • MEMS:微机电系统(Micro-Electro-Mechanical System),微电子微机械加工出来的、 用敏感元件如电容、压电、压阻、热电耦、谐振、 隧道电流等来感受转换电信号的器件和系统。

  • 气压计:MS5611气压计主要通过气压的变化来感测物体的相对和绝对高度,可以用来定高,尤其是在室内GPS不起作用的情况下。

  • 姿态解算:指把陀螺仪、加速度计、磁罗盘等数据融合在一起,得出飞行器的空中姿态。

  • 深度解算:也叫长期融合,可以比较准确得解算出姿态。

  • 快速解算:也叫快速融合,比较粗糙地得到姿态。

  • 四元数:在无人机里面四元数是姿态的一种数学表示方式,也是用的最多的,因为四元数比较适合组合旋转。在姿态解算中,一般用四元数来保存姿态,也就是用来保存从MPU6050得到的AD值。

  • 欧拉角:姿态的另外一种数学表示方式,在姿态解算中主要用于讲四元数转换成欧拉角,然后用于姿态解算,姿态解算的输入只能是欧拉角。

  • 刚体:指在运动中和受力作用后,形状和大小不变,而且内部各点的相对位置不变的物体。

  • 地理坐标系:地球所在的坐标系, 这个坐标系是固定不变的, 正北, 正东, 正上方分别表示X, Y, Z轴。 

  • 无头模式:四轴的方向是从两个电机中间的方向飞

  • 有头模式:四轴的方向是从其中某个电机的方向飞

二.基本结构

1) 动力部分

1.机架:DJI的F450

2.电机:有刷电机和无刷电机,有刷电机是指电机内有换相电刷,而无刷电机是指电机内没有换相电刷。有刷的定子是永磁体,无刷的定子是线圈,直观来看是无刷电机有三个线并配合电调使用。大四轴一般都是用的无刷,小四轴用的是有刷的空心杯电机。

3.桨叶:碳纤桨,木桨,注塑桨,相同的电机和电池, 大KV值用小的螺旋桨, 小KV值用大的螺旋桨

4.电调:电子调速器,也叫电机驱动模块,主要是用来控制电机的启停和转速,通过改变固定线圈内部电流的方向, 保证它跟永磁体之间的作用力是相互排斥, 持续转动得以延续。

5.电池:航模的锂电池需要的放电能力强,一般用C来做单位,这是与普通锂电池的区别。

2)控制部分

1.飞控:主要是PIXHAWK,其采用的STM32做主控芯片,其中硬件包含传感器部分IMU和控制部分的MCU,软件部分包含控制算法。

2.通信方式:NRF24L01,蓝牙4.0或者WIFI

3.遥控器:美国手和日本手,美国手是指油门在左边的摇杆,日本手则相反。注:左手是理智,右手是感情,剑是危险的事物,要用理智来操控。

三.算法分析

1)姿态解算算法

  姿态解算是指把陀螺仪、加速度计、磁罗盘等数据融合在一起,得出飞行器的空中姿态,也叫姿态融合。姿态解算涉及到传感器数据的读取和滤波、四元数与旋转、姿态解算框架和长期融合。飞行器通过四元数法从陀螺仪的三轴角速度得到俯仰、偏航和滚转角,这是快速解算,然后结合三轴磁力计和三轴加速度计得到漂移补偿深度解算

我们用坐标系R来表示地球的坐标系(地理坐标系),这个坐标系是固定不变的,有X、Y、Z三个轴,同时用坐标系r来表示四轴飞行器的坐标系。所谓的姿态解算就是测量坐标系r与坐标系R的角位置关系,通过传感器采集数据以及分析测量,最终得到这个关系。这当中用到的数学表示方法有欧拉角、四元数、矩阵和轴角。

  姿态解算可以通过软件解算硬件解算来实现。姿态控制算法的输入参数必须要是欧拉角。 AD值是指MPU6050的陀螺仪和加速度值, 3个维度的陀螺仪值和3个维度的加速度值, 每个值为16位精度。AD值必须先转化为四元数,然后通过四元数转化为欧拉角。这个四元数可能是软解,主控芯片(STM2)读取到AD值,用软件从AD值算得,也可能是通过MPU6050中的DMP硬解,主控芯片(STM32)直接读取到四元数。

 

 

 

 

四.一点思考

1)无人机的续航问题

  小四轴最多十几分钟,消费级大四轴最多也只有30分钟。

2)无人机的起飞和下降的滞粘性

  无人机用遥控器起飞的时候会出现不小心油门加大了会突然冲上去,下降的时候也可能松油门过多而一下子下降。因此我们希望能够飞机上升的时候,不会因为油门突然加大而突然猛升,也不会因为油门不小心拉低过快导致飞机快速跌落到地面。

  解决方法:

  1.数据曲线化

  将遥控器的值给飞机后,飞机不是一下子就输出,先把这个数据曲线再输出,这可以起到一定的缓冲作用。将数据变成向下凹的抛物线,遥控器的油门摇杆取值范围跟飞机的油门量有一一映射的关系。因为抛物线是下凹的,最大值跟最小值是一样的,而这变化的过程不是线性的,因此可以在一定程度上解决猛升的问题。

  2.负反馈控制

将无人机的当前的加速度值减去当地的重力加速度等到一个加速度的差值,然后用当前的油门量减去这个差值就可以在一定程度上起到缓冲的作用,但这个方法需要我们知道当地的重力加速度,这个可以通过串口助手进行查看,但比较麻烦,我们可以通过机器学习来学习这个最优的值,从而实现缓冲的作用。(为什么油门量减去差值?为什么是150*这个差值?)

 

 

 

 

转载于:https://www.cnblogs.com/lyx-blackpearl/p/9821534.html

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

无人机基础知识点总结 的相关文章

  • activity 变成后台进程后被杀死_Android后台杀死系列之二:ActivityManagerService与App现场恢复机制...

    本篇是Android后台杀死系列的第二篇 xff0c 主要讲解ActivityMangerService是如何恢复被后台杀死的进程的 基于4 3 xff0c 在开篇FragmentActivity及PhoneWindow后台杀死处理机制 中
  • 找工作经验之——笔试

    准备完成之后 xff0c 就该开始真刀实枪的干了 往往第一关都是笔试 xff0c 所以笔试的重要性不言而喻 笔试一般分为程序机试 性格测试和常规笔试几类 笔试分类 xff1a 这次参加的例如华为公司 xff0c 即采用了先 程序机试 筛选的
  • 对路径的访问被拒绝,解决之后又报-未在本地计算机上注册“Microsoft.Jet.OLEDB.4.0”提供程序。...

    服务器环境 xff1a Server 2008 64位系统 问题 xff1a 在导入Excel题录表时报错 xff0c 1对路径的访问被拒绝 xff0c 2未在本地计算机上注册 Microsoft Jet OLEDB 4 0 提供程序 解决
  • python学习笔记(0)python基础概念

    一 字符集 说字符集之前 xff0c 先说下2进制的故事 xff0c 计算机比较傻只认识2进制 xff0c 什么是2进制 xff0c 就是0 xff0c 1 xff0c 计算机只认识这俩数字 xff0c 其他的都不认识 xff0c 这样的0
  • python学习笔记(7)数据类型转换

    转载于 https www cnblogs com wuzm p 11533108 html
  • 性能实战分析-问题分析(三)

    问题四 xff1a 数据库连接池不释放 搭e6mall需要使用tomcat7搭建 过程 xff1a 压测一个商品的详情页请求 xff0c 看看报错如何 xff1f 按照上面方法分析 1 先访问tomcat的初始页面 xff0c 可以访问 x
  • 解决Navicat无法连接到MySQL的问题

    解决Navicat无法连接到MySQL的问题 问题一 xff1a 本地IP xff08 xxx xxx xxx xxx xff09 没有访问远程数据库的权限 于是下面开启本地IP xff08 xxx xxx xxx xxx xff09 对远
  • Linux下用于查看系统当前登录用户信息的4种方法

    https www cnblogs com weijiangbao p 7868965 html 转载于 https www cnblogs com wuzm p 11377948 html
  • python学习

    https www cnblogs com dinghanhua tag python default html page 61 2 转载于 https www cnblogs com wuzm p 11381519 html
  • python学习笔记(8)迭代器和生成器

    迭代器 迭代是Python最强大的功能之一 xff0c 是访问集合元素的一种方式 迭代器是一个可以记住遍历的位置的对象 迭代器对象从集合的第一个元素开始访问 xff0c 直到所有的元素被访问完结束 迭代器只能往前不会后退 迭代器有两个基本的
  • 基于立体视觉和GPU加速的视觉里程系统(VINS)

    注意 xff1a 本文只适用于 Kerloud SLAM Indoor无人机产品 Kerloud SLAM Indoor配备有Nvidia TX2模块和Intel Realsense D435i立体摄像头 凭借更强大的GPU内核 xff0c
  • python学习笔记(9)函数(一)

    定义一个函数 你可以定义一个由自己想要功能的函数 xff0c 以下是简单的规则 xff1a 函数代码块以 def 关键词开头 xff0c 后接函数标识符名称和圆括号 任何传入参数和自变量必须放在圆括号中间 xff0c 圆括号之间可以用于定义
  • python学习笔记(10)函数(二)

    xff08 函数的参数 amp 递归函数 xff09 一 函数的参数 Python的函数定义非常简单 xff0c 但灵活度却非常大 除了正常定义的必选参数外 xff0c 还可以使用默认参数 可变参数和关键字参数 xff0c 使得函数定义出来
  • python学习笔记(2)数据类型-字符串

    字符串是 Python 中最常用的数据类型 我们可以使用引号 39 或 34 来创建字符串 创建字符串很简单 xff0c 只要为变量分配一个值即可 例如 xff1a var1 61 39 Hello World 39 var2 61 34
  • python学习笔记(11)文件操作

    一 读文件 读写文件是最常见的IO操作 Python内置了读写文件的函数 xff0c 用法和C是兼容的 读写文件前 xff0c 我们先必须了解一下 xff0c 在磁盘上读写文件的功能都是由操作系统提供的 xff0c 现代操作系统不允许普通的
  • 作业2

    作业2 xff1a 写一个随机产生138开头手机号的程序 1 输入一个数量 xff0c 产生xx条手机号 prefix 61 39 138 39 2 产生的这些手机号不能重复 转载于 https www cnblogs com wuzm p
  • mysql索引详细介绍

    博客 xff1a https blog csdn net tongdanping article details 79878302 E4 B8 89 E3 80 81 E7 B4 A2 E5 BC 95 E7 9A 84 E5 88 86
  • 作业1

    作业一 xff1a 写一个登录的程序 xff0c 1 最多登陆失败3次 2 登录成功 xff0c 提示欢迎xx登录 xff0c 今天的日期是xxx xff0c 程序结束 3 要检验输入是否为空 账号和密码不能为空 4 账号不区分大小写 im
  • 常用的SQL优化

    转自 xff1a https www cnblogs com Cheney222 articles 5876382 html 一 优化 SQL 语句的一般步骤 1 通过 show status 命令了解各种 SQL 的执行频率 MySQL

随机推荐

  • B+tree

    https www cnblogs com nullzx p 8729425 html 简介 xff1a 本文主要介绍了B树和B 43 树的插入 删除操作 写这篇博客的目的是发现没有相关博客以举例的方式详细介绍B 43 树的相关操作 xff
  • Mysql监控调优

    一 Mysql性能介绍 1 什么是Mysql xff1f 它有什么优点 xff1f MySQL是一个关系型数据库管理系统 xff0c 由瑞典MySQL AB公司开发 xff0c 目前属于Oracle公司 MySQL是一种关联数据库管理系统
  • [云讷科技] Kerloud PX4飞控的EKF2程序导航

    一 介绍 EKF拓展卡尔曼滤波器是px4开源飞控框架采用的核心状态估计方法 xff0c EKF2是px4飞控中的对应的软件模块 xff0c 可以支持各类传感器信号 xff0c 包括IMU xff0c 磁感计 xff0c 激光测距仪 xff0
  • 第5.4节 Python函数中的变量及作用域

    一 函数中的变量使用规则 函数执行时 xff0c 使用的全局空间是调用方的全局空间 xff0c 参数及函数使用的局部变量存储在函数单独的局部名字空间内 xff1b 函数的形参在函数中修改了值时 xff0c 并不影响调用方本身的数据 xff0
  • PX4 IO [14] serial [转载]

    PX4 IO 14 serial PX4 IO 14 serial 转载请注明出处 更多笔记请访问我的博客 xff1a merafour blog 163 com 2014
  • 《Windows核心编程》第3章——深入理解handle

    本文借助windbg来理解程序中的函数如何使用handle对句柄表进行查询的 所以先要开启Win7下Windbg的内和调试功能 解决win7下内核调试的问题 win7下debug默认无法进行内核调试 xff08 xff01 process等
  • CentOS7中firewalld的安装与使用详解

    一 软件环境 root 64 Geeklp201 cat etc redhat release CentOS Linux release 7 4 1708 Core 二 安装firewalld 1 firewalld提供了支持网络 防火墙区
  • IMU数据融合:互补,卡尔曼和Mahony滤波

    编写者 xff1a 龙诗科 邮箱 xff1a longshike2010 64 163 com 2016 06 29 本篇博客主要是参照国外的一篇文章来整理写的 xff0c 自己觉得写的非常好 xff0c 以此整理作为以后的学习和参考 国外
  • ogeek线下赛web分析1-python-web

    1 python from flask import Flask request render template send from directory make response from Archives import Archives
  • java学习杂记-更新

    1 maven添加下载依赖jar文件 xff1a maven官方仓库 xff0c 需要哪个jar文件直接找到对应的依赖标签 https search maven org 直接将 lt dependency gt 放到pom xml文件中 x
  • javascript/Jquery 将字符串转换成变量名

    var a 61 39 a 39 39 b 39 39 c 39 var obj 61 for i 61 0 i lt a length i 43 43 obj a i 61 34 abc 34 43 1 alert obj a alert
  • Navicat 看历史执行SQL

    Navicat可以通过这个框口看手动操作所执行的代码操作 转载于 https www cnblogs com sunxun p 5286657 html
  • MWC四轴飞行器代码解读

    MWC v2 2 代码解读annexCode 红色是一些暂时没去顾及的部分 xff0c 与我现在关心的地方并无太大关系 函数对rcDate进行处理 xff08 去除死区 xff0c 根据油门曲线 xff0c roll pitch曲线 xff
  • 云讷科技推出Kerloud数传电台

    介绍 Kerloud Telemetry是由云讷科技推出的一款面向无人系统 传输可靠的短距离无线传输电台 产品基于ISM Sub G频段 xff0c 采用FSK调制 抗干扰能力强 xff0c 具备Uart USB通用接口 xff0c 支持P
  • Requests方法 --- post 请求body的四种类型

    常见的 post 提交数据类型有四种 xff1a 1 第一种 xff1a application json xff1a 这是最常见的 json 格式 xff0c 也是非常友好的深受小伙伴喜欢 的一种 xff0c 如下 34 input1 3
  • 中文转拼音 (utf8版,gbk转utf8也可用)

    中文转拼音 utf8版 gbk转utf8也可用 https git oschina net cik pinyin php 64 param string str utf8字符串 64 param string ret format 返回格式
  • Pycharm激活方法(license server方法)

    strong pycharm所有版本 span class hljs string http span class hljs comment www jetbrains com pycharm download previous html
  • idc函数大全

    A80 addc A80 addcix A80 addciy A80 addix A80 addiy A80 cmpd A80 cmpi A80 im0 A80 im1 A80 im2 A80 jrc A80 jrnc A80 jrnz A
  • 视觉SLAM漫淡

    视觉SLAM漫谈 1 前言 开始做SLAM xff08 机器人同时定位与建图 xff09 研究已经近一年了 从一年级开始对这个方向产生兴趣 xff0c 到现在为止 xff0c 也算是对这个领域有了大致的了解 然而越了解 xff0c 越觉得这
  • 无人机基础知识点总结

    一 xff0e 基本概念 飞控 xff1a 飞机的控制系统 xff0c 其中硬件包含传感器部分IMU和控制部分的MCU xff0c 软件部分包含控制算法 俯仰 xff1a pitch xff0c 绕坐标系y轴旋转 xff0c 想象一下平时的