连杆的形状优化

2024-02-08 07:04
文章标签 优化 形状 连杆

本文主要是介绍连杆的形状优化,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

前言

本示例使用优化模块在不改变连杆体积的情况下将连杆中的应力集中降至最低。

本页讨论

  • 前言
  • 应用描述
  • Abaqus建模方法和仿真技术
  • 文件
  • 参考


应用描述

此示例说明了连杆的形状优化。形状优化对曲面节点在设计区域中的位置进行轻微修改,以实现优化的解决方案。形状优化通常在设计过程结尾应用,此时组件的总体轮廓是固定的,并且只允许进行微小的更改。

  1. 几何形状
    连杆模型是一个使用线性四面体(C3D4)单元进行网格划分的单个孤立网格零件,连杆关于X–Z平面对称。
  2. 材料
    连杆由杨氏模量为210GPa、泊松比为0.3、密度为7800kg/m3的弹性材料制成。
  3. 边界条件和荷载
    小端的中心节点的位移在x和y方向上受到约束,并且中心节点的旋转在y和z方向上受到约束。对于大端的中心节点,x和z方向上的位移以及y和z方向的旋转受到约束。
    在第一个分析步中,连杆的小端的中心节点受到沿z方向的25000N的载荷。
    在第二个分析步中,连杆的小端的中心节点收到沿z方向的-2000N的载荷,连杆的大端的中心节点受到沿y方向的1750 N的载荷。此外,绕x轴0.004弧度的旋转作用在大端的中心节点。
  4. 优化特征
    形状优化的配置如以下各节所述。
  • 优化任务
    本例创建了一个形状优化任务,为了确保最终设计中的单元质量良好,将网格平滑应用于设计区域中的单元。
  • 设计区域
    模型的设计区域是在优化过程中要修改的区域,如图1所示。某些区域被排除在设计区域之外,因为它们是固定和施加载荷所必需的。图1 设计区域
  • 设计响应
    每个分析步中设计区域内的最大von Mises应力作为设计响应,第三设计响应为设计区域的体积。
  • 目标函数
    目标函数确定两个设计响应中哪一个导致设计节点中最大的von Mises应力。然后,目标函数试图使该设计响应的最大von Mises应力最小化。
  • 约束条件
    体积设计响应被配置为单个优化约束,使得设计区域的总体积在优化过程中保持不变。
  • 几何限制
    该示例通过定义脱模控制几何限制引入了铸造限制,这些几何限制应用于正x方向和负x方向上设计区域的每一半中的节点。图2说明了在正x方向上一半设计区域应用的脱模控制几何限制。
    图2 脱模控制几何限制

Abaqus建模方法和仿真技术

此示例以孤立网格的形式从输入文件导入模型。输入文件包含单元集合,这些单元集合定义了优化所使用的模型区域,例如设计区域和冻结区域。该示例创建了一个具有15个设计循环的全局停止标准的优化过程。为了保持曲面单元的质量,将网格平滑应用于设计区域,从而根据曲面节点的移动调整内部节点的位置。

  • 分析类型
    分析包括两个静态,通用分析步。
  • 约束条件
    连杆两端的中心节点通过运动耦合连接到连杆的支承表面。
  • 运行过程
    包含了一个Python脚本,该脚本使用Abaqus/CAE中的Abaqus脚本接口再现模型。Python脚本(conrod_shape_optimization.py)导入输入文件(connecting_rod.inp)并构建优化模型。Python脚本可以交互运行,也可以从命令行运行。脚本和输入文件都必须可以从您的工作目录中获得。
    脚本完成后,您可以使用优化模块来查看在Abaqus/CAE中创建的形状优化模型。要运行优化,您可以从作业模块中的优化进程管理器提交优化进程。您可以使用优化进程管理器来监控优化的进展,并在可视化模块中查看形状优化的结果。
  • 结果与讨论
    结果可以从优化过程创建的输出数据库文件中获得。分析步包含了与优化进程中15个设计循环相对应的15次优化迭代。图3显示了15个设计循环内两种载荷情况下的von Mises应力设计响应的历史输出图,历史输出图还显示了体积设计响应,该响应在整个优化过程中保持不变。
    曲面节点在设计区域中的位置经过优化,以便对于指定的体积约束和几何限制,在导致最大应力的载荷情况下,冯-米塞斯应力最小化。在本例中,在第一个分析步中施加到小端的25000N载荷导致连杆中的最高von Mises应力。因此,目标函数在第一个分析步中调整表面节点以减少最大冯-米塞斯应力,尽管最终优化的形状允许冯-米西斯应力在第二个分析步的载荷条件下略有增加。
    图3  设计响应(von Mises应力和体积)
    图4显示了第一种载荷情况下的初始von Mises应力分布以及15个设计循环后的应力分布变化。
    图4 第一种荷载工况下优化前(左)和优化后(右)的von Mises应力分布
    图5显示了第二种载荷情况下优化前后的von Mises应力分布图。
    图5 第二种荷载工况下优化前(左)和优化后(右)的von Mises应力分布

