多旋翼无人机飞行控制详解,四旋翼无人机飞控原理深入解析

在四旋翼无人机中,相邻的两个螺旋桨旋转方向是相反的。如图所示,三角形红箭头表示飞机的机头朝向,螺旋桨M1、M3的旋转方向为逆时针,螺旋桨M2、M4的旋转方向为顺时针。当飞行时,M2、M4所产生的逆时针反作用力(反扭矩)和M1、M3产生的顺时针反作用力(反扭矩)相抵消,飞机机身就可以保持稳定。

图片

不仅如此,多轴飞机的前后左右或是旋转飞行的也都是靠多个螺旋桨的转速控制来实现的。四旋翼无人机就是通过调节四个电机转速来改变旋翼转速,实现升力的变化,从而控制飞行器的姿态和位置。

垂直运动:同时增加四个电机的输出功率,旋翼转速增加使得总的拉力增大,当总拉力足以克服整机的重量时,四旋翼飞行器便离地垂直上升;反之,同时减小四个电机的输出功率,四旋翼飞行器则垂直下降,直至平衡落地,实现了沿 z轴的垂直运动。当外界扰动量为零时,在旋翼产生的升力等于飞行器的自重时,飞行器便保持悬停状态。

图片

俯仰运动:在图中,电机 1的转速上升,电机 3 的转速下降(改变量大小应相等),电机 2、电机 4 的转速保持不变。由于旋翼1 的升力上升,旋翼 3 的升力下降,产生的不平衡力矩使机身绕 y 轴旋转,同理,当电机 1 的转速下降,电机 3的转速上升,机身便绕y轴向另一个方向旋转,实现飞行器的俯仰运动。

图片

滚转运动:与图 b 的原理相同,在图 c 中,改变电机 2和电机 4的转速,保持电机1和电机 3的转速不变,则可使机身绕 x 轴旋转(正向和反向),实现飞行器的滚转运动。

图片

偏航运动:旋翼转动过程中由于空气阻力作用会形成与转动方向相反的反扭矩,为了克服反扭矩影响,可使四个旋翼中的两个正转,两个反转,且对角线上的各个旋翼转动方向相同。反扭矩的大小与旋翼转速有关,当四个电机转速相同时,四个旋翼产生的反扭矩相互平衡,四旋翼飞行器不发生转动;当四个电机转速不完全相同时,不平衡的反扭矩会引起四旋翼飞行器转动。在图 d中,当电机 1和电机3的转速上升,电机2和电机4的转速下降时,旋翼 1和旋翼3对机身的反扭矩大于旋翼2和旋翼4对机身的反扭矩,机身便在富余反扭矩的作用下绕 z轴转动,实现飞行器的偏航运动,转向与电机 1、电机3的转向相反。

图片

前后运动:要想实现飞行器在水平面内前后、左右的运动,必须在水平面内对飞行器施加一定的力。在图 e中,增加电机 3转速,使拉力增大,相应减小电机 1转速,使拉力减小,同时保持其它两个电机转速不变,反扭矩仍然要保持平衡。按图 b的理论,飞行器首先发生一定程度的倾斜,从而使旋翼拉力产生水平分量,因此可以实现飞行器的前飞运动。向后飞行与向前飞行正好相反。(在图 b 图 c中,飞行器在产生俯仰、翻滚运动的同时也会产生沿 x、y轴的水平运动。)

图片

侧向运动:在图 f 中,由于结构对称,所以倾向飞行的工作原理与前后运动完全一样。

图片

多旋翼无人机飞行控制的特点:

四旋翼飞行器是一种六自由度的垂直升降机,但只有四个输入力同时却有六个状态输出(即6个飞行姿态),所以它又是一个4输入6输出的欠驱动系统。

通过改变各旋翼升力大小来实现姿态控制,需要进行精准同步协调,是不稳定系统,其中4旋翼是欠驱动系统,很难控制好,飞行器翻过来后基本没有办法控制回来,就坠机了。

