This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] CCS/TMS320F28377S:controlSUITE 中的 svpwm

Guru**** 2042910 points
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/681412/ccs-tms320f28377s-svpwm-in-controlsuite

器件型号:TMS320F28377S

工具/软件:Code Composer Studio

我不理解控制套件示例中 SVPWM 算法的含义。 有人可以给我一些指导吗?

#define SVGENDQ_MACRO (v)\
V.tmp1= v.Ubeta;\
V.tmp2=_IQdiv2 (v.Ubeta)+(_IQmpy (_IQ (0.866)、v.Ualpha));\
V.tmp3= v.tmp2 - v.tmp1;\
\
V.VecSector = 3;\
V.VecSector=(v.tmp2>0)?(v.VecSector-1):v.VecSector;\
V.VecSector=(v.tmp3>0)?(v.VecSector-1):v.VecSector;\
V.VecSector=(v.tmp1<0)?(7-v.VecSector ):v.VecSector;\
\
if (v.VecSector = 1 || v.VecSector = 4)\
{v.Ta= v.tmp2;\
V.TB= v.tmp1-v.tmp3;\
V.tc=-v.tmp2;\
}\
\
否则、如果(v.VecSector = 2 || v.VecSector = 5)\
{v.Ta= v.tmp3+v.tmp2;\
V.TB= v.tmp1;\
V.tc=-v.tmp1;\
}\
\
否则\
{v.Ta= v.tmp3;\
V.TB=-v.tmp3;\
V.tc=-(v.tmp1+v.tmp2);\
}\

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    SVPWM 表示空间矢量 PWM。
    如需更多信息、请访问
    www.ti.com/.../spra524.pdf

    从扇区确定的角度来看、示例代码可能与文献有所不同、但内核本质上是相同的。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我想知道,上的传统 svpwm 和 svpwm 之间的区别,您能告诉我?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    应该没有差异。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    是扇区定义相同的?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    可以通过多种不同的方式来确定扇区。 文档显示了一种方法、代码可能偏离了这种方法。 原则上、SVPWM 脉冲宽度基于所需电压矢量与一个扇区内最近的两个矢量的接近程度以及所需电压矢量的幅度。 希望这对您有所帮助。