文件

conrod_shape_optimization.py
使用connecting_rod.inp创建模型和优化属性的脚本。
connecting_rod.inp
创建孤立网格连杆和优化所使用的单元集合的输入文件。

参考

Bakhtiary, N., and P. Allinger, “A New Approach for Size, Shape and Topology Optimization,” SAE International Congress and Exposition, Detroit, Michigan, USA, February 26–29, 1996.

这篇关于连杆的形状优化的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/690251

相关文章

SpringBoot中HTTP连接池的配置与优化

《SpringBoot中HTTP连接池的配置与优化》这篇文章主要为大家详细介绍了SpringBoot中HTTP连接池的配置与优化的相关知识,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一... 目录一、HTTP连接池的核心价值二、Spring Boot集成方案方案1:Apache HttpCl

PyTorch高级特性与性能优化方式

《PyTorch高级特性与性能优化方式》:本文主要介绍PyTorch高级特性与性能优化方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、自动化机制1.自动微分机制2.动态计算图二、性能优化1.内存管理2.GPU加速3.多GPU训练三、分布式训练1.分布式数据

MySQL中like模糊查询的优化方案

《MySQL中like模糊查询的优化方案》在MySQL中,like模糊查询是一种常用的查询方式,但在某些情况下可能会导致性能问题,本文将介绍八种优化MySQL中like模糊查询的方法,需要的朋友可以参... 目录1. 避免以通配符开头的查询2. 使用全文索引(Full-text Index)3. 使用前缀索

C#实现高性能Excel百万数据导出优化实战指南

《C#实现高性能Excel百万数据导出优化实战指南》在日常工作中,Excel数据导出是一个常见的需求,然而,当数据量较大时,性能和内存问题往往会成为限制导出效率的瓶颈,下面我们看看C#如何结合EPPl... 目录一、技术方案核心对比二、各方案选型建议三、性能对比数据四、核心代码实现1. MiniExcel

MySQL索引的优化之LIKE模糊查询功能实现

《MySQL索引的优化之LIKE模糊查询功能实现》:本文主要介绍MySQL索引的优化之LIKE模糊查询功能实现,本文通过示例代码给大家介绍的非常详细,感兴趣的朋友一起看看吧... 目录一、前缀匹配优化二、后缀匹配优化三、中间匹配优化四、覆盖索引优化五、减少查询范围六、避免通配符开头七、使用外部搜索引擎八、分

Python通过模块化开发优化代码的技巧分享

《Python通过模块化开发优化代码的技巧分享》模块化开发就是把代码拆成一个个“零件”,该封装封装,该拆分拆分,下面小编就来和大家简单聊聊python如何用模块化开发进行代码优化吧... 目录什么是模块化开发如何拆分代码改进版:拆分成模块让模块更强大:使用 __init__.py你一定会遇到的问题模www.

SpringBoot首笔交易慢问题排查与优化方案

《SpringBoot首笔交易慢问题排查与优化方案》在我们的微服务项目中,遇到这样的问题:应用启动后,第一笔交易响应耗时高达4、5秒,而后续请求均能在毫秒级完成,这不仅触发监控告警,也极大影响了用户体... 目录问题背景排查步骤1. 日志分析2. 性能工具定位优化方案:提前预热各种资源1. Flowable

SpringBoot3实现Gzip压缩优化的技术指南

《SpringBoot3实现Gzip压缩优化的技术指南》随着Web应用的用户量和数据量增加,网络带宽和页面加载速度逐渐成为瓶颈,为了减少数据传输量,提高用户体验,我们可以使用Gzip压缩HTTP响应,... 目录1、简述2、配置2.1 添加依赖2.2 配置 Gzip 压缩3、服务端应用4、前端应用4.1 N

Spring Boot + MyBatis Plus 高效开发实战从入门到进阶优化(推荐)

《SpringBoot+MyBatisPlus高效开发实战从入门到进阶优化(推荐)》本文将详细介绍SpringBoot+MyBatisPlus的完整开发流程,并深入剖析分页查询、批量操作、动... 目录Spring Boot + MyBATis Plus 高效开发实战:从入门到进阶优化1. MyBatis

MyBatis 动态 SQL 优化之标签的实战与技巧(常见用法)

《MyBatis动态SQL优化之标签的实战与技巧(常见用法)》本文通过详细的示例和实际应用场景,介绍了如何有效利用这些标签来优化MyBatis配置,提升开发效率,确保SQL的高效执行和安全性,感... 目录动态SQL详解一、动态SQL的核心概念1.1 什么是动态SQL?1.2 动态SQL的优点1.3 动态S