本发明涉及零部件制造装配检验领域,具体涉及一种基于CATIA和激光跟踪仪的部件设计与检验一体化方法。

背景技术:

机械产品的生产过程一般分为设计、零件制造、组部件装配和检验四个部分,其中检验贯穿产品整个生产过程,直接影响生产进度和产品质量。二十世纪八十年代以来,计算机辅助设计和制造(CAD/CAM)技术快速发展,由此发展出来的数字化设计仿真技术、数字化检验技术、数字化信息处理技术在机械产品生产过程得到越来越广泛的应用。

目前国内外针对大尺寸、复杂外形、高精度要求的零部件外形尺寸检验,大都采用数字化检验技术。数字化检验技术包括数字化检验设备和数字化检验软件两部分,主要的检验设备有激光跟踪仪、三坐标测量机等,检验软件则以美国New River Kinematics 公司的Spatial Analyzer(SA)为主。通常的检验方法是将CATIA、UG等设计软件中的三维模型转换成国际标准格式igs或stl,再导入SA等检验软件中,得到被测对象的理论尺寸及形位公差要求;另一方面利用检验设备对被测对象进行实际测量,得到实际测量数据,通过对实际测量数据和理论数据进行比较,检测产品是否合格。在这个过程中,模型转换这一步可能存在设计数据丢失,从而导致检验结果比较失准、检验效率降低等问题。另外,SA等检验软件为了防止被盗版,在使用时需在电脑插入配置的加密狗Key,无法适用于特定场合。

技术实现要素:

发明目的:基于以上不足,本发明提出一种新的数字化检验方法,该方法结合当前主流的三维设计软件CATIA和数字化检验设备激光跟踪仪,通过CAA(Component Application Architecture)开发平台和TIC/IP通信技术,在CATIA软件中增加相应的检验模块,实现了设计和检验一体化。

技术方案:本发明所述的基于CATIA和激光跟踪仪的部件设计与检验一体化方法,包括以下步骤:

1)连接建立:基于TCP/IP协议,在激光跟踪仪和CATIA软件之间建立连接,其中以运行CATIA软件的计算机作为客户端,激光跟踪仪作为服务器端,构建C/S通信模型。

2)环境设置:在CATIA软件中对激光跟踪仪进行基本设置和测量设置,基本设置具体包括对长度、温度、湿度、气压的单位设置以及对温度、湿度、气压的环境参数设置,测量设置包括坐标类型的选择、测量模式的选择和靶球规格的选择。并在CATIA 中针对设计模型设置基准点。

3)实际测量:在被检测对象四周布置基准点孔,利用激光跟踪仪测量被测对象的基准点孔坐标,获得激光跟踪仪坐标系下的三维坐标值。

4)坐标系转换:利用最小二乘关系,求解激光跟踪仪坐标系和被测对象设计坐标系之间的转换关系,将激光跟踪仪坐标系统一到被测对象坐标系下。

5)目标坐标搜索:驱动激光跟踪仪的激光瞄准到被测点的理论坐标上,由于制造或装配误差,被测点实际坐标与理论坐标不一致,采取以理论坐标为中心,由大到小螺旋式收缩的自动搜索。

以上步骤实现了被测对象在设计系统坐标系下的坐标确定,此外,本发明的方法还提供针对被测对象的定制化检测,包括位置检测、直线度检测和型值偏差检测。

有益效果:本发明的方法解决了目前因三维设计模型格式转换带来的数据丢失、效率降低、检测失准的问题,构建了基于CATIA三维设计软件的数字化检测模块,能够实现设计检测一体化,是全三维设计制造检测中的重要一环。本发明还提供了一种定制开发方法,脱离通用性的商业检测软件,操作更加简单便捷,适用性更广。同时,本发明方法使用了激光跟踪仪自动寻点测量,相较于传统的手持靶球将光线引导至被测点位置,该方法减少了人工操作,提高了测量效率。

附图说明

图1是本发明的方法总体流程图;

图2是激光跟踪仪初始化流程图;

图3是激光跟踪仪操作对话框界面;

图4是坐标系转换示意图;

图5是激光跟踪仪坐标系转换至被测对象设计坐标系的流程图;

图6是自动寻点原理示意图;

图7是自动测量流程图。

具体实施方式

下面结合附图对本发明的技术方案作进一步说明。

