首页/文章/ 详情

RationalDMIS 7.1 3-2-1法建立零件坐标系 (圆锥 平面 平面)

11天前浏览22

(1)机器坐标系


       坐标测量机有一个默认的坐标系,该坐标系与测量机的三轴平行,称为机床坐标系。在 RationalDMIS 7.1软件中,机床坐标系的名称是“MCS”。


(2)零件坐标系


  零件图纸上大部分名义尺寸和公差,通常是与零件的基准元素相关的坐标系。零件坐标系应该建立在实际零件的基准元素之上。



   建立零件坐标系的操作在于参照零件坐标的几何元素中坐标轴和坐标点的特性,来定向和定位当前坐标系的三个坐标轴。处于这个目的,零件坐标系的的建立也被叫做找正零件。


(3)原理解释:


    要在零件上找相互垂直的元素来建立坐标系是不可能的。但是坐标系系三个轴互相不垂直又不符合直角坐标系的原则。所以测量机软件建立零件坐标系要采用 3-2-1 的方法。


    为了在零件上建立三轴垂直的坐标系,测量机软件首先利用面元素确定第一轴,因为面元素的方向矢量始终是垂直于该平面的,当我们利用投影到该平面上的一条线来建立第二轴时,第一轴和第二轴就保证绝对是垂直的,至于第三轴就不用再建了,由软件自动生成垂直于前两轴的第三轴。这样测量机软件就建立了互相垂直的、符合直角坐标系原理的零件坐标系。


所谓3-2-1法基本原理是测取3点确定平面,取其法向矢量作为第一-轴向;测取2点确定直线,通过直线方向( 起始点指向终止点)作为第二轴向;最后测取一点,根据测量的面、线、点最终确定坐标系零点。在空间直角坐标系中,任意零件均有六个自由度,即分别绕X、Y、Z轴旋转和分别沿X、Y、Z轴平移。



那么在软件内部是如何进行操作的呢?


1. 软件内部已经准备好了各种建立零件坐标系的数据结构,它们的初始值是与“机器坐标系”一致的。当我们要利用 3-2-1(平面-直线-点找正)方法建立零件坐标系时,首先测量面元素(假如是 X、Y 平面),这时面的法向矢量(我们要作 Z 轴)与机器坐标系有两个空间夹角(零件肯定不会与机器坐标系完全一致),即与 X 轴有 a 角,与 Y 轴有 b 角。


2. 当我们指定该面元素建立零件坐标系第一轴后(建立 Z 轴),软件就会让 1 号坐标系的数据结构首先绕 X 轴旋转 b 角度,然后再绕 Y 轴旋转 a 角度,使两者重合。1号坐标系 Z 零点坐标平移到该平面特征点的 Z 值。


3. 当我们采用线元素,确定第二轴时,1 号坐标系绕 Z 轴旋转,使指定轴(假如是 X轴)与该线重合。1 号坐标系的 Y 零点平移到这条线特征点的 Y 值。


4. 这时只有 X 轴的零点没有着落,最后一点就是为 X 轴而设的。


5. 零件坐标系的零点如果没有特殊指定,就是按照以上设置的,往往我们还要根据图纸要求,将零件坐标系的零点平移到指定点元素上。 


要说明的是,建立零件坐标系第一轴可以是任意轴,确定了平面就指定了轴,如:-X、+Y、-Z 等。建立第一轴的元素不一定非是平面,也可以是圆柱轴、圆锥轴或构造线(软件不同可能有差别)。只要你指定了第一轴,实际就指了相应的工作平面。指定了 X 轴,实际也就确定了与其垂直的 YZ 平面。

指定轴或工作平面的原则,一般是根据零件图纸要求,或使零件坐标系与机器坐标系接近,避免误会。


建立坐标系不一定必须是 3-2-1。比如徊转体零件,只要用平面找正第一轴,再确定中心点为零点,就完全可以了 。


