首页/文章/ 详情

RationalDMIS一点法构建坐标系

1年前浏览190

提示:
    这个功能利用一个单一的测点或当前测头位置创建参考系。参考系的轴会平行于选择的参考系此功能一般用于程序自动建立参考系之前快速建立预参考系。

(1)可以取探针的球心作为坐标原点(按操纵盒上F2按键)或设置手动采点最少点数为0

将机器移动到工件的隅角点(如下图)位置处。

(2)也可以手动触测一个点作为坐标原点

DMISMN/'Created by [深圳力合精密装备科技有限公司-090118] on 星期五, 七月 13, 2018', 4.0

UNITS/MM, ANGDEC, MMPS

WKPLAN/XYPLAN

PRCOMP/ON

TECOMP/ON

FLY/1.000000

MODE/PROG, MAN

SNSET/APPRCH, 10.000000

SNSET/RETRCT, 10.000000

SNSET/DEPTH, 0.000000

SNSET/SEARCH, 10.000000

SNSET/CLRSRF, 30.000000

RECALL/D(MCS)

SNSLCT/S(ROOTSN1)

GEOALG/BF, LSTSQR

GEOALG/ANGLB, DEFALT

GEOALG/CIRCLE, LSTSQR

GEOALG/ARC, LSTSQR

GEOALG/PLANE, LSTSQR

$$

$$

MODE/MAN

$$

TEXT/OPER, '手动在三面相交处测点(隅角点)!'

KNPTN1 = PROMPT/PICTURE, 'C:\山涧果子\4.jpg'

$$

F(PT1)=FEAT/POINT,CART,104.468298,225.702563,-13.094656,0.000000,0.000000,1.000000

MEAS/POINT, F(PT1), 1

  PTMEAS/CART, 104.468298,225.702563,-13.094656,0.000000,0.000000,1.000000

ENDMES

D(CRD1) = TRANS/XORIG, FA(PT1), YORIG, FA(PT1), ZORIG, FA(PT1)

$$ Set.CAD2PCS.CADM_1

D(CRD2) = TRANS/XORIG, 0, YORIG, -14.9792, ZORIG, -35

$$ Set.CAD2PCS.CADM_1

$$

MODE/PROG,MAN

GOTO/0.013562, 14.973826, 79.465856

F(PLN1)=FEAT/PLANE,CART,46.415502,48.845361,34.974146,0.000654,0.000062,1.000000

$$ Measurement points are created through actual points

MEAS/PLANE, F(PLN1), 4

  PTMEAS/CART,  5.163376, 20.832956, 35.002863, 0.000654, 0.000062, 1.000000

  PTMEAS/CART,  5.176993, 76.339746, 34.999407, 0.000654, 0.000062, 1.000000

  PTMEAS/CART, 94.120625, 80.444967, 34.940985, 0.000654, 0.000062, 1.000000

  PTMEAS/CART, 81.201012, 17.763776, 34.953327, 0.000654, 0.000062, 1.000000

ENDMES

$$ MACRO: EASI_CLEARPLN_GOTO

$$ FUNCTION: CLEARANCE SURFACE IMPLEMENTATION

$$      Move machine CLEAR SURFACE DIST above the current clear surface 

$$plane and then move machine parallel to the clear surface plane 

$$ ALL Macro parameters are in PCS and Current UNITS

$$ Last update: 3-1-04 Add mode checking. only works in PROG MODE

$$ Last update: 8-24-04 Clear position is based on the surface of

$$

$$ This sample DMIS Macro is provided by External-Array Software, Inc.

$$ It should be modified for your own use. There is no guarantee for

$$ the quality of this Macro. November, 2003


M(EASI_CLEARPLN_GOTO) = MACRO/ISNOM, TARX, TARY, TARZ

DECL/LOCAL, REAL, CCX, CCY, CCZ, CCI, CCJ, CCK

DECL/LOCAL, REAL, CURX, CURY, CURZ, TD, CLRDIST, SDIAM

DECL/LOCAL, CHAR, 255, CLRLABEL, FLABEL, MMODE, SNAME


MMODE = VALUE/MODE

CLRLABEL = VALUE/SNSET, CLRSRF

IF/ ( (LEN(CLRLABEL) .GT. 0) .AND. (MMODE .EQ. 'PROG,MAN') )

CLRDIST = VALUE/SNSET, CLRSRF, DIST

FLABEL = ASSIGN/'FA'

IF/ ISNOM .EQ. 0

