网站大量收购独家精品文档,联系QQ:2885784924

maxwell_电机气隙磁密与用matlab进行fft谐波分析[精品].doc

maxwell_电机气隙磁密与用matlab进行fft谐波分析[精品].doc

  1. 1、本文档共20页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
maxwell_电机气隙磁密与用matlab进行fft谐波分析[精品]

maxwell 电机气隙磁密与用matlab进行fft谐波分析 1.对电机进行静态场分析,分析完后,进入后处理 下载 (37.19 KB) 2010-8-4 09:22 2.需要在气隙中间画一条圆弧线。点开deometry菜单,点creat再选Arc 如下图所示。 下载 (24.48 KB) 2010-8-4 09:22 然后输入圆弧的中心(0,0)回车。在下一个界面输入起始点坐标。最后一个界面输入这条弧线上的采样点数(250),圆弧角90度,圆弧的分段数目(250),名字以及线的颜色,最后回车,就会得到下图的圆弧了。 下载 (13 KB) 2010-8-4 09:22 ? ? 下载 (18.6 KB) 2010-8-4 09:22 ? ? 下载 (18.29 KB) 2010-8-4 09:22 下载 (6.56 KB) 2010-8-4 09:22 3. 需要得到气隙磁密。打开后处理计算器,依次选择qty—B,即选择磁密矢量。选择geom—line—airgap_line, 即选中刚才画的那条弧线。选择unit vect—2d normal,求取圆弧线的径向分量。选择dot(点乘),求取圆弧线上的B的径向分量。再选一遍那个圆弧线,然后点 2d plot,就会出现那个磁密分布图了。 下载 (30.96 KB) 2010-8-4 09:22 下载 (31.94 KB) 2010-8-4 09:22 下载 (25.33 KB) 2010-8-4 09:22 下载 (29.77 KB) 2010-8-4 09:22 下载 (30.82 KB) 2010-8-4 09:22 下载 (35.08 KB) 2010-8-4 09:22 下载 (17.12 KB) 2010-8-4 09:22 4. 虽然maxwell本身也可以做fft分析,但小弟还是喜欢把数据导出来在matlab 中进行分析,这样更灵活一些。导出数据。点击plot菜单—save as—2d plot。在弹出的对话框中输入数据文件的名字。(小弟实在找不到更好的办法导出数据了,如有哪位达人有更好的方法,请赐教。小弟在此谢谢了。) 下载 (11.8 KB) 2010-8-4 09:22 下载 (11.38 KB) 2010-8-4 09:22 5.??对气隙磁密进行谐波分析。将第四步中生成的.dat文件拷出来放到一个文件夹中(保证matlab和数据文件的路径相同)。然后将matlab文件也拷贝到这个文件夹中。打开这个m文件,输入Ns=500(需要进行分析的采样点个数,由于我们在maxwell中只分析了一个磁极下的磁密,所以只有半个周期,我们需要通过镜像生成后半个周期,这样总采样点个数为250*2=500)。Order是需要分析的谐波次数,输入11就是分析到11次谐波。运行,就得到下面的两个图了,第一个是原始波形,基波分量以及各高次谐波;第二个是个谐波分量的幅值大小柱状图。 2010-8-4 09:22 下载 (18.78 KB) 2010-8-4 09:22 这样一个电机气隙磁密谐波分析就完成了。clc clear all; format long; Ns=500; order=11; %**********************read the position and flux density************************ fid=fopen(B.dat,r); %open the original file fidnew = fopen(b1.dat,w); %write the new file while feof(fid)==0 tline = fgetl(fid); %tline? if ~ischar(tline), break, end temp=abs(tline); Nlength=length(tline); isemptyline=0; %???????????? if Nlength==0 isemptyline=1; end allspace=0; %???????????? isspace=0; for i=1:Nlength T=temp(i); if T==32 isspace=isspace+1; end if isspace==Nlength allspace=1; break end end findalpha=0; %????????????? for j=1:Nlength T=temp(j); if ((T=65)(T=90))|((T=97)(T=122)) findalpha=1; break; end end if (~f

文档评论(0)

bodkd + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档