姚 震,陈耀伟,李金国,虞伟炳
(1. 台州职业技术学院机电工程学院,浙江 台州 318000;2. 台州市慧正软件技术有限公司,浙江 台州 318000;3. 浙江赛豪实业有限公司,浙江 台州 318000)
模具模架作为注塑模具中最基础也是最重要的组成部分,其使用贯彻到每副模具,在整个设计周期中起着举足轻重的作用,各类标准模架广泛应用于模具设计制造中[1-2]。随着市场需求的多样化,传统标准模架(如龙记集团生产的大水口、标准细水口、简化细水口模架等)已难以满足特定模具的设计要求,需要定制非标准模架对特定的产品进行设计。为此,本文采用C++语言和NX 二次开发技术,并结合本地化EXCEL数据表数据管理开发了一款高效的自适应模架设计工具。
不同模架类型的组成结构不相同,其所需要的参数也不相同。设计人员在操作页面选择模架类型和规格参数后,可通过后台EXCEL数据表自行添加零件数据来调用不同的标准模架,同时可对生成的模架进行完善修改。模架设计工具需符合以下条件[3-5]:(1)界面交互需要符合工程师的操作习惯,3D尺寸需要支持箭头拖动,便于选择所需要设计模架的类型、规格,以及是否添加周边零件等;(2)工程师在选择模仁或AB板底面后,程序自动获取相关尺寸信息并通过后台数据自动匹配对应的模架,最后快速生成模架,或者手工选择模架信息并生成模架;(3)模架生成完毕后,也可同时快速添加模架周边零件;(4)能够快速地将不需要的模架零件进行删除,对需要修改的模架及其他周边零件进行尺寸编辑;(5)可以按照企业标准及实际情况,向模架设计工具数据库中添加或者更改模架标准和类型。
模架设计工具主要由三大部分构成:用户界面操作模块、数据处理模块、UDO显示模块。首先,用户操作界面时,程序通过读取EXCEL文件将获取的模架信息进行字符串处理以及表达式计算,并将处理后的信息记录到C++模架信息自定义类中,再将参数传入到对应的NXOpen API函数接口,生成对应的UDO线框和对应的模型。其基本流程如图1所示。
图1 模架设计工具总体结构图
根据总体结构图及结合需求分析,设计完善模架设计工具的各个功能,其主要操作流程如图2所示。
图2 模架设计工具各功能操作流程
模架设计工具通过C++面向对象程序,设计并调用NXOpenAPI内部接口函数来实现注塑模模架的参数化设计。设计过程主要分为3个阶段:(1)归纳总结不同模架的几何特征,并为此建立三维模型;(2)通过EXCEL表建立各个零部件三维模型参数表达式与模型的联系。(3)借助NX 的Menu Script和BlockUI设计建立自己的菜单按钮及命令UI界面,最后生成对应的程序来完成对模架三维模型的生成和更新。参数化设计流程如图3所示。
1) 激活开发路径。NXOpen提供了一系列标准的工具添加文件,首先在$NX_BASE_DIRNXIImenus中找到系统路径定义的custom_dirs.dat文件,该文件在后续命令脚本使用中起关键性作用。打开custom_dirs.dat文件,向其中添加工程路径D:sayMoldV5.0,当用户在点击对应命令时NX会从程序路径中找到所要执行的对应命令进行执行。
图3 NX 二次开发程序设计流程
2) 程序目录制作。在D:SayMoldV5.0下新建一个子文件夹application来存放对应程序所需要的对话框界面文件*.dlx和需要用的图片。再新建一个名称为startup的文件夹用来存放启动对应版本NX程序的启动文件*.dll与菜单文件*.men。startup文件夹中的dll可以在NX启动时自动加载,通过自动加载来判断当前打开的NX版本号,调用NX文件夹下存放各个版本NX需要的dll来实现NX版本通用。database文件夹中用来放置所需的三维模型数据文件*.prt,而注塑模模架参数化设计用到的参数信息存放在对应的数据文件*.xls中。程序目录结构如图4所示。
图4 目录结构
3) NX版本与对应的Visual Studio配置如图5所示。以NX10.0配置为例,对Visual Studio 2012进行环境配置,将附加包含目录和附加库目录指定到对应程序的SiemensNX10NXOPEN,向附加依赖项中添加对应的静态链接库。
图5 NX对应的VS版本
为了保证用户即便在不熟悉工具且不具备足够经验的情况下也可以快速入手并快速完成模架的设计,模架设计工具采用了NX自带的Menu Script及BlockUI辅助开发工具来实现用户操作交互模块的程序设计[6]。
1) 模架设计工具的导航菜单。NX二次开发的应用程序要与NX无缝对接,一般需要在NX中创建菜单和功能按钮以便用户点击使用。通过具有特殊语法的特定脚本语言Menu Script编写的*.men 文件来实现模架设计工具主菜单和子菜单,促使设计的应用程序可以全部集成到 NX 中,并和NX 命令做有效衔接,如图6所示。
图6 模架设计工具的菜单栏
图7是部分模架设计工具的主菜单源程序。关于Menu Script的语法,可以通过查看帮助文档,也可以通过参考程序目录“%UGII_BASE_DIR%UGIImenus”中的*.men相关的文件来学习。
图7 模架设计工具的菜单程序
2) 用户界面控件。为了达到良好的用户交互体验,并本着界面简洁的原则,在设计界面上集成了两个属性页。第一页为重点关注参数的选项列,第二页为详细参数的表达式列。用户界面设计完成后产生的*.hpp头文件、*.cpp源文件和*.dlx对话框框架文件将各自放在对应的系统用户目录下,方便后期程序设计。
模架设计工具用户界面如图8所示。设计人员可以选择对象分析数据,也可以设置模架到部件原点进行创建模架,此处选择的对象可以是产品、模仁,或者A板、B板底面,所有选择方式可后期通过EXCEL表格自定义配置。如选择产品可自动分析产品的大小来确定模仁大小,并调用相应的模架;如选择模仁自动获取上下模仁的总长、总宽、总高分析出适合的模架;如选择A板、B板底面,通过分析底面大小调用对应的定模部分或者动模部分。
由于注塑模具中模架的标准和类型繁多,可以按照企业标准通过EXCEL数据表添加想要的零件进行自定义模架,如是否添加限位柱、垃圾钉、支撑柱、锁模块、方导柱等,同时可自定义是否创建螺丝,添加螺丝刻字、模架刻字,以适用于不同公司、不同产品的模架。在模架三维模型的生成过程中,采用NX自身的参数化造型技术,通过数据的输入来驱动模型,驱动完毕后再利用WAVE技术将装配体装配到当前显示部件[7],相比较于NX自带模块的注塑模向导只能装配模式下创建有很大的优势。模架设计工具创建的模架可以在装配和非装配两种模式下进行创建,装配模式下调用生成的模架具有参数组件,非装配模式下调用生成的模架是非参数实体,两种模式下生成的模架后期都可进行编辑。
图8 用户界面
为了方便数据的管理及操作,数据的存储采用EXCEL电子表格的形式进行存放。模架设计中,当选择模仁时,程序自动分析模仁大小,然后根据模仁数据从数据表中查找到相应的模架类型,再到下级数据表中获取所选模架的全部信息,也可通过实际的界面修改想要的参数,注塑模模架主要参数如表1所示。
表1 模架参数配置表
根据上述配置获取模架信息,通过NX UDO技术[8-9]生成预览线框,如图9所示,通过线框显示速度相对于以往的实体预览有很大提升,通过关键尺寸位置的显示可以更好地选择模架的位置和模架的大小参数,关键尺寸可以通过NX自带的箭头拖动。
图9 线框预览模架
通过界面选择相应的模架参数后,生成对应模架如图10所示。
当生成的模架不符合要求时,就要将其删除,在装配模式下可以通过删除模架组件进行删除,在非装配模式下可以通过组删除进行快速删除。
模架设计工具可以在装配模式和非装配模式下进行参数编辑,选择创建的模架或者模架中的零件就可驱动模架及其他模架零件的参数表达式,从而重新生成相应的NX UDO,再次通过对话框界面选择参数或者通过箭头拖动来调整模型规格,确认后生成模架实体。
图10 模架三维图
现以一套中等大小的LKM模架为例,采用普通标准模架工具(图11)和非标模架设计工具 (图12)分别进行模架设计,并对比两者的生成时间。普通标准模架只有板类零件没有其他周边零件,而自定义非标模架可以自行添加模架周边零件,例如四面方导柱、模具站脚、顶出限位柱、定位圈、顶出延长块、面针板弹簧等,也可对模架固定板类进行对应字码的刻字。普通标准模架无法自行添加零件,而模架设计工具可自行添加零件到模架中,后期可通过参数控制位置和零件尺寸。非标模架相对于普通标准模架做了更多的扩充,随着零件的增加,设计一套模架的时间也大大减少。
图11 普通标准模架工具生成的模架
图12 模架设计工具生成的模架
对比了两种相同模架规格、不同模架设计工具生成模架的数据时间(参考值),如表2所示。
表2 模架设计时间对比
模架设计工具结合了最新开发的BlockUI设计的程序,可对不同客户、不同标准进行自定义组合设计,满足不同应用场景的设计,做到快速响应。模架设计工具创建的模架可以在装配和非装配两种模式下进行创建,并通过UDO技术实现了线框预览功能,设计效率得到大大提高。
以龙记集团设计的模架为例,通过与普通标准模架设计工具对比,验证了所开发的模架设计工具能有效缩短新产品开发周期。