(2)设置飞机进行调优

news2025/2/26 4:17:15

文章目录

        前言

2.1 电池设置

2.2 电机设置

2.3 PID控制器初始设置


前言

以下参数应根据你的飞机的规格正确设置。每一个都会影响调优过程的质量。


2.1 电池设置

确保你的 VTOL 电机的推力曲线尽可能的线性是非常重要的。一个线性的推力曲线意味着电机产生的实际推力的变化与 ArduPilot 所要求的推力成正比。如果你的推力曲线是严重的非线性,那么你将永远不会产生一个好的调优,在某些情况下,可能最终会产生一个坏的调优,你的飞行器可能会变得完全不稳定和崩溃。

导致非线性推力曲线的常见原因有 3 个:

  • 随着油门的增加,电压疲沓;
  • 在你使用的 PWM 范围内对你的电调进行不正确的端点设置(见下面的"电机设置");
  • 你的螺旋桨、电调和电机组合产生的推力的非线性问题。

从设置电压范围开始,以应对电压疲沓。参数用于线性化你的电机推力曲线

  • MOT_BAT_VOLT_MAX4.2v x 电池数量;
  • MOT_BAT_VOLT_MIN3.3v x 电池数量。

接下来设置推力表。如果你正在设置一个专业的飞机,那么你应该投资一个推力架,这样你就可以在改变油门时准确地测量你的电机/ESC/螺旋桨组合的真实推力。然后,你将随着端点(由下面的电机设置给出)调整 expo 值,使端点之间的推力尽可能的线性。不要相信制造商的推力曲线数据,因为它们经常是不准确的。有关推力比例的细节,请参见电机推力比例(Motor Thrust Scaling)。

如果你正在设置一个爱好级的飞行器,那么你可以使用下面的图表来估算你飞机的正确 MOT_THST_EXPO 值。

MOT_THST_EXPO5英寸螺旋桨为 0.55,10英寸螺旋桨为 0.6520英寸螺旋桨(或更大)为 0.75。这个参数应通过推力架测量得出,以获得最佳效果(不要相信制造商的数据)。

2.2 电机设置

电机参数定义了发送给电调的 PWM 输出范围。这对于确保飞行中使用的整个油门值范围在你的推进系统的线性范围内是至关重要的。

用于定义发送至 ESC 的输出范围的参数。

  • MOT_PWM_MAX查看 ESC 手册,了解固定范围或 2000us
  • MOT_PWM_MIN:查看 ESC 手册,了解固定范围或 1000us
  • MOT_SPIN_ARM:使用电机测试功能(motor test feature)来确定一个值,它可以可靠地启动电机以低转速旋转,作为解锁状态的指示;
  • MOT_SPIN_MAX:0.95
  • MOT_SPIN_MIN:使用电机测试功能(motor test feature)和电机测试数据,如果有的话,来设置线性推力的较低范围。默认值通常对业余用途来说是足够的;
  • MOT_THST_HOVER:0.25 或低于预期的实际悬停推力百分比(更低是安全的)。

2.3 PID控制器初始设置

下面的设置是为了使你的 PID 控制器的加速度和滤波器设置进入正确的近似范围,以适应你的飞行器。这些参数对调优过程至关重要。PID 控制器的轴 P/D/I 值的默认值对于大多数飞行器的第一次测试悬停来说通常是安全的。

  • INS_ACCEL_FILTER10Hz
  • INS_GYRO_FILTER:5英寸螺旋桨的 80Hz,10英寸螺旋桨的 40Hz20英寸螺旋桨的 20Hz(或更大);
  • ATC_ACCEL_P_MAX:10英寸螺旋桨为 11000020英寸螺旋桨为 5000030英寸螺旋桨为 20000
  • ATC_ACCEL_R_MAX:10英寸螺旋桨为 11000020英寸螺旋桨为 5000030英寸螺旋桨为 20000
  • ATC_ACCEL_Y_MAX:10英寸螺旋桨 2700020英寸螺旋桨 1800030英寸螺旋桨 9000

