本发明涉及零部件制造装配检验领域,具体涉及一种基于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()函数实施测量,获取实际点坐标信息,否则自动测量失败。