牵引变电所三维演示培训系统的研究与实现

2018-04-04 05:01张陈擎宇陈德明西南交通大学电气工程学院四川成都610031
电气自动化 2018年1期
关键词:虚拟环境变电所电弧

张陈擎宇, 陈德明(西南交通大学 电气工程学院,四川 成都 610031)

0 引 言

变电站是电力系统中的贵重关键设备,其涉及电力供应安全与否,对国民经济发展与人民生活影响重大。而变电站的特殊环境必然使得技术人员不可能通过停用实际设备来进行学习,这就使得工人在正常操作和事故判断和处理方面的专业能力难以提高。随着计算机科学的飞速发展,变电站仿真培训系统(Substation Training Simulator)作为变电站培训的一种新型的有效手段,其实用性得到行业各界的认可[1-3]。传统的变电站仿真培训系统通常以接线图、数字图表、设备照片和现场录像方式等常规多媒体方式作为表现手段,缺少场景互动,难以调动学员的积极性。基于虚拟现实技术(Virtual Reality, VR)的变电站仿真培训系统创造了沉浸式的三维虚拟环境,丰富的交互式功能能让学员产生浓厚学习兴趣,使培训质量得到极大保障。就目前来看,加拿大已经开发出较为成熟的虚拟变电站三维仿真培训系统[4],我国在这方面研究也取得了一定的成果[5-7]。

现今的VR环境变电站培训系统仍存在一定的缺陷,如环境建模粗糙、交互功能不够完善、运行和故障原理演示动画的缺失等。本文针对这些不足展开研究工作,并取得了初步的成果。

1 培训系统总体设计

本文开发的系统主要涉及牵引变电所室外设备的三维仿真及其相关交互功能,对一次侧的主要电气设备如变压器、断路器、互感器、隔离开关、避雷器等进行场景建模,利用OpenSceneGraph(以下简称OSG)对变电站虚拟环境进行节点组织管理和层次细节优化(Level of Detail,LOD),再进行数据库对接,以实现虚拟场景的人机交互,利用逻辑变量实时仿真设备的正常、故障的运行状态。此外,OSG还提供了丰富的可扩展对象库,用于增强场景真实感,如设备出现短路故障时出现的高压放电电弧等动态现象均可以通过粒子系统配合相应的实时算法进行构建。另外,为确保场景的实时高效性,应尽量减少复杂体系的动态模型仿真,提高系统渲染效率。在系统交互窗口模式下,用户仅需通过简单的鼠标或键盘操作,实现环境巡检、设备开闭、对象拾取、故障演示等功能,图1为培训系统整体结构图。

图1 培训系统整体结构设计

2 虚拟环境建模和场景组织

精细的模型会大大增加虚拟环境的真实程度,让用户的沉浸感得到进一步提升。本文拟参照中南通道220 kV/27.5 kV重载牵引变电所实例,搭建虚拟场景模型,包括两台V/X油浸式主变压器、主变继电保护装置、高低压侧线路互感器、继电器、断路器、隔离开关、避雷器等,以及外围环境的构建,如线路杆塔、厂房外形、电站围墙和碎石地面等。模型设计主要采用以点、线、面描述物体形态结构的多边形建模方式,它是3dsMax最佳的一种建模手段[8],在制作过程中可以最大限度地降低模型的复杂程度且能够控制模型构成的面数,有效地提高了可视化系统实时渲染的速度。如图2所示,在牵引变电所中大量重复的模型,通常采用实例的命令进行量产,以减小场景模型的计算量,提升渲染出图效率。在构建了以点、线、面为基础的形态模型之后,还需对虚拟场景添加合适的灯光、材质、贴图等,使线框模型具备物理世界的颜色、光泽、质感[9]。

图2 牵引变电所场景三维模型

图3 LOD模型调度原理示意图

牵引变电所虚拟环境采用基于电气连接特性的空间N叉树结构在OSG中进行场景组织和管理,其规则是:以母线为纬,以电气单元为经,以断路器为基准,按接线顺序排列[10]。场景内一般具备较多的电气设备,空间布局十分复杂。本文建立的虚拟牵引变电所环境模型的多边形面片数超过600万,若在开发的系统界面中同时渲染出这些模型,则会远远超出计算机的处理能力,无法满足系统的实时交互要求达到15 帧/秒~25 帧/秒的速率。为此对场景进行LOD优化是十分有必要的。在优化处理后的实时窗口界面中,系统并不会同时加载所有的模型,而是按照一定的算法进行渲染。本文拟采用的设计方案是仅渲染以视口所在位置为圆心,某个特定的距离Δr为半径的场景模型,如图3所示:LOD1区域显示精细模型,LOD2区域显示粗糙模型,Hidden区域所有模型不参与渲染或者渲染后隐藏。而OSG扩展库中提供了LOD类,可以实现基于视点距离(osg::LOD::DISTANCE_FROM_EYE_POINT)等模型调度算法。

3 培训系统功能实现

