基于CATIA_次开发在逆向优化中的应用技术
- 格式:doc
- 大小:24.50 KB
- 文档页数:4
基于CATIA_次开发在逆向优化中的应用技术
摘要:本文主要介绍基于Visual Basic集成开发环境,利用模拟退火算法,应用CATIA二次开发的优化技术在逆向过程中确定曲面轴心的方法。并和以往的方法进行对比,表明所提出方法能更加快速准确的确定曲面轴心。
关键词:逆向工程 CATIA 二次开发
CATIA是CAD/CAE/CAM一体化软件,并具有强大的逆向设计应用功能。可以快速、方便地对测量云点进行处理,勾勒出零件轮廓特征线并拟合出满足一定条件要求的曲面,在此基础上利用曲面编辑功能对其进行编辑和光顺处理,提高了曲面重构效率;能实现一个曲面到另一个曲面及一个曲面到多个曲面的匹配,并能达到匹配后曲面间曲率连续;提供多曲面整体编辑功能(一次编辑多个曲面并保持曲面间连续);采用混合参数几何方式建模,适于设计重用[1]。
1 确定轴心
本节利用VB(Visual Basic)程序进行CATIA二次开发并应用模拟退火算法进行曲面与点云的拟合达到确定轴心的目的。
在CATIA中读取同样的点云数据,根据点云的形貌,利用“线框和曲线设计”这一模块中的命令构建出其大致形貌,这一过程中不需要知道其具体数据,只需曲面与点云大致契合即可。且要对所画曲面上的所有曲线进行约束。
由于所构建的曲面,其轴心是已知的,若能通过修改约束值,将所构建曲面与原点云拟合,则所构建曲面的轴心即为原二次曲面的轴心。
match_array = Split(tempString, “ “, -1, vbTextCompare)
Dim coord As New Collection
For j = LBound(match_array) To UBound(match_array)
If Len(match_array(j)) > 0
Then
coord.Add (match_array(j))
End If
Next j
录入构建的结构(核心程序段):
For i=1 To activeOpenBody.HybridShapes.Count
Set currentShape = activeOpenBody.HybridShapes.Item(i)
pointName = & “\” &
If i = 1 Then
formulaString = “distance(`” & pointName & “`,`” &
targetObjectName & “`)”
Else
formulaString = formulaString & “ + distance(`” &
pointName & “`,`”&targetObjectName & “`)”
End If
Next i
经过模拟退火算法优化后,我们得到与点云拟合度较高的曲面。此时曲面的轴心即为所求点云的轴心,其误差最小值为0.016mm,最大值为0.188mm。
2 结语
我们用传统的三点定圆法得到误差的最大值为0.663,最小值为0.085。明显要大过运用模拟退火算法的误差且由于传统的方法是手工操作,操作人员的经验,取点时的选择及所取点云的质量对最终结果的影响很大,所以造成很高的误差不确定性;而利用模拟退火算法寻找轴心则是基于产品工程优化模块,是通过计算机利用模拟退火算法自动运算得出最优解,基本不需要手动寻找,可靠性较高。在实际应用中,根据点云的具体情况,也可应用此方法达到快速拟合曲面的作用。
参考文献
[1]胡添元,余雄庆.基于CATIA二次开发的飞翼外形参数化建模[J].飞机设计, 2007(6).
[2]龙峰,樊留群.CATIA V5二次开发技术探讨[J].淮阴工学院学报,2005(5).