文档库 最新最全的文档下载
当前位置:文档库 › 新代宏程序实例

新代宏程序实例

新代宏程序实例
新代宏程序实例

1、REPEAT直到型循环

REPEAT

<循环体>

UNTIL <条件表达式> END_REPEAT;

说明:REPEAT直到型循环控制,先执行循环体,后判断条件表达式,当条件满足时退出循环。

例如:

% @MACRO // 启动MACRO语法% @MACRO (宏指令开始)

#1=-0.2

REPEAT REPEAT(重复)

G01Z#1F80;

G1X-20.F700;

#2=#1-0.2;

G1Z#2F80;

G1X-53.F700;

#1=#1-0.4;

UNTIL (#1<-2.6) END_REPEAT; UNTIL(到…为止,在…以前)END(结束,终止)M30;

2、WHILE当型循环

WHILE <条件表达式> DO→<循环体>→END_WHILE;

说明:WHILE当型循环控制,先判断条件表达式,当条件满足时执行循环体,否则退出循环。例如:

% @MACRO;

#1=-0.2;

WHILE (#14>-2.6) DO WHILE(虽然; 在…期间; 与…同时)

IF #1<-2.6THEN

EXIT; EXIT(退出; 退场; 离开; 去世)

END_IF;

G01Z#1F80;

G1X-20.F700;

#2=#1-0.2;

G1Z#2F80;

G1X-53.F700;

#1=#1-0.4;

END_WHILE;

M30

3、FOR循环

FOR 翻译:p rep.为,为了; 倾向于; 关于; 当作;

conj.因为,由于;

FOR <循环变量> := <表达式1> TO <表达式2> [ BY <表达式3>] DO

<循环体>

END_FOR;

说明:FOR循环控制,式中各参数意义如下

循环变量——控制循环次数的变量;

表达式1——循环计数的起始值,可为整数或表达式;

表达式2——循环计数的终止值,可为整数或表达式;

表达式3——循环计数每次的累加值,可为整数或表达式;

循环体——循环每次执行内容;

FOR循环执行过程为:先给循环变量赋起始值,然后判断循环变量是否为终止值,当循环变量已为终止值时退出循环,否则执行循环体,再对循环变量加上每次累加值,

4、无条件转移

GOTO转移语句

语法:

GOTO n;

说明:无条件地跳到指定的n行号执行,其中n可为整数或表达式。GOTO常和IF语句搭配使用,那就是说当程序检查到某个条件满足时用GOTO语句去进一步处理,但应尽量少用该语句以提高程序可读性。

范例:

% @MACRO // 启动MACRO语法

IF( #1 = 2 ) THEN GOTO 100;

G01 X10. Z10.;

N100 G01 X30. Z30.;

M02;

EXIT循环中断语句

语法:EXIT;

说明:循环中断,跳离循环控制;用在循环控制中,通常EXIT都和IF语句搭配使用,当某个条件满足后就跳离循环。请参考WHILE范例。

新代数控车床宏程序说明

一.用户宏程序的基本概念 用一组指令构成某功能,并且象子程序一样存储在存储器中,再把这些存储的功能由一个指令来代表,执行时只需写出这个代表指令,就可以执行其相应的功能。 在这里,所存储的一组指令叫做宏程序体(或用户宏程序),简称为用户宏。其代表指令称为用户宏命令,也称作宏程序调用指令。 用户宏有以下四个主要特征: 1)在用户用户宏程序中可以使用变量,即宏程序体中能含有复杂的表达式; 2)能够进行变量之间的各种运算; 3)可以用用户宏指令对变量进行赋值,就象许多高级语言中的带参函数或过程,实参能赋值给形参; 4)容易实现程序流程的控制。 使用用户宏时的主要方便之处在于由于可以用变量代替具体数值,因而在加工同一类的工件时.只得将实际的值赋予变量既可,而不需要对每个不同的零件都编一个程序。 二.基本书写格式 数控程序文档中,一般以“%”字符作为第一行的起头,该行将被视为标题行。当标题行含有关键字“@MACRO”时整个文档就会以系统所定义的MACRO语法处理。如果该行无“@MACRO”关键词此档案就会被视为一般ISO程序文档格式处理,此时将不能编写用户宏和使用其MACRO语法。而当书写ISO程序文档时标题行一般可以省略,直接书写数控程序。“@MACRO”关键词必须是大写字母。 对于程序的注释可以采用“//……”的形式,这和高级语言C++一样。 例一:MACRO格式文档 % @MACRO //用户宏程序文档,必须包含“@MACRO”关键词 IF @1 = 1 THEN G00 X100.; ELSE G00 Z100.; END_IF; M99; 例二:ISO格式文档 % 这是标题行,可当作档案用途说明,此行可有可无 G00 X100.; G00 Z100.; G00 X0; G00 Z0; M99;

数控车床由浅入深的宏程序实例

宏程序 裳华职业技术中专鲍新涛 宏程序概述 其实说起来宏就是用公式来加工零件的,比如说椭圆,如果没有宏的话,我们要逐点算出曲线上的点,然后慢慢来用直线逼近,如果是个光洁度要求很高的工件的话,那么需要计算很多的点,可是应用了宏后,我们把椭圆公式输入到系统中然后我们给出Z坐标并且每次加10um那么宏就会自动算出X坐标并且进行切削,实际上宏在程序中主要起到的是运算作用。.宏一般分为A类宏和B类宏。A类宏是以G65 Hxx P#xx Q#xx R#xx的格式输入的,而B类宏程序则是以直接的公式和语言输入的和C语言很相似在0i系统中应用比较广。 宏程序的作用 数控系统为用户配备了强有力的类似于高级语言的宏程序功能,用户可以使用变量进行算术运算、逻辑运算和函数的混合运算,此外宏程序还提供了循环语句、分支语句和子程序调用语句,利于编制各种复杂的零件加工程序,减少乃至免除手工编程时进行繁琐的数值计算,以及精简程序量。 宏程序指令适合抛物线、椭圆、双曲线等没有插补指令的曲线编程;适合图形一样,只是尺寸不同的系列零件的编程;适合工艺路径一样,只是位置参数不同的系列零件的编程。较大地简化编程;扩展应用范围。 宏的分类 B类宏 由于现在B类宏程序的大量使用,很多书都进行了介绍这里我就不再重复了,但在一些老系统中,比如发那科(FANUC)OTD系统中由于它的MDI键盘上没有公

