某高炮电气虚拟维修系统的设计与实现

2013-11-21 03:20刘正春薛海鹏
火炮发射与控制学报 2013年3期
关键词:高炮测试点元器件

刘正春,王 勇,解 璞,薛海鹏

(1.军械工程学院,河北 石家庄 050003;2.南京陆军指挥学院,江苏 南京 210000)

随着虚拟现实技术的蓬勃发展及其广泛应用,虚拟维修仿真已成为一项新技术,对促进数字化工业、军事、航空航天发展具有重要意义[1]。

某型高炮的电气系统是整部高炮的神经中枢,具有设备繁多、连接关系复杂等特点,一旦电气系统出现故障,系统将无法正常运作,甚至不能完成任务。传统的实装维修培训,因受电气设备数量限制,具有代价高、训练内容片面和培训效率低等缺点,已经不能满足大型高炮武器装备的维修保障需求,而虚拟维修技术为该装备的技术培训提供了新的手段和方法[2]。

针对某型高炮电气系统设备繁多、连接关系复杂、维修资源多样等特点,研究并开发了某型高炮电气虚拟维修系统。受训人员在具备基本维修知识的情况下,通过与该系统进行交互,完成对故障状态识别、分析、诊断的训练;受训人员通过虚拟故障诊断训练,熟悉装备的各种故障模式、故障成因,进而掌握故障分析的一般步骤和初步推理能力,逐步提高其维修工作能力。

1 虚拟维修系统功能模块设计

某型高炮电气虚拟维修系统用于某型高炮电气设备的故障维修训练,受训人员需要对维修对象(电气箱体设备、电路板、元器件)进行拆卸装配、更换器件以及电气检测等操作,因此,系统需要实现两个关键功能:故障维修动作交互和故障维修过程仿真。为实现这两大核心功能,设计了5个子功能模块,如图1所示。

1)Cult3D动态模型导入。采用3DMax软件进行高炮电气设备的三维建模设计(*.max),导入Cult3D Designer设计动态效果和相机视角(*.co)。

2)资源中心。即各种资源素材(如动态模型、材质、声音)的文件包。

3)故障推理信息的生成。以反向推理机制,产生故障源、读取电气系统属性,从而建立故障现象、生成最优维修路径、建立维修方法数据库,包括维修难度、故障特征、可容忍维修时长、维修工具和文字等。

4)电气系统属性。电气系统属性最终表现形式为高炮各电气节点的数据变量,电气节点包括电气系统回路、设备回路、电路回路以及电子元器件(如电容、电阻、三极管、继电器等),数据变量包括回路通断、电流、电压、振荡以及器件状态(良好/损坏)等。电气系统属性的初始状态为全炮良好无故障时的状态,当故障推理机制激活,根据不同的故障推理信息产生不同的数据状态。

5)虚拟仪器仿真。对测试仪器(如万用表、示波器等)进行三维虚拟仿真,模拟真实仪器的换挡、读数、提示音以及波形,能测试虚拟电路板上各测试点的电气特性。受训人员可以很直观地进行检测、定位故障点和故障类型, 达到实装故障检测的效果。

2 关键技术与实现方案

2.1 电气节点拓扑关系重构

将模型从3DMax建模软件中导入到Cult3D Designer软件中进行动态属性设计,以建立具有交互性质的动态模型,除了移动、旋转等基本交互属性外,还包括装配约束、电气测试节点(继电器、电缆、LCR、三极管等元器件)的设置、虚拟仪器面板的交互动作设计、表笔的拾取与放置等复杂交互属性。因此需要对模型的电气节点进行细化,重构其拓扑关系,采用树型结构来表达,如图2所示。

通常,高炮电气系统由多个分系统(如随动系统)组成,各分系统包含多个单体设备,即一个装配整体,而装配体内有多个子装配体(如电路板)或装配附件(如电缆),子装配体上又有多个几何组节点(如元器件),有的几何组节点上又存在多个几何节点(如测试点)。

结构树以整个高炮电气系统为根节点,在程序接口中以此作为结构树指针的初始值,建立与各级节点对应的类:使用 TMatrixTransform组节点作为装配体,TSubTransform为子装配体,TGeode为装配体上的几何模型节点,TGeometry为几何图形节点。

