找回密码
 立即注册
楼主: 梁工

BLDC, 三相无刷直流电机驱动-8H系列/32G系列-无HALL, 12万转, 视频讲解

 火... [复制链接]
  • 打卡等级:初来乍到
  • 打卡总天数:3
  • 最近打卡:2024-06-06 15:28:16

0

主题

17

回帖

92

积分

注册会员

积分
92
发表于 2024-6-3 11:03:50 来自手机 | 显示全部楼层
lking 发表于 2024-6-1 22:00
梁工你好,在打板验证您的无感大功率的方案时,在启动电机的时候上电旋转滑动变阻器aod4132这个mos管就冒烟 ...

我修改了一款感觉还行但是有感觉不太行,还没达到满足
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:52
  • 最近打卡:2025-05-03 23:41:15

73

主题

5884

回帖

1万

积分

超级版主

积分
12085
发表于 2024-6-3 11:10:32 | 显示全部楼层
王bi*** 发表于 2024-6-3 11:02
不过您开源的代码,响应速度不太够,堵转的时候,会滋滋响,有没有更好的方法 ...

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

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:3
  • 最近打卡:2024-06-06 15:28:16

0

主题

17

回帖

92

积分

注册会员

积分
92
发表于 2024-6-3 11:32:30 来自手机 | 显示全部楼层
梁工 发表于 2024-6-3 11:10
我的代码为了简单、通用,没有太多的处理方法,这是给初学者学习的,尽量力求简单,搞得太复杂不好学习。 ...

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

点评

我的30度延时,是换相间隔时间的一半,为了偶发干扰影响,又不至于滞后明显,我是用8次换相时间累加(每次换相更新一个数据再求8次累加和)再除以16得到的。 PhaseTimeTmp[TimeIndex] = PhaseTime; //保存一次换相时  详情 回复 发表于 2024-6-3 12:06
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:52
  • 最近打卡:2025-05-03 23:41:15

73

主题

5884

回帖

1万

积分

超级版主

积分
12085
发表于 2024-6-3 12:06:38 | 显示全部楼层
王bi*** 发表于 2024-6-3 11:32
这个延迟30°,怎么计算这个时间,我看您的延迟30°是通过定时器3的值求出,然后给定时器装初值。 ...

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

PhaseTimeTmp[TimeIndex] = 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万转),换相时刻都很正确,可以从电枢波形的对称性看出来。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:3
  • 最近打卡:2024-06-06 15:28:16

0

主题

17

回帖

92

积分

注册会员

积分
92
发表于 2024-6-3 12:33:29 来自手机 | 显示全部楼层
梁工 发表于 2024-6-3 12:06
我的30度延时,是换相间隔时间的一半,为了偶发干扰影响,又不至于滞后明显,我是用8次换相时间累加(每次 ...

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

点评

无传感器的只有此法,我别无他法。  详情 回复 发表于 2024-6-3 14:27
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:52
  • 最近打卡:2025-05-03 23:41:15

73

主题

5884

回帖

1万

积分

超级版主

积分
12085
发表于 2024-6-3 14:27:50 | 显示全部楼层
王bi*** 发表于 2024-6-3 12:33
这个30°还能通过其他方式进行计算吗?

无传感器的只有此法,我别无他法。
回复 支持 1 反对 0

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:3
  • 最近打卡:2024-06-06 15:28:16

0

主题

17

回帖

92

积分

注册会员

积分
92
发表于 2024-6-3 16:34:56 来自手机 | 显示全部楼层
梁工 发表于 2024-6-3 14:27
无传感器的只有此法,我别无他法。

好的,谢谢您
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:3
  • 最近打卡:2024-06-06 15:28:16

0

主题

17

回帖

92

积分

注册会员

积分
92
发表于 2024-6-3 22:32:23 来自手机 | 显示全部楼层
梁工 发表于 2024-6-3 14:27
无传感器的只有此法,我别无他法。

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

点评

10位的PWM比较合适,有更精细的控制,可以参考下面的帖子: 三相无刷电机驱动-STC32G-无HALL-PID控制-OLED显示-串口绘图 https://www.stcaimcu.com/forum.php?mod=viewthread&tid=7472  详情 回复 发表于 2024-6-3 23:27
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:52
  • 最近打卡:2025-05-03 23:41:15

73

主题

5884

回帖

1万

积分

超级版主

积分
12085
发表于 2024-6-3 23:27:06 | 显示全部楼层
王bi*** 发表于 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
回复 支持 1 反对 0

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:3
  • 最近打卡:2024-06-06 15:28:16

0

主题

17

回帖

92

积分

注册会员

积分
92
发表于 2024-6-4 09:31:31 来自手机 | 显示全部楼层
梁工 发表于 2024-6-3 23:27
10位的PWM比较合适,有更精细的控制,可以参考下面的帖子:
三相无刷电机驱动-STC32G-无HALL-PID控制-OLE ...

好的,怎么样做一款,都通用的电调,都适用于无人机航模电机,我这几天一直在想这个问题,做了一个目前适用了三款电机,但是不知道其他电机行不行。我想用STC做通用的电调

点评

多卖些电机测试,我买了十几种电机,直径从1cm多开始,到平衡车的电机20cm,有感、无感的都有,最高转速10万转。  详情 回复 发表于 2024-6-4 10:21
回复 支持 反对

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-5-4 04:15 , Processed in 0.135233 second(s), 107 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表