首页/文章/ 详情

RationalDMIS 7.1探测误差(25点球)

3天前浏览14



探测误差校准


     通过确定测量点到最小二乘拟合球球心距离的范围,评价三维探测误差P是否符合规定的最大允许探测误差MPEP。


探针位置:按制造商限定范围任意配置,一般用20mm的测杆。


校准过程:在标准球上选取25个探测点进行探测,探测点须均布。


结果处理:用25个测量值计算出最小二乘球中心,求出25个测点到球心的距离R,P=RMAX-RMIN


综合性评定:探测误差P不大于最大允许探测误差MPEP,允许重复再测一次。


RECALL/D(MCS)


UNITS/MM, ANGDEC

WKPLAN/XYPLAN

PRCOMP/ON

TECOMP/OFF

FLY/1


SNSET/APPRCH, 10.000000

SNSET/RETRCT, 10.000000

SNSET/DEPTH, 0.000000

SNSET/SEARCH, 10.000000

SNSET/CLRSRF, 10.000000

GEOALG/CIRCLE, LSTSQR

GEOALG/ARC, LSTSQR

GEOALG/PLANE, LSTSQR

$$

$$

$$定义一个理论球,位置任意

F(SPH1) = FEAT/SPHERE,OUTER,CART, -200.000000, -200.000000, -200.000000,$

30.000000

$$改为手动模式测量一个实际球


MODE/MAN


MEAS/SPHERE, F(SPH1), 5

  PTMEAS/CART,  -356.937692, -107.199353, -373.184071,  0.071462, -0.037765,$

0.996728

  PTMEAS/CART,  -356.892832, -95.183868, -380.621126,  0.074995, 0.908543,$

0.411005

  PTMEAS/CART,  -369.263280, -104.866715, -380.604325,  -0.899269, 0.145947,$

0.412328

  PTMEAS/CART,  -358.708165, -118.254552, -380.602882,  -0.067976,$

-0.908444, 0.412442

  PTMEAS/CART,  -346.313629, -107.139818, -380.541736,  0.908186, -0.033077,$

0.417257

decl/char,100,Var_message

Var_message=prompt/TEXT,'点击继续后,手动在球上取5个测量点'

ENDMES


$$用球的实际球心位置产生一个新的坐标系,原点在球心上

D(ORG_SPH1) = TRANS/XORIG, FA(SPH1), YORIG, FA(SPH1), ZORIG, FA(SPH1)

DECL/COMMON, INTGR, Aj

DECL/COMMON, INTGR, Bj

Aj=prompt/'请输入测头A角角度'

Bj=prompt/'请输入测头B角角度'

D(CRD1) = ROTATE/ZAXIS, Bj

D(CRD2) = ROTATE/XAXIS, -Aj

$$程序所需的变量声明、赋值


$$定义圆周率和其它常规变量

decl/DOUBLE,pie

decl/INTGR,kkk,jjj

$$声明测量点的坐标和法向量

decl/DOUBLE,condx[8,4],condy[8,4],condz[4],i[8,4],j[8,4],k[4]


$$声明实际球的半径

decl/DOUBLE,R_act


$$声明除顶点外4层测量点所在平面圆的半径

decl/DOUBLE,Rar[4]

$$声明标准球的直径

decl/CHAR,100,SHP1_D


$$取得标准球的直径

SHP1_D=prompt/'请输入标准球的直径'

R_act=assign/val(SHP1_D)*0.5

pie=assign/3.141592654


$$将标准球的理论值重新定义

F(SPH1)=Feat/SPHERE,OUTER,CART,0,0,0,R_act*2


$$循环赋值给数组变量,为球的测量点的坐标

do/jjj,1,4,1


  do/kkk,1,8,1

    

  

  condx[kkk,jjj]=assign/R_act*sin(jjj*pie/8)*cos(kkk*pie/4)

  condy[kkk,jjj]=assign/R_act*sin(jjj*pie/8)*sin(kkk*pie/4)

  condz[jjj]=assign/R_act*cos(jjj*pie/8)

  i[kkk,jjj]=assign/sin(jjj*pie/8)*cos(kkk*pie/4)

  j[kkk,jjj]=assign/sin(jjj*pie/8)*sin(kkk*pie/4)

  k[jjj]=assign/cos(jjj*pie/8)

  

  enddo


enddo


MODE/PROG,MAN



$$开始25点、5层测量实际球


RECALL/D(CRD2)