建立零件坐标系的各轴的顺序是不能颠倒的,第一轴一定是图纸上的第一基准,第二轴是第二基准,千万不能颠倒。


至于怎样建立坐标系准确,与测量机测量元素的要求是一致的,关键是了解图纸的基准要求,再选择准确的建立坐标系的方法 。




RationalDMIS 7.1  3-2-1法建立零件坐标系 (圆锥 平面 平面)



RE:
    需要注意的是:

   
  在确定旋转方向时需要进行一次投影计算,将第二基准的矢量方向投影到第一基准找正方向的坐标平面上,计算与找正方向垂直的矢量方向,用该计算的矢量方向作为坐标系的第二个坐标系轴向!


对于RationalDMIS软件(其余测量软件也一样)

 

   3-2-1建立坐标系方法可以使新坐标系所选择的轴方向与可以退化成线型的元素方向当输入元素的方向和主轴不垂直时,则将使用线方向和主轴方向的垂直分量.



1.粗建坐标系



    手动坐标系的目的是确定零件的位置,为后面程序自动运行做准备,所以通常会测量最少的测量点数,又称粗建坐标系。


  MA_PLA_C空间找正Z+,MA_PLA_B平面找正X+,MA_PLA_C和MA_CON确定原点


(1)找正


  使用一个平面的矢量方向找正到坐标系的Z正方向,这时就确定了该零件围绕X轴和Y轴的旋转自由度,同时也确定了零件在坐标系Z轴方向的平移自由度。此时零件还有围绕z轴旋转的自由度和沿X轴和Y轴平移的自由度。



   确定零件在空间直角坐标系下的3个自由度:2个旋转自由度和1个平移自由度。



(2)旋转



     使用与Z正方向垂直或近似垂直的一条直线旋转到X正,这时就确定了零件围绕Z轴旋转的自由度,同时也确定了零件沿Y轴平移的自由度。此时,零件还有沿X轴平移的自由度。


需要注意的是,在确定旋转方向时需要进行一次投影计算,将第二基准的矢量方向投影到第一基准找正方向的坐标平面上,计算与找正方向垂直的矢量方向,用该计算的矢量方向作为坐标系的第二个坐标系轴向。这个过程应该由测量软件在执行旋转命令时自动完成计算。



平面找正(旋转)是先将元素的方向投影到和第一轴向垂直的平面,然后才确定第二轴向。


在这里,有个疑问就是平面B和圆锥A(或平面C)的方向不垂直,为何还能确定X+方向?原因就是:


空间找正和平面找正的区别:


空间找正是确定第-轴向,平面找正是先将元素的方向投影到和第一轴向垂直的平面然后才确定第第二轴向。




     确定零件在空间直角坐标系下的2个自由度:1个旋转自由度和1个平移自由度。


(3)原点



确定零件在空间直角坐标系下的1个自由度:1个平移自由度。使用矢量方向为X正或X负的一一个点就能确定零件沿坐标系X轴平移的自由度。


2.精建坐标系


自动坐标系的目的是准确测量相关基准元素,作为后续尺寸评价的基准,所以通常会测量更多的点数,又称精建坐标系,由于自动坐标系在执行时是自动运行的,所以测量元素间需要加上安全移动点。


建立零件坐标系后,测量机可以相对于零件作出精密的位置和方向测量,根据图纸或CAD模型获取被测特征的参数后,测量机就可以对该特征进行自动测量,从而提高测量特征的精度,这是保证测量结果高精度的重要环节。尤其对于大批量的零件检测,通过在装夹零件的夹具上建立夹具的坐。标系可以实现大批量零件的全自动测量。


在建立零件坐标系时,必须使用零件的基准特征来建立零件坐标系。


 圆锥CON_A空间找正Z+,PLA_ B平面找正X+, CON_A和PLA _C确定原点.





很显然,这是错误的


因此,正确把握坐标系的第一轴向和第二轴向是非常重要的。