FLABEL = ASSIGN/'F'

ENDIF

CCX = OBTAIN/FLABEL(@CLRLABEL), 3

CCY = OBTAIN/FLABEL(@CLRLABEL), 4

CCZ = OBTAIN/FLABEL(@CLRLABEL), 5

CCI = OBTAIN/FLABEL(@CLRLABEL), 6

CCJ = OBTAIN/FLABEL(@CLRLABEL), 7

CCK = OBTAIN/FLABEL(@CLRLABEL), 8

SNAME = VALUE/SNSLCT

SDIAM = OBTAIN/SS(SNAME), 8

CCX = ASSIGN/CCX + CCI * SDIAM/2

CCY = ASSIGN/CCY + CCJ * SDIAM/2

CCZ = ASSIGN/CCZ + CCK * SDIAM/2


CURX = VALUE/GOTOM, XAXIS

CURY = VALUE/GOTOM, YAXIS

CURZ = VALUE/GOTOM, ZAXIS

TD = ASSIGN/(CURX - CCX) * CCI + (CURY - CCY) * CCJ + (CURZ - CCZ) * CCK

IF/ TD .LT. CLRDIST

TD = ASSIGN/(CLRDIST - TD)

GOTO/CURX+CCI*TD, CURY+CCJ*TD, CURZ+CCK*TD

ENDIF

TD = ASSIGN/(TARX - CCX) * CCI + (TARY - CCY) * CCJ + (TARZ - CCZ) * CCK

IF/ TD .LT. CLRDIST

TD = ASSIGN/(CLRDIST - TD)

GOTO/TARX+CCI*TD, TARY+CCJ*TD, TARZ+CCK*TD

ENDIF

ENDIF

ENDMAC

SNSET/APPRCH, 10.0000

SNSET/RETRCT, 10.0000

SNSET/DEPTH, 0.0000

SNSET/SEARCH, 10.0000

SNSET/CLRSRF, FA(PLN1), 30.0000

F(LN1)=FEAT/LINE,BND,CART,6.171875,-1.177584,14.662777,45.159265,-0.879174,14.660907,0.007654,-0.999971,0.000000

$$ Measurement points are created through actual points

CALL/M(EASI_CLEARPLN_GOTO), 1, 6.278971, -15.169747, 14.662776

MEAS/LINE, F(LN1), 2

  PTMEAS/CART,  6.171875, -1.177584, 14.662776, 0.007654, -0.999971, 0.000000

  PTMEAS/CART, 45.159265, -0.879174, 14.660906, 0.007654, -0.999971, 0.000000

ENDMES

F(LN_PROJ1)=FEAT/LINE,BND,CART,6.185177,-1.176320,35.003563,45.172552,-0.877912,34.978047,0.000654,0.000062,1.000000

CONST/LINE,F(LN_PROJ1),PROJLI,FA(LN1),FA(PLN1)

F(LN2)=FEAT/LINE,BND,CART,-1.697516,20.338457,31.586667,-2.097006,72.605347,31.583397,-0.999971,-0.007643,-0.000000

$$ Measurement points are created through actual points

CALL/M(EASI_CLEARPLN_GOTO), 1, -15.689680, 20.231511, 31.586666

MEAS/LINE, F(LN2), 2

  PTMEAS/CART, -1.697516, 20.338457, 31.586666, -0.999971, -0.007643, -0.000000

  PTMEAS/CART, -2.097006, 72.605347, 31.583396, -0.999971, -0.007643, -0.000000

ENDMES

F(LN_PROJ2)=FEAT/LINE,BND,CART,-1.695279,20.338670,35.007380,-2.094769,72.605560,35.004394,0.000654,0.000062,1.000000

CONST/LINE,F(LN_PROJ2),PROJLI,FA(LN2),FA(PLN1)

F(PT_INTER1)=FEAT/POINT,CART,-1.530383,-1.235375,35.008612,0.000654,0.000062,1.000000

CONST/POINT,F(PT_INTER1),INTOF,FA(LN_PROJ1),FA(LN_PROJ2)

D(CRD3) = DATSET/FA(PLN1), ZDIR, ZORIG, FA(LN_PROJ1), XDIR, FA(PT_INTER1), XORIG

D(CRD3) = TRANS/ZORIG, -35, YORIG, FA(PT_INTER1), XORIG, -0

$$ Set.CAD2PCS.CADM_1

GOTO/-12.055480, 75.180401, 125.156688

