DSP设计dq变换的程序,急用

DSP设计dq变换的程序,急用,第1张

void abc_dq(INT16 *abc,INT16 *dq,INT16U t)

{

float X_alf,X_blt,seTa

X_alf = abc[0] - (abc[1]>>1) - (abc[2]>>1)

X_blt = 0.866025*(abc[1] - abc[2])

seTa = 0.130899*t

dq[0] = cos(seTa)*X_alf + sin(seTa)*X_blt

dq[1] = -1*(sin(seTa)*X_alf) + cos(seTa)*X_blt

}

void dq_abc(INT16 *abc,INT16 *dq,INT16U t)

{

float X_alf,X_blt,seTa

seTa = 0.130899*t

X_alf = cos(seTa)*dq[0] - sin(seTa)*dq[1]

X_blt = sin(seTa)*dq[0] + cos(seTa)*dq[1]

abc[0] = X_alf

abc[1] = -0.5*X_alf + 0.866025*X_blt

abc[2] = -0.5*X_alf - 0.866025*X_blt

}

0.866025 为二分之根号三

seTa = 0.130899*tt为采样点序号 0.130899=(2*pi)/48

回答有些晚了,希望对别人有帮助。dq变换是时代的产物。在没有计算机的年代,一切都要手算的。拿定子三相的电机来说,如果加上2-pole的转子,那么描述磁通的方程就有四个。这就加大了计算的难度。所以克拉克同志为了简化这种计算,发明了alpha-beta变换,而帕克同志在此基础上改进出了dq变换。描述一个平面至少需要用两个方程是,而互相构成直角的电感又不存在互感,所以呢,就出现了这种两轴线的垂直坐标系。无论是几相电机,电流产生的磁通都可以看成一个平面,理所当然的用两个方程描述是最简单的了。还有那个0,是因为需要逆变换,从dq坐标系求出原来的量而假设出来的,没有什么物理意义。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11559077.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存