MEAS/SPHERE, F(SPH1), 25


  GOTO/0,0,R_act+10

  $$第1点

  PTMEAS/CART,  0.000000, 0.000000, R_act,  0.000000, 0.000000, 1.000000

  $$22.5度4个测量点

  ptmeas/cart,condx[2,1],condy[2,1],condz[1],i[2,1],j[2,1],k[1]

  ptmeas/cart,condx[4,1],condy[4,1],condz[1],i[4,1],j[4,1],k[1]

  ptmeas/cart,condx[6,1],condy[6,1],condz[1],i[6,1],j[6,1],k[1]

  ptmeas/cart,condx[8,1],condy[8,1],condz[1],i[8,1],j[8,1],k[1]

  $$45度8个测量点

  ptmeas/cart,condx[1,2],condy[1,2],condz[2],i[1,2],j[1,2],k[2]

  ptmeas/cart,condx[2,2],condy[2,2],condz[2],i[2,2],j[2,2],k[2]

  ptmeas/cart,condx[3,2],condy[3,2],condz[2],i[3,2],j[3,2],k[2]

  ptmeas/cart,condx[4,2],condy[4,2],condz[2],i[4,2],j[4,2],k[2]

  ptmeas/cart,condx[5,2],condy[5,2],condz[2],i[5,2],j[5,2],k[2]

  ptmeas/cart,condx[6,2],condy[6,2],condz[2],i[6,2],j[6,2],k[2]

  ptmeas/cart,condx[7,2],condy[7,2],condz[2],i[7,2],j[7,2],k[2]

  ptmeas/cart,condx[8,2],condy[8,2],condz[2],i[8,2],j[8,2],k[2]

  $$67.5度4个测量点

  ptmeas/cart,condx[2,3],condy[2,3],condz[3],i[2,3],j[2,3],k[3]

  ptmeas/cart,condx[4,3],condy[4,3],condz[3],i[4,3],j[4,3],k[3]

  ptmeas/cart,condx[6,3],condy[6,3],condz[3],i[6,3],j[6,3],k[3]

  ptmeas/cart,condx[8,3],condy[8,3],condz[3],i[8,3],j[8,3],k[3]

  $$90度8个测量点

  ptmeas/cart,condx[1,4],condy[1,4],condz[4],i[1,4],j[1,4],k[4]

  ptmeas/cart,condx[2,4],condy[2,4],condz[4],i[2,4],j[2,4],k[4]

  ptmeas/cart,condx[3,4],condy[3,4],condz[4],i[3,4],j[3,4],k[4]

  ptmeas/cart,condx[4,4],condy[4,4],condz[4],i[4,4],j[4,4],k[4]

  ptmeas/cart,condx[5,4],condy[5,4],condz[4],i[5,4],j[5,4],k[4]

  ptmeas/cart,condx[6,4],condy[6,4],condz[4],i[6,4],j[6,4],k[4]

  ptmeas/cart,condx[7,4],condy[7,4],condz[4],i[7,4],j[7,4],k[4]

  ptmeas/cart,condx[8,4],condy[8,4],condz[4],i[8,4],j[8,4],k[4]

  

  GOTO/0,0,R_act+10


ENDMES


$$$$$$$$$$$$$$$$$$$$输出宏定义$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$

M(EASI_SPHERE_HIGHLOW_POINTS) = MACRO/'FEATLABEL', 'DEVICELABEL', HIGHR, LOWR, RADSEPARATION, ER

DECL/LOCAL, CHAR, 255, FNAME

DECL/LOCAL, REAL, XC,YC,ZC,XX,YY,ZZ, CDIST

DECL/LOCAL, INTGR, PCOUNT, LPCOUNT

FNAME = OBTAIN/F(@FEATLABEL), 1

ER = ASSIGN/0

HIGHR = ASSIGN/0

LOWR = ASSIGN/100000

PCOUNT = VALUE/FA(@FEATLABEL), PTDATA

XC = OBTAIN/FA(@FEATLABEL), 4

YC = OBTAIN/FA(@FEATLABEL), 5

ZC = OBTAIN/FA(@FEATLABEL), 6

DO/LPCOUNT, 1, PCOUNT

XX = OBTAIN/FA(@FEATLABEL)[LPCOUNT],2

YY = OBTAIN/FA(@FEATLABEL)[LPCOUNT],3

ZZ = OBTAIN/FA(@FEATLABEL)[LPCOUNT],4

