宏程序计算公式及讲解

proe函数公式

名称:正弦曲线

建立环境:Pro/E软件、笛卡尔坐标系

x=50*t

y=10*sin(t*360)

z=0

名称:螺旋线(Helical curve)

建立环境:PRO/E;圆柱坐标(cylindrical)

r=t

theta=10+t*(20*360)

z=t*3

蝴蝶曲线

球坐标 PRO/E

方程:rho = 8 * t

theta = 360 * t * 4

phi = -360 * t * 8

Rhodonea 曲线

采用笛卡尔坐标系

theta=t*360*4

x=25+(10-6)*cos(theta)+10*cos((10/6-1)*theta)

y=25+(10-6)*sin(theta)-6*sin((10/6-1)*theta)

*********************************

圆内螺旋线

采用柱座标系

theta=t*360

r=10+10*sin(6*theta)

z=2*sin(6*theta)

渐开线的方程

r=1

ang=360*t

s=2*pi*r*t

x0=s*cos(ang)

y0=s*sin(ang)

x=x0+s*sin(ang)

y=y0-s*cos(ang)

z=0

对数曲线

z=0

x = 10*t

y = log(10*t+0.0001)

球面螺旋线(采用球坐标系)

rho=4

theta=t*180

phi=t*360*20

名称:双弧外摆线

卡迪尔坐标

方程: l=2.5

b=2.5

x=3*b*cos(t*360)+l*cos(3*t*360)

Y=3*b*sin(t*360)+l*sin(3*t*360)

名称:星行线

卡迪尔坐标

方程:

a=5

x=a*(cos(t*360))^3

y=a*(sin(t*360))^3

名稱:心脏线

建立環境:pro/e,圓柱坐標

a=10

r=a*(1+cos(theta))

theta=t*360

名稱:葉形線

建立環境:笛卡儿坐標

a=10

x=3*a*t/(1+(t^3))

y=3*a*(t^2)/(1+(t^3))

笛卡儿坐标下的螺旋线

x = 4 * cos ( t *(5*360))

y = 4 * sin ( t *(5*360))

z = 10*t

一抛物线

笛卡儿坐标

x =(4 * t)

y =(3 * t) + (5 * t ^2)

z =0

名稱:碟形弹簧

建立環境:pro/e

圓柱坐

r = 5

theta = t*3600

z =(sin(3.5*theta-90))+24*t

方程: 阿基米德螺旋线

x = (a +f sin (t))cos(t)/a

y = (a -2f +f sin (t))sin(t)/b

pro/e关系式、函数的相关说明资料?

关系中使用的函数

数学函数

下列运算符可用于关系(包括等式和条件语句)中。

关系中也可以包括下列数学函数:

cos () 余弦

tan () 正切

sin () 正弦

sqrt () 平方根

asin () 反正弦

acos () 反余弦

atan () 反正切

sinh () 双曲线正弦

cosh () 双曲线余弦

tanh () 双曲线正切

注释:所有三角函数都使用单位度。

log() 以10为底的对数

ln() 自然对数

exp() e的幂

abs() 绝对值

ceil() 不小于其值的最小整数

floor() 不超过其值的最大整数

可以给函数ceil和floor加一个可选的自变量,用它指定要圆整的小数字数。

带有圆整参数的这些函数的语法是:

ceil(parameter_name或number, number_of_dec_places)

floor (parameter_name 或 number, number_of_dec_places)

其中number_of_dec_places是可选值:

?可以被表示为一个数或一个使用者自定义参数。如果该参数值是一个实数,则被数控微信公号cncdar截尾成为一个整数。

?它的最大值是8。如果超过8,则不会舍入要舍入的数(第一个自变量),并使用其初值。

?如果不指定它,则功能同前期版本一样。

使用不指定小数部分位数的ceil和floor函数,其举例如下:

ceil (10.2) 值为11

floor (10.2) 值为 11

使用指定小数部分位数的ceil和floor函数,其举例如下:

ceil (10.255, 2) 等于10.26

ceil (10.255, 0) 等于11 [ 与ceil (10.255)相同 ]

floor (10.255, 1) 等于10.2

floor (10.255, 2) 等于10.26

曲线表计算

曲线表计算使使用者能用曲线表特征,通过关系来驱动尺寸。尺寸可以是草绘器、零件或组件尺寸。格式如下:

evalgraph(graph_name, x)

,其中graph_name是曲线表的名称,x是沿曲线表x-轴的值,返回y值。

对于混合特征,可以指定轨线参数trajpar作为该函数的第二个自变量。

注释:曲线表特征通常数控微信公号cncdar是用于计算x-轴上所定义范围内x值对应的y值。当超出范围时,y值是通过外推的方法来计算的。对于小于初始值的x值,系统通过从初始点延长切线的方法计算外推值。同样,对于大于终点值的x值,系统通过将切线从终点往外延伸计算外推值。

