BLDC ESC 无刷直流电子调速器工作原理

BLDC ESC 无刷直流电子调速器工作原理

  • [1. 源由](#1. 源由)
  • [2. Electromagnetic effect](#2. Electromagnetic effect)
  • [3. BLDC commutation(换向)](#3. BLDC commutation(换向))
  • [4. Feedback for commutation(换向)](#4. Feedback for commutation(换向))
  • [5. Detect phase & position from BEMF](#5. Detect phase & position from BEMF)
  • [6. Control circurity design](#6. Control circurity design)
  • [7. 参考资料](#7. 参考资料)
  • [8. 补充](#8. 补充)
    • [8.1 Motor Winding](#8.1 Motor Winding)
    • [8.2 Mechanical v.s. Electrical cycle](#8.2 Mechanical v.s. Electrical cycle)

1. 源由

在更好的了解控制实现之前,首先有必要了解ESC的工作原理。

搞物理同学,估计一看这些图就知道了。因为只有了解了这个底层逻辑,才能帮助更好的了解工作原理,从而发现细微之处,更深层次的理解参数特性,才能更好的进行设计。

2. Electromagnetic effect

电磁效应指的是电流产生磁场或磁场影响电流的现象。这个效应是电磁学的基础,主要包括两个方面:

  1. 电流产生磁场:当电流通过导体时,会在导体周围产生磁场。这个现象由奥斯特发现,称为电流的磁效应。具体来说,电流的方向决定了磁场的方向(可以用右手定则来判断)。

  2. 磁场对电流的作用:当一个导体处于变化的磁场中时,导体中会产生电流,这称为电磁感应。这一现象由法拉第发现,广泛应用于发电机、变压器等设备中。

在BLDC ESC设计中充分应用了这两个特性: 奥斯特磁效应 & 法拉第电磁感应

3. BLDC commutation(换向)

电流流过线圈形成磁极,这个电磁极一直吸引着永磁体,从而中间的转子就跟着旋转起来,电机也就运动了。只要保持正确的时间使能电磁极,就能始终让转子朝一个方向旋转,此时,电能转换成动能+热能( I 2 R I^2R I2R)。

4. Feedback for commutation(换向)

换向的反馈部件通常有以下四种:

  1. Resolver
  2. Optical Encoder
  3. Hall-effect
  1. BEMF, Back ElectroMotive Force
  • 正弦波
  • 梯形波

Faraday's Law V B E M F = − N Δ ( B ∗ A ) Δ t = ω ∗ K e ∗ sin ⁡ ( θ + φ ) V_{BEMF} = -N \frac {\Delta (B*A)} {\Delta t} = \omega * K_e * \sin (\theta + \varphi) VBEMF=−NΔtΔ(B∗A)=ω∗Ke∗sin(θ+φ)

  • N: number of turns
  • Δ ( B ∗ A ) \Delta (B*A) Δ(B∗A): change in magnetic field
  • A: Area
  • Δ t \Delta t Δt: change in time
  • K e K_e Ke: motor BEMF constant in mV/Hz
  • θ \theta θ: rotor angle
  • ω \omega ω: motor speed in Hz
  • φ \varphi φ: offset of phase


注:因为这里主要讲BLDC ESC采用BEMF用于飞控的场景,所以后面将会围绕BEMF展开。

5. Detect phase & position from BEMF

BEMF通常是3相6各阶段,如下图所示:

当B/C相按如下方向通电,引导永久磁芯旋转;A相不通电,但是由于切割磁力线,发生法拉第效应,产生BEMF。

通过模拟电路可以如下方式获取BEMF电动势。

根据公式,通过当前BEMF电动势大小可以映射到当前rotor角度,即进行了转子定位。

6. Control circurity design

控制电路的逻辑上主要处理以下两个大问题:

  1. 驱动ABC相,吸引磁极运动
  2. 控制门电路,检测传感信号

大体上,控制逻辑通过MOSFET进行门电路控制导通

现实AM32设计框图参考:

由于是大功率、大电流设计,还需要考虑一些额外的保护:

  • Over current protection (OCP)
  • Thermal shutdown
  • Uder-Voltage lock-out (UVLO)
  • Shoot Through
  • Lock detect
  • Anti-Voltage surge (AVS)

7. 参考资料

【1】BLDC ESC 无刷直流电子调速器简介

【2】AM32开源代码之工程结构

8. 补充

8.1 Motor Winding

8.2 Mechanical v.s. Electrical cycle

  • Mechanical cycle: Time for the motor to travel one full revolution
  • Electrical cycle: Time for the rotor to pass a pair of poles

m e c h a n i c a l c y c l e = e l e c t r i c a l c y c l e ∗ # o f p o l e p a i r s {mechanical cycle} = {electrical cycle} * {\# of pole pairs} mechanicalcycle=electricalcycle∗#ofpolepairs
m e c h a n i c a l s p e e d = e l e c t r i c a l s p e e d # o f p o l e p a i r s {mechanical speed} = \frac{electrical speed} {\# of pole pairs} mechanicalspeed=#ofpolepairselectricalspeed

相关推荐
嵌入式进阶行者10 小时前
【驱动开发初级】内核模块静态和动态添加功能的步骤
驱动开发
逝灮12 小时前
【蓝桥杯——物联网设计与开发】拓展模块3 - 温度传感器模块
驱动开发·stm32·单片机·嵌入式硬件·物联网·蓝桥杯·温度传感器
__NULL__USER2 天前
petalinux-adi ---添加AD9361驱动(二)
linux·驱动开发
7yewh2 天前
嵌入式驱动RK3566 HDMI eDP MIPI 背光 屏幕选型与调试提升篇-eDP屏
linux·arm开发·驱动开发·嵌入式硬件·嵌入式linux·rk·edp
少年、潜行3 天前
树莓派3B+驱动开发(8)- i2c控制PCF8591
驱动开发·树莓派·3b+
千千道3 天前
深入理解 Linux 内核启动流程
linux·arm开发·驱动开发
SunshineBooming4 天前
qemu源码解析【05】qemu启动初始化流程
c++·驱动开发·源码软件
嵌入式大圣4 天前
单片机MQTT通信
驱动开发·单片机·嵌入式硬件·物联网
嵌入(师)4 天前
嵌入式驱动开发详解19(regmap驱动架构)
驱动开发·架构
亭墨5 天前
linux0.11源码分析第二弹——setup.s内容
linux·驱动开发·学习·系统架构