3.1 场景自由漫游

通过osgGA:MatrixManipulator类在虚拟环境中添加一台摄影机作为其交互视口,其位置和朝向用不同的矩阵描述;同时操作器还需响应事件,且具备视口矩阵操作的功能。osgGA::GUIEventHandler作为事件适配器,定义了包括鼠标和键盘状态等在内的所有与事件有关的变量,而handle函数则根据不同的外部响应判断需处理的事件类型。当新事件发生时,handle函数应根据自定义规则对视口矩阵参数进行更改,从而实时更新场景渲染状态[11]。此外,操作器还需具备碰撞检测模块,在靠近大型设备后停止移动。该模块的设计通常采用“线/体”检测方法,运用osgUtil::IntersectVisitor.hits检测沿视点反向发出的射线是否与场景模型的包围体有交点,如果有则开启碰撞检测相关函数,没有则继续移动[12]。操作器变量代码如下:

void changePosition(osg::Vec3 delta); //改变坐标参数的函数

bool m_bPeng; //是否开启碰撞检测

osg::Vec3 m_vPosition; //视点当前位置

osg::Vec3 m_vRotation; //视点当前朝向

int m_vMoveStep; //移动步长

float m_vRotateStep; //旋转角度

3.2 场景设备交互操作

图4 隔离开关分合闸效果图

如图4所示,在实现场景漫游的基础上,还需增设相关交互功能,如真实变电站中对主变端子箱、开关操作杆的控制行为等。以手动控制隔离开关刀闸位置为例,打开机构箱后插入操作杆,可实现隔离开关的分合闸。通过OSG编程对鼠标点选操作进行响应,并触发机构箱门的旋转开启动作;包围体相交检测集函数作为操作杆与箱体是否接触的判断依据,若存在交点则执行隔离开关刀闸位置变更的相关程序。

对场景模型的节点进行相关矩阵乘法计算,就能实现平移、旋转、缩放等常用变换功能[13]。OSG将添加到虚拟场景的矩阵视为一类特殊的节点,通过osg::MatrixTransform类进行控制。刀闸旋转变换的主程序结构如下:

osg::ref_ptrDisconnector = osgDB::readNodeFile(“Disconnector.osg”);

osg::ref_ptrrot = new osg::MatrixTransform;

//创建矩阵节点实现绕Z轴的旋转

rot->setMatrix(osg::Matrix::rotate(osg::DegreeToRadians(45.0),0,0,1));

rot->addChild(Disconnector.get());

//将变换矩阵加入场景根节点

root->addChild(Disconnector.get());

root->addChild(rot.get());

此外,对该系统的后台建立简易动态数据库有助于其他后续功能的开发,比如三维虚拟环境和汇控柜实时数据的一体化仿真模块等。根据IEC61850标准,虚拟变电所可采用层次加关系的数据库,以保证虚拟环境和其他并行系统的信息共享[14]。场景模型的基本属性,如设备名称、电压等级、归属母线等,均以静态数据的形式储存;而设备当前状态则以逻辑值形式储存于实时数据库,用于拓展功能平台的开发。以隔离开关为例,其状态值0代表分闸,1代表合闸,以是否进行矩阵变换为标准,对当前状态值进行实时更替。而变压器、互感器等无需交互操作的大型设备通常是仅有运行或停用(包括故障)状态,亦可用两种逻辑状态值进行描述。表1所示的是用Microsoft SQL Server搭建的牵引变电所主要电气单元的数据库。

表1 培训系统部分设备数据库

4 基于粒子系统的特效仿真

牵引变电所的电气设备在受天气影响或是发生短路故障时,会出现相应的动态物理现象,其中最常见的就是放电电弧,而运用OSG完善的粒子系统功能可以实现逼真的放电电弧特效仿真[15]。放电现象微观机理十分复杂,早期对雷电闪击的弧道空间性质研究就借助了分形动力学[16],其仿真建立在严谨的数学模型基础上,得到的电弧路径和形状有相当的精确度。而基于虚拟环境的可视化系统的建模中,更多关注的是模型的真实化程度,因此仅需实现基本形态仿真,无需从原理上去精确描述电弧的各类物理参数。

图5 粒子系统模拟放电电弧的算法示意图

电力系统的短路故障,其电弧不像雷电闪击那样具备明显的分支,描绘其纹理时只需考虑其主干。本文给出一种基于粒子运动轨迹的仿真算法,原理如图5所示。

粒子在虚拟三维环境的运动可以分解为x-z和y-z平面上的两组分运动。首先以x-z平面为例,以粒子模拟电弧逐步击穿的运动,设A(x1,z1)为粒子的初始位置,以折线段方式分别运动到B(x2,z2),C(x3,z3),D(x4,z4),……则粒子的运动轨迹可描述电弧的基本形态;θ是相邻两条线段的夹角,为简化模型以减小运算量,每一段的Z坐标增量设为恒定值h,则它与短路故障两点间距离d、电弧分段数k的关系为:d=kh。再根据几何关系可得各点坐标算式:

(1)

式中:i∈(1,2,3,…,k)。同理粒子在y-z平面上的分运动,初始位置为(y1,z1),相邻折线段夹角为δ,则拐点坐标计算式:

(2)

式中:夹角θ和δ之间的“+”和“-”代表粒子处于拐角处的旋转方向,前者为逆时针,后者为顺时针。为了符合统计学规律,通常是相邻两个拐点处的粒子呈现出相反方向的旋转运动。

OSG图形引擎对常用的粒子模拟均提供了特有的类,如osgParticale::Particale类控制粒子个体属性,包括大小、颜色、寿命等;osgParticale::ParticaleSystem类控制粒子整体属性,包括数目、纹理、初速等。设置好粒子的初始位置后,按照式(1)、式(2)可以确定运动轨迹所在折线段的拐点坐标。控制粒子轨迹的代码如下:

osgParticle::MultiSegmentPlacer *pp = new osgParticle::MultiSegmentPlacer;

pp->addVertex(x1, y1, z1);

pp->addVertex(x2, y2, z2);

pp->addVertex(x3, y3, z3);

……

pp->addVertex(xk, yk, zk);

emitter->setPlacer(pp);

图6 短路故障点放电电弧特效仿真

在赋值时k一般取得较大,在短路故障点间距离d确定的条件下,h则自然偏小,如此就能保证拐点间的密集程度,其形态会更加接近真实的电弧。最后赋予光效材质使其更加真实,渲染后的电弧特效如图6所示。

5 结束语

本文针对现阶段变电站仿真培训系统的局限性,详细研究了虚拟牵引变电所三维场景精细化建模技巧、场景漫游交互功能开发、粒子特效实时仿真等,营造了模型真实、沉浸感良好的虚拟变电所环境,同时就场景设备状态的变化搭建后台实时数据库,为实现虚拟环境和电力调度仿真、分布式协同仿真一体化等拓展功能的开发奠定了基础。

参考文献:

[ 1 ] 王邦志,林昌年,蒲天骄.变电站集中监控仿真培训系统的设计与实现 [J].电网技术,2004,28(15):21-24.

[ 2 ] 王仁德,杜勇,沈小军.变电站三维建模方法现状及展望[J].华北电力技术,2015,45(2):19-23.

[ 3 ] 龚庆武,姜芳芳,陈义飞.基于虚拟现实技术的变电站仿真培训系统[J].电网技术,2005,29(24):74-77.

[ 4 ] 李蔚清,吴慧中,林昌年.变电站仿真培训系统虚拟环境的研究与实现[J].系统仿真学报,2006,18(1):123-126.

[ 5 ] 韩念杭,王苏,张惠刚.面向维护人员的变电站自动化技术培训系统[J].电力系统自动化,2007,31(2):88-90.

[ 6 ] 林尉,徐正清,冯可.上海500 kV变电站三维仿真培训系统开发[J].电网技术,2009,33(17):210-215.

[ 7 ] 刘世安,胡俊华,李显鹏.变电站仿真培训系统设计[J].科技创新导报,2015,12(1):211-212.

[ 8 ] 张凡.3dsMax2012中文版实用教程[M].4版.北京:机械工业出版社,2012.

[ 9 ] 廖毅.3dsMax建模技术在虚拟现实中的应用[J].中国科教创新导刊,2011,40(18):113.

[10] 侯俊,李蔚清,林昌年.变电站三维交互场景仿真关键技术研究[J].电网技术,2005,29(9):70-75.

[11] 杨化斌.OpenSceneGraph 3.0三维视景仿真技术开发详解[M].北京:国防工业出版社,2012.

[12] 查小菲.基于OpenSceneGraph的数字矿井三维可视化系统的研究与开发[D].河南:河南理工大学,2011.

[13] Fletcher Dunn, Ian Parberry. 3D数学基础:图形与游戏开发[M].北京:清华大学出版社,2005.

[14] 彭云建,邓飞其.电力综合信息管理系统面向对象数据库的建模[J].电力系统及其自动化学报,2007,19(1):49-54.

[15] 杜俊贤.基于OSG的虚拟场景中运动控制与交互技术研究[D].武汉:武汉理工大学,2010.

[16] 任顺平,迟建平,庄洪春.闪电路径与分形[J].空间科学学报,1998,18(4):363-369.

猜你喜欢
虚拟环境变电所电弧
故障电弧探测器与故障电弧保护装置在工程中的应用分析
前庭刺激对虚拟环境三维空间定向的影响及与空间能力的相关关系
如何通过虚拟环境有效管理Python第三方库
大型产业园区变电所方案设计
铁路牵引变电所无线电干扰特性的研究
2219铝合金激光电弧复合焊接及其温度场的模拟
虚拟环境下大数据智能并行聚类方法研究
航空电气系统中故障电弧的分析
变电所如何快速查找直流系统接地
基于WSN的变电所监控系统的研发