对于 Copter-4.1(及以后的版本):

  • ATC_RAT_PIT_FLTDINS_GYRO_FILTER / 2;
  • ATC_RAT_PIT_FLTT:INS_GYRO_FILTER / 2;
  • ATC_RAT_RLL_FLTD:INS_GYRO_FILTER / 2;
  • ATC_RAT_RLL_FLTT:INS_GYRO_FILTER / 2;
  • ATC_RAT_YAW_FLTE:2;
  • ATC_RAT_YAW_FLTTINS_GYRO_FILTER / 2。

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

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

相关文章

uniapp学习日记之request自定义请求头

uniapp学习日记之request自定义请求头 在学习uniapp的过程中,由于笔者是从Vue项目转来学习uniapp,在使用uni.request时,发现在浏览器调试时,无法在请求头header中添加token字段,愤而弃之,便开始使用axios组…

python条件循环

python条件循环 Python中的条件循环,可以用来解决很多问题,比如计算一组数据中的最大值,或者从列表中获取一个元素。这里就以条件循环为例来介绍下吧。 Python的条件循环可以分为两种,一种是直接使用 for循环来计算最大值&#xf…

Nvidia技术路线和卷积神经网络介绍

1.Nvidia技术路线概述 2.卷积神经网络介绍 软硬件平台 目的:用卷积神经网络(CNNs)将车前部摄像头捕捉到的原始像素图映射为汽车的方向操控命令。 训练:这套端到端学习系统使用了NVIDIA DevBox, 用Torch 7进行训练。 操作:一台 NVIDIA DRIVE PX 自动驾驶汽车计算…

Mathtype修改硕士论文格式

Mathtype修改硕士论文格式 1将word格式的公式变为mathtype格式1选中公式2点击mathtype中的转换公式 2修改mathtype格式的公式文字版式 1将word格式的公式变为mathtype格式 1选中公式 如果不选公式默认全文所有公式或者指定的公式。 2点击mathtype中的转换公式 选择要转换的…

QML画布绘制(Canvas Paint)

目录 一 QML介绍 二 QML的使用场合 三 实例演示 一 QML介绍 QML是Qt Quick的缩写,它是一种新型的、面向对象的、跨平台的脚本语言,可以用来描述用户界面或应用程序的交互逻辑。QML可以在Qt应用程序中使用,也可以在其他JavaScript应用程序中…

freertos-简介(一)

FreeRTOS 裸机 不带任何操作系统 只能先打完游戏回复信息 实时性差,程序轮流执行delay空等待,CPU不执行其他代码结构臃肿,实现功能都在while循环 RTOS 实时操作系统 会执行打游戏一个时间片再回复信息一个时间片交替执行 在宏观下人类不…

全网最详细部署配置中科大chatgpt学术优化环境

目录 前期准备工作修改config_private.py文件创建私钥配置代理网络的地址 前期准备工作 项目地址: https://github.com/binary-husky/gpt_academic 使用git下载到本地 git clone https://github.com/binary-husky/gpt_academic.git使用conda创建虚拟环境chatgpt-academic …

Grafana系列-统一展示-8-ElasticSearch日志快速搜索仪表板

系列文章 Grafana 系列文章 概述 我们是基于这篇文章: Grafana 系列文章(十二):如何使用 Loki 创建一个用于搜索日志的 Grafana 仪表板, 创建一个类似的, 但是基于 ElasticSearch 的日志快速搜索仪表板. 最终完整效果如下: 📝…

近世代数 笔记与题型连载 第十二章(同态与同构)

文章目录 基本概念同构的概念和性质同态与同构凯莱定理自同态和自同构同态核 相关题型1.证明两个代数系统是同态的2.判断同态的类型(满同态、单一同态和同构)3.对于指定的有限群,找出其对应同构的置换群4.证明某个映射是同构映射5.求指定的同…

【Chrome】最简单方法更改用户文件存储目录User Data

