APP下载

基于CAD模型的扫描测量机器人路径规划方法研究

2018-03-30秦国辉

自动化与仪表 2018年1期
关键词:多边形曲面平面

秦国辉,张 勇

(合肥工业大学 仪器科学与光电工程学院,合肥 230009)

现代工业产品的设计,对复杂曲面的应用越来越广泛。在汽车、航空、航天等产品的设计中,复杂曲面的应用更加普遍。然而,对于复杂曲面的检测,传统方法往往依赖人工操作检测工具,其精度难以得到保证。而且测量路径难以重复,还有可能部分区域检测不到,而另一部分存在数据冗余。近年来,随着激光扫描仪的精度和速度的提高,以及工业机器人技术的日趋成熟,利用工业机器人效率高、重复性好和激光扫描仪精度高等特点,将激光扫描仪安装在工业机器人上的测量方法得到了广泛应用。与传统方法相比,这种测量方法具有典型的效率高、精度高、重复性好等优点。在此,介绍了Open CASCADE三维软件平台;利用该平台实现了三维模型的导入和显示,给出了针对复杂曲面模型的路径文件;在机器人三维仿真软件中进行了模拟仿真。

1 OpenCASCADE简介

OpenCASCADE是一个开源的图形开发平台,来源于法国Matra Datavision公司[1]。它是一个面向对象的C++类库,主要包括6大基本类库:基础类库、模型数据类库、模型算法类库、可视化类库、数据交换类库以及应用框架类库。通过这些类库,OpenCASCADE可以提供二维和三维几何体的创建、模型显示和分析、数据交换等功能,可以用来快速开发二维和三维几何建模软件[2-4]。

OpenCASCADE技术可以用于包括CAD/CAM/CAE等方面的众多三维程序的开发,至今已经被许多领域的商业公司所采用。使用者可以根据研究需要有选择性的使用相关的库函数,可以避免花费大量精力用于底层开发。早期的开发中大多结合Visual C++6.0平台,开发出适合中小企业的简单的CAD/CAM系统。在此所研究的三维扫描测量机器人系统软件,其接口的开发采用OpenCASCADE 6.9.0和VS 2010平台。

2 系统体系结构

2.1 模型数据读取

工业上常见的三维模型数据格式有IGES,STEP,CGM,等。其中,IGES是产生最早、应用最广的数据标准,它以ASCII或二进制的形式进行存储图形信息,并可以在不同的CAD系统间进行信息交换[5]。本系统采用IGES格式的三维模型数据的读取方法,具体过程是:①导入CAD模型,系统将模型数据存储在TopDS_Shape类中;②将数据放入Top-Tools_HsequenceOfShape队列中,通过交互模块的形状类,将数据传输到交互对象中;③将数据存储在doc类中,并在View类中实现三维模型的显示。实际的IGES模型导入后的显示效果如图1所示。

图1 基于OpenCASCADE的曲面显示Fig.1 Surface display based on OpenCASCADE

2.2 曲面选取

OpenCASCADE的可视化模块主要提供了曲面的显示、选取、交互服务应用以及三维显示等功能,利用可视化模块中的交互服务应用可以实现曲面的选取。具体实现是通过AIS_InteractiveContext类,其中包含了以下几个重要的成员函数:

AIS_InteractiveContext::SetSelected, 将选择的曲面存入队列;

AIS_InteractiveContext::AddOrRemoveSellected,从队列中添加或移除已选择的实体;

AIS_InteractiveContext::HightSelected, 高亮显示已选择的实体;

AIS_InteractiveContext::ClearSelected,清空队列中已选择的实体。

通过AIS_InteractiveContext类实现曲面选取之后,还需要进行采样点的计算。

2.3 采样点计算

在采样点计算过程中用到2个重要算法,即deBoor算法和点在多边形内外的判别算法。

