基于Python与Ansoft的混合式直线力电机参数化设计系统研究

2022-11-18 09:38王子旋黎向锋肖一秦鹏胡嘉琨徐礼林左敦稳
微特电机 2022年11期
关键词:气隙驱动力直线

王子旋,黎向锋,肖一秦鹏,胡嘉琨,徐礼林,左敦稳

(1.南京航空航天大学 机电学院,南京 210016;2.南京机电液压工程研究中心,南京 211106;3 航空机电系统综合航空科技重点实验室,南京 211106)

0 引 言

混合式直线力电机电磁计算公式繁多,公式中内嵌有循环,需要在多种不同参数组合下完成计算,这种复杂计算是手工计算难以完成的。目前,混合式直线力电机的设计主要采用Ansoft对电机磁场进行有限元仿真,再根据仿真结果修改Ansoft中的电机结构,直到获得理想的结构参数[1]。这种方法异常繁琐,亟待对电机结构参数模型进行封装,开发出操作简便、计算快速的混合式直线力电机参数化设计系统,以缩短电机的研发周期。

国内外学者已经对电机参数化设计软件进行了研究。文献[2]开发了基于VB与MATLAB混合编程的永磁同步电动机电磁设计软件,实现了可视化输入数据、快速计算电机输出量,并且具有友好的界面和表格导出功能。以一台15 kW、4极永磁同步电机为例,验证了该软件的设计便捷性。文献[3]开发了一套基于Ansoft的永磁同步电机电磁设计系统,通过VB和Ansoft的无缝连接实现了电机结构参数的输入、电机模型分析以及结果导出功能,辅助电机设计人员的工作。文献[4]使用Python开发了针对永磁同步电机的自动化软件,相比于前两篇文献拥有更高的自动化程度。软件包括以下模块:Machine Winding Creator模块负责电机绕组的自动生成,Machine Design Creator模块负责创建二维Ansoft电机仿真模型,Machine Design Analysis模块负责计算电机性能,Machine Design Optimization模块用于电机结构优化,Machine Design Visualization模块用于电机结构可视化。目前针对混合式直线力电机的自动化设计软件的研究仍很少,且混合式直线力电机的快速迭代设计仍需人工操作,异常繁琐。

Ansoft仿真软件只支持Python与VB脚本录制与执行[5]。Python语言具有简洁的语法、丰富的科学计算和图形开发库,便于自动化设计软件的开发。本文以Python为系统主体开发语言,通过Python与Ansoft软件的交互,实现混合式直线力电机的参数化建模,自动计算电机的驱动力与线性度,通过采样分析找到结构参数对驱动力和线性度影响趋势,代替繁琐的手动迭代设计过程。

1 系统设计准则

1.1 尺寸驱动法

参数化建模软件的常见编程方法有程序驱动和尺寸驱动两种[6]。第一种方法是开发者通过调用API函数进行完整建模,一般用于开发具有复杂形状零件的参数化建模,操作难度较大,建模过程耗时较长,编程复杂度高并且执行效率较低。第二种方法是将关键尺寸参数从目标模型中提取出来,不改变其结构特征,通过改变关键尺寸参数来得到外形结构相同但是尺寸不同的目标模型。尺寸驱动法运用关键结构参数替代完整建模过程,能够更有效率地完成零件设计工作[7]。

如图1所示,混合式直线力电机主要由端盖、轴承、轴、衔铁、外套等部件及密封圈、螺母、螺钉等标准件组成,其中左支撑架、外套、线圈骨架、线圈、右支撑架、磁钢、导磁环及衔铁是其核心零件[8],它们的相对位置以及形状是不会改变的。如果使用程序驱动法,每次微调电机结构都需要重新建立电机模型,时间复杂度较高,且造成了不必要的计算资源浪费;如果使用尺寸驱动法,每次只需要改变电机的几个特定零件的尺寸和位置,时间复杂度较低,所以本文使用尺寸驱动法作为参数化设计系统的编程准则。

图1 混合式直线力电机结构简图

