pcdmis高级培训(三坐标培训资料)_第1页
pcdmis高级培训(三坐标培训资料)_第2页
pcdmis高级培训(三坐标培训资料)_第3页
pcdmis高级培训(三坐标培训资料)_第4页
pcdmis高级培训(三坐标培训资料)_第5页
已阅读5页,还剩109页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、pc-dmis 高级编程应用,1,目录,第1章:特殊测头的校验 1.盘形测针的用途 4 2.盘测针的定义及校验 4 3.盘测针的注意事项 6 4.柱测针的用途 7 5.柱测针的定义及校验 7 6.柱测针的注意事项 8 7.星型测针的用途 9 6.星型测针的定义及校验 9 7.星型测针的注意事项 10 6.五方向测针的用途 11 7.五方向测针的定义及校验 11 8.五方向测针的注意事项 12 第2章:如何建立零件坐标系 1.建立坐标系的目的及方法 13 2.无cad模型时3-2-1坐标系的建立 14 3.有cad模型时3-2-1坐标系的建立 15 4.无cad模型时矢量点迭代法建立零件坐标系

2、16 5.无cad模型时基准圆迭代法建立零件坐标系 17 6.无cad模型时基准点、基准圆迭代法建立零件坐标系 18 7.无cad模型时基准圆、基准槽迭代法建立零件坐标系 18 8.有cad模型时矢量点迭代法建立零件坐标系 19 9.有cad模型时基准圆迭代法建立零件坐标系 20,pc-dmis 高级编程应用,2,目录,10.有cad模型时基准点、基准圆迭代法建立零件坐标系 21 11.有cad模型时基准圆、基准槽迭代法建立零件坐标系 21 12.迭代法建立坐标系实例1(6个矢量点) 22 13.迭代法建立坐标系实例2(3个圆) 23 14.迭代法建立坐标系实例3(圆+矢量点) 24 15.迭

3、代法建立坐标系实例3(圆+槽+矢量点) 25 16.最佳拟合建立零件坐标系 26 17.最佳拟合建立零件坐标系拟和方法 27 18.最佳拟合建立零件坐标系实例 28 第3章:编程语句 1.编程语句 29 2.读/写外部数据 30 3.循环 32 4.while和end while 34 5.else和end else 35 6.if和end if 36 7.lable 38 8.goto 39 9.select和end select 40 10.case和end case 41 11.赋值 42 12.读取特征的参数 43 13.读取形位公差 46 14.计算距离 48 15.数组 49 16

4、.注释 51,pc-dmis 高级编程应用,3,目录,17.子程序 52 第4章:应用实例 1.齿槽 54 2.无规则排列特征的测量 62 3.轴承内圈 68 4.曲线方程 75 5.子程序的应用 85 第5章:如何编制hyper-report 1.超级报告的用途 91 2.超级报告中各种命令的应用 92 3.hyper-report的应用实例1 95 4.hyper-report的应用实例2 101 5.hyper-report的应用实例3 102 6.hyper-report的应用实例4 103 7.hyper-report的应用实例5 104 第6章:扫描功能的应用技巧 1.扫描类型 1

5、05 2.逆向工程中扫描的测头补偿 106 3.逆向工程中扫描的终止特征类型 107 4.逆向工程中扫描终止的通过次数 108 5.逆向工程中扫描曲面的分区及边界 109 6.扫描的速度、密度掌控实验数据 112 7.sp600m在pc-dmis中的标准参数设置 113 附录1:常见问题答疑(软件) 114,pc-dmis 高级编程应用,4,第1章:特殊测头的使用,盘形测针 盘形测针的用途 用来探测直径较大深孔的中心坐标和直径等。由于其结构的原因,在测量孔的直径时,精度会低于使用球形测针的测量结果。但对中心坐标的影响很小。 盘形测针的定义及校验(以25盘测杆为例) 1.为了保证校验结果的精确,

6、先校验一个普通球型测杆,保持标准球不移动; 2.卸下球测杆,换上盘型测杆; 3.新建一个测头文件; 4.在“测头说明”里选择测头组件: ph10mq concert30mm_to_m8thrd probe_tp20 exten20mm tip25by3mmdisk,pc-dmis 高级编程应用,5,盘形测针的校验,5.点击“测量”,打开测头校正对话框; 设置测头参数: 测点数:9 逼近距离/回退距离:4 移动速度:60 触测速度:2 校验模式: 选择“用户定义” 层数:2 起始角:-5 终止角:5 6.选择在第1步中校验球形测针时所定义的 标准工具文件; 7.点击“测量”,开始进行测头的校正;

7、 1 “是否校验所有测头?”,选择“是” 2“是否已经移动标定工具或更改坐标系零点?”,必须选择“否” 8.pc-dmis将自动进行测头的校验。 校验完成后,点击“确定,pc-dmis 高级编程应用,6,盘形测针的校验,注意事项: 在校验盘测杆之前,先校一个普通的球测杆,目的是为了得到标准球的位置。然后再进行盘测杆的校验。 使用时,通常使用20mm加长杆; 配置测头文件时,选择测杆要注意后缀为“disk”; 由于盘型测杆是球型测杆的特例(切掉了两个球冠),工作面为球环的球面,不能垂直于标准球正上方采点;因此,在校验时,盘型测杆不能手动在标准球顶部采第一点,所以,自动校验测量时,选择“是否已经移

