王biubiu 发表于 2024-6-3 11:03:50

lking 发表于 2024-6-1 22:00
梁工你好,在打板验证您的无感大功率的方案时,在启动电机的时候上电旋转滑动变阻器aod4132这个mos管就冒烟 ...

我修改了一款感觉还行但是有感觉不太行,还没达到满足

梁工 发表于 2024-6-3 11:10:32

王biubiu 发表于 2024-6-3 11:02
不过您开源的代码,响应速度不太够,堵转的时候,会滋滋响,有没有更好的方法 ...

我的代码为了简单、通用,没有太多的处理方法,这是给初学者学习的,尽量力求简单,搞得太复杂不好学习。
可以根据具体的电机,检测换相的周期,或者对过0中断进行处理,会有改善。

王biubiu 发表于 2024-6-3 11:32:30

梁工 发表于 2024-6-3 11:10
我的代码为了简单、通用,没有太多的处理方法,这是给初学者学习的,尽量力求简单,搞得太复杂不好学习。 ...

这个延迟30°,怎么计算这个时间,我看您的延迟30°是通过定时器3的值求出,然后给定时器装初值。

梁工 发表于 2024-6-3 12:06:38

王biubiu 发表于 2024-6-3 11:32
这个延迟30°,怎么计算这个时间,我看您的延迟30°是通过定时器3的值求出,然后给定时器装初值。 ...

我的30度延时,是换相间隔时间的一半,为了偶发干扰影响,又不至于滞后明显,我是用8次换相时间累加(每次换相更新一个数据再求8次累加和)再除以16得到的。

PhaseTimeTmp = PhaseTime;        //保存一次换相时间
if(++TimeIndex >= 8)        TimeIndex = 0;        //累加8次
for(PhaseTime=0, i=0; i<8; i++)        PhaseTime += PhaseTimeTmp;        //求8次换相时间累加和
PhaseTime = PhaseTime >> 4;                //求8次换相时间的平均值的一半, 即30度电角度

然后将时间装载Timer4做30度角移相控制,定时中断中做换相动作。实测各种电机、各种转速下(最高12万转),换相时刻都很正确,可以从电枢波形的对称性看出来。

王biubiu 发表于 2024-6-3 12:33:29

梁工 发表于 2024-6-3 12:06
我的30度延时,是换相间隔时间的一半,为了偶发干扰影响,又不至于滞后明显,我是用8次换相时间累加(每次 ...

这个30°还能通过其他方式进行计算吗?

梁工 发表于 2024-6-3 14:27:50

王biubiu 发表于 2024-6-3 12:33
这个30°还能通过其他方式进行计算吗?

无传感器的只有此法,我别无他法。

王biubiu 发表于 2024-6-3 16:34:56

梁工 发表于 2024-6-3 14:27
无传感器的只有此法,我别无他法。

好的,谢谢您

王biubiu 发表于 2024-6-3 22:32:23

梁工 发表于 2024-6-3 14:27
无传感器的只有此法,我别无他法。

对了,使用8位PWM好一点,还是16位的PWM

梁工 发表于 2024-6-3 23:27:06

王biubiu 发表于 2024-6-3 22:32
对了,使用8位PWM好一点,还是16位的PWM

10位的PWM比较合适,有更精细的控制,可以参考下面的帖子:
三相无刷电机驱动-STC32G-无HALL-PID控制-OLED显示-串口绘图
https://www.stcaimcu.com/forum.php?mod=viewthread&tid=7472

王biubiu 发表于 2024-6-4 09:31:31

梁工 发表于 2024-6-3 23:27
10位的PWM比较合适,有更精细的控制,可以参考下面的帖子:
三相无刷电机驱动-STC32G-无HALL-PID控制-OLE ...

好的,怎么样做一款,都通用的电调,都适用于无人机航模电机,我这几天一直在想这个问题,做了一个目前适用了三款电机,但是不知道其他电机行不行。我想用STC做通用的电调
页: 20 21 22 23 24 25 26 27 28 29 [30] 31 32 33 34 35 36 37 38 39
查看完整版本: BLDC三相无刷直流电机驱动-8H系列/32G系列-无HALL, 12万转, 视频讲解,改进启动算法