TI中文支持网
TI专业的中文技术问题搜集分享网站

求SVGEN.h 的说明文档

我只找到了SVGEN_DQ.h 和SVGEN_MF.h的文档说明,但是没有看到SVGEN.h中公式推导,例程没有看明白,求文档说明

SVGEN.h中例程如下

#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; \
} \
\
else if(v.VecSector==2 || v.VecSector==5) \
{ v.Ta= v.tmp3+v.tmp2; \
v.Tb= v.tmp1; \
v.Tc=-v.tmp1; \
} \
\
else \
{ v.Ta= v.tmp3; \
v.Tb=-v.tmp3; \
v.Tc=-(v.tmp1+v.tmp2); \
}

wang wang hongxing:

我也在困惑这个子程序的推导过程,SVGEN_DQ.h的文档说明的比较详细,也很容易推导,但是这个就不知所以然。

还有一个现象,我用SVGEN.h与PWM.h配套,在三相PFC中最小的升压倍数也是1.8倍,在逆变程序中,降压倍数超过两倍,而不是0.7倍,不知道是什么造成的。

从SVGEN_DQ.h的解释文档中可以看到有个系数Vdc/SQRT(3),我感觉这个1/sqrt(3)应该怎么使用造成错误的根源,但是有找不到办法。

我只找到了SVGEN_DQ.h 和SVGEN_MF.h的文档说明,但是没有看到SVGEN.h中公式推导,例程没有看明白,求文档说明

SVGEN.h中例程如下

#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; \
} \
\
else if(v.VecSector==2 || v.VecSector==5) \
{ v.Ta= v.tmp3+v.tmp2; \
v.Tb= v.tmp1; \
v.Tc=-v.tmp1; \
} \
\
else \
{ v.Ta= v.tmp3; \
v.Tb=-v.tmp3; \
v.Tc=-(v.tmp1+v.tmp2); \
}

yanhui fu:

回复 wang wang hongxing:

我最近是把这个SVGEN模块直接用SVGEN_DQ取代了,修改一下声明,定义直接可以使用

我只找到了SVGEN_DQ.h 和SVGEN_MF.h的文档说明,但是没有看到SVGEN.h中公式推导,例程没有看明白,求文档说明

SVGEN.h中例程如下

#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; \
} \
\
else if(v.VecSector==2 || v.VecSector==5) \
{ v.Ta= v.tmp3+v.tmp2; \
v.Tb= v.tmp1; \
v.Tc=-v.tmp1; \
} \
\
else \
{ v.Ta= v.tmp3; \
v.Tb=-v.tmp3; \
v.Tc=-(v.tmp1+v.tmp2); \
}

wang wang hongxing:

回复 yanhui fu:

我用过SVGENDQ.H,当时烧保险丝,我没继续使用,看来我也要细致的研究研究,应该是能用的。

我只找到了SVGEN_DQ.h 和SVGEN_MF.h的文档说明,但是没有看到SVGEN.h中公式推导,例程没有看明白,求文档说明

SVGEN.h中例程如下

#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; \
} \
\
else if(v.VecSector==2 || v.VecSector==5) \
{ v.Ta= v.tmp3+v.tmp2; \
v.Tb= v.tmp1; \
v.Tc=-v.tmp1; \
} \
\
else \
{ v.Ta= v.tmp3; \
v.Tb=-v.tmp3; \
v.Tc=-(v.tmp1+v.tmp2); \
}

yun he:

是啊,Ti怎么不给出说明文档呢?

赞(0)
未经允许不得转载:TI中文支持网 » 求SVGEN.h 的说明文档
分享到: 更多 (0)