基于SolidWorks 二次开发专用CAD系统

基于SolidWorks 二次开发专用CAD系统

产品的开发过程是一项非常复杂的系统工程。据不完全统计,在工程实际中超过80%以上的设计均是通过对现有产品进行创新和改进来完成的,所以继承 和沿用成为产品设计的两个重要途径,同时也是节约开发成本、缩短产品研发周期的最有效途径。

参数化设计方法

      参数化设计是Revit Building 的一个重要思想,它分为两个部分:参数化图元和参数化修改引擎。通过将模型中的定量信息变量化,使之成为任意调整的参数。对于变量化参数赋予不同数值,就可得到不同大小和形状的零件模型。

       SolidWorks软件中实现机械零部件参数化设计的方法主要有两种: 1.利用在内嵌的Excel表中指定特征参数,创建多个系列零件或部件;而是利用编程语言作为开发工具,对其进行二次开发,通过程序驱动实现参数化设计。  

        1.基于系列表配置的参数化设计 

        在SolidWorks中利用 Excel表配置实现参数化设计时,首先建立目标零部件的基准模型,然后对系列零件设计表中的各个参数进行修改,从而可对基准零部件在不同配置下创建多个系列的零件或部件,这种方法适合于参数较少、比较简单的零件;对于比较复杂的零部件,将其参数划分为主动参数和从动参数,并建立两者之间的函数关系,从动参数的变化可由主动参数来驱动,只需对主动参数进行配置即可实现系列零部件的生成。

        2.基于SolidWorks二次开发的参数化设计

        方法有以下两种: 

        1)完全用程序驱动来实现三维模型的参数化设计,该方法实现过程比较困难,它要求程序开发人员必须精通大量的API函数,所以开发周期较长,优点在于能完成非常复杂零件的实体造型;

         2)在建立零部件三维模型的过程中,预先设置合理的参数,并用SolidWorks特有的宏命令将建模过程的操作完全录制下来,再通过VB/VC 程序来驱动设计变量从而实现零件的更新。优点: 编程较简单,通用性好,还能通过VB 建立的操作界面来实现完全的人机交互,便于操作。

         专用CAD系统开发过程

         1. 部件参数化设计

          在SolidWorks环境下建立零件模型,并将其过程用宏完全记录。在建模过程中需要保证其规范性,以减少不相关、冗长代码的出现,从而简化程序的调试过程。

        2.编译宏程序代码

        SolidWorks宏代码为VBA语言,为使其能在VB环境下打开,需要进行必要的编译。

        3.关联参数配置

        部件由于其结构复杂,很难直接用程序驱动生成,因此选用基于程序驱动和系列表配置相结合的方式进行部件的参数化建模。即在零件参数化设计的基础上,对装配体关键尺寸进行关联配置,并于零件特征尺寸相关联,从而保证部件在主动尺寸改变时驱动零件进行相应的改变。

       模型数据库

       零部件参数化建模时,设定主动尺寸,并利用Access数据库建立主动尺寸相应的参数哭,然后与人机交互界面的text 文本框、ADO数据控件等建立一一对应关系。通过数据库系统,用户在进行零部件建模时,可首先输入特征参数进行所需零部件的查询,如存在便可直接引用,减少了数据的重复输入;若不存在可通过直接输入或修改个别参数来完成建模。同时,数据库为开放式的,用户可以进行添加,删除等操作。 

      3.基于VB的用户窗体开发

      利用VB6.0创建可视化的人机交互式界面,用text文本框作为输入参数的窗口,并与驱动程序中对应的设计变量连接从而实现调用。将编辑后的宏代码复制到确定按钮的单击命令下,再进行必要的修改。选择数据库数据库或输入所需各项数据后,按下建模按钮完成参数调用及建模过程,并生成所需零部件的三维模型。

       4.二次开发程序与SolidWorks的集成

       为了提高二次开发程序的可操作性,将其生成 DLL文件,以插件的形式直接嵌入SolidWorks内部。在之一过程,必须定义DLL文件与SolidWorks连接的接口。SolidWorks插件文件与SolidWorks接口的函数如下: 

       SWAddin.ConnectToSW 和  SWAddin.DisconnectFromSW

       建立连接后,插件文件可以通过添加菜单的形式来形成进程内调用。这种方法可以较大节省内存控件,并且调用外部程序非常方便,同时实现了和 SolidWorks软件之间的无缝集成,大大提高了设计效率。

        插件的加载和卸载代码如下: 

         ii=iSolidWorks  AddMenu(swDocPART,"专用CAD系统(&J)",5) //菜单添加代码

         bRet=iSolidWorks.RemoveMenu(swDocPART,"专用CAD系统(&J)","")//菜单卸载代码

       应用实例

        加载 专用CAD系统插件,进入建模界面,选择或输入合适的参数,点击“建模” 得到装配体模型效果图。

原文地址:https://www.cnblogs.com/leojun/p/2286933.html