VSS扫描详解BY:王庆丰VSS也叫可变截面扫描一、首先,我们来理解一下扫描。
如下图:1.用一个不变的截面(位置和大小都不变)沿着一条轨迹线扫描过去。
此轨迹线就是原点轨迹线,其含义就是扫描过种中不管是哪个截面,他的原点始终是在这条线上。
有且只有一条,且必须第一个选。
2.如果只是确定好截面的原点,截面的位置还没有完全确定下来。
扫描过程默认截面垂直于原点轨迹。
所以截面在空间的位置就完全确定了。
3.起点和终点位置可以改,不一定要是草绘线的起点和终点。
只要改图中数字(0.000)即可。
如果是正数,即扫描长度大于轨迹线长度时,加长部份的轨迹线是什么样呢?加长部份是直线且长度等你改的数值,且与草绘线的起点或终点相切终点起点二、可变截面扫描其特点是:截面是可以变化的扫描。
截面的变化有两种1.截面大小变了,如下图:Sd3=40+trajpar*100≤Trajpar≤1扫描过程中截面中的一条边从40变到50,起始点的时候是40,终点的时候是50也就是说在起始点时截面是一个40*sd4的矩形。
终点时截面是一个50*sd4的矩形。
(上图中sd4是固定值,当然也可以变化)截平面默认为垂直于轨迹。
(方向控制下面讲,暂时用垂直于轨迹)2.截面的位置变了。
如上图,截面大小没变,只是矩形的下面一条边相对原点轨迹线的位置变了。
位置由起始点的10变到终点的50。
(截平面默认为垂直于轨迹)说明:Trajpar与原点轨迹线对应。
Trajpar=0。
说明截面处在原点轨迹线的起点Trajpar=1。
说明截面处在原点轨迹线的终点特别的当Trajpar=0.5时。
说明截面处在原点轨迹线的中点。
我们来验证一下一般情况。
当Trajpar=0.3时sd5=10+trajpar*50=10+0.3+50=25。
新建一个点。
选原点轨迹线。
比率0.3过该点作一个平面,与轨迹线垂直。
建一个截面,新建工程图与计算结果一致。
总结:截面的变化可以是大小或位置。
可以是单个的尺寸也可是多个尺寸同时变化,可以是线性尺寸,也可以是角度尺寸。
当然截面大小或位置的控制不一定只能用关系式。
可以用别的轨迹线或图形函数。
后面再讲以上几个例子只讲了截面,对于截面的方向都是用Creo默认的“垂直于轨迹”对于空间的任意一个截面,如果只知道一个原点是不能完全确定这个截面的。
所以接下来我们进一步来确定截面。
那么下一步就是确定Z方向了。
Z方向原点确认好了后,我们接下来确定Z方向,之所以称为Z方向而不称Z 轴,是因为截面坐标系是一个二维的X-Y坐标系,但截面要做移动扫描,将其移动方向称为Z方向。
确定Z方向时,CREO给出了三种方法:1.垂直于轨迹你可以在面板的“N”项中任选一条轨迹让扫描截面垂直于该轨迹,称为N轨迹。
N轨迹可以是原点轨迹,也可以是一般轨迹。
扫描截面在扫描移动过程中始终垂直于N轨迹,即N轨迹切向即是Z方向。
2.垂直于投影截面垂直于轨迹在平面上的投影。
即我们可以选一条轨迹线在平面上投影的切向作为Z方向。
3.恒定法向截面的法向(Z方向)始终与给定的方向平行。
方向可以是轴,曲线,平面。
X轴到现在为止我们已经确认了坐标系原点和Z方向。
下面我们确定二维截面的X方向。
即参考选项里的“水平/垂直控制”。
CREO缺省状态下会自动根据原点轨迹的法向确定X轴。
你也可以在“X”项中任选一条轨迹线。
该轨迹线与扫描截面有一点交点,该交点与坐标系原点的连线即为X轴。
注意:X轨迹不能与原点轨迹相交,因为两点才能确定一条直线,一相交就表明坐标原点和交点重合了,X轴给不出来。
过一点有无数条直线。
原点轨迹与N轨迹原点轨迹有且只有一条。
而且必须先选。
原点轨迹必须光滑。
不能有尖点。
(高等数学知识好的能理解,不能理解的就记住算了)当我们Z方向用“垂直于轨迹控制”时,可以选另外一条链作为Z方向轨迹。
也可以用原点轨迹是原点轨迹亦是N轨迹垂直于投影与恒定法向非常简单。
不作介绍。
X轨迹当Z确定好后,最后我们确定X就可以把截面完全确定了。
(Y轴根据右手螺旋法则确定)我们可以指其他任意一条轨迹为X轨迹。
是原点轨迹亦是N轨迹如上图:原点轨迹和N轨迹是一条。
链1为X轨迹。
我们还是以一般情况来举例说明。
设trajpar=0.3在“链1”上建一个点。
比率=0.3。
建一个平面,经过上面所建的点且垂直于N轨迹。
再建一个点。
N轨迹与上面所建平面的交点。
建一条直线,连接PNT0和PNT1点。
从PNT1到PNT0的方向就是X方向。
很显然,如果原点轨迹和X相交。
则PNT1和PNT0在扫描过程中就会重合。
此时X则不能确定,扫描失败。
至此,截面完全确定了。
如下图:上图实际上说明:当trajpar=0.3时。
可变截面的位置情况。
截面的控制方法1.函数关系实际上前面讲的例子就是用函数关系来控制截面的。
当然例子非常的简单,主要用到的数学函数有sin()及cos()。
a.草绘轨迹b.进入VSS选择上面的草绘为原点轨迹Z方向垂直于轨迹(上面草绘的线即是原点轨迹与是N轨迹)。
X轴自动c.草绘一个圆,标注圆的直径。
d.写关系式:sd3=100+sin(trajpar*360*15)*10其意义是: Trajpar对应整个草绘线Trajpar=0时,截面在起始点Trajpar=1时,截面在终点。
由于函数sin()是周期函数,sin(trajpar*360*15) 其最小正周期T=1/15,说明在整个扫描过程中sd3这个尺寸走了15个周期。
特别的当:Trajpar=1/15时。
Sd3=100读者可按上面的方法自行验证。
完成如果如下图关系式函数a.草绘轨迹b.进入VSS,选上一步建产的草绘为原点轨迹,Z方向垂直于轨迹,X轴自动c.草绘一个圆,加上关系式if trajpar>0.25&trajpar<0.75sd3=50+sin(trajpar*360*50)*5elsesd3=50endif此关系式相当一个分段函数Y=50+5*sin(x*360*5) x∈(0.25,0.75)Y=50 X∈[0,0.25]或者[0.75,1]2.轨迹有时候并不知道函数关系,可以通过附加轨迹线来控制截面中间的链是原点轨迹也是N轨迹。
链1和链2分别用来控制截面。
扫描过程中,截面上有一个点始终链1上,另外一个点在链2上。
一步VSS下图:分析:用一个与Front平面平行的平面去截此零件,其截面都是矩形,矩形高度都是一样。
只是宽度在中间有一段是变化的。
那我们把宽度用辅助轨迹去控制。
具体步奏:a.草绘轨迹b.进入VSS,先选直线为原点轨迹。
再按Ctrl选上右边的草绘线。
c.进入草绘,草绘一矩形。
两端点分别与原点轨迹和辅助轨迹重合。
点确定,完成。
3.图形3.1.图形特征从图标就可以很形象的看出来。
图形特征就是指函数的图形或者说曲线。
有些函数写关系式太麻烦,有些甚至写不出来。
这时候用图形特征来表达更合适。
下面看一个简单的例子。
点基准下的国“图形”系统提示为特征输入一个名字可以输入中文,确定。
既然是函数的图形,首先建一个坐标系按右图草绘。
很显然,此图形是一个分段函数。
当0≤x≤10 y=x当10<x≤20 y=103.2.Creo曲线表计算函数利用曲线表计算函数,可使用曲线表特征通过关系驱动尺寸。
这些尺寸可为截面、零件或装配尺寸。
格式如下:evalgraph("graph_name", x)其中:•graph_name- 曲线表的名称。
x- 是沿曲线表 x 轴的值,为其返回 y 值。
我们先来一个非常简单的例子帮助大家理解a.建一个图形特征。
b.草绘一条直线。
长度16c.进入VSS。
截面画一个圆。
标注圆的直径d.写上关系式:sd3=evalgraph("图形_1",trajpar*16)完成如图:这时候有人可能会说:搞那么麻烦,直接旋转不就得了。
我只是通过简单的例子来说明曲线表函数。
前面多次说过,Trajpar=0及Trajpar=1 时,是代表扫描的起点和终点。
当Trajpar=0时,Trajpar*16=0,evalgraph("图形_1",trajpar*16)=?看下图,很显然:evalgraph("图形_1",trajpar*16)=5 即x=0时,Y的值所以Trajpar=0时,sd3=5上图还标出了。
Trajpar=1时,sd3=10.815再例如:Trajpar=0.75时,Trajpar*16=0.75*16=12sd3取图形上X=12时的Y值。
Y=11.223.即sd3=11.223 注意:写关系式时,trajpar后的系数最好要与图形上的X 对应。
因为trajpar的范围是【0,1】如上面的例子,图形没变。
在写关系的时候把“trajpar*16”写成了“trajpar*12”了。
当trajpar=1,时,指的是扫描的终点。
这时候sd3=11.223。
而不是10.815读者可以自己验证trajpar等于其他值的情况。
另外一种情况。
如果把“trajpar*16”写成了“trajpar*20”了。
当trajpar=1时。
X=20,图形上没有Y的值。
这时系统会把16<X≤20的值找出来的。
见下图中红色线段虽然Creo不会把这条直线段画出来。
但Y的取值按这条直线段取。
这条直线段与图形在X=16处相切。
终点坐标为x=20凸轮a.建图形特征b.草绘一个直径200的圆。
并建轴线c.进入VSS。
选草绘圆为原点轨迹,Z方向垂直于轨迹。
d.选取轴线为草绘截面参考。
草绘一个矩形。
右边与轴重合。
e.输入关系sd4=evalgraph("1",trajpar*360)f.确定,完成。
通常,我们做凸轮时,图形中的X指的是角度。
扫描时指是曲线长度。
但是,曲线长度和角度正好是成正比关系。
弧长=圆心角*半径。
正好可以对应。
也就是说:Trajpar*360这个角度,正好在这个圆心角的弧长上。
常用函数前面已经介绍过几个,如:sin(),cos(),evalgraph() 下面详细介绍几个。
并通过实例讲解其中一些函数的用法1.abs()abs() 为绝对值函数2.sqrt()sqrt()开平方函数。
也可以实现绝对函数一样的功能。
如sqrt(t^2)等价于abs(t)3.ceil()与floor()ceil() 为不小于其值的最小整数floor()不大于其值的最大整数如:ceil(2.56)=3,ceil(-2.5)=-2floor(2.56)=2 floor(-2.5)=-3括号内可以是实数类型参数可以给函数ceil和floor加一个可选的自变量,用它指定要圆整的小数位数。
语法是:ceil(参数名或数字, 要圆整的小数位数)floor(参数名或数字, 要圆整的小数位数)如 ceil(2.56,1)=2.6 ceil(-2.56,1)=-2.5floor(2.56,1)=2.5 floor(-2.56,1)=-2.6再例如:A=2.56Ceil(a,1)=2.6 floor(a,1)=2.54.mod()余项函数mod(x,y)的计算方法是:a.先求出x/y的整数部份。