假设有一个电机,其定子带三个线圈绕组,转子带单个极对。这类 BLDC 电机的驱动方式是通过三相逆变器进行六步换相(即梯形控制),每 60 度以正确的相位执行一次换相,使电机连续旋转。
但是,如果想让电机以不同的速度运行,则需要借助控制器来调节所施加电压的大小。下文简述了控制算法的构建过程。
使用霍尔传感器进行扇区检测
首先,为了控制转子,必须使用霍尔效应传感器之类的传感器测量其角位置和速度。霍尔传感器不会提供转子在扇区内确切的位置信息,它只会检测转子何时从一个扇区移至另一个扇区(参见动画),这是确定电机何时换相所需的唯一输入。
但是,我们还要确定转子每次跨越扇区时,三相中的哪两相必须随之换相。正确的相位由换相逻辑电路指定,下文将详细说明。
下面的模块图显示电机控制算法的不同组件之间如何交互。换相逻辑电路计算三相逆变器的开关模式。在换相逻辑表中,字母 A、B 和 C 分别代表电机的三个相位。三相逆变器的高端标注为 H,低端标注为 L。如果转子在第一个扇区内,则换相逻辑选择顶部的开关模式,这决定了 A 相的高端开关和 C 相的低端开关为开启状态。
2. 连接控制器并构建电机的仿真模型
目前给逆变器施加的是恒定直流电压,产生的是恒定速度,如前文所述。我们可以用合适的控制器(如以下模块图所示的 PID 控制器)形成闭合回路来调节此电压。根据期望速度与测得速度之间的差异,控制器对电压进行调节,使电机转速接近于期望值。图中淡蓝色的模块表示控制算法,浅灰色则表示物理系统组件。
在仿真环境中可以实现闭环 BLDC 转速控制算法,如以下 Simulink 模块图所示。对应的模块标签显示控制算法的不同组件如何映射到 Simulink 模型中的各个子系统。
阅读关于使用空间矢量调制实现电机控制算法的更多内容。
3. 通过仿真探索电机行为
上一部分介绍的模型记录了速度、电压、电流和转矩等信号。为了探索电机和控制器的行为,现在运行该模型。顶部图用绿色线表示期望速度,用红色线表示测得速度。可以看到,速度以 100 rpm 的增量从 100 上升到 500 rpm。在底部图中,您可以看到控制器如何调节电压,使电机以期望的速度旋转。
RPM 随着对应的电压控制而上升。
我们可以很明显地看到,测得速度信号中存在波纹。底部的放大图显示转子何时转移扇区。对比扇区图和速度图,可以清晰地看到,观测到的速度信号波纹与换相之间存在某种关联,因为波纹的模式与每个换相周期的开始均存在一致性。
回顾一下换相过程。其中一个相位被拉高或拉低,一个相位保持其当前状态,第三个相位处于打开状态。如果三相电流像下图那样发生突变,我们看到的波纹模式就会消失。
但在现实中,当驱动相位时,电流不会发生瞬变,需要一定的上升时间。
测得转速信号中的波纹模式(红色顶部图)、观测到的三相电流(中间图)和转矩(底部图)。
如中部图所示,三相电流的上升经过了一段时间,由此导致速度信号产生波纹。但速度不是唯一受影响的信号;在转矩响应中也有波纹,如之前的底部图所示,因为电流和转矩成比例。此转矩波纹是 BLDC 电机梯形控制的主要缺点之一。借助更先进的磁场定向控制(通常用于驱动 PMSM 电机),可以克服梯形控制的一些缺点。
来源:https://ww2.mathworks.cn/campaigns/offers/next/understanding-bldc-motor-control-algorithms.html
扫码加入
硬件技术交流群