标题: 无刷电调基础知识以及BLHeli固件烧录和参数调整
作者: 梦幻之心星 [email protected]
标签: [#基础知识,#电调,#BLHeli,#固件,#烧录,#调参]
目录: [电调]
日期: 2021-02-01
基础知识
电调
- ESC代表电子速度控制器,简称为电调。电调从飞行控制器接收油门信号,并以所需速度驱动无刷电机。
电调固件
- 电调固件是在每个电调上运行的软件,它确定电调的性能,支持的协议以及可以使用的配置接口。电调可以使用的固件取决于硬件。
- SimonK:最古老的两种开源电调固件之一,已经过时不再更新。
- BLHeli:最古老的两种开源电调固件之一,由于其广泛的功能和友好的用户界面而变得流行。
- BLHeli_S:BLHeli固件的第二代。专门为具有Busybee处理器的电调开发。
- BLHeli_32:第三代和最新一代BLHeli固件。专门为32位电调编写,不再开源。
电调处理器
- 市场上大多数电调使用ATMEL、Silabs和ARM的处理器。不同的处理器具有不同的规格和功能,并且受不同的固件支持。
- ATMEL 8位:支持SimonK和BLHeli固件。
- SILABS 8位:支持BLHeli或BLHeli_S固件。
- 主要处理器是F330和F39X系列的F390和F396。
- Busybee处理器是F330和F39X的升级。有BusyBee1(EFM8BB10F8)和BusyBee2(EFM8BB21F16)两种。
- ARM 32位:支持BLHeli_32固件。
电调协议
- 电调协议是飞行控制器和电调用于通信的语言,决定了信号从飞控到电调的发送速度。
- 四轴飞行器使用的电调协议及信号宽度
- Standard PWM :1000us – 2000us
- Oneshot125:125us – 250us
- Oneshot 42:2us – 84us
- Multishot:5us – 25us
- Dshot
- Dshot150 :106.8us
- Dshot300 :53.4us
- Dshot600 :26.7us
- DShot1200:13.4us
- ProShot
电调BEC
- BEC表示 电池消除电路,本质上是电压调整器。作用是将主电池组的电压降压到5V输出。
- 通常内置在电调中,消除了为5V电子设备供电所需的单独电池的麻烦。
BLHeliSuite
手册
- BLHeliSuite的手册位于BLHeliSuite的Manuals目录
- BLHeliSuite的手册主要文件内容:
BLHeli manual xx xx.pdf
:Atmel MCU和SiLabs MCU的电调的参数BLHeli programming adapters.pdf
:适配器的制作和使用BLHeli supported xx ESCs.pdf
:支持的Atmel和SiLabs电调的图片及参数BLHeliSuite 4w-if interfaces pinout.pdf
:Arduino板上用于Atmel/SiLabs电调的BLHeliSuite的4w-if的引脚配置BLHeliSuite 4w-if protocol.pdf
:用于Atmel/SiLabs电调的BLHeliSuite的4w-if的通信协议
适配器
首次刷新电调固件
- SiLabs MCUs电调支持以下适配器
- Arduinos:使用
SILABS C2 (4way-if)
接口。初次使用Arduinos作为适配器时需要对Arduinos进行编程烧录。 - SiLabs Toolstick:使用
SILABS C2 (Toolstick)
接口。 - USB Flashing stick:使用
SILABS C2 (Toolstick)
接口。 - BLHeli Skywalker stick:使用
SILABS C2 (Toolstick)
接口。
- Arduinos:使用
- Atmel MCUs电调支持以下适配器
- Arduinos:使用
ATMEL ISP Interface (AVRDude)
接口。初次使用Arduinos作为适配器时需要对Arduinos进行编程烧录。 - USBasp:使用
ATMEL ISP Interface (AVRDude)
接口。
- Arduinos:使用
刷新电调引导程序
- 刷新电调引导程序为BLHeli主要有
USB/Com
和4way-if
两种类型的接口。 - Arduinos(4way-if):使用
SILABS BLHeli Bootloader (4way-if)
或ATMEL BLHeli Bootloader (4way-if)
接口。使用Arduinos作为适配器时需要对Arduinos进行编程烧录。 - Arduinos(USB/UART 1-Wire bridge):使用
SILABS BLHeli Bootloader (USB/Com)
或ATMEL BLHeli Bootloader (USB/Com)
接口。使用Arduinos作为适配器时需要对Arduinos进行编程烧录。 - Favourite stick:使用
SILABS BLHeli Bootloader (USB/Com)
或ATMEL BLHeli Bootloader (USB/Com)
接口。 - FTDI stick:使用
SILABS BLHeli Bootloader (USB/Com)
或ATMEL BLHeli Bootloader (USB/Com)
接口。 - Multistar stick:使用
SILABS BLHeli Bootloader (USB/Com)
或ATMEL BLHeli Bootloader (USB/Com)
接口。
背景说明
- 适配器:Arduino Nano ATMEGA328P
- 电调:主控芯片SIL F330,功率管AON6504,供电1-4S,电流20A-30A,无BEC
操作说明
前期准备
- 下载Arduino Nano所用的USB转串口芯片CH340C的驱动程序CH341SER.ZIP,安装驱动。
- 下载BLHeliSuite,一般下载
BLHeliSuite16714902.zip
即可。 - 根据电调外观和信息,查阅手册
BLHeli supported xx ESCs.pdf
以确定电调型号。或者根据电调PCB确定电调的主控芯片型号。 - 根据电调的主控芯片型号,查阅手册
BLHeli programming adapters.pdf
以确定需要用到的适配器和接口,以及适配器的制作方法。 - 根据所使用的适配器和所需操作使用的接口,查阅手册
BLHeliSuite 4w-if interfaces pinout.pdf
以确定引脚连接。
制作适配器
- 连接适配器和电脑,打开BLHeliSuite。
- 点击Make interfaces标签页。
- 点击Port选择USB-SERIAL CH340 对应的端口,点击Arduino Board选择Nano w/ ATmega328开发板,点击Baud选择115200波特率,点击Arduino 4way-interface。
- 点击OK,选择最后一个文件后点击打开。
- 点击Yes。
- 等待烧录Arduino,出现Arduino flashed sucsessfully by Avrdude表示已成功将Arduino Nano烧录为适配器。点击OK。
连接电调
- 连接适配器和电调(VCC GND C2D C2CK)。
- 点击Select ATMEL/SILABS Interface选择SILABS C2 (4way-if)接口。
- 点击SiLabs ESC Setup标签页。
- 点击Port选择USB-SERIAL CH340 对应的端口,点击connect,点击Read setup读出电调参数设置。
- 出现setup read successfully表示已成功连接到电调并读取到电调的参数。点击OK。
刷新固件
- 点击Flash BLHeli
- 在弹出的窗口中选择固件名称、固件类型(MAIN:直升机主桨;TAIL:直升机尾桨;MULTI:多桨)、固件版本,点击OK。
- 点击Yes。
- 等待烧录固件,出现sucsessfully表示已成功将电调固件烧录到电调。点击OK。在下一个弹出的窗口中点击Yes。
调整参数
- 点击ESC Setup选择Save Setup to ini file 以备份电调当前的参数。
- 修改电调参数。降低启动功率,降低电调输出的PWM频率,开启低转速功率保护。
- 点击Write setup将参数写入电调。
多轴编程参数表
电调参数说明,详见官方手册
BLHeli manual xx xx.pdf
注意事项
- 据说电调名称所写的FVT Littlebee 20A并不是真实型号,升级固件可能导致电调烧毁。
- 电调在驱动电机运转前需要执行解锁序列以进行解锁
- 上电时, 电调发出3声蜂鸣声。
- 当检测到油门信号时, 发出一声低音。 表示解锁信号序列开始。
- 当油门减小到零时, 发出一声高音。 表示解锁信号序列结束。
- SILABS电调接口标号为A、B、C、D,Atmel电调接口标号为1、2、3、4、5、X。通过接口所对应的标号,可以在Make interfaces界面方便快捷的得知需要制作的适配器。
- 在使用Arduino Nano w/ ATmega328P作为适配器时。如果Arduino Nano使用的是旧版的引导程序,波特率设置为57600;如果Arduino Nano使用的是新版的引导程序,波特率设置为115200。
参考资料
- FPV无人机ESC购买指南-Oscar Liang
- ESC固件和协议概述-Oscar Liang
- 直流无刷电机工作原理
- 无刷电机和电子调速器(ESC)是如何工作的
- PPM信号介绍
- Arduino 开发板介绍及对比
- 用arduino uno R3做Blheli编程适配器编程航模电调
- BLHeli无刷电调固件烧写及调参(解决电机低速抖动及正反转)
- BLHeli无刷电调 调参介绍 某宝八元电调
- 懒人免焊接傻瓜包会从零开始给电调刷BLHELI固件
- MTO1804无刷电机引发的悲惨经历之二:电调固件刷新与优化
版权声明:本文为「梦幻之心星」原创,依据 CC BY-NC-SA 4.0 许可证进行授权,转载请附上原文出处链接及本声明。
博客园地址:https://www.cnblogs.com/Sky-seeker
微信公众号:关注微信公众号,获取即时推送