




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
本文格式为Word版,下载可任意编辑——Fanuc用户宏程序基础(NC车床)Fanuc用户宏程序基础
1、概要
2、变量的指定3、变量(1)局部变量(2)公共变量(3)系统变量
4、运算指令
5、控制指令
6、利用机床内部传感器测外径时宏程序的组合方法以及步骤介绍
7、的灵活使用
8、刀具最大磨损值作为寿命值
9、机床外部测量以及输入输出端口
1
1、概要
宏程序对大家来讲都比较困难,即便是阅读了使用说明书。的确,关于宏程序是有一些比较难以理解的部分,鉴于此种状况,这一次以简单实例并加以详细说明来解释何谓宏程序。这个教材的对象是已经能够熟练把握了NC加工编程的人员。
本资料作为参考,希望能够对大家有所帮助。
到现在为止,宏程序是基于NC语言,由主、子程序来组合而成。说到宏程序和子程序的最大区别就是宏程序能够调用变量。所以最近机器人、装载机无人化系统上应用到的内部外部测定、刀具破损、刀具寿命管理、负荷监视系统、工件判断等,像这些领域,宏程序就不得不被使用到了。
不管怎么样,总之原本是人进行的作业转由机床来进行,所以要必需方方面面都要考虑到。
另外,本资料针对的是FANUC18T,16T,15T,11T,10T,0T(用户宏程序B),YASNUC作为说明对象的。
2
2、变量指定
关于宏变量的调用,请看下例。
(1)形状一致,尺寸不同的时候、各尺寸定义为A~D等变
量;
(2)刀尖的进给路线1~7的程序用宏程序来编制。
主程序宏程序
3
(3)宏调用及变量指定
G65P9000A(#1)B(#2)C(#3)D(#7)此命令为编集、输入A~D图面尺寸值,并执行跳转至(O9000)。
像上述程序中,A~D的内容即使更改,A~D也依旧使用对应的#1、#2、#3、#7变量(最初指定后就不能更改)。这些常数都是分派给局部变量的。
与宏程序相关的指令,除了G65以外还有G66(宏模态调用)、G67(宏模态调用取消)。假使定义G65,定义的宏程序只被调用一次;G66是模态调用指令,每次轴移动指令都调用宏程序,直到G67(取消模态调用)。具体参考控制装置厂商的使用说明书。
非G代码选配的宏模态调用的指令也有。假使定义了M96P****,系统不管外部有没有其他信号还是处于加工过程中,会强制执行宏模态调用。
宏程序一般是O9000号。但是O1000或者是别的也可以,但是系统有相关参数可以设定O9000、O8000号程序不能够被删除。
即、所有的程序都被误删,O9000、O8000号程序也不能被删除,具有这个优点。另外某些参数更改后G、M、T代码也能调用宏变量(须参考厂家使用说明书)。
*1、精加工的程序已经说明白,实际粗加工也有使用宏程序的必要,在学习了粗加工宏程序后,请练习试试看。
端面的取材,余量控制在一刀。外径切削量设为E、X轴精加工
4
量设为U(直径)、Z轴精加工量设为W、倒角量设为X。
(4)变量定义Ⅰ的地址以及相对应的局部变量
变量的对象是变量定义Ⅰ、Ⅱ控制装置的厂家决定的,作为用户是不能够更改的。
变量定义有TYPE1、TYPE2两种。(表一、表二)
注)变量定义Ⅰ的话,除了G、L、N、O、P,其他地址都可以定义,另外无须依照拉丁字母顺序来定义。但是,I、J、K必需依照拉丁字母顺序来指定。
5
6
注)1、定义I、J、K的时候,必需依照拉丁字母顺序排列。另外变量定义类型2的状况下,I、J、K的后缀1~10分
别将I、J、K各组按顺序分组,实际状况下指令不依照此格式书写。
2、无指定变量必要的地址内,可以省略指令。这时无指令
的地址的相对应的局部变量为。
7
3、假使有个变量号被重复指定的时候,以后指定的变量有效。
4、I、J、K被重复指定的状况下,由于I、J、K作为一组的顺序是固定的,对应这个顺序的变量号码是固定的。(5)自变量指定Ⅰ、Ⅱ的混合
即使G65段内同时有Ⅰ、Ⅱ型的自变量指定调用,也不会有
任何报警。假使自变量Ⅰ和自变量Ⅱ混合指定的话,后指定的自变量类型有效。
对于上例中#7变量,当有自变量I4.0和D5.0同时指定时,取后指定的D5.0。
自变量一般都指定符号以及小数点。假使不指定小数点,小数点的位置见下表。
8
注)1、上面的数值表示的是小数点的在第几位。
2、当参数PM1000D0=1(YASNUC)时,取()内的数值。
寻常,自变量像下例的方式指定的话也是很简单理解的,而且程序的兼容性比较好。
9
3、变量
变量分为局部变量、公共变量、系统变量3个种类。
(1)局部变量(#1~#33)
局部变量是在宏程序中使用的变量。就宛如“局部〞这个词语,从主程序跳转至子程序,A~D的内容只在子程序内有效。
当断电时,局部变量被初始化为空。
假设在程序内输入#100=1,然后执行程序,宏程序画面会显示#100?????1。刀补的画面也是,假使输入0.1也会显示0.1,即使断电数据也不会丢失。但是宏变量#100假使断电的话该变量就会被初始化为空(什么都不显示)。即,的值并不指零。
像这种状态称为。
#500号跟刀补同样,即使断电数据也不会丢失。
假使想把#500号置的话,程序内执行#500=#0就可以实现。
(2)公共变量(#100~#199、#500~#999)
局部变量是在当前宏程序内可以使用的,但是公共变量是主程序包括其子程序都可以通用的。#i的当前值在所有宏程序中都是一致的。因此在一个宏程序内演算的结果(公共变量#i)在别的宏程序内也可以使用。
10
(a)公共变量在断电重启时有两种状况。
#100~#199:断电重启时,状态初始化为;也有参数可以更改初始化时不为空。
#500~#999:即使断电,数据也不会丢失。(b)公共变量根据选配可以追加组数。(参考说明书)
(c)4轴车床,刀塔之间有共通的用户宏变量。4轴的状况下,有两套数控装置,也就是说能够实现相互变量数值更改读取的通用变量。
例如,假设ZL-25下刀塔精加工外径,上刀塔作为测量用。但是即使上刀塔测量得出尺寸也不能对对下刀塔进行补正。
在这种状况下,可以活用共通用户宏变量。
上刀塔测定的数值可以写入共通用户宏变量,这样可以将数值传
11
递给下刀塔。反之也可以。
注)假使刀塔之间没有共通宏变量,可以使用#1033~#1035、#1133~#1135来实现上下数据传递。
关于#1033~#1035、#1133~#1135,根据控制系统的不同可能会有所不同,具体请参考使用说明书。(3)系统参数
是有固定用途的变量。如下表:
其中,经常使用的输入输出信号、刀具补正量、报警、段信息、位置坐标、腾跃信号位置等必需要熟记。
另外、这些变量是由控制系统的生产商决定的,不可以被更改。但是#1000~1035、#1100~1135是输入输出用的,所以是由森精机决定。因此,地址的更改是可以通过输入输出的配线更改来实现的。
12
4、运算指令(有※标记的,务必记牢)
运算指令有以下规则。
可以实现变量之间的运算。可以依照一般的运算式来进行编程。#i=
在中,变量、常数通过运算符号或者函数组合来进行运算,结果可以代入指定的变量。中无小数点的状况下看作在末尾。
(1)变量的定义、置换※#i=#j(2)加法形运算※#i=#j+#k※#i=#j-#k#i=#jOR#k#i=#jXOR#k
(3)乘法形运算
※#i=#j*#k※#i=#j/#k#i=#jAND#k#i=#jMOD#k(4)函数
#i=SIN〔#j〕正弦
#i=COS〔#j〕余弦#i=TAN〔#j〕正切
13
#i=ATAN〔#j〕/〔#k〕余切#i=SQRT〔#j〕平方根※#i=ABS〔#j〕绝对值#i=BIN〔#j〕二进制#i=BCD〔#j〕十进制
※#i=ROUND〔#j〕四舍五入华整※#i=FIX〔#j〕下取整#i=FUP〔#j〕上取整#i=ASIN〔#j〕反正弦#i=ACOS〔#j〕反余弦#i=LN〔#j〕对数
#i=EXP〔#j〕e为底的指数#i=ADP〔#j〕小数点追加
上面是依照FANUC-15T来说明的。其他控制装置稍微有点区别,具体使用时请参考操作说明书。
(5)运算组合
运算、函数都可以运用在宏程序中。运算的优先顺序:函数、乘除、加减。
14
(6)括号改变运算的优先顺序需要优先运算的部分可加括号来实现。括号、加上函数最高可以有5重。
(7)关于精度的注意点
使用宏功能编集程序时,精度有没有达到要求,这点必需注意。例如,#1与#2的实际值如下
#1=9876543210123.456#2=9876543277777.777
执行#2-#1,但是实际得不到67654.321这个结果。为什么呢?就是由于宏变量的精度为十进制8位,即上述#1与#2在系统中的实际值为
#1=9876543200000.000#2=9876543300000.000
只能达到这种精度。(系统内部是2进制,所以确切来讲与上面的值还是稍微有点区别。)因此,会产生#1-#2=100000.000的误差。
15
关于运算误差的详细说明请参考使用说明书。另外,规律关系(后面的控制指令章节里介绍)的ED,NE,GT,LT,GE,LE基本上与加减运算同样存在此运算误差,必需要注意。
16
5、控制指令
控制指令有下面的规则。
根据以下指令可以控制程序的执行。(1)条件转移
(a)IF[]GOTOn
成立的话,程序会跳转至“n〞执行。假使使用其他变量或者式子可以更改跳转地址。
条件不成立则直接执行IF下面的语句。
假使此命令句省略IF[],程序则无条件执行跳转(执行“n〞)。
[]内有以下各种指令。条件式意义#jEQ#k#j=#k=#jNE#k#j≠#k≠#jGT#k#j>#k>#jLT#k#j<#k<#jGE#k#j≧#k≧#jLE#k#j≦#k≦上面的变量也可用式子来代替。
跳转的程序号“n〞也可用变量或者式子来替代。
(注)假使执行GOTOn,在“n〞指定的程序段中,程序号“n〞必需处于该程序段最前面。
17
反方向跳转比顺方向所需时间要长。(例)例文讲解
IF[#1EQ1]GOTO1#1等于1则执行N1,否则接下去执
行。
IF[#1EQ2]GOTO2#1等于2则执行N2,否则接下去执
行。
GOTO10跳转至N10N1..
GOTO10跳转至N10N2..
GOTO10跳转至N10N10
M99………回主程序(b)IF〔<条件式>〕THEN宏指令:
〔<条件式>〕条件成立则执行宏指令。但是此处的宏指令仅限于一段指令。
(例)例文IF[#1EQ#2]THEN#3=0;
18
讲解假使#1等于#2则将#3置为零。
注)上述指令在FANUC-15T环境下使用。(2)循环
WHILE〔<条件式>〕DOm(m=1,2,3)∥ENDm
成立的时间范围内,重复执行Dom到ENDm之间的程序段。即、判断成立与否,成立则执行Dom后面的程序段,否则执行ENDm后面的程序段。
WHILE〔<条件式>〕与IF一样可以省略,省略掉的状况下程序会出现从Dom到ENDM之间的死循环。
WHILE〔<条件式>〕DOm和ENDm是配对使用的,根据“m〞可以相互区别开。
例如#120=1;
N1WHILE[#120LE10]DO1;N2WHILE[#30EQ1]DO2;N3END2;#120=#120+1;N4END1;
注)Dom与ENDm的关系具体参考厂商使用说明书。
19
6、机床内用传感器一点测定外径的宏模块以及准备的说明
用常用的传感器,来测定外径为φ100.0±0.02的工件,只测一点。
(1)将传感器安装在刀塔上一号刀位。
(2)传感器也是刀具的一种,也需初期设定。即要输入传感
器的几何植。(a)Z方向的测定
(b)X方向的测定方法
最终切记在MDI模式下输入G99。
这种方法跟一般刀具直接测量唯一的区别就在于使用了G31腾跃指令。
我们就用宏程序依照(a)、(b)的方法来编集X方向的测量输入过程,以此作为练习。
20
将机床运行至上图状态,然后实行O1000号程序。主程序
O1000暂定φA为100;
G65P9010A100.0X轴原点在其负方向则A为-100.0M30X轴原点在其正方向则A为100.0
宏程序#517X原点方向的标志正方向为原点时设为为“1〞O9010负方向为原点时设为为“-1〞G98G31U-[20*#517]F#518#2701=[#5021-#1]*#517G99G00U[4*#517]
M99#518传感器靠近工件端面的进给率
考虑到JIS配置或其他配置系统的兼容性故使用#517变量。#2701=#5021-#1,其中#5021指的是X轴从机械原点到刀塔位置的坐标,所以减去工件的尺寸就能得出传感器的几何值,式子左边的“#2701=〞是将值写入一号刀补的命令。
不管用哪种方法都是可行的,不过在使用跳转(G31)是必需考
21
虑到一些问题。由于上述条件的机器中止位置与机器实际机器中止位置多少会有些误差。除了这种误差以外,另外还有传感器的中心高度、实际测量的方法以及刀补的寸法都会产生误差,多少有修正的必要。另外又由于是机内测定,所以热变位也必需考虑到。
传感器也是刀具的一种,所以基于绝对坐标测定的补正也是输入刀具几何补正表内。
(3)测定顺序流程图
传感器补正测量完以后,接下去考虑的是外径公差φ100.0±0.02的测定顺序。
主程序运行完毕后,假使全数测定的话十分花时间,所以决定每几个测定一次外径。
具体顺序请看下页。
22
(4)主程序的编集方法测定宏组块的自变量内容O0001加工M05
G65P9011A#1D#7E#8T#20X#24Z#26W#23
23
M30
A:测定工件的直径(公差的中心值)符号和程序内一致D:不需要补正的范围(+值)参考下图E:不会报警的范围(+值)参考下图
X:测定部位的X轴的坐标值符号和程序内一致Z:测定部位的Z轴的坐标值参考下图(○―)T:需要补正的刀号宏内进行刀补值更改W:工件Z轴定位坐标省略则G00Z#23中假使#23为依照X轴坐标来定位。空,则无动作执行。
±NG的话出现报警。测定数值和使用的变量是公共变量#100。计数器等必需要设定的变量最好取#500号这一段。
#513设定每多少个测量一次。#514计数器
24
(5)宏程序
O9011(SENSERRINGOUTSIDE)
#514=#514+1公共变量#514自增1并替换本身值
IF[#514GE#513]GOTO10假使#514≧#513则跳转至N10M99否则跳回至主程序段N10
#514=0计数器清零GOOT0100调用传感器到位
#108=#5041#23值为空则无动作,机床产生报警信号并中止#109=#5042G31有跳转信号时的坐标值G00Z#23X#24G98Z#26
G31X[#1-20*#517]F#518#100=#5061G00G99X#24Z#23
X#108保存起始点Z#109
#110=ABS[#1]–ABS[#100]│公差的中间值│-│测取值│→#110#111=ABS[#110]取#110的绝对值付给#111
IF[#111GE#8]GOTO901#111比E值大就跳转至N901
25
IF[#111LE#7]GOTO20#111比D值小的话跳转至N20#[2000+#20]=#[2000+#20]+#110*#517补正更改,补正量#110N20M99N901
#3000=911(MESURRINGERR.N.G)±NG的状况下,会产生911
号报警,并在CRT上显示括号内的内容,同时返回起始点。
以上面的流程图为基础,宏程序O9011自然就编集成了。构思流程图时,机械动作及判定顺序要确定好,跳转段落的程序号要写明,另外需要定义的变量最好做成一览表(为了不重复)整理好,会事半功倍。
这样,以一点测量外径为例说明白宏程序的运用,同样两点测量外、内径依照同样的思路来考虑的话,关于机内计测的宏程序也可以编集出来的。
26
7、变量的活用
前面外径测量已经说明白,由于是无人操作测量外径φ100,另外通电开始加工第一个工件时,我们一般必需留有足够余量,加工测量补正后再依照寻常的加工继续。因此就存在了第一个工件不得不测量的问题。
这样,将程序O9011怎样修改才能实现每次通电后就测量一次,关于这一点来考虑一下。
我们就利用#100以后的变量断电后自动初始化为空的特点来实现。
在前面的流程图的加工终了与カウントアップ(计数值UP)之间只要追加下面的判断语句就可以了。
宏程序如下:
O9011(SENSERRINGOUTSIDE)
27
IF[#140EQ#0]GOTOO30通电时跳转至N30GOTO40N30
#140=1置1,则值不为空#514=#513-1减去当前的测定个数N40#514=#514+1后一致
宛如这样,根据通电时的判断结果可以跳转至其他程序,进行不同的机械动作(例如空运转等)。
28
8、磨耗量的范围作为工具寿命的判断依据
连续加工并测定工件,同时替换刀具的补正量。利用补正量的变化可以用来判断工具寿命。这样将刀具的初始补正量输入#500号段的参数,然后与根据传感器测定出来的新补正值的比较值作为判断基准就可以了。这个值假使超过允许范围就会产生报警同时机器中止。
例如、初期补正量假定为0.123#530输入0.123(初期补正量)
#531设为0.2,假使与初期补正量的差超过0.2mm,机器中止
这样,机器中止后交换刀片后再重启就可以了。※
2但是,假使刀塔上有预备刀具的话不用中止也可以继续进行加工。另外我们可以拿下面两个例子来练习一下,假使是送料仕样的话,(有相关要求的仕样),寿命(加工数)到了的话就使用下一把刀,或者是没有到达寿命加工数而是超过磨损范围时需要换刀,等等。
29
9、机外测量以及输入输出端口
前面就机内测量的宏程序做了说明。接下来关于送料式样的机床来举一例说明机外测定器与机床之间的信号反馈方式。
机外测定可以分为两大类。第一种是分为五种信号(+NG、+OK、OK、-OK、-NG),以区分输出。另外一种就是输出数值。这里就常使用的第一种来说明。
上图为NC与测定器的输入输出连接方式。首先,由测定器来判断被测定信号种类。
从NC侧发出要求测量的信号(闭合#1100接点)。测定器侧根据采集信号通过CPU计算来确定信号属于5种中哪一种,然后输出。NC侧接受信号。宏程序的功能就是判断信号种类。
30
宏程序如下:O9020#1100=1G04U0.5G04U0
#1100=0输出0位接点闭合N10
IF[#1000EQ1]GOTO1输入0位ON则跳转至N1IF[#1001EQ1]GOTO2输入1位ON则跳转至N2
31
IF[#1002EQ1]GOTO3输入2位ON则跳转至N3IF[#1003EQ1]GOTO4输入3位ON则跳转至N4IF[#1004EQ1]GOTO5输入4位ON则跳转至N5GOTO10N1
#3000=909(+NG)N2
#[2000+#520]=#[2000+#520]-#521GOTO6N3GOTO6N4
#[2000+#520]=#[2000+#520]+#521N6M99N5
#3000=908(-NG)
#520设为补正号码#521设为补正值(+值)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 室内墙面防水施工方案
- 2024年三季度报湖南地区A股长期负债比率排名前十大上市公司
- 2024年三季度报湖南地区A股利息支付倍数排名前十大上市公司
- 堆土施工方案
- 钢桥梁施工方案
- 2025年餐厅经理考试试题及答案
- 2025年专业培训 测试题及答案
- 6年级上册数学第5单元
- 2025年消防入门考试题及答案
- close关闭文件的语法
- 口腔科急救预案培训课件
- 新教科版5年级科学下册第二单元《6设计我们的小船》课件
- 弗洛姆异化理论
- Q∕CR 9602-2015 高速铁路路基工程施工技术规程
- 园林喷灌工程施工方案(精编版)
- 碳纳米管_ppt课件
- 【课件】第2课如何鉴赏美术作品课件-高中美术人教版(2019)美术鉴赏
- [康熙字典9画五行属金的字加解释] 康熙字典五行属金的字
- 托盘操作评分表
- 关于老年痴呆症及其智能陪护设备的调查报告
- 椴木灵芝栽培技术
评论
0/150
提交评论