dd418890434 发表于 2025-5-5 22:58:01

https://www.stcaimcu.com/forum.php?mod=attachment&aid=OTczOTF8M2U0MmQ3YjR8MTc0NjQ1NzAwMnwzMjIxMXwxNzU0MA%3D%3D&nothumb=yes

haiming8685 发表于 2025-5-10 16:38:01

梁工您好!我有一台电机电机转子极对数为4对,没有霍尔传感器,但是带了个磁编码器,磁编码器输出分辨率为10位,也就是角度分辨率为0.35°,这个电机能否用BLDC六步换相来驱动,怎样才能把编码器的信号融入换相中。

梁工 发表于 2025-5-10 18:41:26

haiming8685 发表于 2025-5-10 16:38
梁工您好!我有一台电机电机转子极对数为4对,没有霍尔传感器,但是带了个磁编码器,磁编码器输出分辨率为1 ...

带磁编码器的更合适使用FOC驱动。实在要使用方波驱动,则要先测试出(或者电机厂家提供)电角度与编码器角度的对应关系,就可以正确的换相了。

使用FOC驱动可以参考下面的帖子:
FOC@Ai8051U横空出世,可控制7万5千转的电机!系统成本6元
https://www.stcaimcu.com/thread-17266-1-1.html
(出处: 国芯技术交流网站)

haiming8685 发表于 2025-6-8 20:48:26

梁工您好!请问PID中设置的位置值是根据什么来的
      SamplePeriod = 8;                // PID采样周期, 取值1~65535, 单位ms.
        SetPosition= 12.0;        // 设置的位置(这个12.0的值是依据什么设定的,设定大小时会影响到哪些方面)
        position   = 0;                // 当前位置
        LastPosition = 0;        // 前一个位置

梁工 发表于 2025-6-8 23:59:41

haiming8685 发表于 2025-6-8 20:48
梁工您好!请问PID中设置的位置值是根据什么来的
      SamplePeriod = 8;                // PID采样周期, 取值1~65535 ...

SetPosition= 12.0;//设置的位置值,这里就是要设置的目标转速值,初值给个12.0,你可以根据你的要求设置初值,在本例子设置的初值没有使用。
运行时,目标转速可以用电位器调速:
SetPosition = (float)VR /10;        //VR给定转速11位, 0~2047代表转速0.0~204.7转/秒
也可以用串口设置:
COM_VR = tmp*10; //使用串口设置的目标速度, 设计者值为0~200,对应转速0.0~200.0转/秒

haiming8685 发表于 2025-6-9 07:58:11

梁工您好!我将您的V2版启动加入程序后,将这部分屏蔽掉用电位器调整或串口发送指令电机都能启动运行,要是打开这部分电机就不能启动运行,是怎么回事?这种情况这种情况下怎么修改相关参数。

haiming8685 发表于 2025-6-9 07:58:21


//                                        if(pidTerm < 0)                j = 0;               // 输出驱动PWM不能是负数
//                                        else                                j = (u16)pidTerm;
//                                        if(j > 1020)          j = 1020;               // PWM最大值限制
//                                        PWM_Value = j;                                 //输出PWM控制       

梁工 发表于 2025-6-9 10:01:16

haiming8685 发表于 2025-6-9 07:58
梁工您好!我将您的V2版启动加入程序后,将这部分屏蔽掉用电位器调整或串口发送指令电机都能启动运行,要是 ...

那我还是抽时间改一个吧。

haiming8685 发表于 2025-6-9 11:52:42

谢谢梁工!期待修改后的程序。

haiming8685 发表于 2025-6-9 12:58:22

PID加入后,电机启动转1圈就停下来了,再启动仍然如此
页: 1 2 3 4 5 6 7 8 9 10 [11] 12 13
查看完整版本: 三相无刷电机驱动-32G系列-无HALL-PID控制-OLED显示-串口绘图 启动改进版本