加工中心宏程序编程入门自学视频(加工中心宏程序代码编程)
加工中心如何用宏程序编程,直线来回循环?
R1=0.5
T="1"
G0X0Y0Z0
AA:G0X0
G1X10Z=-R1
X0
R1=R1+0.5
REPEAT AA P19
G0Z10
发那科系统的加工中心该怎样编写宏程序?能否举一个简单的例子!~需要改参数吗!越详细越好!~~先谢谢了!
1、例如加工一个长半轴30,短半轴20一个椭圆,椭圆不是圆弧,所以我们不能用圆弧的方式来加椭圆,这里我们用一小段一小段的直线来拼接这个椭圆。
2、椭圆的基本公式为x^2/a^2+y^2/b^2=1 (ab0)? 焦点在X上这是车床上用的方程。a乘以cosx=x?? b乘以sinx=y这是CNC加工中心用的角度公式。
#号在机床编程中也是一种编程语言
3、一般我们将它分为两类可变量不可变量,就是说有些#号代表的意思是会变化的,一般用字母来替代条件字符 EQ等于??NE不等于? GT?大于 GE?大于或等于??? LT小于? LE小于或等于??。
拿上面的例题来进行讲解!编写宏程序如下:
1、O0001?? 程序名
T01 M6 换一号刀具
G90 G54 G00 X0 Y0 M03S3000? 快速定位 主轴旋转
G43 Z100 H01 建立长度补偿
Z10 M08 打开冷却液
G00X70Y0
G01 Z-5 F200 下刀Z方向
#1=30长半轴
#2=20短半轴
#3=0起始角度
#4=360?终止角度
#5=1角度增量 数值越小精度越高
WHILE[#3LE#4]DO1
#6=#1*COS[#3]
#7=#2*sin[#3]
G01 X[#6]? Y[#7]
#3=#3+#5
END1
2、WHILE---DON?
------
---
ENDN
这是一个固定循环格式只要括号中条件满足,它就会无限的循环反之条件不满足循环会被自动结束。
3、建议在学习的时候,最好下载一个仿真软件这样有助你,快速的学会并使用,建议使用斯沃仿真。VERICUT是仿真当中最为强悍的,不适合新手,当然你如果有这方面的经验可以更好的学习VERICUT。
宏程序编程入门自学的基础是什么?
宏程序编程入门自学的基础是普通加工程序直接用数值指定G代码和移动距离。使用用户宏程序时,数值可以直接指定或用变量指定。例如,GO1和X100.0,当用变量时,变量值可用程序或用MDI面板上的操作改变。
计算机允许使用变量名,用户宏程序不行。变量用变量符号(#)和后面的变量号指定,例如:#1,表达式可以用于指定变量号。此时,表达式必须封闭在括号中。
宏程序编的特点
程数控宏程序编程,是用变量的方式进行数控编程的方法。数控宏程序分为A类和B类宏程序,其中A类宏程序比较老,编写起来也比较费时费力,B类宏程序类似于C语言的编程,编写起来也很方便。不论是A类还B类宏程序,它们运行的效果都是一样的。
一般说来,华中的数控机床用的是B类宏程序,广州数控机床用的是A类宏程序。
优点可以编写一些非圆曲线,如宏程序编写椭圆,双曲线,抛物线等。编写一些大批相似零件的时候,可以用宏程序编写,这样只需要改动几个数据就可以了,没有必要进行大量重复编程。
加工中心铣面宏程序编程
1.编宏程序时,循环控制变量一般采用单独的一个参数,这样方便以后调机不会出差错。
2.半径没有50是因为没有添加刀补,但是不是差一个刀具半径,在半球的每个深度上它的刀具补偿数值是不一样的(因为你是用的球刀),具体可通过2d看得出来。
3.z轴进刀每次0.5,进刀量太大,最好取0.1-0.15之间(当然越小越光滑)。
4.xz平面有一个圆弧====》你设定的下刀深度不够。
5.每次进刀量越小当然表面越光滑,数控车加工的表面质量比加工中心好是因为它的进刀量是取小数点后三位开始的(0.001mm),也就是数控车床的绝对坐标的最小精度(xxx.xxx),而且是g2连接的。
6.编这个程序最好用编程软件mastercam/ug,一分钟搞定,而且加工出来的面又光又亮。
法兰克加工中心宏程序编程怎么学,有没有详细教程?
方法和详细的操作步骤如下:
1、第一步,在MDI模式下,按SET键,在屏幕上输入1,然后打开参数开关,见下图,转到下面的步骤。
2、第二步,执行完上面的操作之后,按下相应屏幕底部的“密码”按钮,进入密码屏幕,输入“admin”,然后按确认键。屏幕左下角显示“密码”按钮,见下图,转到下面的步骤。
3、第三步,执行完上面的操作之后,按“程控”键,然后按屏幕底部的相应“
?PLCPAR”键进入K参数屏幕,见下图,转到下面的步骤。
4、第四步,执行完上面的操作之后,移动光标,将K10.7和K10.6分别更改为“
?1”,然后按“保存”键。请注意,当按向上和向下键时,光标将连续移动。可以通过左右键选择K10.7和K10.6,然后可以输入“
?1”,见下图,转到下面的步骤。
5、第五步,执行完上面的操作之后,按“
?MDI”键,然后按“程控”键,返回K参数屏幕,将K10.6和K10.7改回“
?0”,然后按“保存”键进行保存,机床停止调试,然后关闭参数开关以执行换刀操作,见下图。以上就是法兰克加工中心宏程序编程的教学。
谁能给我一份加工中心宏程序的视频教程
用 户 宏 程 序
能完成某一功能的一系列指令像子程序那样存入存储器,用一个总指令来它们,使用时只需给出这个总指令就能执行其功能。
l 所存入的这一系列指令——用户宏程序
l 调用宏程序的指令————宏指令
l 特点:使用变量
一. 变量的表示和使用
(一) 变量表示
#I(I=1,2,3,…)或#[<式子>=
例:#5,#109,#501,#[#1+#2-12]
(二) 变量的使用
1. 地址字后面指定变量号或公式 0
格式: <地址字>#I
<地址字>-#I
<地址字>[<式子>]
例:F#103,设#103=15 则为F15
Z-#110,设#110=250 则为Z-250
X[#24+#18*COS[#1]]
2. 变量号可用变量代替
例:#[#30],设#30=3 则为#3
3. 变量不能使用地址O,N,I
例:下述方法下允许
O#1;
I#2 6.00×100.0;
N#3 Z200.0;
4. 变量号所对应的变量,对每个地址来说,都有具体数值范围
例:#30=1100时,则M#30是不允许的
5. #0为空变量,没有定义变量值的变量也是空变量
6. 变量值定义:
程序定义时可省略小数点,例:#123=149
MDI键盘输一. 变量的种类
1. 局部变量#1~#33
一个在宏程序中局部使用的变量
例: A宏程序 B宏程序
… …
#10=20 X#10 不表示X20
… …
断电后清空,调用宏程序时代入变量值
2. 公共变量#100~#149,#500~#531
各用户宏程序内公用的变量
例:上例中#10改用#100时,B宏程序中的
X#100表示X20
#100~#149 断电后清空
#500~#531保持型变量(断电后不丢失)
3. 系统变量
固定用途的变量,其值取决于系统的状态
例:#2001值为1号刀补X轴补偿值
#5221值为X轴G54工件原点偏置值
入时必须输入小数点,小数点省略时单位为μm
一. 运算指令
运算式的右边可以是常数、变量、函数、式子
式中#j,#k也可为常量
式子右边为变量号、运算式
1. 定义
#I=#j
2. 算术运算
#I=#j+#k
#I=#j-#k
#I=#j*#k
#I=#j/#k
3. 逻辑运算
#I=#JOK#k
#I=#JXOK#k
#I=#JAND#k
4. 函数
#I=SIN[#j] 正弦
#I=COS[#j] 余弦
#I=TAN[#j] 正切
#I=ATAN[#j] 反正切
#I=SQRT[#j] 平方根
#I=ABS[#j] 绝对值
#I=ROUND[#j] 四舍五入化整
#I=FIX[#j] 下取整
#I=FUP[#j] 上取整
#I=BIN[#j] BCD→BIN(二进制)
#I=BCN[#j] BIN→BCD
1. 说明
1] 角度单位为度
例:90度30分为90.5度
2] ATAN函数后的两个边长要用“1”隔开
例:#1=ATAN[1]/[-1]时,#1为了35.0
3] ROUND用于语句中的地址,按各地址的最小设定单位进行四舍五入
例:设#1=1.2345,#2=2.3456,设定单位1μm
G91 X-#1;X-1.235
X-#2 F300;X-2.346
X[#1+#2];X3.580
未返回原处,应改为
X[ROUND[#1]+ROUND[#2]];
4] 取整后的绝对值比原值大为上取整,反之为下取整
例:设#1=1.2,#2=-1.2时
若#3=FUP[#1]时,则#3=2.0
若#3=FIX[#1]时,则#3=1.0
若#3=FUP[#2]时,则#3=-2.0
若#3=FIX[#2]时,则#3=-1.0
5] 指令函数时,可只写开头2个字母
例:ROUND→RO
FIX→FI
6] 优先级
函数→乘除(*,1,AND)→加减(+,-,OR,XOR)
例:#1=#2+#3*SIN[#4];
7] 括号为中括号,最多5重,园括号用于注释语句
例:#1=SIN[[[#2+#3]*#4+#5]*#6];(3重)
一. 转移与循环指令
1.无条件的转移
格式: GOTO 1;
GOTO #10;
2.条件转移
格式: IF[<条件式>= GOTO n
条件式:
#j EQ#k 表示=
#j NE#k 表示≠
#j GT#k 表示>
#j LT#k 表示<
#j GE#k 表示≥
#j LE#k 表示≤
例: IF[#1 GT 10] GOTO 100;
…
N100 G00 691 X10;
例:求1到10之和
O9500;
#1=0
#2=1
N1 IF [#2 GT10] GOTO 2
#1=#1+#2;
#2=#2+1;
GOTO 1
N2 M301.循环
格式:WHILE[<条件式>=DO m;(m=1,2,3)
…
…
…
ENDm
说明:1.条件满足时,执行DOm到ENDm,则从DOm的程序段
不满足时,执行DOm到ENDm的程序段
2.省略WHILE语句只有DOm…ENDm,则从DOm到ENDm之间形成死循环
3.嵌套
4.EQ NE时,空和“0”不同
其他条件下,空和“0”相同
例:求1到10之和
O0001;
#1=0;
#2=1;
WHILE [#2LE10] DO1;
#1=#1+#2;
#2=#2+#1;
END1;
M30;
钻一百个孔的程式:
O0010;
#100=0;
#101=0;
G49 G80 G40;
M6 T1;
G00 G90 G54 X#100 Y#101;
G43 H1 Z100. M13 S2000;
N1 G54 X#100 Y#101;
G98 G81 R3. Z-18.F350;
N2 #100+10.
IF [#100 GT 100 ] GOTO 4;
G54 X#100 Y#101;
GOTO 2
N4 #101+10. #100=0.
IF [ #101 GT 100 ] GOTO 3;
GOTO 1;
N3 M30;