铝合金精密铣削有限元仿真的参数化建模

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

铝合金精密铣削有限元仿真的参数化建模
王洪祥;徐涛;杨嘉
【摘要】对有限元软件(ABAQUS)自带的编程语言(Python)以及ABAQUS GUI Toolkit工具的一些基本概念进行了简要介绍,阐述了利用有限元软件(ABAQUS)建模的基本过程.利用编程语言(Python)和ABAQUS GUI Toolkit工具,编写了可视化用户界面,实现了铝合金铣削过程的参数化建模.
【期刊名称】《轻合金加工技术》
【年(卷),期】2011(039)012
【总页数】4页(P51-54)
【关键词】有限元;铝合金;铣削;参数化建模
【作者】王洪祥;徐涛;杨嘉
【作者单位】哈尔滨工业大学机电工程学院,黑龙江哈尔滨150001;哈尔滨工业大学机电工程学院,黑龙江哈尔滨150001;哈尔滨工业大学机电工程学院,黑龙江哈尔滨150001
【正文语种】中文
【中图分类】TG146.21;TH164
铝合金的切削过程是一个涉及影响因素较多的复杂过程,人们往往通过试验来研究铝合金切削性能,经过多次试验,才能优选出切削参数,这样不仅成本较高,而且试验周期很长。

随着计算机技术的发展,有限元法被越来越多地运用到铝合金切削
过程的研究中,但是在利用有限元仿真技术对切削过程进行仿真时,需要大量的算例进行对比,操作较为繁琐,工作量大。

ABAQUS是法国Dassault Aviation公司开发的一款商业有限元软件,它自带的编程语言(Python)和ABAQUS GUI Toolkit工具可帮助用户构建可视化的界面,减少用户手工操作工作量,提高计算效率。

借助ABAQUS强大的功能,通过二次开发可实现航空用铝合金铣削过程有限元参数化建模。

1 Python编程语言
Python是一种易于解释、面向对象的高级程序语言。

一直以来,人们都认为Python是一种脚本语言,但它也是一种支持脚本语言的编程语言。

Python语言拥有高效的数据结构和动态的类型识别模式,能够在多种平台上执行,实现多种功能[1-3]。

Python面向对象的特性提高了代码的重用性,降低了代码的冗余程度。

Python能够在很多软件和硬件平台上使用,这大大扩展了其功能,它是一种非常规范的编程语言,几乎支持所有的因特网标准。

Python简洁的特性使得其在开发Python程序时更加高效,编写的程序更容易维护。

2 ABAQUS与Python的关系
2.1 用户和内核交互方式
ABAQUS软件中用户和内核的交互方式有多种,包括 GUI与内核交互、命令行接口(Command line interface)与内核的交互和脚本语言与内核的交互。

它们可以单独使用,也可以混合使用。

当用Abaqus/CAE进行建模和后处理时,每一个操作都是在Abaqus/CAE中执行的,并且产生Python语言指令。

这些命令被发送给内核,内核对命令进行翻译和识别并最终执行命令。

2.2 内核与GUI程序的通讯
ABAQUS/CAE在处理过程中一般会用到两个程序,它们分别是内核程序和GUI 程序。

ABAQUS/CAE中的内核程序和GUI程序是通过IPC协议来完成的通信的
[4],其交互过程如图1所示。

图1 ABAQUS内核与GUI程序通讯流程Fig.1 Communication between ABAQUS internal-nucleus and GUI
ABAQUS/CAE在进行分析时,用户首先通过鼠标触发对话框,对话框发出内核请求指令,内核如果接到指令就会判断指令中是否需要输入数据,若需要输入数据,就会返回GUI,打开相应的对话框;要求通过打开的对话框输入数据到GUI对话框中,GUI对话框将数据传输至内核中,处于进程中的内核实现自动建立几何模型模、赋予模型材料属性、网格属性和自动进行网格划分等功能。

实际上,如果模型复杂、划分网格操作繁琐,可以直接通过编写Python脚本语言绕过ABAQUS/CAE前处理平台,避免复杂繁琐的完全手工操作[5]。

3 有限元参数化建模过程
3.1 模型的简化
采用铝合金制造的航天用高阻尼器底座的剖视图见图2,在加工过程中其侧壁粗糙度和平面度要求较高。

因为其结构复杂,且壁厚较薄,在最后一道工序中,切除量较小,所以若对整个加工零件的最后一道工序进行有限元模拟,则计算量很大。

整体结构件有限元分析几何模型如图3所示,如果对其切削过程进行有限元模拟,在进行网格划分后产生444204个单元,在4核电脑上计算需要一星期时间,这样在每次设置一次参数后都需要将近一星期的计算时间,加之所需考察的切削参数较多,费时费力。

因此,在此模型中考虑到在其加工过程中每一段薄壁受力的相似性,将整个模型简化为一段“L”形构件,使分析时间和计算量大幅减少。