CDIST = ASSIGN/SQRT((XX-XC)*(XX-XC)+(YY-YC)*(YY-YC)+(ZZ-ZC)*(ZZ-ZC))

IF/(CDIST .GT. HIGHR)

HIGHR = ASSIGN/CDIST

ENDIF


IF/(CDIST .LT. LOWR)

LOWR = ASSIGN/CDIST

ENDIF

WRITE/DID(@DEVICELABEL), 'PTN = ',LPCOUNT:2, '  X = ', XX, '  Y = ', YY, '  Z = ', ZZ, '  R = ', CDIST

WRITE/DID(DEFAULTSCREEN),'PTN = ',LPCOUNT:2, '  X = ', XX, '  Y = ', YY, '  Z = ', ZZ, '  R = ', CDIST

ENDDO

RADSEPARATION = ASSIGN/(HIGHR-LOWR)

ENDMAC


$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$


$$$$$$$$$$$$$$$$$$$$$$$$$$输出SPH1结果$$$$$$$$$$$$$$$$$$$$$$$$$$

DECL/COMMON, REAL, HR, LR, RADSEP

DECL/COMMON, INTGR, LPRET

DECL/COMMON, CHAR, 256, STESTDATE, STESTTIME, SSEP


DID(ISO103602-2Report) = DEVICE/STOR,'ISO-103602-Report.out'

OPEN/DID(ISO103602-2Report), DIRECT, OUTPUT, APPEND


SSEP = ASSIGN/'--------------------------------------------------------------------------------'

STESTDATE = ASSIGN/SDATE()

STESTTIME = ASSIGN/STIME()


WRITE/DID(ISO103602-2Report),SSEP 

WRITE/DID(DEFAULTSCREEN),SSEP 


WRITE/DID(ISO103602-2Report),'ISO10360-2 sphere minimin and maximun radius test. Performed on'

WRITE/DID(DEFAULTSCREEN),'ISO10360-2 sphere minimin and maximun radius test. Performed on'


WRITE/DID(ISO103602-2Report),'TIME : ', STESTTIME  

WRITE/DID(DEFAULTSCREEN),'TIME : ', STESTTIME 


WRITE/DID(ISO103602-2Report),'DATE : ', STESTDATE 

WRITE/DID(DEFAULTSCREEN),'DATE : ', STESTDATE


CALL/M(EASI_SPHERE_HIGHLOW_POINTS), (SPH1), (ISO103602-2Report), HR, LR, RADSEP, LPRET

WRITE/DID(ISO103602-2Report),' ' 

WRITE/DID(DEFAULTSCREEN),' ' 


WRITE/DID(ISO103602-2Report),'Maximun Radius = ', HR:6:5, '  Minimun Radius = ', LR:6:5, '  Form Error = ', RADSEP:6:5

WRITE/DID(DEFAULTSCREEN),'Maximun Radius = ', HR:6:5, '  Minimun Radius = ', LR:6:5, '  Form Error = ', RADSEP:6:5


CLOSE/DID(ISO103602-2Report), KEEP


$$


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

RationalDMIS 7.1图形报告