此外,《巴斯蒂安钢琴基础教程》中还有“练习指导”和演奏提示,帮助学习者掌握练习和演奏的方法,并提出问题让学生去寻找答案。同时,乐曲基本都配有歌词和伴奏,并且很早就加入表情记号和力度记号,帮助培养学生的音乐情感和表现力。还有一些其他的细节设计,例如,在目录部分提示教师给学生完成的乐曲打钩,以此来提高学生的成就感,等等。这些都体现出巴斯蒂安在编写时周密的考虑和用心。

2.3.1 deBoor算法

设参数 t固定在区间[tj,tj+1),k≤j≤n。k 次 B 样条曲线的求值算法[7]为

P(t)的值按式(1)递归 k-1 次求得。从几何意义上理解,即为从控制多边形Pj-k+1Pj-k+2Pj开始进行k-1层割角,结合式(2)可得如图2所示的几何结果:第r层割角是用割去角最后得到的割角点即为所求的P(t)。该算法采用割角法,计算简单、稳定。

图2 B样条曲线的DeBoor求值法算Fig.2 DeBoor evaluation algorithm of the B-spline curve

2.3.2 点在多边形内外判别算法

判断点在多边形内外有许多算法,典型的算法有环绕数法和射线法。这些算法在使用时有其应用范围,在此针对复杂曲面的研究,采用的算法利用了可见边的概念,其原理如图3所示。可见边就是过S点作任意一条射线与多边形P的边界求交,如果距离S点最近的交点不是多边形P的顶点,则该交点所在的边就是S点的可见边[6]。如图所示,PiPi+1就是点S的可见边,通过遍历多边形的每条边,来寻找多边形中相对于被判别点的可见边,可见边两端的顶点和被判别点构成一个三角形,最后通过判别该三角形的方向与多边形的方向是否一致,来判别点是否在多边形内部。

图3 可见边算法原理Fig.3 Principle of visible edge algorithm

2.3.3 采样点计算步骤

利用上述基础算法,采样点的计算便可以通过以下4步骤求出:

步骤1 首先计算NURUS曲面的等参线,并计算与等参线求交的一系列平面,再用等参线和平面求交,对得到的采样点筛选后即可得到需要的采样点;

步骤2 利用deBoor算法计算出等参线上的m个点和每个点的切向量,将该m个点和每个点处的切向量作为平面上的点和法矢,利用点法式公式,即可得到求交平面;

步骤4 计算曲面参数方向采样点处的切向量au,bv,曲面采样点处的法矢量即2个参数方向的切向量的叉乘积[7],公式为 n=au×bv。

3 扫描路径生成

3.1 生成扫描路径的条件

扫描路径的生成需要2个条件,即扫描位置和扫描方向。利用可视锥的性质,可以实现对采样点的扫描位置进行计算和分析[8]。

3.1.1 可视锥性质

若要获取曲面上一个被扫描点坐标,需要满足以下扫描约束条件[9]:

—视角,激光测头的发射光束和零件曲面上被扫描点处法矢的夹角α应该小于特定角度β,理想情况下α为0°。

—视场,被扫描点位于视场范围内。

—视深,被扫描点距离激光源的距离在一定范围内,即位于近视深和远视深之间。

以上约束条件如图4所示。还有一些其他条件,如无遮挡、无碰撞等。

图4 激光扫描约束条件Fig.4 Laser scanning constraints

将图4倒立过来观察。可以发现,位于圆锥体内的所有点都可以观察到顶点。如果锥的主角为2α,那么在锥内任意2个从锥顶点出发的矢量夹角≤2α。则锥轴和锥内任意矢量的夹角<α[10]。

3.1.2 扫描位置和方向计算

以采样点作为锥顶,采样点在曲面上的法矢为锥轴,近视深和远视深为锥高,形成锥角、锥顶和锥轴相同,锥高不同的2个椎体。用大锥体减去小椎体,得到的空间圆台就是激光测头可以扫描到该采样点的空间位置的集合。再用采样点所在平面与该圆台求交,得到空间等腰梯形。扫描位置如图5所示,工件表面的每一个采样点都有一个对应的等腰梯形,将位于同平面的采样点对应的等腰梯形依次布尔求交,便可算出测头的扫描位置。

