《共享宏程序课件.ppt》由会员分享,可在线阅读,更多相关《共享宏程序课件.ppt(22页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、非圆公式曲线加工非圆公式曲线加工宏程序法宏程序法数控车仿真训练数控车仿真训练椭圆曲线一、非圆公式曲线的加工方法一、非圆公式曲线的加工方法1.1.非圆公式曲面的加工特点非圆公式曲面的加工特点2.2.非规则曲面的编程方法非规则曲面的编程方法(1 1)自动编程法)自动编程法(2 2)宏程序法)宏程序法 宏程序的编程加工,一般是采用厂方所提供的宏宏程序的编程加工,一般是采用厂方所提供的宏程序程序(或用户自行开发的宏程序或用户自行开发的宏程序)通过对变量进行赋值及通过对变量进行赋值及处理后完成程序的加工任务。处理后完成程序的加工任务。普通加工程序直接用数值指定代码和移动距离;普通加工程序直接用数值指定代
2、码和移动距离;例如,例如,G01X100.0Z2.0G01X100.0Z2.0。使用用户宏程序时,数值可以直接指定或用变量指使用用户宏程序时,数值可以直接指定或用变量指定。当用变量时,变量值可用程序或用定。当用变量时,变量值可用程序或用MDI MDI 面板上的操面板上的操作改变。作改变。二、宏程序编程二、宏程序编程、变量的表示、变量的表示 一个变量由符号一个变量由符号“#”#”和变量序号组成,如:和变量序号组成,如:#i#i(i=1(i=1,2 2,3 3,),此外,变量还可以用表达式进行表,此外,变量还可以用表达式进行表示,但其表达式必须全部写入方括号示,但其表达式必须全部写入方括号“”中。
3、中。例:例:#100#100,#500#500,#5#5,#1+#2+10#1+#2+10;、变量的引用、变量的引用 将跟随在地址符后的数值用变量来代替的过程称为将跟随在地址符后的数值用变量来代替的过程称为引用变量。同样,引用变量也可以采用表达式。引用变量。同样,引用变量也可以采用表达式。例:例:G01 X#100 Y-#101 F#101+#103G01 X#100 Y-#101 F#101+#103;当当#100=100.0#100=100.0、#101=50.0#101=50.0、#103=80.0#103=80.0时,上例即时,上例即表示为:表示为:G0l Xl00.0 Y-50.0
4、F130G0l Xl00.0 Y-50.0 F130;3 3、宏变量的类型、宏变量的类型根据变量号,宏变量可分成四种类型,如表根据变量号,宏变量可分成四种类型,如表1 1所示。所示。表1 变量的类型变量号变量类型功 能#0空空变变量量该变该变量量总总是空,没有是空,没有值值能能赋给该变赋给该变量。量。#1#33局部局部变变量量局部局部变变量只能用在宏程序中存量只能用在宏程序中存储储数据,例数据,例如,运算如,运算结结果。当断果。当断电时电时,局部,局部变变量被初量被初始化始化为为空。空。调调用宏程序用宏程序时时,自,自变变量量对对局部局部变变量量赋值赋值。#100#199#500#999全局全
5、局变变量量公共公共变变量在不同的宏程序中的意量在不同的宏程序中的意义义相同。相同。当断当断电时电时,变变量量#100#199 初始化初始化为为空,空,变变量量#500#999 的数据保存,即使断的数据保存,即使断电电也也不不丢丢失。失。#1000#9999系系统变统变量量系系统变统变量用于量用于读读和写和写CNC 运行运行时时的各种的各种数据,例如,刀具的当前位置和数据,例如,刀具的当前位置和补偿值补偿值。、算术和逻辑运算(见表、算术和逻辑运算(见表2 2)表2 算术和逻辑运算函数函数格格 式式备备 注注赋值赋值#i=#j求和求和求差求差乘乘积积求商求商#i=#j#k#i=#j#k#i=#j#
6、k#i=#j#k正弦正弦余弦余弦正切正切反正切反正切#i=SIN#j#i=COS#j#i=TAN#j#i=ATAN#J/#k角度用十角度用十进进制度表示。制度表示。9030表示表示为为90.5 度。度。平方根平方根绝对值绝对值四舍五入四舍五入向下取整向下取整 向上取整向上取整#i=SQRT#j#i=ABS#j#i=ROUND#j#i=FIX#j#i=FUP#j或或OR异或异或XOR与与AND#I=#J OR#K#I=#J XOR#K#I=#J逻辑逻辑运算用二运算用二进进制数按位操作制数按位操作十十二二进进制制转换转换二二十十进进制制转换转换#I=BIN#J#I=BCD#J用于用于转换发转换发送
7、到送到PMC的信号或从的信号或从PMC 接收的接收的信号信号、宏程序指令、宏程序指令(1 1)无条件转移)无条件转移 格式:格式:GOTO n;nGOTO n;n(转移到的程序段)顺序号(转移到的程序段)顺序号 例:例:GOTO1;GOTO1;GOTO#10;GOTO#10;(2 2)条件分支)条件分支IFIF语句语句 在在IFIF后指定一条件,当条件满足时,转移到顺序号为后指定一条件,当条件满足时,转移到顺序号为n n的程的程序段,不满足则执行下一程序段。序段,不满足则执行下一程序段。格式:格式:IF IF 表达式表达式 GOTOnGOTOn;;NnNn;n n:顺序号:顺序号(1(1999
8、99)99999)例:例:O0002(O0002(宏程序宏程序)N5 IF#3GT90.0GOTO10;N5 IF#3GT90.0GOTO10;GOTO5;GOTO5;N10 M99;N10 M99;条件表达式条件表达式 条件表达式由两变量或一变量一常数中间夹比较运算条件表达式由两变量或一变量一常数中间夹比较运算符组成,条件表达式必需包含在一对方括号内。条件表达符组成,条件表达式必需包含在一对方括号内。条件表达式可直接用变量代替。式可直接用变量代替。比较运算符比较运算符 比较运算符由两个字母组成,用于比较两个值,来判比较运算符由两个字母组成,用于比较两个值,来判断它们是相等,或一个值比另一个小
9、或大。注意不能用不断它们是相等,或一个值比另一个小或大。注意不能用不等号(见表等号(见表3 3)。)。表表3 3 比较运算符比较运算符运算符运算符含含 义义EQEQ相等相等equal to(=)equal to(=)NENE不等于不等于not equal to()not equal to()GTGT大于大于Greater than()Greater than()GEGE大于等于大于等于greater than or equal to()greater than or equal to()LTLT小于小于less than()less than()LELE小于等于小于等于less than or
10、 equal to()less than or equal to()(3 3)循环语句)循环语句 在在WHILE WHILE 后指定一条件表达式,当条件满足时,执行后指定一条件表达式,当条件满足时,执行WHILEWHILE到到ENDEND之间的程序,之间的程序,(然后返回到然后返回到WHILE WHILE 重新判断条重新判断条件件,),)不满足则执行不满足则执行ENDEND后的下一程序段。后的下一程序段。格式:格式:WHILE WHILE 条件表达式条件表达式 DODOm m ;ENDENDm m ;例:例:O0002O0002 WHILE#3LE90.0DO2;WHILE#3LE90.0DO
11、2;END 2;END 2;M99;M99;6 6、宏程序使用格式、宏程序使用格式7 7、宏程序使用方法、宏程序使用方法(1 1)非模态调用(单纯调用)非模态调用(单纯调用)非模态调用指一次性调用宏主体,即宏程序只在一个程序段非模态调用指一次性调用宏主体,即宏程序只在一个程序段内有效。格式:内有效。格式:G65 PG65 P(宏程序号)(宏程序号)L L(重复次数)(重复次数)一个引数是一个字母,对应于宏程序中变量的地址,引数后一个引数是一个字母,对应于宏程序中变量的地址,引数后边的数值赋给宏程序中对应的变量,同一语句可以有多个引数。边的数值赋给宏程序中对应的变量,同一语句可以有多个引数。(2
12、 2)模态调用)模态调用 模态调用功能近似固定循环的续效作用,在调用后,机床在指定的多模态调用功能近似固定循环的续效作用,在调用后,机床在指定的多个位置循环执行宏程序。用个位置循环执行宏程序。用G67G67指令取消模态调用。格式:指令取消模态调用。格式:G66 PG66 P(宏程序号)(宏程序号)L L(重复次数)(重复次数);此时机床不动;此时机床不动 X_Y_;X_Y_;机床在这些点开始加工机床在这些点开始加工 X_Y_;X_Y_;G67 G67;停止宏程序调用;停止宏程序调用三、宏程序编程实例三、宏程序编程实例 加工如图加工如图1 1所示椭圆零件。毛坯尺寸所示椭圆零件。毛坯尺寸 62mm
13、62mm棒料,棒料,材料为材料为45#45#钢。钢。图图1 11 1、椭圆参数方程、椭圆参数方程式中:式中:aa长轴半径;长轴半径;bb短轴半径短轴半径。以以X X为自变量,可求得为自变量,可求得Z Z值。经推导得:值。经推导得:2 2、零件分析、零件分析图图1 1 中:中:程序内容程序内容程序注程序注释释G28U0W0N1G0G40G97G99S500M3T11X60.Z0.5G90X50.5Z-39.8F0.2G0X50.0#1=25.N60#1=#1-1.5#2=SQRT1600.-2.56*#1*#1G90X2*#1+0.5Z#2-40.+0.2IF#1GT0GOTO60第一工步:粗加
14、工第一工步:粗加工加工起始点加工起始点单循环加工单循环加工短轴半径短轴半径1.51.5为切削深度为切削深度每次切削长轴坐标点计算每次切削长轴坐标点计算短轴留量短轴留量1.51.5,长轴留量,长轴留量0.20.2如果如果#1#1大于大于0 0,则返回,则返回N60N60语句语句程序内容程序内容程序注程序注释释N2G0X0.5Z0.2#1=0N120#1=#1+0.2#2=SQRTABS1600.-2.56*#1*#1G01X2*#1+0.3Z#2-40.+0.05IF#1LT25.GOTO120第二工步:半精加工第二工步:半精加工加工起始点加工起始点短轴留量短轴留量0.30.3,长轴留量,长轴留
15、量0.030.03如果如果#1#1小于小于2525,则返回,则返回N120N120语句语句程序内容程序内容程序注程序注释释N3S1200G0Z0X0#1=0WHILE#1LT25.DO1#2=SQRTABS1600.-2.56*#1*#1G01X2*#1Z#2-40.#1=#1+0.1END1G01Z-60.0X61.0G28U0W0M05M30第三工步:精加工第三工步:精加工主轴转速为主轴转速为12001200当当#1#1小于小于2525时执行下一条时执行下一条语句,否则执行语句,否则执行end1end1后的后的语句。语句。增量值为增量值为0.10.1四、巩固练习四、巩固练习1 1、毛坯尺寸为、毛坯尺寸为5555棒料,材料为棒料,材料为45#45#钢,试车削如图钢,试车削如图2 2所示零件。所示零件。椭圆曲线图图2 22 2、毛坯尺寸为、毛坯尺寸为3030棒料,材料为棒料,材料为45#45#钢,试车削如图钢,试车削如图3 3所示零件。所示零件。图图3 3
限制150内