如果坐标系的建得有问题,对于测量程序那将是灾难性的,因为坐标系后面的元素的所有数据都是相对当前坐标系而言,坐标系错了的话,所有的元素测量和评价都是错误的。

$$/*  Header

DMISMN/'Created by [爱科腾瑞科技(北京)有限公司-091520] on Friday, April 17, 2020', 4.0

UNITS/MM, ANGDEC, MMPS

WKPLAN/XYPLAN

PRCOMP/ON

TECOMP/ON

FLY/1.0000

MODE/MAN

SNSET/APPRCH, 2.0000

SNSET/RETRCT, 2.0000

SNSET/DEPTH, 2.0000

SNSET/SEARCH, 10.0000

SNSET/CLRSRF, 15.0000

RECALL/D(MCS)

SNSLCT/S(L20-D2.0)

GEOALG/BF, LSTSQR

GEOALG/ANGLB, DEFALT

GEOALG/CIRCLE, LSTSQR

GEOALG/ARC, LSTSQR

GEOALG/PLANE, LSTSQR

$$

$$

$$*/

MODE/MAN

F(MA__PLA__C)=FEAT/PLANE,CART,0.5707,-3.7968,0.0000,0.0000,0.0000,1.0000

$$ Measurement points are created through actual points

MEAS/PLANE, F(MA__PLA__C), 4

  PTMEAS/CART, -48.8861,  35.2076, -0.0000, 0.0000, 0.0000, 1.0000

  PTMEAS/CART, -40.3727, -42.4656, -0.0000, 0.0000, 0.0000, 1.0000

  PTMEAS/CART,  46.6210, -43.8830, -0.0000, 0.0000, 0.0000, 1.0000

  PTMEAS/CART,  44.9206,  35.9537, -0.0000, 0.0000, 0.0000, 1.0000

ENDMES

D(CRD1) = DATSET/FA(MA__PLA__C), ZDIR

F(MA_PLA_B)=FEAT/PLANE,CART,76.2412,-1.2828,-21.2412,0.7071,0.0000,0.7071

$$ Measurement points are created through actual points

MEAS/PLANE, F(MA_PLA_B), 4

  PTMEAS/CART, 63.1340,  33.9403,  -8.1340, 0.7071, 0.0000, 0.7071

  PTMEAS/CART, 91.6526,  44.3931, -36.6526, 0.7071, 0.0000, 0.7071

  PTMEAS/CART, 90.3338, -39.3201, -35.3338, 0.7071, 0.0000, 0.7071

  PTMEAS/CART, 59.8442, -44.1446,  -4.8442, 0.7071, 0.0000, 0.7071

ENDMES

D(CRD2) = ROTATE/ZAXIS, FA(MA_PLA_B), XDIR

F(MA_CON)=FEAT/CONE,INNER,CART,0.0000,0.0000,-30.0000,0.0000,-0.0000,1.0000, 67.3801

$$ Measurement points are created through actual points

MEAS/CONE, F(MA_CON), 8

  PTMEAS/CART,  -1.5612,  18.7774,  -1.7367,  0.0689, -0.8292, 0.5547

  PTMEAS/CART,  18.3982,  -4.2980,  -1.6597, -0.8102,  0.1893, 0.5547

  PTMEAS/CART,  -1.0139, -18.5512,  -2.1317,  0.0454,  0.8308, 0.5547

  PTMEAS/CART, -18.1712,   0.7789,  -2.7182,  0.8313, -0.0356, 0.5547

  PTMEAS/CART, -10.8055,   2.0059, -13.5148,  0.8181, -0.1519, 0.5547

  PTMEAS/CART,  -0.2588,  11.6843, -12.4692,  0.0184, -0.8318, 0.5547

  PTMEAS/CART,  11.2036,  -1.7246, -12.9966, -0.8224,  0.1266, 0.5547

  PTMEAS/CART,  -1.3070, -11.7177, -12.3145,  0.0922,  0.8269, 0.5547