8、动标定工具或更改坐标测量机零点?”时只能选择“否,pc-dmis 高级编程应用,7,柱测针的校验,柱测针 柱测针的用途 专用来测量薄壁件。 柱测针的定义及校验 1. 新建一个测头文件; 2. 在“测头说明”中选择测头组件 柱形测针: tip2by20mmshnk 3. 点击“测量”,打开测头校正对话框,设置参数;其中,必须选中“柱测尖标定”,并设置相应参数; 4. 添加角度; 5. 定义标定工具; 6. 点击“测量”,开始进行测头的校验。 校验完成后,点击“确定,pc-dmis 高级编程应用,8,柱测针的校验,注意事项: 配置测头文件时,选择测杆要注意后缀为“shnk” 配置校验参数时,激活“

9、柱测尖标定”选项。(除此设置与普通测针不同之外,其他操作方法完全一致) 柱测尖偏置定义的是从测尖球心到柱层3mm处为校验的柱层,校验的点数为“柱测检测点数”;而“测点数”处定义的点数为柱测尖的半球部分校验的点数,pc-dmis 高级编程应用,9,星形测针的校验,星形测针 星形测针的用途 主要用于检测零件内腔,及深孔。 例如缸径上的钻孔,沟槽等。 星型测杆的定义及校验(以ps7r为例) 1. 新建一个测头文件 2. 在“测头说明”里选择测头组件: ph10mq concert30mm_to_m8thrd probe_tp20 exten20mm 测尖号1:2by18mmstar(方向向下) 测尖

10、号2:tipstar2by30 (指向x+) 测尖号3:tipstar2by30(指向y+) 测尖号4:tipstar2by30(指向x-) 测尖号5:tipstar2by30(指向y-) 3. 添加角度;注意:每添加一个角度, 5个测尖同时添加此角度,若用不了某测尖的此角度,可删除之。 4. 其它步骤同普通测针,pc-dmis 高级编程应用,10,星形测针的校验,注意事项: 使用时,通常使用20mm加长杆; 注意:每添加一个角度,5个测尖同时添加此角度,若不采用某测尖的此角度,可删除之。 安装时,尽量保证2、3、4、5号测针中两相对两测针连线与“x”轴或“y”轴平行; 配置测头文件时,首先选

