集中润滑装置零部件二次开发技术

2017-06-15 15:07姚林晓吴松胡欣源刘润
河南科技 2017年7期
关键词:标准件二次开发插件

姚林晓 吴松 胡欣源 刘润

(华北水利水电大学,河南郑州 450045)

集中润滑装置零部件二次开发技术

姚林晓 吴松 胡欣源 刘润

(华北水利水电大学,河南郑州 450045)

为解决集中润滑行业缺少三维标准件库的问题,本文利用成组技术对集中润滑装置进行模块划分,以VB为开发语言,利用参数化设计技术对三维设计软件SolidWorks进行二次开发,完成集中润滑装置标准件库的开发。利用宏录制功能快速完成递进式分油器柱塞参数化设计编程,为其他机械产品提高设计效率提供借鉴。

集中润滑;成组技术;模块划分;参数化;宏录制

集中润滑系统广泛应用于各行业的机械设备的润滑中,如工程机械、风力发电、矿山机械及汽车底盘等。在激烈竞争的市场背景下,各种集中润滑方案层出不穷,集中润滑产品更新速度加快,行业发展对快速设计提出了新的要求[1]。传统的三维设计方式设计周期长,成本高且修改难,制约了集中润滑系统的设计改造及新产品开发。在实际设计过程中,集中润滑系统大部分零件都具有相同或相似的外形轮廓,运用成组技术将整个系统进行分类,并在此基础上利用参数化设计技术进行二次开发,有效地缩短了设计周期,并且减少了模型建立中出现的错误,从而实现快速设计。

SolidWorks软件是一个功能强大的三维CAD系统,其本身提供的二次开发接口API,具有良好的开发性和兼容性。使用Visual Basic、Access、Visual C++等调用Solid-Works中的API函数,完善各个系统标准件库,能很好地满足各个行业的发展需要[2]。本文建立了集中润滑系统的标准件数据库,并使用VB语言完成了集中润滑系统的二次开发,在实际工作中取得良好的效果。

1 集中润滑系统模块划分

集中润滑系统标准件库有2种设计方法,第一种可根据标准件、非标准件、结构件进行分类,但此种方法开发的标准件库结构层次不清晰,不利于设计过程中的交叉使用[3]。第二种利用成组技术按照零件具体特征结构的相似性进行分类。不同类型的集中润滑系统中,绝大部分具有相同功能的零件具有相似结构,如分油器中的伞型阀等,因此根据润滑系统的一般结构和功能,可将其划分为供脂单元、伺服单元、通用件和监控单元。复杂的集中润滑装置可表示为一些相关联的子模型的集合,形成树状产品实例结构,如图1所示。

图1 集中润滑系统模块划分

根据以上模块分类,在产品设计过程中可根据不同要求引用不同的零件,而且各模块之间互不影响,模块间通过标准接口相互连接,在产品需要变动的情况下,能够实现快速拆分和重组。图2为包含了各个模块的某型号润滑系统装配结构。

图2 某型号润滑系统装配结构

2 二次开发过程

二次开发技术核心是对集中润滑系统进行参数化设计,以可变参数驱动模型修改生成新的零件的过程。参数化设计的一般流程为:先按照单个零件的一个尺寸分别绘制零件、建立几何关系和尺寸约束,保存至零件模板库,再利用编程环境建立的零件参数设置界面,调用API对象将零件参数重新设置并修改模型中图像,从而完成标准件的建模。

2.1 建立零件参数库

集中润滑设备大部分是由通用件构成,通过查阅、分析润滑装置相关标准,将获得的标准有效参数记录在Access数据库中,在设计过程中方便查询和选用,提高设计效率。在某种型号递进分配器中,根据查询相关文件可知其标准排油量,因为递进式分配器排油量只与阀芯行程和横截面有关,通过计算得到柱塞的参数如图3所示。

图3 递进式分配器阀芯的参数界面

2.2 建立零件模板库

零件参数化设计方法有程序驱动和尺寸驱动2种。程序驱动法是将设计过程中的所有关系式用程序语言编辑,通过运行程序执行设计过程;尺寸驱动法是调用零件模板,仅仅改变零件标注尺寸就能获得一系列结构相同而尺寸不同的相似零件,这种方法在设计时只要能保证结构不变,输入参数就能完成零件的快速设计[4]。由于集中润滑系统零件较多且较为复杂,因此采用尺寸驱动法。

在SolidWorks环境中绘制零件模板,系统会自动对标注尺寸进行命名,同一零件中相同操作尺寸名称也相同,在后来编码时容易出现错误,所以应当将有效的尺寸参数按照一定的命名规则进行重新命名,通过有效尺寸的数据更新驱动软件生成新的零件。所谓有效尺寸,即影响零件结构及其功能的尺寸,如递进分油器阀芯的直径、长度等,其他如倒角等对零件影响不大的数据则不需要修改。建模完成后按模块保存至模板库。

2.3 程序调试

2.3.1 宏录制。宏录制是SolidWorks中用于记录整个鼠标、菜单、键盘操作及建模过程的模块,也可调用SolidWorks API接口提供的所有对象、方法和属性。尺寸驱动法对集中润滑系统进行参数化设计只需要将改变模型尺寸的过程进行记录,所以修改前要将模板备份。以递进式分油器的阀芯为例,利用宏录制记录其有效参数的修改过程,双击需要修改的有效尺寸D1,在对话框中输入有效且不同于原尺寸的数值,完成利用编辑器查看所录制的宏代码,删除鼠标动作和视角变动代码后得到代码注释后如下:

Dim swApp As Object

Dim Part As Object

Dim boolstatus As Boolean