ENDMES

D(CRD3) = TRANS/XORIG, FA(MA_CON), YORIG, FA(MA_CON), ZORIG, FA(MA__PLA__C)

$$ Set.CAD2PCS.CADM_1

MODE/PROG,MAN

$$ 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, 2.0000

SNSET/RETRCT, 2.0000

SNSET/DEPTH, 0.0000

SNSET/SEARCH, 10.0000

SNSET/CLRSRF, FA(MA__PLA__C), 15.0000

F(CON_A)=FEAT/CONE,INNER,CART,0.0000,-0.0000,-30.0000,-0.0000,0.0000,1.0000, 67.3801

$$ Measurement points are created through nominal points

$$ CALL/M(EASI_CLEARPLN_GOTO), 1, -1.0536, -9.4453, 16.0000

MEAS/CONE, F(CON_A), 18

  GOTO/CART,    -1.0536,  -9.4453,  16.0000

  PTMEAS/CART,  -1.3303, -11.9260, -12.0000,  0.0922,  0.8269, 0.5547

  PTMEAS/CART, -10.9934,  -4.8110, -12.0000,  0.7623,  0.3336, 0.5547

  PTMEAS/CART,  -9.6631,   7.1151, -12.0000,  0.6700, -0.4933, 0.5547

  PTMEAS/CART,   1.3303,  11.9260, -12.0000, -0.0922, -0.8269, 0.5547

  PTMEAS/CART,  10.9934,   4.8110, -12.0000, -0.7623, -0.3336, 0.5547

  PTMEAS/CART,   9.6631,  -7.1151, -12.0000, -0.6700,  0.4933, 0.5547

  PTMEAS/CART,  12.3473,  -9.0915,  -7.0000, -0.6700,  0.4933, 0.5547

  PTMEAS/CART,  14.0471,   6.1474,  -7.0000, -0.7623, -0.3336, 0.5547

  PTMEAS/CART,   1.6998,  15.2388,  -7.0000, -0.0922, -0.8269, 0.5547

  PTMEAS/CART, -12.3473,   9.0915,  -7.0000,  0.6700, -0.4933, 0.5547

  PTMEAS/CART, -14.0471,  -6.1474,  -7.0000,  0.7623,  0.3336, 0.5547

  PTMEAS/CART,  -1.6998, -15.2388,  -7.0000,  0.0922,  0.8269, 0.5547

  PTMEAS/CART,  -2.0693, -18.5516,  -2.0000,  0.0922,  0.8269, 0.5547

  PTMEAS/CART, -17.1008,  -7.4837,  -2.0000,  0.7623,  0.3336, 0.5547

  PTMEAS/CART, -15.0315,  11.0679,  -2.0000,  0.6700, -0.4933, 0.5547

  PTMEAS/CART,   2.0693,  18.5516,  -2.0000, -0.0922, -0.8269, 0.5547

  PTMEAS/CART,  17.1008,   7.4837,  -2.0000, -0.7623, -0.3336, 0.5547

  PTMEAS/CART,  15.0315, -11.0679,  -2.0000, -0.6700,  0.4933, 0.5547

ENDMES

D(CRD4) = DATSET/FA(CON_A), ZDIR

F(PLA_C)=FEAT/PLANE,CART,3.8870,-2.0101,-0.0000,0.0000,-0.0000,1.0000

$$ Measurement points are created through nominal points

$$ CALL/M(EASI_CLEARPLN_GOTO), 1, 13.0215, -9.5880, 16.0000

