0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Multi WiiCopterh固件参数

云深之无迹 来源:云深之无迹 作者:云深之无迹 2022-08-29 10:21 次阅读

这里就写一下MW Wiki里面我觉得不错的东西。

如果你在户外玩,你的 flyng rc 模型必须是抗风的。

1.越重越好——动量和惯性越大

2.越小越好 -暴露在风中的表面越少

此外,具有更快(更高 Kv)电机的小型道具将比更大的道具更抗风。

1668cfb8-26b1-11ed-ba43-dac502259ad0.png

这个是我们要看的代码,很少的代码

MultiWii 的第一个配置是在固件源的config.h文件中完成的。使用 Arduino编程 IDE 或简单的文本编辑器,可以更改多旋翼飞行器、飞翼或直升机的多个选项。


这是通过添加或删除#define参数前面的//来完成的,该参数注释或取消注释该行,以便它包含或不包含在最终固件中。

例如,在配置文件中选择多旋翼的类型、电机的最小油门、i2c 速度、内部上拉电阻(如果需要)、至少带有陀螺仪控制器板,删除#define前面的//就可以了在ACRO模式下飞行的最简单配置。无需更改任何其他行:

#define QUADX#define MINTHROTTLE 1180#define I2C_SPEED 400000L#define CRIUS_SE

下一步是使用 Arduino IDE 或其他方式(如 ISP 编程器)将固件上传到控制器板.

飞控内存使用:

需要注意的是,可以在 config.h 中启用许多选项,这些选项会影响编译代码的最终大小以及运行时使用的 RAM。当使用基于 ATmega 328p 的 multiwii 飞行控制器时,在 config.h 中选择要启用的内容时应特别小心,以免超出可用程序内存或 RAM。目前 Arduino IDE 将无法编译超过程序内存大小的固件,但它只会警告可能的低 RAM。

16ad976a-26b1-11ed-ba43-dac502259ad0.png

这样就是开启了

http://www.multiwii.com/wiki/index.php?title=Config.h

这个是对宏定义的一个简单的说明。

16c8f280-26b1-11ed-ba43-dac502259ad0.png

这里只能选择一个飞机的类型

16eca37e-26b1-11ed-ba43-dac502259ad0.png

可以在这里看到不同的气动布局

1712d49a-26b1-11ed-ba43-dac502259ad0.png

电机的最小油门

这是在启动电机时选择的最低油门速度。你必须根据你的 ESC(速度控制器)和电机配置该值。此设置将防止电机在飞行中停止并发生碰撞。测试该值是否正常,电机在没有螺旋桨的情况下运行并移动飞机以查看在改变速度时是否有任何电机停止。

1743a4d0-26b1-11ed-ba43-dac502259ad0.png

独立传感器

176b8d10-26b1-11ed-ba43-dac502259ad0.png

RC控制,你这里看,就找到BF用的人多了,都是按钮,一点就好,这里得看半天。

MultiWii 使用闭环控制器来确保其稳定性和可操作性。与大多数多旋翼一样,它使用比例积分微分 (PID) 控制器。

当 MultiRotor 方向在任何俯仰/滚动/偏航轴上发生变化时,陀螺仪会指示其初始位置的角度变化。MultiRotor 控制器尝试纠正控制器输出测量值(由陀螺仪测量)和输入设定点(摇杆位置)之间计算的误差,并驱动电机尝试将 MultiRotor 返回到其初始位置。

这种测量的角度偏差和随时间变化的采样的组合为控制器提供了足够的信息来驱动电机仅使用陀螺仪返回平衡:这是默认的Acro 模式。

使用陀螺仪,飞行控制器将使用角速度来保持当前姿态。对可达到的态度没有限制。所有其他飞行模式均基于此模式。在使用其他飞行模式之前,需要在特技模式下实现稳定的行为。

找到飞机的重心,把电池移动到这里,接着,把RC杆打一半,电机功率的50%。

P 是 PID 的主要部分,可以让你了解良好的飞行特性。

1.将 PID 设置为其默认值

2.将 MultiRotor 牢牢固定在空中

3.将油门增加到开始感觉轻的悬停点

4.尝试将 MultiRotor 向下倾斜到每个电机轴上

5.应该感觉到对每个轴的压力的反应。

6.改变 P 直到难以对抗反应。

7。现在尝试沿 Pitch 轴(从前到后)摇动 MultiRotor。增加 P 直到它开始振荡,然后减少触摸。对偏航轴重复。现在应该适合飞行。