本发明采用的CATIA软件是法国达索(Dassault)公司的CAD/CAM/CAE/PDM一体化软件,包含零件设计、部件装配、仿真、数字加工等多个模块,是航空等企业广泛使用的CAD软件之一。所述的CAA是达索产品的扩展和用户定制开发平台,可以进行专业的二次开发,实现与原来的CATIA系统的无缝结合,有利于用户的操作和集成。本发明采用的激光跟踪仪是一种基于光干涉测距和编码器测角原理的空间三维坐标测量的数字化检测设备,型号是Leica AT 900,其测量测量范围达160m,测量精度达到 15μm+5μm/m,广泛应用于大尺寸、高精度零部件的检测。本发明利用CAA开发平台搭建CATIA二次开发环境,在CATIA系统中添加“Measurement”模块,该模块由仪器连接、参数设置、坐标转换、自动测量、位置检测、直线度检测、型值偏差检测等单元组成。CATIA软件通过仪器连接单元建立与激光跟踪仪的通信,并以此为基础,实现对激光跟踪仪的参数设置、坐标系装换、测量数据的获取,检测结果分析。

图1示出了本发明的方法的总体流程图。包括以下步骤:1)连接建立:利用windows 套接字编程技术,基于TCP/IP协议,在激光跟踪仪和CATIA软件之间建立连接,其中以运行CATIA软件的计算机作为客户端,激光跟踪仪作为服务器端,构建C/S通信模型;2)环境设置:在CATIA软件中设置激光跟踪仪的基本参数,包括计量单位和环境参数,并针对设计模型设置基准点;3)实际测量:在被检测对象四周布置基准点孔,利用激光跟踪仪测量被测对象的基准点孔坐标,获得激光跟踪仪坐标系下的三维坐标值;4)坐标系转换:利用最小二乘关系,求解激光跟踪仪坐标系和被测对象设计坐标系之间的转换关系,将激光跟踪仪坐标系统一到被测对象坐标系下;5)目标坐标搜索:驱动激光跟踪仪的激光瞄准到被测点的理论坐标上,由于制造或装配误差,被测点实际坐标与理论坐标不一致,采取以理论坐标为中心,由大到小螺旋式收缩的自动搜索。下面详述具体实现过程。

本发明的方法中将激光跟踪仪视为服务器,运行CATIA的计算机视为客户端,利用Leica激光跟踪仪的二次开发包TPI(Tracker Programming Interface),链接 ES_C_API_DEF.h和ES_CPP_API_DEF.h接口头文件,利用CESAPICommand类发送命令到跟踪仪服务器,CESAPIReceive类接收和分析来自跟踪仪的反馈信息,实现与激光跟踪仪的通信,构建C/S软件体系结构。

打开CAA开发平台,在CATIA软件系统中插入“Measurement”模块,为了能够直观的模拟和实测数字化对接过程,首先调用 CATIProduct_var::Add-Product(CAIProduct_var iProduct,const CATIContainer_var&iCont =NULL_var)函数加载激光跟踪仪模型,并设置激光跟踪仪模型在“Measurement”模块下的初始位置为原点。在该模块下插入激光跟踪仪对话框,以界面交互形式对激光跟踪仪进行参数设置和初始化。图2示出了激光跟踪仪的初始化流程,图3所示为激光跟踪仪对话框界面截图。激光跟踪仪的基本参数设置包括对长度、温度、湿度、气压的单位设置以及对温度、湿度、气压的环境参数设置。激光跟踪仪的测量设置包括坐标类型的选择、测量模式的选择和靶球规格的选择。各项参数设置完成后,点击“跟踪仪初始化”使参数生效,接下来就可以实施测量。本发明的方法不仅提供了图3中示出的自动测量功能,即实现了被测对象在设计系统坐标系下的坐标确定,此外还提供针对被测对象的定制化检测,包括位置检测、直线度检测和型值偏差检测,这些检测功能实现对被测对象更多样的检测手段。