MEAS/PLANE, F(PLA_C), 9

  GOTO/CART,    13.0215,  -9.5880, 16.0000

  GOTO/CART,   -48.8471,  40.6253, 16.0000

  PTMEAS/CART, -48.8471,  40.6253,  0.0000, 0.0000, 0.0000, 1.0000

  PTMEAS/CART, -45.9455, -41.6067,  0.0000, 0.0000, 0.0000, 1.0000

  PTMEAS/CART,   1.8159, -43.8021,  0.0000, 0.0000, 0.0000, 1.0000

  PTMEAS/CART,  45.7324, -41.1085,  0.0000, 0.0000, 0.0000, 1.0000

  PTMEAS/CART,  48.8047,  -6.5240,  0.0000, 0.0000, 0.0000, 1.0000

  PTMEAS/CART,  47.6855,  42.9709,  0.0000, 0.0000, 0.0000, 1.0000

  PTMEAS/CART, -13.2072,  43.7422,  0.0000, 0.0000, 0.0000, 1.0000

  PTMEAS/CART, -26.2967,  -5.3462,  0.0000, 0.0000, 0.0000, 1.0000

  PTMEAS/CART,  25.2410,  -7.0414,  0.0000, 0.0000, 0.0000, 1.0000

ENDMES

F(PLA_B)=FEAT/PLANE,CART,76.7014,-3.1890,-21.7014,0.7071,0.0000,0.7071

$$ Measurement points are created through nominal points

$$ CALL/M(EASI_CLEARPLN_GOTO), 1, 25.2410, -7.0414, 16.0000

MEAS/PLANE, F(PLA_B), 9

  GOTO/CART,   25.2410,  -7.0414,  16.0000

  GOTO/CART,   60.7761,  38.6063,  16.0000

  PTMEAS/CART, 58.6548,  38.6063,  -3.6548, 0.7071, 0.0000, 0.7071

  PTMEAS/CART, 57.8959, -44.7634,  -2.8959, 0.7071, 0.0000, 0.7071

  PTMEAS/CART, 75.6369, -45.2851, -20.6369, 0.7071, 0.0000, 0.7071

  PTMEAS/CART, 91.4264, -44.8115, -36.4264, 0.7071, 0.0000, 0.7071

  PTMEAS/CART, 92.3798,  -2.3465, -37.3798, 0.7071, 0.0000, 0.7071

  PTMEAS/CART, 94.4464,  44.7358, -39.4464, 0.7071, 0.0000, 0.7071

  PTMEAS/CART, 73.9641,  42.1098, -18.9641, 0.7071, 0.0000, 0.7071

  PTMEAS/CART, 66.2151,  -0.8101, -11.2151, 0.7071, 0.0000, 0.7071

  PTMEAS/CART, 79.6929, -16.1360, -24.6929, 0.7071, 0.0000, 0.7071

ENDMES

D(CRD5) = DATSET/FA(CON_A), ZDIR, FA(PLA_B), XDIR, FA(CON_A), YORIG

D(CRD5) = TRANS/ZORIG, FA(PLA_C), XORIG, FA(CON_A), YORIG, -0



两次精建坐标系提高测量重复性:


为了提高测量效率,对于用夹具裝夹且经常测量的工件,我们通常手动

建立外部坐标系后,。上来就执行程序, 实现自动测量。在这种情况下,通常两次精建坐标系来提高测量的重复性。


建立手动坐标系


工件夹具做好,在机器上设计好了测量位置后,进行首件编程。此时手动坐标系的作用是保障工件动过之后程序可以继续使用.


精建坐标系


此次精建坐标系是为接下来的测量做准备,要求所建立的坐标系跟图纸

上标注的一样。


来源:山涧果子
ACTUG
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2025-01-04
最近编辑:11天前
山涧果子
大专 签名征集中
获赞 204粉丝 52文章 860课程 0
点赞
收藏
作者推荐

RationalDMIS7.1报告头设置的拖放操作

输出设置窗口允许以拖放的方式来改变操作员、日期、时间和用户定义条目.使用鼠标左键选中需要进行排列的条目,然后按住鼠标左键拖放到某条目的前面或者后面。来源:山涧果子

未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习计划 福利任务
下载APP
联系我们
帮助与反馈