复合曲线轨道函数

在关系中可以使用复合曲线的轨道参数trajpar_of_pnt。

下列函数返回一个0.0和1.0之间的值:

trajpar_of_pnt(trajname, pointname)

其中trajname是复合曲线名,pointname是基准点名。

轨线是一个沿复合曲线的参数,在它上面垂直于曲线切线的平面通过基准点。因此,基准点不必位于曲线上;在曲线上距基准点最近的点上计算该参数值。

如果复合曲线被用作多轨道扫瞄的骨架,则trajpar_of_pnt与trajpar或1.0 - trajpar一致(取决于为混合特征选择的起点)。

关于关系

关系(也被称为参数关系)数控微信公号cncdar是使用者自定义的符号尺寸和参数之间的等式。关系捕获特征之间、参数之间或组件组件之间的设计关系,因此,允许使用者来控制对模型修改的影响作用。

关系是捕获设计知识和意图的一种方式。和参数一样,它们用于驱动模型 -改变关系也就改变了模型。

关系可用于控制模型修改的影响作用、定义零件和组件中的尺寸值、为设计条件担当约束(例如,指定与零件的边相关的孔的位置)。

它们用在设计过程中来描述模型或组件的不同部分之间的关系。关系可以是简单值(例如,d1=4)或复杂的条件分支语句。

关系类型

有两种类型的关系:

?等式 - 使等式左边的一个参数等于右边的表达式。这种关系用于给尺寸和参数赋值。例如:

简单的赋值:d1 = 4.75

复杂的赋值:d5 = d2*(SQRT(d7/3.0+d4))

?比较 - 比较左边的表达式和右边的表达式。这种关系通常用于作为一个约束或用于逻辑分支的条件语句中。例如:

作为约束:(d1 + d2) > (d3 + 2.5)

在条件语句中;IF (d1 + 2.5) >= d7

增加关系

可以把关系增加到:

?特征的截面(在草绘模式中,如果最初通过选择“草绘器”>“关系”>“增加”来创建截面)。

?特征(在零件或组件模式下)。

?零件(在零件或组件模式下)。

?组件(在组件模式下)。

当第一次选择关系菜单时,预设为查看或改变当前模型(例如,零件模式下的一个零件)中的关系。

要获得对关系的访问,从“部件”或“组件”菜单中选择“关系”,然后从“模型关系”菜单中选择下列命令之一:

?组件关系 - 使用组件中的关系。如果组件包含一个或多个子组件,“组件关系”菜单出现并带有下列命令:

─当前 - 缺省时是顶层组件。

─名称 - 键入组件名。

?骨架关系 - 使用组件中骨架模型的关系(只对组件适用)。

?零件关系 - 使用零件中的关系。

?特征关系 - 使用特征特有的关系。如果特征有一个截面,那么使用者就可选择:获得对截数控微信公号cncdar面(草绘器)中截面(草绘器)中关系的访问,或者获得对作为一个整体的特征中的关系的访问。

数组关系 - 使用数组所特有的关系。

注释:

─如果试图将截面之外的关系指派给已经由截面关系驱动的参数,则系统再生模型时给出错误信息。试图将关系指派给已经由截面之外关系驱动的参数时也同样。删除关系之一并重新生成。

─如果组件试图给已经由零件或子组件关系驱动的尺寸变量指派值时,出现两个错误信息。删除关系之一并重新生成。

─修改模型的单位元可使关系无效,因为它们没有随该模型缩放。有关修改单位的详细信息,请参阅“关于公制和非公制度量单位”帮助主题。

关系中使用参数符号

在关系中使用四种类型的参数符号:

?尺寸符号 - 支持下列尺寸符号类型:

─d# - 零件或组件模式下的尺寸。

─d#:# - 组件模式下的尺寸。组件或组件的进程标识添加为后缀。

─rd# - 零件或顶层组件中的参考尺寸。

─rd#:# - 组件模式中的参考尺寸(组件或组件的进程标识添加为后缀)。

─rsd# - 草绘器中(截面)的参考尺寸。

─kd# - 在草绘(截面)中的已知尺寸(在父零件或组件中)。

?公差 - 这些是与公差格式相关连的参数。当尺寸由数字的转向符号的时侯出项这些符号。

─tpm# - 加减对称格式中的公差;#是尺寸数。

─tp# - 加减格式中的正公差;#是尺寸数。

─tm# - 加减格式中的负公差;#是尺寸数。

?实例数 - 这些是整数参数,是数组方向上的实例个数。

─p# - 其中#是实例的个数。

注释:如果将实例数改变为一个非整数值,Pro/ENGINEER将截去其小数部分。例如,2.90将变为2。