不知不觉C盘下面GoogleChrome已经4.5G了,删除只是一时为快,要想痛快那还是乔迁其他盘符为妙 希望大家的C盘不要过于委屈!!! 关键注意点:网上的其他教程有个很大的错误(误导,就是使用…

JVM 对象的实例化内存布局和访问定位

对象的实例化 创建对象的方式: new: 包含 xxx的静态方法, xxxBuilder 或 xxxFactory 的静态方法Class 的 newInstance: 反射的方式,只能调用空参的构造器,权限必须是 publicConstructor 的 newInstance(XXX): 反射方式,可以调用…

10分钟打造基于ChatGPT的Markdown智能文档

ChatGPT可以帮助我们实现很多原本很难实现功能,为传统系统加入AI支持,从而提升用户体验。本文介绍了如何给在线Markdown文档系统添加ChatGPT问答支持,将静态文档改造为智能文档。原文: Build a ChatGPT Powered Markdown Documentation in No…

第五十九章 Unity 发布Android平台

本章节我们讲解如何打包发布到安卓手机平台。要为 Android 构建和运行应用程序,必须安装 Unity Android Build Support 平台模块。还需要安装 Android 软件开发工具包(SDK)和原生开发工具包(NDK)才能在 Android 设备上…

【UDS】ISO15765-2之诊断时间参数

文章目录 简介分类1. P2client2. P2server3. P2*client4. P2*server5. S3client5. S3server 总结 ->返回总目录<- 简介 诊断层包含六种定时器时间参数&#xff1a;P2client, P2client, P2server, P2server, S3client, S3server。 相对来说&#xff0c;比较好理解。就是…

Unity的UGUI避免行的开头出现符号

一、遇到问题 大家好&#xff0c;我是阿赵。最近在游戏过版署的时候&#xff0c;修改意见里面有一条&#xff0c;游戏内部分文本内容中有标点符号出现在行首的问题。 一般来说&#xff0c;我们编辑文本的时候&#xff0c;是会注意不要把标点符号在换行的时候刚好出现的在行首的…

从学校到职场:在阿里的这7年

简介&#xff1a; 本文不仅希望能给一些初入职场的同学一些思考&#xff0c;也是通过自己阿里7年的总结&#xff0c;对自己未来的一种期望&#xff0c;也希望自己未来再遇到槽糕的处境迷茫的时候&#xff0c;可以回看下自己的心路历程&#xff0c;并做出更理性的选择。 引言&a…

软件测试基础知识整理(二) - 常用dos命令、服务器和域名

目录 一、常用dos命令 二、服务器和域名 2.1 网站上线的基本条件 2.1.1 域名 2.1.2 空间、服务器、云存储 一、常用dos命令 Win R 打开运行窗口&#xff0c;输入cmd即可进入命令行窗口 常用命令作用举例ipconfig/all查看IP的主机信息&#xff0c;DNS信息&#xff0c;物理…

高效理解机器学习

对于初学者来说&#xff0c;机器学习相当复杂&#xff0c;可能很容易迷失在细节的海洋里。本文通过将机器学习算法分为三个类别&#xff0c;梳理出一条相对清晰的路线&#xff0c;帮助初学者理解机器学习算法的基本原理&#xff0c;从而更高效的学习机器学习。原文: Machine Le…

《设计模式》访问者模式

《设计模式》访问者模式 定义&#xff1a; 访问者模式用于封装一些作用于某种数据结构中的各元素的操作&#xff0c;将数据结构和数据操作分离&#xff0c;它可以在不改变这个数据结构的前提下定义作用于这些元素的新操作。属于行为型模式。 访问模式的角色组成&#xff1a; …

基本数据类型不一定存储在栈中,是不是颠覆了你的认知

大家好&#xff0c;我是三叔&#xff0c;很高兴这期又和大家见面了&#xff0c;有很多小伙伴问我&#xff0c;基本数据类型一定在栈内存中吗&#xff1f;网上答案也是五花八门&#xff0c;部分读者都有被误导过&#xff0c;基本数据类型不一定在栈内存中&#xff01; 虽然基本…