多旋翼飞控底层算法开发系列实验 | 多旋翼动力系统设计实验3

2023-11-26 18:30

本文主要是介绍多旋翼飞控底层算法开发系列实验 | 多旋翼动力系统设计实验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的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/426142

相关文章

Java 的ArrayList集合底层实现与最佳实践

《Java的ArrayList集合底层实现与最佳实践》本文主要介绍了Java的ArrayList集合类的核心概念、底层实现、关键成员变量、初始化机制、容量演变、扩容机制、性能分析、核心方法源码解析、... 目录1. 核心概念与底层实现1.1 ArrayList 的本质1.1.1 底层数据结构JDK 1.7

Java HashMap的底层实现原理深度解析

《JavaHashMap的底层实现原理深度解析》HashMap基于数组+链表+红黑树结构,通过哈希算法和扩容机制优化性能,负载因子与树化阈值平衡效率,是Java开发必备的高效数据结构,本文给大家介绍... 目录一、概述:HashMap的宏观结构二、核心数据结构解析1. 数组(桶数组)2. 链表节点(Node

一文详解Python如何开发游戏

《一文详解Python如何开发游戏》Python是一种非常流行的编程语言,也可以用来开发游戏模组,:本文主要介绍Python如何开发游戏的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录一、python简介二、Python 开发 2D 游戏的优劣势优势缺点三、Python 开发 3D

深入理解Mysql OnlineDDL的算法

《深入理解MysqlOnlineDDL的算法》本文主要介绍了讲解MysqlOnlineDDL的算法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小... 目录一、Online DDL 是什么?二、Online DDL 的三种主要算法2.1COPY(复制法)

基于Python开发Windows自动更新控制工具

《基于Python开发Windows自动更新控制工具》在当今数字化时代,操作系统更新已成为计算机维护的重要组成部分,本文介绍一款基于Python和PyQt5的Windows自动更新控制工具,有需要的可... 目录设计原理与技术实现系统架构概述数学建模工具界面完整代码实现技术深度分析多层级控制理论服务层控制注

Java中的分布式系统开发基于 Zookeeper 与 Dubbo 的应用案例解析

《Java中的分布式系统开发基于Zookeeper与Dubbo的应用案例解析》本文将通过实际案例,带你走进基于Zookeeper与Dubbo的分布式系统开发,本文通过实例代码给大家介绍的非常详... 目录Java 中的分布式系统开发基于 Zookeeper 与 Dubbo 的应用案例一、分布式系统中的挑战二

基于Go语言开发一个 IP 归属地查询接口工具

《基于Go语言开发一个IP归属地查询接口工具》在日常开发中,IP地址归属地查询是一个常见需求,本文将带大家使用Go语言快速开发一个IP归属地查询接口服务,有需要的小伙伴可以了解下... 目录功能目标技术栈项目结构核心代码(main.go)使用方法扩展功能总结在日常开发中,IP 地址归属地查询是一个常见需求:

基于 Cursor 开发 Spring Boot 项目详细攻略

《基于Cursor开发SpringBoot项目详细攻略》Cursor是集成GPT4、Claude3.5等LLM的VSCode类AI编程工具,支持SpringBoot项目开发全流程,涵盖环境配... 目录cursor是什么?基于 Cursor 开发 Spring Boot 项目完整指南1. 环境准备2. 创建

SpringBoot 多环境开发实战(从配置、管理与控制)

《SpringBoot多环境开发实战(从配置、管理与控制)》本文详解SpringBoot多环境配置,涵盖单文件YAML、多文件模式、MavenProfile分组及激活策略,通过优先级控制灵活切换环境... 目录一、多环境开发基础(单文件 YAML 版)(一)配置原理与优势(二)实操示例二、多环境开发多文件版

使用docker搭建嵌入式Linux开发环境

《使用docker搭建嵌入式Linux开发环境》本文主要介绍了使用docker搭建嵌入式Linux开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1、前言2、安装docker3、编写容器管理脚本4、创建容器1、前言在日常开发全志、rk等不同