高级调优 - 了解 P、I 和 D 的影响:

P : 这是用于将 MultiRotor 返回到其初始位置的校正力的大小。

力的大小与初始位置的偏差减去控制器输入的任何改变方向的命令的组合成正比。较高的 P 值将产生更强的力来抵抗任何改变其位置的尝试。如果 P 值过高,在返回初始位置时,会出现过冲,需要反作用力进行补偿。这会产生振荡效应,直到最终达到稳定性或在严重的情况下变得完全不稳定。

增加 P 的值:

它会变得更加稳固/稳定,直到 P 太高,它开始振荡并失去控制。

你会注意到对移动 MultiRotor 的任何尝试都有很强的抵抗力。

P 的递减值:

它会在控制中开始漂移,直到 P 变得非常不稳定时太低。

对任何改变方向的尝试的抵抗力都会降低。

特技飞行:需要稍高的P值

轻柔平稳的飞行:需要稍低的P值

I :这是对角度变化进行采样和平均的时间段

施加到返回初始位置的力的量增加了 I 因子,偏差存在的时间越长,直到达到最大力值。更高的 I 将增加角度保持能力。

为 I 增加值:

增加保持整体初始位置的能力并减少漂移,但也会增加返回初始位置的延迟。

也会降低P的重要性。

I 的递减值:

会改善对变化的反应,但会增加漂移并降低保持姿势的能力。

也会增加P的重要性。

特技飞行:需要稍低的 I

平缓平稳飞行:需要稍高的 I

D:这是 MultiRotor 返回到其原始位置的速度。

增加 D 的值:提高恢复偏差的速度

快速恢复速度带来更高的过冲和振荡概率

也会增加P的效果

D 的递减值:

在将任何偏差返回到其初始位置时减少振荡

恢复到初始位置变得更慢

也会降低P的效果

特技飞行:增加D

平缓飞行:减小 D

用于特技飞行

增加 P 的值直到振荡开始,然后稍微后退

更改 I 的值,直到悬停漂移不可接受,然后稍微增加

增加 D 的值,直到从剧烈的控制变化中恢复导致不可接受的恢复振荡

P现在可能需要稍微降低

稳定飞行 (RC)

增加 P 的值直到振荡开始,然后稍微后退

更改 I 的值,直到无法从偏差中恢复,然后稍微增加

减小 D 的值,直到从剧烈的控制变化中恢复变得太慢。然后稍微增加 D

P现在可能需要稍微降低

稳定飞行(AP / FPV)

增加 P 的值直到振荡开始,然后稍微后退

更改 I 的值,直到无法从偏差中恢复,然后稍微增加

减小 D 的值,直到从剧烈的控制变化中恢复变得太慢。然后稍微增加 D

P现在可能需要稍微降低。

178cf522-26b1-11ed-ba43-dac502259ad0.png

有个简单的调参窗口

其次支持的各种传感器有:

陀螺仪:

L3G4200D

ITG3200

MPU6050

MPU3050

IDG-650、ISZ-650(Wii Motion Plus)

加速度计:

LIS3L02AL

MMA7455

ADXL345

BMA180a

BMA020

LIS3LV02

LSM303DLx

MPU6050

MPU3050

气压计/高度计:

BMP085

MS561101BA

磁力计

MAG3110

HMC5843

HMC5883

AK8975

全球定位系统

带串行输出的 GPS,支持以下协议:

UBLOX

NMEA

MTK 二进制(v1.6 和 v1.9)

i2c 全球定位系统

这个飞控还带给了我们一个串行的协议:

17b82b98-26b1-11ed-ba43-dac502259ad0.png

好东西

MSP 消息的一般格式为:

<前导>,<方向>,<大小>,<命令>,,

在哪里:

preamble= ASCII 字符 '$M'

direction= ASCII 字符“<”如果到 MWC 或“>”如果来自 MWC

size = 数据字节数,二进制。在向 MWC 提出数据请求的情况下可以为零

command = message_id 根据下表

data= 如下表。UINT16 值是 LSB 在前。

crc = 和每个数据字节的 XOR 到一个零。

17dd7f2e-26b1-11ed-ba43-dac502259ad0.png

插表格太难看了

18013a86-26b1-11ed-ba43-dac502259ad0.png

18217e18-26b1-11ed-ba43-dac502259ad0.png

有需要看源网站

1846ddde-26b1-11ed-ba43-dac502259ad0.png

原来,MW是以这样的一种方式活到了现代

