打印
[STM32F1]

FOC2.0库驱动PMSM的问题

[复制链接]
2182|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
联合|  楼主 | 2016-11-15 22:24 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
使用2.0库驱动有感(1024线编码器)PMSM,可以开环运行(给固定的Uq,Ud)。

按照文档设置电流环PI参数,闭环转动一个随机角度就停止了。

void FOC_Model(void)
{
  /**********STARTS THE VECTOR CONTROL ************************/  

  Stat_Curr_a_b = GET_PHASE_CURRENTS();
  Stat_Curr_alfa_beta = Clarke(Stat_Curr_a_b);   
  Stat_Curr_q_d = Park(Stat_Curr_alfa_beta,GET_ELECTRICAL_ANGLE);  
  /*loads the Torque Regulator output reference voltage Vqs*/   
  Stat_Volt_q_d.qV_Component1 = PID_Regulator(3000,//Stat_Curr_q_d_ref_ref.qI_Component1,
                                              Stat_Curr_q_d.qI_Component1,
                                                &PID_Torque_InitStructure);
  /*loads the Flux Regulator output reference voltage Vds*/
  Stat_Volt_q_d.qV_Component2 = PID_Regulator(0,//Stat_Curr_q_d_ref_ref.qI_Component2,
                                              Stat_Curr_q_d.qI_Component2,
                                                &PID_Flux_InitStructure);  
  //开环运行
   Stat_Volt_q_d.qV_Component1 = 1024;
   Stat_Volt_q_d.qV_Component2 = 0;
  //
  //circle limitation
  RevPark_Circle_Limitation();

  /*Performs the Reverse Park transformation,
  i.e transforms stator voltages Vqs and Vds into Valpha and Vbeta on a
  stationary reference frame*/

  Stat_Volt_alfa_beta = Rev_Park(Stat_Volt_q_d);

  /*Valpha and Vbeta finally drive the power stage*/
  CALC_SVPWM(Stat_Volt_alfa_beta);
}
哪位兄弟有这方面的经验,烦指点一下,那里的问题可能引起这个现象。

                          开环时的Iq,Id

                         闭环时的Iq,Id

沙发
联合|  楼主 | 2016-11-15 23:07 | 只看该作者
补充一下情况,开环时,编码器角度反馈是正常的。电机的额定电流是11000,编码器锁轴电流给定Id=8000,实验时空载给定Iq=3000,Id=0。

使用特权

评论回复
板凳
airwill| | 2016-11-16 21:05 | 只看该作者
我首先怀疑的是电机的问题, 可否介绍一下测试用的电机, 来源厂家, 手推下, 运转正常吗? 可否观察一下反电势波形

使用特权

评论回复
地板
联合|  楼主 | 2016-11-17 10:30 | 只看该作者
可能PI输出的问题,改善了一下采集,状态显示就全了。图是锁轴到正转的过程。Iq黄,Id黑同时出现一次大幅超调后,电机就反转停止了。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

11

帖子

1

粉丝