stm32 FOC svpwm扇区判断问题
大家好,最近在读stm32 FOC资料,个人感觉stm32 的svpwm扇区判断公式有问题。stm32 svpwm扇区判断资料见附图,请高手指点一下,是否有误??本帖最后由 887799 于 2011-2-16 10:27 编辑
按照上图公式,满足Y<0条件的应该只有第2扇区呀?难道它的扇区定义和别人的不一样?还是它的阿法轴定义与别人的不一样??
附件贴上一般资料的svpwm扇区图。STM32六边形图资料里竟然没有,非常郁闷。有知道的dx请指点一下。
好像应该是这样,如果我对这两张图理解的没错的话
Y<0 Y>=0
Z<0 Z>=0 Z<0 Z>=0
X<0 X>=0 X<0 X>=0
III IV II V I VI 本帖最后由 yyzhb111 于 2011-2-16 21:12 编辑
这个扇区判断还真有意思 本帖最后由 yyzhb111 于 2011-2-16 22:03 编辑
哦,他就是这个意思:
(Z=0)Ualfa-Ubeta=0,就是V3(010),V6(101)所在的这条线,
(Y=0)Ualfa+Ubeta=0,就是V2(110),V5(001)所在的这条线,
(X=0)Ubeta=0,就是V1(100),V4(001)所在的这条线,
通过>0,<0, 来判断矢量所在的位置,从而得到扇区号,这样可以避免用tan求角度,并且这个Ualfa,Ubeta
应该在下一步计算矢量作用时间的时候还有用。
这样得到的结果和常规的用角度的方法计算得到的记过不一致的,楼上那位的结果好像是对的,楼主可以自己画一下;
如果把Y和Z互换,就和常规的角度划分的扇区是一致的
这里之所以不一致,应该是编程序的时候,编码的需要 说实在的我不太明白为什么用这种方式来判断扇区
难道处理到这一步了 电压矢量的角度还不知道吗? 本帖最后由 yyzhb111 于 2011-2-17 14:16 编辑
回复 6# lbz0123
要知道角度话,需要用tan运算,这种方法可以避免三角运算
这种方法类似于60度坐标系
得考虑在芯片上的实际实现,TI的也是这么处理的
理论上一回事,实际有事另一回事,骨头得啃透 本帖最后由 887799 于 2011-2-17 16:03 编辑
非常感谢 yyzhb111 和 lbz0123精彩解答 。
另外请教 STM32 的反PARK运算公式如下
qValfa=qVq*Cos(theta)+qVd*Sin(theta)
qVbeta=-qVq*Sin(theta)+qVd*Cos(theta)
它的公式似乎和microchip 的公式不一样。
microchip 的公式如下
似乎beta滞后Valfa 90度??非常奇怪。 但看下图,似乎又不是beta滞后Valfa 90度,晕菜了。
根据以下公式,岂不是alfa轴和beta轴互换????ST公司为什么要这样搞??
qValfa=qVq*Cos(theta)+qVd*Sin(theta)
qVbeta=-qVq*Sin(theta)+qVd*Cos(theta) 看看A、B、C三相坐标系的变换到alfa、beta坐标系的公式 不就知道Valfa、Vbeta的定义了吗? 回复 10# 887799
其实那个是交轴那个是直轴都是自己定拉 这样变过来的话就跟他的扇区判断温和了 你要是开心的话一个叫经轴一个叫纬轴也OK 回复 11# yyzhb111
还是不太明白你的意思 做到这一步 矢量控制应该已经结束了 就是说电流角一定已经是已知量 然后旋转到静止轴的变换也做完了 就是说电流和电压矢量的夹角也已知 那么电压矢量的角度就是已知量 为什么要算三角函数? 本帖最后由 yyzhb111 于 2011-2-18 12:17 编辑
回复 13# lbz0123
至少在我做的异步电机间接磁场定向里:知道的是d,q轴和alfa、beta轴的夹角!
d、q轴和alfa、beta轴的夹角和矢量的角是一个吗?
是不是还应该加上d、q坐标系下,矢量的相对于d轴的角度呢? 回复 14# yyzhb111
哦 你说这个
恩 我忘记了
抱歉 现在有一控制器没有电流传感器,怎么样用SVPWM转动起来呢? 回复 16# fanhoufa
TI、ST好多公司都有现成的SVPWM程序模块 谢谢大家的讨论和指点,明白了不少。 回复 16# fanhoufa
开环也能动。不用电流也能动。 alfa、beta轴互换是为了让电子角=力的方向。