审核编辑:彭静
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 控制器
    +关注

    关注

    112

    文章

    15029

    浏览量

    170360
  • 电机
    +关注

    关注

    139

    文章

    8245

    浏览量

    141778
  • 代码
    +关注

    关注

    30

    文章

    4536

    浏览量

    66501

原文标题:BF固件:Multi WiiCopterh固件(PID调参)

文章出处:【微信号:TT1827652464,微信公众号:云深之无迹】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    3mm Multi-Color with Common Cothode LED封装尺寸及参数说明

    3mm Multi-Color with Common Cothode LED封装尺寸及参数说明 产品说明:Chip Material:GaP Emitted Color:Red
    发表于 09-28 17:56

    Optimize Network Applications for Multi-core

    Optimize Network Applications for Multi-core Agenda1.Technical Trends in Multi-Core2.Solution of Wind River[hide][/hide]
    发表于 12-10 14:02

    请问emWin的Multi Touch怎么用?

    最新版emWin的Multi Touch(MT)怎么用啊?我弄了一个电容屏,现在可以获取所有的触摸点和位置、压力,这个怎么移植到emWin的Multi Touch上去?
    发表于 03-15 02:30

    如何将代码集成到Multi IDE Project?

    我想知道是否可以使用PinMap向导生成C代码以与Multi IDE Green Hill编译器一起使用,如果可以的话,如何将代码集成到Multi IDE Project? 提前致谢, 多米尼克
    发表于 06-21 10:05

    TrueTouch Multi-Touch CY8CTMA140怎么通过I2C进行固件升级

    你好,我正在尝试升级TtrutouCH多点触摸CY8CTMA140的固件,而不使用SoC程序员,而是通过I2C接口。我得到了固件文件“ZXXL7C.HEX”和“CT5138V0.0.HEX”(每个
    发表于 07-08 16:31

    Multi Role编译报错

    其他的项目编译没问题,Multi Role的编译就有如上图的报错,之前看到的方法也无法解决求解,还有什么方法可以解决
    发表于 10-17 06:09

    在AT32微控制器上创建Multi MCU IAP应用程序的方法

    对于大多数基于闪存的系统,一项重要要求是能够在最终产品中安装固件时进行更新。此功能称为应用程序内编程(IAP)。本应用笔记的目的是提供在AT32微控制器上创建Multi MCU IAP应用程序的方法
    发表于 10-24 06:48

    Multi-Agent在工控系统中的应用研究

    近几年来,Agent 和Multi-Agent 理论和现场总线技术有着快速的发展。本文对Agent 和Multi-Agent 理论和现场总线技术进行简单介绍。并结合Multi-Agent 理论和现场总线技术,构建一个基于
    发表于 09-12 16:45 16次下载

    USB DVD Super Multi Drive AW-G

    USB DVD Super Multi Drive AW-G540A光驱固件升级程序:升级注意事项:1. 开始运行固件升级程序后,请不要移开光驱与主机的USB连接线2. 开始运行固件
    发表于 01-06 16:11 9次下载

    DVD-Multi

    DVD-Multi          松下SW-9574-
    发表于 12-26 09:14 794次阅读

    Synchronized multi-spark modul

    Synchronized multi-spark module (SMSM) for Electronic Ignition Devices (EID)
    发表于 12-29 09:09 759次阅读
    Synchronized <b class='flag-5'>multi</b>-spark modul

    Multi-Channel_Mixer

    Multi-Channel Mixer,好东西,喜欢的朋友可以下载来学习。
    发表于 02-22 14:21 0次下载

    ADuCM36x Multi-Functional Tool

    ADuCM36x Multi-Functional Tool
    发表于 03-09 15:49 2次下载
    ADuCM36x <b class='flag-5'>Multi</b>-Functional Tool

    如何使用示波器调试电源固件

    如何使用示波器调试电源固件(山特ups电源技术参数)-如何使用示波器调试电源固件,希望对大家有所帮助。
    发表于 09-29 18:08 11次下载
    如何使用示波器调试电源<b class='flag-5'>固件</b>

    通过设计、校准固件改善器件的S参数测量

    本篇应用笔记描述了在测量元器件S参数时,如何校正和减小由测试固件引起的误差。这里提到的固件由带有SMA连接器的微带线PCB组成。文中给出了基于MAX2648 5GHz低噪声放大器的实例。
    的头像 发表于 06-08 18:09 591次阅读
    通过设计、校准<b class='flag-5'>固件</b>改善器件的S<b class='flag-5'>参数</b>测量