对于铣刀而言,只建立其切削部分的几何模型,并且视为刚体。

图2 高阻尼器底座剖视图Fig.2 Section of high damper base in A-A direction 图3 整体结构件有限元分析几何模型Fig.3 Finite element geometry model of structural component
3.2 铣削过程参数化建模流程
若研究铣削过程中铣削参数和铣刀的几何参数对加工质量的影响,可以将铣削参数(vc,fz,ap,ae)和薄壁件的壁厚设为变量,铣削过程参数化建模程序流程图如图4所示。

首先在GUI界面下选择刀具、设置工件尺寸及切削参数,然后GUI将这
些数据传输至ABAQUS内核。

在ABAQUS的内核中,通过编写ABAQUS脚本
语言来建立有限元模型。

在建模过程中,通过编写Python脚本语句来判断所定义的参数是否合理,如果合理则进行下一步的操作,否则返回上一步,并提醒用户修改设置。

图4 铣削过程参数化建模程序流程图Fig.4 The flow chart of parameterization modeling of milling program
3.3 GUI界面的设计
对于交互式界面的设计,考虑到铣刀在ABAQUS/CAE中建模不是很方便,首先
选用三维建模软件Solidworks2011建立铣刀的几何模型,然后保存至刀具库中。

当用户需要选择铣刀时,可以根据实际情况调用刀库中的铣刀。

其他信息通过文本框的形式进行设计。

通过ABAQUS GUI Toolkit设计的参数化界面如图5所示。

图5 参数化界面Fig.5 Parametric interface
3.4 关键代码分析
在编写程序时,首先导入abaqus模块和abaqus Constant模块,其代码如下: From abaqus import*
From abaqus Constants import*
导入Constants模块后可以在脚本中使用ABAQUS预定义的一些常量。

接着就可以调用mdb对象建立“L”形构件的几何模型,同时将该模型赋值给自定义的变量,这样可以使后续调用该模型时简单化,实现这一过程的语句为:
s=mdb.models(name='Milling_GUI')
语句中s是自定义的变量,'Milling_GUI'是模型的名称。

在创建实体模型的过程中,需要建模的构件是将一个“L”形截面拉伸后形成的。

因此需要先完成一个“L”形草图,然后对草图拉伸形成“L”形构件。

在该过程
中使用的拉伸函数为:
s.BaseSolidExtrude(sketch=s.ketch,depth=E)
语句中E是拉伸长度,工件定义完毕后,需要从刀具库中调入刀具,调入刀具的
语句为:
mdb.openAcis('E:/Temp/tools/r2_5a10b30.SAT',scaleFromFile=OFF)
然后进行装配,根据工件的壁厚和铣削余量确定ae,输入程序,程序通过计算,
实现刀具的正确定位,然后根据ap进行刀具轴向切削深度的定位。

装配完成后,定义材料、划分网格、定义接触,产生input文件等待运算,最后保存所编写的
程序和GUI文件,退出ABAQUS/CAE,这些过程由于本文篇幅所限,在此不再
赘述。

4 参数化模型的使用
启动 ABAQUS/CAE,点击 Plug-ins→th-in-wall-milling,在milling tools中选择不同前、后角和螺旋角的铣刀,在vc、fz、ap和ae中分别输入切削速度、每
转进给量、铣削深度和铣削宽度,在A、B、C、D和E中输入工件尺寸。

图6 程序生成的有限元模型Fig.6 Finite element model generated by process 以所加工的工件为例,其壁厚为2 mm,考虑加工工艺,高度取为5 mm,铣削
深度为2 mm,宽度为0.2 mm,每转进给量为0.3 mm,铣削速度为180
m/min,铣刀选择前角为5°,后角为10°,螺旋角为30°的整体硬质合金立铣刀,生成的有限元模型见图6,与此同时还会生成相应的input文件,直接通过命令行提交input文件进行计算。

5 结束语
本文将有限元分析与面向对象的编程技术相结合,提出了一种铝合金精密铣削过程有限元参数化建模的新方法,并基于Python语言对ABAQUS进行二次开发,编写了用户可视化界面,达到了快速建立铝合金精密铣削过程有限元模型的目的,从而大大提高了建模的效率,为进一步优选切削参数提供了便利条件。

【相关文献】
[1]王国梁.ABAQUS GUI二次开发技术在材料领域的研究与应用[D].兰州:兰州理工大学,2009.
[2]CHUN W J.Python核心编程[M].宋吉广,译.北京:人民邮电出版社,2008.
[3]杨昆,汪兴东.Python程序员指南[M].北京:中国青年出版社,2001.
[4]朱兆华,黄菊花,张庭芳,等.ABAQUS前、后处理模块二次开发的应用[J].组合机床与自动化加工技术,2009(1):30-38.
[5]王家林,李平.ABAQUS箱型桥梁的GUI二次开发[J].重庆交通大学学报(自然科学版),2009,28(6):1000-1024.。

相关文档
最新文档