ST意法半导体
直播中

席毖庸

7年用户 1037经验值
擅长:596874
私信 关注
[问答]

实现电机SVPWM旋转的FOC频率大概是多少

我设计了一个FOC板。首先,我想在不使用其他变换的情况下实现SVPWM,以使电机先旋转。
  • PWMC_SetPhaseVoltage(pwmcHandle, Valphabeta);
所以我生成了一个关于 Valphabeta 的数组,代码如下:
  • #define PIDIV180 0.017453292519943
  • #define MAX 25000
  • int main()
  • {
  •     double cnt=0,angle;
  •     int a,b;
  •     printf("int16_t test1[][2]=n{n");
  •     for(cnt = 0;cnt<90;cnt+=0.05)
  •     {
  •         angle = cnt * PIDIV180;
  •         a = MAX*cos(angle);
  •         b = MAX*sin(angle);
  •         printf("{%d,%d},n",a,b);
  •     }
  •     printf("};");
  •     return 0;
  • }
FOC代码更改为以下内容:
  •         cnt = (cnt+1)%1800;
  •         if(!cnt)
  •         {
  •                 cnt1 = (cnt1+1)%4;
  •         }
  •         switch(cnt1)
  •         {
  •                 case 0:// 4 quadrand
  •                         a = test1[cnt][0];
  •                         b = test1[cnt][1];
  •                         break;
  •                 case 1:// 3 quadrand
  •                         a = -test1[cnt][1];
  •                         b = test1[cnt][0];
  •                         break;
  •                 case 2:// 2 quadrand
  •                         a = -test1[cnt][0];
  •                         b = -test1[cnt][1];
  •                         break;
  •                 case 3:// 1 quadrand
  •                         a = test1[cnt][1];
  •                         b = -test1[cnt][0];
  •                         break;
  •         }
  •         Valphabeta.alpha = a;
  •         Valphabeta.beta = b;
  •         hCodeError = PWMC_SetPhaseVoltage(pwmcHandle, Valphabeta);
当PWM_FREQUENCY大于10k时,电机转动,当PWM_FREQUENCY慢到5k时,电机来回小角度转动。
哪里有问题?FOC频率不能太低还是我的测试方法不对。

回帖(1)

苗媛媛

2022-12-19 15:32:56
已解决。这取决于 ADV_TIM_CLK_MHz


  • #define ADV_TIM_CLK_MHz   128
  • #define PWM_FREQUENCY     5000
  • #define PWM_PERIOD_CYCLES (uint16_t)((ADV_TIM_CLK_MHz*(uint32_t)1000000u/((uint32_t)(PWM_FREQUENCY)))&0xFFFE)

  • and the variable:
  •     .hT_Sqrt3 = (PWM_PERIOD_CYCLES*SQRT3FACTOR)/16384u,
  • is out of bound.
举报

更多回帖

发帖
×
20
完善资料,
赚取积分