多旋翼飞控底层算法开发系列实验 | 多旋翼动力系统设计实验3
多旋翼动力系统设计实验3
01/多旋翼动力系统简介
多旋翼无人机的动力系统通常包括螺旋桨、电机、电调以及电池。动力系统是多旋翼最重要的组成部分,它决定了多旋翼的主要性能,如悬停时间、载重能力、飞行速度和飞行距离等。动力系统的部件之间需要相互匹配与兼容,否则很可能无法正常工作,甚至可能在某些极端情况下突然失效导致事故发生。例如在某些条件下,飞控手的一个过激操作可能会让电调电流超过其安全阈值而使电机停转,这在飞行过程中是非常危险的。下面分别介绍螺旋桨、电机、电调以及电池。

02/具体实验内容
基于飞行评估网站的多旋翼动力系统设计
已知:,飞行海拔0m,温度25 ◦C,载重1 kg * 9:8 m/s2 = 9:8N,机架、飞控及配件重量为1 kg * 9:8 m/s2 = 9:8N,外接圆半径小于39.37 英寸(大约1m),总体重量小于5 kg * 9:8 m/s2 = 49N,悬停时间大于15 min,悬停油门小于满油门65%;以此通过飞行评估网站:https://flyeval.com/paper/来设计一架多旋翼飞行器。
求解:设计思路
(1)根据单个旋翼所需提供的升力大小选择电机。各电机厂商会提供电机的单轴起飞重量,不同电流下所能提供的升力,以及会推荐螺旋桨的大小,这些数据是电机厂商根据实验得出,可以作为设计多旋翼的参考依据。
(2)选定电机后,即可根据电机的最大电流选择电调,根据电机的供电电压、提供悬停升力时的电机电流和悬停时间选择电池。
(3)根据电机厂商推荐的螺旋桨大小和机架与旋翼最大尺寸的关系即可最终确定螺旋桨的大小。

①. 这里选择常见的四旋翼飞行器,并且满足上述已知条件。
②. 单个螺旋桨拉力计算:当总重量达到上限时单个螺旋桨所需提供的拉力为:
![]()
不考虑动力系统重量,单个螺旋桨所需提供的最小拉力为:
![]()
考虑一定的控制余度:
![]()
注:单个电机提供的拉力范围在7.54N~18.85N之间时会被考虑。
③. 计算螺旋桨的最大尺寸: 根据飞行器的最大尺寸限制,确定螺旋桨的最大尺寸:
![]()
即:
![]()
解得rmax<0.414m考虑一定裕度,螺旋桨最大尺寸范围为:
![]()
注:螺旋桨尺寸一般用直径表示,且单位为英寸,转换得螺旋最大尺寸在27.2~31英寸之间。
④. 可以在各个电机厂商官网上查找合适拉力的电机,例如T-MOTOR电机,进入官网:http://uav-cn.tmotor.com/ ,选择“多旋翼”。根据前面选择计算的最大拉力范围,选择MN系列领航型。如下图所示。

在负载测试数据表格中,我们可以看到MN4014电机,当电压为22.2V,螺旋桨是T-MOTOR 15 5CF时,最大拉力为1.92kg。

注:单个电机提供的拉力范围在7.54N~18.85N之间时会被考虑。
⑤. 选择电调
如选择T-MOTOR电调,因为我们选择的电机的最大电流为25A,我们这里选择电调的持续电流为40A的AIR 40A电调。

⑥. 选择螺旋桨
根据官方配置,我们选择P15 5螺旋桨,在基本配置中可以看到单个螺旋桨重力为26.5g。


⑦. 选择电池:若选择格式电池,进入公司官网:http://www.ace-pow.com/,在无人机电池中选择高压版。若选择12000mAh的电池,根据前面选择的电机、电调和螺旋桨以及左图中的信息,得到四旋翼总重量为:
![]()
单个螺旋桨所需拉力为:
![]()
此时油门小于65%,在50%~60%油门之间进行简单的线性插值可得拉力为10.6673N,电流为5.78A,计算悬停时间为:
![]()
⑧. 重新计算轴距:根据螺旋桨尺寸重新计算多旋翼轴距:

为了留出一定裕度:取轴距=539 1.1=593mm,选择轴距为600mm。
⑨. 使用https://flyeval.com/paper/网站计算飞行参数。
可以看到网站计算的悬停时间与估计的悬停时间比较接近,飞行器的剩余负载还很大,有5.44kg,如果要继续增加续航时间可在整体结构不变的前提下增大电池容量。


参考资料
[1] 全权,杜光勋,赵峙尧,戴训华,任锦瑞,邓恒译.多旋翼飞行器设计与控制[M],电子工业出版社,2018.
[2] 全权,戴训华,王帅.多旋翼飞行器设计与控制实践[M],电子工业出版社,2020.
[3] D. Shi, X. Dai, X. Zhang, and Q. Quan, “A practical performance evaluation method for electric multicopters,” IEEE/ASME Transactions on Mechatronics, vol. 22, no. 3, pp. 1337–1348, 2017..
[4] X. Dai, Q. Quan, J. Ren, and K.-Y. Cai, “An Analytical Design Optimization Method for Electric Propulsion Systems of Multicopter UAVs with Desired Hovering Endurance,” IEEE/ASME Transactions on Mechatronics, vol. 24, no. 1, pp. 228–239, 2019
[5] X. Dai, Q. Quan, J. Ren, and K.-Y. Cai, “Efficiency Optimization and Component Selection for Propulsion Systems of Electric Multicopters. IEEE Transactions on Industrial Electronics, vol. 66, no. 10, pp. 7800–7809, 2019.
[6] X. Dai, C. Ke, Q. Quan and K. -Y. Cai, “Simulation Credibility Assessment Methodology With FPGA-based Hardware-in-the-Loop Platform,” IEEE Transactions on Industrial Electronics, vol. 68, no. 4, pp. 3282-3291, 2021.
[7] X. Dai, C. Ke, Q. Quan and K. -Y. Cai, “RFlySim: Automatic test platform for UAV autopilot systems with FPGA-based hardware-in-the-loop simulations,” Aerospace Science and Technology, vol. 114, p. 106727, 2021.

