
、编程格式
对大部分初学者来说,数控手工编程的学习还是非常困难的。针对这种情况,下面是一套简单的手工编程思考模式并给出简单的编程格式。
1第一步:设定编程坐标系并标注
程序指令控制机床,要求机床按照预订的路线移动来达到加工的目的。所以,在见到零件图形的第一步,就是要将图形具体成各个点,刀具到达这些点便能加工出零件。为此,需设置一个工作坐标(也叫编程坐标),在图形上标出X、Y、Z坐标。
机床坐标系的选择有以下两点要注意:
(1)Z轴零点一般选择在工件的上表面。
(2)XY轴零件,若工件或毛坯为为对称件,可选择在对称中心(如图1所示);若为非对称工件,则选择在任意边角皆可,当然为了进刀方便,直角边最好。
图1
2第二步:确定加工关键点
关键点,也就是刀具必须移动到的点。对于简单图形图1来说,要铣削出图1的外形轮廓,刀具只需要在指令的控制下走出直线AB、BC、CD、EF、FA和圆弧DE即可,关键6个点就如图1所示的A、B、C、D、E、F。
这个步骤对大部分人来说非常简单,但是若出错,则没有正确编程的可能。
3第三步:确定各加工关键点的坐标
坐标是程序的基础,数控程序就是在指令中输入坐标来控制机床执行预订的动作。事实上,数控编程若坐标错误,则程序错。
4第四步:确定加工方向及顺序
加工方向决定了,加工顺序也已经决定。如图1所示,若选择AB方向加工,则顺序就是A-B-C-D-E-F-A,若选择AF方向加工,则顺序就是A-F-E-D-C-B-A。
选择加工方向及顺序与以下几个方面有直接关系。
(1)与所加工圆弧是顺时针还是逆时针有关。AB方向圆弧为逆时针,而AF方向则为顺时针。
(2)也与铣削方式选择顺铣还是逆铣有关。AB方向为逆铣,AF方向为顺铣。一般情况下,我们在精加工的时候选择顺铣,在粗加工时选择逆铣。
(3)与所选择刀具补偿方向有关。若从A点进刀,AB方向切入,则为右补偿,AF方向为左补偿。
(4)若加工方向及顺序不同,则程序不同。
5第五步:确定三个点
起刀点(M),切入点(N),切出点(S)。这三个点反映了编程所设定的切入和切出方式。一般加工中,刀具的切出或切入点应在沿零件轮廓的切线上,以保证工件轮廓光滑;退刀位置应选在零件不太重要的部位,并且使刀具沿零件的切线方向进刀、退刀,以避免产生刀痕。
如图2所示,选择AF方向,则三个点的布置如图所示。
图2
选择三个点的基本原则是:接近工件,但是未切入工件。考虑刀具的大小,需要足够的距离进行刀具补偿的建立,若距离太大,则影响加工效率。
一般情况下,可以以下值为参考。
(1)起刀点(M),在A点的基础上,XY轴皆往起刀方向移动3倍刀半径。以图2为准,用Ф20的立铣刀,则M点坐标可为(-800,-600)。
(2)切入点(
不同系统,调用子程序代码和格式有区别,
例如法兰克系统,调用5次子程序O1101,格式M98 P1101 L5,子程序以M99结束,主程序子程序放在法兰克系统相同路径下。
西门子828D系统为例,主程序后缀名mpf,子程序后缀名spf,以M17结束返回主程序,例如调用子程序AAAspf 3次,主程序相应程序段AAA P3,主程序放在系统零件程序文件夹下面,子程序AAA放在子程序文件夹下面。
大隈系统调用子程序,例如调用子程序O1203 5次,相应程序段CALL O1201Q5,子程序放在主程序内(一般放在末尾),以RTS结束返回主程序。
我没学过VB,但是C里的子函数都是你调用才运算的呀,函数的类型就是返回值的类型,如float count(int a){。。。;return z;}就定义了一个返回值为float型的函数
O10 程序名 (主程序)
G50 X170. Z100.; 工件坐标系设定
G99 M03 ; 每转进给 主轴正转
T0100 ; 调用第一把刀具
M98 P11 H01 L6 ; 调用11号程序 从
N20 M05; N01段开始执行,
W90;
M30; 调用6次
O11 程序名 (副程序)
N01 G00 X29Z90; 刀具快速定位
N02 G01 X17F01;车端面
N03 G00 X170Z100;退刀
N04 T0202 ; 换60°尖刀
N07 G00X2495 Z90;定位
N08 G01W-25F01; 车φ25外圆
N09 G01X23; 车30°角
N10 W-88 ; 车φ23外圆
N11 X2495;
N12 W-3;
N13 G00X170Z100T0200 退刀去刀补值
N14 T0303 ; 换切刀
N15 X26Z75;
N16 X19F01; 切断
N17 X170T0300; 退刀去刀补值
N18 W10; Z向退刀
N19 G50Z100 ; 重新建立坐标系
M99 N20 ; 调用结束返回主程序
主程序调用子程序编程指令是:右击——插入——OB,然后填上OB100,OB由系统调用,并非由用户调用。
一般会有输入参数并有返回值,提供对过程的封装和细节的隐藏。这些代码通常被集成为软件库。函数在面向过程的语言中已经出现。是结构和类的前身。本身就是对具有相关性语句的归类和对某过程的抽象。
转子指令和返回指令:
在子程序的调用与返回过程中,子程序的入口地址是指子程序第一条指令的地址。用于调用子程序、控制程序的执行从主程序转向子程序的指令称为专注指令(子程序调用指令、过程调用指令)。为了正确调用子程序,必须在转子指令中给出子程序的入口地址。
主程序中转子指令的下一条指令的地址称为断点,断点是子程序返回主程序的返回地址,从子程序返回主程序的指令称为返回指令。为了在执行返回指令时能够正确地返回主程序,转子指令应具有保护断点的功能。
执行转子指令时保护断点的方式有多种,常用的有:将断点保存到子程序第一条指令的前一个字单元;将断点保存到某一约定的寄存器中;将断点压入堆栈。
C语言中,子程序是通过函数来实现的,一个函数相当于一个有独立功能的子程序,子程序意在体现着main函数的作用。函数机制的实现通常需要经过设计、声明和调用来完成的。所有的函数在调用之前都必须声明,声明函数必须包括函数名,返回值两部分,参数列表是可缺省的。声明可以附加关键字,关于作用域的声明包括关键字extern和static,前者表明函数的定义不在这个文件中,但是它需要在这个文件中使用;后者声明的函数说明此函数只在此文件中使用,意即标记有static的函数允许在其他函数中存在同名函数。在函数声明之后就可以通过调用 *** 作符()来对函数进行调用 *** 作。函数的区分涉及到函数签名的概念,函数的签名一般包括它的返回值,函数名和参数列表,签名相同的函数被认为是相同的,这使得函数可以重载以实现函数的功能多样化。函数在被调用时,首先由系统根据签名确认被调用的函数,然后系统计算并为之分配足够的内存,调用函数将使用权交割给函数之后执行函数内部的语句,遇到return之后停止执行,然后返回值,释放内存。
在编程软件的指令树窗口选择程序块,点右键,插入子程序。双击子程序可以打开。就可以编程啦。(默认会有两个子程序,可以不用插入新的,也可以右键删除和重命名)调用时打开主程序,就像选择触点和线圈一样,选择指令树最下面“调用子程序”里的你需要的子程序。(在子程序里,调用其他子程序一样)就像调用功能块一样,前面要加触点
用M98来调用子程序,
格式:
M98PXXABCD
XX代表调用次数,十次一下的可以写成0X或X
ABCD代表要调用的程序
比如我们要调用子程序O1234五次,那么这个程序段应该这样写
M98P51234或M98P051234
以上就是关于加工中心铣r141调子程序怎么编程全部的内容,包括:加工中心铣r141调子程序怎么编程、数控铣床如何调用子程序、C语言的子程序该怎么调用等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)