1.2 Ansoft与Python混合编程方法

打开关闭Ansoft软件、改变坐标点值、改变边界条件、分配材料属性、输出仿真结果等所有手动操作均可以通过脚本功能自动完成[9]。Python是一种面向对象的、动态的、解释型的程序设计语言[10],适用于参数化设计系统的敏捷开发。

Python通过PyWin32模块来访问Windows操作系统应用程序接口(Windows API),与VB调用Ansoft的方式相同,Python自动化接口把Ansoft作为RPC服务器来传递控制信息[11]。Python通过执行以下代码直接操作Ansoft,实现模型修改以及仿真结果的实时观测和分析。

# 打开一个自动客户端对象

ansoft_app =

client.DispatchEx('AnsoftMaxwell.MaxwellScript Interface')

# 获得 Ansoft 桌面对象

desktop = ansoft_app.GetAppDesktop()desktop.RestoreWindow()

# 打开 Ansoft 仿真文件

desktop.OpenProject('path of ansoft file')

projector = desktop.SetActiveProject('XC21')

designer = projector.SetActiveDesign('MaxwelDesign1')

editor = designer.SetActiveEditor('3D Modeler')

# 获得 Optimetrics 模块对象

op_module = designer.GetModule("Optimetrics")

# 获得 ReportSetup 模块对象

report_module = designer.GetModule("ReportSetup")

2 系统模块功能及实现

2.1 系统总体框架

混合式直线力电机结构较复杂,Ansoft内置的参数扫描功能无法定义其结构参数的变动规则,所以参数化设计系统增加了一些特殊的约束和特征。如图2所示,参数化系统由Ansoft通信模块、图形管理模块、结构参数管理模块和交互界面这4个部分组成。配置文件里记录结构参数的取值范围与Ansoft仿真文件的地址。

图2中箭头有两种不同的方向,第一个方向是从Ansoft模型端流向用户端,作用是读取不同初始尺寸的Ansoft电磁仿真模型,记录电机所有零件的位置和尺寸。数据在流动过程中经过以下处理步骤:

(1)Ansoft通信模块使用Python程序直接和Ansoft软件进行交互,读取电机磁场有限元仿真模型中的所有坐标点值以及图形的名称和属性。

(2)图形管理模块对Ansoft通信模块中读取到的坐标点值和图形属性进行分解计算,转化为多个不同的图形和图形特征,包括角度特征、拉伸特征、斜线拉伸特征等。

(3)结构参数管理模块对图形管理模块中提取到的特征图形进行组合计算,转化7个电机结构参数,包括线圈匝数、气隙角度、气隙轴向宽度、磁钢宽度、导磁环宽度、磁钢厚度以及衔铁厚度。

(4)交互界面用于显示电机结构参数值,提供电机驱动力和驱动力线性度的计算功能、解析各结构参数对驱动力以及线性度影响趋势的采样分析功能。

第二个方向是从用户端流向Ansoft端。用户在交互界面上改变电机结构参数,从而改变实际的电机仿真模型。数据在流动过程中经过以下处理步骤:

(1)用户通过交互界面改变电机结构参数的数值。

(2)结构参数管理模块读取系统交互界面中的电机结构参数,通过内部设定的变动逻辑,将单个结构参数的变动,分解为多个图形特征的变动逻辑。

(3)图形管理模块读取结构参数模块中的图形特征变动逻辑,并转化为具体坐标点的变化。

(4)Ansoft通信模块读取图形管理模块中的变动坐标点,并封装为通信代码发送给Ansoft,改变磁场仿真模型。

图2 混合式直线力电机参数化设计系统框架图

2.2 Ansoft通信模块

Ansoft通信模块基于PyWin32库开发,使用Python程序直接与Ansoft进程进行通信,从而控制Ansoft的行为操作。由于采用尺寸驱动法的设计准则,所以开发过程中不用将整个电机仿真模型的建模过程及步骤录制下来,而是完成混合式直线力电机初始设计后,只录制7个电机结构参数变动操作的程序代码并加以封装。

