回复:for...endfor语句是什么逻辑含义?

haha

版主

  • 帖子

    1943
  • 精华

    36
  • 被关注

    71

论坛等级:侠圣

注册时间:2003-06-06

普通 普通 如何晋级?

发布于 2006-10-16 17:07:05

0楼

下面是简单的注释:
N5 PROC DISABLE_SPI(INT _SP1, INT _SP2, INT _SP3)
上面定义了带参数的子程序DISABLE_SPI,其中有3个整型参数。
N10 Def INT _idx
上面定义了临时变量_idx(临时变量只在此子程序中有效!)
N15 DEF INT _SPNR[4]
上面定义了一维数组_SPNR[]
N20 For _idx = 1 to 6 循环
stopre
N30 $MA_REFP_CAM_IS_ACTIVE[SPI(_IDX)]=1
上面设置MD34000轴减速开关有效
N35 $MA_CTRLOUT_TYPE[SPI(_IDX)]=1
上面设置MD30130控制板有效
N40 $MA_ENC_TYPE[0,SPI(_IDX)]=1
上面设置MD30240编码器类型
N45 $MA_SIMU_AX_VDI_OUTPUT[SPI(_IDX)]=0
上面设置MD30350
N50 $MA_REFP_CAM_IS_ACTIVE[SPI(_IDX)]=1
N55 $MA_GEAR_STEP_CHANGE_ENABLE[SPI(_IDX)]=1
上面设置MD35010主轴换档有效
N60 $MA_ENC_REFP_MODE[0,SPI(_IDX)]=7
上面设置MD34200回参考点方式
N65 $MN_DRIVE_IS_ACTIVE[_idx-1]=1
上面设置MD13000
ENDFOR 循环
N70 _SPNR[1]=_SP1 _SPNR[2]=_SP2 _SPNR[3]=_SP3
N75 For _idx = 1 to 3
N80 IF _SPNR[_idx]==0 GOTOF _END
上面,如果_SP1,_SP2或_SP3为0结束,表示该主轴正常,若为1,就
设置下面数据屏蔽掉该主轴
N85 $MA_REFP_CAM_IS_ACTIVE[SPI(_spnr[_idx])]=0
N90 $MA_CTRLOUT_TYPE[SPI(_spnr[_idx])]=0
N95 $MA_ENC_TYPE[SPI(_spnr[_idx])]=0
N100 $MA_SIMU_AX_VDI_OUTPUT[SPI(_spnr[_idx])]=1
N105 $MA_GEAR_STEP_CHANGE_ENABLE[SPI(_spnr[_IDX])]=0
N110 $MA_ENC_REFP_MODE[SPI(_spnr[_idx])]=1
N115 $MN_DRIVE_IS_ACTIVE[_SPNR[_idx]-1]=0

N120 _END:
N125 endfor
stopre
N130 m30
实际上基本每个机床数据都可以用加工程序修改,只不过有的参数访问级别高,有的参数要重新上电才有效。
$MN开头的是通用机床数据即10000开始的数据
$MC开头的是通道机床数据即20000开始的数据
$MA开头的是轴机床数据即30000开始的数据
--------------------------------------------------------

欢迎访问我的博客:
HaHa的西门子博客 HaHa的新浪博客

Fastec论坛
--------------------------------------------------------
人人为我,我为人人。 www.mysinumerik.com
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SINUMERIK

共有25500条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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