RationalDMIS图形报告窗口可以创建测量元素或公差的的图形报告. 图形报告由一个个图形报告小窗口构成, 图形报告小窗口用来显示指向元素或公差的属性参数。一个典型的图形报告小窗口如下图所示: 创建的图形报告窗口都容纳在图形报告窗口区中, 图形报告窗口区中由两部分构成: 图形报告主窗口和图形报告工具条.知识点:(1)图形报告-主窗口 图形报告主窗口实际上与图形窗口操作区的窗口区是相同的,只是无法进行选取元素或测量点等操作.拖放到图形报告区的图形报告小窗口都是在图形报告主窗口中显示,见下图:当前只能通过拖放来创建图形报告小窗口,可以从元素数据区中拖放元素到到图形报告窗口区来创建拖放元素的图形报告,也可以从公差数据区拖放公差到图形报告窗口区来创建拖放公差的图形报告.(2)图形报告小窗口:拖放元素或公差创建的图形报告小窗口中列出了元素或公差的各种参数数值,同时还有一条连线从图形报告小窗口指向它所代表的元素,对于公差这条连线是指向产生公差的元素.一个典型的图形报告小窗口如下图所示:图形报告小窗口顶部左边显示的是它所代表的元素或公差的标签名,如上图中的"Φ10".元素或公差的标签名的下面根据理论元素是否有实际元素以及是否超差,会相应的显示红线或绿线或不显示线.只有理论元素而没有实际元素就会不在标签名下显示粗线——〉 即有理论元素又有实际元素且不超差就会在标签名下显示绿线——〉即有理论元素又有实际元素且超差就会在标签名下显示红线.红线或绿线下面就是参数列表,参数列表根据图形报告小窗口指向的元素不同其列数和行数也会不同,这些参数可以在图形报告设置窗口中进行设置. 对于已测量元素, 参数列表的第一列显示的是理论元素的数值, 数值颜色是黑色;第二列显示的是实际元素的数值,根据超差与否数值颜色会相应的显示为红色或绿色;第三列显示的误差值, 根据超差与否误差值颜色会相应的显示为红色或绿色;第四列和第五列显示的公差值,当在图形报告设置窗口中选中某种元素类型下的"Show Tol"前的复选框时就会显示公差值, 公差值的颜色是蓝色;最后一列显示的是趋势值,当不超差时,会显示绿色的趋势方块图,当超差并是负误差时,会显示褐色的误差值,当超差并是正误差时,会显示红色的误差值.(3)测量点图形报告小窗口对于测量点,图形报告小窗口在普通模式下顶部左边显示的是此测量点在元素所有测量点中的顺序序号,顶部右边显示的是测量点的误差值,序号和误差值之间以"|"分隔符相隔.序号和误差值下面根据测量点是否超差会相应的显示红线或绿线, 见下图:(4)图形报告支持用户自定义‘添加文本’在图形报告中鼠标右键选择’添加文本’,文本框的位置是鼠标点选的位置;可以添加多个文本;添加的文本背景可以白色或者透明;使用鼠标右键在文本上点击可以进行设置;(5)文本格式图形报告文本窗口右键‘文本格式’支持修改字体的大小和颜色。(6)修改(7)修改列图形报告小窗口右键菜单选项“修改列”,用于隐藏或显示输出列。手动隐藏/显示的列不受整体设置的影响。(8)图形报告支持添加矩形框用来做标注目的是提醒用户注意框内的内容;框的位置和大小可以用鼠标调整,同一个报告页面内可以添加多个矩形框;DMIS模板中增加相应的语句支持;$$ Set.GraphReport.DataWin.Windef({Width},{Height}).at({pixelx},{pixely})(9)自动排列图形报告小窗口用户既可以手动排列图形报告窗口区中的图形报告小窗口的位置,也可以让RationalDMIS自动排列各个图形报告小窗口的位置,更清楚整齐的显示图形报告. 自动排列图形报告小窗口是在RationalDMIS的程序设置窗口(可以通过"选项"菜单中的" 程序设置"菜单项打开)中设置的, 程序设置窗口中有一个"图形报告设置"项,见下图: (10)设置图形报告文本设置文本设置中可以设定元素相关参数描述的文字显示,一般文本显示和原参数一致,便于识别理解,除特殊情况以外,尽量保持一致。RationalDMIS 7.1图形报告拖放操作 当前只能通过拖放来创建图形报告小窗口,可以从元素数据区中拖放元素到到图形报告窗口区来创建拖放元素的图形报告,也可以从公差数据区拖放公差到图形报告窗口区来创建拖放公差的图形报告。报告排列格式美观,指引线不能交叉。要形成DMIS程序可重复运行并自动保存pdf格式报告。操作过程步骤如下:现在以批量输出点轮廓度(T)为例说明图形报告的使用方法。(1)设置图形报告(2)定义坐标公差 点轮廓度公差(3)拖放输出点元素全选要输出的点,拖放到图形报告窗口。软件自动生成图形报告小窗口,在当前窗口填满时自动保存并新建报告。(4)自学习记录报告语句(保存最后一个报告)保存图形报告、输出图形报告、新订图形报告最后一个报告也就是当前窗口显示的内容有时不会自动保存成报告,需要手动保存。点击“保存”按钮弹出下拉菜单,再点击上面的“保存为图像报告”按钮,输入报告名后确认,生成最后一个报告。知识点:A.图形报告编辑右键点击图形报告标签再点击“激活”按钮,激活图形报告,或者将图形报告标签拖放到图形报告窗口也可以激活。激活图形报后如果发现有小窗口重叠的需要重新调整位置调整CAD视图方向并拖动调整位置看起来更直观。调整完了就保存报告,所有的都要调整并保存,保存是要覆盖原来的报告。(5)编写图形报告输出程序来源:山涧果子

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