?使用者参数 - 这些可以是由增加参数或关系所定义的参数。

例如:

Volume = d0*d1*d2

Vendor = Stockton Corp.

注释:

─使用者参数名必须以字母开头(如果它们要用于关系的话)。

─不能使用d#、kd#、rd#、tm#、tp#、或tpm#作为使用者参数名,因为它们是由尺寸保留使用的。

─使用者参数名不能包含非字母数字字符,诸如!、@、#、$。

 

如何计算原木旋切的单板数量

旋切运动学

在旋切过程中,旋刀的刃口在木段横断面上所走过的轨迹,称为旋切曲线。在这里将对下列两个问题进行讨论:设计旋切机运动学的依据和实际旋切时的运动轨迹.

设计旋切机运动学的依据

旋切木段的目的是得到厚度均匀的优质连续单板带,像纸卷展开一样。目前

有两种运动轨迹符合要求:阿基米德螺旋线和圆的渐开线。

阿基米德螺旋线 其基本公式为:

x=ɑsinφ cosφ

y=ɑφsinφ

从木段上旋出的单板名义厚度即为该曲线在J轴方向上螺线各节的螺距

(φ2=2π+φ1)。

要使△χ=常数,则cosφ必须等于1, φ=90°。当甲φ=90°时,y=aφsin90°=0

,即刀刃高度为零,刀刃应在x轴线上(即在通过木段回转轴线——卡轴中心线的水平面内)。也可以说,不管要求旋切单板厚度的大小如何,刀刃高度总是为零(h=0)

圆的渐开线 其公式为:

x=acosφ1+aφ1sinφ1

y= asinφ1-aφ1cosφ1

式中: φ1-------发生线至坐标中心点之间垂线与x轴之间夹角.

旋刀是沿着平行于x轴方向作直线运动,故其x轴方向上渐开线各节的螺距,即为单板的名义厚度.

S=△χ[acos(2π+φ1)+a(2π+φ1)sin(2π+φ1)]-[acosφ1+acosφ1+ aφ1sinφ1]

=[acosφ1+ a(2π+φ1)sinφ1] -[acosφ1+2φ1sinφ1]

=21πasinφl

若要求S为恒值(S=2πα),φl必须为2πn+270°,因此y=a sin270°—

acos270°=-a=h。为了保证单板质量,在旋切加工过程中希望旋刀相对于木

段的后角(切削角),或旋刀后面与铅垂面之间夹角(θ),应随木段旋切直径的

减小而自动变小,而h=-a=-s/2π之值是依s值改变而变化,故此时旋刀

的回转中心也应相应变化,这样旋切机结构太复杂了。由于这个原因,用圆的渐

开线作为设计旋切机旋刀与木段相互间的运动关系是不合适的。

与此相反,阿基米德旋线是比较理想的,不管单板的名义厚度的变化,A值

总为零,旋刀的回转中心线不必改变。因此,目前它被作为设计旋切机旋刀与木

段间运动关系的理论基础。

实际旋切时的运动轨迹

在生产中,旋刀刀刃安装高度(h)不一定同卡轴中心线连线在同一水平

面。这由于旋切木段的树种、旋切条件、旋切单板厚度、旋切机结构及精度不同

等原因。为了得到优质单板,装刀时h≠0,可为正值或负值,甚至旋刀中部可

略高于旋刀的两端。在不同旋刀刀刃安装位置(h值不同)时,旋切曲线将为:

h>0 此时旋切曲线近似于阿基米德螺旋线;

h=0 为阿基米德螺旋线;

0>h>-a 为伸长了的渐开线

h=-a 为渐开线;

h<-a 为缩短了的渐开线。

数学公式

飞碟

球坐标

rho=20*t^2

theta=60*log(30)*t

phi=7200*t

rho=200*t

theta=900*t

phi=t*90*10

篮子

圆柱坐标

r=5+0.3*sin(t*180)+t

theta=t*360*30

z=t*5

正弦曲线

笛卡尔坐标系

x=50*t

y=10*sin(t*360)

z=0

螺旋线(Helical curve)

圆柱坐标

r=t

theta=10+t*(20*360)

z=t*3

蝴蝶曲线

球坐标

rho = 8 * t

theta = 360 * t * 4

phi = -360 * t * 8

Rhodonea 曲线

采用笛卡尔坐标系

theta=t*360*4

x=25+(10-6)*cos(theta)+10*cos((10/6-1)*theta)

y=25+(10-6)*sin(theta)-6*sin((10/6-1)*theta)

圆内螺旋线

采用柱座标系

theta=t*360

r=10+10*sin(6*theta)

z=2*sin(6*theta)

渐开线的方程

r=1

ang=360*t \90*t

s=2*pi*r*t \pi*r.t/2

x0=s*cos(ang)

y0=s*sin(ang)

