1.椭圆标准方程
椭圆关于中心、坐标轴都是对称的,坐标轴是对称轴,原点是对称中心。对称中心对称为椭圆中心。椭圆和X、Y轴都有两个交点,这四个交点称为椭圆的顶点。
椭圆标准方程为
式中 a——椭圆长半轴;
b——椭圆短半轴。
椭圆参数方程为
X=acosMY=bsinM(a>b>0)
式中 a——椭圆长半轴;
b——椭圆短半轴;
M——夹角(椭圆上任意一点到椭圆中心连线与X正半轴所成的夹角,顺
时针为负,逆时针为正)。
2.宏程序基础
各种数控系统都为用户配备了强有力的类似于高级语言的宏程序功能,用户可以使用变量进行算术运算、逻辑运算和函数的混合运算,此外宏程序还提供了循环语句、分支语句和子程序调用语句,用于编制各种复杂零件加工程序,减少了乃至免除了手工编程时进行繁琐的数值计算,以及精减程序量。
FANUC数控系统的宏程序分为A、B两类:一般情况下较老的系统,如FANUC OTD中采用A类宏程序;而在较为先进的系统中,如FANUC Oi系统中则采用B类宏程序。
(1)宏变量
▼FANUC 0i数控系统宏变量
提示:
局部变量和公共变量取值范围在-1047到1047之间,如果计算结果超出有效范围,则发出P/S报警No.111。为在程序中使用变量值,将跟随在地符后的数值用变量来代替的过程称为引用变量。
如:当定义变量﹟100=30.0,﹟101=-50.0,﹟102=80时,要表示程序段“G01 X30.0 Z-50.0 F80;”时,即可引用变量表示为“G01 X﹟100 Z﹟101 F﹟102;”。
变量也可用表达式指定,此时要把表达式放在括号里,如:“G01 X[﹟1+﹟2] F﹟3;”变量被引用时,其值根据地址的最小单位自动地舍入。当变量值未定义时,这样的变量成为空变量(如﹟2未定义,用﹟2=<空>表示)。当引用未定义的变量时,变量及地址字都被忽略。如当变量﹟1=0,﹟2=<空>,即﹟2的值是空时,“G00 X﹟1 Z﹟2;”的执行结果为“G00 X0”。变量﹟0为总空变量,它不能写,只能读。
(2)算术与逻辑运算 下表所列出的运算可以在变量中执行,运算符号右边的表达式可包含常量和(或)由函数或运算符组成的变量。表达式中的变量﹟j和﹟K可以用常数赋值。左边的变量也可以用表达式赋值。
▼算术与逻辑运算
(续)
注:1.三角函数中﹟j的值超范围时,发出P/S报警No.111,﹟i的取值范围根据不同的机床设置参数有所不同。
2.运算次序。运算符运算的先后次序为:函数→乘和除运算(∗、/、AND、MOD)→加和减运算(+、-、OR、XOR)。
3.括号嵌套。括号用于改变运算次序。括号可以使用5级,包括函数内部使用的括号。当超过5级时,出现P/S报警No.118。
(3)宏程序语句 宏程序语句也叫宏指令,它是指包含算术或逻辑运算(=)、控制语句(如GO、TO、DO、END)、宏程序调用指令(如G65、G67或其他G代码、M代码调用宏程序)的程序段。除了宏程序语句以外的任何程序段都为NC语句。
宏程序语句与NC语句不同,在单程序段运行方式时,根据参数不同,机床可能不停止在刀具半径补偿方式中宏程序语句段不作为移动程序段处理。
在一般的加工程序中,程序管好程序段在存储器内的先后顺序依次执行,使用转移和循环语句可以改变、控制程序的执行顺序。有三种转移和循环操作可供使用。
1)GOTO语句。GOTO语句也称无条件转移,其格式为:
GOTOn;n为程序段顺序号(1~99999)。
它的作用是转移到标有顺序号n的程序段。当指定1~99999以外的顺序号时,出现P/S报警No.128。顺序号也可用表达式指定。
2)IF语句。IF语句也称条件转移,其格式为:
格式一:IF[(条件表达式)] GOTOn
它的作用是如果指定的条件表达式满足时,转移到标有顺序号n的程序段。如果指定条件表达不满足,则执行下个程序体贴。
如:
N2 GOO Xl0.0
...
IF[#1 GT 10] GOT02;(如果变量#1的值大于10,转移到顺序号N2的程序段)
N×××… (如果变量#1的值不大于10,转移到顺
序号N×××的程序段)
格式二:IF『(条件表达式)] THEN
它的作用是如果条件表达式成立,执行THEN后的宏程序语句,且只执行一个宏程序语句。
如:
IF[#1 EQ#2]THEN#3=0;(如果#1和#2的值相同,0赋给#3、
上述条件表达式中必须包括运算符且用括号“『]”封闭。
条件表达式中的变量可以用表达式替代。未定义的变量,在使用EQ或NE的条件表达式中,<空>和零有不同的效果,在其他形式条件表达式中,<空>被当作零。
3) WHILE语句。WHILE语句也叫循环语句。其格式为:(www.xing528.com)
WHILE[条件表达式] DOm;(m=l、2、3)
...
ENDm:
说明:m为标号,标明嵌套的层次,即WHILE语句最多可嵌套3层。若用1、2、3以外的值则会产生P/S报警No.126。
作用:当指定的条件满足时,则执行WHILE从DO到END之间的程序,否则转到END后的程序段。
(4)宏程序调用调用宏程序语句的子程序称宏程序的调用。调用宏程序的方法一般有非模态调用( G65)、模态调用(G66、G67)、用G代码、M代码等几种方法。
1) G65非模态调用。其格式为:
G65 P×××× L×××× 自变量地址
式中P指定用户宏程序的程序号,地址L指定从1到9999的重复次数。省略L值时,认为L等于1。
G65调用用户宏程序时,白变量地址指定的数据能传递到用户宏程序体中,被赋值到相应的局部变量。不需要指定的地址可以省略,对于省略地址的局部变量设为空。地址不需要按字母顺序指定,但应符合字地址的格式。但是,I、J和K需要按字母顺序指定。
▼自变量地址与变量号的对应关系
提示:
G65宏程序调用和M98子程序调用是有差别的。G65可指定自变量,而M98没有此功能;当M98程序段包含另一个NC指令时,在执行之后调用子程序。相反,G65无条件地调用宏程序,在单程序段方式下,机床停止;G65改变局部变量的级别,M98不能改变局部变量级别。
2)G66模态调用。指定G66后,在每个沿轴移动的程序段后调用宏程序。G67取消模态调用。其格式为:
G66 P×××× L×××× 自变量地址
式中P指定模态调用的程序号,地址L指定从1到9999的重复次数。省略L为1。与G65非模态调用相同,自变量指定的数据传递到宏程序体中。指定G67代码时,其后面的程序不再执行模态宏程序调用。注意,在G66程序段中,不能调用多个宏程序。
3)用G代码调用宏程序。FANUC0i系统允许用户自定义G代码,它通过设置参数(No.6050~No.6059)中相应的G代码(从1~9999)来调用对应的用户宏程序(O9010~O9019)实现的,调用户宏程序的方法与G65相同。
▼参数号与程序号之间的对应关系
提示:
修改上述参数时应先在MDI方式下修改参数写入属性为“1”,如果参数写入属性为“0”,则无法修改﹟6050参数。
3.椭圆的加工方法
(1)椭圆方程推导 用标准方程车削椭圆,通常是加工椭圆X正方向部分,设Z为自变量,通过方程把X表达出来,最多就是车削到180°椭圆,然后G01插补拟合成椭圆。
通过椭圆标准方程,可推导出X的表达式为
转换为数控格式如下
式中 a——椭圆长半轴;
2b——椭圆短半轴(直径编程)常数表示。
当Z为自变量#1,则X为因变量#2,根据上述公式则有
(2)椭圆加工路径 椭圆精加工是将椭圆分割成若干等份,每等份用直线或圆弧插补逼近曲线,每等份直线长度(步距)一般为0.05~0.2mm。粗加工时由于椭圆各部分的余量不等,需采用相应的方法去除。
▼椭圆粗车方法
(续)
练一练:
在数控车床上完成如下图所示零件的编程与加工。
▲椭圆面零件加工图样
(1)图样与工艺分析
1)该零件由外圆、锥面、特殊曲面(椭圆曲线)等组成,其外圆尺寸加工精度要求较高;该零件外圆加工表面粗糙度值Ra为3.2μm。
2)零件采用自定心卡盘直接装夹ϕ46mm的毛坯表面,保证伸出长度大于45mm。其坐标原点选为零件右端面与轴线的交点。
▲坐标原点的选择
▲车刀的安装
3)根据加工内容,选择93°和刀尖角为35°的机夹车刀,并安装在1、2号刀位上。并采用固定点换刀方式,换刀点为R点,坐标(100,100)。
4)工艺路线:G90粗车外形表面→宏程序车椭圆→精车外形轮廓。
(2)数控加工工序卡片的填写
▼数控加工工序卡
(3)加工工序与刀具运行轨迹
▼椭圆面加工工序与走刀运动点的坐标
(4)加工程序
▼椭圆面加工程序
(续)
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。