社区活动 技术论坛 趣味题之一
趣味题之一
2004-05-27 09:42 144 0 31
我在实际测量中遇到很多颇有趣味的尺寸要求,一直记在脑中,想拿出来供大家讨论一下. 一个曲面上的最高点对于底平面的高度不可高于某一定值(我把问题抽象化了,假设实际情况无法用高度尺测).用PC-DMIS你会如何测? 或者可以先从某一截面上的曲线最高点试起. BTW,这是我在叶片测量中遇到的.
我要回复

登陆后才能评论

登录
所有回贴(31)
原来是成都的连兄啊!!!
2004-06-06 00:27
回复
取消
提交
Canadian User: 您好。对于PC-DMIS中高点的算法我还不是非常肯定,但理解上与您的有些不同。 您输入的理论值仅仅是告诉PC-DMIS高点的理论位置,同时您还输入了一个区域(巨型或者圆弧区域〕,测量机会以理论点为中心,在这个区域内搜索,搜索第一遍之后,它根据自己的计算结果,会自动缩小搜索范围。当它找到一个点,这个点沿着指定方向的高度值(与周围其它点的高度差值--这一点的算法我不是非常有把握〕满足设定精度要求时,它就会认为找到了高点,并自动退出。我做了测试实验,它找到的是曲面上指定方向上的高点,这一点没问题。我和一些朋友曾经利用这项功能在叶片的前缘及叶背上找高点,效果不错的。 您可以尝试拿个环规做一下测试实验。
2004-06-07 15:43
回复
取消
提交
SESAME:对与你们的CASE不容易看出区别.你们所作的也完全正确.我只是想导出一个很多人(至少很多我的TRANEE)的误区.或许这样讲更清楚:如果只给你一CAD MODEL,你能用"高点"来找到一条曲线上最高的理论值吗?"高点"本身的理论值来自与你的鼠标,你点哪儿哪儿就是它的理论值但并不是曲线上理论"最高点".机器运行时所找到的倒真是在那个范围内的实际"最高点".但做DIMENSION COMPARISON时理论值就错了.
2004-06-07 20:31
回复
取消
提交
我的理解呢?高点测量是用某点与其周围的其他点在指定方向上进行高度差的比较,好象不是与CAD MODEL的理论值进行比较。如果图纸有明确要求,高点的理论值是输入进去的。我好象有些绕进去了,能再帮忙解释一下吗?(高点好象都是相对指定的工作平面而言的,它与机器自身有关吗?)
2004-06-07 22:13
回复
取消
提交
Canadian User:您说的工件底部是平的,机器自己测量出的就是最高点,我理解了。但如果工件底面不是标准的平面,您会怎么考虑哪?
2004-06-07 22:23
回复
取消
提交
Canadian User,能给出你采用的测量方法吗?
2004-06-08 00:01
回复
取消
提交
以下是我用的CODE,若发现有错误请指出: STARTUP =ALIGNMENT/START,RECALL:, LIST= YES ALIGNMENT/END MODE/MANUAL LOADPROBE/2_2_3X20 TIP/T1A0B0, SHANKIJK=0, 1, 0, ANGLE=0 MODE/DCC SCN1 =FEAT/SCAN,PATCH,SHOWHITS=YES,SHOWALLPARAMS=NO MEAS/SCAN BASICSCAN/LINE,SHOWHITS=NO,SHOWALLPARAMS=NO ENDSCAN BASICSCAN/LINE,SHOWHITS=NO,SHOWALLPARAMS=NO ENDSCAN BASICSCAN/LINE,SHOWHITS=NO,SHOWALLPARAMS=NO ENDSCAN BASICSCAN/LINE,SHOWHITS=NO,SHOWALLPARAMS=NO ENDSCAN BASICSCAN/LINE,SHOWHITS=NO,SHOWALLPARAMS=NO ENDSCAN ENDMEAS/ FORMAT/TEXT,OPTIONS,HEADINGS, , ;MEAS,MAXMIN, , , , , DIM LOC1= LOCATION OF SET SCN1 UNITS=MM ,$ GRAPH=OFF TEXT=OFF MULT=1.00 OUTPUT=BOTH AX MEAS MAX MIN X 276.414 284.959 267.929 Y -20.722 -12.464 -29.401 Z 75.278 75.830 74.718 END OF DIMENSION LOC1 HIGH =GENERIC/POINT,DEPENDENT,RECT,$ NOM/XYZ,0,0,0,$ MEAS/XYZ,LOC1.X.MEAS,LOC1.Y.MEAS,LOC1.Z.MAX,$ NOM/IJK,0,0,1,$ MEAS/IJK,0,0,1 DIM LOC2= LOCATION OF POINT HIGH UNITS=MM ,$ GRAPH=OFF TEXT=OFF MULT=1.00 OUTPUT=BOTH AX MEAS MAX MIN X 276.414 276.414 276.414 Y -20.722 -20.722 -20.722 Z 75.830 75.830 75.830 END OF DIMENSION LOC2 ASSIGN/NUM = SCN1.NUMHITS N =LOOP/START, ID = YES, NUMBER = NUM, START = 1, SKIP = , OFFSET: XAXIS = 0, YAXIS = 0, ZAXIS = 0, ANGLE = 0 COMMENT/OPER,N ,HIGH.Z ,SCN1.HIT[N].Z IF/ABS(SCN1.HIT[N].Z-HIGH.Z)<=0.001 ASSIGN/MAXPT = N F1 =GENERIC/POINT,DEPENDENT,RECT,$ NOM/XYZ,-2208.447,5,1123.562,$ MEAS/XYZ,SCN1.HIT[N].X,SCN1.HIT[N].Y,SCN1.HIT[N].Z,$ NOM/IJK,0,1,0,$ MEAS/IJK,0,1,0 COMMENT/OPER,YES ,MAXPT END_IF/ LOOP/END DIM LOC3= LOCATION OF POINT F1 UNITS=MM ,$ GRAPH=OFF TEXT=OFF MULT=1.00 OUTPUT=BOTH AX MEAS MAX MIN X 273.167 273.167 273.167 Y -14.409 -14.409 -14.409 Z 75.830 75.830 75.830 END OF DIMENSION LOC3 当然在扫描之前先建立座标(我省略了).SCAN的尺寸中其实已得到了最高值,GENERIC POINT 是为了在图形中得到一点,但注意这点的XY是形心的XY而不是那个"最高值"的XY,所以我又加了F1来找到它. 我后来又想了想SESAME所说的HIGH POINT并查了HELP 觉得也可以找到最高值.问题是当曲线在XY偏离太大时可能会有麻烦.除非把搜索区域扩大并加细但会费时,因为HIGH POINT 会不断地自我比较并重新调整搜索区域而不象SCAN是一次完成的.
2004-06-08 01:13
回复
取消
提交
终于看到了Canadian User 的代码了。 Canadian User 用面扫描的方法来得到一个点阵,再找出其中Z值最大的点。 但是,如果你的步距不够密,就可能错过真正的最高点,如果设置的步距太小,又会影响测量效率; HIGH POINT的方式应该更有效率,我只用过一次,猜想其过程可能是用瞎子爬坡法,以最大斜率的方向逼近最高点。 我个人认为最理想的方法应该这样: 以稀疏的面扫描得到点阵数据,用平滑拟合的算法得到表面轮廓是数学表达,再对其作微分求出其最高点。 如此,可兼顾效率和精度,并能适用于非单调的曲面 。

另外,我一直对测量最高点的目的有所怀疑,通常最高点是对于一个曲面而言的,获得最高点的目的应该是用这个点来反映其周围的表面整体的高低程度,这个点是周围一大群点们的代表,如果这个点本身偏差较大,也就不是这个曲面的真实表达,那就应该由周围的点选举出一个虚拟的最高点来代表他们,用点云拟合的方法就可以实现这样的思路

2004-06-08 16:39
回复
取消
提交
我感觉这个问题可以归结为查找最大点和最小点的问题,在检测过程中,经常需要有查找最大点和最小点的情况。正像sesame所说的,最大点和最小点是相对的。根据需要,通过建立和调整坐标系可以确定是寻找最大点还是最小点。 可以通过编程,利用坐标值的比较,控制测量机的运动方向和步距,最后找到最大点或最小点。
2004-06-08 17:15
回复
取消
提交
通过这个“趣味题”的讨论,我真是收益非浅。
2004-06-08 18:50
回复
取消
提交
在线咨询
关注我们

海克斯康制造智能

电话咨询
400-6580-400

热线电话(工作时间8:30-17:30)

关注我们 电话咨询 在线咨询

海克斯康制造智能