根据CATIA软件系统中针对设计模型设置的基准点,在被检测对象四周布置一些基准点孔,这些基准点孔通常设计加工在被测零件上或部件安装的型架上,并且具备一定的位置度。利用激光跟踪仪测量基准点孔坐标,获得激光跟踪仪坐标系下的三维坐标值,利用最小二乘关系,求解激光跟踪仪坐标系和被测对象设计坐标系之间的转换关系。图4示出了坐标系转换示意图。激光跟踪仪坐标系和被测对象设计坐标系之间的转换是指空间一点P,在激光跟踪仪坐标系O-XYZ坐标系下的三维坐标值是[x y z],在被测对象设计坐标系O’-XYZ坐标下的三维坐标值是[x’y’z’]。通过如下步骤可将点P由坐标系 O-XYZ转换到坐标系O’-XYZ:①先将坐标系O-XYZ的原点O沿X、Y、Z轴分别平移Δx、Δy、Δz与O’-XYZ的坐标系原点O’相重合;②将坐标系O-XYZ的X、Y、Z轴分别旋转α、β、γ角度与O’-XYZ的三个轴X'、Y'、Z'重合;③如果两个坐标系的比例不一致,将O-XYZ坐标系按两坐标系的比例尺度K进行缩放,最终使P点坐标在两坐标系下的坐标值相同。