相关文章:
多旋翼飞控底层算法开发系列实验 | 多旋翼动力系统设计实验3
多旋翼动力系统设计实验3 01/多旋翼动力系统简介 多旋翼无人机的动力系统通常包括螺旋桨、电机、电调以及电池。动力系统是多旋翼最重要的组成部分,它决定了多旋翼的主要性能,如悬停时间、载重能力、飞行速度和飞行距离等。动力系统的部件…...
Redis之Sentinel(哨兵)机制
一、Sentinel是什么? Sentinel(哨岗、哨兵)是Redis的高可用性(high availability)解决方案:由一个或多个Sentinel实例(instance)组成的Sentinel系统(system)…...
加密的PDF文件,如何解密?
PDF文件带有打开密码、限制编辑,这两种密码设置了之后如何解密? 不管是打开密码或者是限制编辑,在知道密码的情况下,解密PDF密码,我们只需要在PDF编辑器中打开文件 – 属性 – 安全,将权限状态修改为无保护…...
【java】获取当前年份
目录 一、代码示例二、截图示例 一、代码示例 package com.learning;import java.text.SimpleDateFormat; import java.time.LocalDate; import java.time.Year; import java.util.Calendar; import java.util.Date;/*** 获取当前年份*/ public class GetCurrentYear {public …...
前端面试话术集锦第一篇
🚗前端面试集锦目录 💖前端面试话术集锦第一篇💖 💖前端面试话术集锦第二篇💖 文章目录 1. 前端需要注意哪些SEO2. \<img>的title和alt有什么区别3. HTTP的⼏种请求⽅法⽤途4. 从浏览器地址栏输⼊url到显示⻚⾯的步骤5. 如何进⾏⽹站性能优化6. HTTP状态码及其…...
NeRFMeshing - 精确提取NeRF中的3D网格
准确的 3D 场景和对象重建对于机器人、摄影测量和 AR/VR 等各种应用至关重要。 NeRF 在合成新颖视图方面取得了成功,但在准确表示底层几何方面存在不足。 推荐:用 NSDT编辑器 快速搭建可编程3D场景 我们已经看到了最新的进展,例如 NVIDIA 的 …...
后端面试话术集锦第五篇:rabbitmq面试话术
🚗后端面试集锦目录 💖后端面试话术集锦第 1 篇:spring面试话术💖 💖后端面试话术集锦第 2 篇:spring boot面试话术💖 💖后端面试话术集锦第 3 篇:spring cloud面试话术💖 💖后端面试话术集锦第 4 篇:ElasticSearch面试话术💖 💖后端面试话术集锦第 5 …...
Spring Boot(Vue3+ElementPlus+Axios+MyBatisPlus+Spring Boot 前后端分离)【一】
😀前言 本篇博文是关于Spring Boot(Vue3ElementPlusAxiosMyBatisPlusSpring Boot 前后端分离)【一】,希望你能够喜欢 🏠个人主页:晨犀主页 🧑个人简介:大家好,我是晨犀,希望我的文章…...
vue3之reactive和ref学习篇
<script lang"ts" setup> // reactive参数必须为引用类型 和ref简单类型或者引用类型 import { reactive, ref } from vue; const arr reactive([10]) const count ref(0); let increasing true; console.log(count) const change ()>{if(increasing){c…...
【推荐】Spring与Mybatis集成整合
目录 1.概述 2.集成 2.1代码演示: 3.整合 3.1概述 3.2 进行整合分页 接着上两篇,我已经写了Mybatis动态之灵活使用,mybatis的分页和特殊字符的使用方式接下来把它们集成起来,是如何的呢👇👇…...
listdir, makedirs, shuffle, exists, webdriver.Chrome, roll方法快速查阅
1 os.listdir() os.listdir() 方法用于返回指定的文件夹包含的文件或文件夹的名字的列表。 2 os.makedirs(path) 方法用于递归创建目录。 如果子目录创建失败或者已经存在,会抛出一个 OSError 的异常 3 numpy.random.shuffle(x) 由numpy.random调用,可…...
java.nio.ByteBuffer 学习笔记
目录 java 重复使用bytebuffer例子: java验证flip函数: flip讲解 以下内容转自: java.nio.ByteBuffer java 重复使用bytebuffer例子: import java.nio.ByteBuffer;public class ByteBufferExample {public static void main…...
自动化实时在线静电监控系统的构成
自动化实时在线静电监控系统是一种帮助企业监测和管理静电问题的技术解决方案。静电在许多工业和商业环境中都是一个潜在的风险和生产问题。通过使用这样的监控系统,企业可以及时发现并采取对策来预防或减轻可能的静电问题。 该系统通常由以下组成部分构成…...
Windows 转 mac 记录
初次从Windows转mac可能会不适应,建议先看看 【6分钟搞定MacBook】不懂时无所适从,学会后越用越爽!_哔哩哔哩_bilibili 我主要是做一些补充记录 1、Windows的右键等于mac的双击触控板、control单击触控板 2、运行中的应用下方会有一个点&…...
Linux_4_文本处理工具和正则表达式
目录 1文本编辑工具之神VIM1.1 vi和vim简介1.2使用vim1.2.1 vim 命令格式1.2.2三种主要模式和转换 1.3扩展命令模式1.3.1扩展命令模式基本命令1.3.2 地址定界1.3.3查找并替换1.3.4定制vim的工作特性1.3.4.1行号1.3.4.2忽略字符的大小写1.3.4.3白动缩进1.3.4.4复制粘贴保留格式1…...
[Unity]VSCode无代码提示
查看vscode的output窗口,提示加载 csproj 文件失败 It need be converted to new SDK style to work in C# Dev Kit. 把unity的PackageManager里的 Visual Studio Editor 版本升级到2.0.20或以上,重新生成csproj文件就好了。 参考vscode官方ÿ…...
画流程图都可以用哪些工具?
在日常生活中,我相信我们很多人都看到过流程图。对于设计师来说,它还需要涉及流程图来反映用户的旅程和交互方式。那么你知道哪些流行的流程图设计软件呢?作为高级设计师,我今天推荐10款流程图设计软件。你可以和我一起读这篇文章…...
Elasticsearch中倒排索引、分词器、DSL语法使用介绍
🍓 简介:java系列技术分享(👉持续更新中…🔥) 🍓 初衷:一起学习、一起进步、坚持不懈 🍓 如果文章内容有误与您的想法不一致,欢迎大家在评论区指正🙏 🍓 希望这篇文章对你有所帮助,欢…...
rabbitmq笔记-rabbitmq进阶-数据可靠性,rabbitmq高级特性
消息何去何从 mandatory和immediate是channel.basicPublish方法的两个参数,都有消息传递过程中不可达目的地时将消息返回给生产者的功能。 mandatory参数 true:交换器无法根据自身的类型 和路由键找到符合条件的队列,rabbitmq调用Basic.Re…...
【笔记】判断两个String字符串是否相同(考虑字符串为null的情况)
判断两个字符串是否相同,可用于判断一个字段在逻辑处理前后,值是否有变化。 其中重点是要考虑两个字符串是否有为null的情况,如果其中一个,或者两个都为空,用str1.equals(str2)直接判断,就会报NullPointer…...
使用VSCode开发Django指南
使用VSCode开发Django指南 一、概述 Django 是一个高级 Python 框架,专为快速、安全和可扩展的 Web 开发而设计。Django 包含对 URL 路由、页面模板和数据处理的丰富支持。 本文将创建一个简单的 Django 应用,其中包含三个使用通用基本模板的页面。在此…...
以下是对华为 HarmonyOS NETX 5属性动画(ArkTS)文档的结构化整理,通过层级标题、表格和代码块提升可读性:
一、属性动画概述NETX 作用:实现组件通用属性的渐变过渡效果,提升用户体验。支持属性:width、height、backgroundColor、opacity、scale、rotate、translate等。注意事项: 布局类属性(如宽高)变化时&#…...
基于Flask实现的医疗保险欺诈识别监测模型
基于Flask实现的医疗保险欺诈识别监测模型 项目截图 项目简介 社会医疗保险是国家通过立法形式强制实施,由雇主和个人按一定比例缴纳保险费,建立社会医疗保险基金,支付雇员医疗费用的一种医疗保险制度, 它是促进社会文明和进步的…...
Golang dig框架与GraphQL的完美结合
将 Go 的 Dig 依赖注入框架与 GraphQL 结合使用,可以显著提升应用程序的可维护性、可测试性以及灵活性。 Dig 是一个强大的依赖注入容器,能够帮助开发者更好地管理复杂的依赖关系,而 GraphQL 则是一种用于 API 的查询语言,能够提…...
Linux云原生安全:零信任架构与机密计算
Linux云原生安全:零信任架构与机密计算 构建坚不可摧的云原生防御体系 引言:云原生安全的范式革命 随着云原生技术的普及,安全边界正在从传统的网络边界向工作负载内部转移。Gartner预测,到2025年,零信任架构将成为超…...
【Web 进阶篇】优雅的接口设计:统一响应、全局异常处理与参数校验
系列回顾: 在上一篇中,我们成功地为应用集成了数据库,并使用 Spring Data JPA 实现了基本的 CRUD API。我们的应用现在能“记忆”数据了!但是,如果你仔细审视那些 API,会发现它们还很“粗糙”:有…...
AI编程--插件对比分析:CodeRider、GitHub Copilot及其他
AI编程插件对比分析:CodeRider、GitHub Copilot及其他 随着人工智能技术的快速发展,AI编程插件已成为提升开发者生产力的重要工具。CodeRider和GitHub Copilot作为市场上的领先者,分别以其独特的特性和生态系统吸引了大量开发者。本文将从功…...
【HarmonyOS 5 开发速记】如何获取用户信息(头像/昵称/手机号)
1.获取 authorizationCode: 2.利用 authorizationCode 获取 accessToken:文档中心 3.获取手机:文档中心 4.获取昵称头像:文档中心 首先创建 request 若要获取手机号,scope必填 phone,permissions 必填 …...
大语言模型(LLM)中的KV缓存压缩与动态稀疏注意力机制设计
随着大语言模型(LLM)参数规模的增长,推理阶段的内存占用和计算复杂度成为核心挑战。传统注意力机制的计算复杂度随序列长度呈二次方增长,而KV缓存的内存消耗可能高达数十GB(例如Llama2-7B处理100K token时需50GB内存&a…...
AI,如何重构理解、匹配与决策?
AI 时代,我们如何理解消费? 作者|王彬 封面|Unplash 人们通过信息理解世界。 曾几何时,PC 与移动互联网重塑了人们的购物路径:信息变得唾手可得,商品决策变得高度依赖内容。 但 AI 时代的来…...
