平头哥CDK助力中科昊芯HX2000系列芯片之双电机有感FOC控制系统专题(四)永磁电机双闭
中科昊芯
2022年03月09日 14:26
收录于文集
共36篇

V2.12.1,平头哥剑池集成开发环境(CDK)推出最新版。

自中科昊芯推出专题阐述HXS320F28034双电机有感FOC控制系统实现以来,第一期主要分析了双电机有感FOC控制原理,第二期着重分析了永磁BLDC的霍尔位置开环控制,第三期着重分析了永磁BLDC的双闭环调速,本期基于平头哥半导体有限公司的剑池集成开发环境(简称“CDK”)V2.12.1版本与HXS320F28034驱动一体板联合开发永磁PMSM的双闭环有感FOC调速,永磁双闭环有感FOC双电机协调控制内容将在下期展开。

PMSM双闭环有感FOC原理如图1,系统给定转速n*与差分增量式编码器计算所得实际转速nfbk相比较,经速度PI运算得到q轴电流给定值iq*,采用id*=0控制,与霍尔电流采样得到三相实际电流ia,ib,ic,经CLARK与PARK变换所得d轴与q轴电流id,iq进行比较,经电流PI输出调节电压Ud*,Uq*,经反PARK变换得到调节电压Uα*,Uβ*,经空间矢量脉宽调制SVPWM输出三路开关管切换时间Tcm1,Tcm2,Tcm3,与三路PWM输出的三角载波相比较得到六路调制脉宽,驱动控制三相六桥臂MOSFET逆变器通断,实现双闭环调速。

图1

依照上述原理,设计HXS320F28034 PMSM双闭环有感FOC系统如图2,通过GPIO按键控制电机使能与转速给定,转子位置与速度检测通过QEP模块实现,电流采样通过ADC模块实现,经双闭环PI调节输出PWM波的导通脉宽,从而实现电机调速。硬件连接如图3,图中的小黑色电路板为差分编码转换器,读者可根据需要自行采购。

图2

图3

系统所采用的软硬件开发环境详见《芯教程|平头哥CDK助力中科昊芯HX2000系列芯片之双电机有感FOC控制系统专题(一)第一期:双电机有感FOC控制原理》​

根据上述分析,基于CDK开发PMSM双闭环FOC有感调速,代码包括:PWM、QEP的外设GPIO引脚配置、三路三相PWM波输出配置,QEP初始化配置与差分编码器位置采样、转速与电角度计算、ADC初始化配置与电流采样、PMSM斜坡启动编码器校正、PI调节算法、CLARK、PARK正逆变换、SVPWM算法调制的EPWM事件触发中断服务程序,主程序执行调用,其中SVPWM算法调制的EPWM事件触发中断服务程序代码为:

代码块
clike
自动换行
复制代码
void INTERRUPT epwm1_isr(void)
{
 /*出于安全考虑,默认驱动板上电时封波,按下GPIO7后,电机开始启动*/
 if(GpioDataRegs.GPADAT.bit.GPIO7==0)
 {
  epwm_flag++;
 }

 /*判断启动脉冲信号是否产生,产生后电机开始启动*/
 if(epwm_flag!=0)
 {
   /*启动计时*/
  start_step++;

  /*扇区读取:用于获取确定的转子初始位置与对应的SVPWM初始扇区*/
  sector_uvw();

  /*斜坡启动与调速:300rpm斜坡加速启动后调速,300个计数内完成启动*/
  if((speed_ref<300)&&(start_step<=300))
  {
   /*斜坡启动*/
   start_ramp();
  }
  else
  {
   /*调速*/
   speed_regulated();
  }

  /*转速闭环*/
  speed_loop();
  /*电流闭环*/
  current_loop();

  /*给定固定初始角度使电机转过最大反电势点,读取校正值=此时脉冲计数*/
  theta=theta_open;

  /*根据差分编码器的霍尔信号判断电机反电势是否处于最大值*/
  if(theta==NA*_IQ7(PI/3)+_IQ7(PI/6))
  {
   iel_int++;
  }
  /*反电势最大时,切电角度闭环,使编码器零位与电机零位对齐,完成启动*/
  if(iel_int!=0)
  {
   /*计算电角度*/
   theta=freq*_IQ7(2*PI);
  }

  /*两相旋转坐标系变换到两相静止坐标系*/
  iPark();

  /*空间矢量旋转变换*/
  svpwm_motor();
  /*调制占空比输出配置*/
  epwm_compare();
 }

 /*清除事件中断的INT全局中断*/
 EPwm1Regs.ETCLR.bit.INT=1;

 /*中断应答,锁定IER的第3组中断向量*/
 PieCtrlRegs.PIEACK.all=PIEACK_GROUP3;
}
复制成功

CDK上开发PMSM双闭环FOC有感控制程序,其编译结果为:

编译通过后,就可以开始调试了,调试结果如下:

调试后,控制PMSM在400rpm~600rpm调速效果如下:

关于中科昊芯

“智由芯生 创享未来”,中科昊芯是数字信号处理器专业供应商。作为中国科学院科技成果转化企业,瞄准国际前沿芯片设计技术,依托多年积累的雄厚技术实力及对产业链的理解,以开放积极的心态,基于开源指令集架构RISC-V,打造多个系列数字信号处理器产品,并构建完善的处理器产品生态系统。产品具有广阔的市场前景,可广泛应用于工业控制及电机驱动、数字电源、光伏、储能、新能源汽车、消费电子、白色家电等领域。