如何控制四轴飞行器四个方向飞行

article/2025/9/3 20:42:09

四旋翼飞行器通过调节四个电机转速来改变旋翼转速,实现升力的变化,从而控制飞行器的姿态和位置。四旋翼飞行器是一种六自由度的垂直升降机,但只有四个输入力,同时却有六个状态输出,所以它又是一种欠驱动系统。
以四轴,X 形状为例:
这里写图片描述
1.飞行器保持悬停, 4个电机的转速保持一致,来使飞行器保持水平。
四个电机的转速=悬停油门。
2.当我们希望飞行器向右飞的时候,我们设定在第一种情况的基础上,增加左边两个电机(3,11)的转速,减小右边两个电机(9,10)的转速。
9号电机=悬停油门 - 右倾的量
10号电机= 悬停油门 - 右倾的量
11号电机 = 悬停油门 + 右倾的量
3号电机= 悬停油门 + 右倾的量

3.当我们希望飞行器向左飞的时候,上面的公式依然成立,只不过右倾的量是负数了。

4.当我们希望飞行器向前飞的时候,那么我们要增加后面一组电机(11,9)的转速,减小前面一组电机(3,10)的转速

9号电机=悬停油门 + 前飞的量
10号电机= 悬停油门 - 前飞的量
11号电机 = 悬停油门 + 前飞的量
3号电机= 悬停油门 - 前飞的量

5.飞行器向后飞的情况,上面公式依然成立,前飞的量为负数。

6.当我们希望飞行器顺时针旋转, 我们增加10号,11号 对角线两个电机的转速,减小3号,9号这条对角线电机的转速。

9号电机=悬停油门 - 旋转的量
10号电机= 悬停油门 + 旋转的量
11号电机 = 悬停油门 + 旋转的量
3号电机= 悬停油门 - 旋转的量

7.当我们希望飞行器逆时针旋转, 我们减小10号,11号对角线两个电机的转速,增加3号,9号这条对角线电机的转速。继续使用上面的公式。

  1. 最后,针对一个电机,它同时要负责前后左右和旋转的情况, 那它就叠加了4种情况下的值:

9号电机 = 悬停油门 - 右倾的量 + 前飞的量 - 旋转的量
10号电机 = 悬停油门 - 右倾的量 - 前飞的量 + 旋转的量
11号电机 = 悬停油门 + 右倾的量 + 前飞的量 + 旋转的量
3号电机 = 悬停油门 + 右倾的量 - 前飞的量 - 旋转的量

所以实现代码如下:

#define PIDMIX(X,Y,Z) rcCommand[THROTTLE] + axisPID[ROLL]*X + axisPID[PITCH]*Y + YAW_DIRECTION * axisPID[YAW]*Z#ifdef QUADXmotor[0] = PIDMIX(-1,+1,-1); //REAR_Rmotor[1] = PIDMIX(-1,-1,+1); //FRONT_Rmotor[2] = PIDMIX(+1,+1,+1); //REAR_Lmotor[3] = PIDMIX(+1,-1,-1); //FRONT_L
#endif

一切对称,不对称的多旋翼布局都基于此理论,如果有爱的童鞋,可以补充解释 Y3,Y6 ,V尾的公式。甚至可以创造自己发明的布局,有创意的话就晒出来吧。


http://chatgpt.dhexx.cn/article/DemdsSrB.shtml

相关文章

四轴飞控DIY简明步骤介绍

新手四轴飞控DIY组装简明步骤介绍 1. 什么叫做新手?2. 新手如何思考?3. 上手步骤Step1:四轴飞控介绍定义运动原理组成 Step2:四轴飞控组装视频Step3:四轴飞控新手规格定义需求考量规格 Step4:四轴飞控组件分…

四轴飞行器基本组成及其飞行原理详解

近日,自己组装了一台 四轴飞行器; 组装完后,便想深究其原理;避免只是 知其然,却不知其所以然; 查阅资料后,便在其他文章的基础上,将此文 归纳整理 出来; 文章末尾有参…

四轴飞行器实践教程(内部资料)

四轴飞行器实践教程(内部资料) 试读文档下载 下载地址:http://pan.baidu.com/s/1o6wlyum 四旋翼飞行器,也即四轴飞行器,曾经被作为初期飞机的模型开发,但由于体积、重量和控制的诸多原因所废弃。而最终&…

四旋翼无人机飞行器基本知识(四旋翼无人机结构和原理+四轴飞行diy全套入门教程)

第一篇《四旋翼飞行器结构和原理》 第二篇《四旋翼飞行diy全套入门教程》 四旋翼飞行器结构和原理 1.结构形式 旋翼对称分布在机体的前后、左右四个方向,四个旋翼处于同一高度平面,且四个旋翼的结构和半径都相同,四个电机对称的安装在飞行器…

四旋翼飞行器基本知识(四旋翼飞行器结构和原理+四轴飞行diy全套入门教程)

转载两篇日志: 第一篇《四旋翼飞行器结构和原理》 第二篇《四旋翼飞行diy全套入门教程》 四旋翼飞行器结构和原理 1.结构形式 旋翼对称分布在机体的前后、左右四个方向,四个旋翼处于同一高度平面,且四个旋翼的结构和半径都相同&#…

四轴飞行diy全套入门教程(从最基础的开始)

