基于Pro/E二次开发的剪板机快速设计系统

2017-06-20 08:32孙炎仲梁维刘营营
软件导刊 2017年4期
关键词:二次开发

孙炎+仲梁维+刘营营

摘要:传统的剪板机设计费时费力,无法适应现代快速变化的竞争环境。以剪板机为例,结合传统的参数化设计方法,构建了基于Pro/E二次开发的剪板机快速设计系统。该快速设计系统以VB.NET为开发平台,Pro/E软件为开发对象,Microsoft Office Access为开发数据库,并结合VB API函数实现了剪板机的快速设计与开发。经实例验证,该系统的使用可以极大地减少企业开发时间,提高产品设计效率。

关键词:剪板机;二次开发;快速设计;参数化建模;VB.NET

中图分类号:TP319

文献标识码:A

文章编号:16727800(2017)004013903

0引言

剪板机是一种用于切断板材、型材或切割类似纸质材料的典型机械设备,广泛应用于电机电器、仪器仪表、锅炉压力容器等轻工行业。近年来,由于中、小企业的蓬勃发展,对于剪板机的需求大增,品种规格也随着用户的要求各异而日渐增多。但大部分不同规格的剪板机设计都以同类机型为参照,只对部分结构进行了少量修改,因而设计中大部分都具有重复性,很少有全新设计。为提高生产效率和设计水平,进行快速设计十分必要[1]。 快速设计是为了适应快速变化的市场,将二次开发技术运用到剪板机产品设计中,以最大程度缩短产品设计周期,减少设计者的重复劳动,提升企业的生产力和竞争力,使企业适应快速变化的现代市场。本文提出利用 VB.NET对 Pro/E进行二次开发的方法,通过建立参数化设计平台,进而快速生成设计图纸,成功实现了剪板机快速设计系统。

1系统总体设计方案

1.1快速设计系统总体结构

该剪板机快速设计系统主要包含3部分,即基于Pro/E的剪板机参数化基础模型、可视化用户系统以及相关的参数数据库[2]。剪板机参数化基础模型的建立在Pro/E中完成,建模过程中需要添加参数作为驱动模型的基础,然后定义各特征之间的关系用于联系参数,最终在装配体的建模过程中,需要保证各组件之间的完全约束。参数化模型的建立与最终的产品完成度紧密相关,该部分是整个快速设计系统开发过程中最基础的一部分。可视化用户系统包含前端用户界面与后端程序,该部分连接模型与数据库,同时也是人机交互的重要组成部分,是整个系统的核心。

产品设计相关知识包含在数据库中,本系统使用Microsoft Office Access作为后端数据库。数据库包含设计参数库与历史资料库,剪板机设计过程中需要用到关键的结构参数信息以及相关设计知识,将这些资料合理有序地存储起来以更好地为设计者服务。以剪板机快速设计系统为例,设计参数库包括剪板机前托料架长度、刀架位置等信息,历史资料库包括设计者、设计意图、产品编号等信息。剪板机快速设计系统整体结构框架如图1所示。

1.2快速设计系统工作流程

依据系统整体结构框架,基于Pro/E二次开发的剪板机快速设计系统工作流程分为3个步骤[3]:首先用户根据设计要求由可视化界面中输入相应参数,然后程序自动匹配参数数据库检测相似性,若匹配到重复设计,则弹出提示“是否打开历史设计模型”。当需要打开历史模型时,系统会从数据库中自动调取三维模型图与二维工程图,从而避免重复设计,提高模型利用率;若无重复设计,系统则会自动驱动Pro/E生成新的产品模型图与工程图。在用户得到新的产品设计图纸时,经过核对可根据需要进行重新设计或参数修改,直到完成最终的产品设计。系统的具体工作流程如图2所示。

2剪板机快速设计系统中的关键技术

2.1参数模型建立

基于Pro/E的二次开发需要通过程序驱动模型自动完成新产品设计,因此在前期三维基础模型建立过程中,几何关系定义尤为重要。在三维参数化建模过程中,可以将部分无法通过几何约束表达的经验公式和设计准则推导出数学关系,然后通过Pro/E软件中的关系定义,将某些尺寸的变动同基础尺寸关联起来,最终由VB.NET程序驱动某一基本参数自动改变关联参数,完成复杂的建模过程[4]。在完成关系定义后,复杂三维模型的生成与修改则会变得简单快捷,这种由一种参数控制多种参数变动的方法在整个系统的设计中十分关键。基于Pro/E二次开发的剪板机快速设计系统中机架部分关系与参数定义如图3所示。

2.2快速设计系统前期搭建

在基于Pro/E二次开发的快速设计系统中,采用Microsoft Visual Studio 2008作为开发平台,VB.NET作为开发语言,Pro/E WildFire 5.0 作为开发对象,Microsoft Office Access作为开发数据库。该平台可以运行于Windows7/8 系统平台中。快速设计系统中Pro/E与VB.NET分属不同平台,因此首先需要连接两大平台。连接过程需要3个步骤:首先完成系统环境变量的设置,在Windows系统下,新建变量名为pro_comm_msg_exe,变量值指向pro_comm_msg_exe文件所在的完整路径,该文件全路径为:

[Proe_loadpoint]\\\CommonFiles\

