基于OpenGL的减速箱虚拟拆装系统设计文献综述
2020-04-15 09:36:30
1.1研究目的及意义
产品样机制作和评估是现代产品生产过程至关重要的一环,传统“一产品一样机”的生产模式使得设计过程非常的耗时和昂贵,现如今CAD和CAM等设计概念已经逐渐应用于设计的各个环节,工业上需要通过新的技术来更快,更有效的做出决策,虚拟现实(Virtual Reality,简称VR)技术由此进入了设计师们的视野,VR技术尚在起步的时候主要是应用于军事模拟驾驶用途,而近20年来计算机技术的飞速发展使得其商业价值不断提升,现在的VR技术已经结合了包括视觉,触觉,听觉在内的多个人机交互接口,能够通过各种穿戴式设备(力反馈手套,头戴式设备等)来为用户带来丰富的感官感受,提供一种身临其境的交互体验。工程师们希望通过VR技术得到尽可能真实的装配体验,用虚拟样机代替产品实物样机进行相关的设计校核,由于所有的装配过程都发生在虚拟世界中,设计者只需要支付少量的电子设备维护费用,生产成本将被大幅降低。因此虚拟现实技术开始渗透到工业生产的方方面面,虚拟装配(Virtual Assembly)技术也在这之中应运而生。
虚拟装配(Virtual Assembly)技术是虚拟现实技术在工业上的一个重要分支,通过查阅文献发现它没有一个完全统一的定义,结合其中共性的部分来描述的话:虚拟装配技术是指利用计算机技术,结合软件设计和硬件支持,通过拟真的数字化模型来代替物理样机的生产,实现虚拟仿真,装配规划和验证评价。虚拟装配技术具有实时,拟真,低成本等这样的特性,这些特性使得它不光能够应用于工业产品设计,产品演示,课程教学上的应用也是重要研究方向。
减速箱拆装实验是机械专业本科的一个典型的实训实验,学生们在教室中对减速箱实际模型进行拆装,观察,操作,了解关于箱体结构设计,齿轮增减速,轴承安装的知识,作为机械专业课程的辅助实验具有重要的教学意义。但是由于实验设备的限制,班级间需要分批依次做实验,全部做完实验需要几天时间,同时实验过程中的设备损坏所产生的维护费也是一笔不小的开支,基于以上背景,本文将开发一种用于减速箱拆装的虚拟装配平台,实现学生对减速箱虚拟模型的拆卸,装配以及运动仿真,解决实体设备有限,设备需要维护带来的种种问题,并利用计算机实现更加丰富的演示效果,提高学生们的实验学习的效率。
图1 虚拟装配技术在机械专业教学中的应用 |
1.2国内外研究现状
国内外对于虚拟现实技术在虚拟拆装中应用的研究中,最主要的两个研究方向是碰撞检测算法和约束检测管理。
1.2.1碰撞检测算法
虚拟装配仿真相较于虚拟漫游而言,最大的挑战在于其大量的人机交互过程以及复杂模型的实时仿真。想要获得准确真实的操作体验,虚拟环境在视觉逼真的同时更需要对真实零部件物理属性进行建模,其中最基本也是最重要的部分就是实现准确的碰撞检测,避免零部件间的相互穿透。然而复杂零件模型形状所需的较高的多边形数通常会导致检测碰撞计算时间相对较长,这与虚拟环境交互的实时性要求是相悖的,所以如何实现一种快速而且准确的碰撞检测一直是研究人员的一大挑战。
碰撞检测算法可以划分为两个主要类型:基于时间域碰撞算法和基于空间域碰撞算法。
基于时间域碰撞算法可以分为静态,离散和连续三种类型,其中离散和连续算法作为处理运动模型的检测算法成为各国学者研究的焦点,比如Rober等研究出了针对柔性体间干涉问题的离散代数方法[2],可以在保证高检测精度的同时实现穿透深度的计算和自交检测,但是算法本身的离散性可能导致离散时间点间碰撞不能被检测。Redon等提出的连续检测算法弥补了这一缺陷,但其较高的计算复杂度在碰撞检测时会增加内存的负载,难以实现实时性。
基于空间域碰撞算法可以分为两类,基于几何空间算法和基于图像空间算法。基于几何空间的算法主要可以分为三大类:空间划分算法,层次包围盒算法,扫掠算法。现阶段的研究主要体现在这几种方法的整合扩展应用上。比如沈学利等人提出了基于包围盒和空间分割的混合算法[3],提高了算法的执行速度,但对于不同复杂度的场景效率会发生波动。Corrales等人提出了一种基于包围球扫掠体的碰撞检测算法并应用于机器人路径规划中[4] ,对机器人结构表达进行了简化并利用动态包围盒算法对机器人最小运动距离进行了计算。潘海鸥等提出了对于机器人的并行包围盒层次树碰撞检测算法[5],从上,中,下三个层次设计并行架构,整体上提高了系统执行效率。 基于图像空间的算法通过计算机图形硬件,把虚拟场景中的三维对象向参考平面投影成二维图像,对图像空间缓存信息进行分析,判断是否发生干涉,充分利用图形硬件加速技术降低图形处理单元的计算量,但是依赖于设备的硬件水平,在未来硬件发展更加成熟后会有更多的应用。
图2 碰撞检测算法分类
1.2.2部件间约束检测管理
使用了碰撞算法可以防止部件间的互相穿透,然而碰撞检测不向用户提供关于如何改变零件的位置和方向可以使其对齐定位的反馈,也就是对部件间约束的检测管理。现有的检测方法主要分为三种:基于约束建模,基于物理建模和混合建模。
图3 约束检测方法分类
(1)基于约束建模
基于约束建模可以分为两种,一种是位置约束,它是预先定义零件最终位置,通过零件变换矩阵在虚拟场景中定位,当用户移动环境中的零件时,他们会根据碰撞或接近的标准被确定位置。基于这种方法,Kuehne and Oliver开发了一种名为IVY(Inventor Virtual Assembly)的虚拟装配系统[6],使用了硅谷图形公司的IRIS开源发明家图形库,允许设计者直接与CAD包交互修改和评估零件装配特性,从而实现DFA(Design-for-assembly)。
另一种方法是基于几何约束的方法,最早由Fa等人提出,通过预先定义的几何约束关系(CAD系统导入),当环境中相关零件彼此接近时,预定义的约束会被激活,一旦识别出几何约束就可以在部件之间可视化约束运动,然后使用预先定义的最终位置进行装配。NIST和华盛顿州立大学合作开发的VADE(Virtual Assembly Design Environment)就是使用基于几何约束的方法进行装配仿真[7]。系统使用Pro/Toolkit从CAD中导入装配数据(转换矩阵,几何约束,装配层次结构等),在虚拟环境中进行装配操作。
(2)基于物理建模
基于物理建模的方式是将真实世界零件的物理表现加入到仿真中,该方法允许通过计算碰撞后的零件轨迹(可能包括摩擦、重力和作用在物体上的其他力)来测试类似于物理模型的场景。物理的求解器通常会牺牲计算精度来保证视觉仿真的更新率的真实感。基于物理建模主要可以分为三种,第一种是McNeely等人提出的罚力法(penalty force method)[8],当穿透发生时通过弹簧阻尼器抵抗这一过程,易于实现,计算成本低。第二种是Mirtich等人提出的脉冲法(impulse method)[9],将静态接触建模为物体之间发生的一系列高频碰撞脉冲,比罚力法更有稳定性和鲁棒性。第三种是Baraff等人提出的解析法(analytical method)[10],该方法是检测是否相互穿透。如果发现,该算法会将状态回溯到刚刚发生穿透的时间点前。在接触点的基础上求解一个约束方程系统,从而在每个接触点处产生接触力和脉冲。
过去的研究大多数是使用简化和近似的多边形网格表示来进行快速碰撞和物理计算。其中一些研究通过使用立方体素元素进行物理和碰撞计算,由此生成了更粗糙的表示。像孔中的紧栓这样的装配会导致数百次碰撞发生,这往往导致系统的数值不稳定[11]。由于这些限制,很少有尝试依赖于模拟物理约束来进行装配/拆卸模拟。
(3)混合建模
混合建模是将基于约束的算法与基于物理的算法结合起来进行开发,是目前很有前途的研究方向。Jayaram等人已经尝试了在现有基于约束装配系统中实现功能有限的基于物理的算法[12]。这种方法提高了用户的临场感的同时可以将零件准确的放置在给定的装配体上。同时弥补了模拟物理约束方法中对于低间隙装配的问题,当出现低间隙装配时,基于约束的方法将发挥作用。
| 碰撞检测 | 基于约束方法 | 基于物理方法 | 混合方法(碰撞 几何约束 物理建模) |
防止零件干涉 | √ |
| √ | √ |
真实零件行为 |
|
| √ | √ |
准确零件动作 |
| √ |
| √ |
低计算负载 |
| √ |
|
|
触觉(碰撞/触觉反馈) |
|
|
| √ |
表1 装配模拟方法的比较
{title}
2. 研究的基本内容与方案
{title}本系统主要应用于机械专业学生减速箱拆装实训,在《机械设计》课程的减速箱拆装实验中,学生需要进行的实验内容主要如下:
(1)利用工具完成减速箱的拆卸。
(2)观察和了解减速箱组件的结构和装配关系。
(3)转动齿轮轴观察齿轮增减速过程。
(4)完成拆卸后减速箱的装配。
以上述实际实验内容为设计基础,本系统根据计算机演示特点对功能进行了修改并增加一些设计要求,最终得到的系统功能需求分析结果如下:
(1)能够通过鼠标,键盘等交互设备完成虚拟场景中减速箱模型的拆卸,其中包括了使用特定工具拆卸,拆卸过程回溯,零件信息显示和状态提示等功能。
(2)能够通过屏幕观察减速箱的运动仿真,并通过鼠标键盘进行启停,加减速,注入润滑油等操作。(3)能够通过鼠标键盘等交互设备完成虚拟场景中减速箱模型的动态装配,其中包括了零件选取放置,碰撞检测,约束识别等功能。
根据以上功能需求,可以得到该虚拟装配系统的四个关键功能模块:
(1)环境设置与UI实现
该部分要求搭建一个合适的三维虚拟装配环境,使用灯光系统以及纹理贴图来获得合适的显示效果,UI界面要求自然且容易理解,操作要求逻辑清晰,用户能简单上手并操作系统的相关功能。这其中关键技术包括灯光,纹理的实现,摄像机设置以及UI设计,按键映射。
(2)点击交互拆卸模块
用户通过鼠标点击对装配好的减速箱装配体进行拆卸,右键点击零件可以显示其名称,功能和特点等信息,该模块中重点需要让用户掌握减速箱拆卸的顺序,结构,零件特点功能以及对应工具的使用,方便后续进行其他模块操作,其中要实现的关键技术包括零件的顺序拆卸,特定工具拆卸,零件选取,零件动态拆卸演示以及二维模型信息显示。
(3)动态交互装配模块
用户通过鼠标键盘操作移动拆卸下来的齿轮轴上的零件并能够满足条件后逐步施加约束关系,最终装配到轴上,该模块中用户需要重点了解和巩固轴上零件的装配顺序,装配方向以及固定方法,其中涉及的关键技术包括零件间的碰撞检测和零件装配的约束识别。
(4)运动仿真模块
用户通过点选屏幕上的主动轴可以控制装配好的减速箱的运动仿真启停,但是需要先满足油液高度在设定的区间内,切换工具到油壶可以为减速箱添加润滑油,点击油尺可以观察油位,当油位过高时可以通过油塞卸油,点击轴可以增减速以及正反转。其关键技术在于建立工具和操作对模型参数间的变化关系,以及逻辑判断的实现。
为了更高效,合理的实现上述四个功能模块,本文将围绕以下其中的三个关键技术进行重点研究:
(1)模型预处理技术
为了节省设计时间以及复杂程度,系统演示中的模型是用专业建模软件建模导出为中性文件格式后以导入装配系统的方式获得的,其数据储存格式本身不是C 语言能识别的格式,因此首先需要设计文件数据转换接口,将零件顶点面片信息以结构体的形式存储,方便后续包围盒和约束集的建立,最后在装配开始前还需要将顶点信息进行三维重建可视化以方便用户观察操作。
(2)碰撞检测技术
碰撞检测技术通过模拟物理环境中的物体碰撞,使系统能够在动态装配中检测到干涉的发生,让用户得到更加真实的装配体验。由于减速箱实验中的重点装配部分的零件均为圆柱回转体,因此本文主要研究如何进行空间内圆柱体间的碰撞检测,以及如何利用层次包围盒思想优化碰撞检测过程,加快检测速度提升效率。(3)约束检测技术
约束检测技术通过添加约束的概念限制物体的运动,与物理限制相比耗费更低也更加精确。 根据减速箱零件特点,本文主要研究同轴约束和贴合约束的实现方法,通过矩阵变换方法实现物体的约束识别,运动和定位。
本系统的设计流程图如下所示
图4 系统整体设计方案
[1] Dewar., R.G.,Carpenter, I.D., Ritchie, J.M. and Simmons, J.E.L. Assembly Planning in a Virtual Environment. in Proceedingsof Portland International Conference on management of Engineering andTechnology (PICMET 97). 1997. Portland,OR: IEEE Press.
[2] Bridson R,FdekiwR,AndersonJ.Robust treatment of collisions,contact and friction forcloth animation[J].ACM Transactions on Graphics(ToG),2002,21(3):594-603
[3] 沈学利,吴琼,基于包围盒和空间分割的混合碰撞检测算法[J].计算机工程,2012,38(6):256-258
[4] Corrales J A,Candelas F A, Torres F.Safe human-robot interaction based on dynamicsphere-swept line bounding volumes[J].Robotics and Computer-Integrated Manufacturing,2011,27(1):177-185
[5] 潘海鸿,戴骏,陈琳,等,多机器人并行动态包围体层次树碰撞检测算法[J].计算机辅助设计与图形学学报,2014,26(11):1948-1956
[6] Kuehne, R., andOliver, J. A Virtual Environment for Interactive Assembly Planning andEvaluation. in Proceedings of ASME Design Automation Conference. 1995. Boston,MA., USA.
[7] Jayaram, S.,Jayaram, U., Wang, Y., Tirumali, H., Lyons, K. and, Hart, P., VADE: A VirtualAssembly Design Environment. Computer Graphics and Applications, 1999. 19(6):p. 44-50.
[8] McNeely, W.A.,Puterbaugh, K. D. and Troy, J. J. Six Degree-of-Freedom Haptic Rendering UsingVoxel Sampling. in SIGGRAPH 99 Conference Proceedings, Annual ConferenceSeries. 1999. Los Angeles,CA.
[9] Mirtich, B. andJ. Canny, Impulse-based Simulation of Rigid Bodies. Symposium on Interactive 3DGraphics, 1995.
[10] Baraff, D.,Curved Surfaces and Coherence for Non-penetrating Rigid Body Simulation.Computer Graphics, 1990. 24(4): p. 19-28.
[11] Garcia-Alonso,A., Serrano, N., and Flaquer J., Solving the Collision Detection Problem. IEEEComputer Graphics and Applications, 1994. 14(3): p. 36-43.
[12] Wang, Y.,Jayaram, S., Jayaram, U., and Lyons, K. Physically Based Modeling in VirtualAssembly. in ASME Design Engineering Technical Conferences and Computers andInformation in Engineering Conference (DETC2001/CIE-21259). 2001. Pittsburg,PA.
[13] Seth, A., Vance,J. M., amp; Oliver, J. H. (2010). Virtual reality forassembly methods prototyping: a review. Virtual Reality, 15(1), 5–20. doi:10.1007/s10055-009-0153-y
[14] 刘振宇, 谭建荣. 基于物理模型的虚拟装配技术研究. 中国图象图形学报. 2003,8(7):823-828
[15] Millman, P.A., Stanley, M., andColgate, J.E. Design of a High Performance Haptic Interface to VirtualEnvironments. in IEEE Virtual Reality Annual International Symposium. 1993.Seattle,WA
[16] Chen, X., Xu,N., and Li, Y. A Virtual Environment for Collaborative Assembly. in SecondInternational Conference on Embedded Software and Systems (ICESS'05). 2005.
[17] Marcelino,L., Murray, N., and, Fernando, T., A Constraint Manager to Support VirtualMaintainability. Computers amp; Graphics, 2003. 27(1): p. 19 - 26.
[18] 胡春安,谢伟超,王振东.依赖包围盒紧密率及多层建模结构的混合碰撞检测算法[J].科学技术与工程,2018,18(16):74-80.
[19] Baraff,D.a.W., A., Physically Based Modeling: Principles and Practice (Online Siggraph97 Cource Note), www-2.cs.cmu.edu/~baraff/sigcourse/. 1997.
[20] Jiménez,P., Thomas,F., and Torras, C., 3D Collision Detection: A Survey. Computers andGraphics, 2001. 25(2): p. 269-285.
[21] Boothroyd, G., and Dewhurst, P.,Product Design for Assembly. 1989, New York: McGraw-Hill, Inc.
[21] 刘进平. 运动物体的碰撞检测算法研究[D].武汉科技大学,2018
[22] 机械设计手册(第六版)[M].北京:化学工业出版社,2016.5.
[22] 李庆余.机械制造装备设计(第4版)[M]. 北京:机械工业出版社,2017.11.
[23] SolidWorks快速入门教程(2016版)[M].北京:机械工业出版社,2016.9
[24] 廖伯瑜.现代机械动力学及其工程应用 [M].北京:机械工业出版社,2004.
[25] 李伟,王晓初 著. ANSYS工程实例教程[M].北京:机械工业出版社,2017.8
[26] 卢红,王三武,黄继雄.数控技术(第2版)[M].北京:机械工业出版社,2014.5
[27] 王隆太.机械CAD/CAM技术(第三版)[M].北京:机械工业出版社,2016.1
[28] 伊立民. Visual Studio 2015高级编程 第6版[M].北京:清华大学出版社,2016
[29] Bryan Newsome . Visual Basic 2015入门经典(第8版)[M].北京:清华大学出版社,2016
[30] PLC技术实用手册(精) [M].北京:化学工业出版社,2017.12
1.目的及意义1.1研究目的及意义
产品样机制作和评估是现代产品生产过程至关重要的一环,传统“一产品一样机”的生产模式使得设计过程非常的耗时和昂贵,现如今CAD和CAM等设计概念已经逐渐应用于设计的各个环节,工业上需要通过新的技术来更快,更有效的做出决策,虚拟现实(Virtual Reality,简称VR)技术由此进入了设计师们的视野,VR技术尚在起步的时候主要是应用于军事模拟驾驶用途,而近20年来计算机技术的飞速发展使得其商业价值不断提升,现在的VR技术已经结合了包括视觉,触觉,听觉在内的多个人机交互接口,能够通过各种穿戴式设备(力反馈手套,头戴式设备等)来为用户带来丰富的感官感受,提供一种身临其境的交互体验。工程师们希望通过VR技术得到尽可能真实的装配体验,用虚拟样机代替产品实物样机进行相关的设计校核,由于所有的装配过程都发生在虚拟世界中,设计者只需要支付少量的电子设备维护费用,生产成本将被大幅降低。因此虚拟现实技术开始渗透到工业生产的方方面面,虚拟装配(Virtual Assembly)技术也在这之中应运而生。
虚拟装配(Virtual Assembly)技术是虚拟现实技术在工业上的一个重要分支,通过查阅文献发现它没有一个完全统一的定义,结合其中共性的部分来描述的话:虚拟装配技术是指利用计算机技术,结合软件设计和硬件支持,通过拟真的数字化模型来代替物理样机的生产,实现虚拟仿真,装配规划和验证评价。虚拟装配技术具有实时,拟真,低成本等这样的特性,这些特性使得它不光能够应用于工业产品设计,产品演示,课程教学上的应用也是重要研究方向。
减速箱拆装实验是机械专业本科的一个典型的实训实验,学生们在教室中对减速箱实际模型进行拆装,观察,操作,了解关于箱体结构设计,齿轮增减速,轴承安装的知识,作为机械专业课程的辅助实验具有重要的教学意义。但是由于实验设备的限制,班级间需要分批依次做实验,全部做完实验需要几天时间,同时实验过程中的设备损坏所产生的维护费也是一笔不小的开支,基于以上背景,本文将开发一种用于减速箱拆装的虚拟装配平台,实现学生对减速箱虚拟模型的拆卸,装配以及运动仿真,解决实体设备有限,设备需要维护带来的种种问题,并利用计算机实现更加丰富的演示效果,提高学生们的实验学习的效率。