式符号,连最简单的等于号都没有,为此如果应用B类宏程序的话就只能在计算机上编好再通过RSN-32接口传输的数控系统中,可是如果我们没有PC机和RSN-32电缆的话怎么办呢,那么只有通过A类宏程序来进行宏程序编制了,下面我介绍一下A类宏的引用; A类宏 A类宏是用G65 Hxx P#xx Q#xx R#xx或G65 Hxx P#xx Qxx Rxx格式输入的,xx 的意思就是数值,是以um级的量输入的,比如你输入100那就是0.1MM.#xx就是变量号,变量号就是把数值代入到一个固定的地址中,固定的地址就是变量,一般OTD系统中有#0~#100~#149~#500~#531.关闭电源时变量#100~#149被初始化成“空”,而变量#500~#531保持数据.我们如果说#100=30那么现在#100地址内的数据就是30了,就是这么简单.好现在我来说一下H代码,大家可以看到A 类宏的标准格式中#xx和xx都是数值,而G65表示使用A类宏,那么这个H就是要表示各个数值和变量号内的数值或者各个变量号内的数值与其他变量号内的数值之间要进行一个什么运算,可以说你了解了H代码A类宏程序你基本就可以应用了,好,现在说一下H代码的各个含义: 应用 以下都以#100和#101和#102,及数值10和20做为例子,应用的时候别把他们当格式就行, 基本指令 H01赋值;格式:G65H01P#101Q#102:把#102内的数值赋予到#101中 G65H01P#101Q#10:把#10赋予到#101中 H02加指令;格式G65 H02 P#101 Q#102 R#103,把#102的数值加上#103的数值赋

数控铣宏程序实例

第四章数控铣宏程序实例 §4、1 椭圆加工(编程思路:以一小段直线代替曲线) 例1 整椭圆轨迹线加工(假定加工深度为2mm) 方法一:已知椭圆的参数方X=acosθ Y=bsinθ 变量数学表达式 设定θ= #1(0°~ 360° ) 那么 X= #2 = acos[#1] Y= #3= bsin[#1] 程序 O0001; S1000 M03; G90 G54 G00 Z100; G00 Xa Y0; G00 Z3; G01 Z-2 F100; #1=0; N99 #2=a*cos[#1]; #3=b*sin[#1]; G01 X#2 Y#3 F300; #1=#1+1; IF[#1LE360]GOTO99; GOO Z50; M30;

例2 斜椭圆且椭心不在原点的轨迹线加工(假设加工深度为2mm) 椭圆心不在原点的参数方程 X=a*COS[#1]+ M Y=b*SIN[#1]+ N 变量数学表达式 设定θ=#1; (0°~360°) 那么X=#2=a*COS[#1]+ M Y=#3=b*SIN[#1]+ N 因为此椭圆绕(M ,N)旋转角度为A 可运用坐标旋转指令G68 格式 G68 X - Y - R - X,Y:旋转中心坐标; R: 旋转角度 程序 O0002; S1000 M03; G90 G54 G00 Z100; GOO X0 Y0; GOO Z3; G68 XM YN R45; #1=0; N99 #2=a*COS[#1]+M; #3=b*SIN[#1]+N;

GO1 X#2 Y#3 F300; G01 Z-2 F100; #1=#1+1; IF[#1LE360]GOTO99; G69 GOO Z100; M30; 例3:椭圆轮廓加工(深度2mm) 采用椭圆的等距加工方法使椭圆的长半轴与短半轴同时减少一个行距的方法直到短半轴小于刀具的半径R 根据椭圆的参数方程可设 变量表达式θ=#1(0°~360°) a=#2 b=#3(b-R~R) X=#2*COS[#1]=#4 Y=#3*SIN[#1]=#5 程序 O0003; S1000 M03; G90 G54 G00 Z100;

数控机床宏程序编程技巧实例

论文: 数控机床宏程序编程的技巧和实例 西北工业集团有限公司 白锋刚 2018年8月11日 前言 随着工业技术的飞速发展,产品形状越来越复杂,精度要求越来越高,产品更新换代越来越快,传统的设备已不能适应新要求。现在我国的制造业中已广泛地应用了数控车床、数控铣床、加工中心机床、数控磨床等数控机床。这些先进设备的加工过程都需要由程序来控制,需要由拥有高技能的人来操作。要发挥数控机床的高精度、高效率和高柔性,就要求操作人员具有优秀的编程能力。 常用的编程方法有手工编程和计算机编程。计算机编程的应用已非常广泛。与手工编程比较,在复杂曲面和型腔零件编程时效率高、 质量好。因此,许多人认为手工编程已不再重要,特别是比较难的宏程序编程也不再需要。只须了解一些基本的编程规则就可以了。这样的想法并不能全面。因为,计算机编程也有许多不足:1、程序数据量大,传输费时。2、修改或调整刀具补偿需要重新后置输出。 3、打刀或其他原因造成的断点时,很难及时复位。 手工编程是基础能力,是数控机床操作编程人员必须掌握的一种编程方法。手工编程能力是计算机编程的基础,是刀具轨迹设计

,轨迹修改,以及进行后置处理设计的依据。实践证明,手工编程能力强的人在计算机编程中才能速度快,程序质量高。 在程序中使用变量,通过对变量进行赋值及处理使程序具有特殊功能,这种有变量的程序叫宏程序。宏程序是数控系统厂家面向客户提供的的二次开发工具,是数控机床编程的最高级手工方式。合理有效的利用这个工具将极大地提升机床的加工能力。 作为一名从事数控车床、数控铣床、加工中心机床操作编程二十多年的技师,在平时的工作中,常常用宏程序来解决生产中的难题,因此对宏程序的编程使用积累了一些经验。在传授指导徒弟和与同事探讨中,总结了许多学习编制宏程序应注意的要点。有关宏编程的基础知识在许多书籍中讲过,我们在这里主要通过实例从编制技巧、要点上和大家讨论。 一、非圆曲面类的宏程序的编程技巧 1、非圆曲面可以分为两类; <1)、方程曲面,是可以用方程描述其零件轮廓的曲面的。如 抛物线、椭圆、双曲线、渐开线、摆线等。这种曲线可以用先求节点,再用线段或圆弧逼近的方式。以足够的轮廓精度加工出零件。选取的节点数目越多,轮廓的精度越高。然而节点的增多,用普通手工编程则计算量就会增加的非常大,数控程序也非常大,程序复杂也容易出错。不易调试。即使用计算机辅助编程,其数据传输量也非常大。而且调整尺寸补偿也很不方便。这时就显出宏程序的优势了,常常只须二、三十句就可以编好程序。而且理论上还可以根