旋翼无人机非线性、欠驱动系统,人手很难操控,只能用自动控制器来控制飞行姿态。如图示,四个电机对称的安装飞行器的支架端,支架中间空间安放飞行控制计算机和外部设备,通过飞控计算机来计算、控制其进行飞行。

图片

多旋翼无人机飞行安全措施:

图片

1、安装感知与避让系统:确保与其他航空器的安全间隔,防止碰撞。

2、加装GPS模块:利用GPS和飞控程序设置禁飞区,防止进入敏感区域,如机场、军事禁区等。

3、设置飞行高度限制:在飞行程序中设置高度限制,防止进入限制高度的禁飞区。

 4、一键功能:在飞行程序中设置一键起飞、降落、自动避障和自动返航功能。

 5、倾斜限制功能:多旋翼无人机飞行倾角超过300时,旋翼升力会骤降,导致无人机加速下坠,从而发生坠机事故。为防止这种情况,应设计相应的飞控程序,使自动控制器具备限制飞行器发生过分倾斜的功能。

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

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

相关文章

Java奠基】对象数组练习

目录 商品对象信息获取 商品对象信息输入 商品对象信息计算 商品对象信息统计 学生数据管理实现 商品对象信息获取 题目要求是这样的: 定义数组存储3个商品对象。 商品的属性:商品的id,名字,价格,库存。 创建三个…

双活工作关于nacos注册中心的数据迁移

最近在做一个双活的项目,在纠结一个注册中心是在双活机房都准备一个,那主机房的数据如果传过去呢,查了一些资料,最终在官网查到了一个NacosSync 的组件,主要用来做数据传输的,并且支持在线替换注册中心的&a…

python数据分析numpy基础之abs()用法和示例

1 python数据分析numpy基础之abs()用法和示例 python的通用函数ufunc (Universal functions)是一种对ndarray多维数组中的数据执行元素级运算的函数,即对数组的每个元素都调用通用函数。numpy的通用函数分为一元ufunc和二元ufunc。一元ufunc接收一个ndarray入参进行…

学生学习知识点总结作文试题练习题考试资讯网站源码

(购买本专栏可免费下载栏目内所有资源不受限制,持续发布中,需要注意的是,本专栏为批量下载专用,并无法保证某款源码或者插件绝对可用,介意不要购买) 资源简介 学生学习知识点总结作文试题练习题考试资讯网站源码+WAP手机版+采集优化版-整站打包 整站打包源码,简洁大…

多模态(二)--- CoCa原理与源码解读

1 CoCa简介 CoCa代表Contrastive Captioner 的缩写,代表模型用两个目标函数训练出来的,一个是Contrastive Loss,一个是Captioning Loss。 2 CoCa训练流程 利用ViT对image进行encoder编码获得图像特征token对图像特征进行attention pooling…

java回忆性记录5

java回忆性记录5 for循环 循环语句,属于重复结构中的流程控制语句,一旦条件符合就会执行循环,反之则不会。假如让计算机再屏幕打印500次我们不可能傻傻的把打印语句输出500次。依稀记得在没有学习循环语句的时候自己傻傻的ctrlc 、ctrlv了几…

第四篇:SQL语法-DDL-数据定义语言

大年初一限定篇😀 (祝广大IT学习者、工作者0 error 0 warning!) 一,DDL数据库操作 (一)库的查询操作 1.列出所有已定义数据库 show databases; 2.查询当前所处数据库 select database(); &…

基于Linux的HTTP代理服务器搭建与配置实战

在数字化世界中,HTTP代理服务器扮演着至关重要的角色,它们能够帮助我们管理网络请求、提高访问速度,甚至在某些情况下还能保护我们的隐私。而Linux系统,凭借其强大的功能和灵活性,成为了搭建HTTP代理服务器的理想选择。…

【C语言——打印乘法口诀表】

乘法表: 我们可以定义一个i控制行的变化,外加看上图的表得知我们需要用到循环结构,i是行需要不停的加加,因此,for循环比较好用,可以用两个嵌套的循环,外层循环即用到的i表示的是每一行的打印&am…

