基于航天器装配仿真技术的虚拟装配系统和虚拟装配方法 【技术领域】
本发明涉及一种虚拟装配系统和虚拟装配方法,特别是涉及到基于航天器装配仿真技术的虚拟装配系统和虚拟装配方法。
背景技术
随着近代科学技术的发展,工程设计的理论、方法和手段都发生了很大变化。特别是近30年来,工程设计手段的先进与否、数字化程度(以CAD技术和FEA技术为典范)的高低,在很大程度上决定了产品设计开发的周期、质量和成本。CAD技术是计算机应用与工程设计中最早和最成功的典范。它的出现和广泛使用,从设计方法上改变了传统的以经验为准的设计方法。有限元分析(FEA)技术在工程设计过程中的应用,再次极大地改进了产品的设计手段。它可以帮助设计人员分析机械系统零部件的结构强度、刚度,以及热特性和动态特性,不但进一步推动了CAD技术在各行业的应用,而且解决了许多以前难以处理的工程问题。但是,随着科学技术的发展,人们逐渐认识到这样一个事实:即使机械系统中的每个零部件都是经过优化的,也不能保证整个系统的性能是良好的,即系统级的优化绝不是系统中各部件优化的简单叠加。目前,多数公司和研究机构都采用这些常规的设计方法,即首先进行不同的方案设计,并绘制出工程图纸;然后在经过较长时间的基于经验的方案论证后,选出较合适的方案并试制出物理样机;此后进行试验设计,并对物理样机在多种工况下进行测试。当发现结构或性能方面有缺陷时,就修改设计方案及工程图纸,然后再次制造物理样机并对其进行测试。不难看出这种传统的物理样机制造试验方法大大增加了新产品开发的周期和成木,而且很难获得真正的优化方案。
虚拟装配工艺规划是虚拟现实技术在产品设计领域中的一个典型的应用,随着虚拟装配工艺规划技术的逐步发展和推广,其应用价值引起了越来越广泛的关注。然而目前国内在航天器总装工艺规划时,仍然停留在单凭总装经验去制定工艺规划的阶段,而且输出为二维纸质文件,难以有效验证总装工艺路线的可行性和发现设计中存在的问题。特别是对于卫星等航天器产品而言,由于其大多具有品种多、批量小、装配精度要求高、所需装配资源类型多、装配质量难以预测等特点,因此虚拟装配技术的研究具有重要的理论意义和实用价值。它可优化产品设计、避免或减少物理模型制作、缩短开发周期、降低开发风险、降低成本,提高装配操作人员的培训速度、提高装配质量和效率,解决难以用物理模型试验或检验的技术问题。本系统以航天器产品为目标,建立总装用的数字化几何模型,进行虚拟装配工艺设计,完成舱段级产品的预装配,进行工艺顺序规划并生成工艺文件模版,针对某些典型工序的装配生成可视化工艺。
【发明内容】
本发明涉及一种基于航天器装配仿真技术的虚拟装配系统,其包括:CAD建模模块;用于设计零件及工装工具,并且通过定义一系列配合约束关系,将这些零件组装在一起,以得到产品的装配模型;虚拟装配规划模块:用于建立基于几何约束的虚拟环境,根据记录的在虚拟环境中执行的拆卸方向、拆卸工具以及优先约束信息,规划出优化的装配顺序,并且对优化的装配顺序进行验证,再在虚拟环境下进行仿真评价;装配工艺设计模块;用于设计产品结构树以及工序目录,对工序步骤进行编排并且装配工艺规程;其中通过所述的CAD建模接口将CAD建模模块与虚拟装配规划模块进行连接,以便将CAD建模模块中所产生的模型导入到虚拟装配规划模块中;通过Mockup接口将虚拟装配规划模块中的工艺规划结果导入到装配工艺设计模块中。
一种基于航天器装配仿真技术的虚拟装配方法,其包括以下步骤:首先,进行CAD建模步骤,以设计零件及工装工具,并且通过定义一系列配合约束关系,将这些零件组装在一起,得到产品的装配模型;其次,通过CAD建模接口将CAD建模步骤中所产生的模型传送给下面的虚拟装配规划步骤;接着,在虚拟装配规划步骤中,建立基于几何约束的虚拟环境,根据记录的在虚拟环境中执行的拆卸方向、拆卸工具以及优先约束信息,规划出优化的装配顺序,并且对优化的装配顺序进行验证,再在虚拟环境下进行仿真评价;最后,装配工艺设计步骤,用于设计产品结构树以及工序目录,对工序步骤进行编排并且装配工艺规程,其中,通过Mockup接口将虚拟装配规划步骤中生成的工艺规划结果传送到装配工艺设计步骤中。
【附图说明】
图1是本发明所述的软件地体系结构示意图;
图2是卫星虚拟装配软件的总体结构框架示意图;
图3是本发明所述的虚拟装配工艺设计软件的技术流程及路线示意图;
图4是本发明所述的功能模型图;
图5是本发明所述的模型管理部分结构业务流程图;
图6是本发明所述的工艺规划功能模型;
图7是本发明所述的工艺规划总体流程;
图8精测坐标提取界面;
图9位置精测界面;
图10精测查询界面;
图11确定坐标系和平面位置;
图12平移后两平面相交;
图13两平面在公垂面上投影;
图14求解公垂面上投影长度;
图15调整过程简化模型。
【具体实施方式】
以下将参照附图对本发明所述的基于航天器装配仿真技术的虚拟装配系统结构和运行步骤进行详细描述。
如图1所示,系统可分为三个模块,以及两个接口部分。在Oracle数据库和CAD软件(Pro/E)的支持下,采用面向对象的方法来开发卫星虚拟装配工艺软件。整个软件的体系结构如下所示。
(1)CAD建模部分:零件及工装工具首先在CAD软件中设计完成。通过定义一系列配合约束关系,这些零件被组装在一起,得到产品的装配模型。
(2)工艺规划部分:首先建立一个基于几何约束的虚拟装配环境。用户根据经验和知识在该环境中进行交互式拆卸,记录拆卸方向、拆卸工具以及优先约束信息。应用蚁群算法规划出初始优化装配顺序,在虚拟环境下仿真评价该接近优化装配顺序,考虑碰撞干涉和工具操作空间限制等因素,不断识别新的优先约束和评价准则,重新规划出更优的装配顺序,在虚拟中进行仿真评价。这是一个不断反复、不断完善的过程,直到得到满意的最佳装配顺序为止。
(3)培训和示教部分:对于复杂产品而言,其装配过程需要一定操作技能和经验。装配人员掌握这些技能和经验需要一个较长过程,基于虚拟现实装配过程仿真,为工程师提供了一种极好的培训手段。装配人员在虚拟环境中进行装配任务培训,充分熟悉产品的装配过程,然后再进行产品的实际装配。根据虚拟装配规划得到的最佳装配方案,开发多媒体示教软件,仿真产品的动态装配过程,装配工人一边观看产品装配过程动态演示,一边进行实际装配。
(4)CAD接口部分:虚拟现实软件用多面片模型来显示物体。CAD软件设计的模型装入虚拟环境后,一些有用的信息必须提取出来,包括零件的几何信息、物理信息以及配合约束信息等。
(5)虚拟装配(Mockup)接口部分:根据最佳装配顺序,在虚拟环境下仿真产品的装配过程,记录装配路径、装配时间等信息,这些装配序列和装配过程信息从虚拟环境中输出,输入培训和示教模块,一方面用来生成装配动画文件指导现场装配,另一方面生成装配工艺卡片等文件。
图2是卫星虚拟装配软件的总体结构框架示意图,主要由三个部分组成:虚拟装配系统的支撑层;虚拟装配系统软件的应用层;虚拟装配系统服务层。支撑层由模型和数据库管理系统组成,它们为模型的建立和设计的协同提供底层信息支持,负责保存和管理虚拟装配过程中的全部模型信息。通过PDM实现产品设计部门和装配生产部门之间的协调和沟通,保证型号卫星产品产品结构和模型修改的一致性,实现各部门信息重用和共享。最终,装配生产部门根据虚拟装配结果将设计改进建议再通过PDM反馈给设计部门。服务层主要是针对虚拟装配的需求,研究和开发支持虚拟装配过程中若干关键技术,包括虚拟环境的建立、装配约束关系定义和干涉检测算法实现等。首先建立面向卫星装配的虚拟环境,包括虚拟车间、工作台、零件架等,按照层次位置关系对虚拟场景中的各模型结点进行统一规划和管理。在干涉检验算法的支持下,建立各零部件之间以及工装工具之间的装配定位关系,支持面向过程的装配规划和仿真。应用层主要是针对生产车间卫星装配生产的实际情况,应用虚拟装配技术,为解决实际装配中存在的难题提供技术支持。通过虚拟装配过程中的顺序规划和路径规划,生产能指导实际装配生产的工序目录和可视化工艺,为制定正确的质量安全促使提供依据,为工艺优化和现场示教提供手段。
图3是本发明所述的虚拟装配工艺设计软件的技术流程及路线示意图。在设计部门设计出航天器产品模型,经过模型分析后进行模型二次加工,包括规范模型命名、完善模型结构和建立工装工具标准件模型,将模型输入到Pro/E系统中,包括加载工装工具标准件、加载星上仪器设备、对Pro/E二次开发、提取零部件信息和将零部件入库,在虚拟装配软件(Division Mockup)中进行交互式装配规划、生成工序目录、规划装配路径、仿真装配操作、检验碰撞干涉和制作装配动画,最后经过数据转换进行虚拟装配工艺设计,包括提取产品结构树、提取工序目录树、规划工序工步、仿真工序工步、生成配套信息、生成工艺规程和进行现场示教。
图4是本发明所述的功能模型图。模型管理部分主要包括模型管理、模型手工导入和PROE中模型导入。此部分是对模型的一系列信息进行输入和管理,包括对模型的输入、查询、修改、删除、输出等操作其中模型主要包括标准件、零部件及工装工具。软件根据卫星属性和类型标记自动选择要存入的数据库表中,零部件、工装工具、标准件模型信息在PRO/E装配结构树基础上通过PRO/E自动导入或将模型信息手工输入到数据库中,模型导入的输出作为模型管理的输入,连同根据选择的舱段或标准件名称对相应模型进行管理,对模型管理之后产生相应的标准件信息,零部件信息,工装工具信息,也可以将所关心的PRO/E图形文件进行输出察看。
图5是本发明所述的模型管理部分结构业务流程图。第一步读取软件初始化生成的文件,取得卫星属性信息;第二步在软件的菜单下打开PRO/E模型导入菜单,PRO/E自动运行,并将基于PRO/E的二次开发的菜单加进PRO/E软件的菜单中,在PRO/E中打开一个零件或装配体;第三步如果打开的是一个零件,通过提取零件信息将此零件的PRO/E模型名以及相应的卫星信息加以显示,用户可以在显示的界面上对零件信息进行修改,否则打开的是装配体,通过提取装配体信息将装配体内模型名称写进一个文件中,读取该文件,取得模型名称,通过模型名称来判断其类型标记,并统计模型数量,在界面上显示;第四步根据类型标记、卫星属性、PRO/E文件名将所提取的信息存进数据库中;第五步在相应数据库中读取模型信息,通过判断卫星属性将所关心模型信息进行数据准备;第六步根据卫星属性、模型名称(可选)、舱段(可选)来查询所关心的模型数据;第七步可以将查询出的模型信息进行修改,修改后保存,或者可以将选中的模型删除,也可以将选中的模型的图形信息输出到硬盘上(如果存在图形信息)。
图6是本发明所述的工艺规划功能模型。装配工艺规划主要根据Mockup软件中生成的工序目录来进行工序工步的编排与仿真,最后生成产品的装配工艺规程。工艺设计人员一边观看装配过程动画演示,一边编排工序工步。对每一个装配工序,将图形演示和工序内容关联起来,对输入的质量安全信息、辅料信息和配套信息等进行管理,在使用过程中由管理人员根据工厂的发展进行扩充维护,最终做到工艺人员容易掌握,使用简单、方便、快捷。具体来讲,工艺规划部分主要实现以下功能:
a.导入Mockup模型生成产品结构树
b.导入Mockup模型生成工序目录树
c.装配工序规划
d.工序技术文件信息
e.工序质量安全要求信息
f.工序辅料信息
g.工序需要的工装/工具/设备列表
h.装配工步规划
i.装配操作规划
j.操作内容文字描述
k.操作过程动画演示
l.该操作装配的零部件信息
m.该操作装配零件的路径信息
n.工艺信息的编辑、保存、查询、修改
图7是本发明所述的工艺规划总体流程。工艺规划部分可进一步细分为工序工步规划与工序工步仿真两个子模块,工序工步规划模块主要根据工序目录树来编排产品的装配工序,每一装配工序又划分为许多工步,每一工步对应多个装配操作,工艺规划的任务就是把工序、工步、操作和装配的零件、需要的工装工具、零件的装配过程仿真及其装配路径等关联起来。工序工步仿真就是将产品的装配过程根据规划好的工序、工步、操作一步步地演示出来,根据需要进行调整和修改。工艺规划的总体流程如下所示,首先导入卫星产品的Mockup模型,生成产品结构树与工序目录树,据此进行装配工序的规划,装配工序下面又分为装配工步,装配工步又分为装配操作,每一装配操作对应零部件、工装工具、仪器设备、标准件等配套信息,将装配操作和装配过程动画关联起来,指导工艺设计人员一边进行观看装配过程动画演示,一边进行工艺编排。
精度测试部分
为解决卫星装配过程中精测效率较低的问题,设计开发了精测分析模块。具体要实现的功能如下:
提取卫星精测过程中的有效数据和经验知识,建立垫片厚度调整分析数学模型,并提供实时图形演示,为精测人员提供理论指导。详细地说,对卫星上的各种姿态敏感元件和仪器,如10N推力器、490N发动机、动量轮、陀螺组件、地球敏感器、太阳敏感器组件等,建立垫片厚度调整分析的数学模型,根据仪器检测立方镜的理想位置法线光路与实际位置法线光路之间的夹角,计算出相应的需要调整的位置和调整垫片的厚度,在三维图形环境下给出姿态调整和管路变化的光路演示,并给出实时的角度变化。每次测量后结果都可以保存在数据库中以待日后查询。
精测分析部分现阶段主要分为下面图示的三个功能模块,利用的主要技术是VC开发数据库技术、VC三维动画OpenGel技术、VC对Pro/E的二次开发对模型数据进行提取的技术。
在精测调整过程中所有数据均为在整星坐标系下的数据,标准状态下的三个支点或四个支点的坐标利用Pro/E二次开发技术从Pro/E模型中提取出来,单个零件的中心坐标提取比较容易,但定位孔在零件表面上,具体坐标的提取具有一定的困难,如何解决是一个很重要的问题。所以要通过提取出来的定位孔轴线中心的局部坐标与零件在全局坐标下的位置矩阵叉乘得到定位孔轴线中心的全局坐标,具体操作界面如图8所示,为用户使用方便,添加了添加、查询、删除功能。
精测调整计算,通过对模型数据的提取并初始化获取位置偏差计算的原始数据,根据事先建好的数学模型,对已有数据进行计算,得出实际状态下需要调整的偏差值,并可得到调整后的中心点坐标。然后在由精测人员根据这个偏差值来决定添加垫片的厚度和数量。这个偏差值为将仪器调整到规范状态的最终结果,得到最终结果后,用户还可以通过输入任意支点的调整量来看分步调整后的角度变化结果和中心点坐标,其调整的变化过程在精测过程演示中会有一个详细的体现。
图9为设计的位置精测操作界面,测试信息在进入系统后初始化得到,测试条件由人工手动选择,坐标提取调用精测坐标提取模块,自动提取Pro/E中被测模型的坐标值,计算按钮负责计算被调面调整到目标状态的偏差量,调整按钮负责单步调整过程并产生相应数据,演示按钮负责调整过程的三维动画演示,保存按钮将所有得到数据保存在数据库中。
精测查询,利用查询条件查询以往测过的数据,被测仪器代号和测量日期为两个独立的条件,可以单独查询也可以组合查询,结果以列表形式显示出来,如没有符合条件记录,会自动弹出提示信息。选择结果列表中任意一行,被选中行以高亮显示,操作者可以点击删除按钮删除列表并将数据库中记录也一并删除,操作成功弹出提示信息,如图10所示。
精测计算过程:
1.精测坐标提取
在精测分析模块中,若要进行调整计算,被测面支点标准位置的坐标必须作为已知条件,然而实际测量过程中,标准位置坐标是未知的,为此,只能在Pro/E三维模型中提取,这就利用到了Pro/E的二次开发技术,在Pro/E中,可以提出零件在全局坐标系中的位置矩阵,还可以提取出支点孔轴线中心的局部坐标,将此孔中心局部坐标乘以零件全局坐标系中的位置矩阵,就可以得到支点的标准位置坐标,数学模型如下:
支点孔中心位置矩阵:T1=[x1 y1 z1 1]
零件全局坐标位置T2=a11a12a13a14a21a22a23a24a31a32a33a34a41a42a43a44]]>矩阵:
零件支点全局系坐标:T=T1×T2=[x1’y1’z1’]
所得零件支点全局系坐标T即为计算偏差两所需标准位置平面支点坐标。通过调整计算中坐标提取按钮添加到测试条件点坐标编辑框中。
2.精测调整计算
计算过程利用VC编程实现,ABC(ABCD)三(四)点由Pro/E模型数据确定,即操作界面编辑框中的显示值,在由程序判断最低点位置即可。
见图11,面ABC和面A’B’C’分别为待调整仪器被测面的目标位置平面和实际位置平面,n1,n2分别为其法向量,通过对ABC三个支点添加垫片,使有偏移的实际位置面调整到目标位置,从而达到设计精度要求。
假定相对于目标位置平面,A点为最低点(以设计的目标位置平面为基准),将目标位置平面ABC平移至A点与A’点重合,并将两平面法向量n1、n2平移至A点处,则两平面交线为过A点并垂直于n1、n2的一条直线L,如图12所示,法向量n1、n2构成平面M,即平面M为平面ABC和平面A’B’C’的公垂面。
设n1和n2均为单位法向量,与整星坐标系各个坐标轴的夹角分别为α1,β1,γ1;α2,β2,γ2,则有:
n1={cosα1,cosβ1,cosγ1};n2={cos α2,cosβ2,cosγ2}。
直线L的法向量:
n1=n1×n2=
{cosβ1cosγ2-cosβ2cosγ1,cosα2cosγ1-cosγ2cosα1,cosα1cosβ2-cosα2cosβ1}
设两向量间夹角为α,利用两向量间夹角公式:即可得出α。
将两个平面分别向平面M做投影,构成图13所示的三角形,针对实际调整过程中只加不减原则,只需将A’、B’点抬高至与目标位置平面投影线平行即可。
其中h1=s1·tgα;h2=s2·tgα,s1,s2为AB,AC在公垂面上的投影长度。
由此可知:最低点A’点需垫高h2,B’点需垫高h2-h1,此为被测面调整值的最终结果,图14中AE、AF即为目标位置平面AB,AC的投影长度s1、s2。
s1=|AB|*sinθ1 s2=|AC|*sinθ2;
θ1,θ2由向量夹角公式得到,
cosθ1=cosθ1=|AB×n1||AB|·|n1|]]>cosθ2=|AC×n1||AC|·|n1|;]]>
AB,AC直线向量由各点坐标求得,此处坐标值为标准平面位置的坐标,求解时注意将向量标准化,
AB向量:{xb-xa|AB|,yb-ya|AB|,zb-za|AB|};]]>
AC向量:{xc-xa|AC|,yc-ya|AC|,zc-za|AC|};]]>
根据这些条件就可以计算出三点的调整量:
A点调整量d1=h2=s2×tgα;
B点调整量d2=h2-h1=(s2-s1)×tgα;
C点调整量d3=0(最高点,不用调整);
四点型与三点型原理一致。
为使数学模型具有通用性,我们确定程序中三点或四点与操作界面的三点或四点一一对应,这样最低点的判断是程序实现数学算法的一个重要步骤。以三点型为例,以输入或读取的A点为坐标原点,AB为Z轴,AB×AC的方向向量为X轴建立坐标系,首先判断C点的位置,在由平面的法向量在此坐标系中的投影位置确定最低或最高点,分四个象限和四个坐标轴八种情况讨论。
3.调整过程计算分析
根据实际中只加不减的原则,忽略标准位置平面与实际位置平面可能存在的平移量,假定两平面必有一点相交,且调整变化始终在标准平面法向量的方向上。
根据图15,标准位置三点(四点)坐标已知,则平移后目标位置(虚线)三点(四点)坐标只需将标准位置X、Y、Z坐标加上最大调整量d1在三坐标轴上投影即可,这样任何位置的每点坐标都可以通过在目标位置坐标上减去每点的最终调整量d与分步调整量h的差值在三坐标轴的分量即可。以A点被垫高h后为例:
垫高后A点实际坐标为:(xa1,ya1,za1),
其中xa1=xa+d1cosα-(d1-h)cosα;
ya1=ya+d1cosβ-(d1-h)cosβ;
za1=za+d1cosγ-(d1-h)cosγ;(d1=h2)
以平移后目标位置平面(虚线)为基准进行坐标计算是为了实现在单步调整时每次得到的实际坐标值不会产生误差累积。
此时位置的法向量由任意两边的差乘可以得到。注意的问题是,实际情况被测平面的法向量一定是朝向星体仪器外部的,由坐标确定的法向量方向通过右手定则确定,朝向有两种可能,单纯利用数学来进行判断很困难,为与实际相适应,在程序中加入判断语句,将调整后所得夹角与标准位置夹角比较,确保两者符号一致即可。
总装工艺路线的虚拟验证
虚拟装配工艺规划是虚拟现实技术在产品设计领域中的一个典型的应用,随着虚拟装配工艺规划技术的逐步发展和推广,其应用价值引起了越来越广泛的关注。通过在三维空间中实时操纵零部件对飞机装配中的装配策略、工具应用等进行验证,完成了装配工艺规划、实时碰撞检测、零件穿透预防、装配件的三维配合等,取得了非常好的效果。
本发明在如下方面进行了技术创新:
(1)初步建立卫星总体设计的工艺可行性验证平台
现在总体设计和总装环节产生的大量数据无法有效利用,实现信息合理共享,还存在着许多信息孤岛,对生产信息化带来了障碍。通过本发明,可以从总装工艺的角度查找设计中存在的一些工艺问题,打通总体设计和总装之间的信息链路,加强信息共享,形成总装工艺提前介入总体设计、及时反馈设计问题、提高工艺水平和现场问题及时有效处理反馈的良性循环,为卫星研制的信息化、一体化探索有效途径。
(2)初步实现对总装工艺路线设计可行性的数字化验证
在总装实际操作过程中,由于一些客观原因,需要将原计划中的工艺步骤顺序进行更换,对变更的工艺路线是否可行,主要依靠工艺人员的经验,这样不仅浪费大量的时间,尤其是对一些没有借鉴经验的工序变动,存在很大的技术风险。通过这种三维数字工艺规划仿真,可以非常直观的验证工艺路线的可行性,为上层决策提供有效支持,减少总装过程反复,提高了总装效率。
(3)建立卫星精测的分析模型,指导现场人员的测量与调整
卫星精测在卫星总装中占据着举足轻重的地位,然而现阶段的精度测量调整的大部分工作都靠精测人员的经验估测试凑完成,这对精测人员的熟练程度、经验值要求比较高,往往半天的时间只能测一两个简单的部件,复杂的要求时间更多,效率较低,本系统中的精测分析模块建立了精度分析垫片厚度调整的数学模型,通过理论计算,得出调整的方向,调整厚度,并能在虚拟环境下进行单步的调整分析演示,得出每次调整后变化趋势,给精测人员以理论指导和形象直观的过程演示,减少了测量时试凑的时间,提高了精测的效率,经验比重降低,使精测人员测量难度降低,操作起来更加容易方便。
(4)初步实现关键工序的可视化
现阶段,指导工人进行航天器装配操作的都是二维图纸和技术文件,理解起来不直观,并且容易发生错误,需要操作工人具有较高的技能和操作经验,形成了卫星研制要依赖于工人操作水平的不利格局,因而低层次质量问题时有发生,这导致航天器装配质量难以有效保障,研制周期较长。本发明中的现场示教模块,将把关键工序装配的全过程进行虚拟仿真,然后录制成视频文件,在客户端以动画的形式播放出来,使工人能够直观地看到整个操作过程和装配路径,避免错装和漏装,降低返工率,为工艺可视化技术和现场生产指导探索出一条更加便利的变革途径。