新代宏程序实例

新代宏程序实例文件编码(GHTU-UITID-GGBKT-POIU-WUUI-8968)

1、R E P E A T直到型循环REPEAT <循环体> UNTIL <条件表达式> END_REPEAT; 说明:REPEAT直到型循环控制,先执行循环体,后判断条件表达式,当条件满足时退出循环。 例如: % @MACRO ,为了;?倾向于;?关于;?当作; conj.因为,由于;? FOR <循环变量> := <表达式1> TO <表达式2> [ BY <表达式3>] DO <循环体> END_FOR; 说明:FOR循环控制,式中各参数意义如下 循环变量——控制循环次数的变量; 表达式1——循环计数的起始值,可为整数或表达式; 表达式2——循环计数的终止值,可为整数或表达式; 表达式3——循环计数每次的累加值,可为整数或表达式; 循环体——循环每次执行内容; FOR循环执行过程为:先给循环变量赋起始值,然后判断循环变量是否为终止值,当循环变量已为终止值时退出循环,否则执行循环体,再对循环变量加上每次累加值, 4、无条件转移

GOTO转移语句 语法: GOTO n; 说明:无条件地跳到指定的n行号执行,其中n可为整数或表达式。GOTO常和IF语句搭配使用,那就是说当程序检查到某个条件满足时用GOTO语句去进一步处理,但应尽量少用该语句以提高程序可读性。 范例: % @MACRO Z10.; … N100 G01 X30. Z30.; … M02; EXIT循环中断语句 语法:EXIT; 说明:循环中断,跳离循环控制;用在循环控制中,通常EXIT都和IF 语句搭配使用,当某个条件满足后就跳离循环。请参考WHILE范例。

数控宏程序实例

第7章宏程序 7.3 宏程序调用 7.3.1 宏程序调用指令(G65) 在主程序中可以用G65调用宏程序。指令格式如下: G65 P L 〈自变量赋值〉; 其中:P指定宏程序号:L为重复调用次数(1—9999);自变量赋值是由地址和数值构成的,用以对宏程序中的局部变量赋值。 例如: 主程序: O7002 ... G65 P7100 L2 A1.0 B2.0 ... M30 宏程序: #3=#1+#2; IF [#3 GT 360] GOTO 9; G00 G91 X#3 N9 M99

7.3.2 自变量赋值 自变量赋值有两种类型。自变量I使用除去G,L,N,O,P以外的其他字母作为地址,自变量II可以使用A,B,C每个字母一次,I,J,K每个字母可使用十次作为地址。表7—3和7—4分别为两种类型自变量赋值的地址和变量号码之间的对应关系: 表7—3 自变量赋值的地址和变量号码之间的对应关系 表7—4 自变量II的地址与变量号码之间的对应关系

上表中的I,J,K的下标只表示顺序,并不写在实际命令中。在G65的程序段中,可以同时使用表4—1及表4—2中的两组自变量赋予值。系统可以根据使用的字母自动判断自变量赋值的类型。 7.4 变量的控制和运算指令 7.4.1 算术运算和逻辑运算 在变量之间,变量和常量之间,可以进行各种运算,常用的见表7—5。

表7—5 算术和逻辑运算 运算的优先顺序如下: 1)函数。 2)乘除,逻辑与。 3)加减,逻辑或,逻辑异或。 可以用[ ]来改变顺序

7.4.2 控制指令 1.无条件转移(GOTO语句) 语句格式为: GOTO n 其中n为顺序号(1—9999),可用变量表示。例如: GOTO 1; GOTO #10; 2. 条件转移(IF 语句) 语句格式为: IF [条件式] GOTO n 条件式成立时,从顺序号为n的程序段开始执行;条件式不成立时,执行下一个程序段。 条件式有以下几类: # j EQ # K # j NE # K # j GT # K # j LT # K # j GE # K # j LE # K 条件式中变量#J或#K可以是常量也可以是表达式,条件式必须用括弧括起来。下面的程序可以得到1到10的和: O7100

EXCEL宏编程实例.doc

