双转子永磁无刷直流电机激励函数
本帖最后由 oS浅水蓝So 于 2012-10-7 14:14 编辑我的电机为6对极,72槽。内转子初始位置为29.5deg,此时对应我给激励的time=0这个点。我想要给出的激励是:内转子位置-外转子位置的以机械角度60deg为周期的函数。图形如下:
我给的函数表达式分别是
A相:if(60k+29.5<Position2-Position1<60k+39.5,110,if(60k+39.5<Position2-Position1<60k+49.5,0,if(60k+49.5<Position2-Position1<60k+69.5,-110,if(60k+69.5<Position2-Position1<60k+79.5,0,110))))
B相:if(60k+29.5<Position2-Position1<60k+39.5,0,if(60k+39.5<Position2-Position1<60k+59.5,110,if(60k+59.5<Position2-Position1<60k+69.5,0,-110)))
C相:if(60k+29.5<Position2-Position1<60k+49.5,-110,if(60k+49.5<Position2-Position1<60k+59.5,0,if(60k+59.5<Position2-Position1<60k+79.5,110,0)))
结果运行之后,发现A相一直给的是初始时刻的电压110V,B相一直是0V,C相一直是-110V。不知道这个函数表达式应该怎么列才是对的。。。
请各位大神指导,非常感谢!! 表达式一看就有问题,注意几个运算符的级别,先运算哪个在运算哪个,必要的时候加括号,这个级别最高 zptonghua 发表于 2012-10-9 09:43 static/image/common/back.gif
表达式一看就有问题,注意几个运算符的级别,先运算哪个在运算哪个,必要的时候加括号,这个级别最高
您好!昨天我换成了周期函数pwl_periodic(ds1,Position),并且只设置了一个转子,也还是不根据我画的ds1的那种图形变化,一直是position的初始值,我怀疑是不是position的单位有问题,计算时导出的position图形是deg为单位,难道周期函数图形里默认的不是deg? zptonghua 发表于 2012-10-9 09:43 static/image/common/back.gif
表达式一看就有问题,注意几个运算符的级别,先运算哪个在运算哪个,必要的时候加括号,这个级别最高
你好。我已经用周期函数弄好了。。原因是:虽然导出的图里变position显示的是deg,但是机子里面计算使用的是rad,所以pwl_periodic(ds1,180*position/pi)换算一下,就正确了。
页:
[1]