请教一个宏程序的问题
本帖最后由 skyhx 于 2015-5-24 09:54 编辑G0 G90 G54 X20 Y0;MS S1200;Z3;M8;#1=0;IF [#1 GE -17.5 ] GOTO 1;#1=#1-0.25;G01 #1 F20;G03 I-20 F1000;N1 G0 G90 Z100;M30;
如上,编辑了一个宏程序,用的床子是发那科的系统,但是运行的时候一直提示宏程序表达式非法是哪里写错了吗?
下面这样写的才对是吗?G0 G90 G54 X20 Y0;
MS S1200;
Z3;
M8;
#1=0;
N10 #1=#1-0.25;
G01 Z#1 F20;
G03 I-20 F1000;
IF [#1 GT -17.5 ] GOTO 10;
G0 G90 Z100;
M30;
或者
G0 G90 G54 X20 Y0;
MS S1200;
Z3;
M8;
#1=0;
WHILE [#1 GT -17.5] DO 10;
#1=#1-0.25;
G01 Z#1 F20;
G03 I-20 F1000;
EBD 10;
G0 G90 Z100;
M30;
、
楼主这程序写的是惨不忍睹啊。
虽然明白你的意思, 想分层铣个内孔。 但是程序写的不对, 无法执行的。 你的那个错误应该是出现在"G01 #1 F20."你应该在#1前加轴名Z , 为 Z#1.。 但是这仍然无法运行,因为你的判断语句有问题,执行的时候直接跳到程序尾部了。
正确的写法是:
#1=0
N2 IF [#1 LT -17.5] GOTO1
#1=#1-0.25
G1 z#1 F20
G3 I-20. F1000
GOTO2
N1 G90 G0 z100
m30 song1539 发表于 2015-5-24 10:00 static/image/common/back.gif
楼主这程序写的是惨不忍睹啊。
虽然明白你的意思, 想分层铣个内孔。 但是程序写的不对, 无法执行的。 ...
呵呵 是的 开始那个程序是忘记加Z 了
看了你的程序又知道了另一种方法非常感谢
那麻烦你看看我上面写的 用WHILE的方式对不对? skyhx 发表于 2015-5-24 10:09 static/image/common/back.gif
呵呵 是的 开始那个程序是忘记加Z 了
看了你的程序又知道了另一种方法非常感谢
这个用法是对的没有问题 WHILE语句有问题吧?
应该是end1 或2 或3 song1539 发表于 2015-5-24 15:51 static/image/common/back.gif
这个用法是对的没有问题
我想学习一点红程序知识,有什么资料推荐给我
一般的nc程式我都能轻松看懂
唯独宏程序不知道怎么入门 √隨夢╰洏飛 发表于 2015-5-24 20:22 static/image/common/back.gif
WHILE语句有问题吧?
应该是end1 或2 或3
今天试了一下还是报错 skyhx 发表于 2015-5-25 20:01 static/image/common/back.gif
今天试了一下还是报错
宏比较锻炼人,考验人的思维,我也是会一些简单的指令。你自己慢慢琢磨吧。 skyhx 发表于 2015-5-25 20:01 static/image/common/back.gif
今天试了一下还是报错
宏比较锻炼人,考验人的思维,我也是会一些简单的指令。你自己慢慢琢磨吧。 zy123456 发表于 2015-5-24 21:10 static/image/common/back.gif
我想学习一点红程序知识,有什么资料推荐给我
一般的nc程式我都能轻松看懂
唯独宏程序不知道怎么入门
上次忘记说了, WHILE 用法好像只支持到DO3
另外,资料的话没什么合适的,我当时学的时候就是看的FANUC说明书中的宏部分。
一开始看不懂,看了大约五六十遍后就能看懂了,后来再实验摸索一下,就可以自己写了。
嗯 , 那是十年前的事了。。。。
页:
[1]
2