Ansoft通信模块封装了常用的Ansoft软件操作,是整个软件体系中唯一与Ansoft进程进行直接通信的模块,也是最基础的模块。

2.3 图形管理模块

图形管理模块将磁场有限元模型切分成多个不同的特征图形。图3展示了封装后的图形及特征的层级关系,分别是简单的基本图形和矩形、以及具有复杂特征的特征图形。其中,基本图形只实现了平移变换,矩形在基本图形的基础上实现了长宽的改变。特征图形用于处理不规则图形,具有拉伸特征、角度特征以及斜向拉伸特征。

图3 图形层级关系

以衔铁部件为例,这是一个梯形的部件,涉及到以下三个电机结构参数:

(1)气隙轴向宽度:气隙轴向宽度参数的改变,即对衔铁部件的两腰进行水平拉伸或者收缩。如图4所示,衔铁部件上的拉伸特征将右侧腰进行水平拉伸了距离e,实际变动是将点p3与点p2的横坐标分别增加e,最终移动到点p′2与点p′3位置。

图4 拉伸特征

(2)气隙角度:气隙角度参数的改变,即增加或者减少衔铁部件的两腰角度。如图5所示,衔铁部件上的角度特征将左侧腰角度由α增加为α′,实际变动是点p1的横坐标发生变化,最终移动到p′1位置。

图5 角度特征

(3)衔铁厚度:衔铁厚度参数的改变,即保持两侧腰的角度不变的情况下,垂直移动衔铁部件的上底面。如图6所示,衔铁部件上的斜向拉伸特征将上底面上移了垂直距离h,实际变动是将点p3与点p0的纵坐标分别增加h,同时横坐标根据两侧腰的角度也进行了改变,最终移动到点p′0与点p′3位置。

图6 斜向拉伸特征

图形管理模块将对特征图形的变动转化成坐标点的改变,并且向下传递到Ansoft通信模块,最终改变磁场有限元仿真模型。图形管理模块是连接参数管理模块和Ansoft通信模块的中间模块,弥补了Ansoft对几何图形处理能力不足的缺点。

2.4 结构参数管理模块

结构参数管理模块规定了电机结构参数的变化与特征图形的关系,系统内实现了线圈匝数、气隙角度、磁钢宽度、气隙宽度、导磁环宽度、衔铁厚度、磁钢及导磁环厚度这些基本结构参数。基于Python面向对象的特性,使用类定义每个电机结构参数,类名表示结构参数的名称,包含以下两个方法:

(1)value方法:读取结构参数值,改变图形管理模块中的特征值。

(2)read_value方法:读取图形管理模块中的特征值,返回计算得到的结构参数值。

以气隙轴向宽度结构参数为例,说明结构参数模块的工作原理。如图7所示,EndCover_left表示左支撑架的名称,EndCover_right表示右支撑架的名称,Armature表示衔铁的名称。衔铁在图形管理模块中注册为特征图形,左侧腰添加了拉伸特征strength_left表示将点0和点1向左拉伸,右侧腰添加了拉伸特征strength_right表示将点2和点3向右拉伸。

图7 气隙轴向宽度变化简图

在value方法中,Armature图形的拉伸特征strength_left向右拉伸delta距离并且strength_right拉伸特征向左拉伸delta距离。如图7所示,衔铁分别向左右两侧拉伸了delta距离,即气隙轴向宽度减小了delta。在read_value方法中,计算EndCover_left图形的点1横坐标与衔铁图形的点0横坐标的差值,即气隙轴向宽度数值。

2.5 交互界面

本系统共包含仿真和采样两个选项卡。如图8所示,仿真计算选项卡包含7个电机结构参数的输入框、仿真计算结果栏以及电机结构预览显示框。此外,该选项卡还包括预览(改变电机结构预览显示结果)、应用(改变电机仿真模型文件)、计算驱动力以及计算线性度4个功能按钮。

图8 仿真计算界面

