FOC观测器之龙伯格观测器

2023-05-16

状态观测器
根据控制理论,如果一个系统能够完全通过其检测到的输出值来重构其系统状态,则认为该系统是可观测的。其作用于无传感器转子的位置和速度的检测反馈,再作用到PARK逆变换和转矩磁链控制上。
Luenberger观测器原理图:
基于Luenberger的FOC原理
Luenberger观测器的离散化
(其观测器的闭环参数为经验验证值)
引入估测电流( iα,iβ )的反馈值并离散化(T 为采样时间),可得当前的反向电动势 eα 和eβ;
反正切法:由反向电动势 eα 和eβ 的进行反正切计算出转子的位置角
PLL锁相环:程序中使用的是锁相环方式,以PI闭环方式调节ωr以保持其输入为0 (电角度领先反电动势一个采样时间。这样算出来的转子电角度比较稳定准确。
代码

  Aux_Alfa = (pHandle->wBemf_alfa_est/F2);
  Aux_beta = (pHandle->wBemf_beta_est/F2);
  I_alfa_err = I_alfa _est / F1 - I_alfa_input;
  I_beta_err = I_beta _est / F1 - I_beta_input;
  v_alfa = Vbus_input *Valfa_beta.qV_Component1;
  v_beta = Vbus_input *Valfa_beta.qV_Component2;

  /*alfa axes observer*/
  I_alfa_est_next = I_alfa_est - (I_alfa_est/F1)*C1 ;
  I_alfa_est_next += I_alfa_err*C2 ;
  I_alfa_est_next += v_alfa*C5 ;
  I_alfa_est_next -= Aux_alfa*C3 ;
  Bemf_alfa_est_next += Bemf_alfa_est + I_alfa_err*C4 ;
  Bemf_alfa_est_next +=Aux_Beta/F3*C6*hElSpeedDpp ;

   /*beta axes observer*/  

  I_beta_est_next = I_beta_est - (I_beta_est/F1)*C1 ;
  I_beta_est_next += I_beta_err*C2 ;
  I_beta_est_next += v_beta*C5 ;
  I_beta_est_next -= Aux_beta*C3 ;
  Bemf_beta_est_next += Bemf_beta_est + I_beta_err*C4 ;
  Bemf_beta_est_next +=Aux_alfa/F3*C6*hElSpeedDpp ;

  //pll
    Rotor_Speed = Hanlde_PLL( Aux_Alfa, -Aux_Beta);

未完。。。。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

FOC观测器之龙伯格观测器 的相关文章

随机推荐