zoukankan      html  css  js  c++  java
  • FOC中的Clarke变换和Park变换详解(动图+推导+仿真+附件代码)

    1 前言

    永磁同步电机是复杂的非线性系统,为了简化其数学模型,实现控制上的解耦,需要建立相应的坐标系变换,即Clark变换和Park变换。

    2 自然坐标系ABC

    三相永磁同步电机的驱动电路如下图所示;
    在这里插入图片描述
    根据图示电路可以发现在三相永磁同步电机的驱动电路中,三相逆变输出的三相电压为UAU_{A}UBU_{B}UCU_{C}将作用于电机,那么在三相平面静止坐标系ABC中,电压方程满足以下公式:

    {UA=UmcosθeUB=Umcos(θe+2π3)UC=Umcos(θe2π3)egin{cases}U_{A} = U_{m}cos heta_{e} \ U_{B} = U_{m}cos( heta_{e} + cfrac{2pi}{3}) \ U_{C} = U_{m}cos( heta_{e} - cfrac{2pi}{3}) end{cases}

    θe heta_{e}为电角度
    UmU_{m}为相电压基波峰值

    所以根据上述公式可以发现,三相电压的大小是随时间变化的正弦波形,相位依次相差120°,具体如下图所示;
    在这里插入图片描述

    3 αβalphaeta 坐标系

    由静止三相坐标系ABCABC变换到静止坐标系αβalphaeta的过程称之为Clarke变换;在αβalphaeta静止坐标系中,αalpha轴和βeta轴的相位差为90°,且αβalphaeta的大小是随时间变化的正弦波形,具体如下图所示;
    在这里插入图片描述
    从自然坐标系ABCABC 变换到静止坐标系 αβalphaeta,满足以下条件:
    [fαfβf0]=T3s/2s[fAfBfC]egin{bmatrix} f_{alpha} \ f_{eta} \ f_{0} end{bmatrix} = T_{3s/2s}*egin{bmatrix} f_{A} \ f_{B} \ f_{C} end{bmatrix}
    其中T3S/2ST_{3S/2S}为变换矩阵:
    T3S/2S=N[1121203232222222]T_{3S/2S} = N*egin{bmatrix} 1 &-cfrac{1}{2} &-cfrac{1}{2} \ \ 0 &cfrac{sqrt{3}}{2} &-cfrac{sqrt{3}}{2} \ \ cfrac{sqrt{2}}{2} &cfrac{sqrt{2}}{2} &cfrac{sqrt{2}}{2} end{bmatrix}

    注意:NN为系数,做等幅值变换和等功率变换NN系数不同;
    等幅值变换 N=23N =cfrac{2}{3}
    等功率变换 N=23N =sqrtcfrac{2}{3}
    下面均为等幅值变换

    3.1 Clarke变换

    三相电流ABCABC分别为iAi_{A}iBi_{B}iCi_{C},根据基尔霍夫电流定律满足以下公式:
    iA+iB+iC=0i_{A}+i_{B}+i_{C} = 0
    静止坐标系αβalphaetaαalpha轴的电流分量为iαi_{alpha}iβi_{eta},则Clark变换满足以下公式:

    iα=iAiβ=13iA+23iBi_{alpha} = i_{A} \ \ i_{eta} = cfrac{1}{sqrt{3}}*i_{A}+cfrac{2}{sqrt{3}}*i_{B}



    matlabsimulink仿真如下图所示;
    在这里插入图片描述
    最终得到三相电流iAi_{A}iBi_{B}iCi_{C}的仿真结果如下;
    在这里插入图片描述
    得到 αβalphaeta 坐标的 iαi_{alpha}iβi_{eta} 的仿真结果如下图所示;
    在这里插入图片描述
    由上述两张图分析可以得到,等幅值Clark变换前后峰值不变,αβalphaeta坐标系中iαi_{alpha}iβi_{eta}相位相差90°。

    3.2 Clarke反变换

    暂略

    Clarke反变换的simulink仿真如下图所示;
    在这里插入图片描述

    4 dqdq 坐标系

    dqdq 坐标系相对与定子来说是旋转的坐标系,转速的角速度和转子旋转的角速度相同,所以,相当于转子来说,dqdq 坐标系就是静止的坐标系;而idi_{d}iqi_{q}则是恒定不变的两个值,具体如下图所示;
    在这里插入图片描述
    根据物理结构,我们发现;
    dd 轴方向与转子磁链方向重合,又叫直轴;
    qq 轴方向与转子磁链方向垂直,又叫交轴;
    dd轴和qq轴如下图所示;
    在这里插入图片描述

    4.1 Park变换

    Park变换的本质是静止坐标系αβalphaeta乘以一个旋转矩阵,从而得到dqdq坐标系,其中满足以下条件:
    [fdfq]=T2s/2r[fαfβ]egin{bmatrix} f_{d} \ f_{q} end{bmatrix} = T_{2s/2r}*egin{bmatrix} f_{alpha} \ f_{eta} end{bmatrix}
    其中T2s/2rT_{2s/2r}为旋转矩阵,所以,park变换和park反变换其根本就是旋转矩阵不同,T2s/2rT_{2s/2r}可以表示为:
    T2s/2r=[cosθesinθesinθecosθe]T_{2s/2r} = egin{bmatrix} cos heta_{e} & sin heta_{e} \ -sin heta_{e} & cos heta_{e} end{bmatrix}

    T2s/2rT_{2s/2r} 含义为 2stator2*stator ==> 2rotor2*rotor
    2轴定子坐标系转换到2轴转子坐标系

    由上式可以得到:
    {id=iαcosθ+iβsinθiq=iαsinθ+iβcosθegin{cases}i_{d}=i_{alpha}*cos heta+i_{eta}*sin heta \ i_{q}=-i_{alpha}*sin heta+i_{eta}*cos hetaend{cases}
    其中simulink仿真如下图所示;
    在这里插入图片描述
    作为输入的 iαi_{alpha}iβi_{eta},仿真波形如下图所示;
    在这里插入图片描述
    最终经过Park变换得到idi_{d}iqi_{q}如下图所示;
    在这里插入图片描述
    可以看到,idi_{d}iqi_{q}是恒定值,所以Park变换也叫做交直变换,由输入的交流量,最终变换到相对与转子坐标的直流量。

    在实际写FOC的过程中对于这块变换产生了一个疑问;这里再区分一下正转和反转的情况,以此来说明一下IdIq的实际中的作用;
    下面先规定一个方向为反转;

    正转

    通常,大部分书籍以及论文中的正转输入的三相波形如下:
    {UA=UmcosθeUB=Umcos(θe2π3)UC=Umcos(θe+2π3)egin{cases}U_{A} = U_{m}cos heta_{e} \ U_{B} = U_{m}cos( heta_{e} - cfrac{2pi}{3}) \ U_{C} = U_{m}cos( heta_{e} + cfrac{2pi}{3}) end{cases}

    反转

    {UA=UmcosθeUB=Umcos(θe+2π3)UC=Umcos(θe2π3)egin{cases}U_{A} = U_{m}cos heta_{e} \ U_{B} = U_{m}cos( heta_{e} + cfrac{2pi}{3}) \ U_{C} = U_{m}cos( heta_{e} - cfrac{2pi}{3}) end{cases}
    在这里插入图片描述

    4.2 Park反变换

    Park反变换又叫直交变换,由dqdq轴的直流量,最终变换到αβalphaeta的交流量,其中满足变换条件如下:
    [fdfq]=T2r/2s[fαfβ]egin{bmatrix} f_{d} \ f_{q} \ end{bmatrix} = T_{2r/2s}*egin{bmatrix} f_{alpha} \ f_{eta} \ end{bmatrix}

    其中T2s/2rT_{2s/2r}Park变换的逆矩阵,所以,存在条件:
    T2r/2s=T2r/2s1=[cosθesinθesinθecosθe]T_{2r/2s} = T_{2r/2s}^{-1} = egin{bmatrix} cos heta_{e} & -sin heta_{e} \ sin heta_{e} & cos heta_{e} \ end{bmatrix}

    最终由上式可以得到:
    {iα=idcosθiqsinθiβ=idsinθ+iqcosθegin{cases}i_{alpha}=i_{d}*cos heta-i_{q}*sin heta \ i_{eta}=i_{d}*sin heta+i_{q}*cos hetaend{cases}

    仿真暂略。

    5 程序实现

    坐标变换的C程序主要基于TI的IQMATH库进行实现,详情已经提交到附件。
    如何使用这个库可以参考《STM32 使用IQmath实现SVPWM》

    附件

    链接:https://pan.baidu.com/s/1s2qU5wA2LMSmed51q-Jayw
    提取码:irm2

  • 相关阅读:
    dom4j解析带命名空间的xml文件
    Spring使用facotry-method创建单例Bean总结<转>
    代码审查工具StyleCop
    ReSharper 配置及用法(二)
    ReSharper 配置及用法(一)
    linqPad快速学习LINQ(含视频)
    评估期已过。有关如何升级的测试版软件的信息
    SQL批量更新数据库中所有用户数据表中字段类型为tinyint为int
    SQL SERVER获取数据库中所有表名 XTYPE类型
    sqlserver中创建链接服务器
  • 原文地址:https://www.cnblogs.com/unclemac/p/12783309.html
Copyright © 2011-2022 走看看