为保证元器件模型可以单独拆装、查看和测试,给每个TGeode对象设置一个转换矩阵Transform。每个节点由其父节点决定其位置、旋转和动画,以便约束每个几何体的拆装操作。据此原理,通过递归调用遍历各个电气设备的装配树,以此获得原装配的层次结构,并根据装配步骤需要,重构生成新的装配树。

2.2 维修仿真交互技术

系统在Delphi开发环境下使用ActiveX技术调用Cult3D动态模型[3]。虚拟维修环境下,操作人员对各电气装置的拆装和测试的交互是虚拟维修的核心问题[4],在本系统中主要集中体现在以下两个方面。

2.2.1 维修过程动作过渡仿真

为了在虚拟维修过程中,使场景切换、动作操作更为流畅,操作人员的某些固定操作动作采用动画预演的方法来实现。例如从高炮内舱拆卸某电气箱体,用户选中该箱体,右键选择“拆卸”,则调用预定的动画帧序列来实现从电气系统界面到箱体界面的切换。其实质是将维修对象特定时刻的关键帧存储在关键帧序列中,演示时将关键帧进行回放。

其关键代码如下:

if Disassemble_Allow ( GStatus(now), MyTransform.select() ) then //判断当前状态是否满足拆卸条件;

begin

case MyTransform.select().type of

MatrixTransform: //装配体(系统/分系统/单体)

Cult3DP1.ExecuteAction( MyTransform.

select().NextSence ); //执行场景切换;

SubTransform://子装配体(电路板)

Cult3DP1.ExecuteAction( MyTransform.

select().Disassemble );//执行拆卸操作;

Geode://几何组节点(元器件)

Cult3DP1.ExecuteAction( MyTransform.

select().SingleEnter); //单个元器件显示;

Geometry://测试点

showMessage(‘测试点无法拆卸!’);

exit;

end;

end

else

showMessage(‘请确定当前状态满足拆卸条件!’);

其中,TCult3DP为Cult3D提供的第三方ActiveX控件,TCult3DP.ExecuteAction()为该控件执行Cult3D Designer中某预定动画帧序列;函数GStatus(now)返回当前全炮电气系统状态,MyTransform.select()获取用户操作对象,以确定高炮当前不处于供电状态,即可拆卸状态。

对于用户选择不同的节点类型,即MyTransform.select().type,其拆卸对象和动作都是不同的:对于如果返回类型为MatrixTransform(系统/分系统/单体),则调用场景切换动作;若为SubTransform(电路板),则按约束调用拆卸路径;若为Geode(元器件),则进入单个元器件的操作界面;若为Geometry(测试点),则给出提示,返回。

2.2.2 维修测试数据的交互

当系统产生一个故障后,全炮所有的电气节点将根据故障机理映射出各自的电气属性,受训人员可以通过观察电气设备的状态(如,箱体面板指示灯、发动机的运行状态等)来诊断故障,但为了精确诊断,则需要通过三维虚拟仪器对各测试点的电气参数测量结果来进行判断,因此,程序必须准确获取用户对三维模型的操作信息。

首先,在Cult3D中对模型的Geometry节点设置热点[5](HotSpot),并进行ID命名,以便程序通过获取ID号判断用户对测试点的操作信息。

其关键代码如下:

if Measure_Allow(GStatus(now), MyTransform.select()) then //判断当前设备状态是否允许测量

begin

TestPen[num].id:=Cult3DP21.GetActionStatus( Measure.Object ); //表笔获取测试点ID

if num=2 then begin

num:=1;

Cult3DP1.TriggerAction( Measure.Display );//两支表笔都已获取数据,仪器显示读数;

end

else begin

num:=num+1; //准备下一支表笔;

Cult3DP1.TriggerAction( Measure.Hold );//表笔定位,等待下一支表笔获取数据;

end;

end

else begin

showMessage(‘请确定满足测量条件!’)

Cult3DP1.TriggerAction( Measure.Exit );

//不允许测试,Reset表笔,退出测试状态;

end;

3 应用实例