Excel 宏编程举例说明 学习宏编程,需要VB基础,如果一点VB基础和面向对象的概念,建议先去补补VB,不然即使自认为学好了也只能拿着高射炮打蚊子! 一)、宏学习 首先需要明确的是,本文不可能教会您关于宏的所有内容。您需要学会利用"录制宏"的方法来学习宏:点击Excel"工具"下拉菜单中"宏"下?quot;录制新宏",此后可象平时一样进行有关操作,待完成后停止录制。然后再点击"工具"下拉菜单中"宏"下"宏"的"编辑"选项即可打开刚才所录制的宏的Visual Basic源程序,并且可以在此时的"帮助"下拉菜单中获得有关的编程帮助。对录制宏进行修改不仅可以学习宏的使用,还能大大简化宏的编写。 二)、基本概念 为了学习Excel中的宏,我们需要先了解以下一些基本概念。 1、工作簿:Workbooks、Workbook、ActiveWorkbook、ThisWorkbook Workbooks集合包含Excel中所有当前打开的Excel工作簿,亦即所有打开的Excel文件;Workbook对应Workbooks中的成员,即其中的Excel文件;ActiveWorkbook代表当前处于活动状态的工作簿,即当前显示的Excel文件;ThisWorkbook代表其中有Visual Basic代码正在运行的工作簿。 在具体使用中可用Workbooks(index)来引用Workbook对象,其中index为工作簿名称或编号;如Workbooks(1)、Workbooks("年度报表.xls")。而编号按照创建或打开工作簿的顺序来确定,第一个打开的工作簿编号为1,第二个打开的工作簿为2……。 2、工作表:Worksheets、Worksheet、ActiveSheet Worksheets集合包含工作簿中所有的工作表,即一个Excel文件中的所有数据表页;而Worksheet则代表其中的一个工作表;ActiveSheet代表当前处于的活动状态工作表,即当前显示的一个工作表。 可用Worksheets(index)来引用Worksheet对象,其中index为工作表名称或索引号;如Worksheets(1)、Worksheets("第一季度数据")。工作表索引号表明该工作表在工作表标签中的位置:第一个(最左边的)工作表的索引号为1,最后一个(最右边的)为Worksheets.Count。需要注意的是:在使用过程中Excel会自动重排工作表索引号,保持按照其在工作表标签中的从左至右排列,工作表的索引号递增。因此,由于可能进行的工作表添加或删除,工作表索引号不一定始终保持不变。3、图表:Chart 、Charts、ChartObject、ChartObjects、ActiveChart Chart代表工作簿中的图表。该图表既可为嵌入式图表(包含在ChartObject中),也可为一个分开的(单独的)图表工作表。 Charts代表指定工作簿或活动工作簿中所有图表工作表的集合,但不包括嵌入式在工作表或对话框编辑表中的图表。使用Charts(index) 可引用单个Chart图表,其中index是该图表工作表的索引号或名称;如Charts(1)、Charts("销售图表")。图表工作表的索引号表示图表工作表在工作簿的工作表标签栏上的位置。Charts(1)是工作簿中第一个(最左边的)图表工作表;Charts(Charts.Count)为最后一个(最右边的)图表工作表。 ChartObject代表工作表中的嵌入式图表,其作用是作为Chart对象的容器。利用ChartObject 可以控制工作表上嵌入式图表的外观和尺寸。 ChartObjects代表指定的图表工作表、对话框编辑表或工作表上所有嵌入式图表的集合。可由ChartObjects(index)引用单个ChartObject,其中index为嵌入式图表的编号或名称。如

数控宏程序实例

数控宏程序实例 第7章宏程序 7.3 宏程序调用 7.3.1 宏程序调用指令(G65) 在主程序中可以用G65调用宏程序。指令格式如下: G65 P L 〈自变量赋值〉; 其中:P指定宏程序号:L为重复调用次数(1—9999);自变量赋值是由地址和数值构成的,用以对宏程序中的局部变量赋值。 例如: 主程序: O7002 ... G65 P7100 L2 A1.0 B2.0 ... M30 宏程序: #3=#1+#2; IF [#3 GT 360] GOTO 9; G00 G91 X#3 N9 M99 7.3.2 自变量赋值 自变量赋值有两种类型。自变量I使用除去G,L,N,O,P以外的其他字母作为地址,自变量II可以使用A,B,C每个字母一次,I,J,K每个字母可使用十

次作为地址。表7—3和7—4分别为两种类型自变量赋值的地址和变量号码之间的对应关系: 表7—3 自变量赋值的地址和变量号码之间的对应关系 地址宏程序中变量地址宏程序中变量 A #1 Q #17 B #2 R #18 C #3 S #19 D #7 T #20 E #8 U #21 F #9 V #22 H #11 W #23 I #4 X #24 J #5 Y #25 K #6 Z #26 M #13 表7—4 自变量II的地址与变量号码之间的对应关系 地址宏程序中变量地址宏程序中变量 A #1 #18 B #2 #19 C #3 #20 #4 #21 #5 #22 #6 #23 #7 #24 #8 #25

#9 #26 #10 #27 #11 #28 #12 #29 #13 #30 #14 #31 #15 #32 #16 #33 #17 上表中的I,J,K的下标只表示顺序,并不写在实际命令中。在G65的程序段中,可以同时使用表4—1及表4—2中的两组自变量赋予值。系统可以根据使用的字母自动判断自变量赋值的类型。 7.4 变量的控制和运算指令 7.4.1 算术运算和逻辑运算 在变量之间,变量和常量之间,可以进行各种运算,常用的见表7—5。 表7—5 算术和逻辑运算 运算格式说明 赋值 #i=#j 加 #i=#j+#k 减 #i=#j-#k 乘 #i=#j*#k 除 #i=#j/#k 正弦 #i=sin[#j] 角度单位为度余弦 #i=cos[#j] 正切 #i=tan[#j]