MODE/PROG,MAN

SNSET/APPRCH, 2

SNSET/RETRCT, 2

SNSET/DEPTH, 0.0000

SNSET/SEARCH, 10.0000

SNSET/CLRSRF, FA(PLN1), 30.0000

F(CIR1)=FEAT/CIRCLE,INNER,CART,8.000000,55.000000,32.000000,-0.000000,0.000000,1.000000, 10.000000

$$ Measurement points are created through nominal points

CALL/M(EASI_CLEARPLN_GOTO), 1, 9.003714, 55.000000, 66.996286

MEAS/CIRCLE, F(CIR1), 4

  GOTO/CART,    9.003714, 55.000000, 66.996286

  GOTO/CART,    9.003714, 55.000000, 62.000000

  PTMEAS/CART, 13.000000, 55.000000, 32.000000, -1.000000,  0.000000,  0.000000

  PTMEAS/CART,  8.000000, 50.000000, 32.000000, -0.000000,  1.000000,  0.000000

  PTMEAS/CART,  3.000000, 55.000000, 32.000000,  1.000000, -0.000000, -0.000000

  PTMEAS/CART,  8.000000, 60.000000, 32.000000,  0.000000, -1.000000, -0.000000

  GOTO/CART,    8.000000, 56.003714, 62.000000

ENDMES

F(CIR2)=FEAT/CIRCLE,INNER,CART,24.000000,82.712813,32.000000,-0.000000,0.000000,1.000000, 10.000000

$$ Measurement points are created through nominal points

CALL/M(EASI_CLEARPLN_GOTO), 1, 8.012321, 55.997522, 66.996286

MEAS/CIRCLE, F(CIR2), 4

  GOTO/CART,    8.012321, 55.997522, 66.996286

  GOTO/CART,   25.003714, 82.712813, 66.996286

  GOTO/CART,   25.003714, 82.712813, 62.000000

  PTMEAS/CART, 29.000000, 82.712813, 32.000000, -1.000000,  0.000000,  0.000000

  PTMEAS/CART, 24.000000, 77.712813, 32.000000, -0.000000,  1.000000,  0.000000

  PTMEAS/CART, 19.000000, 82.712813, 32.000000,  1.000000, -0.000000, -0.000000

  PTMEAS/CART, 24.000000, 87.712813, 32.000000,  0.000000, -1.000000, -0.000000

  GOTO/CART,   24.000000, 83.716527, 62.000000

ENDMES

F(CIR3)=FEAT/CIRCLE,INNER,CART,56.000000,82.712813,32.000000,-0.000000,0.000000,1.000000, 10.000000

$$ Measurement points are created through nominal points

CALL/M(EASI_CLEARPLN_GOTO), 1, 24.012836, 83.712339, 66.996286

MEAS/CIRCLE, F(CIR3), 4

  GOTO/CART,   24.012836, 83.712339, 66.996286

  GOTO/CART,   57.003714, 82.712813, 66.996286

  GOTO/CART,   57.003714, 82.712813, 62.000000

  PTMEAS/CART, 61.000000, 82.712813, 32.000000, -1.000000,  0.000000,  0.000000

  PTMEAS/CART, 56.000000, 77.712813, 32.000000, -0.000000,  1.000000,  0.000000

  PTMEAS/CART, 51.000000, 82.712813, 32.000000,  1.000000, -0.000000, -0.000000

  PTMEAS/CART, 56.000000, 87.712813, 32.000000,  0.000000, -1.000000, -0.000000

  GOTO/CART,   56.000000, 83.716527, 62.000000

ENDMES

F(CIR4)=FEAT/CIRCLE,INNER,CART,72.000000,55.000000,32.000000,-0.000000,0.000000,1.000000, 10.000000

$$ Measurement points are created through nominal points

CALL/M(EASI_CLEARPLN_GOTO), 1, 56.012334, 83.710560, 66.996286

MEAS/CIRCLE, F(CIR4), 4

  GOTO/CART,   56.012334, 83.710560, 66.996286

  GOTO/CART,   73.003714, 55.000000, 66.996286

  GOTO/CART,   73.003714, 55.000000, 62.000000

  PTMEAS/CART, 77.000000, 55.000000, 32.000000, -1.000000,  0.000000,  0.000000

  PTMEAS/CART, 72.000000, 50.000000, 32.000000, -0.000000,  1.000000,  0.000000

  PTMEAS/CART, 67.000000, 55.000000, 32.000000,  1.000000, -0.000000, -0.000000

  PTMEAS/CART, 72.000000, 60.000000, 32.000000,  0.000000, -1.000000, -0.000000

  GOTO/CART,   72.000000, 56.003714, 62.000000

