1. 引言
机械产品一体化旨在将建模、仿真、优化等紧密结合到一个统一的平台中,消除设计到分析的繁琐转换步骤,提高工作效率。它的核心目标是直接在机械模型上执行仿真和优化,从而简化工作流程、提升精度并实现快速迭代。在传统的机械产品设计流程中,设计模型常需要经过几何简化和网格划分,而一体化设计方法通过等几何分析(isogeometric analysis, IGA)等技术,直接在精确的几何模型上进行分析,实现CAD (computer aided design)/CAE (computer aided engineering)的结合,显著减少了模型处理步骤,并提高了设计数据的兼容性。
现有的各种一体化设计方法,主要在材料结构功能性能等设计要素的一体化[1] [2]和建模仿真优化设计过程的一体化[3] [4]两个方面。Wang等[5]提出了一个用于机床结构设计的CAD/CAE一体化框架,通过拓扑结构建模和特征映射集成CAD/CAE,实现两阶段设计优化。框架在保证机床刚度的前提下,显著减少机器重量,提高设计效率和质量。Feng等[6]提出一种混合自动化方法,通过特征识别、拓扑和虚拟拓扑操作简化CAD模型,以适应CAE需求,实现设计与仿真的集成,提高了设计效率和模型质量。Hadj等[7]提出基于CAD数据的CAD/CAE互操作流程,开发了名为CADLAB的系统。该系统可自动识别和生成CAD装配模型的组件、约束数据等,使用SysML建模并通过商业软件实现,支持CAD/CAE应用间的数据无缝传输。Yoo等[8]提出了一个深度学习驱动的CAD/CAE框架,用于自动生成和评估3D概念设计。框架包括生成设计、降维、CAD/CAE自动化和转移学习等步骤,提高设计师和工程师协作效率。部分工业软件通过在同一平台上整合设计、仿真、优化等功能,促进更快速的产品开发,提高机械产品的一体化程度。Coreform Flex [9]采用等几何分析(IGA)技术,直接使用CAD模型进行仿真,支持自动网格创建和非线性多物理场仿真,简化仿真准备过程,适用于复杂几何模型的快速仿真分析。Ansys Workbench [10]集成CAD/CAE设计,支持多种CAD导入、自动网格划分、多物理场分析和参数化优化,帮助设计师在同一平台完成设计与仿真,提高开发效率和质量。犀牛(Rhino) [11]通过Grasshopper插件实现参数化建模的高度灵活性,并借助OpenNURBS库确保模型数据在多种设计与仿真工具间无缝交换。提升产品设计的效率和精度,有利于产品的一体化集成。
上述方法虽然提高了CAD到CAE之间数据转换的效率,但并未完全实现CAD和CAE的一体化,在当前一体化进程中,存在一些待解决的问题:
1) 不同数据格式的数据表达不同,在转换过程中仍会出现细节丢失问题。
2) 由于设计域的表达需求不一致导致的连续性问题、设计特征不一致导致的特征转换智能性问题。
3) 设计过程中数据传递导致的过程集成性问题,使得描述边界的几何表达、重点描述空间位置相关的材料表达、边界和空间状态均需描述的性能表达未能实现统一,并进而造成建模、仿真与优化、制备过程难以集成。
针对上述问题,本文设计了基于等几何分析的机械产品一体化流程。流程依赖于基于体参数化和等几何分析的一体化设计方法,利用非均匀有理B样条(non-uniform rational B-spline, NURBS)实现模型的构建与分析,从根源上实现了建模仿真优化制备过程中的数据格式统一;同时体参数化模型是几何连续参数化表达的最高形式,具有以下优势:能够保持全域光顺性和连续性、具备强大的外部形状和内部实体表达能力、占用较少的存储空间等[12];通过采用统一的NURBS基函数,实现基于体参数化模型的统一表达而无需转换。等几何分析方法能够构建性能域、几何域、材料域的参数之间的解析关系,满足了数据集成性[13]。因此,流程基于体参数化的表达,实现性能与材料的参数化表达,从而实现设计模型的参数化表达,进而能够实现建模仿真优化阶段的完全无缝集成。
2. 等几何分析基础理论
2.1. NURBS基础理论
NURBS是一种广泛应用于计算机图形学、CAD和CAE中的数学表示方法,用于描述和生成曲线和曲面。NURBS结合了B样条曲线和有理函数的优点,因此具有很强的灵活性和表达能力。使用体参数造型方法进行建模时,为适用于等几何分析,需要将模型分割成若干个四边形或六面体。本文以三维模型为例,将复杂的体模型划分成六面体,一个三维参数域上的NURBS体
表示为:
(1)
其中,
、
和
表示参数变量用于定义曲面的参数域,
、
和
分别为
、
和
方向上的控制点数量−1,
表示NURBS体中第
个控制点,
表示为三元NURBS基函数:
(2)
其中
,
和
分别表示关于参数
、
和
的B样条基函数,
、
和
表示基函数的次数,
为控制点
对应的权重。
2.2. 离散平衡方程
为了求解在有限元分析中遇到的弹性问题,需要运用到离散平衡方程构造刚度矩阵,方程可表示为:
(3)
其中
为全局刚度矩阵,
为位移矢量,
为载荷矢量。全局刚度矩阵
由单元刚度矩阵
组成,公式如下:
(4)
其中
为应变位移矩阵,
为材料弹性矩阵,
、
和
分别为物理空间、参数空间和积分空间。雅可比矩阵
表示将NURBS参数空间映射到物理空间的变换关系,
表示从积分空间映射到NURBS参数空间的变换关系。
3. 一体化流程设计
3.1. 模型数据结构
为了满足一体化流程中模型数据通用的需求,设计了体参数化模型数据结构。根据2.1中NURBS理论基础可知,NURBS控制点除了位置信息之外,还包含权重因子,由此创建CtrlPt4d类存储模型控制点信息,包含_x、_y、_z、_w四个公共成员;创建N_Curve类存储NURBS曲线信息,包含u方向次数、u方向节点矢量、控制点、u方向控制点个数四个公共成员;创建N_Surface类存储NURBS面信息,包含u/v方向次数、u/v方向节点矢量、控制点、u/v方向控制点个数七个公共成员;创建N_Volume类存储NURBS体信息,包含u/v/w方向次数、u/v/w方向节点矢量、控制点、u/v/w方向控制点个数十个公共成员,如表1所示。
Table 1. Volume parameterized model data structure
表1. 体参数化模型数据结构
NURBS数据 |
类名 |
公共成员 |
控制点 |
CtrlPt4d |
_x/_y/_z/_w |
NURBS曲线 |
N_Curve |
_u_Degree/_u_Knots/_u_Num/_CtrlPts |
NURBS面 |
N_Surface |
_u_Degree/_u_Knots/_u_Num _v_Degree/_v_Knots/_v_Num/_CtrlPts |
NURBS体 |
N_Volume |
_u_Degree/_u_Knots/_u_Num _v_Degree/_v_Knots/_v_Num _w_Degree/_w_Knots/_w_Num/_CtrlPts |
该数据结构支持拉伸、扫描、放样等模型特征操作,可以很好地支持常规建模流程。以平移扫描函数CreateTransSweepSplineVolume为例,该函数通过张量积扩展,将二维NURBS曲面沿第三维路径扫描,生成三维参数化体。传入参数为扫描路径pathT和NURBS面nurbsSF,具体流程如下:
1) 方向参数继承:
UV方向直接继承起始截面nurbsSF的度数_u_Degree、_v_Degree,控制点数量_u_Num、_v_Num和节点矢量_u_Knots、_v_Knots。W方向(扫描方向)继承扫描路径pathT的度数_w_Degree、控制点数量_w_Num和节点矢量_w_Knots。
2) 控制点生成:
首先使用双层循环遍历:外层循环遍历扫描路径pathT的每个控制点(i索引)。内层循环遍历起始截面nurbsSF的每个控制点(j索引)。
然后对每个新控制点N_CtrlPts进行几何位置计算:将起始截面的控制点nurbsSF。_CtrlPts平移至扫描路径的当前位置,确保截面沿路径对齐。即:
(5)
最后对每个新控制点进行权重计算:新控制点的权重为起始截面控制点权重与扫描路径控制点权重的乘积:
(6)
该操作符合NURBS张量积参数化规则,确保权重随路径变化连续过渡。
3) 数据存储:
将生成的所有新控制点按顺序存入m_CtrlPts,形成三维NURBS体的控制点网格。
基于该数据结构,实现了体参数化模型的查询、插入、细化与删除等操作,实现了快速查询、深度遍历、模型修改和广度遍历等操作。该数据结 构能够有效表达体参数化模型,并且基于该数据结构的操作具有良好的时间和空间效率,为复杂体参数化模型的构建及应用提供了良好的支撑。该数据结构不仅支持高效模型操作,还可直接用于后续等几何分析,是建模仿真流程互通的基础。
3.2. 交互式建模
交互建模模块通过交互式建模操作,间接生成N_Volume类数据,进而生成体参数化模型。交互式建模(Interactive Modeling)是一种在建模过程中实时与系统进行交互的方式,允许用户通过调整参数、操控对象或输入数据来动态地影响模型的生成或行为。用户能够在反馈中不断优化模型,提高可控性和直观性。
为了实现这一功能,在Qt窗口和OpenGL的渲染环境下,实现了体参数化模型的渲染显示。并运用射线法(Ray-Shooting Method)相关原理,实现了在交互界面上对体参数化模型特征点、线、面、体的拾取。射线法的主要原理是在交互窗口上点击鼠标,将此时的摄像机位置(观察视角)坐标与鼠标坐标在三维坐标空间中连接并延长,形成一条射线,然后将该射线与渲染窗口中的可交互对象求交,判断是否有交点,交点所在特征即为要选择的特征。
完成特定可交互对象(比如面)的选取后,即可通过交互窗口开始草图绘制。首先使用基本绘制工具绘制草图基本元素(直线、矩形、圆等),绘制预期草图轮廓。为了适应等几何分析,体参数化模型需采用零亏格的双变量张量曲面或三变量张量体,并确保相邻体参数化片共享相同的公共曲面或曲线。因此,对于存在亏格或非双变量张量的曲面,需要进行区域划分,以获得拓扑上为凸四边形的曲面表达。为达成这一目的,通过曲多边形四边剖分算法[14]将草图轮廓剖分,得到多个合法的体参数化模型表面。
最后,在合法的模型表面的基础上,即可进行特征的构造,在交互窗口中选择特征类型(如拉伸、旋转、放样等)和特征参数(如长度、路径等),进行特征构建。如3.1中所示,交互建模功能和数据结构协同,动态生成新的N_Volume类数据。进而生成相应的体参数化模型,用于后续的分析和优化流程,如图1所示。
3.3. 等几何拓扑优化
等几何拓扑优化模块直接读取N_Volume类数据,利用NURBS基函数连续性避免传统网格依赖问题。拓扑优化作为一种结构优化方法,在设计域内结合边界条件、载荷等约束因素,合理计算材料的最优分布。从拓扑表达来看,拓扑优化方法主要分为用材料描述模型和用边界描述模型两大类。其中,材料描述模型主要基于对结构内部材料分布的优化,代表性方法包括:均匀化方法[15],该方法通过微观结构均匀化理论,寻找周期性微结构的最优分布;变密度法(SIMP) [16],通过引入连续的材料密度变量,实现从全材料到无材料的优化;渐进结构优化法(ESO) [17],通过逐步移除对结构贡献较小的材料单元,实现拓扑演化。而边界描述模型主要关注结构边界的形态演变,典型方法包括水平集法(LSM) [18],利用隐式函数描述边界,避免网格依赖问题;可移动变形组件法(MMC) [19],通过对预定义的可变形组件进行优化,直接调整结构形态。
传统的拓扑优化方法在数值计算过程中可能会出现棋盘格现象(checkerboard patterns)和孤岛现象(island formation) [20],导致优化结果在制造过程中难以实现。等几何分析(IGA)的引入有效提高了数值分析的精度和效率,避免了网格依赖问题,同时保证了优化过程的几何连续性。因此,本文采用基于等几何分析(IGA)的SIMP方法求解材料的最佳分布,以充分发挥IGA在优化计算中的优势,提升结构设计的合理性和制造可行性。
Figure 1. Interactive modeling process example
图1. 交互式建模过程示例
等几何分析的SIMP法,在体积约束下,以最小柔度为优化目标,获取材料的最佳分布。在控制点上设置伪密度,其值为0到1,1代表有材料,0代表无材料。单元密度由单元中心点密度表示:
(7)
其中
表示第
个单元的密度,
表示第
个单元的中心点密度,
为影响第
个单元的控制点集合,
为集合
中的第
个控制点对应的基函数,
为集合
中的第
个控制点对应的密度。
在材料为各向同性时,单元弹性模量可以表示为:
(8)
其中
为单元密度,
为惩罚因子,不同的取值具有不同的惩罚效果,惩罚因子越大,其惩罚效果越好,同时也容易带来棋盘格问题,为此s一般取值为3。
为材料弹性模量,
为最小弹性模量,用来避免刚度矩阵在计算时出现奇异,本文取值为
。
建立以体积为约束条件,以最小柔度为优化目标的优化方程组如下:
(9)
其中
为控制点密度的集合,
为控制点个数,
为优化目标柔度。
为优化前的初始体积,
为优化后的体积,
为体积分数,作为优化的约束条件。在整个优化过程中都处于弹性范围内,满足平衡方程
。
在建立完优化方程组之后,通过MMA算法[21]对设计变量进行更新迭代,直至满足迭代终止条件,获得最佳密度分布。本文设置的终止条件为迭代次数大于200或者连续两次的控制点密度变化最大绝对值小于0.01。
4. 一体化实例
以MBB梁为例,其几何尺寸、边界条件和受力方式如图2所示。MBB梁的长宽高分别20 mm、10 mm和10 mm,下底面的左右两边界线处固定,上端面的中线处受到F = 8 N的线载荷。
Figure 2. MBB beam geometric model
图2. MBB梁几何模型
在一体化流程中,首先通过交互式建模构造MBB梁模型。为了适应拓扑优化的需要,模型需要增加大量结点。该模型在X、Y和Z轴方向的结点矢量分别为
、
和
,次数均为2,如图3所示。
Figure 3. MBB beam volume parametric model
图3. MBB梁体参数化模型
交互建模构造出的体参数化模型可以直接进行等几何分析和优化,在杨氏模量
和泊松比
的条件下,分析得到Z轴方向的位移分布如图4所示,应力分布如图5所示。
Figure 4. The displacement distribution of MBB beam in Z direction
图4. MBB梁Z方向的位移分布
Figure 5. The stress distribution of MBB beam in Z direction
图5. MBB梁Z方向的应力分布
在节约材料同时保证模型的刚度的需求下,以最小柔度为目标,采用基于等几何分析的SIMP法来获取密度分布。在体积分数为50%的约束条件下,以最小柔度为优化目标的迭代过程如图6所示。柔度由最初的迅速下降,逐渐下降缓慢直至收敛,而体积分数在整个过程中保持不变。经过44次迭代,柔度由721.25 mJ降低到324.52 mJ,下降了55%。与初始结构相比,优化后的模型具有良好的刚度。
研究提出的基于等几何分析的机械产品一体化流程,在本案例中展现出高效的计算性能。流程总耗时206 s。在模型生成与分析流程中,排除简单的交互过程后,模型构建与初始分析耗时仅26秒。在拓扑优化阶段中,单次迭代耗时3~5秒(均值4.09秒),总优化时间为180秒。
Figure 6. Topology optimization iteration of MBB beam
图6. MBB梁拓扑优化迭代
5. 结论
本文设计了一种基于等几何分析的机械产品一体化流程,该流程首先在NURBS体参数化模型数据结构的基础上,在Qt窗口和OpenGL的渲染环境下实现了模型的显示和交互拾取。设计了一套交互式建模流程,可以实现基本元素的草图绘制和特征变换,得到体参数化模型数据。随后运用等几何分析理论,对得到的体参数化模型进行分析。最后为满足节省材料同时保证结构刚度的设计需求,流程采用基于等几何分析的SIMP法对模型进行拓扑优化。以MBB梁为例,在体积分数为50%的约束下,柔度降低了55%。在整个一体化流程中,通过统一的NURBS体参数化数据模型,避免了传统CAD/CAE数据转换的中间步骤,显著缩短了前处理时间。本方法的创新点和优势总结如下:
1) 统一NURBS数据模型:从建模到优化全程避免数据转换,减少离散误差。
2) 交互式建模与IGA无缝集成:通过射线法拾取与体参数化操作,实现动态设计优化。
3) 基于IGA的SIMP改进:利用NURBS基函数连续性抑制棋盘格现象,提升优化结果的可制造性。