一:本模型为abaqus2022版本绘制的增材制造仿真模型。 二:本模型为44层的空心截面矩形模型具体的尺寸如图所示。最近在折腾金属增材制造的数值模拟用Abaqus2022做了个44层的空心矩形模型。这个结构有点像工业上常见的薄壁支撑件别看最后模型效果挺清爽调试过程真是掉了一把头发。先说模型骨架截面外框尺寸是200x150mm壁厚均匀保持8mm。整个模型像搭积木一样分44次堆叠每层高度0.5mm总高度22mm。这里有个坑要注意——层间温度场的继承问题用生死单元搞不好就会出现冷焊的异常现象。材料参数设置脚本片段mdb.models[AM_Model].Material(nameIN718) mdb.models[AM_Model].materials[IN718].Density(table((8.2e-09, ), )) mdb.models[AM_Model].materials[IN718].Elastic(table((200000.0, 0.3), )) # 热膨胀系数随温度变化的骚操作 mdb.models[AM_Model].materials[IN718].Expansion( table((20.0, 1.2e-05), (500.0, 1.35e-05), (800.0, 1.5e-05)) )这段代码里藏着三个魔鬼细节密度单位要换算成吨/mm³、弹性模量单位MPa直接输入数值、热膨胀系数要分段设置。特别是那个1e-05量级手滑多写个零整个应力场就翻车。一:本模型为abaqus2022版本绘制的增材制造仿真模型。 二:本模型为44层的空心截面矩形模型具体的尺寸如图所示。沉积路径控制是另一个重头戏。我们采用回字形扫描策略每层分四个区域交替打印。用Python写了个路径生成器def generate_path(layer_num): offset 0.2 * (layer_num % 4) # 每层偏移20%线宽 path_points [ (100.0 offset, 75.0 offset), (100.0 - offset, 75.0 - offset), ... # 具体坐标省略 ] return path_points这个偏移策略能有效避免连续层间热积累实测比等距堆叠的温度峰值降低了15%左右。不过要注意当offset超过壁厚时会打穿边界所以用layer_num%4来循环复位。后处理时发现第17层和31层出现应力突变检查发现是这两层的散热条件设置异常。后来在环境相互作用模块加了强制对流mdb.models[AM_Model].FilmCondition( nameCooling_str(layer), createStepNameDeposit_str(layer), surfaceall_external_faces, filmCoeff25.0, # 对流系数 sinkTemp20.0 )这个25的膜系数是经过多次试错确定的数值大了会失真小了散热不够。有意思的是实际车间的风扇直吹工况下这个值可能飙到40但仿真时反而要调低——因为模型简化了辐射散热的影响。最后说个血的教训千万别在Windows任务管理器里强杀Abaqus进程有次计算到38层时卡死强行结束进程导致cae文件损坏。现在乖乖用Linux系统跑计算配合定时输出重启动文件妈妈再也不用担心我的模型崩溃了。
手把手拆解44层金属打印Abaqus仿真模型
一:本模型为abaqus2022版本绘制的增材制造仿真模型。 二:本模型为44层的空心截面矩形模型具体的尺寸如图所示。最近在折腾金属增材制造的数值模拟用Abaqus2022做了个44层的空心矩形模型。这个结构有点像工业上常见的薄壁支撑件别看最后模型效果挺清爽调试过程真是掉了一把头发。先说模型骨架截面外框尺寸是200x150mm壁厚均匀保持8mm。整个模型像搭积木一样分44次堆叠每层高度0.5mm总高度22mm。这里有个坑要注意——层间温度场的继承问题用生死单元搞不好就会出现冷焊的异常现象。材料参数设置脚本片段mdb.models[AM_Model].Material(nameIN718) mdb.models[AM_Model].materials[IN718].Density(table((8.2e-09, ), )) mdb.models[AM_Model].materials[IN718].Elastic(table((200000.0, 0.3), )) # 热膨胀系数随温度变化的骚操作 mdb.models[AM_Model].materials[IN718].Expansion( table((20.0, 1.2e-05), (500.0, 1.35e-05), (800.0, 1.5e-05)) )这段代码里藏着三个魔鬼细节密度单位要换算成吨/mm³、弹性模量单位MPa直接输入数值、热膨胀系数要分段设置。特别是那个1e-05量级手滑多写个零整个应力场就翻车。一:本模型为abaqus2022版本绘制的增材制造仿真模型。 二:本模型为44层的空心截面矩形模型具体的尺寸如图所示。沉积路径控制是另一个重头戏。我们采用回字形扫描策略每层分四个区域交替打印。用Python写了个路径生成器def generate_path(layer_num): offset 0.2 * (layer_num % 4) # 每层偏移20%线宽 path_points [ (100.0 offset, 75.0 offset), (100.0 - offset, 75.0 - offset), ... # 具体坐标省略 ] return path_points这个偏移策略能有效避免连续层间热积累实测比等距堆叠的温度峰值降低了15%左右。不过要注意当offset超过壁厚时会打穿边界所以用layer_num%4来循环复位。后处理时发现第17层和31层出现应力突变检查发现是这两层的散热条件设置异常。后来在环境相互作用模块加了强制对流mdb.models[AM_Model].FilmCondition( nameCooling_str(layer), createStepNameDeposit_str(layer), surfaceall_external_faces, filmCoeff25.0, # 对流系数 sinkTemp20.0 )这个25的膜系数是经过多次试错确定的数值大了会失真小了散热不够。有意思的是实际车间的风扇直吹工况下这个值可能飙到40但仿真时反而要调低——因为模型简化了辐射散热的影响。最后说个血的教训千万别在Windows任务管理器里强杀Abaqus进程有次计算到38层时卡死强行结束进程导致cae文件损坏。现在乖乖用Linux系统跑计算配合定时输出重启动文件妈妈再也不用担心我的模型崩溃了。