基于NX 二次开发的方向盘分型面自动设计

2023-09-20 11:54王齐东仲梁维
农业装备与车辆工程 2023年9期
关键词:压铸模二次开发方向盘

王齐东,仲梁维

(200093 上海市 上海理工大学 机械工程学院)

0 引言

模具的分模设计就是将工件分为型芯型腔的过程,型芯型腔的质量取决于分型面的设计。通常分型面设计依赖设计师的经验,利用NX 等三维软件通过拉伸、曲线网格、修剪与延伸等命令手动完成,效率较低。为提高生产效率,方向盘模具分型面设计的自动化、智能化势在必行。

在模具设计自动化方面,学者们在确定拔模方向和分型线的自动提取等方面均进行了研究[1-3]。在自动生成分型面方面,涂小文等[4]根据分型线的凸凹性,将组成分型线的线段按类型分组,对不同组按不同规则生成连续面片,但是该方法在空间曲线较为复杂时效率低,难以准确生成面片;王静等[5]提出了一种根据分模线不同类型、采用对应的模具体积块生成的方法,该实体分模方法的缺点是布尔运算有时无法生成型腔,导致无法分模。

本文针对上述方法的不足,结合企业模具设计经验,在给定方向盘拔模方向及分型线的前提下,提出一种基于规则与实例推理生成压铸模分型面的方法。分型面是基于分型线的形状设计的,分型线先分割离散为基本曲线,然后进行重组,形成拐角实例,通过匹配数据库已有的实例,找到对应的设计方案,形成该拐角的分型面,最后将各个拐角的分型面进行缝合,形成整个分型面。

1 基本方法

分型面的设计是一个“经验性强,理论性弱”的复杂过程[6],而采用基于规则与实例推理的方法能仿照手动制作分型面,可以通过借鉴和总结现有案例,解决分型面的设计困难问题。

压铸模的分型面是根据分型线具体形状进行设计的,利用曲线自身的切线信息(挠曲率等)将其离散分割重组后,一般可分为平面型分型线和空间混合型分型线。图1 所示为方向盘骨架压铸模型及其完整的分型线。

图1 方向盘骨架和分型线Fig.1 Steering wheel frame and parting line

平面型分型面根据平面分型线直接拉伸生成,因此按基于规则的方式设计,其原理是找到一个垂直于该分型线所附着实体表面的矢量,将分型线沿着该矢量进行拉伸。

复杂分型面形状变化很大,设计时无法遵循单一的规则,还需借助基于实例推理的设计方法。其过程是将成功的设计方案以实例的形式存储在实例库,然后在实例库匹配,设计时调用对应的分型面方案,若未检索到相似案例,则需手动完成设计。

基于规则与实例推理的分型面设计流程如图2 所示,步骤为:(1)将完成的设计案例存储在实例库中,提取这一类分型线的形状特征;(2)依据曲线自身形状,结合实例库常见的形状特征,离散分割分型线;(3)借助NX 二次开发技术,将不同形状特征的分型线与设计方案一一对应,分别设计不同的分型面方案;(4)识别分型线是否为平面型分型线,是则基于规则进行分型面设计;否则基于实例推理进行分型面设计,根据形状特征在实例库中匹配实例设计方案;(5)若匹配不到对应方案,则需要人工设计分型面。

图2 基于规则和实例推理的分型面设计流程图Fig.2 Flow chart of parting surface design based on rule and case reasoning

2 关键技术

2.1 NX 二次开发技术简介

Siemens NX 具有强大的CAD/CAM 功能,在模具行业运用广泛,NX 提供了NXOpenC(UG Open API)、NXOpenC++、NXOpen Python、NXOpen.Net 等多种开发方式,如图3 所示。

图3 NX 二次开发架构图Fig.3 NX secondary development architecture

UG Open API 是一系列库函数的集合,API 的核心包含约2 000 个C 函数,通过调用这些函数,用户可以建立、编辑、查询、修改UG 的各种实体对象;开发者通过调用这些函数实现特定的需要;通过UG Open API 编程几乎能够实现所有的造型功能。NXOpenC++面向对象开发、支持编辑等属性行为,几乎支持NX 所有的功能。NXOpen Python、NXOpen.Net 通过共享UG Open API 实现基本功能[7]。

NX 提供UIStyler 用户界面设计、MenuScript菜单脚本语言作为工具。UI Styler 是UG 自带的对话框界面编辑器,根据开发需求快速建立合适的对话框。本文使用NXOpenC 和NXOpenC++结合的方式开发。完整的NX 开发流程如图4 所示。

图4 NX 二次开发流程图Fig.4 Flow chart of NX secondary development

2.2 分割分型线

