数控车床由浅入深的宏程序实例Word文件下载.docx
- 文档编号:5255989
- 上传时间:2023-05-04
- 格式:DOCX
- 页数:43
- 大小:469.63KB
数控车床由浅入深的宏程序实例Word文件下载.docx
《数控车床由浅入深的宏程序实例Word文件下载.docx》由会员分享,可在线阅读,更多相关《数控车床由浅入深的宏程序实例Word文件下载.docx(43页珍藏版)》请在冰点文库上搜索。
上面4个都是减指令的格式都是把Q后面的数值或变量号内的数值减去R后面的数
H04乘指令;
格式G65H04101102103,把#102的数值乘上#103的数值赋予#101
G65H04101102R10
G65H04101Q10103
G65H04101Q20R10
上面4个都是乘指令的格式都是把Q后面的数值或变量号内的数值乘上R后面的数
H05除指令;
格式G65H05101102103,把#102的数值除以#103的数值赋予#101
G65H05101102R10
G65H05101Q10103
G65H05101Q20R10
上面4个都是除指令格式都是把Q后面的数值或变量号内的数值除以R后面的数
值或变量号内的数值然后等于到P后面的变量号中.(余数不存,除数如果为0的话会出现112报警)
三角函数指令
H31正玄函数指令:
格式G65H31101102103;
含义Q后面的#102是三角形的斜边R后面的#103内存的是角度.结果是#101102*103,也就是说可以直接用这个求出三角形的另
一条边长.和以前的指令一样Q和R后面也可以直接写数值.
H32余玄函数指令:
格式G65H32101102103;
含义Q后面的#102是三角形的斜边
R后面的#103内存的是角度.结果是#101102*103,也就是说可以直接用这个求出三角形的
另一条边长.和以前的指令一样Q和R后面也可以直接写数值.
H33和H34本来应该是和的可是经过我使用得数并不准确,希望有知道的人能够告诉我是为什么?
开平方根指令
H21;
格式G65H21101102;
意思是把#102内的数值开了平方根然后存到#101中(这个指令是非常重要的如果在车椭圆的时候没有开平方根的指令是没可能用宏做到的.
无条件转移指令
H80;
格式65H80P10;
直接跳到第10程序段
有条件转移指令
H81H82H83H84H85H86,分别是等于就转的H81;
不等于就转的H82;
小于就转的H83;
大于就转的H84;
小于等于就转的H85;
大于等于就转的H86;
格式65H8xP10101102;
将#101内的数值和#102内的数值相比较,按上面的H8x的码带入H8x中去,如果条件符合就跳到第10程序段,如果不符合就继续执行下面的程序段.
4B类宏程序
定义
能完成某一功能的一系列指令像子程序那样存入存储器,用户可以设定M、S、T、G代码调用它们,使用时只需给出这个指令代码就能执行其功能,也可以像调用子程序一样使用。
这样的程序也称作用户宏程序
l调用宏程序的指令————宏指令
l特点:
使用变量
变量的表示和使用
(一)变量表示
(1,2,3,…)或#[<
式子>
]
例:
#5,#109,#501,#[#12-12]
(二)变量的使用
1.地址字后面指定变量号或公式
格式:
<
地址字>
这里的“I”代表变量号
103,设#103=15 则为F15
Z-#110,设#110=250 则为Z-250
X[#2418*[#1]]
2.变量号可用变量代替
#[#30],设#30=3 则为#3
3.变量不能使用地址O,N,I
下述方法下允许
1;
2 6.00×
100.0;
3 Z200.0;
4.变量号所对应的变量,对每个地址来说,都有具体数值范围
#30=1100时,则30是不允许的
5.#0为空变量,没有定义变量值的变量也是空变量
6.变量值定义:
程序定义时可省略小数点,例:
#123=149
键盘输一.变量的种类
1.局部变量#133
一个在宏程序中局部使用的变量,其运算结果其他程序不可使用。
A宏程序 B宏程序
… …
#10=20 10 不表示X20
断电后清空,调用宏程序时代入变量值
2.公共变量。
早期(#100149,#500531)、新系统(#100199,#500999)
各用户宏程序内公用的变量,其运算结果任何程序调用都相同。
上例中#10改用#100时,B宏程序中的
100表示X20
#100149 断电后清空
#500531保持型变量(断电后不丢失)
3.系统变量
固定用途的变量,其值取决于系统的状态
#2001值为1号刀补X轴补偿值
#5221值为X轴G54工件原点偏置值
入时必须输入小数点,小数点省略时单位为μm
运算指令
运算式的右边可以是常数、变量、函数、式子
式中,也可为常量
式子右边为变量号、运算式
1.定义
2.算术运算
-
*
3.逻辑运算
4.函数
[]正弦
[]余弦
[]正切
[]反正切
[] 平方根
[] 绝对值
[] 四舍五入化整
[] 上取整
[] 下取整
[] →(二进制)
[] →
1.说明
1)角度单位为度
90度30分为90.5度
2)函数后的两个边长要用“/”隔开
#1[1]/[-1]时,#1为了35.0
3)用于语句中的地址,按各地址的最小设定单位进行四舍五入
设#1=1.2345,#2=2.3456,设定单位1μm
G91 X-#1;
X-1.235
X-#2 F300;
X-2.346
X[#12];
X3.580
未返回原处,应改为
X[[#1][#2]];
4)取整后的绝对值比原值大为上取整,反之为下取整
设#1=1.2,#2=-1.2时
若#3[#1]时,则#3=2.0
若#3[#1]时,则#3=1.0
若#3[#2]时,则#3=-2.0
若#3[#2]时,则#3=-1.0
5)指令函数时,可只写开头2个字母
→
6)优先级
函数→乘除(*,1,)→加减(+,-,,)
#123*[#4];
7)括号为中括号,最多5重,园括号用于注释语句
#1[[[#23]*#45]*#6];
(3重)
转移与循环指令
1.无条件的转移
1;
#10;
2.条件转移
[<
条件式>
] n
条件式:
表示=
表示≠
表示>
表示<
表示≥
表示≤
[#1 10] 100;
…
100 00 91X10;
求1到10之和
O9500;
#1=0
#2=1
N1 [#2 10] 2
#112;
#22+1;
1
2 30
1.循环
[<
] m;
(1,2,3)
说明:
1.条件满足时,执行到,则从的程序段
不满足时,执行到的程序段
2.省略语句只有…,则从到之间形成死循环
3.嵌套
4. 时,空和“0”不同
其他条件下,空和“0”相同
O0001;
#1=0;
#2=1;
[#210] 1;
#221;
M30
由浅入深宏程序1-宏程序入门基础之销轴加工
对于没有接触过宏程序人,觉得它很神秘,其实很简单,只要掌握了各类系统宏程序的基本格式,应用指令代码,以及宏程序编程的基本思路即可。
对于初学者,尤其是要精读几个有代表性的宏程序,在此基础上进行模仿,从而能够以此类推,达到独立编制宏程序的目的。
本教程将分步由浅入深的将宏程序讲解给大家,作者水平有限,也希望各位同仁提供更好的思路。
下面大家先看一个简单的车床的程序,图纸如下:
要求用外圆刀切削一个短轴,这里只列举程序的前几步:
0101M3800G0X82Z5G0X76G1Z-40F0.2X82
G0Z5G0X72G1Z-40F0.2X82G0Z5G0X68
G1Z-40F0.2X82G0Z5G0X68
G1Z-40F0.2X82G0Z5........G0X40G1Z-40F0.2
X82G0Z5G0X150Z150M5M30
从上面程序可以看出,每次切削所用程序都只是切削直径X有变化,其他程序代码未变。
因此可以将一个变量赋给X,而在每次切削完之后,将其改变为下次切削所用直径即可。
O5679
T0101
M3S800
G0X82Z5
#1=76赋初始值,即第一次切削直径
N10G0X[#1]将变量赋给X,则X方向进刀的直径则为#1变量中实际存储值。
N10是程序
G1Z-40F0.2段的编号,用来标识本段,为后面循环跳转所用。
X82
G0Z5
#11-4每行切深为2,直径方向递减4
[#140]10如果#1>
=40,即此表达式满足条件,则程序跳转到N10继续执行。
G0X150Z150当不满足#1>
=40,即#1<
40,则跳过循环判断语句,由此句继续向后执行。
M5
由浅入深宏程序2-宏程序之销轴粗精加工
本篇文章利用宏程序简单模仿数控系统的外圆车削循环功能。
在此用前一篇的图纸与程序
原程序:
O0985
G0X82Z5粗加工开始
#2=0.05Z向的加工余量
#3=0.5外圆方向的加工余量
#4=0.3每层切削后的回退量
#1=76+2*#3考虑了精加工余量的第一次切削直径
G1Z[-402]F0.2段的编号,用来标识本段,为后面循环跳转所用。
X[#14]每次切削只回退#4的值
#11-4单边切深为2,直径方向每次递减4
M03S1200当不满足#1>
G0X40由此开始精加工
G1Z-40F0.1
G0X150Z150
由浅入深宏程序3-宏程序车半球面
在不使用循环切削加工圆弧时,可以有几种不同的方式来安排走刀轨迹,本篇文章采用将圆弧段沿X方向偏移,由外籍内的加工方式进行。
如图所示R20圆弧,假设刀具每次单边切深2,直径每刀吃4,则由端面切入的位置可以计算出需要切削:
40/4=10刀
每条圆弧起点和终点的Z坐标不变,但X坐标都同时向方向偏移一个相同的值,因此可设偏移量为#1,初始值为#1=36
圆弧起点X坐标为#2=01
圆弧终点X坐标为#3=401
宏程序编制如下:
O3456
G0X42Z5
#1=36赋初始值,即第一个圆弧直径偏移量
N10#2=01计算圆弧起点的X坐标
#3=401计算圆弧终点的X坐标
G0X[#2]快速到达切削直径
G1Z0F0.1直线切至圆弧起点
G3X[#3]20R20F0.1切削圆弧
G1X42直线插补切削至外圆
G0Z5退至端面外侧
#11-4直径方向递减4
[#10]10如果#1>
=0,即此表达式满足条件,则程序跳转到N10继续执行。
=0,即#1<
0,则最后一条圆弧已经切完,跳出循环。
由浅入深宏程序4-圆的标准方程编制宏程序车半球面
我们知道无论什么样的曲线,数控系统都是软件在处理时都会将其按照内部的算法划分成小段的直线进行加工,接下来我们利用圆的方程来将直线划分成小段直线在利用宏程序对其加工。
下图为圆的标准方程
X***R,若将X和Y用参数变量代替可改写为#1*#12*#2*R
圆弧可沿#1方向划分成无数小段直线,然后求出其相应端点坐标,再求出相对的数控车床中的坐标,再按直线进行编程加工。
如下图所示:
则此段圆弧精加工轨迹为:
G0X0
G1Z0F0.1
N10#2[20*201*#1]表示开平方
#31-20圆的原点在工件坐标左侧20,所以圆弧上所有点坐标Z要减20
#4=2*#2圆的方程计算出的为半径值,需转化为直径值才能与直径编程对应。
G1X[#4]Z[#3]F0.1沿小段直线插补加工
#11-0.5递减一小段距离,此值越小,圆弧越光滑。
[#10]10条件判断是否到达终点。
G1X42直线切出外圆
如果要再加上分层的粗加工,设偏移量为#5,则程序改为
O6789
#5=36
N5G0X[#5]
#1=20
#4=2*#25圆的方程计算出的为半径值,需转化为直径值才能与直径编程对应。
[#10]10条件判断是否到达终点。
G1X42直线插补切出外圆
#55-4
[#50]5
以上程序分内外二层循环,外层循环为分层加工,内层循环为小段直线插补一条圆弧。
由浅入深宏程序5-圆的参数方程编制宏程序车半球面
圆的标准方程为:
*θ
*θ
可改写为:
#1=20*[#3]#3为参数方程对应图纸中角度
#2=20*[#3]
使用参数方程比圆的标准方程具有一个优点,从下图中可以看出,使用标准方程式,在工件最右端,划分直线坡度较大,从右至左划分线段不均匀,而使用圆的参数方程所划分的直线段是按照圆周方向划分的,因此分布均匀,从而使用零件表面加工质量好。
相应程序修改如下:
O9876
#6=36
N5G0X[#6]
#3=0
N10#1=20*[#3]
#2=20*[#3]
#4=2*#26圆的方程计算出的为半径值,需转化为直径值才能与直径编程对应。
#51-20
G1X[#4]Z[#5]F0.1沿小段直线插补加工
#33+3递减3度,此值越小,圆弧越光滑。
[#390]10条件判断是否到达终点。
G1X42直线插补切到工件外圆之外
#66-4
[#60]5
由浅入深宏程序6-利用椭圆标准方程编制数控车宏程序
椭圆的标准方程:
椭圆宏程序结构流程:
如果看了前几篇,那么接下来这两篇加工椭圆的宏程序应该很容易理解。
椭圆标准方程X****1,其中a为长半轴,b为短半轴,若将X和Y用参数变量代替可改写为#1*#1*2*#2*1
椭圆可沿长半轴#1方向划分成无数小段直线,然后求出其相应端点坐标,再求出相对的数控车床中的坐标,再按直线进行编程加工。
假设椭圆30,20,只加工半个椭圆,则此段椭圆精加工轨迹为:
#1=30
N10#2=20*[1-30*301*#1]表示开平方
#31-30椭圆的原点在工件坐标左侧30,所以椭圆上所有点坐标Z要减20
#4=2*#2方程计算出的为半径值,需转化为直径值才能按直径编程。
#11-1递减一小段距离,此值越小,椭圆越光滑。
O5678
N10#2=20*[30*30-[#1*#1]]/30表示开平方
以上程序分内外二层循环,外层循环为分层加工,内层循环为小段直线插补一条四分之一椭圆弧。
由浅入深宏程序7-椭圆的参数方程编制宏程序车椭球面
椭圆的参数方程为:
#1=30*[#3]#3为参数方程对应的中角度
N10#1=30*[#3]
#4=2*#26计算出的为半径值,需转化为直径值才能与直径编程对应。
#51-30
#33+3递减3度,此值越小,工件表面越光滑。
由浅入深宏程序8-车床任意位置椭圆宏程序的编制
不在轴线上的椭圆宏程序编制也没有什么特殊的,只是改下偏置的数值罢了。
图中椭圆长半轴30,短半轴20,椭圆中心位置如图所示,不在轴线上,因此在计算编程所用的坐标值时,X方向要再加上40,Z方向要减去30+10=30
相应程序如下:
O2345
N5G0X[#6+40]
G1Z-10F0.1
#4=2*#26+40计算出的为半径值,需转化为直径值才能与直径编程对应。
#51-30-10
G1X82直线插补切到工件外圆之外
由浅入深宏程序9-车床旋转椭圆宏程序的编制
要对斜椭圆进行编程,首先要知道单个坐标点旋转所用的公式。
如下图所示,单个点逆时针旋转一定角度,公式推导如下:
s=r(a+b)=r(a)(b)–r(a)(b)
(1.1)
t=r(a+b)=r(a)(b)+r(a)(b)
(1.2)
其中x=r(a)
y=r(a)
代入(1.1),(1.2),
s=x(b)–y(b)
(1.3)
t=x(b)+y(b)
(1.4)
根据下图,原来的点(#1,#2),旋转后的点(#4,#5),则公式:
#41*[30]-#2*[30]
#51*[30]+#2*[30]
下图中椭圆旋转了30度,即#1=30旋转前后的点坐标的坐标原点都是椭圆中心。
程序如下:
O1234
#6=16工件毛坯假设为90,#6为每层切削时椭圆弧向的偏移量。
N5G0X[#6+30+40]斜椭圆与端面的交点直径为70
N10#1=30*[#3]对应角度#3的椭圆上的一个点的坐标,此为未旋转的椭圆的点
#41*[30]-#2*[30]旋转30度之后对应的坐标值
#51*[30]+
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数控车床 由浅入深 程序 实例