其中Proe_loadpoint為Proe安装路径,Systemtype为Windows系统类型。当使用32位Windows系统时,Systemtype为i486_nt,否则为x86_win64。以64位Windows7系统为例,环境变量设置如图4所示。

然后进行COM组件的注册,利用Pro/E提供的COM组件注册文件vb_api_register.bat,该文件路径为[5-6]:

[Proe_loadpoint]\\bin\\vb_api_register.bat

最后在VB.NET中添加Proe VB API Type Library组件的引用,当添加这一COM组件后,只需要在程序中Import pfcls命名空间即可正常调用VB API函数。

2.3程序控制模型与数据库连接

2.3.1程序控制模型 在VB.NET程序中,通过程序驱动模型的改变,在模型的处理过程中根据不同特征需要使用不同的处理类,每一个大类根据驱动参数的不同控制不同零件的变动或者装配体的变化[7]。以上功能的主要代码如下:(1)激活与驱动模型。

//激活窗口 Dim window1 As pfcls.IpfcWindow //定义变量 Dim session As pfcls.IpfcSession Dim Casync As New pfcls.CCpfcAsyncConnection AsyncConnection=Casync.Connect(DBNull.Value,DBNull.Value.DBNull.Value, DBNull.Value) Session = asyncConnection.Session Window1 = session.CurrentWindow //连接当前窗口 Window1.Activate() //窗口激活 Window1.Repaint() //窗口重建 //前托料架驱动参数 2 500KFY Model=asyncConnection.Session.getmodel("2500KFY.asm",EpfcModelType.EpfcMDL_ASSEMBLY) //获取模型 Params = CType(model, IpfcParameterOwner).ListParams() //得到模型参数 For i7 = 0 To params.Count - 1 //循环修改参数 Param = params.Item(i7) Paramunit = param.Units Select Case param.Name …… End Select〖HT〗(2)保存、重建模型。

RegInstr = (New CCpfcRegenInstructions).Create(True, True, Nothing) Model = asyncConnection.Session.CurrentModel Solid = CType(model, IpfcAssembly) Solid.Regenerate(regInstr) AsyncConnection.Session.GetModelWindow(solid).Repaint() Model.Save()

2.3.2数据库连接 通过VB.NET对Microsoft Office Access数据库的连接是通过与ADO(Active Date Object,即ActiveX数据对象)、OLE-DB(Object Linking and Embedding-Datebase,即Active数据对象)技术相结合,它包含了外部程序对数据库执行访问、查询、更新等操作的类库[8]。该功能的主要功能代码如下:

//连接数据库 Dim connstr As String="Provider=Microsoft.ACE.OLEDB.12.0;Data Sourc;DataSource=CASC.accdb " Dim conn As New OleDbConnection (connstr) Conn.Open() Dim mycom As New OleDbCommand Dim AccStr As String = "SELECT * FROM *" Mycom = New OleDbCommand (AccStr,conn) cmd.ExecuteNcmd.ExecuteNonQuery ()//执行操作 conn.Close ()//关闭数据库连接

3应用实例

剪板机快速设计系统界面主要由环境配置、工作参数等构成。环境配置可以设置企业的个性化要求,如产品型号、设计人员等信息;剪板机作为大型复杂的机械设备,结〖LL〗构参数数量很多,工作参数设计界面仅显示关键参数内容,其它参数由关键参数根据关系定义自动变化,在对需要修改的关键参数确认后,快速设计系统自动驱动各模块完成零件、装配体的生成与图纸的驱动;最后系统自动将设计信息保存到数据库中供下次使用[9]。快速设计系统生成的剪板机最终模型如图5所示。

4结语

本文将Pro/E 的二次开发应用于剪板机的快速设计中,借助PTC Pro 提供的VB API函数接口和VB.NET完成快速设计系统的搭建。利用该系统可以帮助企业解决剪板机设计过程中工作量大、易于出错的问题,提高了工作效率,从根本上提升了企业综合竞争力。

参考文献:[1]张明富,黄治中.国内外折弯机、剪板机现状和发展趋势[J].锻压机械,1994(2):5961.

[2]刘龙,朱林波.基于VB的Pro/E二次开发方法的再探讨[J].金属加工冷加工,2009(13):6567.

[3]吴庆鸣,宗驰,张志强,等.基于公理化和知识的机械产品快速设计[J].武汉理工大学学报,2009(24):6266,86.[4]黄恺,李雷,刘杰.Pro/E参数化设计高级应用教程[M].北京:化学工业出版社,2008.

[5]Parametric Technology Coporation. PTC Pro parametric 3.0 VB API user′s guide[M].USA:PTC,2010.

[6]劉庆立,曹巨江,姚素芬,等.利用Visual Basic对Pro/E进行二次开发的方法研究[J].机械传动,2010,34(1):4750.[7]钟崴,童水光.锅炉智能CAD的技术和方法研究[J].浙江大学学报:工学版,2006,40(4):572576.

[8]王建正.基于产品平台的快速设计集成系统研究与开发[D].北京:机械科学研究总院,2008.

[9]甘淑娟.基于VB.NET与Access的题库管理系统设计与实现[J].软件导刊,2013,12(7):117119.

(责任编辑:黄健)

猜你喜欢
二次开发
浅谈基于Revit平台的二次开发
浅谈Mastercam后处理器的二次开发
西门子Easy Screen对倒棱机床界面二次开发
基于Pro/E二次开发的推土铲参数化模块开发