图5 扫描位置示意Fig.5 Schematic view of thescanning position

3.2 扫描路径的生成

求出扫描位置以后,便可以得到扫描路径。对单个求交平面,利用zigzag路径算法产生扫描路径[11]。单个求交平面的扫描路径如图6所示,图6a中只有从点P1到P2这1条扫描线,图6b中有从点P3开始到点P4的3条扫描线,当单个求交平面上起点位置确定后,其zigzag路径和终点位置也随之确定。当有多个求交平面时,优先搜索各个求交平面中具有相同法矢的采样点,然后从当前求交平面的终点位置开始搜索其他求交平面中距离最近的采样点,依次连接采样点,便生成最终的扫描路径。所生成的扫描路径如图7所示。

图6 单个求交平面的扫描路径Fig.6 Scanning path of single intersecting plane

图7 生成的扫描路径Fig.7 Generated scanning path

4 仿真

得到生成的测量路径后,需要在三维仿真软件中进行模拟仿真,以保证实际测量时的安全性和准确性。采用WorkSpace 5.0工业机器人三维仿真软件,依次导入CAD模型和工业机器人,然后将生成的测量路径导进机器人中,路径如图8所示,机器人分别沿着生成的路径运动,这样便可以实现三维路径仿真。在仿真过程中,可以检查机器人与模型有无碰撞,如果有碰撞,需要调整扫描路径,直到得到无碰撞路径为止。

5 结语

采用开源的OpenCASCADE三维几何平台,搭建了针对复杂曲面模型的自动检测系统,可以实现复杂三维模型的输入显示,大幅提高开发速度;对扫描路径进行了模拟仿真,验证了路径的正确性。基于CAD模型的复杂曲面的自动检测是一项极具前景的研究内容,目前的研究工作尚处于起步阶段,所做的工作对工业上复杂曲面工件的检测具有一定的参考价值。

[1]Object libraries application framework user’s guide[EB/OL].http://www.opencascade.org/occ/faq,2017-3-20.

[2]陈宏宇,刘子健,艾彦迪.基于OpenCASCADE的“一元四体”模型实现技术研究[J].计算机工程与科学,2012,34(3):96-102.

[3]郑盈盈,周来水,孙金虎.基于OpenCASCADE的DXF接口研究[J].机械设计与制造工程,2010,39(1):45-48.

[4]赵韩,刘达新,董玉德,等.基于CAD的坐标测量机检测规划系统的开发[J].仪器仪表学报,2009,30(9):1846-1853.

[5]李宏.三维模型数据格式转化的技巧[J].金华职业技术学院学报,2008,8(6):15-17.

[6]李维诗,李江雄.平面多边形方向以及内外点判断的新方法[J].计算机辅助设计与图形学报,2000,12(6):405-407.

[7]孙家广,杨长贵.计算机图形学[M].北京:清华大学出版社,1996:276-324.

[8]肖海军.三维线扫描测量机器人的路径规划[D].合肥:合肥工业大学,2014.

[9]Reinhart G,Tekouo W.Automatic programming of robot-mounted 3D optical scanning devices to easily measure parts in hignvariant assembly[J].CIRP Annals-Manufacturing Technology,2009,58(1):25-28.

[10]Elber G,Zussman E.Cone visibility decomposition of freeform surface[J].Computer-Aided Design,1998,30(4):315-320.

[11]ElMaraghy H,Yang X.Computer-aided plannng of laser scanning of complex geometries[J].CIRP Annal-Manufacturing Technology,2003,52(1):411-414.

猜你喜欢

多边形曲面平面
多边形中的“一个角”问题
简单拓扑图及几乎交错链环补中的闭曲面
玩转高考真题——平面解析几何篇
多边形的艺术
解多边形题的转化思想
立体几何基础训练A卷参考答案
多边形的镶嵌
第二型曲面积分的中值定理
关于第二类曲面积分的几个阐述
参考答案