【免费下载】数控宏程序实例

第7章 宏 程 序7.3 宏程序调用7.3.1 宏程序调用指令(G65)在主程序中可以用G65调用宏程序。指令格式如下:G65 P L 〈自变量赋值〉;其中:P 指定宏程序号:L 为重复调用次数(1—9999);自变量赋值是由地址和数值构成的,用以对宏程序中的局部变量赋值。例如:主程序:O7002...G65 P7100 L2 A1.0 B2.0...M30宏程序:#3=#1+#2;IF [#3 GT 360] GOTO 9; G00 G91 X#3 N9 M99 7.3.2 自变量赋值 自变量赋值有两种类型。自变量I 使用除去G ,L ,N ,O ,P 以外的其他字母作为地址,自变量II 可以使用A ,B ,C 每个字母一次,I ,J ,K 每个字母可使用十次作为地址。表7—3和7—4分别为两种类型自变量赋值的地址和变量号码之间的对应关系:表7—3 自变量赋值的地址和变量号码之间的对应关系地 址宏程序中变量地 址宏程序中变量A #1Q #17 B #2R #18 C #3S #19 D #7T #20 E #8U #21 F #9V #22H #11W #23I #4X #24J #5Y #25K #6Z #26对全部高中资料试卷电气设备,在安装过程中以

M #13表7—4 自变量II 的地址与变量号码之间的对应关系地 址宏程序中变量地 址宏程序中变量 A #1#18 B #2#19 C #3#20#4#21#5#22#6#23#7#24#8#25#9#26#10#27#11#28#12#29#13#30#14#31#15#32#16#33#17 上表中的I ,J ,K 的下标只表示顺序,并不写在实际命令中。在G65的程序段中,可以同时使用表4—1及表4—2中的两组自变量赋予值。系统可以根据使用的字母自动判断自变量赋值的类型。 7.4 变量的控制和运算指令7.4.1 算术运算和逻辑运算在变量之间,变量和常量之间,可以进行各种运算,常用的见表7—5。表7—5 算术和逻辑运算运算格式说明赋值#i=#j 加 #i=#j+#k 减#i=#j-#k 乘#i=#j*#k 除#i=#j/#k 正弦#i=sin[#j]余弦#i=cos[#j]正切#i=tan[#j]反正切#i=atan[#j] 角度单位为度平方根#i=sqrt[#j]绝对值#i=abs[#j]壁薄、接口不严等问题,合理利用管线敷设技术。线缆敷设原则:在分线盒处,当不同电压回路交叉时,应采用金属隔板进行隔开处理;同一线槽内,强电回路须同时切断习题电源,线缆敷设完毕,要进行检查和检测处理。对全部高中资料试卷电气设备,在安装过程中以及安装结束后进行高中资料试卷调整试验;通电试卷电气设备进行调试工作并且进行过关运行高中资料试卷技术指导。对于调试过程中高中资料试卷技术问题,作为调试人员,需要在事前掌握图纸资料、设备制造厂家出具高中资料试卷试验报告与相关技术资料,并且了解现场设备高中资料试卷布置情况与有关高中资料试卷电气系统接线等情况,然后根据规范与规程规定,制定设备调试高中资料试卷方案。电力高中资料试卷保护装置调试技术,要求电力保护装置做到准确灵活。对于差动保护装置高中资料试卷调试技术是指发电机一变压器组在发生内部故障时,需要进行外部电源高中资料试卷切除从而采用高中资料试卷主要保护装置。

(完整版)T型螺纹宏程序实例

1、内梯形螺纹加工程序: G54G99 M3S100 T0101 G0Z3 X33 #101=0.2; 每一刀的的深度(半径) #102=4 梯形螺纹的深度(半径) #103=1 分层切削的次数 N90 G0U[2*#101*#103] G32Z-32F7 G0X32 Z[3+[#102-#101]*0.268+A] ;A 是槽底宽-刀尖宽的一半 X33 U[2*#101*#103] G32Z-32F7 G0X32 Z[3-[#102-#101]*0.268-A] 梯形螺纹的牙顶宽:0.366x 螺距梯形螺纹的牙底宽:螺距-牙顶宽-2 倍的(螺纹深度Xtg15°) X33 U[2*#101*#103] G32Z-32F7 G0X32 G0Z3 X33 #102=#102-0.2 #103=#103+1 IF[#103LE20]GOTO90 ; G0Z100 M5 M30; (3)参考程序 ①编程分析用宏程序编程时变量的设置是核心内容,一是要变量尽可能少,避免影响数控系统计算速度,二是便于构成循环。经过分析本例中要 4 个变量,#1 为刀头到牙槽底的距离,初始值为5.5mm, #2为背吃刀量(半径值),#3为(牙槽底宽一刀头宽度)12, #4为每次切削螺纹终点X 坐标。 本例中编程关键技术是要利用宏程序实现分层切削和左右移刀切削。利用G92 螺纹加工循环指令功能,左右移刀切削只需将切削的起点相应移动0.268*[#1-#2]+#3 (右移刀切削)或者- 0.268*[#1-#2]-#3 (左移刀切削)就可以实现。分层切削的实现通过#1 和#2 变量实现,每层加工三刀后, 让#1=#1-#2 实现进刀, 而在每层中螺纹的X 坐标不变, 始终为#4=69.0+2*[#1-#2] 。 ②参考程序(此程序已运用于FANUC 0i Mate TC系统车床加工零件) 参考程序注释 O0001;程序号 N10 T0101 ;换01号刀具,调用01 号偏置值 N20 M08 ;打开切削液

数控铣宏程序实例(DOC)

