solidworks参数化设计的意思就是将模型中草图的尺寸数据(长度、角度、直径等)、模型的特征数据(阵列数量、旋转角度、拉伸切除的深度等等)转换为一个参数,并通过方程式让这些尺寸相互关联起来,通过修改参数来达到快速修改模型的目的。

在solidworks的参数化设计中,我们还可以使用函数来实现更多的功能。函数有三角函数、int取整函数、log对数函数、if条件判断函数这几类。

今天,猫亮设计用一个例子来介绍一下参数化设计中的if函数怎么用。

  • 下面这个模型,我们将要对其参数化,当平板的长度缩短的时候,其长度小于或等于内部两个圆形特征长度方向上的最大尺寸的时候,我们就将其中的一个圆放置在正中心。
  • 先说一下总体思路:我们将平板的长度、圆的直径、圆距中心的距离、圆距离左右边缘的距离都设置为一个单独的参数,然后对圆距离左右边缘的距离进行判断,如果距离小于或等于0,那么就将圆放置在中央。

solidworks参数化设计中的if函数怎么用

下面,猫亮设计具体来讲述一下具体做法。

基础模型的建立

  • 模型的建立主要有三个步骤,先用草图绘制绘制一个长方形,并将长方形的长和宽标注出来,然后凸台拉伸出来一个平板。
  • 在平板前端面纵向中心线上使用草图绘制左边的一个圆,标注圆到中心的距离。
  • 然后使用镜像,以中间平面为镜像基准面,将左侧圆镜像到右侧。

solidworks参数化设计中的if函数怎么用

全局变量建立

  • 菜单栏【工具】→【方程式】,将下图中的方程式调出来,在全局变量中添加以下参数。
  • 其中"边距"= ( "长度" - "距中心距离" * 2 - "直径" ) / 2
  • 注:表达式中的符号需要使用英文输入法下的符号,变量名称可以使用中文,也可以使用字母

solidworks参数化设计中的if函数怎么用

  • 按照下图,对将图中的尺寸链接到全局变量中,具体方法是双击尺寸数据,在出现的对话框中填入“=”号,将尺寸参数化。参数化后的尺寸会有一个方程式的标记。
  • 如果你点击模型后,相关的尺寸数据没有显示出来,那么请看前面的内容“solidworks如何在三维模型上显示所有尺寸”。

solidworks参数化设计中的if函数怎么用

  • 上一步我们将尺寸参数化以后,剩下的工作就是添加逻辑关系了。
  • 方程式、整体变量、及尺寸参数表中,在特征一栏,我们点击空白处,然后点击设计树中的镜像,将镜像特征添加到参数表中。我们输入以下方程式:

"镜向1"= IIF ( "边距" <= 0 , "suppressed" , "unsuppressed" )

这个方程式的意思是,如果边距小于等于0,那么就压缩镜像特征,如果不小于0,那么就不压缩镜像特征。

  • 镜像特征压缩后,右侧的圆形特征同步会被压缩,剩下的我们只需要把左边的圆形特征移动到中间就行了,我们对D2@草图2尺寸的关系式进行更改,加入判断语句。

"D2@草图2"= IIF ( "边距" <= 0 , "距中心距离" = 0 , "距中心距离" )

这个方程式的意思是,如果边距小于等于0,那么D2@草图2=0,如果不小于0,那么D2@草图2=50。

solidworks参数化设计中的if函数怎么用

这样,我们就完成了这个模型的参数化。我们将长度改成150看看效果,是不是很神奇?被惊艳到了没有?

solidworks参数化设计中的if函数怎么用

下面,猫亮设计把这个例子中的参数都复制出来,有兴趣的朋友可以拿去试试。

"长度"=200

"直径"= 50

"距中心距离"= 50

"边距" = ( "长度" - "距中心距离" * 2 - "直径" ) / 2

"镜向1"= IIF ( "边距" <= 0 , "suppressed" , "unsuppressed" )

"D1@草图2"="直径"

"D2@草图2"= IIF ( "边距" <= 0 , "距中心距离" = 0 , "距中心距离" )

"D2@草图1"="长度"