Dim longstatus As Long,longwarnings As Long‘定义对象变量

SetswApp=Application.SldWorks‘引用SolidWorks对象

Set Part=swApp.ActiveDoc‘激活文档

Set Part=swApp.OpenDoc6("C:UsershpDesktop阀芯.SLDPRT",1,0,"",longstatus,longwarnings)‘打开指定文件

Dim myDimension As Object

boolstatus=Part.Extension.SelectByID2("D1@草图1@阀芯.SLDPRT","DIMENSION",3.09191072031929E-03,-7.35526267637839E-03,0,False,0,Nothing,0)

Dim myDimension As Object

Set myDimension=Part.Parameter("D1@草图1")

myDimension.SystemValue=0.007‘更新D1数值

End Sub

2.3.2 代码修改。宏录制所生成的代码并不能直接作为参数化驱动程序使用,还需要进行修改后添加到“生成零件”命令下的代码中,并添加辅助代码完成参数化设计过程。以上代码中所需要修改的主要部分为模板文件位置、保存文件路径及参数输入路径,修改后利用VB6.0调试功能对修改后的代码逐句调试,确认无误后完成参数化设计过程。修改后的代码如下:

Dim swApp As Object

Dim part As Object

Dim boolstatus As Boolean

Dim longstatus As Long,longwarnings As Long

Set swApp=CreateObject("sldworks.application")

Set Part=swApp.OpenDoc6("Documents and SettingsAdministrator桌面集中润滑系统标准件库模板阀芯.SLDPRT",1,0,"",longstatus,longwarnings)

boolstatus=Part.Extension.SelectByID2("D1@草图1@阀芯.SLDPRT","DIMENSION",3.09191072031929E-03,-7.35526267637839E-03,0,False,0,Nothing,0)

part.Parameter("D1@草图1@阀芯").SystemValue= TxtD1.Text/1000

part.EditRebuild

End Sub

2.4 与SolidWorks建立连接

对SolidWorks进行二次开发通常有2种形式:一是独立应用程序(Standalone application),用户程序作为一个独立的应用程序(*.exe);二是插件形式(Add In application),用户程序作为一个插件(*.dll)集成到Solidworks中去。插件开发有2种方法,利用SolidWorks自带软件开发工具包API SDK设计或者VB开发插件并添加至Solid-Works工具栏中。利用VB编辑工具开发插件操作简单,实用性强。因此,本文选用此种方法进行插件设计。VB 与SolidWorks建立连接程序如下:

Dim swApp As Object

Dim Part As Object‘定义对象变量

Public Sub connectSldWorks()

Set swApp=CreateObject(“S1dWorks.Application”)‘创建S1dWorks对象

Set swApp=CreateObjec(“S1dWorks.Application”)

swApp.Visible=True

End Sub‘使创建的SldWorks对象可见

3 运行实例

在设计过程中,根据润滑点情况选择合适的润滑方案,获得设计集中润滑系统所需的各种参数信息,在系统界面选择系统零件生成标准件。系统界面如图4所示。以伺服单元中的定量加压分油器,当单片分油器每个出油口排油量为0.32mL时,参考数据库中阀芯的各项参数生成标准件如图5所示。

图4 集中润滑系统二次开发界面

图5 递进式分油器阀芯标准件

4 结语

通过对集中润滑系统的二次开发表现了参数化设计思想,以VB6.0对SolidWorks的二次开发,实现了以尺寸驱动法为基础的集中润滑系统标准件库的建立,解决了集中润滑系统开发过程长的问题,为其他具有类似特点的机械系统提供了参数化设计思路和理论依据。

[1]魏俞涌.车辆底盘自动集中润滑系统的研究及应用[D].杭州:浙江工业大学,2009.

[2]许书生,徐兵,李春光,等.基于SolidWorks二次开发的轴向柱塞泵参数化建模设计[J].机床与液压,2010(9):71-73,79.

[3]孔垂雨,上官林建,严大考.SolidWorks的起重机三维标准件库的二次开发[J].现代制造工程,2012(4):59-61,113.

[4]张晋强.桥式起重机桥架三维参数化设计技术研究及应用[D].太原:中北大学,2008.

Secondary Development Technology of Components for Centralized Lubricating Equipment

Yao LinxiaoWu SongHu XinyuanLiu Run
(North China University of Water Resources and Electrical Power,Zhengzhou Henan 450045)

In order to solve the problem that the lack of 3D standard part library for concentrated lubrication industry, the centralized lubrication device was divided into several modules using group technology.Taking VB as the development language,the 3D design software SolidWorks was developed two times by using the parametric design technology,completed the development of centralized lubrication device standard parts library.By using macro recording function,this paper completed the parametric design of the progressive oil separator,to provide reference for other mechanical products to improve the design efficiency.

centralized lubrication;group technology;module division;parametric design;macro recording

TP311

A

1003-5168(2017)04-0043-03

2017-03-05

河南省科技攻关计划项目(132102210096,142102210107);郑州市科技攻关计划项目(153PKJGG114)。

姚林晓(1970-),女,硕士,副教授,研究方向:机械设计。

猜你喜欢
标准件二次开发插件
标准件库的建立与应用
自编插件完善App Inventor与乐高机器人通信
西门子Operate高级编程的旋转坐标系二次开发
浅谈Mastercam后处理器的二次开发
西门子Easy Screen对倒棱机床界面二次开发
基于jQUerY的自定义插件开发
基于Revit MEP的插件制作探讨
CATIA V5标准件库的创建与使用
ANSYS Workbench二次开发在汽车稳定杆CAE分析中的应用
基于知识的组合机床夹具可扩充标准件库的开发