英语原文共 15 页,剩余内容已隐藏,支付完成后下载完整资料
使用Visual Basic 6进行SolidWorks二次开发一种自动模块化夹具组装方法
摘要
模块化夹具(MFs)在制造工艺的成本和生产时间缩短方面发挥着重要作用。 在本文中,作者阐述了MFs设计和装配的自动化方法。 这种方法基于SolidWorks与Visual Basic(VB)6编程语言集成的二次开发。 应用SolidWorks API(应用程序编程接口)功能来控制SolidWorks命令和装配操作。 在VB 6中创建了一个ActiveX DLL项目,并生成了一个.dll格式的插件文件。 结果是在SolidWorks环境中创建新的菜单,用于选择,插入和组装MF元件。 该方法适用于侧面夹紧程序和半圆形工件。
关键词:模块化夹具,SolidWorks API,Visual Basic 6,装配仿真。
- 引言
由于制造系统的快速发展,生产力已成为需要实现的目标之一以及生产时间消耗[1]。 鉴于这些证据,模块化固定装置(MF)被认为是实现这些目标的重要因素之一[1]。 这成为MFs元件的灵活性,它为不同的工件提供了多个工件夹持程序[2],这为使用计算机数控(CNC)机器的柔性制造系统(FMSs)带来了许多好处。 MFs的设计和组装过程是许多以前研究过的目标。其中一些专注于夹具元件的装配关系[3]。 其他人则集中在MFs的信息介绍上[4]。 为了进一步改进MFs设计,CAD技术已被用于夹具元件的自动化设计和组装。 信息模型被用作支持夹具决策的工具[5]。
为“智能夹具系统”提出了一种快速重构方法定位夹具的方法[6]。 ICAD系统和UG-2建模被用于开发基于CAD软件的MFs设计系统[7]。 AutoCAD采用2D绘图[8],而AutoCAD 3D建模则用于此目的[9]。 对于更有效的自动化MFs系统,设计人员应考虑三个因素,夹具元素数据库,正确的设计方法以及用于建模MF设计和装配过程的强大3D CAD软件。 在以前的工作中创建了标准夹具元素的数据库,并引入了适当的方法来开发计算机辅助夹具设计(CAFD)[1]。 由于其优秀的3D功能,SolidWorks被用作CAD软件来执行MFs的建模过程。基于以前的工作; 本文介绍了使用SolidWorks VB 6进行二次开发以实现夹具元件设计和装配的自动化。所开发的方法如图1所示。此方法包括在VB 6中生成ActiveX DLL项目并与SolidWorks API集成以创建新的 SolidWorks环境中的菜单。 SolidWorks设计了特定工件的3D模型。 标准夹具元件的数据库是在以前的工作中建立的[1]。 装配关系的知识库是通过使用If-then规则创建的。 此知识库基于SolidWorks中用于装配目的的配合功能。
图1:开发方法的流程图。
- 工装控股原则
生产的工件应符合其规格,特别是在形状,尺寸和公差方面,为实现这一点,在机器上正确定位和夹紧工件十分重要[10]。 其他一些因素也会影响工件夹持配置,包括加工操作顺序,成本考虑因素,切削力的方向和强度以及机床的功能和方向[10]。 而且,固定元件可以被设计用于特定的工件; 这些被称为专用夹具。 相反,可以选择夹具并将其与标准夹具元件的数据库组合; 这些被称为模块化装置[10]。 每个夹具元件都有一个特定的功能,完整的夹具结构可以由许多元件构成,包括考虑导致适当加工操作的类型,类别和功能。
2.1模块化夹具
模块化夹具可以被定义为一个系统,用于建立标准组件的多种组合,这些组合可以用于各种各样的工件。 这些夹具元件可以组装和重复使用,以产生夹具和固定装置的不同结构[2]。 模块化夹具系统的建造过程取决于选择必要的夹具部件进行组装,这个装配过程将成为构建“更加详细的系统”的基础。 因此,通过使用模块化夹具系统可以为任何类型的工件构建夹具元件[2]。 通过消除“专用夹具”及其特殊部件的使用,模块化夹具的好处可缩短设计和装配时间[10]。 此外,模块化夹具的数据库包含必要的设计信息,其中标准元件的匹配特征经过修改[10]。基于结构基础的模块化夹具系统分为三大类:底板,T形槽和销钉[2]。
2.2模块化夹具建筑
模块化夹具系统由一组标准元件组成,例如底板,定位器,支架,夹具和所有其他附件(图2)。通过组装这些元件,可以实现各种工件的合适工件夹持系统[2]。组装过程从根据工件尺寸选择底板开始;然后选择定位元件并将其组装到底板上;之后,选择适合所选工件的夹紧元件;最后,添加其他元件和附件以完成模块化系统[2]。在构建工件夹持模块化系统后,开始加工操作以生产特定部件或工件。 零件生产过程完成后,模块化系统将被拆卸,并将元件发送到商店以用于构建其他模块化工件夹具系统[2]。
图3显示了模块化夹具系统的一个例子。 重复使用模块化夹具元件的优点可以缩短时间和成本。 一小时的模块化夹具制造过程相当于大约六小时的“传统夹具或夹具”建筑[2]。
-
- Visual Basic基础
Visual Basic(VB)是由Microsoft开发的编程语言。 与其他编程语言相比,这种语言在很大比例的开发人员中被广泛使用作为“主要开发”[11]。VB是带有“集成开发环境(IDE)”的基础语言的高级版本, 图形用户界面[12]。
图2:模块化夹具标准元素[2]。
图3:模块化工件夹持系统[13]。
而且,VB被认为是在所有Microsoft软件中构建宏的引擎[11]。 因此,VB已经成为为许多应用程序构建不同程序的重要工具。 VB中可以生成不同类型的项目。 为了简单的编程目的,标准EXE程序员更常用。 对于更高级的编程功能,使用ActiveX项目。 在这项研究中,已经创建了ActiveX DLL(AvtiveX动态链接库)。 该项目允许程序员将VB与不同的Windows应用程序集成。 此外,该项目通过在应用程序环境中创建新的菜单和工具栏来控制其他应用程序的功能和操作。 为了数据库管理的目的,VB是Microsoft Access建立数据库的引擎,这给程序员提供了有效控制数据库的机会[11]。
-
- SolidWorks API
应用程序编程接口(API)是在另一个应用程序中用编程语言编写代码的工具。 因此,可以开发不同应用程序之间的直接集成[14]。 SolidWorks是使用不同编程语言(如C ,Visual Basic和Visual Studio)支持API的应用程序之一。 SolidWorks API通过以特定编程语言创建代码来自动化设计和装配操作[14],并已应用于不同的设计方法。API用于使用SolidWorks开发Web服务材料数据库,以简化设计人员选择材料的过程[15]。Bo,Qin和Fang通过使用带有SolidWorks API函数的Visual Basic代码开发了一个标准零件库[16]。 该系统基于创建Visual Basic表单来提高设计效率。 Peng,Jing和Xiaoyan在SolidWorks二次开发中应用Visual Basic Net来模拟“建筑过程的三维模块”[17]。他们将附加的VB项目生成到Solidworks中,用于将VB项目中的组装自动化到Solidworks中,以实现组合“离心风扇叶轮”[18]。 这种方法基于几何特征来创建SolidWorks和VB 6的第二个开发。此外,使用基于知识的设计特征(KBE)应用程序的用户界面的API可以帮助为特定任务定制CAD系统[19]。 Reuse软件是由Tian和Liu应用SolidWorks API开发的[20]。 该系统是使用VB开发的CAD系统的二次开发标准件。 Zhen和Yingyi介绍了一种基于SolidWorks的装配方法[21]。 他们通过使用Visual C 说明了程序集自动化过程的步骤。 他们还解释了部件的信息如何存储在数据库中。 Yang使用SolidWorks的二次开发开发了一个基于参数化设计的智能组装系统[22]。 Delphi编程语言,SolidWorks API和Access数据库是创建此系统的技术。
- 创建组装知识库
根据以前工作[11]中的装配方法,装配知识库是在IF-然后规则结构中开发的,以满足本研究中所选夹具元件的侧面夹持布局的要求。这些规则的例子是:
规则1
如果定位方法是V块,则定义用于将它们组装到底板的表面。
规则2
如果定义了V型块的定位表面,请确定底板上V型块的位置。这取决于V型块和底板的尺寸。位置可以通过计算底板上的孔的距离来确定正确的位置。根据上述规则的调查结果,SolidWorks环境中用于组装V型块和底板的配合特征被定义为:
规则3
如果表面被定义并且位置被计算,那么使用重合的配合来将V形块定位到基板。
规则4
如果定义了曲面并计算了位置,则使用同心配合将V形块与底板组装在一起。
- 创建SOLIDWORKS插件和用户界面
在本文中,创建插件代码是为了在SolidWorks环境中构建菜单以自动执行插入和组装过程。 菜单是通过使用VB 6与SolidWorks API(应用程序编程接口)集成而构建的。 在VB中开发了一个ActiveX DLL项目,其中包括SolidWorks库作为参考。 在这种情况下,引用了两个库; 这些是SldWorks Type Library和SolidWorks Exposed Type库。 将这些库添加到ActiveX DLL项目允许控制SolidWorks命令和函数。 本研究中开发的附加代码是:
Dim bRet As Boolean #39;boolean return
Dim lRet As Long #39;long return
Dim axMenuID As String
Dim lngToolbarDocTypes As Long
Set axSldWorks = ThisSW
axCookie = Cookie
bRet = axSldWorks.SetAddinCallbackInfo(App.hInstance, Me, axCookie)
axMenuID = 'Modular Fixture System'
lRet = axSldWorks.AddMenu(swDocASSEMBLY, axMenuID, 5)
axMenu1 = 'Assembly@Side Clamping@' amp; axMenuID
axMenu2 = 'Back stop@Side Clamping@' amp; axMenuID
axMenu3 = 'Pivoting Clamp@Side Clamping@' amp; axMenuID
axMenu4 = 'Riser block@Side Clamping@' amp; axMenuID
axMenu5 = 'Workpiece@Side Clamping@' amp; axMenuID
axMenu6 = 'V-block@Side Clamping@' amp; axMenuID
axMenu7 = 'Baseplate@Side Clamping@' amp; axMenuID
axMenu8 = 'Top Clamping@' amp; axMenuID
在编写加载项代码并将适当的VB模块和窗体添加到ActiveX DLL项目后,会创建.dll文件并将其复制到SolidWorks目录。 然后,在SolidWorks环境中打开该.dll文件,将该功能应用于开发的菜单。
4.1宏的汇编模拟
自动化在SolidWorks夹具元件装配过程中,被用于模拟目的创建的宏。 但是,这些宏只能应用于创建它们的主SolidWorks文档。此问题的解决方案是通过修改记录的宏来生成全局宏。 这是通过更改记录的宏的VB方法和类以及添加swConst模块和swAssembly或swPart类模块来完成的。 这使得这些宏可用于任何SolidWorks文档。 但是,这些全局宏仍不是开发的ActiveX DLLl项目的格式。 插件项目最重要的功能是如何使创建的菜单调用执行SolidWorks设计和装配的全局宏。 这是通过导入全局宏到ActiveX DLL项目与.BAS形式的模块,然后写每个宏子程序代码最后调用该子程序由特定菜单的图标来实现的。
4.2实现装配仿真
通过开发每个夹具元件的宏和组装步骤开始组装模拟。 首先创建用于添加灯具元素的宏。 为了获得更大的灵活性,我们建立了一个名为Modular Fixture System的主菜单。 然后,开发了两个子菜单,称为侧面夹持和顶部夹持。 用户可以选择应用哪种类型的夹紧系统。 对于这种特定类型的夹具,两个子菜单都扩展到其他相关夹具元件的菜单(图4)。 对于侧面夹持,使用了以下元素:
bull;底盘;
<p
全文共12915字,剩余内容已隐藏,支付完成后下载完整资料</p
资料编号:[9589],资料为PDF文档或Word文档,PDF文档可免费转换为Word
以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。