x=x0+s*sin(ang)

y=y0-s*cos(ang)

z=0

对数曲线

z=0

x = 10*t

y = log(10*t+0.0001)

球面螺旋线

采用球坐标系

rho=4

theta=t*180

phi=t*360*20

双弧外摆线

卡迪尔坐标

l=2.5

b=2.5

x=3*b*cos(t*360)+l*cos(3*t*360)

Y=3*b*sin(t*360)+l*sin(3*t*360)

星行线

卡迪尔坐标

a=5

x=a*(cos(t*360))^3

y=a*(sin(t*360))^3

心臟線

圓柱坐標

a=10

r=a*(1+cos(theta))

theta=t*360

葉形線

笛卡儿坐標

a=10

x=3*a*t/(1+(t^3))

y=3*a*(t^2)/(1+(t^3))

笛卡儿坐标下的螺旋线

x = 4 * cos ( t *(5*360))

y = 4 * sin ( t *(5*360))

z = 10*t

抛物线

笛卡儿坐标

x =(4 * t)

y =(3 * t) + (5 * t ^2)

z =0

碟形弹簧

圓柱坐标

r = 5

theta = t*3600

z =(sin(3.5*theta-90))+24*t

30度锥孔加工

G90G54G00X0Y0M03S2500:

G43Z50.H01M08:

Z2.

#1=0.05

WHILE[#1LE5.]DO1

#2=TAN[15.]*#1

#3=5.-#2

G01Z-#1F50

X-#3F500

G02I#3

G01X0

#1=#1+0.05

END1

G0Z50.M05

G91G28Z0Y0M09

详解A类宏程序

用户宏功能是提高数控机床性能的一种特殊功能。使用中,通常把能完成某一功能的一系列指令像子程序一样存入存储器,然后用一个总指令代表它们,使用时只需给出这个总指令就能执行其功能。

用户宏功能主体是一系列指令,相当于子程序体。既可以由机床生产厂提供,也可以由机床用户自己编制。

宏指令是代表一系列指令的总指令,相当于子程序调用指令。

用户宏功能的最大特点是,可以对变量进行运算,使程序应用更加灵活、方便。

用户宏功能有A、B两类。这里主要介绍A类宏功能,B类宏功能请参见本课程的B类宏程序介绍。

1、变量

在常规的主程序和子程序内,总是将一个具体的数值赋给一个地址。为了使程序更具通用性、更加灵活,在宏程序中设置了变量,即将变量赋给一个地址。

(1)变量的表示

变量可以用“#”号和跟随其后的变量序号来表示:#i(i=1,2,3......)

例:#5, #109, #501。

(2)变量的引用

将跟随在一个地址后的数值用一个变量来代替,即引入了变量。

例:对于F#103,若#103=50时,则为F50;

对于Z-#110,若#110=100时,则Z为-100;

对于G#130,若#130=3时,则为G03。

(3)变量的类型

0MC系统的变量分为公共变量和系统变量两类。

1)公共变量

公共变量是在主程序和主程序调用的各用户宏程序内公用的变量。也就是说,在一个宏指令中数控微信公号cncdar的#i与在另一个宏指令中的#i是相同的。

公共变量的序号为:#100~#131;#500~#531。其中#100~#131公共变量在电源断电后即清零,重新开机时被设置为“0”;#500~#531公共变量即使断电后,它们的值也保持不变,因此也称为保持型变量。

2)系统变量

系统变量定义为:有固定用途的变量,它的值决定系统的状态。系统变量包括刀具偏置变量,接口的输入/输出信号变量,位置信息变量等。

系统变量的序号与系统的某种状态有严格的对应关系。例如,刀具偏置变量序号为#01~#99,这些值可以用变量替换的方法加以改变,在序号1~99中,不用作刀偏量的变量可用作保持型公共变量#500~#531。

接口输入信号#1000~#1015,#1032。通过阅读这些系统变量,可以知道各输入口的情数控微信公号cncdar况。当变量值为“1”时,说明接点闭合;当变量值为“0”时,表明接点断开。这些变量的数值不能被替换。阅读变量#1032,所有输入信号一次读入。

2、宏指令G65

宏指令G65可以实现丰富的宏功能,包括算术运算、逻辑运算等处理功能。

一般形式: G65 Hm P#i Q#j R#k

式中:

m--宏程序功能,数值范围01~99;

#i--运算结果存放处的变量名;

#j--被操作的第一个变量,也可以是一个常数;

#k--被操作的第二个变量,也可以是一个常数。

例如,当程序功能为加法运算时:

程序 P#100 Q#101 R#102...... 含义为#100=#101+#102

程序 P#100 Q-#101 R#102...... 含义为#100=-#101+#102

程序 P#100 Q#101 R15...... 含义为#100=#101+15