基于Python的ABAQUS层压板参数化建模
来源:核心期刊咨询网时间:2020-01-11 11:0812
摘要:摘要:为了提高层压板在ABAQUS仿真中建模的效率与准确性,提出利用Python语言对ABAQUS二次开发进行层压板参数化建模的方法。基于ABAQUS有限元软件,采用Python编写脚本文件对ABAQUS内核文件直接操作,准确而高效地完成层压板的多层材料复合建模、材料属性定
摘要:为了提高层压板在ABAQUS仿真中建模的效率与准确性,提出利用Python语言对ABAQUS二次开发进行层压板参数化建模的方法。基于ABAQUS有限元软件,采用Python编写脚本文件对ABAQUS内核文件直接操作,准确而高效地完成层压板的多层材料复合建模、材料属性定义、截面创建及截面指派等操作。结果表明:利用Python脚本进行层压板参数建模的方法能快速准确地创建仿真模型,且可以通过Python的建模参数直接完成对仿真模型的修改,使得建模效率大大提高。
关键词:Python; ABAQUS; 层压板; 参数化建模
复合材料层压板由于其比强度大、比刚度高、质轻耐腐蚀等诸多优点,在航空航天、轨道交通等领域应用越来越广泛[1-3]。层压板一般是由多种不同特性的材料按照一定的顺序通过铺层复合而成,因此在对包含有层压板的模型进行各种仿真分析时,层压板的建模就会格外繁琐,必须对其每一层材料进行建模并指定不同的材料属性。当层压板复合层数较少时,可通过三维软件逐层建立模型或直接在有限元软件中逐层创建。而复合层数较多时,手动创建模型会非常麻烦,且赋予材料属性或指派截面如果出现错误将很难检查,且最终会导致仿真失败。
ABAQUS是一款通用性有限元软件,其在解决复杂问题和高维非线性问题优势明显。该软件预留了很多二次接口并可以直接运行Python脚本,以便用户根据自身分析需求更好的使用。王龙等[4]利用二次开发模块USDFLD结合ABAQUS对复合材料层压板的损伤扩展进行了仿真分析。吴向东等[5]采用Python对ABAQUS前处理进行了开发,使其在板料冲压成形时能够更好的输出速度幅值加载曲线。陈彦海等[6]通过使用Python得到了飞机蒙皮连续锤铆的自动分析方法,提高了仿真分析效率。董明鑫[7]采用Visual C++对ABAQUS二次开发,完成了金属板带轧制过程的自动建模与仿真分析。因此,为提高层压板建模效率与准确性,我们提出利用Python语言对有限元软件ABAQUS进行二次开发来完成层压板参数化建模的方法。
1 层压板结构与模型
1.1 层压板结构
層压板是由多种不同材料的薄板复合而成。此处以两种材料的层压板为例,如图1所示。两种材料的薄板交替铺层,以物理或化学的方法压制在一起。每一层的材料属性与几何尺寸都会影响层压板的整体力学性能。
由于层压板的特殊结构,在ABAQUS中建模时必须按照铺层顺序,逐层创建,并对每一层薄板一一创建截面,赋予各层不同的材料属性。建模结构如图2所示。
1.2 层压板建模
为了对比两种建模方法,选用两种材料复合的层压板先在ABAQUS中进行手动建模。层压板模型尺寸20 mm×20 mm的开孔板,厚度2.4 mm,孔半径2 mm,两种层板的厚度分别为0.07 mm与0.05 mm,总共复合20层。其尺寸结构如图3所示。
每创建一层,需要对该层创建截面并指派截面属性,赋予其相应的材料。手动建模需要自下而上完成20层的操作,工作重复度高,且容易出现创建某一层时指派截面属性到另一种材料的混乱情况,也很难检查建模的准确性。
2 Python開发ABAQUS建模脚本
2.1 Python脚本开发
ABAQUS的二次开发一般有两种方式,一是通过子程序接口,采用Fortran语言编写。另一种是脚本接口,采用Python语言。由于ABAQUS的交互本就是由Python编写的,在其软件主界面的命令窗口可以直接运行Python代码,因此采用Python开发更加方便快捷,其脚本文件执行流程如图4所示。
本次开发的脚本主要用于完成开孔板的几何建模、层板自动几何切分、自动创建材料界面以及自动指派各层材料属性。
部分Python脚本代码如下:
modelName=‘Model-1’ #模型名称
partName=‘blank’ #零件名称
Mat_CFRP=‘CFRP’ #层板名称1
Mathickness_2=‘COHESIVE’#层板名称2
length=20 #层压板长
width=20 #层压板宽度
r=2 #孔半径
Thickness_1=2.4 #层压板板厚
Thickness_2=0.05 #层板1厚度
Thickness_3=0.07 #层板2厚度
layup=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]
executeOnCaeStartup()
#绘制草图
mdb1=mdb.models[modelName]
mdb1.ConstrainedSketch(name=‘__profile__’, sheetSize=200.0)
mdb1.sketches[‘__profile__’].rectangle(point1=(0.0, 0.0), point2=(length, width))
mdb1.sketches[‘__profile__’].CircleByCenterPerimeter(center=(0.5*length,0.5*width),point1=(0.5*length, 0.5*width+r))
vertice_1=mdb1.sketches[‘__profile__’].vertices.findAt((length, 0.0))
vertice_2=mdb1.sketches[‘__profile__’].vertices.findAt((0.0, 0.0))
#自动切分
z=0.0
for i in range(1,len(layup)):
datum1=p.DatumPointByOffset(point=p.vertices.findAt((0.0, 0.0, 0.0), ),
vector=(0.0, 0.0, z+Thickness_3))
z=z+Thickness_3
p.PartitionCellByPlanePointNormal(cells=
p.cells, normal=p.edges.findAt((0.0, 0.0, 0.5*Thickness_3), ), point=p.datums[datum1.id])
#创建层压板材料
mdb1.Material(name=‘laminate’)
mdb1.materials[‘laminate’].Density(table=((1.7e-09, ), ))
mdb1.Material(name=‘cohesive’)
mdb1.materials[‘cohesive’].Density(table=((1.6e-09, ), ))
mdb1.materials[‘cohesive’].Elastic(table=((30000.0, 15000.0, 15000.0), ), type=TRACTION)
#创建并赋予截面属性
mdb1.HomogeneousSolidSection(material=‘laminate’, name=
‘laminate’, thickness=None)
mdb1.CohesiveSection(material=‘cohesive’, name=‘cohesive’,
outOfPlaneThickness=None, response=TRACTION_SEPARATION)
if i==(len(layup)-1):
break
else:
p.Set(cells=p.cells.findAt(((0.5*(length), 0.0,
0.5*Thickness_2+z),),), name=‘cohesive’+str(i+1))
p.SectionAssignment(offset=0.0,offsetField=‘’, offsetType=MIDDLE_SURFACE,
region=p.sets[‘cohesive’+str(i+1)], sectionName=‘cohesive’,
thicknessAssignment=FROM_SECTION)
2.2參数化自动建模
在ABAQUS命令窗口中直接运行编写好的Python脚本代码,自动完成模型的创建,其结果如图5所示。两种层板的材料在脚本中直接创建并自动完成各材料的截面创建与截面指派。
为检验Python脚本自动建模的准确性,分别对手动建立的模型与Python自动创建的模型进行简要静力学仿真分析,并将计算结果进行对比。载荷及边界条件等设置如下:将层压板模型一侧固定,在层压板表面施加100 N的压力,如图6所示,采用静力——通用分析步,板料网格均采用六面体,类型为C3D8R(八结点线性六面体单元),对层压板进行应力应变分析。仿真计算获得的应力分布结果如图7所示。
由上可知,两种建模方法获得的层压板模型在同一仿真条件下应力分布结果偏差仅为0.01%,说明两种建模方法获得的模型相同。仿真应力数值上的极小偏差是由于ABAQUS对模型进行网格自动划分时,由于板料中心孔的存在,自动划分存在每次均有部分网格大小与结构略有不同的结果。通过对比分析结果,证明了Python自动建模的准确性。采用Python脚本自动进行参数化建模可以直接完成几何模型的建立、材料的创建、截面划分与截面属性指派,可以明显提高仿真建模的效率与准确性,特别在层压板复合层数较大时优势更为明显。
3 结论
本文利用Python语言对ABAQUS进行了二次开发,通过运行脚本文件完成了层压板自动参数化建模、层板材料的创建与材料属性的赋予。通过与手动创建的相同模型进行同一条件下的仿真分析对比可知,利用Python自动创建模型的准确、有效,大大提高了多层复合层压板的仿真建模效率与准确性。在后续仿真分析过程中,如需对模型结构进行修改,只需调整脚本文件中的部分代码或数值即可完成模型更新,提高了仿真分析的效率。
参考文献:
[1]邢丽英,包建文,礼嵩明,等. 先进树脂基复合材料发展现状和面临的挑战[J]. 复合材料学报, 2016, 33(7):1327-1338.
[2]袁慧秀,窦松柏,孙胜平,等. 碳纤维复合材料层压板开孔拉伸静态力学测试研究[J]. 陶瓷学报, 2014, 35(2):159-162.
[3]郑俊,周晚林,姜鑫. 复合材料层压板损伤修复与评估[J]. 机械制造与自动化, 2018, 47(1):84-87.
[4]王龙,段静波,路平. 基于USDFLD二次开发的复合材料层压板损伤分析研究[J]. 军械工程学院学报, 2016, 28(2):72-78.
[5]吴向东,刘志刚,万敏,等. 基于Python的ABAQUS二次开发及在板料快速冲压成形模拟中的应用[J]. 塑性工程学报, 2009, 16(4):68-72.
[6]陈彦海,秦运海,姜春英,等. 基于Python的ABAQUS二次开发在飞机蒙皮锤铆中的应用[J]. 航空制造技术, 2018, 61(16):92-97.
[7]董明鑫. 基于Visual C++与ABAQUS二次开发的过程模拟系统开发[D]. 太原:太原科技大学,2014.
转载请注明来自:http://www.qikan2017.com/lunwen/lig/15186.html
相关论文阅读
- 2022-11-28不动产测绘特点及测绘技术分析
- 2022-09-28新基建的核心是重构产业基础设施
- 2022-09-19“一带一路”倡议下交通运输业与物流业的联动发展分析
- 2022-09-17地下工程智能施工信息管理系统研发与应用
- 2022-09-17工程师论文发表浅析工程管理中资料的重要性
- 2022-07-19边坡支挡结构岩土荷载的分项系数计算方法
- 2022-07-16建筑智能化技术在建筑给排水工程中的应用
- 2022-07-13日本高校档案馆调查研究职能的特点及启示
- 2022-07-09建筑电气自动化控制技术探讨
- 2022-07-07绿色建筑玻璃幕墙设计方法探析
期刊论文问答区
- 2024-04-232023年版(第十版)北大核心中文核心期刊目录的大看点
- 2024-04-18提高发表论文成功率,不妨试试这些方法
- 2024-04-02sci作者排序以投稿系统为主还是以手稿排序为主
- 2024-01-03Cell Death & Disease期刊发表论文解读
- 2024-01-032023最新期刊分区表大类21个小类254个
- 2023-12-282023年中科院期刊分区表正式发布!快来看看
- 2023-12-25圣诞元旦英文论文审稿变慢是真的吗?答案是真的
- 2023-11-162023年智能电网与能源工程EI会议推荐
- 2023-11-09SCI期刊投稿经验-各种状态解读
- 2023-11-06税务研究杂志的论文发表要求
优质科技期刊
- 1核心级《公路工程》
- 2核心级《中外公路》
- 3核心级《遥感技术与应用》
- 4核心级《电子测量技术》
- 5核心级《无线电工程》
- 6核心级《公路交通科技(应用技术版)》
- 7核心级《实验室研究与探索》
- 8核心级《交通运输工程学报》
最新期刊更新
- 《中国政府采购》
- 《中国政府采购》
- 《农业图书情报学刊》
- 《农业技术经济》
- 《水文地质工程地质》
- 《房地产世界》
- 《中央民族大学学报:哲》
- 《广州化学》
- 《物理学报》
- 《东方宝宝》
- 《新能源进展》
- 《热带农业科学》
- 《建筑经济》
- 《中国学校卫生》
精品推荐
- 12022-11-28不动产测绘特点及测绘技术分析
- 22022-09-28新基建的核心是重构产业基础设施
- 32022-09-19“一带一路”倡议下交通运输业与物流业的联动发展分析
- 42022-09-17地下工程智能施工信息管理系统研发与应用
- 52022-09-17工程师论文发表浅析工程管理中资料的重要性
- 62022-07-19边坡支挡结构岩土荷载的分项系数计算方法
- 72022-07-16建筑智能化技术在建筑给排水工程中的应用
- 82022-07-13日本高校档案馆调查研究职能的特点及启示
- 12021-12-30如何做好重大建设项目防造假工作的几点思考
- 22022-02-15菜鸟物流运营模式的改进策略分析
- 32018-08-04铝合金表面黑线成因分析
- 42019-01-23乡村振兴战略与精准脱贫之间的辩证关系
- 52019-01-16中国物流的发展以及优劣势分析
- 62020-06-29一起浪涌保护器引起的变压器烧毁事故原因分析及应对措施
- 72019-12-17纯电动汽车减速器齿轮啮合错位分析
- 82019-12-11DNA四面体纳米材料及其功能化研究进展
- 12024-05-154本生物医学领域的期刊,有SCIE也有ESCI
- 22024-05-15ssci收录经济学领域高分期刊Oeconomia Copernicana
- 32024-04-28录用率高、检索稳定计算机科学类SSCI期刊推荐:Systems
- 42024-04-23Sensors主办第十一届传感器与应用国际电子会议 (ECSA-11) 开放征稿中
- 52024-04-232023年版(第十版)北大核心中文核心期刊目录的大看点
- 62024-04-18提高发表论文成功率,不妨试试这些方法
- 72024-04-11AHCI哲学类期刊VERIFICHE
- 82024-04-02sci作者排序以投稿系统为主还是以手稿排序为主
- 12021-05-24刊号字母G、G0、G1、G2、G3、G4、G8是什么意思
- 22021-05-06论文引用率不能超过多少
- 32018-09-11语法翻译法的运用以及优缺点分析
- 42020-03-08发表在期刊上的论文一般多少字
- 52020-09-21疾控中心工作怎么评职称
- 62020-01-03新北大核心什么时候更新,几年更新一次
- 72020-03-08通讯作者和二作哪个含金量比较高
- 82021-02-23发表的期刊论文见刊的时候可以在知网查到吗