【无刷电机】三相霍尔信号,六步方波驱动

1.前言

在反电势过零处,过零相对转子没有作用力,转子由另外两相驱动。相电压驱动极性应与反电势极性相同。
反电势过零的测量:将电机ABC三相线接在一起构成虚拟中性点,用电流钳夹住某一相线,电流方向朝向虚拟中性点。
通常,三相霍尔传感器的安装位置与无刷电机的反电动势过零点有关,一般相差30相角,使得方波驱动效率最大化。由于霍尔安装情况的不同,电机的驱动方向可能会相反。

2.逆时针旋转

这里以我手里的一块电机为例,用手拨动电机轴逆时针方向旋转时,测得反电动势过零与霍尔信号的关系如下(黄绿蓝分别对应ABC霍尔信号,红色是A相反电势过零信号):
在这里插入图片描述

从图中可以看出,逆时针旋转时A相的反电动势过零点滞后A相霍尔信号30度,此时三相霍尔传感信号(ABC)的变化情况为
100>>110>>010>>011>>001>>101
此时霍尔信号(蓝色)与反电势(红色)的相位关系图如下,同样满足过零点滞后霍尔换相信号30度,但看上去更直观。
在这里插入图片描述

以霍尔信号101为例,此时A相反电动势过零,反电势极性C+B-,所以电机由CB相驱动。同理,当霍尔信号为100时,此时C相反电动势过零,反电势极性A+B-,所以电机由AB相驱动。故我们可以得出六步方波的驱动顺序为:
100>>110>>010>>011>>001>>101
AB>> AC>> BC>> BA >> CA>> CB
这个相序即对应电机的旋转方向为逆时针旋转。

3.顺时针旋转

再看顺时针旋转,用手拨动电机轴顺时针方向旋转时,测得反电动势过零与霍尔信号的关系如下(黄绿蓝分别对应ABC霍尔信号,,红色是A相反电势过零信号)
在这里插入图片描述

顺时针旋转时,霍尔换相位置变成了超前反电动势过零点30度。
在这里插入图片描述

则当霍尔信号为100时,C相处在过零状态,反电势极性B+A-,电机由BA相驱动,当霍尔信号为101时,A相处在过零状态,反电势极性B+C-,电机由BC相驱动。由此分析可知,电机顺时针旋转对应的驱动顺序为:
101>>001>>011>>010>>110>>100
BC>> AC>> AB>> CB>> CA>> BA
不难看出,要使电机反转,只需将驱动相正负对调即可。

4.霍尔安装位置的影响

这里提供与上述电机霍尔安装180度反相的一种情况,即上文ABC霍尔信号相反,观察驱动信号与霍尔信号的关系。
逆时针旋转
在这里插入图片描述

011>>001>>101>>100>>110>>010
AB>> AC>> BC>> BA >> CA>> CB
可知此种情况下逆时针旋转时驱动相与霍尔信号的对应关系与上文电机顺时针旋转时的对应关系相同。

顺时针旋转
在这里插入图片描述
010>>110>>100>>101>>001>>011
BC>> AC>> AB>> CB>> CA>> BA
可知此种情况下顺时针旋转时驱动相与霍尔信号的对应关系与上文电机逆时针旋转时的对应关系相同。

当霍尔安装位置反相时,有两种处理方法,一是直接将输入的霍尔信号进行取反;二是调换驱动相正负。

### 无刷电机无感6步方波驱动原理 在探讨无刷电机的无感六步方波驱动时,核心在于如何利用定子电流与反电动势之间的关系来实现精确的换相操作。对于无传感器控制方式而言,检测转子的位置是一个挑战,因为传统方法依赖于霍尔效应传感器或其他形式的位置反馈装置。 #### 反电动势过零点检测的重要性 当讨论到无感六步方波驱动中的过零现象时,这实际上是指三相线圈产生的感应电压(即反电势)穿越零伏特水平的过程[^1]。每当某个相位的反电势经过这个临界值时,意味着该相对应的空间磁场方向发生了变化,这对于确定何时应该触发下一个功率开关至关重要。 #### 实现过程概述 为了成功实施这种类型的控制策略: - **初始化阶段**:系统上电后需先执行预定位动作使转子处于已知状态。 - **运行期间监测**:持续监控各相端口间的差分电压,在检测到特定模式下的过零事件之后立即更新PWM占空比以改变导通路径完成换向。 - **软件算法支持**:编写相应的固件逻辑处理上述任务,并确保能够及时响应硬件中断请求以便快速切换工作周期内的不同组合状态。 ```c++ // C++伪代码展示基本思路 void detectZeroCrossing() { static int lastState = HIGH; if (readVoltageDifference() == LOW && lastState != LOW) { // 过零检测条件判断 triggerCommutation(); // 执行换相函数 lastState = LOW; // 更新上次读取的状态 } else if (readVoltageDifference() == HIGH){ lastState = HIGH; } } ``` 此段代码片段展示了基于比较器输出高低电平转换来进行简单过零捕捉的方法之一。实际应用中可能还需要考虑更多细节如噪声抑制、延时补偿等因素影响最终性能表现。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

chvngzhvng

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值