打印
[牛人杂谈]

控制BLDC电机和同步电机

[复制链接]
1042|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
构建BLDC电机
空间矢量
房间指针:正弦PWM
控制三相桥
MOS-FET驱动器的示例
方框图:带功率级的BLDC电机
  • 必须控制三个半桥!
  • 这需要三个控制器吗?
克拉克改造
方框图:添加了Clarke Transformation
  • 只需要调整两种尺寸!
  • 问题:两种尺寸都必须不断变化!
园区改造
比较直流电机
  • 旋转或旋转场由换向器“产生”。
  • 控制器不必生成旋转场!
  • →简单控制直流电机!
方框图:添加了Park Transformation
  • 常量d / q值导致变量字符串值!
调整
对于控制,首先需要正弦表(例如50个值/ 180°)
方框图:添加了PI控制器
PI控制器的基本结构:
void isr( void )
{
   static int e_q_int, e_d_int;
   q_ist = read ( Q_IST );   /* q-Istwert einlesen   */
   d_ist = read ( D_IST );   /* d-Istwert einlesen   */
   e_q = q_soll - q_ist;     /* q-Fehler berechnen   */
   e_d = d_soll - d_ist;     /* d-Fehler berechnen   */
   e_q_int = e_q_int + e_q;  /* q-Fehler integrieren */
   e_d_int = e_d_int + e_d;  /* d-Fehler integrieren */
   if ( e_q_int > E_Q_INT_MAX ) e_q_int = E_Q_INT_MAX; /* e_q_int begrenzen */
   if ( e_q_int < E_Q_INT_MIN ) e_q_int = E_Q_INT_MIN; /* e_q_int begrenzen */
   if ( e_d_int > E_D_INT_MAX ) e_d_int = E_D_INT_MAX; /* e_d_int begrenzen */
   if ( e_d_int < E_D_INT_MIN ) e_d_int = E_D_INT_MIN; /* e_d_int begrenzen */
   y_q = e_q * KP_Q + e_q_int * KI_Q; /* q-Stellgroesse berechnen */
   y_d = e_d * KP_D + e_d_int * KI_D; /* d-Stellgroesse berechnen */
   dq_to_pwm ( y_d, y_q );            /* PWM aktualisieren        */
}
方框图:补充参考变量
方框图:增加了电流测量
方框图:闭环
方框图:添加了位置检测
位置检测的基本结构:
方框图:添加了PI速度控制器
方框图:完整的磁场定向速度控制器



沙发
antusheng|  楼主 | 2018-8-23 09:16 | 只看该作者
刚才在一个老外博客看到的,直接谷歌翻译转发量来,我看貌似挺不错。

使用特权

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

本版积分规则

83

主题

1470

帖子

5

粉丝