如何学习CYCLE

已锁定

迅影

  • 帖子

    284
  • 精华

    4
  • 被关注

    34

论坛等级:侠圣

注册时间:2012-12-19

钻石 钻石 如何晋级?

如何学习CYCLE

1884

6

2022-08-29 08:19:25

SINUMERIK提供了多种循环,包括孔加工循环、铣削循环、车削循环、测量循环等。学习下这些标准循环对于理解SINUMERIK的NC指令非常有好处,而且可以借鉴标准循环的编写方式来编写自己的用户循环。

标准循环中考虑了很多因素,就像前几天发的小文“解读CYCLE81”,本来钻一个孔就一句G01就够了,为什么CYLCE81写了那么多句,原因是:

 考虑到各种情况,所以设置了回退平面、安全平面等参数

避免编程时可能产生的错误,从而也避免由此带来的类似“撞机”这样的风险。而且不仅考虑了用循环支持向导编程可能产生的错误,也考虑到直接手工编程可能产生的错误


那么我们怎么能真正理解CYCLE中每一句的含义呢?为什么这么编写?结果会是什么?通过解读CYCLE81,我觉得除了看编程手册中CYCLE81的每个参数的含义,而且可以用下面几个方法学习CYCLE81是如何编写的:

 遇到不熟悉的NC指令,可以查找手册,并在SINUTRAIN上测试

比如,不知道“_dec1”和“_dec2”是什么意思,在SINUTRAIN上编写个简单程序测试下,就了解了。

2. 理解报警的写法

比如SETAL(61019,"(_AMODE: dec1/DP)")

这个SETAL,不仅会显示错误信息“61019 %[[通道 %1: ] 程序段 %2:%]参数 %4 定义出错”,而且“(_AMODE: dec1/DP)” 会替代报警中的%4,这样如果报警信息就更具体,也就很容易掌握什么情况下产生报警了。对于这条信息来说,没有%4这个参数,只知道是参数错误,但如果给出了“(_AMODE: dec1/DP)” 参数错误,就非常清楚了,是钻孔深度参数有问题。


3. 制造错误,运行循环,查看结果

比如上面的报警,导致报警的判断是这句

IF((_AMODE1==2) AND ($P_SUBPAR[4]==0)) GOTOF _FEHL25

这句是如果钻孔深度采用绝对位置表示,但调用CYCLE81循环时并没有给第四个参数,那么就报警。CYCLE81的第四个参数是DP

循环向导编程时,我们用绝对深度-10mm,这里我们不可能在Z1(孔深度绝对位置)输入0mm,即孔底位置不可能和参考平面同样高度,如果输入0,画面中参数位置是红色的,表示错误

那你可能会问了,我如何模拟出产生报警的条件呢?

我们如果按上面正常的参数输入后,得到CYCLE81的语句如下:

N100 CYCLE81(100,0,2,-10,,1,0,1,12)

其中-10就是孔深,我们手动把它改为“”(空),即可模拟产生报警的条件了,如果要在程序编辑页面直接修改CYCLE,需要按组合件“Shift”+"Insert", 然后改为

N100 CYCLE81(100,0,2,,,1,0,1,12)

即选择了绝对值方式定义孔深,但是没有给孔深的数值,这时再执行程序,会出现:

这样,我们就对每个报警产生的条件都非常清楚了


4. 单步执行程序

之前的小文“解读CYCLE81”中提到了CYCLE81中第一句通过NC语句禁止了单步执行。如果我们就是想一步一步看CYCLE的执行过程呢?

直接的想法就是把禁止单段执行的NC语句删掉。但是当你尝试删除时,画面如下,系统显示该循环文件文本被写保护了,就是不让修改。所有标准循环都是不能修改的!

那还能不能单步执行循环呢?能的!

我们可以把CYCEL81.SPF从标准循环目录下,拷贝到制造商循环或用户循环目录下,比如我拷贝到了用户循环目录下。

然后,我们打开用户循环目录下的CYCLE81,修改:

这时候,我们激活单段,就可以一段一段地执行CYCLE81了,如下图所示

上面几个方法,可以帮助我们理解SINUMERIK的标准循环


如何学习CYCLE 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SINUMERIK

共有25500条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。