基于SolidWorks的机械零件参数化设计
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Machi ne Bui ld ing & A utomation , Oct 2004 , 33(5 ):15 ~ 17
1 机械零件参数化设计的两种 方法
1 .1 用系列零件设计表生成配置实现 机械零部件的参数化设计
要在 SolidWo rks 环境中通过 Excel 变量表实 现机械零件的参数化设计功能 , 必须首先建立模板 模型 , 通过对系列零件设计表中各个参数的修改来 生成模板零部件的不同配置 , 每个配置就是一个不 同的零件 。即在 Excel 变量表中指定参数 , 设计者 可以创建多个不同配置的零件或装配体 。 系列零 件设计表 保存在模型文件中 , 所 以 SolidWorks 对 模型的更改不会影响原来建立的 Excel 配置文件 。 系列零件设计表可以控制零件或装配体的许多项 目 , 其中主要包括 :特征尺寸和压缩状态 ;配置属性 (包括材料明细表中的零 件编号 、备 注 、自定 义属 性);零部件的压缩状态 、显示状态 、参考配置 、颜色 等 ;装配体特征的尺寸 、压缩状态 ;配合中的距离和 角度配合的尺寸 、压缩状态等 。
b)在 VB 中 建 立 用 户 界 面 输 入 窗 口 。 将 SolidWorks 中录制的宏剪切并粘贴到确定按钮的 单击命令下 , 对此代码进行编辑 。
·机械制造与研究· 王 东 , 等·基于 SolidWorks 的机械零件参数化设计
基于 SolidWorks 的机械零件参数化设计
王 东 , 蒲小琼
(四川大学制造科学与工程学院 , 四川 成都 610065)
摘 要 :介绍了基于 SolidWorks 的机械零件参数化设计的两种方法 ;详尽阐述了用系列零件 设计表生成配置和用 Visual Basic 调用 SolidWorks API 函数对其进行二次开发来分别实现机 械零件参数化设计的基本思想和实现流程 。 关键词 :参数化设计 ;配置 ;SolidWorks ;二次开发 ;Visual Basic 中图分类号 :TH122 文献标识码 :A 文章编号 :1671-5276(2004)05-0015-03
象属 于模型 层 , 是 SlidWorks 对象 最主要 的子 对 象 。 用 ModelDoc 对象可以 实现与实 体模型相 关 的各类操作 。 ModelDoc 对象包括 PartDoc 、Assembly Doc、 Drawing Doc 、 Feature 、 Dimension 、 DesignT able 等对象 。 在 SolidWorks 中 , 有三种类 型 的文件 :零件 、装配体和工程图 , 每种文件类型都有 相应的 AP I 对象 。 PartDoc 对 象提供了执行 零件 模型操作的函数 , 如拉伸(FeatureExt rusion)、旋转 (Feat ureRevolve)等 ;AssemblyDoc 对象提供了执行 装配操作的函数 , 如添加新零件(AddComponent)、 插入配合条 件(AddM ate)等 ;Draw ingDoc 对象 提 供了执行工程图操作的函数 , 如对模型的尺寸 、注
图 1 按表 1 设置所生成的相应零件
1 .2 基于 SolidWorks 二次开发的机械零件 参数化设计
任何支持 OLE(Object Linking and Embedding , 对象的链接与嵌入)和 COM (Com ponent Object Model , 组件对象模型)技术的编程语言都可以作 为 SolidWorks 的开发工具 。由于 Visual Basic 具有 功能齐全 、易学易用的特点 , 所以本文采用 VB 调 用 SolidWorks 的 API 函数来作为 SolidWo rks 的二 次开发工具 。 1 .2 .1 SolidWorks 二次开发的机械零件参数化设 计基本思想
Parametrical Design of Mechanical Parts Based on SolidWorks
WANG Dong , P U Xiao-qiong (Sichuan University , Manufacture Science and Engineering Academy , SC Chengdu 610065 , China) Abstract :T wo methods of paramet rical design for mechanical parts based on SolidWorks are introduced in the paper .T he paper explains t he f undament al thought and the realization flow by means of Visual Basic , w hich calls for SolidWorks API to its furt her development .The paper also show s how to em ploy design table to produce conf ig uration realizing paramet rical design fo r mechanical part s . Key words:paramet rical desig n ;configuration ;f urther development of solidw orks ;visual basic
表 1 系统零件设计表
表 1 中第一行是标题 , 提示现在操作的零件对 象 ;第二行是配置项目 , 在这一行中设定需要进行 配置的零件尺寸和零件特征 ;第三行以下是系列零 件的实例 , 在 A 列中输入零件实例的名称 , 在其他 列中输入相应配置项目的设定 , 如尺寸的数值 、特 征的压缩状态等 。 图 1 是表 1 所设配置生成的相 应零件 。
模型 。 1 .2 .4 设计实例
在机器或设备中 , 齿轮是一种常用零件 , 用于 传递动力和运动 , 齿轮传动可以完成减速 、增速 、变 向 、换向等动作 。 同一类齿轮的形 状结构基本相 同 , 只是相对大小有所变化 , 因此 , 可以根据齿轮设 计参数对其进行参数化设计 。 设计步骤为 :
a)在 SolidWorks 中 , 建立模板零件 的三维模 型 。 为了尽量减少驱动尺寸的数目 , 在有关联的尺
分析机械零部件的结构特征 , 对有关联的尺寸 用方程式约束 , 在 SolidWo rks 环境中 , 尽量运用添 加几何关系的方 法建立模板模型 。VB 程序 根据 不同的模型自动获取设计变量 , 将其特征尺寸转化 为参数化变量 , 并按照 VB 用户界面窗口输入的参 数值对设计变量的修改来重建新的三维模型 , 实现 过程如图 2 所示 。
寸之间建立方程式 , 确定需要用户输入的参数化独 立变量 。 机械零件的各个特征尺寸之间如大小 、角 度 、直径 、半径 、坐标位置等常常存在倍数关系 、三 角函数关系等 , 这些约束关系不能通过添加几何关 系得到 , 而使用方程约束 , 就可以很好地解决这个 问题 。SolidWorks 中 , 系统以尺寸名称作为方程中 的变量名称参与计算 。 将整个建模过程录制成宏 。
0 引言
许多机械零件的形状结构具有共同特征 , 只是 在相对大小或局部特征上存在一定的差异 , 如果能 够通过一个模板模型衍生出不同的模型 , 就会大大 提高设计效率 。 参数化设计是将系列化 、通用化和 标准化的定型产品中随产品规格不同而变化的参 数用相应的变量代替 , 通过对变量的修改 , 从而实 现同类结构机械零件设计的参数化 。 参数化造型 的基本思想是用数值约束 、几何约束和方程约束来 说明产品模型的形状特征 , 从而得到一簇在形状或 功能上具有相似性的设计方案 。 参数化实体造型 的关键是几何约束关系的提取 、表达 、求解以及参 数化几何模型的构建 。
以在 SolidWorks 设计环境中直接在线编辑零件设 计表 。系列零件设计表有规定的格式 , 每一单元格 的参数 和数据 都有 一定 的语 法要 求和含 义 。 在 SolidWorks 中 , 系统以尺寸或特征的名称作为不同 配置的变量名参与计算 , 驱动模型 几何形状的改 变 。 系列零件设计表中使用的尺寸 、特征 、零部件 和配置的名称必须与 模板模型中的 名称相匹配 。 尺寸标注的参数语法格式是“尺寸 @特征”或“尺寸 @草图 <n >” ;其他参数的语法格式是“ $关键字 @特征”或“ $关键字 @零部件 <实例 >” 。系列零 件设计表如表 1 所示 :
解 、材料明细表(BOM)等进行添加或修改 。 1 .2 .3 SolidWorks 宏
宏是Baidu Nhomakorabea系列命令的集合 , 相当于 DOS 操作系
· 16 ·
h tt p ://ZZHD .chinajournal .net .cn E-mail :ZZHD @chinajournal.net .cn 《机械制造与自动化》
图 2 重建新三维模型的实现过程
1 .2 .2 SolidWorks API 对象概述 SolidWorks AP I 使用面向对象的方法 , 其对象
模型是一个多层次的对 象网络 , 即 对象分为若干 层 , 每一层又包括若干子对象 , 每个对象又都有自
己的属 性 、方法和事 件 。 对象是代 码和数据的集 合 , 属性用于描述对象的特征 , 方法为对象实施一 些动作 。 为了 调用 SolidWorks API 的 方法 或属 性 , 首先要获得对象 。 用户通 过对 SolidWorks 对 象所拥有的属性和方法的操作 , 可以建立适合自己 需要的 、专用的 SolidWorks 功能模块 。 最高层次 的对象 是 SlidWo rks , 它 包 括 M odelDoc 、Environment 、 F rameAtt ributeDef 、 Modeler 、 SWP ropertySheet 以及一些其他的对象 。该对象封装了很多 方法 , 可以实现应用程序的最基本的操作 , 如生成 、 打开 、关闭 、设置当前的激活文件等 。 ModelDoc 对
·机械制造与研究· 王 东 , 等·基于 SolidWorks 的机械零件参数化设计
统下的批处 理文件 。 为了实现 VB 程序 和 SolidWorks 之间的参数传递 , 可以录制使用 SolidWorks 用户界面执行的操作 , 然后让宏重 新执行这些操 作 。宏所包含的调用相当于使用用户界面执行操 作时对 API 的调用 。 通过记录宏和交互式的执行 任务 , 可以简化编程过程 。 在编写程序代码前 , 都 是录制宏来用作程序的基础 , 然后对宏进行编辑 , 将其特征尺寸转化为参数化变量 , 用 VB 界面窗口 中用户输入的参数值更新变量 , 即可生成新的三维
SolidWorks 是世界上第一套基于 Windows 系 统开发的三维机械设计 CAD 软件 。该软件提供了 非全约束的参数化实体特征建模与曲面建模相结 合的技术 , 具 有强大 的零件 设计功 能 。 在 SolidWorks 中 , 机械零件参数化设计主要通过两种方法 实现 :一 是利用在 内嵌的 Excel 工 作表中 指定参 数 , 创建多个不同配置的零件或装配体 ;二是利用 编程语言作为开发 工具 , 对 SolidWorks 进行二次 开发 , 用程序实现参数化设计 。
模板模 型建好以 后 , 在 SolidWorks 的菜单 栏 中选择【插入】-【系列零件设计表】, 再在属性管理 器中选择“空白(K)” , 系统将自动在 SolidWorks 环 境中插入一个空白的 Excel 电子表格 , 设计者即可
· 15 ·
·机械制造与研究· 王 东 , 等·基于 SolidWorks 的机械零件参数化设计
1 机械零件参数化设计的两种 方法
1 .1 用系列零件设计表生成配置实现 机械零部件的参数化设计
要在 SolidWo rks 环境中通过 Excel 变量表实 现机械零件的参数化设计功能 , 必须首先建立模板 模型 , 通过对系列零件设计表中各个参数的修改来 生成模板零部件的不同配置 , 每个配置就是一个不 同的零件 。即在 Excel 变量表中指定参数 , 设计者 可以创建多个不同配置的零件或装配体 。 系列零 件设计表 保存在模型文件中 , 所 以 SolidWorks 对 模型的更改不会影响原来建立的 Excel 配置文件 。 系列零件设计表可以控制零件或装配体的许多项 目 , 其中主要包括 :特征尺寸和压缩状态 ;配置属性 (包括材料明细表中的零 件编号 、备 注 、自定 义属 性);零部件的压缩状态 、显示状态 、参考配置 、颜色 等 ;装配体特征的尺寸 、压缩状态 ;配合中的距离和 角度配合的尺寸 、压缩状态等 。
b)在 VB 中 建 立 用 户 界 面 输 入 窗 口 。 将 SolidWorks 中录制的宏剪切并粘贴到确定按钮的 单击命令下 , 对此代码进行编辑 。
·机械制造与研究· 王 东 , 等·基于 SolidWorks 的机械零件参数化设计
基于 SolidWorks 的机械零件参数化设计
王 东 , 蒲小琼
(四川大学制造科学与工程学院 , 四川 成都 610065)
摘 要 :介绍了基于 SolidWorks 的机械零件参数化设计的两种方法 ;详尽阐述了用系列零件 设计表生成配置和用 Visual Basic 调用 SolidWorks API 函数对其进行二次开发来分别实现机 械零件参数化设计的基本思想和实现流程 。 关键词 :参数化设计 ;配置 ;SolidWorks ;二次开发 ;Visual Basic 中图分类号 :TH122 文献标识码 :A 文章编号 :1671-5276(2004)05-0015-03
象属 于模型 层 , 是 SlidWorks 对象 最主要 的子 对 象 。 用 ModelDoc 对象可以 实现与实 体模型相 关 的各类操作 。 ModelDoc 对象包括 PartDoc 、Assembly Doc、 Drawing Doc 、 Feature 、 Dimension 、 DesignT able 等对象 。 在 SolidWorks 中 , 有三种类 型 的文件 :零件 、装配体和工程图 , 每种文件类型都有 相应的 AP I 对象 。 PartDoc 对 象提供了执行 零件 模型操作的函数 , 如拉伸(FeatureExt rusion)、旋转 (Feat ureRevolve)等 ;AssemblyDoc 对象提供了执行 装配操作的函数 , 如添加新零件(AddComponent)、 插入配合条 件(AddM ate)等 ;Draw ingDoc 对象 提 供了执行工程图操作的函数 , 如对模型的尺寸 、注
图 1 按表 1 设置所生成的相应零件
1 .2 基于 SolidWorks 二次开发的机械零件 参数化设计
任何支持 OLE(Object Linking and Embedding , 对象的链接与嵌入)和 COM (Com ponent Object Model , 组件对象模型)技术的编程语言都可以作 为 SolidWorks 的开发工具 。由于 Visual Basic 具有 功能齐全 、易学易用的特点 , 所以本文采用 VB 调 用 SolidWorks 的 API 函数来作为 SolidWo rks 的二 次开发工具 。 1 .2 .1 SolidWorks 二次开发的机械零件参数化设 计基本思想
Parametrical Design of Mechanical Parts Based on SolidWorks
WANG Dong , P U Xiao-qiong (Sichuan University , Manufacture Science and Engineering Academy , SC Chengdu 610065 , China) Abstract :T wo methods of paramet rical design for mechanical parts based on SolidWorks are introduced in the paper .T he paper explains t he f undament al thought and the realization flow by means of Visual Basic , w hich calls for SolidWorks API to its furt her development .The paper also show s how to em ploy design table to produce conf ig uration realizing paramet rical design fo r mechanical part s . Key words:paramet rical desig n ;configuration ;f urther development of solidw orks ;visual basic
表 1 系统零件设计表
表 1 中第一行是标题 , 提示现在操作的零件对 象 ;第二行是配置项目 , 在这一行中设定需要进行 配置的零件尺寸和零件特征 ;第三行以下是系列零 件的实例 , 在 A 列中输入零件实例的名称 , 在其他 列中输入相应配置项目的设定 , 如尺寸的数值 、特 征的压缩状态等 。 图 1 是表 1 所设配置生成的相 应零件 。
模型 。 1 .2 .4 设计实例
在机器或设备中 , 齿轮是一种常用零件 , 用于 传递动力和运动 , 齿轮传动可以完成减速 、增速 、变 向 、换向等动作 。 同一类齿轮的形 状结构基本相 同 , 只是相对大小有所变化 , 因此 , 可以根据齿轮设 计参数对其进行参数化设计 。 设计步骤为 :
a)在 SolidWorks 中 , 建立模板零件 的三维模 型 。 为了尽量减少驱动尺寸的数目 , 在有关联的尺
分析机械零部件的结构特征 , 对有关联的尺寸 用方程式约束 , 在 SolidWo rks 环境中 , 尽量运用添 加几何关系的方 法建立模板模型 。VB 程序 根据 不同的模型自动获取设计变量 , 将其特征尺寸转化 为参数化变量 , 并按照 VB 用户界面窗口输入的参 数值对设计变量的修改来重建新的三维模型 , 实现 过程如图 2 所示 。
寸之间建立方程式 , 确定需要用户输入的参数化独 立变量 。 机械零件的各个特征尺寸之间如大小 、角 度 、直径 、半径 、坐标位置等常常存在倍数关系 、三 角函数关系等 , 这些约束关系不能通过添加几何关 系得到 , 而使用方程约束 , 就可以很好地解决这个 问题 。SolidWorks 中 , 系统以尺寸名称作为方程中 的变量名称参与计算 。 将整个建模过程录制成宏 。
0 引言
许多机械零件的形状结构具有共同特征 , 只是 在相对大小或局部特征上存在一定的差异 , 如果能 够通过一个模板模型衍生出不同的模型 , 就会大大 提高设计效率 。 参数化设计是将系列化 、通用化和 标准化的定型产品中随产品规格不同而变化的参 数用相应的变量代替 , 通过对变量的修改 , 从而实 现同类结构机械零件设计的参数化 。 参数化造型 的基本思想是用数值约束 、几何约束和方程约束来 说明产品模型的形状特征 , 从而得到一簇在形状或 功能上具有相似性的设计方案 。 参数化实体造型 的关键是几何约束关系的提取 、表达 、求解以及参 数化几何模型的构建 。
以在 SolidWorks 设计环境中直接在线编辑零件设 计表 。系列零件设计表有规定的格式 , 每一单元格 的参数 和数据 都有 一定 的语 法要 求和含 义 。 在 SolidWorks 中 , 系统以尺寸或特征的名称作为不同 配置的变量名参与计算 , 驱动模型 几何形状的改 变 。 系列零件设计表中使用的尺寸 、特征 、零部件 和配置的名称必须与 模板模型中的 名称相匹配 。 尺寸标注的参数语法格式是“尺寸 @特征”或“尺寸 @草图 <n >” ;其他参数的语法格式是“ $关键字 @特征”或“ $关键字 @零部件 <实例 >” 。系列零 件设计表如表 1 所示 :
解 、材料明细表(BOM)等进行添加或修改 。 1 .2 .3 SolidWorks 宏
宏是Baidu Nhomakorabea系列命令的集合 , 相当于 DOS 操作系
· 16 ·
h tt p ://ZZHD .chinajournal .net .cn E-mail :ZZHD @chinajournal.net .cn 《机械制造与自动化》
图 2 重建新三维模型的实现过程
1 .2 .2 SolidWorks API 对象概述 SolidWorks AP I 使用面向对象的方法 , 其对象
模型是一个多层次的对 象网络 , 即 对象分为若干 层 , 每一层又包括若干子对象 , 每个对象又都有自
己的属 性 、方法和事 件 。 对象是代 码和数据的集 合 , 属性用于描述对象的特征 , 方法为对象实施一 些动作 。 为了 调用 SolidWorks API 的 方法 或属 性 , 首先要获得对象 。 用户通 过对 SolidWorks 对 象所拥有的属性和方法的操作 , 可以建立适合自己 需要的 、专用的 SolidWorks 功能模块 。 最高层次 的对象 是 SlidWo rks , 它 包 括 M odelDoc 、Environment 、 F rameAtt ributeDef 、 Modeler 、 SWP ropertySheet 以及一些其他的对象 。该对象封装了很多 方法 , 可以实现应用程序的最基本的操作 , 如生成 、 打开 、关闭 、设置当前的激活文件等 。 ModelDoc 对
·机械制造与研究· 王 东 , 等·基于 SolidWorks 的机械零件参数化设计
统下的批处 理文件 。 为了实现 VB 程序 和 SolidWorks 之间的参数传递 , 可以录制使用 SolidWorks 用户界面执行的操作 , 然后让宏重 新执行这些操 作 。宏所包含的调用相当于使用用户界面执行操 作时对 API 的调用 。 通过记录宏和交互式的执行 任务 , 可以简化编程过程 。 在编写程序代码前 , 都 是录制宏来用作程序的基础 , 然后对宏进行编辑 , 将其特征尺寸转化为参数化变量 , 用 VB 界面窗口 中用户输入的参数值更新变量 , 即可生成新的三维
SolidWorks 是世界上第一套基于 Windows 系 统开发的三维机械设计 CAD 软件 。该软件提供了 非全约束的参数化实体特征建模与曲面建模相结 合的技术 , 具 有强大 的零件 设计功 能 。 在 SolidWorks 中 , 机械零件参数化设计主要通过两种方法 实现 :一 是利用在 内嵌的 Excel 工 作表中 指定参 数 , 创建多个不同配置的零件或装配体 ;二是利用 编程语言作为开发 工具 , 对 SolidWorks 进行二次 开发 , 用程序实现参数化设计 。
模板模 型建好以 后 , 在 SolidWorks 的菜单 栏 中选择【插入】-【系列零件设计表】, 再在属性管理 器中选择“空白(K)” , 系统将自动在 SolidWorks 环 境中插入一个空白的 Excel 电子表格 , 设计者即可
· 15 ·
·机械制造与研究· 王 东 , 等·基于 SolidWorks 的机械零件参数化设计