ENDMES

F(CIR5)=FEAT/CIRCLE,INNER,CART,56.000000,27.287187,32.000000,-0.000000,0.000000,1.000000, 10.000000

$$ Measurement points are created through nominal points

CALL/M(EASI_CLEARPLN_GOTO), 1, 72.012087, 55.997787, 66.996286

MEAS/CIRCLE, F(CIR5), 4

  GOTO/CART,   72.012087, 55.997787, 66.996286

  GOTO/CART,   57.003714, 27.287187, 66.996286

  GOTO/CART,   57.003714, 27.287187, 62.000000

  PTMEAS/CART, 61.000000, 27.287187, 32.000000, -1.000000,  0.000000,  0.000000

  PTMEAS/CART, 56.000000, 22.287187, 32.000000, -0.000000,  1.000000,  0.000000

  PTMEAS/CART, 51.000000, 27.287187, 32.000000,  1.000000, -0.000000, -0.000000

  PTMEAS/CART, 56.000000, 32.287187, 32.000000,  0.000000, -1.000000, -0.000000

  GOTO/CART,   56.000000, 28.290901, 62.000000

ENDMES

F(CIR6)=FEAT/CIRCLE,INNER,CART,24.000000,27.287187,32.000000,-0.000000,0.000000,1.000000, 10.000000

$$ Measurement points are created through nominal points

CALL/M(EASI_CLEARPLN_GOTO), 1, 56.011987, 28.284787, 66.996286

MEAS/CIRCLE, F(CIR6), 4

  GOTO/CART,   56.011987, 28.284787, 66.996286

  GOTO/CART,   25.003714, 27.287187, 66.996286

  GOTO/CART,   25.003714, 27.287187, 62.000000

  PTMEAS/CART, 29.000000, 27.287187, 32.000000, -1.000000,  0.000000,  0.000000

  PTMEAS/CART, 24.000000, 22.287187, 32.000000, -0.000000,  1.000000,  0.000000

  PTMEAS/CART, 19.000000, 27.287187, 32.000000,  1.000000, -0.000000, -0.000000

  PTMEAS/CART, 24.000000, 32.287187, 32.000000,  0.000000, -1.000000, -0.000000

  GOTO/CART,   24.000000, 28.290901, 62.000000

ENDMES

F(φ45)=FEAT/CIRCLE,INNER,CART,40.000000,55.000000,32.000000,-0.000000,0.000000,1.000000, 45.000000

$$ Measurement points are created through nominal points

CALL/M(EASI_CLEARPLN_GOTO), 1, 24.012306, 28.287628, 66.996286

MEAS/CIRCLE, F(Φ45), 4

  GOTO/CART,   24.012306, 28.287628, 66.996286

  GOTO/CART,   58.503714, 55.000000, 66.996286

  GOTO/CART,   58.503714, 55.000000, 62.000000

  PTMEAS/CART, 62.500000, 55.000000, 32.000000, -1.000000,  0.000000,  0.000000

  GOTO/CART,   57.095202, 47.918935, 32.000000

  GOTO/CART,   53.084101, 41.915899, 32.000000

  GOTO/CART,   47.081065, 37.904798, 32.000000

  PTMEAS/CART, 40.000000, 32.500000, 32.000000, -0.000000,  1.000000,  0.000000

  GOTO/CART,   32.918935, 37.904798, 32.000000

  GOTO/CART,   26.915899, 41.915899, 32.000000

  GOTO/CART,   22.904798, 47.918935, 32.000000

  PTMEAS/CART, 17.500000, 55.000000, 32.000000,  1.000000, -0.000000, -0.000000

  GOTO/CART,   22.904798, 62.081065, 32.000000

  GOTO/CART,   26.915899, 68.084101, 32.000000

  GOTO/CART,   32.918935, 72.095202, 32.000000

  PTMEAS/CART, 40.000000, 77.500000, 32.000000,  0.000000, -1.000000, -0.000000

  GOTO/CART,   40.000000, 73.503714, 62.000000

ENDMES

F(Φ30)=FEAT/CIRCLE,OUTER,CART,40.000000,55.000000,27.000000,-0.000000,0.000000,1.000000, 30.000000

$$ Measurement points are created through nominal points