上述过程用数学公式表述为:[x' y' z']T=[Δx Δy Δz]T+KR[x y z]T,其中R为空间旋转矩阵:

在该方程中包含七个未知参数:Δx、Δy、Δz、α、β、γ和缩放因子K,需要至少三个基准点建立七个方程求解上述方程。在本发明中缩放因子K取值为1,在被测对象上设置6个基准点。具体求解过程如下。

设基准点孔的设计坐标为Pi[xPi yPi zPi],利用激光跟踪仪测量的坐标为 Ji[xJiyJi zJi]。假设激光跟踪仪坐标系分别绕X、Y、Z轴旋转α、β、γ角度,沿X、Y、 Z轴分别平移Δx、Δy、Δz后与设计坐标系重合,那么基准点孔在两坐标系下的坐标存在如下的坐标转化关系:

PiT=RJiT+T(i=1,2,...6) (1)

T是位移向量[Δx Δy Δz]T。

利用最小二乘法建立的目标函数:

式(2)中X=[α β γ Δx Δy Δz]。将6个基准点的坐标值代入式(2),将式(2) 简写为:

式(3)中的含义如下:

利用牛顿迭代法,求目标函数F(X)的最小值,迭代公式为:

最后求得理论坐标系和测量坐标系之间的转换矩阵R和T。图5示出了软件实现层面上激光跟踪仪坐标系转换至被测对象设计坐标系的流程。

图6是驱动激光跟踪仪自动寻找被测目标点原理示意图,由于制造或装配误差,被测点实际坐标与理论坐标不一致,采取以理论坐标为中心,由大到小螺旋式收缩的自动搜索。图7示出了自动测量的流程,根据被测点理论坐标设置搜索范围和搜索时间,然后驱动激光跟踪仪自动寻找被测点,如果在指定的搜索范围和搜索时间内找到目标点,则输出被测点实际坐标值,否则返回失败消息。在软件实现上,编写函数SetSearchParams (SearchParamsDataT searchParams)设置自动测量参数,其中SearchParamsDataT是一个数据结构,它包括搜索半径(dSearchRadius)和限制时间(lTimeOut),然后再运用 GoPosition()函数驱动激光跟踪仪激光到达理论位置,运用FindReflector()函数找寻靶球中心,若找寻成功,再调用StartMeasure()函数实施测量,获取实际点坐标信息,否则自动测量失败。

catia直线测距怎么调出来_基于CATIA和激光跟踪仪的部件设计检验一体化方法与流程...相关推荐

  1. catia直线测距怎么调出来_为户外远程测距而生

    倍率是容易误导消费者的参数,刚了解望远镜的朋友以为倍率越高就能看得越清越远,其实不然,倍率越高,成像就越模糊变暗,高倍带来的抖动也会大增,一个清晰稳定的成像才是专业望远镜所具备的. AIKE的这款激光 ...

  2. 打开catia界面全是白色怎么办_基于CATIA的圆柱螺旋拉伸弹簧有限元分析(文末有“彩带”)...

    弹簧是一种利用弹性来工作的机械零件.用弹性材料制成的零件在外力作用下发生形变,除去外力后又恢复原状.从事机械设计的朋友常常需要设计弹簧,关于弹簧的相关知识大家可以查阅机械设计手册.今天我给大家分享一篇 ...

  3. java抢单功能_基于消息队列的高并发抢单功能实现方法与流程

    本发明涉及嵌入式软件中间件,具体涉及一种基于消息队列的高并发抢单功能实现方法. 背景技术: 中间件是一种独立的系统软件或服务程序,分布式应用系统借助这种软件在不同的技术之间共享资源,管理计算资源和网络 ...

  4. 大数据催生智慧园区_基于人工智能的智慧园区异构设备统一接入方法与流程

    [技术领域] 本发明涉及智慧园区建设技术领域,尤其涉及基于人工智能的智慧园区异构设备统一接入方法. 背景技术: 智慧园区是一种以互联网.物联网.云计算.大数据等先进信息技术为支撑,在信息服务等各个环节 ...

  5. C++课程设计实训_基于多态书籍信息管理系统的设计与实现、附源码、有过程截图

    C++课程设计实训_基于多态书籍信息管理系统的设计与实现.附源码,有过程截图 书籍信息管理系统的设计与实现(基于多态) 学生姓名: 学 号: 指导老师: 所 在 系: 专 业: 班 级: C++课程设 ...

  6. 无人机寻迹要两个单片机吗_基于OpenMV的循迹无人机设计

    基于OpenMV的循迹无人机设计 发表时间:2020-08-24 基于OpenMV机器视觉模块进行目标识别算法的研究.利用图像的滤波.二值化等算法对摄像头采集的图像进行预处理;利用边缘检测和形状识别算 ...

  7. qt制作一个画板_基于Qt的画图板的设计与实现(含录像)

    基于Qt的画图板的设计与实现(含录像)(任务书,开题报告,外文翻译,毕业论文20000字,程序代码,答辩PPT,答辩视频录像) 摘要 本文的主要内容是记述画图板的设计与实现课程设计中的一些关键技术和辅 ...

  8. python版植物大战僵尸源码_基于python的植物大战僵尸游戏设计与实现.docx

    湖南理工学院毕业设计(论文) PAGE PAGE 1 学 号 毕业设计(论文) 题目:基于python的植物大战僵尸游戏设计与实现 作 者 届 别 届 院 别 信息与通信工程学院 专 业 信息工程 指 ...

  9. jsp教学网站百度文库_基于JSP的精品课程网站设计与实现

    龙源期刊网 http://www.qikan.com.cn 基于 JSP 的精品课程网站设计与实现 作者:窦立君 张金凤 吴尧 来源:<电脑知识与技术> 2016 年第 28 期 摘要:该 ...

最新文章

  1. 面试官:给我说一下 Spring MVC 拦截器的原理?
  2. AI领域最最最稀缺的人才——AI架构师
  3. python怎么判断是不是汉字危机_谈 Python 的中文编码处理
  4. python项目实战干货_干货 | 这4个Python实战项目,让你瞬间读懂Python!
  5. js(Dom+Bom)第四天(1)
  6. 关于微信小程序swiper的问题
  7. 在.net中序列化读写xml方法的总结
  8. Windows电脑上不错的几款图片编辑软件
  9. DevOps Master凤凰项目沙盘总结:大美的DevOps总结
  10. 数据库 sqlserver实现插入随机姓名性别民族
  11. 【计算机组成原理】:计算机系统的组成和层次
  12. php 日期format不要零_DateFormat PHP Class (php 处置日期)
  13. 超强锁SuperPro
  14. layer常用功能-子页面关闭当前窗口-执行子页面方法-方法回调
  15. 【报告分享】 2021年天猫618商务合作方案-天猫x阿里妈妈(附下载)
  16. iOS开发之去除图片白色背景
  17. 【c++的hash表和 java的hash表】
  18. 2020年元旦上海计算机类会议,CARC2020年元旦晚会
  19. 最新版SwitchHosts下载安装教程
  20. 微信小程序--开发者工具

热门文章

  1. ChatGPT 助力智能文案生成
  2. 【TensorFlow】Mnist数据集 - RNN
  3. 图片去除水印,Python代码
  4. 企立方:拼多多拼了6年, 得到了8亿用户
  5. 不是太阳能充电器没有效果,是您不会选购也不会用而已
  6. php 输入汉字,查出对应的拼音
  7. 斯里兰卡地理位置极佳,为什么却发展不起来?
  8. Coordinate
  9. ghost linux磁盘 出错,关于linux的磁盘ghost的问题,高手请进
  10. 小米2S MI2S eclipse adb连接不上手机,解决办法