如图9所示,采样分析选项卡包含电机结构参数的下拉框、采样个数输入框以及采样结果图表。系统以下拉框选择的结构参数为自变量,在其取值范围内,均匀采样用户指定个数的样本点。此外,该选项卡还包括开始采样驱动力、开始采样线性度、导出(以csv格式导出当前采样结果)3个功能按钮。其中导出数据使用excel打开如图10所示。

图9 采样分析界面

图10 导出数据格式

3 应用实例

本文应用开发的混合式直线力电机参数化设计系统,对电机进行优化设计。根据文献[8]的工作,使用Ansoft建立混合式直线力电机磁场有限元仿真模型,利用其静磁场求解器可以获得电机驱动力和线性度。本文研究的混合式直线力电机行程在±0.5 mm,使用零位时施加极限电流(2 A)的电磁综合力表征最大碎片剪切力;使用±0.1 mm,±0.2 mm,±0.3 mm,±0.4 mm处的电磁综合力关于工作电流(-1 A~1 A)的线性度最大值表征整体的线性度。考虑直驱式电液伺服阀对混合式直线力电机的碎片剪切功能和控制特性的要求,需要在保证线性度K<0.05的情况下,改变电机结构尺寸,尽可能最大化电机驱动力。

为获得更优的电机结构参数,需要探究不同电机结构参数对电机驱动力及其线性度的影响。使用参数化设计系统的采样分析功能,分别采集气隙轴向宽度、衔铁厚度、气隙角度、磁钢及导磁环厚度、磁钢宽度、导磁环宽度以及线圈匝数这7个结构参数在不同数值下的驱动力和线性度数据。采样策略为均匀采样,在其选取范围之内间隔均匀地取6个采样点。采集到的数据导出后如图11所示,每个结构参数分别按照优化规则(K<0.05且尽可能最大化驱动力)选取,即:线圈匝数为400,气隙角度为90°,磁钢宽度为15 mm,衔铁厚度为14 mm,磁钢及导磁环厚度为22.5 mm,气隙轴向宽度为1.5 mm以及导磁环宽度为12.5 mm时,每个结构参数都分别能取到其最优值。

采用该参数化设计系统得到的电机优化参数及驱动力和线性度结果如表1所示。表1中,序号1为初始电机结构参数调用磁场有限元仿真得到的计算结果,序号2是电机结构参数单因素优化后得到的参数组合对应的有限元仿真结果。由表1可知,单因素优化后的驱动力提升了45%。

图11 电机结构参数对电机驱动力及其线性度的影响分析

表1 优化结果对比

4 结 语

本文基于Ansoft软件平台,运用Python脚本语言开发了混合式直线力电机参数化设计系统,实现电机有限元模型的快速改变以及电机结构的快速优化。本文研究内容及结论如下:

首先,对混合式直线力参数化设计系统的设计准则进行分析,使用尺寸驱动法作为系统的编程准则。

其次,对系统功能模块进行设计及开发,包括Ansoft通信模块、图形管理模块、结构参数管理模块、交互界面这4个模块,完成自上而下的混合式直线力电机模型自动建模与快速计算。

结果表明,开发的参数化系统整体操作简便,可以提高电机电磁设计工作的效率。与初始结构电机的驱动力比较,混合式直线力电机参数化设计系统可以将初始结构参数的电机驱动力通过单因素优化提升45%。

后续,拟通过深度神经网络建立电机驱动力和线性度预测模型,采用如布谷鸟搜索等智能优化算法,对电机结构参数进行全局优化,相信该电机驱动力还有进一步的提升空间。

猜你喜欢
气隙驱动力直线
气隙大小对电机电磁振动的影响分析
采埃孚集团董事柯皓哲: 创新是产业转型的驱动力
非均匀气隙结构对自起动永磁同步电动机性能的影响
基于Halbach阵列磁钢的PMSM气隙磁密波形优化
同步发电机理论的一个奇点与气隙中心论
油价上涨的供需驱动力能否持续
基于关键驱动力要素的情景构建应用
画直线
偏向型技术进步视角下天津市经济增长驱动力研究
偏向型技术进步视角下天津市经济增长驱动力研究