【从Python基础到深度学习】4. Linux 常用命令

1.配置root用户密码 root用户为系统默认最高权限用户,其他用户密码修改命令与root用户修改密码命令相同 sudo passwd root 2.添加用户(henry) sudo useradd -m henry -s /bin/bash 3.配置henry用户密码 Xshell下连接新用户(hen…

15.Swift闭包

Swift 闭包 在 Swift 中,闭包是一种自包含的函数代码块,可以在代码中被传递和使用。闭包可以捕获并存储其所在上下文中的任意变量和常量的引用,这就是所谓的闭包的特性。闭包在 Swift 中被广泛用于函数式编程和异步编程,具有灵活…

二级C语言笔试9

(总分89.5,考试时间90分钟) 一、选择题 1. 下列对队列的叙述正确的是 。 A) 队列属于非线性表 B) 队列按“先进后出”原则组织数据 C) 队列在队尾删除数据 D) 队列按“先进先出”原则组织数据 2. 下列关于栈的描述中错误的是( )。 A) 栈是先进后出的…

weilai8游戏爬虫

#!/usr/bin/python # -*- coding: UTF-8 -*- #!/usr/bin/python # -*- coding: UTF-8 -*- import os,csv import re import random import time import requests from lxml import etreefrom urllib.parse import quote, unquotepage=98 sess = requests.Session()#创建一个ses…

linux系统上tomcat简介以及安装tomcat

tomcat简介以及安装 Tomcat简介安装环境安装jdk安装tomcat浏览器访问 Tomcat简介 Tomcat是一个开源的Web服务器和servlet容器,由Apache软件基金会开发和维护。它是一种流行的Java Web应用服务器,用于运行Java编写的Web应用程序。 Tomcat提供了一个轻量级…

基于javaEE的ssm仓库管理系统

仓库管理系统的重中之重是进销存分析这一板块,在这一板块中,顾名思义能够查询到近期的进货记录,包括每日的进货单据,单品推移(即某一商品的库存变化),方便我们核对库存差异。同时也需要查询到每日的销售数据&#xff0…

hexo部署到gitee(码云)

引言 Hexo 是一个基于Node.js的静态博客框架,而 Gitee(也被称为码云)是一个国内的代码托管平台,支持 Git 版本控制系统,与 GitHub 类似。将 Hexo 部署到 Gitee Pages 可以让你的博客受益于 Gitee 的国内服务器&#xf…

Java多态原理

参考 虚方法 JVM杂记:对多态实现原理、虚方法表、虚方法、静态解析、动态链接的一些思考_多态和方法表的关系-CSDN博客 静态分派与动态分派 (JVM)Java虚拟机:静态分派 & 动态分派 原理解析 - 掘金 虚方法表 JVM 栈帧&am…

假期作业8

线程和进程服务器 线程 #include <myhead.h>#define SIP "192.168.0.114" #define SPORT 8888void *task(void *arg){printf("客户端连接\n");sleep(1);pthread_exit(NULL); }int main(int argc, const char *argv[]) {int sfd socket(AF_INET, S…

16.1 Spring框架_SpringIoC容器与Bean管理(❤❤)

16.1 Spring框架_SpringIoC容器与Bean管理 1. Spring1.1 SpringIoC1. IoC控制反转2. DI依赖注入1.2 Spring概念1. Spring含义2. 传统开发与SpringIoC开发模式比较2. IoC基础实现案例(❤❤)1. 传统方式2. IoC与DI方式3. bean管理1. xml方式(❤❤)1. bean的实例化方式

C++——二叉树

引入 map和set特性需要先铺垫二叉搜索树&#xff0c;而二叉搜索树也是一种树形结构 二叉搜索树的特性了解&#xff0c;有助于更好的理解map和set的特性 1.二叉搜索树的概念及优缺点 1.1二叉搜索树的概念 二叉搜索树又称二叉排序树&#xff0c;它或者是一棵空树&#xff0c;或…