11、择星型测杆1号位置的测针(当角度为a0b0时,竖直向下的杆),然后按照顺序选择2、3、4、5号针; 配置空间位置测杆时,测杆有效测量长度应为相对两个测杆间红宝石球心连线的距离,即2与4号针(或3与5号针)之间的距离;1号测杆不能单独使用。 校验星型测杆通常用双标准球。因为: 在校验某些角度的时候,需要用到双标准球中的从球,例如在校验t1a90b180位置时,5号测杆就需要在可用工具列表中对从球的矢量方向进行定义(与主球的定义方向相反),同时要注意:为了使在此处校得的从球数据和在主球上校得的数据相互联系,应该选择一个在主球上校过,而且在从球上也能校验的一个角度,在从球上也校验一次。(注:主球指双

12、标准球中位于上方的那个球,从球则是其中位于下方的,pc-dmis 高级编程应用,11,五方向测针的校验,五方向测针 五方向测针的用途 主要用于检测零件内腔,或深孔。使用方法类似星形测针。 校验步骤 1. 建立一个新的测头文件 2.在“测头说明”选择测头组件: ph10m concert30mm_to_m8thrd probe_tp2 exten20mm exten5way (空连接1)测尖号1:tip1.5by30m 空连接2: (空连接3)测尖号2:tip2.5by30mm 测尖号3:tip3by30mm 空连接5 3.其它操作方法同星形测针,pc-dmis 高级编程应用,12,五方向测针的

13、校验,注意事项: 无论校验还是使用,五方向比星形测针更灵活。 五方向的安装与形星测针一样,必须注意测针的方向指向,(以global机型为例) 空连接1指向z-, 空连接2指向x+; 空连接3指向y+; 空连接4指向x-; 空连接5指向y-; 为空连接选择测针时,根据选择顺序定义测尖号;而形星测针的测尖号是固定的,与空连接号相对应,pc-dmis 高级编程应用,13,第2章:如何建立零件坐标系,建立零件坐标系的目的 满足检测工艺的要求 满足同类批量零件的测量 满足装配、加工和设计中基准的建立 建立零件坐标系的方法 3-2-1建立零件坐标系 迭代法建立坐标系 最佳拟合建立坐标系,pc-dmis 高

14、级编程应用,14,无cad模型时3-2-1坐标系的建立 方法 a.建立坐标系第一轴向 b.建立坐标系第二轴向 c.确定坐标系原点 方法 通过旋转平移当前坐标系建立新的坐标系,3-2-1建立零件坐标系,pc-dmis 高级编程应用,15,3-2-1建立零件坐标系,有cad模型时3-2-1坐标系的建立 此方法适用于工件坐标系和cad模型上的坐标系(各轴向的方向以及坐标原点的位置)完全一致的情况 注意:应将装配、加工或设计的基准作为坐标系建立的特征元素,直接点击“cad=工件”可以使工件上建立的坐标系和cad模型本身的坐标系统一,pc-dmis 高级编程应用,16,无cad模型时迭代法建立坐标系 方

15、法 6个矢量点: 参与建立坐标系的各矢量点需要具备在理论坐标系下的坐标值以及矢量值 在自动测量矢量点的对话框中,输入每个点的理论坐标值以及理论矢量值,创建矢量点测量程序 在迭代法建立坐标系的对话框中按照顺序依次选择6个矢量点(3个点、2个点、一个点,迭代法建立零件坐标系,理论坐标值,理论矢量方向,pc-dmis 高级编程应用,17,迭代法建立零件坐标系,无cad模型时迭代法建立坐标系 方法 3个圆: 各圆需具备在理论坐标系下的中心、直径以及矢量方向的理论值,通过自动特征对话框创建测量圆程序 在迭代法建立坐标系的对话框中按照顺序依次选择6个矢量点(3个圆、2个圆、一个圆,pc-dmis 高级编程

16、应用,18,迭代法建立零件坐标系,无cad模型时迭代法建立坐标系 方法 2个圆+3个矢量点: 同前所述各圆需具备在理论坐标系下的中心、直径以及矢量方向的理论值,矢量点需具备在理论坐标系下的坐标以及矢量方向的理论值,通过自动特征对话框创建程序 在迭代法建立坐标系的对话框中按照顺序依次选择6个矢量点(3个点、2个圆、一个圆) 方法 1个圆+1槽+3个矢量点: 同前所述各圆需具备在理论坐标系下的中心、直径以及矢量方向的理论值,矢量点需具备在理论坐标系下的坐标以及矢量方向的理论值,通过自动特征对话框创建程序 在迭代法建立坐标系的对话框中按照顺序依次选择6个矢量点(3个点、圆+槽、圆,pc-dmis 高

17、级编程应用,19,迭代法建立零件坐标系,有cad模型时迭代法坐标系的建立 方法 6个矢量点: 通过自动特征对话框直接在cad模型上选择矢量点以读入理论值,从而创建矢量点程序 在迭代法建立坐标系的对话框中按照顺序依次选择6个矢量点(3个点、2个点、一个点,pc-dmis 高级编程应用,20,迭代法建立零件坐标系,有cad模型时迭代法坐标系的建立 方法 3个圆: 通过自动特征对话框直接在cad模型上选择圆特征以读入理论中心值、直径以及法线矢量,从而创建圆程序 在迭代法建立坐标系的对话框中按照顺序依次选择6个矢量点(3个圆、2个圆、一个圆,pc-dmis 高级编程应用,21,迭代法建立零件坐标系,有

18、cad模型时迭代法坐标系的建立 方法 2个圆+3个矢量点: 通过自动特征对话框直接在cad模型上选择圆以及矢量点特征,读入其理论值,从而生成测量程序 在迭代法建立坐标系的对话框中按照顺序依次选择6个矢量点(3个点、2个圆、一个圆) 方法 1个圆+1槽+3个矢量点: 通过自动特征对话框直接在cad模型上选择圆、槽以及矢量点特征,读入其理论值,从而生成测量程序 在迭代法建立坐标系的对话框中按照顺序依次选择6个矢量点(3个点、圆+槽、圆,pc-dmis 高级编程应用,22,迭代法建立坐标系实例1,方法 6个矢量点: 根据六个矢量点建坐标系的方法,分别在图示钣金工件的基准处生成六个矢量的测量程序,进行

19、迭代法坐标系的建立,图示如下,pc-dmis 高级编程应用,23,迭代法建立坐标系实例2,方法 3个圆: 根据3个圆建坐标系的方法,分别在图示钣金工件的生成3个圆的测量程序,进行迭代法坐标系的建立,图示如下,pc-dmis 高级编程应用,24,迭代法建立坐标系实例3,方法 2个圆+3个矢量点: 根据2个圆+3个矢量点建坐标系的方法,分别在图示钣金工件上生成测量程序,进行迭代法坐标系的建立,图示如下,pc-dmis 高级编程应用,25,迭代法建立坐标系实例4,方法 1个圆+1槽+3个矢量点: 根据1个圆+1槽+3个矢量点建坐标系的方法,分别在图示钣金工件上生成测量程序,进行迭代法坐标系的建立,图

20、示如下,pc-dmis 高级编程应用,26,最佳拟和建坐标系,此方法可提高坐标系精度,特别是对于曲线曲面类零件,通过理论曲线和实际曲线的匹配得到更精确的坐标系。 常用于有cad模型的情况,通过编辑所选拟和特征理论值和测定值的加权,并选定不同拟和方法,取得不同的拟和效果,pc-dmis 高级编程应用,27,最佳拟和建坐标系拟和方法,最小二乘法: 如果选择最小二乘法选项,最佳拟合坐标系中的误差将在所有特征输入之间均匀分布。 矢量: 如果选择矢量选项,所得的点将在创建坐标系后捕捉到理论矢量。 最小/最大: 如果选择最小/最大选项,坐标系将尝试确定零件的方位,使所有输入特征处于根据其关联尺寸确定的公差

21、范围内。此选项仅用于 2d 最佳拟合。 旋转和平移: 旋转和平移选项在计算坐标系时将允许最大的自由度,使其可以自由地旋转和平移。 仅旋转: 仅旋转选项限制坐标系在计算时只能旋转。 仅平移: 仅平移选项限制坐标系在计算时只能平移,pc-dmis 高级编程应用,28,最佳拟合建坐标系实例,在某些情况下,当坐标系根据基准建立完成之后,某些重要的尺寸要求(例如与装配相关的尺寸或者其他要求较高的加工尺寸)与理论值差别较大,此时将需要根据这些重要尺寸的测定值和理论值的偏差将坐标系进行平移或者旋转,使坐标系在满足当前基准的条件下,尽量减小这些重要尺寸的偏差。 例如在如下图示中,scn2和scn3为在基准装配

22、尺寸满足条件下同样要求配合精度较高的曲面轮廓,在坐标系建立完成之后,可以通过对两扫描轮廓坐标系最佳拟和,减小其理论值与测定值的偏差,保证其装配精度,pc-dmis 高级编程应用,29,第3章:编程语句,在本章中将详细介绍有关流程控制及读/写数据的相关语句 。包含以下内容: l 读/写外部数据 l 循环 l while和end while lif和end if l else和end else l label l goto l select和end select l case和end case l 读取特征参数 l 读取形位公差 l计算距离 l数组 l 注释 l 子程序,pc-dmis 高级编程应

23、用,30,编程语句:读/写外部数据,打开/关闭外部数据文件 用于打开或关闭外部数据文件,为数据的读取或写入做准备。 文件打开命令在“编辑”窗口中的语法为: =文件/打开, 文件指针名:它是用户选择的文件指针标识,用于访问打开 的文件。 文件名:包括要打开的文件的路径及文件名。 打开模式:文件的打开模式,包括:读取、写入或附加。 样例程序,菜单,pc-dmis 高级编程应用,31,编程语句:读/写外部数据,文件关闭命令在“编辑”窗口的语法为: =文件/关闭 注意:此处的文件指针名应该和打开时的文件指针名保持一致 读数据 通常使用“读取行”命令,其格式为: = 文件/读取行, 注意: 应该和需要读

24、取的文件指针名保持一致。 是指把读入的数据赋值给变量的表达式。 写数据 通常使用“写入行”命令,其格式为: 文件/写入行, 注意: 应该和需要写入的文件指针名保持一致。 是指把写出的数据的表达式,pc-dmis 高级编程应用,32,编程语句:循环,循环的主要用途: 1.在一个多零件的夹具上,工件的间距一致。利用平移/旋转偏置,可以使用测量一个测量程序测量所有工件。 2. 在一个零件的夹具上测量多个零件,并且想在每个程序循环之前换入新的零件。将零件替换为新零件时,可借助于“注释”命令来停止 cmm。此命令可以位于循环的开头或末尾。 3.使用“循环”可以旋转零件程序,以测量同一零件的不同部分。例如

25、,可以创建一个零件程序来测量一个复杂的孔,相同的孔在零件上重复了 10 次。所作的零件程序只需要测量其中一个孔,然后,可以使用“循环” 来偏置此零件程序,以测量其它 9 个孔,减少程序的数量,pc-dmis 高级编程应用,33,l 菜单 l 样例程序代码,x,y,z设置零件之间或同一零件上的模式之间的 x(y 或 z)偏置;角度框用于设置零件之间或同一零件上的模式之间的角度偏置。第一个偏置以零件的原点为基础,注意:循环语句的配对使用,循环测量不同高度的圆孔,零件数框指夹具在 x(y 或 z)方向上夹持的零件数(或零件上的模式数);起始号框指零件序列中的起始位置号;跳过号框用于将零件程序重复执行

26、指定的次数,从而使您可以跳过指定的增量,编程语句:循环,pc-dmis 高级编程应用,34,编程语句: while和end while,此选项用于在零件程序中添加条件循环。while 和 end while 命令之间的各项将一直循环执行,直至不再符合使循环处于活动状态的条件(或表达式)。 样例程序代码,该行接受用户的数值输入并将其存储在变量 c2.input 中,赋值/h1=c2.input,h2=15;while/h1 h2测试h2(初始值设置为 15)是否小于用户输入的整数。如果测试值为真,将执行 while/ 之后end_while/ 之前的语句。赋值/h2 = h2 + 1 该行将 h

27、2变量递增 1,以便最终在条件测试失败后退出循环。 end_while 行在条件值为假时终止执行 while / end while 块中的命令,pc-dmis 高级编程应用,35,编程语句: else和end else,此选项用于在零件程序中添加条件块。只有当 else if 命令的表达式求值为真(非零)时,才会执行 else if 和 end else if 命令之间的各项。else if / end else if 块必须紧接在一个 if / end if 块或另一个 else if / end else if 块之后。如果当前块之上的所有 if / else if 表达式都已求值为假,

28、则将求此表达式的值。如果表达式求值为假(零),那么执行流程将跳至 end else if 命令之后的下一条命令。如果当前块之上的任何 if / else if 表达式求值为真,则将跳过此序列中所有后继的 else if / end else if 块。 样例程序代码,该代码首先测试点的 y 值。如果条件值为假,代码将测试 pnt2和pnt3 y 值。如果其中任一条件值为真,pc-dmis 会显示关联的注释,并跳过其它条件语句,pc-dmis 高级编程应用,36,编程语句: if和end if,此选项用于在零件程序中添加条件块。 只有当 if 命令的表达式求值为真(非零)时,才会执行 if 和

29、end if 命令之间的各项。否则,执行流程将跳至 end/if 命令之后的第一个命令。 其格式为: if/expression end_if,pc-dmis 高级编程应用,37,编程语句: if和end if,l样例程序代码,该行接受用户的“是否”输入,并作为if语句中的判断,if/c3.input=“是”为表达式。测试注释 1 的输入是否为“是”。如果为“是”,if 语句则为“真”,继续执行 if 语句后面的语句,该示例中测量 pnt1 特征。如果为“否”,则转至 end_if 语句。 end_if 终止执行 if / end if 代码块中的命令。该行后面的任何命令是用户在注释中单击否后

30、 pc-dmis 将转至的位置,pc-dmis 高级编程应用,38,编程语句: label,标号选项可打开编辑标号名对话框,在该对话框中可以创建在 goto 或 if 语句中使用的名称标识。pc-dmis 允许您创建最多包含十五个字符的标识。标识都将以大写字母显示。 菜单: 样例程序代码,goto 或 if 语句中调用的名称标识,pc-dmis 高级编程应用,39,编程语句:goto,l 转到选项可打开转到对话框。通过此对话框,您可以在零件程序中创建“转到”语句。当执行程序时,如果 pc-dmis 遇到“转到”语句,则将移动到标号标识所指示的位置。 l样例程序: l样例程序代码,在满足if语句

31、的条件时,跳转到标号下面的程序(此处为测量cir6的程序,pc-dmis 高级编程应用,40,编程语句: select和end select,l 此选项用于添加与 case / end case 对和 default case / end default case 对一起使用的条件块。select 命令的表达式将提供与 case 语句中的表达式进行比较的数据。如果两个表达式的值相同,将执行 case / end case 块中的语句。 l样例程序代码,根据注释的输入选择不同的测量元素,注释的输入作为选择的依据,根据注释的输入选择不同的测量元素,pc-dmis 高级编程应用,41,编程语句: c

32、ase和end case,l case / end case 菜单选项用于在零件程序中添加条件块。如果 case 语句的表达式求得的值等于对应 select 命令的表达式,将执行 case 和 end case 命令之间的各项。否则,将跳过该语句块。case / end case 语句块必须紧接在 select 命令或上一个 case / end case 块的 end case 命令之后。此外,pc-dmis 不能在一个 case 语句上比较多个表达式。 l 样例程序代码同前所述select / end select 语句,pc-dmis 高级编程应用,42,编程语句:赋值,赋值菜单选项可显

33、示赋值对话框。此对话框用于给零件程序特征、尺寸或坐标系的变量或数据元素赋值,点击“赋自”可以进入下图所示函数编辑器, 实现形式的赋值,pc-dmis 高级编程应用,43,编程语句:读取特征的参数,l 测量值赋值语句的应用 l样例程序代码,测定值标示为.x,.y,.z,.xyz,pc-dmis 高级编程应用,44,编程语句:读取特征的参数,l 理论值赋值语句的应用 l样例程序代码,理论值标示为.tx,.ty,.tz,pc-dmis 高级编程应用,45,编程语句:读取特征的参数,l 直径值赋值语句的应用 l样例程序代码,直径值标示为.diam,pc-dmis 高级编程应用,46,编程语句:读取形位

34、公差,l 偏差值赋值语句的应用 l 样例程序代码,偏差值标示为.dev,pc-dmis 高级编程应用,47,编程语句:角度,l角度值赋值语句的应用 l样例程序代码,角度值标示为.angle,pc-dmis 高级编程应用,48,编程语句:计算距离,l距离值赋值语句的应用 l样例程序代码,特征3维距离值标示为函数dist3d(,pc-dmis 高级编程应用,49,编程语句:数组,l数组的应用 pc-dmis中有三种类型的数组:特征数组、触测点数组、变量数组。 特征数组: 常见于在选环中测量的数据,例如在一个循环中测量“circle1”20次,现在需要用到第3次的测量结果,可以用下面的语句实现: 赋

35、值/v1 = circle13.x 这个语句的含义是把circle1的第3次测量的x值赋值给变量v1。 触测点数组: pc-dmis通常把一个元素的触测点作为一个数组,如果需要得到特征的某一个触测点的数据,可以使用下面的语句实现: 赋值/v2 = circle2.hit1.xyz 这个语句的含义是把circle2的第一个触测点的xyz赋值给变量v2,pc-dmis 高级编程应用,50,编程语句:数组,变量数组: 样例程序代码,数组赋值为函数array(,数组的赋值语句,数组元素的引用,pc-dmis 高级编程应用,51,编程语句:注释,l注释语句的应用 l样例程序代码,注释的类型:提示、说明、

36、输入等,利用注释输入值,输入注释的引用,pc-dmis 高级编程应用,52,编程语句:子程序,l 子程序的应用 子程序选项用于从当前文件(或外部文件)中访问零件程序命令,并重复使用这些命令。pc-dmis 允许在主程序和子程序间传递自变量。自变量和嵌套子程序的数目仅受到可用内存量的限制。外部子程序无法从主零件程序访问特征、变量或坐标系,只允许传递必需的数据。 子程序定义和调用 要使用子程序,必须先定义子程序。在定义时,需要定义子程序名称、传递变量。 调用时,需要选择相应的子程序及传递变量,pc-dmis 高级编程应用,53,编程语句:子程序,l程序代码,pc-dmis 高级编程应用,54,第4

37、章:应用实例(i):齿槽,检测要求: 1.测量齿根圆、齿顶圆、直径。 2.测量测量齿槽分度误差。 检测要领 1.建立pcs时要用端面和两孔连线; 2.评价每齿分度时,需要求相邻两齿分度偏差,pc-dmis 高级编程应用,55,i.齿槽:程序,date=09/10/04 time=16:14:29 零件名:sample1 修订号: 序号: 统计计数:1 startup =建坐标系/开始,回调:, list= 是 建坐标系/终止 模式/手动 加载测头/ww 测尖/t1a0b0, 柱测尖 ijk=0, 0, 1, 角度=0 格式/文本,选项,标题,符号, ;测定值, , , , , , 注释/运算符

38、,measure the top plane! pln1 =特征/平面,直角 理论值/361.203,-387.648,-559.492,0.001,-0.001,0.999999 实际值/224.44,283.854,-717.738,-0.0017,-0.001,0.999997 测定/平面,7 终止测量/ a0 =建坐标系/开始,回调:startup, list= 是 建坐标系/找平,z 正,pln1 建坐标系/终止 模式/手动 a2 =建坐标系/开始,回调:, list= 是 建坐标系/平移,z 轴,pln1 建坐标系/终止 注释/运算符,measure the top circle!

39、 cir11 =特征/圆,直角,内,最小二乘方 理论值/362.085,-408.194,-4.67,0.0005359, -0.0012611,0.9999991,120.036 实际值/232.62,304.288,-3.7,0,0,1,120.04 测定/圆,4,工作平面 终止测量,pc-dmis 高级编程应用,56,a1 =建坐标系/开始,回调:a2, list= 是 建坐标系/平移,x 轴,cir11 建坐标系/平移,y 轴,cir11 建坐标系/终止 注释/运算符,please take a hit on the top circle! 移动/点,-3.677,-22.909,17

40、.48 注释/运算符,please take a hit on the top circle! 移动/点,-3.677,-22.909,17.48 pnt1 =特征/点,直角 理论值/-4.735,59.822,-4.667,0,-1,0 实际值/-6.311,59.686,-3.699,0,-1,0 测定/点,1 终止测量/ a3 =建坐标系/开始,回调:a1, list= 是 建坐标系/旋转圆,y 正,至,cir11,and,pnt1,关于,z 正 建坐标系/终止 模式/dcc cir_top =自动/圆, 显示所有参数=否, 显示触测=否 理论值/0,0,-4.5,0,0,1,120 实

41、际值/0.005,0.008,-4.5,0,0,1,120.036 目标值/0,0,-4.5,0,0,1 格式/文本,选项,标题,符号, ;测定值,标称值,公差,偏差,超差, , 尺寸 loc1= 圆 的位置cir_top 单位=毫米 ,$ 图示=关 文本=关 乘数=1.00 输出=两者 轴 测定 标称值 正公差 负公差 偏差 超差 d 120.036 120.000 0.100 0.000 0.036 0.000 -#- 终止尺寸 loc1 模式/手动 注释/运算符,take a hit on the root circle! pnt2 =特征/点,直角 理论值/4.082,61.824,-

42、2.348,0,-1,0 实际值/4.088,61.83,-1.423,0,-1,0 测定/点,1 终止测量,插入注释,i.齿槽:程序,pc-dmis 高级编程应用,57,a4 =建坐标系/开始,回调:a3, list= 是 建坐标系/旋转圆,y 正,至,cir11,and,pnt2,关于,z 正 建坐标系/终止 模式/dcc cir_root =自动/圆, 显示所有参数=否, 显示触测=否 理论值/0,0,-2.3,0,0,1,124 实际值/-0.007,-0.03,-2.3,0,0,1,123.991 目标值/0,0,-2.3,0,0,1 尺寸 loc2= 圆 的位置cir_root 单

43、位=毫米 ,$ 图示=关 文本=关 乘数=1.00 输出=两者 轴 测定 标称值 正公差 负公差 偏差 超差 d 123.991 124.000 0.100 0.000 -0.009 0.009 z -3.050 -3.000 0.100 0.000 -0.050 0.050 - 终止尺寸 loc3,i.齿槽:程序,pc-dmis 高级编程应用,58,赋值/ang = loc3.pa.meas pnt4 =特征/点,直角 理论值/0,0,0,0,0,1 实际值/0,0,0,0,0,1 构造/点,原点 lin1 =特征/直线,直角,非定界 理论值/0,0,0,-0.0187477,0.99982

44、42,0 实际值/0,0,0,-0.0229456,0.9997367,0 构造/直线,最佳拟合,2d,pnt4,pnt3, a5 =建坐标系/开始,回调:a4, list= 是 建坐标系/旋转,x 正,至,lin1,关于,z 正 建坐标系/终止 赋值/vx = cross(mpoint(lin1.i,lin1.j,lin1.k),mpoint(0,0,1) 注释/文档,#! 注释/运算符,start from here! c1 =注释/输入,please input the number of slots! 赋值/num1 = c1.input 逼近距离/ 0.5 回退/ 0.5 赋值/dz

45、 = 0 赋值/pa1 = 0 赋值/pa11 = 0 赋值/pr1 = 60.70 移动/点,60.7,0,15 fptr =文件/打开,c:1.txt,写入 v1 =循环/开始, 标识 = 是, 编号 = num1, 开始 = 1, 跳过 = , 偏置: x 轴 = 0, y 轴 = 0, z 轴 = 0, 角度 = 0,利用函数构造器中的差乘构造矢量,赋值给vx,将注释的输入值赋给变量num,打开文件以写入,循环开始,i.齿槽:程序,pc-dmis 高级编程应用,59,pnt =自动/曲面点, 显示所有参数=否 理论值/pr1,pa1,-3-dz,vx.i,vx.j,vx.k 实际值/6

46、0.7,0.007,-3.003,-0.0242157,-0.9798879,0.1980742 目标值/pr1,pa1,-3-dz,vx.i,vx.j,vx.k 赋值/zz1 = pnt.z 赋值/zz2 = -3 赋值/dz = zz1-zz2 repeat =标号/ pnt_t =自动/矢量点, 显示所有参数=否 理论值/pr1,pa1,-3-dz,pnt.i,pnt.j,pnt.k 实际值/60.7,0.009,-2.999,-0.0241996,-0.9798837,0.1980967 目标值/pr1,pa1,-3-dz,pnt.i,pnt.j,pnt.k 赋值/zz1 = pnt_

47、t.z 赋值/zz2 = -3 赋值/dz = zz1-zz2 if/abs(dz)=0.01 转到/repeat end_if/ else/ 尺寸 loc3= 点 的位置pnt_t 单位=毫米 ,$ 图示=关 文本=关 乘数=1.00 输出=两者 轴 测定 标称值 正公差 负公差 偏差 超差 pr 60.700 60.900 0.100 0.000 -0.200 0.200 z -2.999 -2.991 0.100 0.000 -0.008 0.008 - 终止尺寸 loc3,将点pnt的测定z值赋给变量,指定标号,设定跳转条件,满足条件的情况下跳转到指定标号,在不满足条件下执行else中

48、的语句,i.齿槽:程序,pc-dmis 高级编程应用,60,赋值/ang = loc3.pa.meas 移动/点,pnt.x,pnt.y,15 文件/写入行,fptr,ang 赋值/pa1 = pa1+9 赋值/pa11 = ang+8.9 移动/点,pr1*cos(deg2rad(pa1),pr1*sin(deg2rad(pa1),15 lin2 =特征/直线,直角,非定界 理论值/0,0,0,0.8910345,0.4539357,0 实际值/0,0,0,1,0.0001583,0 构造/直线,最佳拟合,2d,pnt4,pnt_t, 赋值/vx = cross(mpoint(lin2.i,

49、lin2.j,lin2.k),mpoint(0,0,1) end_else/ 循环/终止 文件/关闭,fptr 注释/文档,calculate the angle offsets# 赋值/v11 = array(41) 赋值/v4 = 1 fptr1 =文件/打开,c:2.txt,读取 do/ v1 =文件/读取行,fptr1,line1 赋值/v11v4 = line1 赋值/v4 = v4+1 until/v1=“eof“ 文件/关闭,fptr1 赋值/v5 = 1 赋值/v8 = 1,在打开的文件中写入,条件结束,定义数组,元素 数目为41,打开文件以读取,do循环,逐行读取,赋值给变量

50、line1,/当读取行为空时循环终止,i.齿槽:程序,pc-dmis 高级编程应用,61,fptr =文件/打开,c:jeanang.txt,写入 v2 =循环/开始, 标识 = 是, 编号 = 40, 开始 = 1, 跳过 = , 偏置: x 轴 = 0, y 轴 = 0, z 轴 = 0, 角度 = 0 赋值/v6 = v11v5+1-v11v5 赋值/v7 = (v6-9)*60 赋值/v5 = v5+1 文件/写入行,fptr,angle+v8+=+v7 赋值/v8 = v8+1 循环/终止 文件/关闭,fptr c2 =注释/输入,请输入h1! 赋值/h1 = c2.input 赋值

51、/h2 = 15 while/h1h2 pnt5 =自动/矢量点, 显示所有参数=否 理论值/-744.673,2,245.004,-0.9982571,0,0.0590152 实际值/-744.673,2,245.004,-0.9982571,0,0.0590152 目标值/-744.673,2,245.004,-0.9982571,0,0.0590152 赋值/h2 = h2+1 end_while/ end of measurement for pn= sample1 dwg=#hjhj sn=#jhjh total # of meas =0 # out of tol =0 # of h

52、ours =00:00:00,使用while语句进行条件循环,i.齿槽:程序,pc-dmis 高级编程应用,62,ii. 无规则排列特征的测量,在雷达天线罩上分割为很多无规则的矩形腔,每个腔中加工了数目、大小不等的圆形槽,并且每个圆形槽对其所在腔的真实偏心距也不相等。提供数据有:腔的文本文件包括中心坐标、长宽、远端一边的中心坐标;槽的文本文件包括中心坐标、长宽、理论偏心距,pc-dmis 高级编程应用,63,ii. 无规则排列特征的测量:分析,测量要求: 求每个槽相对其所在的腔的实测中心的偏心距。 测量思路: 读取一个腔的位置,测量腔及远端一点;读取一个槽的位置,首先判断是否在刚才所测腔中;是

53、,则测量并求实际偏心距;否,不测量,读下一个腔的位置并进行测量,再测量刚才读入的槽;然后在读下一个槽的位置直至测量评价完最后一个槽的偏心距,程序结束。 测量难点1: 如何判断槽是否在此腔中。-读取槽位置后判断槽的中心和腔的远端测量点的坐标值,如果绝对值前者大于后者,则不在此腔中;反之,在。 测量难点2: 判断出已读入的槽不在此腔中,测量下一个腔后,要先测量已读入的槽,然后再读入下一个槽的位置。-在每个读槽数据的前面加一个变量aa,当aa=1时读数据,否则就跳转到测量;同时,在判断当所读槽位置不在当前腔中时,将变量赋值aa=0,即可,pc-dmis 高级编程应用,64,ii. 无规则排列特征的测

54、量:流程图,pc-dmis 高级编程应用,65,ii. 无规则排列特征的测量:程序,date=2004-3-21 time=16:20:46 part name : 09 rev number : ser number : stats count : 1 startup =alignment/start,recall:, list= yes alignment/end mode/manual format/text,options,headings,symbols, ;nom,meas,tol,dev, , loadprobe/lyzh tip/t1a0b0, shankijk=0, 0, 1

55、, angle=0 mode/dcc fptr =file/open,d:492fq.txt,read fptr1 =file/open,d:492fo.txt,read fptr2 =file/open,d:.txt,read fptr3 =file/open,d:.txt,read assign/aa = 1 assign/than = 11.3 read_f =label/ v1=file/readline,fptr,fid+“,”+fx+“,”+fy+“,”+fl+“,”+fw+“,”+pox+“,”+poy if/pox0 assign/po_i = -1 end_if/ else/

56、 assign/po_i = 1 end_else,打开文件以读取,从文件中读取行以赋值给变量,if语句条件判断,pc-dmis 高级编程应用,66,ii. 无规则排列特征的测量:程序,slot1 =auto/square slot, showhits=no, showallparams=no theo/fx,fy,0,0,0,1,fw,fl,1,0,0 actl/0,0,0,0,0,1,0,0,1,0,0 targ/fx,fy,0,0,0,1,1,0,0 theo_thickness = 0, rect, in ,$ auto move = yes, distance = 20, rmeas

57、 = none, read pos = no, find hole = no, remeasure = no ,$ init = 3, perm = 3, spacer = 0, depth = 3.5 ,$ width minmax = norm, radius = 0 point1 =auto/vector point, showhits=no, showallparams=yes theo/pox,poy,3.5,po_i,0,0 actl/-2.5,0,6,1,0,0 targ/pox,poy,3.5,po_i,0,0 theo_thickness = 0, rect, snap =

58、no ,$ auto move = yes, distance = 20 assign/jpox = abs(point1.x) assign/sy_m = slot1.y if_goto/aajpox or ry_othan assign/aa = 0 goto/read_f end_if/ measure_s =label,将前述赋值作为理论值,利用求绝对值的函数赋值,pc-dmis 高级编程应用,67,ii. 无规则排列特征的测量:程序,slot =auto/round slot, showhits=no, showallparams=no theo/rx,ry_t,0,0,0,1,rw

59、,rl,1,0,0,1 actl/0,0,0,0,0,1,0,0,1,0,0,1 targ/rx,ry_t,0,0,0,1,1,0,0 assign/ry_m = slot.y assign/offset = ry_m-sy_m assign/v8 = offset-tof file/writeline,fptr2,id+, +tof+, +offset+, +v8 if/abs(v8)0.02 file/writeline,fptr3,id+, +tof+, +offset+, +v8 end_if/ assign/aa = 1 assign/than = ry_o comment/rept,id+ +tof+ +offset+ +dev ,id+_+tof+_+offset+_+v8 if/id=724 goto/end end_if/ goto/read_r end =label/ esnd of measurement for pn=09 dwg= sn= total # of meas =0 # out of tol =0 # of hours =00:00:00,变量赋为理论值,条件判断,在报告中显示变量,pc-dmis 高级编程应用,68,iii.轴承内圈,工件名称:轴承内圈 检测要求: 测量端面直径 内孔与端面的垂直度 滚道圆度 大小端面平

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论