首先声明本人也是菜鸟,此教程就是从一个菜鸟的角度来讲解,现在论坛上的帖子都突然冒很多名词出来,又不成体系,我自己开始学的时候往往一头雾水,相信很多新手也一样。所以在这个帖子里面,我都会把自己遇到的…

四轴飞行器入门——基础知识

引言 从2016年起,细细数来入门无人机已经有两年时间。两年期间,自己边学边摸索,组装过机架四轴无人机,也修改过开源飞控的代码,但是因为种种原因,始终没有写过相关博客记录下自己的学习历程。最近&#x…

零基础DIY四轴飞行器超级详细保姆级教程(STM32F407ZGT6主控、WIFI图传、陀螺仪平衡、气压计/超声波定高、手机蓝牙控制等功能)

前言 大四毕业后暑假没事做就花了一点DIY了一个四轴飞行器,是比较大的那种F450机架,不是那种PCB板做机架的小四轴,因为我也是从零基础开始做的四轴,现在就想把自己的过程写成博客分享在网上。下面我会从机械结构、主控和各传感器…

20210728用树莓派 DIY 四轴飞行器(硬件、故障保护、遥控、飞行模式)

https://mbb.eet-china.com/forum/topic/92385_1_1.html 20210728用树莓派 DIY 四轴飞行器(硬件、故障保护、遥控、飞行模式) 2021-7-28 11:00:24 只看该作者 倒序浏览阅读:849 回复:1 机械构造–第一部分 今天,我们…

正则判断是手机号码

var regExp "^((13[0-9])|(15[^4])|(18[0,2,3,5-9])|(17[0-8])|(147))\\d{8}$" // 正则表达式 var objExpnew RegExp(regExp) // 正则初始化对象 var tel "18310121542" // 输入手机号码 objExp.test(tel) // 正则验证号码

手机号码正则_中国大陆手机号码的正则表达式总结ChinaMobilePhoneNumberRegex

ChinaMobilePhoneNumberRegex是国人总结整理的一组匹配中国大陆手机号码的正则表达式。遵守MIT开源协议。 规则包括: 手机卡 – 基础运营商 支持语音通话 / 短信 / 数据流量号码长度 11 位运营商 [1]号段中国移动134-0~8 / 135 / 136 / 137 / 138 / 139 / 150 / 151 / 152 / 1…

php虚拟电话号码,虚拟运营商号码慎入! 七大你要想到的事【2】

原标题:虚拟运营商号码慎入! 七大你要想到的事 面临倒闭可能,号码如何处理 在虚拟运营商中我们发现了不少的民营企业身影,这也是工信部在最早开展移动转售业务的初衷之一,鼓励民营企业进入到移动通信行业中来。民营资本的进入可以…

php虚拟电话号码,[视频]一号通电信诈骗追踪 虚拟号码服务藏漏洞

进入[整点新闻]>> “一号通”业务“擅长”呼叫转移与服务管理,只要通过网络或者任何一部固定电话,您都可以随时随地改变“一号通”所链接的号码,或者按顺序转移、无应答转移、临时转移以及免打扰等呼叫转移方式。正因“一号通”的种种便…

自适应红色大气虚拟手机靓号交易商城网站源码

☑️ 编号:ym363 ☑️ 品牌:无 ☑️ 语言:php ☑️ 大小:8.5MB ☑️ 类型:虚拟手机靓号交易商城 ☑️ 支持:pcwap 🎉 欢迎关注,私信,领取 🎉 ✨ 源码介绍 靓号…

VS 2015 | MFC | Dialog界面被关闭了如何打开

打开VS 的资源视图: 上方工具栏 视图->资源视图可以找到,打开****_DIALOG即可

C++ MFC 界面美化------自绘菜单栏

最终效果 一: 点击菜单栏标题后弹出菜单,在OnNcHitTest中增加代码 ,使得当鼠标在 菜单标题的区域点击后,触发对应的函数 LRESULT CMFCDrawnTitleDlg::OnNcHitTest(CPoint point) {// TODO: 在此添加消息处理程序代码和/或调用默认…

MFC界面编程基础(02):MFC窗口的创建

上一篇:MFC界面编程基础(01):Windows 编程模型下一篇:MFC界面编程基础(03):消息映射、窗口绘制、文档/视图结构体系 MFC是什么? 微软基础类库(英语:Micros…

MFC界面编程基础(01):Windows 编程模型

上一篇:MFC界面编程基础(00):基本概念下一篇:MFC界面编程基础(02):MFC窗口的创建 WinMain函数 当 Windows 操作系统启动一个程序时,它调用的就是该程序的 WinMain 函数…

简单聊天室的设计 C++ MFC

b站有更高级教学视频 https://www.bilibili.com/video/av38700336/ 一、要求 要求:分别设计基于对话框的客户端和服务器端的程序,实现两端的通信,服务器端能接受客户端的消息,并且显示客户端的连接信息,把客户端信息…

MFC 中使用QT开发界面

首先创建一个基于对话框的MFC工程,当然其他的像是多文档、单文档工程也是可以的,只是为了简单起见我这里用的是对话框 然后通过鼠标右键点击项目,然后依次点击属性 --> C/C -->常规在工程的附加头文件中添加上QCore、QGui、QWidget和QT…