CALL/M(EASI_CLEARPLN_GOTO), 1, 40.012243, 73.499410, 66.996286

MEAS/CIRCLE, F(Φ30), 4

  GOTO/CART,   40.012243, 73.499410, 66.996286

  GOTO/CART,   58.996286, 55.000000, 66.996286

  GOTO/CART,   58.996286, 55.000000, 57.000000

  PTMEAS/CART, 55.000000, 55.000000, 27.000000,  1.000000, -0.000000, -0.000000

  GOTO/CART,   57.550280, 47.730436, 27.000000

  GOTO/CART,   53.432403, 41.567597, 27.000000

  GOTO/CART,   47.269564, 37.449720, 27.000000

  PTMEAS/CART, 40.000000, 40.000000, 27.000000,  0.000000, -1.000000, -0.000000

  GOTO/CART,   32.730436, 37.449720, 27.000000

  GOTO/CART,   26.567597, 41.567597, 27.000000

  GOTO/CART,   22.449720, 47.730436, 27.000000

  PTMEAS/CART, 25.000000, 55.000000, 27.000000, -1.000000,  0.000000,  0.000000

  GOTO/CART,   22.449720, 62.269564, 27.000000

  GOTO/CART,   26.567597, 68.432403, 27.000000

  GOTO/CART,   32.730436, 72.550280, 27.000000

  PTMEAS/CART, 40.000000, 70.000000, 27.000000, -0.000000,  1.000000,  0.000000

  GOTO/CART,   40.000000, 73.996286, 57.000000

ENDMES

F(Φ20)=FEAT/CIRCLE,INNER,CART,40.000000,55.000000,27.000000,-0.000000,0.000000,1.000000, 20.000000

$$ Measurement points are created through nominal points

CALL/M(EASI_CLEARPLN_GOTO), 1, 40.015409, 73.990564, 66.996286

MEAS/CIRCLE, F(Φ20), 4

  GOTO/CART,   40.015409, 73.990564, 66.996286

  GOTO/CART,   46.003714, 55.000000, 66.996286

  GOTO/CART,   46.003714, 55.000000, 57.000000

  PTMEAS/CART, 50.000000, 55.000000, 27.000000, -1.000000,  0.000000,  0.000000

  GOTO/CART,   45.546708, 52.702478, 27.000000

  GOTO/CART,   44.245267, 50.754733, 27.000000

  GOTO/CART,   42.297522, 49.453292, 27.000000

  PTMEAS/CART, 40.000000, 45.000000, 27.000000, -0.000000,  1.000000,  0.000000

  GOTO/CART,   37.702478, 49.453292, 27.000000

  GOTO/CART,   35.754733, 50.754733, 27.000000

  GOTO/CART,   34.453292, 52.702478, 27.000000

  PTMEAS/CART, 30.000000, 55.000000, 27.000000,  1.000000, -0.000000, -0.000000

  GOTO/CART,   34.453292, 57.297522, 27.000000

  GOTO/CART,   35.754733, 59.245267, 27.000000

  GOTO/CART,   37.702478, 60.546708, 27.000000

  PTMEAS/CART, 40.000000, 65.000000, 27.000000,  0.000000, -1.000000, -0.000000

  GOTO/CART,   40.000000, 61.003714, 57.000000

ENDMES

T(TCOR1)=TOL/CORTOL,XAXIS,-0.050000,0.050000

T(TCOR2)=TOL/CORTOL,YAXIS,-0.050000,0.050000

OUTPUT/FA(CIR1),TA(TCOR1),TA(TCOR2)

OUTPUT/FA(CIR2),TA(TCOR1),TA(TCOR2)

OUTPUT/FA(CIR3),TA(TCOR1),TA(TCOR2)

OUTPUT/FA(CIR4),TA(TCOR1),TA(TCOR2)

OUTPUT/FA(CIR5),TA(TCOR1),TA(TCOR2)

OUTPUT/FA(CIR6),TA(TCOR1),TA(TCOR2)

OUTPUT/FA(Φ45),TA(TCOR1),TA(TCOR2)

OUTPUT/FA(Φ30),TA(TCOR1),TA(TCOR2)

OUTPUT/FA(Φ20),TA(TCOR1),TA(TCOR2)

来源:RationalDMIS测量技术
科普
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2023-07-01
最近编辑:1年前
山涧果子
大专 签名征集中
获赞 202粉丝 44文章 1203课程 0
点赞
收藏
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