在分型线上进行点采样,根据分型线上采样点的特征信息,将曲线离散为由基本曲线段构成的多段线,进而得到由多个基本曲线组成的实例。

曲线点采样运用到了API 函数UF_MODL_ask_curve_props,该函数输入曲线的TAG(对象唯一标识符),以及点位于曲线的弧长百分比,输出曲线在该点的坐标、切线、主法线、副法线、挠率、曲率等数据。对这些点提供的数据进行参数分析,采用分割曲线构造器(Divide Curve Builder)进行曲线分割。分型线是连续的无参空间曲线,通过这种方法可以把曲线离散为样条、直线、圆弧等基本曲线,如图5 所示。

图5 分型线离散为基本曲线Fig.5 Parting line discretized into basic curves

曲线上的点采样UF_MODL_ask_curve_props 定义如表1 所示。

表1 曲线上的点采样函数定义Tab.1 Definition of point-on-curve sampling function

分割曲线构造器的伪代码如下:

曲线分割后,将基本曲线组合成实例。图6 所示为基本曲线组合成实例的简图(俯视图),其实例主要包括轮廓形状及其特征点信息。

图6 基本曲线组合的实例(俯视图)Fig.6 Example of basic curves combination (top view)

2.3 实例匹配

基本曲线组合成实例后,需要将其与已有实例进行匹配,这是一个曲线相似度问题[8]。本文采用实例已有特征结合曲线相似距离度量的方式[9],计算待匹配实例与现有实例的相似度,选出相似度最高的实例,并调用对应的分型面设计方案。

已有特征指的是在基本曲线组合成实例过程中,具体是几个数目的圆弧和直线组合成的实例,在实例都有记录,通过比对这些特征,衡量实例之间的匹配程度。

相似距离度量的策略是:实例是没有解析式的曲线,通过采样获得各自离散点集,再将分别代表不同实例的点集归一化处理,计算相似度则为计算经过处理后两个点集中对应点的距离问题。

待匹配实例曲线记为

同样的,已有实例曲线记为

则定义待匹配曲线和现有实例的相似度为

2 种方法各自占比权重为50%,最后计算得到最佳匹配实例。

2.4 分型面生成方案的设计

分型面的设计主要围绕以下经验原则进行:(1)尽可能减少不规则曲面;(2)避免薄铁;(3)有足够的平面承担分模压力。

在设计方向盘分型面时,并非所有的准则都能得到满足,在实际设计中,经常是采用拉伸的方式进行分型面的设计。表2 是部分实例及其对应的设计方案。

表2 部分实例及其设计方案Tab.2 Some examples and their design schemes

基于NX 二次开发技术,提供各种实例需要的设计方案,逐一将组合好的单个分型线段在实例库中匹配,选用合适的设计方案,然后将所有生成的单个分型面进行相应的修剪缝合,最后完成分型面的设计。

3 运用实例

基于本文所提出的方案,以C++为开发语言,NX10.0 为平台,借助VS2012 开发了一个方向盘压铸模分型面设计系统。图7 所示是利用菜单脚本(MenuScript)自定义的菜单,不仅与NX 无缝集成,而且可以方便调用所开发的程序。

图7 自定义菜单Fig.7 Custom menu

对于图8 的方向盘压铸模分型面设计,模型为方向盘骨架,具有较大的高度落差,且有多个凸台夹杂在上部分型线,按照传统设计需要对其进行逐一拉伸修剪操作。

图8 方向盘骨架图Fig.8 Steering wheel skeleton

借助本设计系统,在自定义菜单调用开发好的dll 程序,选择分型线就能完成分型面的设计。程序设计好的分型面如图9(a)所示,手动制作的分型面如图9(b)所示。

图9 2 种方式的分型面对比Fig.9 Comparison of two types of parting planes

4 结论

本文基于NX 二次开发,设计了一套方向盘压铸模分型面设计系统,可以提高方向盘压铸模模具设计的效率,有利于实现模具CAD 智能化设计。针对压铸模分型面自动化的设计有了一定进步,但实例库只能储存已有实例类型,对没有的实例类型还不能自我学习,加之压铸模形状的复杂性,使得本设计程序仍存在局限性,因此实现压铸模自动化设计还需不断完善。

猜你喜欢
压铸模二次开发方向盘
大型压铸模具铸造模架数控粗加工的高效方法
浅谈基于Revit平台的二次开发
压铸模技术创新与发展
铝合金链条盖压铸模冷却系统的优化设计
进气弯管压铸模设计
浅谈Mastercam后处理器的二次开发
把握好直销的方向盘
西门子Easy Screen对倒棱机床界面二次开发
把准方向盘 握紧指向灯 走好创新路
某型轿车方向盘抖动的分析与改进