数控铣宏程序实例 §4.1 椭圆加工(编程思路:以一小段直线代替曲线)例1:整椭圆轨迹线加工(假定加工深度为2mm) 方法一:已知椭圆的参数方X=acosθ Y=bsinθ 变量数学表达式 设定θ= #1(0°~ 360°) 那么 X= #2 = acos[#1] Y= #3= bsin[#1] 程序 O0001; S1000 M03; G90 G54 G00 Z100; G00 Xa Y0; G00 Z3; G01 Z-2 F100; #1=0; N1 #2=a*cos[#1]; #3=b*sin[#1]; G01 X#2 Y#3 F300; #1=#1+1; IF[#1LE360]GOT01; GOO Z50; M30;

例2:斜椭圆且椭心不在原点的轨迹线加工(假设加工深度为2mm ) 椭圆心不在原点的参数方程 X=a*C OS [#1]+ M Y=b*SIN [#1]+ N 变量数学表达式 设定θ=#1; (0°~360°) 那么X=#2=a*C OS [#1]+ M Y=#3=b*SIN [#1]+ N 因为此椭圆绕(M ,N )旋转角度为A 可运用坐标旋转指令G68 格式 G68 X - Y - R - X,Y :旋转中心坐标; R: 旋转角度 程序 O0002; S1000 M03; G90 G54 G00 Z100; GOO Xa+M YN; GOO Z3; G68 XM YN R45; #1=0; N99 #2=a*COS [#1]+M; #3=b*SIN [#1]+N; GO1 X#2 Y#3 F300; G01 Z-2 F100; #1=#1+1; IF [#1LE360]GOTO99; G69 ; GOO Z100; M30;

数控铣宏程序实例

第四章数控铣宏程序实例 §4.1 椭圆加工(编程思路:以一小段直线代替曲线)例1 整椭圆轨迹线加工(假定加工深度为2mm) 方法一:已知椭圆的参数方X=acosθ Y=bsinθ 变量数学表达式 设定θ= #1(0°~ 360°) 那么 X= #2 = acos[#1] Y= #3= bsin[#1] 程序 O0001; S1000 M03; G90 G54 G00 Z100; G00 Xa Y0; G00 Z3; G01 Z-2 F100; #1=0; N99 #2=a*cos[#1]; #3=b*sin[#1]; G01 X#2 Y#3 F300; #1=#1+1; IF[#1LE360]GOTO99; GOO Z50; M30;

例2 斜椭圆且椭心不在原点的轨迹线加工(假设加工深度为2mm ) 椭圆心不在原点的参数方程 X=a*C OS [#1]+ M Y=b*SIN [#1]+ N 变量数学表达式 设定θ=#1; (0°~360°) 那么X=#2=a*C OS [#1]+ M Y=#3=b*SIN [#1]+ N 因为此椭圆绕(M ,N )旋转角度为A 可运用坐标旋转指令G68 格式 G68 X - Y - R - X,Y :旋转中心坐标; R: 旋转角度 程序 O0002; S1000 M03; G90 G54 G00 Z100; GOO X0 Y0; GOO Z3; G68 XM YN R45; #1=0; N99 #2=a*COS [#1]+M; #3=b*SIN [#1]+N;

GO1 X#2 Y#3 F300; G01 Z-2 F100; #1=#1+1; IF[#1LE360]GOTO99; G69 GOO Z100; M30; 例3:椭圆轮廓加工(深度2mm) 采用椭圆的等距加工方法使椭圆的长半轴和短半轴同时减少一个行距的方法直到短半轴小于刀具的半径R 根据椭圆的参数方程可设 变量表达式θ=#1(0°~360°) a=#2 b=#3(b-R~R) X=#2*COS[#1]=#4 Y=#3*SIN[#1]=#5 程序 O0003; S1000 M03; G90 G54 G00 Z100;

宏程序例子

12.5 宏程序应用举例 例1:加工如图12-1所示的椭圆表面,材料为中碳钢。由于一般的数控系统无椭圆插补功能,手工编程可用宏程序实现编程计算。本例使用?20键槽铣刀分两层铣削,每一次切削深度为5mm。按刀具刀具轨迹编程。 图12-1 椭圆轮廓图 主程序 O0001 N0001 G92X0.0Y0.0Z150.0;工件坐标系原点设在工件中心距顶面上 N0002 M03S300;主轴正转,转速 N0003 G00X-80.0;刀具移至椭圆左端点处 N0004 G00Z1.0;快速接近工件 N0005 G01Z0.0F100.0 慢速接近工件 N0006 G65P0100A80.0B50.0C-5.0 椭圆长半轴为80,短半轴为50。Z向进刀5mm N0007 G65P0100A80.0B50.0C-10.0 椭圆长半轴为80,短半轴为50。Z向进刀5mm N0007 G00Z150.0;抬刀 N0008 G00X0.0Y0.0;刀具回起点 N0009 M05;主轴停 N0010 M30;程序结束 宏程序 O1000 #10=-#1;#1为长半轴=80,#2为短半轴=50,#10为X坐标N1000 G01Z#3;#3为Z向进刀深度 WHIL[#10LE#1]DO1;X坐标小于等于80循环加工上半椭圆 #11=SQRT[#1*#1-#10*#10]*#2/#1;#11为Y坐标用椭圆公式计算 N1001 G01X#10Y#11F100.0;切削进给 #10=#10+0.05;修改X坐标,X+0.05 END1; #10=#1;#1为长半轴=80,#2为短半轴=50,#10为X坐标WHIL[#10GE-#1]DO2;X坐标小于等于80循环加工下半椭圆 #11=-SQRT[#1*#1-#10*#10]*#2/#1;#11为Y坐标用椭圆公式计算

几个宏程序实例

利用宏程序切圆台与斜方台铣床编程实例一: 切圆台与斜方台,各自加工 3个循环,要求倾斜10度的斜主台与圆台相切,圆台在方台之 上,如图所示。 程序说明 O8101 #10=10.0;圆台阶高度 #11=10.0;方台阶高度 #12=124.0;圆外定点的X坐标值 #13=124.0;圆外定点的Y坐标值 #701=13.0;刀具半径补偿值(偏大,粗加工) #702=10.2;刀具半径补偿值(偏中,半精加工) #703=10.0;刀具半径补偿值(实际,精加工) N01 G92 X0.0 Y0.0 Z0.0; N02 G28 Z10 T02 M06;自动回参考点换刀 N03 G29 Z0 S1000 M03;单段走完此段,手动移刀到圆台面中心上 N04 G92 X0.0 Y0.0 Z0.0; N05 G00 Z10.0; #0=0; N06 G00 [X-#12] Y[-#13];快速定位到圆外(-#12,-#13) N07 G01 Z[-#10] F300;Z向进刀-#10 WHILE #0 LT 3;加工圆台 N[08+#0*6] G01 G42 X[-#12/2] Y[175/2] F280.0 D[#0+1];完成右刀补 D[#0+1]; D01=#701;D02=#702;D03=#703; N[09+#0*6] X[0] Y[-175/2];进到工件的切入点 N[10+#0*6] G03 J[175/2]; 逆时针切削整圆 N[11+#0*6] G01X[#12/2] Y[-175/2];切出工件 N[12+#0*6] G40 X[#12] Y[-#13];取消刀补 N[13+#0*6] G00 X[-#12]; #0=#0+1;

数控车床宏程序案例

由浅入深宏程序数控车床旋转正弦函数宏程序 正弦函数曲线旋转宏程序 坐标点旋转1 s = x cos(b) – y sin(b) t = x sin(b) + y cos(b) 根据下图,原来的点(#1,#2),旋转后的点(#4,#5),则公式: #4=#1*COS[b]- #2*SIN[b] #5=#1*SIN[b]+ #2*COS[b] 公式中角度b,逆时针为正,顺时针为负。 下图中正弦曲线如果以其左边的端点为参考原点,则此条正弦曲线顺时针旋转了16度,即b=-16

正弦函数旋转图纸1 此正弦曲线周期为24,对应直角坐标系的360 对应关系【0,360】 y=sin(x) 【0,24】 y=sin(360*x/24) 可理解为: 360/24是单位数值对应的角度 360*x/24是当变量在【0,24】范围取值为x时对应的角度 sin(360*x/24)是当角度为360*x/24时的正弦函数值 旋转正弦函数曲线粗精加工程序如下: T0101 M3S800 G0X52Z5 #6=26 工件毛坯假设为50mm,#6为每层切削时向+X的偏移量。N5 G0X[#6+18.539] G1Z0F0.1

#1=48 N10 #2=sin【360*#1/24】 #4=#1*COS[-16]- #2*SIN[-16] 旋转30度之后对应的坐标值 #5=#1*SIN[-16]+ #2*COS[-16] #7=#4-【50-3.875】坐标平移后的坐标。 #8=45+2*#5+#6 G1X[#8]Z[#7]F0.1 沿小段直线插补加工 #1=#1-0.5 递减0.5,此值越小,工件表面越光滑。 IF [#1 GE 0] GOTO 10 条件判断是否到达终点。 Z-50 G1X52 直线插补切到工件外圆之外 G0Z5 #6=#6-2 IF [#6 GE 0] GOTO 5 G0X150Z150 M5 M30 镂空立方体宏程序范例 镂空立方体图纸及宏程序范例 此零件六个面加工内容相同,在加工时,调面装夹时要注意考虑夹紧力。 对于每个面的加工,可以用一个宏程序进行编制。宏程序编程时,即有深度方向的变化,也有半径的变化,是一种典型的宏程序。可以先用自己的思路编制一下,图后附有参考程序。

宏程序编程例子入门

宏程序编程例题 椭圆解析: 椭圆关于中心、坐标轴都是对称的,坐标轴是对称轴,原点是对称中心。对称中心叫做椭圆中心。椭圆和X 轴有 2 两个交点,和Y 轴有两个交点,这四个交点叫做椭圆顶点。 椭圆标准方程:x2 / a2 + y2 / b2 = 1 ( a为长半轴,b为短半轴,a > b > 0 ) 椭圆参数方程:x=a*cosM y=b*sinM ( a 为长半轴,b 为短半轴,a > b > 0 ,M 是夹角,是椭圆上任意一 点到椭圆中心连线与X 正半轴所成的夹角,顺时针为负,逆时针 为正。) 二、数控车床: 根据椭圆标准方程:x2 / a2 + y2 / b2 = 1 ( a为长半轴,b为短半轴,a > b > 0 )根据椭圆参数方程:x=a*cosM y=b*sinM ( a 为长半轴,b 为短半轴,a > b > 0 ,M 是夹角,是椭圆上 任意一点到椭圆中心连线与X 正半轴所成的夹角,顺时针为负, 逆时针为正。) 可得车床标准方程:z2 /a2 + x2 / b2 = 1 ( a为长半轴,b为短半轴,a > b > 0 ) 可得椭圆参数方程:z=a*cosM x=2b*sinM ( a为长半轴,2b为短轴(直径),a > b > 0 , M是夹角,是椭 圆上任意一点到椭圆中心连线与Z 正半轴所成的夹角,顺时针为 负,逆时针为正。) 通过标准方程推导X的表达式:x =b / a * SQRT [a * a — * z ] a、b为长、短半轴是常 数表示。 (一)车床车削椭圆通常是加工椭圆X 正方向部分(回转体),用标准方程车削椭圆时,通常设Z 为自变量,通过方程把X 表达出来,最多就是车削到180 度椭圆,然后利用G01 插补拟合成椭圆。 通过椭圆车床标准方程推导,可以有如下过程:z2 / a2 + x2 / b2 = 1 可推导x2 / b2 =1- [ z2 / a2 ] = [ a2 -z2 ] / a2 可推导x2 = [ b2 / a2 ] * [ a 2 -z2 ] x =b / a * SQRT [a 2—] 转换为数控格式就为x =2b / a * SQRT [a * a — * z ] a为长半轴、2b为短轴(直径编程)常数表示。 设z为自变量#1,则x为因变量#2,根据上述公式有:#2 =b / a * SQRT [a * a - #1 * #1 ] 例题:长半轴a=5,短半轴b=4的椭圆。有以下几种情况: 1、#1为乙为自变量: 则#1=5 (#1=5 表示从Z 正半轴开始加工。) N10 #2 = 8 / 5 * SQRT [5 * 5 - #1 * #1 ] G01 X [ #2+ D ] Z [ #2 + E ] F0.2 (X 正, Z 正,表示走逆时针,D、E 表示椭圆中心X、Z 绝对坐标) #1=#1-1 IF [ #1 GE 0 ] GOTO10 这是加工第一象限的椭圆, 90度椭圆。 IF [ #1 GE -5 ] GOTO10 这是从第一象限加工到第二象限的椭圆, 180度椭圆。

加工中心宏程序实例

O5900 G40G90G80G17 T18 M6 G90G55G0X-25.395Y15.T16 M26 G90G0A0. M25 M3S500 G43G0Z20.H18 M08 G0Z-1.5 G1Y-15.F35 G0Z5. G0Y15. G0Z-2.38

G1Y-15.F35 G0Z5. G0Y15. M26 G90G0A180. M25 G0Z-1.5 G1Y-15.F35 G0Z5. G0Y15. G0Z-2.38 G1Y-15.F35 G0Z5. G0Y15.M09 G91G30Z0.M05 G91G28Y0.

G90 M00 T16 M6 G55G0X-56.65Y0.T2 M26 G91G0A-7.8 M25 M3S1000 G90G43G0Z0.H16 M08 #13002=25.05 N100G0X-56.65Y0. G42G1X-56.65Y38.1D2F1000 G02Y-38.1R38.1F35 G40G1X-56.65Y0.F1000

#13002=#13002-1. IF[#13002GE19.05]GO100 G0X-100.M09 G91G30Z0.M05 M1 T2 M6 G90G55G0X0.Y40.T18 M3S1200 G43G0Z20.H2 M08 G0Z-5.08 #105=31.75 #106=0.3 #107=0.09 N200#108=#105-#107 #109=#108+#106

G0Y#109 G1Y#108F6 #107=#107+0.2 IF[#107LE6.]GO200 G0Y40. M26 G91G0A180. M25 G90 #105=31.75 #106=0.3 #107=0.09 N300#108=#105-#107 #109=#108+#106 G0Y#109 G1Y#108F6

数控机床宏程序编程实例FANUC

数控机床宏程序编程实例 相关知识: 用户宏程序是以变量的组合,通过各种算术和逻辑运算,转移和循环等命令,而编制的一种可以灵活运用的程序,只要改变变量的值,即可以完成不同的加工和操作。用户宏程序可以简化程序的编制,提高工作效率。宏程序可以像子程序一样用一个简单的指令调用。 宏程序分为A、B两类。在一些较老的数控系统中采用A类宏程序,而现在常用的一些较为先进的数控系统中则采用B类程序。本书主要介绍B类宏程序。 (一)变量 在常规程序中,总是将一个具体的数值赋给一个地址,为了使程序更具有通用性,更加灵活,在宏程序中设置了变量。 1、变量的表示 变量由变量符号#和后面的变量号组成:#i(i=1,2,3,…)。例如#100,#110,#5等。 变量序号可用表达式,但表达式必须放在[ ]中。 例:#5,#109,#[100+#5 ]。 2、变量的引用 将跟随在一个地址后的数值用一个变量来代替,即引入了变量。 例:G01 X#100 Z#101 F#102,当#100=25、#101=-30、#102=0.1时,上式即表示为G01 X25 Z-30 F0.1。 ①用表达式指定变量,表达式要放在方括号里:G01 X[#1+#2] F#3。 ②引用一个未定义变量时,在遇到地址字之前,该变量被忽略。 ③要改变被引用变量的符号,在#前加负号G01 X-#1。 3、变量的类型 变量分为局部变量、公共变量和系统变量三种。 ①局部变量(#1~#33) 局部变量是一个在宏程序中局部使用的变量,可以服务于不同的宏程序,在不同的宏程序中局部变量可以赋不同的值,相互之间不影响。 ②公共变量(#100~#199,#500~#999) 公共变量也叫通用变量,可在各级宏程序中被共同使用,即这一变量在不同程序级中调用时含义相同。因此,一个宏程序中经计算得到的一个通用变量的数值,可以被另一个宏程序调用。 ③系统变量(#1000~) 系统变量用来读取和写入各种数控数据项,如当前位置和刀具偏置值,它的值决定于系统的状态。 4、变量的赋值 ①直接赋值 MDI方式直接赋值或在程序中以等式方式赋值,等号左边不能用表达式。 ②宏程序调用时赋值 宏程序以子程序的方式出现,所用变量可以在宏程序调用时赋值。 (二)运算指令 变量之间进行运算的通常表达形式是:#i=(表达式) 常用运算指令如下: 定义替换:#i=#j 加:#i=#j+#k 减:#i=#j-#k 乘:#i=#j×#k 除:#i=#j÷#k 正弦函数:#i=SIN [#j ]

相关文档