以故障现象(故障自诊断盒显示“03307”)为例进行故障诊断训练。受训人员首先按正常的操作顺序启动某型高炮,过程中系统提示故障现象,如图3所示。此时,系统已经完成故障注入以及各数据节点的电气属性的赋值。

受训人员在线状态下进行查看(不允许操作),然后切换到离线状态,即可对各电气设备进行拆卸和测量,从而判断定位故障源。

3.1 维修拆装过程

用户对电气设备的拆卸,调用系统的“故障维修过程仿真”功能。图4显示了用户在离线状态下,对某箱体的拆卸操作,拆卸下来的配件(包括外壳、电路板、可拆卸继电器等)放置在右侧的工具栏中,用户也可以切换到配件模式下,对配件进行查看和测量。

3.2 虚拟测量过程

用户对电气设备的测量,调用系统的“故障维修动作交互”功能。用户可以在离线状态下,测量电气节点的通断,也可以在外加激励源的状态下,测量电气节点的电流、电压和波形等。图5所示为用户使用虚拟万用表对某箱体接线柱进行测量。针对某型高炮的电气特征,对虚拟万用表设计了3种模拟挡位:通断、交流和直流。

用户通过对各设备的检查,最后定位故障源并进行维修,此时用户可对电气系统内所有可更换件进行更换和修复,如果判断错误,系统会给与提示,如果判断正确,系统将对用户的操作进行评估。

4 结束语

通过重构三维几何模型、Cult3D动态设计,以及Delphi ActiveX交互等技术,建立了某型高炮电气虚拟维修系统。通过该系统,受训人员能够沉浸在虚拟环境中进行维修操作,能够替代实装进行维修训练,系统功能完备,能达到元器件级别,可为其它装备的虚拟维修设计提供技术参考。

参考文献(References)

[1] 王文举,李光耀. 虚拟维修仿真技术的研究与进展[J]. 系统仿真学报,2011,23(9):1751-1757.

WANG Wen-ju, LI Guang-yao. Research and development of virtual maintenance simulation technology[J]. Journal of System Simulation, 2011, 23(9): 1751-1757. (in Chinese)

[2] 郝建平,蒋科艺,王松山. 虚拟维修仿真理论与技术[M]. 北京:国防工业出版社,2008:35-36.

HAO Jian-ping, JIANG Ke-yi, WANG Song-shan. Simulation theory and technology of virtual maintenance[M]. Beijing: National Defense Industry Press, 2008: 35-36. (in Chinese)

[3] 濮青,徐云. 应用Cult3D技术实现交互式三维人脸动画[J]. 计算机辅助设计与图形学学报,2004,16 (3):382-384.

PU Qing, XU Yun. Implementation of interactive 3D facial animation with Cult3D technology[J]. Journal of Computer Aided Design and Computer Graphics, 2004, 16 (3): 382-384. (in Chinese)

[4] 马麟,吕川. 虚拟维修技术的探讨[J]. 计算机辅助设计与图形学学报,2005,17(12): 2729-2733.

MA Lin, LV Chuan. Study on virtual maintenance technology[J]. Journal of Computer Aided Design & Computer Graphics, 2005, 17(12): 2729-2733. (in Chinese)

[5] 苏威洲,童仲豪,叶翰鸿. 实现网络三维互动——Cult3D应用指南[M]. 北京:清华大学出版社,2001:135-148.

SU Wei-zhou, TONG Zhong-hao, YE Han-hong. Making internet 3D interactive:Cult3D application manul[M]. Beijing:Tsinghua University Press, 2001: 135-148. (in Chinese)

猜你喜欢
高炮测试点元器件
矿山长距离胶带机动力特性测试及运行分析
元器件国产化推进工作实践探索
基于信息熵可信度的测试点选择方法研究
黑龙江省人工影响天气所用37mm高炮秋冬季保养技术
德国猎豹35毫米双管自行高炮
逻辑内建自测试双重过滤测试点选取策略
SA2型76毫米车载高炮多视图
分析电子元器件的检测方法
先进的元器件优选控制方式在飞机研制中的应用
北斗闪耀中国芯--九院772所元器件国产化攻关纪实