开源有感BLDC
本帖最后由 鸥芯电驱港港 于 2022-9-1 22:56 编辑玩转有感BLDC电机
介绍:有感开源BLDC程序支持功能
[*]支持正反转功能。
[*]支持电位器调速功能,速度单位为转每分钟(RPM)。
[*]HALL信号错误检测。
注意:
[*]改程序没有HALL相序学习功能,如果更换电机需要根据实际测量的反电动势与HALL信号推导出换相时功率管导通顺序与HALL信号关系,然后将导通顺序填写到Hall_forward数组内。假定Hall_forward的HALL相序为电机正转的HALL相序,那么Hall_Direct就为反向时的HALL相序,它们的关系是HALL相序相差180度。
[*]如:正转HALL相序Hall_forward = {3,2,6,4,5,1},那么反转Hall_Direct = {4,5,1,3,2,6},把Hall_forward的第4位放到Hall_Direct第1位,然后其它HALL状态按照顺序依次填写即可。如果想要知道具体原理可以通过电机模型进行推导。
重点:
如何通过HALL信号与反电动势波形确定HALL信号与功率管通电顺序呢?
[*]如图1我们将示波器三个探头接到板子的UVW相,测得电机反电动势对应电压如图2所示:
图2中黄色为板子的U相反电动势(U相对应芯片MCPWM模块输出的MCPWM_CH0通道),绿色为V相反电动势(V相对应芯片MCPWM模块输出的MCPWM_CH1通道),蓝色为W相反电动势(W相对应芯片MCPWM模块输出的MCPWM_CH2通道)。
[*]我们知道电机一个电周期是不是需要6次换相,那么就对应6个扇区,每个扇区功率管通电顺序是固定的。我们再看图3,假如我们以U相反电动势由低到高之后的60度为第一扇区,那么此时UVW三相如何通电呢?
[*]这里我们需要明白一个东西,端电压与相反电动势同向,所以我们知道三个HALL信号状态对应的三相相反电动势幅值就知道对应的UVW端电压幅值,即可得到UVW通电顺序。
[*]如图三第一个扇区U相(黄色)高电平,V相(绿色)第电平,W相(蓝色)由高到底,所以得知W相为悬空相。这样我们是不是就可以知道第一个扇区U相需要通高电平(U相桥臂上管导通下管截止,对应芯片MCPWM_CH0P和MCPWM_CH0N输出,注意输出极性),V相通低电平(V相桥臂上管截止上管导通,对应芯片MCPWM_CH1P和MCPWM_CH1N输出,注意输出极性),W相悬空(W相桥臂上下管均截止,对应芯片MCPWM_CH2P和MCPWM_CH2N输出,注意输出极性)。
[*]我们在测量这个扇区对应的HALL信号如图4所示,这里需要注意芯片引脚标记的HALL_IN2,HALL_IN1,HALL_IN0对应 demo HALL接口丝印的 HA,HB,HC,那么图4对应绿色就是HA对应芯片引脚的HALL_IN2,蓝色HB对应芯片引脚的HALL_IN1,粉红色HC对应芯片引脚的HALL_IN0。
[*]这里我们知道第一扇区三个HALL信号,那这个对应芯片HALL结果寄存器的值是多少呢?
[*]因为我们需要根据读取HALL寄存器的值进行对应功率管通电,所以就需要了解凌鸥MCU的HALL输入信号与对应HALL模块信息寄存器对应位结果。
[*]HALL信号结果是在HALL模块信息寄存器HALL_INFO的低三位,它与输入信号的对应关系是HALL_IN2的信号为HALL_INFO的低三位的最高位,HALL_IN1的信号为HALL_INFO的低三位的第2位,HALL_IN0的信号为HALL_INFO的低三位的最低位。那么从图4可以看出,扇区一对应的HALL_INFO结果为101(二进制)即为5(16进制)。
结论来啦!
[*]当程序读HALL_INFO低3位为5时,U相上管导通下管就截止,V相上管截止下管导通,W相上下管均截止。我们再看一下第二扇区,U为高,V为悬空W为低,对应图5 HALL_INFO低3位为1(16进制),此时U相上管导通下管就截止, V相上下管均截止,W相上管截止下管导通,其它几个扇区分析也一样。
[*]最终我们的到正转相序为5/1/3/2/6/4。例程中我们将管子导通状态顺序固定啦,Hall_forward的对应状态是U悬空,V高电平(上通下截止),W低电平(上截止下通),这样Hall_forward我们就填3,那么依次Hall_forward为2......Hall_forward为1,即Hall_forward={3,2,6,4,5,1},那么反转与正转相差180度,所以Hall_Direct = {4,5,1,3,2,6}。
图1
图2
图3
图4
图5
图6
图7
图8
图9
软件配套硬件:MCU板:https://www.linkosemi.com/uploadfiles/Updatefile/nutstore/Linko_DEMO/08x_MCU/LKS_EVB_MCU081083088_V2.0.zip
功率板:https://www.linkosemi.com/uploadfiles/Updatefile/nutstore/Linko_DEMO/No_built_in_Baseplate/LKS_EVB_MVPOWPRE_V5.0.zip
电机使用带HALL的三相无刷直流电机或永磁同步电机。
源程序在下面哦
I
I
I
I
I
V
请问下用的是什么型号的电机? BLDC_RunSpeedCtr.Elect_Speed = 60000000000/(BLDC_RunSpeedCtr.ElectPeriod_time * 10.4)中 10.4 是什么? 港工,有没有无感BLDC程序, 期待。 yizhiic 发表于 2022-9-13 08:23
港工,有没有无感BLDC程序, 期待。
无感方波的闭源程序,可以在交流群里获取;无感FOC在链接中获取 https://bbs.21ic.com/icview-3231310-1-1.html 本帖最后由 鸥芯电驱港港 于 2022-9-13 09:26 编辑
kingking11 发表于 2022-9-6 10:12
请问下用的是什么型号的电机?
有HALL的无刷直流电机即可 yizhiic 发表于 2022-9-13 08:23
港工,有没有无感BLDC程序, 期待。
后续会有,出来了就更新上去,请耐心等待哦 总结的比较详细,谢谢分享经验。 请问如何加入交流群 开张天岸马 发表于 2022-9-13 09:01
无感方波的闭源程序,可以在交流群里获取;无感FOC在链接中获取 https://bbs.21ic.com/icview-3231310-1- ...
请问可以拉我进交流群吗,LazySheepOvO我的V 开张天岸马 发表于 2022-9-13 09:01
无感方波的闭源程序,可以在交流群里获取;无感FOC在链接中获取 https://bbs.21ic.com/icview-3231310-1- ...
没有交流群怎么样获取? 请问无感BLDC程序在哪可以获取,交流群中没有看到 kingking11 发表于 2022-9-6 10:12
请问下用的是什么型号的电机?
应该是无刷直流电机就可以,主要是驱动板这一块看支持啥样子的吧 支持一下 港工,无感BLDC程序出来了没有啊 这个对电机有要求吗?
港工,无感BLDC开源程序出来了没有啊 数据采集存储 发表于 2023-2-14 10:43
这个对电机有要求吗?
不是FOC的或无感驱动的对电机要求不大, 有感唯一要注意HALL的角度是 60 或 120度 ?
徐诗橙 发表于 2023-3-9 21:17
港工,无感BLDC开源程序出来了没有啊
无感BLDC还没有呢。 数据采集存储 发表于 2023-2-14 10:43
这个对电机有要求吗?
只要是直流无刷电机带三个HALL就行