数控宏程序编程.ppt_第1页
数控宏程序编程.ppt_第2页
数控宏程序编程.ppt_第3页
数控宏程序编程.ppt_第4页
数控宏程序编程.ppt_第5页
已阅读5页,还剩115页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数控宏程序编程 主讲:杨旭 第一章 宏程序应用概述 1.宏程序与普通程序的对比 2.宏程序编程特点 3.宏程序与cad/cam软件生成程序的加工性能对 比 1.宏程序与普通程序的对比 2.宏程序编程特点 宏程序的最大特点是将有规则的形状和尺寸 用最短的程序表示出来,具有极好的易读性和 易修改性,编写的程序非常简洁,逻辑严密, 通用性极强。 宏程序具有灵活性、通用性和智能性等特点 3.宏程序与cad/cam软件生成 程序的加工性能对比 (1)宏程序天生短小精悍,即使最廉价的数 控系统,其内部程序存储空间也会有10kb左 右。 (2)cad/cam软件生成的程序通常比较大, 很容易占据所有的内存空间。 怎么用手工编写半球面的程序呢? 第二章 宏程序基础理论 1.fanuc 0i系统的用户宏程序 2.变量 3.算术和逻辑运算 4.转移和循环 5.siemens 802d系统r参数指令编程 1.fanuc 0i系统的用户宏程 序 fanuc 0i系统提供两种用户宏程序,即 用户宏程序功能a和用户宏程序功能b。 由于用户宏程序功能a的宏程序需要使用 “g65hm”格式的宏程序指令来表达各种数学 运算和逻辑关系,极不直观,可读性非常差 ,从而很少人知道它。 2.变量 普通加工程序直接用数值指定 g代码和移 动距离; 例如, g100和 x100.0。 使用用户 宏程序时,数值可以直接指定或用变量指定。 当用变量时,变量值可用程序或用 mdi 面板上 的操作改变。 如:#2=30; #1=#2+100; g01 x#1 f0.3 (1)、变量的表示 变量用变量符号(#)和后面的变量号指定。 例如:#1 表达式可以用于指定变量号。此时,表达式 必须封闭在括号中。 例如:#1+#2-12 (2)变量的类型 变量根据变量号可以分成四种类型。 (3)变量的引用 为在程序中使用变量值, 指定后跟变量号的 地址。 当用表达式指定变量时,要把表达式放 在括号中。 例如:g01x#1+#2f#3; 改变引用的变量值的符号,要把负号(一)放 在#的前面。 例如:g00x-#1 当变量#1的值是 0,并且变量#2的值是空时 ,g00x#1 z#2 的执行结果为 g00x0; 当变量值未定义时,这样的变量成为“空” 变量。变量#0 总是空变量。它不能写,只 能读。 3.算术和逻辑运算 4.转移和循环 在程序中,使用 goto 语句和 if 语句可以改 变控制的流向。有三种转移和循环操作可供使 用: (1)无条件转移 (goto 语句) 格式:goton;n:顺序号(199999) 转移到标有顺序号 n 的程序段。当指定 1 到 99999 以外的顺序号时,出现p/s 报警 no.128 。可用表达式指定顺序号。 例: goto1; goto#10; (2)条件转移 (if 语句) if goto n 如果指定的条件表达式满足时,转移到标有顺 序号 n 的程序段。如果指定的条件表达式不满足 ,执行下个程序段。 说明: a、条件表达式 条件表达式必须包括算符。 算符插在两个变量中间或变量和常数中间,并且 用括号 ( )封闭。表达式可以替代变量。 b、运算符 运算符由 2个字母组成,用于两个 值的比较,以决定它们是相等还是一个值小于或 大于另一个值。注意,不能使用不等符号。 下面的程序计算数值 110 的总和 (3)循环 (while 语句) 在while后指定一个条件表达式, 当指定条 件满足时, 执行从do到end之间的程序。否则 ,转到 end后的程序段。 说明: 当指定的条件满足时,执行 while 从 do 到 end 之 间的程序。否则,转而执行 end 之后的程序段。do 后 的号和 end 后的号是指定程序执行范围的标号,标号值 为 1,2,3。若用 1,2,3 以外的值会产生 p/s 报警 no.126。 循环嵌套: 在 doend循环中的标号(1 到 3)可根据 需要多次使用。但是,当程序有交叉重复循 环(do范围的重叠)时,出现 p/s报警 no.124。 fanuc宏程序的调用 1. 非模态调用g65: 格式: g65 pp ll 其中 p:要调用的程序号 l:调用次数(默认为1) 自变量:数据传递到宏程序 例: g65 p8000 l2 a10. b2.; 调用2次程序号8000,经自变量a传递到宏 程序#1=10;自变量b传递到宏程序#2=2。 自变量指定 根据使用的字母,cnc系统自动地决定自变量 指定的类型。 地址不需要按字母顺序指定。但应符合字地址 的格式。 但是,i,j 和k 需要按字母顺序指定。 自变量指定 根据使用的字母,系统自动决定自变量指定的类型。 自变量指定用于传递诸如三维坐标值的变量。 i,j,k 的下标用于确定自变量指定的顺序,在实际 编程中不写。 如果自变量指定和自变量指定混合指定 的话,后指定的自变量类型有效。 2. 模态调用(g66): g66 pp ll ; 程序点 g67;(取消模态) 例:g66 p8000 l2 a10. b2.; g00 g90 z-10. x-5. g67 一旦发出g66 则指定模态调用,即指定沿移动轴移 动的程序段后调用宏程序。移动到z-10,调用2次 程序号8000,移动到x-5,再调用2次程序号8000 。 5.siemens 802d系统r参数指令 编程 编程的计算参数从r0r299,共计300个计 算参数。 其中r0r99在编程时可以自由使用; r100r249主要用于加工循环传递参数; r250r299用于加工循环的内部计算参数 。 如果编程时没有用到加工循环,r100r249 同样可以在编程时自由使用。 (1)赋值 变量:用r和后面的数字(0、1、2、3) 组成 r0=10 r1=20 注意:1、一个程序中可以有多个赋值语句;也 可以用计算表达式赋值。 2、赋值时在地址符之后写入符号“=”;赋 值也可以有正负 (2).程序跳转 跳转目标程序段中标记符后面必须为冒 号;标记符号位于程序段段首。 程序举例: n10 marke1: g01 x20 ; tr789 :g00 x10 z20 n100 绝对跳转 编程格式: gotof label;向前跳 转 gotob label;向后跳 转 指令说明 gotof向程序结束方 向跳转 gotob向程序开始方 向跳转 label所选的标记符 有条件跳转 功能:用if 条件语句表示有条件跳转,如果 满足条件,则进行跳转。 编程格式: if 条件 goto f label;向前跳转 if 条件 goto b label;向后跳转 第三章 编程实例 例1:如果所示加工长半轴为40,短半轴为20 的椭圆。 首先进行工艺的分析,选择相关的进行 切削参数,刀具的选择,粗、精加工分 开。主轴转速粗加工选择500r/min,精加 工选择800r/min,、进给速度 f=150mm/min。 o1002 g00x100z50 t0101 m03s800f150 g00x68.z5. g94x0.z0. g90x58.z-50. x56.z-50. x54.z-50. x51.z-50. g00x56.z5. g90x51.z-15.r-7. x51.z-22.r-7. x51.z-30.r-7. x40.z-5.r-10. x40.z-10.r-10. g00x51z2 #50=11 while#50ge1do1 m98p4003 #50=#50-1 end1 g00x51z2 m03s1500f80 #50=0 m98p4003 g00x100z50 m05 m30 主程序 子程序: o4003 #1=40 #2=20 #4=40 n10#5=#2/#1*sqrt#1*#1- #4*#4 g01x2*#5+#50z#4-40f40 #4=#4-0.1 if#4ge0goto10 g00u2z2 m99 宏程 序编 程思 路 用方程来表示z轴,z=a/b*sqrtb2-x2,长 半轴为6,短半轴为4的椭圆。x轴作为变量 o002 #1=6 #2=4 #3=0 t0101 m03 s600 while #3 le #2 do1 #4=#1/#2*sqrt#2*#2-#3*#3 #5=#4-6 g01 x2*#3 z#5 f50 #3=#3+0.2 end 1 g00 x100 z50 m05 m30 作业:用方程来表示x轴,z轴作 为变量,编写长半轴为6短半轴为4 的椭圆? o002 #1=6 #2=4 #3=6 t0101 m03 s600 while #3 ge -#1 do1 #4=#2/#1*sqrt#2*#2- #3*#3 g01 x2*#4 z#3-6 f50 #3=#3-0.2 end 1 g00 x100 z50 m05 m30 例2.编制一个车削加工如图所示具有抛物 线曲线类的零件通用程序,抛物线开口距 离为v ,抛物线方程为y2=-2px。 抛物线的一般方程: x2=+2pz(或者z2=+2px) 可转换为: z=+x2/2p(或者x=+z2/2p) 用变量表示上式为: #2=+#1*#1/2*#3 #1=+#2*#2/2*#3 根据上述工艺分析,可画出宏程序结构流 程框图。 fanuc 0i 数控系统对抛物线曲线类零 件精车削的用户宏程序 #1=x0 抛物线顶点的工件坐标横坐标绝对值 #2=z0 抛物线顶点的工件坐标纵坐标绝对值 #3=p 抛物线焦点坐标点z轴上绝对值的2倍p #4=v 抛物线的开口距离 #5=k x向递减均值 q123 n10 g00 x#1 z#2+5 n15 m03 s500 n20 g01 z#2 f50 n30 #1=#1-#5 n40 #2=-#1*#1/2*#3 n50 g01 x#1 z#2 f50 n60 if #1le #4/2 goto 30 n70 g01 x#4 z#2 n80 g00 x100 z50 n90 m05 n100 m30 例3. 数控车床钻孔循环宏程序 编程 o0003 m03 s300 m08 f10 t0303 g00 z2 #1=50 孔总体深度 #2=5 每次钻削递增量 #3=0 z轴初始值 while #3le#1 do1 #3=#3+#2 g01 z-#3 g00 z1 #4=#3-1 g00 z-#4 end 1 g00 z100 m05 m30 例4.用宏程序编程实现螺纹粗、精加工。 (1)、 螺纹轴加工时先粗、精车螺纹大径,螺纹 大径一般应车的比基本尺寸小0.20.4mm(约 0.13c,c为螺纹螺距); (2)、保证车好螺纹后牙顶出有0.125c的宽度; (3)、再车削退刀槽; (4)、最后分层粗、精车螺纹。采用直进法车削螺 纹,升速进刀段为i,降速退刀段为j,螺纹精加 工余量d,根据精加工余量确定每次背吃刀量( 直径值)分别为(n-1)d、(n-2)d、 3d、2d、d,车削次数等于螺纹背吃刀量( =0.65c)除以螺纹精加工余量d后求整。 o0004 #1=a a螺纹大径 #2=b b螺纹长度 #3=c c螺纹螺距 #4=i i螺纹升速段长 #5=j j螺纹减速段长 #6=k k螺纹背吃刀量(k=0.65*#3)半径值 #7=d d螺纹最终精加工背吃刀量 #8=fup #6/#7 切削次数上取整 #9=#6/#8 背吃刀量递减均值 t0101 m03 s300 while #8ge1 do1 #8=#8-1 切削次数递减1次 #10=#8*#9 背吃刀量计算 #1=#1-#10 第n次加工螺纹的x坐标计算 g00 x#1+5 z#4 到螺纹起点,升速段#4 x#1 背吃刀量 g32 w-#2+#5 f#3 切削螺纹到螺纹终点 g00 x#1+5 x轴方向快退 end1 g00 x100 z50 推出工件 m30 螺纹车削动画演示 例5:用宏程序编写外圆粗车。工件毛坯为 50,加工成30的圆柱。 o0005 #1=50 #2=30 #3=100 #4=2 #5=5 t0101 m03s600 n10 g00 x#1+5 z#5 x#1 g01 z-#3 f50 g00 x#1 z#5 #1=#1-#4 if #1ge#2 goto 10 g00 x100 z50 m05 m30 外圆车削循环宏程序编程演示 第四章 什么叫顺铣,什么叫逆铣?与刀补之间的 关系? 在数控铣床上(加工中心上)加工平面是最 基本、最简单的零件加工方式,平面的铣削的 方法有哪几种? 例1:如图所示,长为75mm,宽为50mm 的45#钢块,进行开放区域平面加工,铣削 厚度为3mm。 回字形平面的铣削 1工艺分析 (1).材料选用45#钢块,采用平口虎钳进行装 夹工件,平口虎钳使用前要进行校正。 (2).采用适切对刀法进行对刀,g54设在x、y 对称中心上,加工深度3mm,z轴零点设在工件 的表面。起刀点设在工件的左下角(-#2,-#1),选 用10的平底立铣刀或者10的键槽铣刀。 (3).主轴转速选择600r/min,进给速度选择 80mm/min(读者可根据实际情况而定)。 2编程思路或编程方法 本例题采用环切法编程,深度上进行一次加 工,x、y同时递减一个刀具直进的%80,短半轴 作为循环条件,循环语句一重循环。 o0001 程序号 #1=25 定义短半轴 #2=37.5 定义长半轴 #3=10 定义刀具直径 #4=#3*0.8 变量每次变化量 g94 g90 g80 g40 g49 g21 g17 程序初始化 g54 g00 x-#2 y-#1 起刀点 z20 m07 安全高度 m03 s600 主轴正转、转速600r/min g01 z-3 f80 下z轴 给进给速度 while #1ge0 do1 如果#10循环继续执行 g01 y#1 g01 移到y轴的正半轴上 x#2 移动到x轴的正半轴上 y-#1 移动到y轴的负半轴上 x-#2+#4 移动到减去一个变化量的x轴的负半轴上 #1=#1-#4 y轴坐标即变量#1递减#4 #2=#2-#4 x轴坐标即变量#1递减#4 end1 循环结束 g00 z50 m09 抬刀至安全高度 m05 m30 程序结束并返回程序头 一次性平面铣削宏程序编程演示 例2:如图所示,长为75mm,宽为50mm 的45#钢块,进行开放区域平面加工,其铣 削厚度为8mm。 1工艺分析 (1).材料选用45#钢块,采用平口虎钳进行装夹工件, 平口虎钳使用前要进行校正。 (2).采用适切对刀法进行对刀,g54设在x、y对称中心 上,加工深度8mm,z轴零点设在工件的表面。起刀点设 在工件的左下角(-#2,-#1),选用10的平底立铣刀。 (3).主轴转速选择600r/min,进给速度选择80mm/min( 读者可根据实际情况而定)。 2编程思路或编程方法 本例题采用环切法编程, x、y同时递减一个刀具直进 的%80,深度上作为一个循环条件进行深度控制,短半轴 作为另一个循环条件进行平面的铣削,循环语句的双重调 用。 %0002 程序号 #1=25 定义短半轴 #2=37.5 定义长半轴 #3=10 定义刀具直径 #4=#3*0.8 变量每次变化量 #5=8 所需加工深度h(绝对值) #6=0 dz(绝对值)设为自变量,赋初始值为0 #7=2 z坐标(绝对值)每次递增量 g94 g90 g80 g40 g49 g21 g17 程序初始化 g54 g00 x-#2 y-#1 起刀点 m03 s600 主轴正转、转速600r/min while #6le#5do1 如果#6#5,循环继续执行 #1=25 重新定义短半轴 #2=37.5 重新定义长半轴 z20 m07 安全高度 g00 x-#2 y-#1 移到起刀点 g01 z-#6 f80 下z轴 while #1ge0do2 如果#10,循环继续执行 g01 y#1 g01 移到y轴的正半轴上 x#2 移动到x轴的正半轴上 y-#1 移动到y轴的负半轴上 x-#2+#4 移动到减去一个变化量的x轴的负半轴上 #1=#1-#4 y轴坐标即变量#1递减#4 #2=#2-#4 x轴坐标即变量#1递减#4 end2 循环结束 g00 z50 抬刀至安全高度 #6=#6+#7 z坐标(绝对)依次递增#7(层间距) end1 循环结束 m09 切削液关 m05 m30 程序结束并返回程 序头 深度多次铣削平面加工宏程序编程演示 弓字形开放区域平面铣削 作业:如图所示,长为75mm,宽为50mm的45# 钢块,进行开放区域平面加工,其厚度为3mm。 %0033 程序号 #1=50 定义短轴 #2=75 定义长轴 #3=10 定义刀具直径 #4=#3*0.8 变量每次变化量 #5=-#1+#3/2+6 开始点的y坐标 #6=-#2/2 开始点的x坐标 #7=#2/2+0.3*#3 g94 g90 g80 g40 g49 g21 g17 程序初始化 g54 g00 x#6 y#5 起刀点 m03 s600 主轴正转、转速600r/min z20 m07 安全高度 g01 z-3 f80 下z轴 while #6le#7 如果#6#7,循环继续执行 g01 y-#5 g01移至y轴正向 #6=#6+#4 x坐标即变量#6递增#4 x#6 x坐标向正方向移动#4 y#5 移至y轴负向 #6=#6+#4 x坐标即变量#6递增#4 x#6 x坐标即变量#6递增#4 endw 循环结束 g00 z50 m09 抬刀 m05 m30 程序结束并返回程序头 用圆的标准方程编写圆的外轮廓 加工 例3 如图所示,在边长为50mm的正方形上精加工 一个半径为20mm整圆,深度为3mm,以顺铣方式 进行加工。 %0003 程序号 #1=20 圆半径 #2=-#1 x负半轴 #3=#1 x正半轴 #4=5 刀具半径值 g94 g90 g80 g40 g49 g21 g17 程序初始化 g54 g00 x30 y25 起刀点 z30 m07 安全高度 m03 s600 主轴正转、转速600r/min g01 z-3 f100 最终加工深度h y0 移动到y0点 while #3ge-#1 do1 如果#3-#1,循环执行 #6=-sqrt#1*#1-#3*#3+#4 刀具中心在y轴坐标点值 g01 x#3 y#6 用g01移动到目标点 #3=#3-0.05 x轴每次递减0.05 end1 循环结束 while #2le#1 do1 如果#2#1,循环继续执行 #5=sqrt#1*#1-#2*#2+#4 刀具中心在y轴坐标点值 g01 x#2 y#5 用g01移动到目标点 #2=#2+0.05 x轴每次递增0.05 end 1 循环结束 g01 y-10 延切线走出 g00 z50 m09 抬刀 m05 m30 程序结束并返回程序头 作业:用圆的参数方程,编写整圆的宏 程序加工程序。 如图所示,40圆上钻86的孔第一孔与 x成0夹角,其深度都为10mm,分布在圆 周上的孔。 %0001 程序号 #1=40 孔所在圆的直径 #2=0 第一孔与x轴的夹角 #3=1 孔计数器 #4=8 总共加工孔数 #5=360/#8 孔平分所在圆上 #6=10 z最终深度 #7=10 r点平面 #8=-3 每次进刀量 g94 g90 g80 g40 g49 g21 g17 程序初始化 g54 g00 x0 y0 起刀点 z30 安全高度 m03 s600 主轴正转、转速800r/min while #3le#4 累加器数小于所加工孔循环继续 #9=#2+#3-1*#5 计算当前孔所在角度 #10=#1/2*cos#9*pi/180 当前孔的x坐标值 #11=#1/2*sin#9*pi/180 当前孔的y坐标值 g73 x#10 y#11 z-#6 r#7 q#8 f10 #3=#3+1 孔数累加 endw 循环结束 g00 z50 抬刀 m05 m30 程序结束并返回程序头 例4 如图所示,在边长为50mm的正方形的 45#钢块上加工一个椭圆,长半轴为20mm ,短半轴为10mm,深度为3mm,以逆铣方 式进行加工。 1工艺分析 (1).材料选用45#钢,采用平口虎钳进行装夹工 件。 (2).采用适切对刀法进行对刀,g54设在x、y 对称中心上,加工深度为3mm,z轴零点设在工件 的表面。起刀点设在(#6,-#7)处,选用10的 平底立铣刀或者10的键槽铣刀进行加工。 (3).主轴转速选择600r/min,进给速度选择 100mm/min(读者可根据实际情况而定)。 2编程思路或编程方法 本例题采用椭圆的标准方程进行编程。深度上进行 一次加工,角度的变化作为循环判断条件,使用一 次循环语句。 %0004 程序号 #1=20 椭圆长半轴 #2=10 椭圆短半轴 #3=0 初始角度 #4=360 最终角度 #5=5 刀具半径值 #6=#1+#5 x坐标刀具中心值 #7=#2+#5 y坐标刀具中心值 g94 g90 g80 g40 g49 g21 g17 程序初始化 g54 g00 x#6 y-#7 起刀点 z30 m07 安全高度 m03 s600 主轴正转、转速600r/min g01 z-3 f100 最终加工深度h y0 移动到y0点 while #3le#4 如果#3#4,循环继续执行 #8=#6*cospi*#3/180 x目标点坐标值 #9=#7*sinpi*#3/180 y目标点坐标值 g01 x#8 y#9 f80 用g01移动到目标点 #3=#3+0.02 角度每次递增0.02 endw 循环结束 g00 z50 m09 抬刀 m05 m30 程序结束并返回程序头 作业:如图所示,用椭圆的标准方程编写其加工 程序。 在边长为50mm的正方形45#钢块上加工一个 椭圆,长半轴为20mm,短半轴为10mm,深度 为3mm。 %0044 #1=20 定义椭圆长半轴 #2=10 定义椭圆短半轴 #5=5 定义平底立铣刀半径 #3=-#1 椭圆长半轴负向赋值给#3 #4=#1 椭圆长半轴正向赋值给#3 #6=#1+#5 刀具中心位置坐标点 #7=#2+#5 刀具中心位置坐标点 g90 g94 g80 g40 g49 g21 g17 程序初始化 g54 g00 x-#6 y-#7 起刀点 z30 安全高度 m03 s600 主轴正转、转速600r/min g01 z-3 f100 最终加工深度3mm y0 移动到y0点 while #3le#1 do1 如果#3#1(长半轴为变量 ) #8=#2*sqrt#1*#1-#3*#3/#1 当前y坐标点 g64 g01 x#3 y#8 f100 以g01 移到目标点 #3=#3+0.02 x轴每次递增0.02 endw 循环结束 while #4ge-#1 如果#4-#1(长半轴作为变量 ) #9=-#2*sqrt#1*#1-#4*#4/#1 当前y坐标点 g64 g01 x#4 y#9 f100 以g01 移到目标点 #4=#4-0.02 x轴每次递减0.02 endw 循环结束 g00 z50 抬刀 m05 m30 程序结束并返回程序头 例5: 如图所示,在边长为50mm的正方形 钢块上加工一个圆锥台,锥台大圆直径为 40mm,锥台小圆直径为20mm,深度为 10mm 。 1工艺分析 (1).材料选用45#钢,采用平口虎钳进行装夹工 件。 (2).采用适切对刀法进行对刀,g54设在x、y 对称中心上,加工深度为10mm,z轴零点设在工 件的表面。起刀点设在(#6/2,0)处,选用10的平 底立铣刀或者10的键槽铣刀进行加工。 (3).主轴转速选择800r/min,进给速度选择 80mm/min(读者可根据实际情况而定)。 2编程思路或编程方法 本例题采用从上至下进行加工,用直线和圆弧进行 逼近圆锥台的粗加工,圆弧的切入点一般选在坐标 轴上,z轴作为变量, z轴的变化作为循环判断条 件,进行多次加工,使用一次循环语句。本题还可 以从下至上进行加工。z轴作为变化量进行编程。 %0005 程序号 #1=40 大圆直径 #2=20 小圆直径 #3=10 刀具直径 #4=45 斜边和底边夹角角度 #5=10 最终加工深度 #6=#1-#2+#3 刀具中心初始点 #7=0 dz初始值 g90 g94 g80 g40 g49 g21 g17 程序初始化 g54 g00 x#6/2 y0 刀具起刀点 z30 安全高度 m03 s800 主轴正转、转速800r/min while #7le#5 如果#7#5,循环继续执行 g01 z-#7 f80 当前点z坐标值 #8=#7*tan#4 计算圆锥台x坐标值 #9=#6/2+#8 当前点刀具中心值 g01 x#9 y0 g01移动到x正半轴 g02 x#9 y0 i-#9 j0 顺时针圆进行加工 #7=#7+0.2 z递增量0.2 endw 循环结束 g00 z50 抬刀 m05 m30 程序结束并返回程序头 例6:如图所示,在60mm60mm的正方 形上,其圆柱的直径为50,圆柱面倒一 个r为10mm的圆角。 1工艺分析 (1).材料选用45#钢,采用平口虎钳进行装夹 工件。 (2).采用适切对刀法进行对刀,g54设在x、y 对称中心上,倒一个r为10mm的圆角,z轴零点 设在工件的表面。起刀点设在(0,0)处,选用 10的球头铣刀进行加工。 (3).主轴转速选择800r/min,进给速度选择 100mm/min(读者可根据实际情况而定)。 2编程思路或编程方法 根据勾股定理计算出当前x=a+r坐标值。 %0006 程序号 #1=0 定义z轴的初始值 #2=10 定义最终加工深度 g94 g90 g80 g40 g21 g17 程序初始化 g54 g00 x0 y0 起刀点 z30 安全高度 m03 s800 主轴正转、转速800r/min while #1le#2 如果#1#2,循环继续 #3=10-#1 z当前的坐标值 #4=sqrt10*10-#3*#3 x当前的坐标值 #5=15+#4 当前刀具中心的x坐标值 g01 x#5 y0 f100 以g01移到目标点 z-#1 下深度 g02 x#5 y0 i-#5 j0 以g02进行加工 #1=#1+0.5 z轴每次递减0.5 endw 循环结束 g00 x0 y0 移至中心点 z50 抬刀 m05 m30 程序结束并返回程序头 例7:如图所示,在60mm60mm的正 方形上,其圆的直径为38,孔口倒一 个r为5mm的圆角。 1工艺分析 (1).材料选用45#钢,采用平口虎钳进行装夹 工件。 (2).采用适切对刀法进行对刀,g54设在x、y 对称中心上,倒一个r为10mm的圆角,z轴零点 设在工件表面上。起刀点设在(0,0)处,选用 8球头铣刀进行加工。 (3).主轴转速选择800r/min,进给速度选择 100mm/min(读者可根据实际情况而定)。 2编程思路或编程方法 首先,根据勾股定理计算圆角的加工点,再根据 r=19+5-4,x=r-a计算出刀具的中心位置,即为 当前x坐标值。 %0007 程序号 #1=0 定义z轴起始深度 #2=-5 定义z轴最终深度 g94 g90 g80 g40 g21 g17 程序初始化 g54 g00 x0 y0 起刀点 z30 安全高度 m03 s800 主轴正转、转速800r/min while #1ge#2 如果#1#2,循环继续 #3=5+#1 z方向计数器 #4=sqrt5*5-#3*#3 x方向当前坐标值 #5=20-#4 当前刀具中心在x方向的坐标值 g01 x#5 y0 f100 以g01移到目标点 z#1 下深度 g02 x#5 y0 i-#5 j0 以g02进行加工 #1=#1-0.2 z轴每次递减0.5 endw 循环结束 g00 x0 y0 移至中心点 z50 抬刀 m05 m30 程序结束并返回程序头 作业:圆的参数编程 ,孔口倒90圆角 。 例8:如图6-6所示,在60mm60mm的正 方形上,其圆的直径为38,孔口倒一个 r为30mm的圆角,深度为7mm。 1工艺分析 (1).材料选用45#钢,采用平口虎钳进行装夹 工件。 (2).采用适切对刀法进行对刀,g54设在x、y 对称中心上,倒一个r为10mm的圆角,z轴零点 设在工件表面上。起刀点设在(0,0)处,选用8 球头铣刀进行加工。 (3).主轴转速选择800r/min,进给速度选择 100mm/min(读者可根据实际情况而定)。 2编程思路或编程方法 首先,根据勾股定理计算圆角的加工点,再根据 x=a-r计算出刀具的中心位置,即为当前x坐标值 。 %0008 程序号 #1=0 定义z轴起始深度 #2=7 定义z轴最终深度 g94 g90 g80 g40 g49 g21 g17 程序初始化 g54 g00 x0 y0 起刀点 z20 安全高度 m03 s800 主轴正转、转速800r/min while #1le#2 如果#1#2,循环继续 #3=16.216+#1 z方向当前深度的坐标值 #4=sqrt30*30-#3*#3 x方向坐标值 #5=#4-4 刀具中心在x方向的坐标值 g01 x#5 y0 f150 以g01移到目标点#5 z#1 下深度 g02 x#5 y0 i-#5 j0 以g02走圆加工 #1=#1+0.2 dz每次递增0.2 endw 循环结束 g00 x0 y0 移至中心点 z50 抬刀 m05 m30 程序结束并返回程序头 第5章 内轮廓零件的铣削加工 例1 如图所示,在边长为50mm的正方形上加 工一个半径为20mm的圆孔内腔,深度为 10mm。 1工艺分析 (1).材料选用45#钢,采用平口虎钳进行装夹工件。 (2).采用适切对刀法进行对刀,g54设在x、y对称中 心上,加工深度为10mm,z轴零点设在工件表上。起刀 点设在(0,0)处,10的键槽铣刀进行直接加工或者预 先钻中心孔,再用10的平底立铣刀进行加工。 (3).主轴转速选择600r/min,进给速度选择 100mm/min(读者可根据实际情况而定)。 2编程思路或编程方法 此题采用中心垂直下刀,预先计算要走刀次数,每步的 步距,采用逆铣铣削方式,在z轴上进行多次进刀。 o0001 程序号 #1=40 定义圆孔直径 #2=10 最终加工深度 #3=10 刀具直径 #4=0 dz初始赋值 #17=2 dz每次递增量 #5=0.80*#3 步距设为刀具直径的80% #6=#1-#3 刀具(中心)在内腔中的最大回转直径 g90 g94 g80 g40 g49 g21 g17 程序初始化 g54 g00 x0 y0 起刀点 z30 安全高度 m03 s600 主轴正转,转速600r/min while #4lt#2 如果#4#2,循环继续执行 g01 z -#4 f80 z当前坐标值 #7=int #6/#5 中心在内腔最大回转直径除以步距并取整 #8=int#7/2 刀具中心在内腔半径上走几步 while #8ge0 #80(走到最外一圈)循环继续 #9=#6/2-#8*#5 每圈在x方向上移动的距离(绝对值) g01 x#9 y0 f100 以g01移动到目标点 g03 i-#9 逆时针走整圆 #8=#8-1 #8依次递减至0 endw 循环结束 g01 x0 y0 移至中心点,准备下一层加工 #4=#4+#17 z坐标(绝对值)依次递增#17 endw 循环结束 g00 z50 抬刀 m05 m30 程序结束并返回程序头 5.2椭圆内轮廓铣削加工(中心垂直下 刀) 例5 如图所示,在长为75mm,宽为50mm,的长方形 7550mm上加工一个长半轴为30mm,短半轴为 20mm,深度为10mm的椭圆内腔。 1工艺分析 (1).材料选用45#钢,采用平口虎钳进行装夹工件。 (2).采用适切对刀法进行对刀,g54设在x、y对称中 心上,加工深度为10mm,z轴零点设在工件表上。起刀 点设在(0,0)处,10的键槽铣刀进行直接加工或者预 先钻中心孔,再用10的平底立铣刀进行加工。 (3).主轴转速选择600r/min,进给速度选择 120mm/min(读者可根据实际情况而定)。 2编程思路或编程方法 此题采用中心垂直下刀,首先判断长半轴还是短半轴作 为步距移动量,计算出要走刀次数,计算每步的步距, 运用椭圆的参数方程进行编程,采用逆铣铣削方式,在z 轴上进行多次进刀。 o0002 程序号 #1=30 定义椭圆长半轴 #2=20 定义椭圆短半轴 #3=10 定义键槽铣刀直径 #4=0 dz初始值 #5=2 dz每次递增量 #16=0 角度设自变量,赋初始值为0 #7=0.5 角度每次递增量 #8=10 椭圆内腔深度 g90 g94 g80 g40 g49 g21 g17 程序初始化 g54 g00 x0 y0 起刀点 z30 安全高度 m03 s600 主轴正转,转速600r/min #9=0.8*#3 步距设为刀具直径的80% #10=#1*2-#3 刀具(中心)在内腔长轴方向上最大移动量 #11=#2*2-#3 刀具(中心)在内腔短轴方向上最大移动量 while #4le#8 如果#4#8,循环继

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论