| 作者 | 主题 |
|---|---|
|
bbear 游侠 经验值:323 发帖数:177 精华帖:6 |
楼主
主题:激光干涉仪测量(轴)循环通用程序
激光干涉仪测量(轴)循环通用程序:
DEF AXIS NAME = (B) ;轴名(X,Y,Z,W,V,B...) DEF INT NumPoints = 19 ;测量系统的最大补偿点数 DEF INT HoltTime = 8 ;每步停止时间 DEF REAL OverTravel =5 ;越程长度 DEF REAL Step = 20 ;步长 (度,毫米) DEF INT CycleTimes = 3 ;最大循环次数 DEF INT CycleTime = 0 ;循环次数计数 DEF INT NumPoint = 0 ;测量点计数 ;---------------------------------- G54 ;M11H6 ;第6轴放松 BEGIN:NumPoint=0 G00 G90 ;绝对值 CycleTime=CycleTime+1 IF CycleTime>CycleTimes GOTOF END ;如果计数值大于最大循环次数则结束 G0 G54 AX[NAME]=-OverTravel ;在G54工件坐标系统中负向走一个越程长度 AX[NAME]=0 ;回到G54工件坐标系统中的零点 STOPRE NumPoint=NumPoint+1 ;测量点计数加1 G04 F=HoltTime ;每步长到以后停止时间 G91 ;增量值 PLUS:G00 AX[NAME]=Step ;快速移动一个步长 STOPRE NumPoint=NumPoint+1 ;测量点计数加1 G04 F=HoltTime ;每步长到以后停止时间 IF NumPoint<>NumPoints GOTOB PLUS ;如果测量点计数值不等于测量系统的最大补偿点数,则继续 G00 AX[NAME]=OverTravel ;在G54工件坐标系统中正向走一个越程长度 AX[NAME]=-OverTravel ;在G54工件坐标系统中负向走一个越程长度 G04 F=HoltTime ;每步长到以后停止时间 MINUS:IF NumPoint==1 GOTOB BEGIN ;如果测量点计数=1则一个循环到达,进入下一个循环 G00 AX[NAME]=-Step ;如果测量点计数不等于1,则继续负向走直到为NumPoint=1 STOPRE NumPoint=NumPoint-1 ;测量点计数加1 G04 F=HoltTime ;每步长到以后停止时间 GOTOB MINUS ;返回到标记处 END: M30 |