《双凸极结构的电机》由会员分享,可在线阅读,更多相关《双凸极结构的电机(51页珍藏版)》请在金锄头文库上搜索。
1、 建立子目录 c:ansys56novice 程序ANSYS5.6Interactive点击Run键入1MainMenu:UtilityMenu:可以看到jobname在UtilityMenu上显示出来ANSYSInputANSYSToolbar2学习ANSYS自带的例子,一个直流制动器的电磁场分析可以通过:电磁场分析培训手册的第二章电磁场分析培训手册的第二章 第一节第一节 尽管分析的不是电机,这个简单的例子可以使你了解ANSYS的分析流程。简言之:前处理,求解,后处理。所有的分析都是遵循这个过程,所不同的是前处理会因实际问题而不同,比这个例子要复杂得多。通过本例,你也可以熟悉将来要多次使用的
2、菜单。有一句话,磨刀不误砍柴功。也可以通过联机帮助联机帮助:UtilityMenuHelpANSYSTutorials点击ANSYSTutorials点击TutorialList点击题为Emag的图(或者点击右边的MagneticAnalysisofaSolenoidActuator)3现在我们来分析一个双凸极结构的电机结构如图:定子6齿,转子4齿代表绕组定子转子4 对直流制动器做电磁场分析时,采用的是线性模型。本例采用非线性模型,用磁化曲线来描述铁磁材料的磁导率。为简化分析,假设如下:(1)电机磁场沿轴向无变化,忽略端部效应,简化为二维电磁场问题(2)铁心冲片各向同性,磁化曲线单值(3)电机
3、外部的磁场忽略不计,定子外表面圆周为一零矢量位面(4)忽略涡流效应5设置预选过滤掉其他应用的菜单MainMenuPreferences选Magnetic-Nodal6UtilityMenuParametersAngularUnits选DegreesDEG点击OK以下的操作中,凡是弹出窗口,都需要有某种形式的确认。一般,OK是确认并关闭窗口。Apply是仅确认,不关闭窗口,适用于有多次输入操作的情况。以后这步操作就不再赘述了。在ANSYSInput窗口中,键入d1=77.5/1000,回车确认 7输入以下数据:d2=62/1000d3=47.5/1000d4=47.2/1000d5=35/100
4、0d6=19/1000turn=50an1=30*0.4463an2=45*0.3273a1=d3/2b1=sin(an1)*d3/2a2=d4/2b2=sin(an2)*d4/28输入结束,检查是否有误 UtilityMenuParametersScalarParmeters在弹出ScalarParmeters窗口中可检查所有变量的值。如果有误,可在此窗口中重新输入一遍。在弹出ScalarParmeters窗口中输入变量的值与在ANSYSInput窗口中输入是完全等效的。9除非特别说明,圆(面、线)均同心,圆心位于坐标原点。一、定子1画定子轭半径分别为d1/2,d2/2的圆环MainMenu
5、Preprocessor-Modeling-Create-Areas-CircleAnnulus键入10保存数据库文件:UtilityMenuFileSaveasJobname.db经常保存数据库文件是很好的工作习惯。更方便的方法是点击ANSYSToolbar中的SAVE_DB。如果有一步做错了,只要RESUME_DB即可。下一次进入ansys,打开这个文件的方法是:UtilityMenuFileResumeJobname.db或者点击ANSYSToolbar中的RESUME_DB这与普通的打开文件是有些区别的,你找不到open这一菜单。11(2)将WP沿Y轴移动b1,再绕X轴旋转90度,切割
6、此圆,复位WPUtilityMenuWorkPlaneOffsetWPbyInrementsSnaps!平移WPX.Y.ZOffsets,键入0,b1,0Degrees!旋转WPXY,YZ,ZXAngles,键入0,90,0!观察此时屏幕显示的WX.WY.WZ三根轴位置的变化 2画定子齿(1)画半径为d2/2的圆 MainMenuPreprocessor-Modeling-Create-AreasCircleSolidCircle12(3)将WP沿Y轴移动(-b1),再绕X轴旋转90度,切割下半个圆,复位WP只要把以上的操作步骤中“键入0,b1,0”改为“键入0,-b1,0”,选中下半个圆,就
7、可以了。Preprocessor-Modeling-Operate-Booleans-DivideAreabyWrkPlane点击图形,在弹出的Multiple_Entities对话框中,通过Prev或Next选中圆UtilityMenuWorkPlaneAlignWPwithGlobalCartesian如果想看看WP是否已复位,UtilityMenuPlotReplotReplot提供的是刷新屏幕的功能,有时,某些操作进行后,从屏幕上看不出有什么作用,这时,用Replot,就可以看到预计的效果了。13(4)删除半径为d2/2的圆的上下两块面,只留下中间的一块Preprocessor-Mod
8、eling-DeleteAreaandBelow(5)画半径为d3/2的圆MainMenuPreprocessor-Modeling-Create-Areas-CircleSolidCircleWPX,键入0WPY,键入0Radius,键入d3/2 14(6)齿=(中间的一块面)-(半径为d3/2的圆)Preprocessor-Modeling-Operate-Booleans-SubtractAreas选中被减面,Apply,选中减面Ok (7)相隔60度,再复制两对把当前坐标系改为柱坐标UtilityMenuWorkPlaneChangeActiveCStoGlobalCylindrica
9、lPreprocessor-Modeling-CopyAreas选中这对齿15选中刚才复制好的这对齿,重复以上操作复位当前坐标系为直角坐标系UtilityMenuWorkPlaneChangeActiveCStoGlobalCartesian!复位复位至缺省值是非常重要的操作。上面我们已经用到了WP的复位,ActiveCS的复位。后面还将用到Select的复位。建立起及时复位的概念很有必要。16二、转子1旋转定子45度UtilityMenuWorkPlaneChangeActiveCStoGlobalCylindricalPreprocessor-Modeling-Move/Modify-Ar
10、eas-AreasPickAllDXX-offsetinactiveCS键入0DYY-offsetinactiveCS键入45DZZ-offsetinactiveCS键入0UtilityMenuWorkPlaneChangeActiveCStoGlobalCartesian172画出转子齿,轭,轴(1)画一个长方形Preprocessor-Modeling-Create-Areas-RectangleByDimensions(2)画半径为d4/2的圆 (3)二者作相交运算Preprocessor-Modeling-Operate-Booleans-Intersect-Common-AreasC
11、ommon:得到所有图形相交的部分相对的是Pairwise:得到所有图形两两相交的部分尽管二者是不同的命令,用在这里效果一样。18(4)把所得到的图形旋转90度复制一次(5)把(3)(4)两步结果相加Preprocessor-Modeling-Operate-Booleans-AddAreasUtilityMenuPlotReplot19(6)画半径为d5/2的圆 (7)把(5)(6)两步结果相加(8)画半径为d6/2的圆周Preprocessor-Modeling-Create-Lines-ArcsFullCircle在ANSYSInput窗口中,键入0,0,0在ANSYSInput窗口中,
12、键入d6/2 20(9)用此弧线切割转子面Preprocessor-Modeling-Operate-Booleans-DivideAreabyLine三、总模型1气隙画半径分别为d3/2d4/2的环面212整合这个模型(1)画半径为d1/2的圆 (2)覆盖所有面Preprocessor-Modeling-Operate-Booleans-OverlapAreasPickAll3切割出绕组区域(1)将WP绕X轴旋转90度(2)将所有面旋转(-15)度(3)用WP切割面(4)同样的方法来切割出另外两相的绕组区域,只需将所有面旋转60度,用WP切割面,再将所有面旋转60度,再切割一次。22(5)复
13、位WP几何模型就完成了。定义材料1空气区域,MAT=1绕组区域MAT=34PreprocessorMaterialProps-Constant-IsotropicSpecifyMaterialnumber键入3MURX键入1SpecifyMaterialnumber键入4MURX键入1点击Apply232铁区 输入磁化曲线在ANSYSInput窗口中,键入:tb,bh,2tbpt,290,1.2tbpt,300,1.25tbpt,354,1.3tbpt,450,1.35tbpt,620,1.4tbpt,940,1.45tbpt,1420,1.5tbpt,2220,1.55tbpt,3300,1
14、.6tbpt,4830,1.65tbpt,6600,1.7tbpt,8800,1.75tbpt,11500,1.8tbpt,15100,1.85tbpt,19300,1.9观察B-H曲线,在ANSYSInput窗口中,键入tbplot回到原来的图形:UtilityMenuPlotAreas243分配材料属性Preprocessor-Attributes-DefinePickedAreas铁区分配2,一相绕组中,电流流出分配3,流入分配4,其余均为1。MATMaterialnumber按以上原则分配。观察材料的分配情况UtilityMenuPlotCtrlsNumberings25划分网格Pre
15、processorElementTypeAdd/Edit/Delete点击AddPreprocessorMeshTool选中SmartSizeMesh选中AreasShape选中Tri选中Free点击Mesh26点击PickAll27加载(1)先求得绕组区域的面积UtilityMenuPlotAreasUtilityMenuPlotCtrlsNumberings观察图形,选择面号2,作为被测量的面UtilityMenuParametersGetScalarData28(2)输入电流密度值在ANSYSInput窗口中,键入if=2jf=if*turn/sarea(3)选择加载区域在ANSYSIn
16、put窗口中,键入:/soluesel,s,mat,3bfe,all,js,1,jfesel,s,mat,4bfe,all,js,1,-jfesel,all29求解(1)加边界条件UtilityMenuPlotLinesMainMenuSolution-Loads-Apply-Magnetic-Boundary-VectorPoten-OnLines选择半径为d1/2的四条弧线(2)开始求解在ANSYSInput窗口中,键入:/post1magsolv30查看结果在ANSYSInput窗口中,键入/post1plf2d这样我们画出了等AZ线。31利用宏lmatrix求解绕组的电感值在ANSYS
17、Input窗口中,键入esel,s,mat,3,4cm,wind1,elemesel,all/POST1*dim,cur,1symfac=1cur(1)=iflmatrix,symfac,wind,cur,ind得到:_LMATRIXSOLUTIONSUMMARY_Selfinductanceofcoil1.=0.20463E-01Inductancematrixisstoredinarrayparameterind(1.,1.)Inductancematrixisstoredinfileind.txt 这样就完成了一个基本的分析过程。32看看log文件你刚才所做的每一步分析(不管是对的还是错
18、的),jobname.log文件都记录下来了,它可以用notepad打开。UtilityMenuListFilesLogFile如果想知道每一条命令是什么意思,通过UtilityMenuHelpHelpTopics不过更简单的办法是执行一下这条命令。要注意的是,log文件中的有些命令次序是不可以更改的。所以我们先顺着次序来执行。用Interactive进入,设定新的路径及jobname。你可以:拷贝几条命令至ANSYSInput,回车,直至把整个log文件执行完。如果一次拷贝了太多条命令,ANSYS不能执行完。ANSYSInput的上半部分会显示出已经执行的命令。所以一次不要太贪心。如果确实有
19、必要执行很多条命令,可以把它们存成txt文件,然后用下面的方法UtilityMenuFileReadInputfrom,选择你原来的jobname.log33如果原来的log文件丢失了,可以先UtilityMenuFileResumefrom,选择原来的jobname,然后UtilityMenuFileWriteDBLogFile,得到后缀为lgw的文件,它可以像log文件一样来作为输入文件。ReadInputfrom不怎么挑剔,log、lgw、txt,来者不拒,只要是命令就执行。如果你的命令中有很多错误,它是不会替你去伪存真的。所以对log文件不做任何处理就运行不是明智的选择。当然对那些能一
20、气呵成全部分析任务,中间不出任何错误的高手,这样说就不对了。推荐一种分析方法推荐一种分析方法:进行了几步操作后,UtilityMenuListFilesLogFile,把这几步的命令拷贝至一个txt文件。UtilityMenuFileReadInputfrom此txt文件。这样就保证了文件中都是正确且必要的命令。34请注意请注意:为不同的分析任务设定不同的路径及jobname,首次进入时:程序ANSYS5.6Interactive 下次:程序ANSYS5.6RunInteractiveNowANSYS默认的角度表示为弧度,但可以改为角度可以通过ANSYSInput或ScalarParamete
21、r来输入数据,二者等效输入尺寸时,全部使用国际单位制可通过级连菜单或命令来操作,建模阶段多用菜单,求解及后处理多用命令建立几何模型时,把整个模型变成一个整体,这样边界条件及激励才能通过节点及单元作用于整个模型。相邻的图形,如果没有glue,或者overlap,看起来好象融为一体了,其实有“缝隙”,不会形成公用的节点,即互相不关联。求解时,边界条件及激励只对模型的一部分有效,肯定无法得到正确的结果。35基本概念(一)基本概念(一)WP:即工作平面,可移动的参考平面。光标代表空间中垂直于屏幕的一条线。为了能用光标拾取一个点,首先必须定义一个假想的平面。当该平面与光标所代表的垂线相交时,能唯一地确定
22、空间中的一个点。这个假想的平面就是工作平面。工作平面可以不平行于显示屏。缺省的工作平面是GlobalCartesian的X-Y平面。工作平面的XY轴分别取为GlobalCartesian的X轴和Y轴。ActiveCS:当前坐标系,常用的是GlobalCartesian(默认值),GlobalCylindrical.需要对图形作X-Y平面上的旋转时,就要把ActiveCS改为GlobalCylindricalSelect选中了图形的一部分后,下面的操作只对这些选中的部分有效,本例中,如果漏了esel,all,那么,下面的程序就只对MAT=3,4的面有作用。换言之,参与下面计算的模型就不再是一个完
23、整的电机横截面了。所以要及时UtilityMenuSelectEverything复位 改变了WP、ActiveCS、Select的状态,一定要及时复原。36基本概念(二)基本概念(二)模型的结构层次:elementsnodesvolumesareaslineskeypoints一般来说,只有最高层的才能被修改。举个例子,如果要修改位于下层的line,则要删除其上的elements,nodes,volumes,areas。这在布尔操作中是必须牢记的,但也有例外,详见建模及分网指南。 Select中,有fromfull,reselect,alsoselect,这些都是针对同一层次的模型而言。如果
24、要同时选中不同层次中的模型,这些操作的效果是一样的,尽管在命令流中有区别。37现在你可以自己来分析一个转子位于一定位置,励磁电流一定的电机了。如果你的模型与本例不同,在输入模型时,要注意以下几点:尽量使用参数,避免每次输入实际数值。比如用d1,d2来表示直径。这样做的好处是:1避免多次输入实际数值而出错2如果模型做小的调整,比如d1的值取得大一些,只要对log文件做修改,很方便。及时检查输入工作的正确性。方法:UtilityMenuListAreas可以看到有关被选中面的所有信息。也可以UtilityMenuPlot画出你感兴趣的面或线。38对于双凸极电机来说,我们感兴趣的是当转子位于不同位置
25、、电流大小不同时,磁场的分布及电感的大小。可以为每一种情况(转子位于某一位置、电流为某一值)建立模型,进行分析。但是这样做的效率实在是太低了,因此我们必须引入“循环”。电流的循环:把电流值赋给数组,用数组的下标作为循环变量。电流取不同值,重新加载,求解。转子位置的循环:定义0度(比如当转子齿正对定子槽时)。把不同的角度赋给数组,每次将转子旋转一定角度。电流的循环对几何模型没有影响,放在内层;转子位置的循环改变了几何模型,置于外层,有利于提高计算效率。下面首先介绍电流的循环。39ncurr=4!取四个不同的电流值*dim,if,ncurr!定义电流数组,维数由参数ncurr决定,尽管这比!直接*
26、dim,if,4多了一行,调试程序时要方便得多if(1)=10,20,35,50!赋值,注意写出起始下标要是你愿意写if(1)=10if(2)=20当然也可以了,只要你不嫌麻烦*do,iii,1,ncurr!凡是if的位置均以if(iii)替代jf=if(iii)*tf/sf*SET,cur(1),if(iii)!循环体中为加载、求解的全过程*enddo好象可以循环了,运行到lmatrix时,却不得不干预程序的运行,并未完全自动执行。因此,要对lmatrix这个宏“动手术”。40对宏对宏lmatrix“动手术动手术”用notepad打开位于ansys56docu的lmatrix.mac文件将其
27、复制到当前目录,对“复制品”进行修改。由提示信息,循环中断是因为重定义数组,因此最主要的任务是把数组的定义挪到循环外,相应地作一些其他的改动。在主程序中添加添加:_nrows=1!线圈的个数*dim,cur,_nrows删除删除:*get,_nrows,parm,_cur,dim,x,移动移动至主程序中、循环外:*dim,_jname,char,2*dim,_ind,array,_nrows,_nrows*dim,_ene,array,_nrows,_nrows*dim,_nami,char,_nrows修改修改/out,lmatrix,out为/out,lmatrix,out,append,
28、使输出方式变为追加方式(默认为覆盖方式)删除:删除:以下两个标题之间的内容!-defineoutputinductancearraywithnamearg4!-reinstalloperatingdatabase41小结小结:为了实现对多个电流值的自动求解,我们用到了:do循环*do,循环变量,起始值,终止值,步长循环体*enddoansys的宏,并对其进行了初步修改。后面还将为了完善后处理而继续修改它。其实,一段经常使用的程序,可以保存为当前目录下的mac文件,这样只要在ANSYSInput中键入文件名,就可以执行了。这比每次都UtilityMenuFileReadInputfrom要快捷多
29、了。42实现转子位置的循环比电流循环麻烦多了。你需要修改几何模型,还要接触约束方程约束方程。方法是:建立定子及有关部分的模型,划分网格(较细),生成节点组件建立转子及有关部分的模型,划分网格(较粗),生成单元组件生成约束方程(定子及有关部分、转子及有关部分是分别建立模型,分别划分网格的,彼此没有关联。通过约束方程,它们形成了一个整体。)转子位置循环转子位置循环的思想为:循环体外:定义边界条件循环体内:转动转子位置,设置约束方程,加载,求解,删除约束方程43定义其为componentSelectComp/AssemblyCreateComponent,键入statormadeofareas先画出
30、几何模型(包括气隙)44划分网格(采用smart)1选择最内层半径的节点选择最内层半径的节点做成做成componentnnnUtilityMenuSelectEntities选择ByLocation将当前坐标系改为柱坐标系键入即最内层的半径45PlotNodes看到只有半径为d4/2的节点被选中SelectComp/AssemblyCreateComponent,键入nnnSelectEverything复位坐标系(切记)2选择整个转子单元选择整个转子单元做成做成componentrotor不选中定子部分46定义其为componentmadeofareas,名为rota之所以要定义这么一个co
31、mponent是因为转子位置不同时,要使用PreprocessorMove/ModifyAreas定义成component,在程序中以rota可以代替一大串面号。47对这一部分划分网格?,不选中smartsize定义其为Componentmadeofelems,名为rotorATTENTION:在半径为d4/2处,存在两组节点,较细的由定子部分划分而得,较粗的由转子部分划分而得,现在它们是各自为政的。3建立约束方程(对邻近的节点和单元)建立约束方程(对邻近的节点和单元)SelectEverythingSelectComp/AssemblySelectComp/Assembly,选中nnn,Apply再选中rotor,OkPlotComponentsSelectedComponents48PreprocessorCoupling/CeqnConstraintEqnAdjacentRegions键入az49PlotElements此时的网格与统一划分的有区别,但都是互相关联的。4要解除这种关联要解除这种关联,PreprocessorCoupling/CeqnConstraintEqnDelConstrEqn键入all50下面给出一个完整的分析一相绕组的程序,所有的文档均应放在同一个目录下。51