huangdongnb 发表于 2014-5-23 13:31:49

自学宏程序,碰到了点问题求解

小弟不才,做数控五六年 对宏程序还是一窍不通,遂买了本书看着,但是遇到了个问题不懂,恳请师傅们帮忙解答下,顺便想找个精通宏的师傅做我老师,有偿,学费再议!可回复跟帖留下联系方式 。以下图是小弟碰到的问题,划线打问号部分,是嘛意思?结合整体看,是在判别哪里的变量 有什么意义?


冷月梧桐 发表于 2014-5-23 15:38:13

数车上的宏程序没有多少搞头,晚上给你细看一下

网络公zx 发表于 2014-5-23 19:28:56

我用西门子的系统给你讲一下(别的系统看着太别扭了)
R1=0   (R1就等同于你的#)
R2=1
IF为判断语句    简单的讲就是当什么什么的时候
GOTO为跳转   就是说你想到哪去
程序里边的细节就不废话了   直接说重点
R1=R1+R2   这时候R1是个变量         0=0+1          R1变成1了
IF   R1>=100   GOTON10    当R1=什么什么的时候跳转到什么什么地方
给你举个具体编程的方式
R1=0                     
R2=1                     
G54                        
G17G90G94            
G0X0Y0Z200
M3S500
ABC:                        ABC就是个节点   就相当于你的N10
G0X0Y0                     X和Y都到0点
Z=R1                        Z到0点    因为R1等于0
G1X1000F500            走刀X到1000进给500
G0Z100                     Z抬刀到100
R1=R1-R2               0=0-1这时候等号前边的0就等于-1   因为R1在这里是个变量   下次走到这的时候就是-2了   以此类推
IF R1>=-100GOTOABC      当R1>=-100的时候跳转到ABC那个节点程序就从ABC那个节点在走一遍知道R1>=-100的时候 Z-100的时候才继续往下走不然每次走到这就跳到ABC那个节点
G90G0Z200
M30
谢了这么多希望你懂了    有什么不明白在问

网络公zx 发表于 2014-5-23 19:41:51

R1=0
R2=1
G54
G17G90G94
G0Z200
X0Y0
M3S500
ABC:                                                   ABC是个节点和你的N10是一个意思
G0X0Y0                                                
Z=R1                                                   Z走到0应为R1=0
G1X1000F200
G0Z100
R1=R1-R2                                           0=0-1这时候等号前边的0就是-1
IFR1>=-100GOTOABC                  当R1>=-100    跳转到ABC
G90G0Z200
M30

这个程序就是说每次Z轴都是上刀1mm一直重复的走从ABC节点到IF判断语句 直到Z走到-100(R1为-100)程序才结束
这里唯一比较难理解的就是R1这个变量
R1等于0的时候0=0-1这个时候等号前边的0就变成-1了也就是说R1=-1以此类推明白了吗-1    -2    -3    -4    -5    -6等等等等

乡村非主流 发表于 2014-5-23 20:58:29

书上的说明很清楚.#104只是个判断变量.为了程序能够贯通并不形成死循环.当你精车完后.如果不加#104的条件判断.就不会跳到N30段.而后面有个无条件跳转GOTO20.这样就形成了一个死循环..对于这种程序.机床会报警的一般

huangdongnb 发表于 2014-5-24 14:59:37

网络公zx 发表于 2014-5-23 19:41 static/image/common/back.gif
R1=0
R2=1
G54


嗯,谢谢哥们码这么多字啊,我还是要再琢磨琢磨,你讲的我懂了

但是我图片上发的,#104是0+1也就是1,下面一句是 如果#104大于1.5的时候 无条件跳转到N30也就是退刀结束,那#104一直是0+1啊,啥时候才会大于1.5?我觉着这样不就是一个死循环……还是不解



huangdongnb 发表于 2014-5-24 15:01:11

乡村非主流 发表于 2014-5-23 20:58 static/image/common/back.gif
书上的说明很清楚.#104只是个判断变量.为了程序能够贯通并不形成死循环.当你精车完后.如果不加#104的条件判 ...



但是我图片上发的,#104是0+1也就是1,下面一句是 如果#104大于1.5的时候 无条件跳转到N30也就是退刀结束,那#104一直是0+1啊,啥时候才会大于1.5?我觉着这样不就是一个死循环……还是不解

huangdongnb 发表于 2014-5-25 12:07:13

huangdongnb 发表于 2014-5-24 15:01 static/image/common/back.gif
但是我图片上发的,#104是0+1也就是1,下面一句是 如果#104大于1.5的时候 无条件跳转到N30也就是退刀 ...

哦明白了谢谢了啊老师,这样精车完就停了,谢谢懂了

门童 发表于 2014-5-27 19:20:43

huangdongnb 发表于 2014-5-25 12:07 static/image/common/back.gif
哦明白了谢谢了啊老师,这样精车完就停了,谢谢懂了

呵呵,来迟,都懂了,今天才能用电脑上网!

QQHAO 发表于 2015-10-5 20:20:39

本帖最后由 QQHAO 于 2015-10-5 20:22 编辑

看书没有任何作用的学习张老师的宏程序自学教程第一讲的视频教程地址http://www.tudou.com/programs/view/ObIdJdrGwEs/
张老师网站:http://www.cccam.cn/zixue/
页: [1] 2
查看完整版本: 自学宏程序,碰到了点问题求解