智能配网3D监控系统
2010-08-15别志铭辛勇军
别志铭 辛勇军
(珠海许继芝电网自动化系统有限公司,广东 珠海 519060)
1 引言
随着智能电网的不断深入发展和计算机的可视化技术的不断提高,采用2D图形的配电网监控系统,逐渐不能满足用户需求。2D的图形会逐步向3D图形系统过渡,先进的三维、动态、可视化技术将会被大量应用到配电网监控中。
2 图形系统设计
TOSCAN4000配网监控系统的目标是打造“智能配电网”[1][2],本文从可视化,互动性[2]角度出发,设计监控系统的图形系统。该系统的图形引擎在opengl图形库上独立开发,支持海量图形数据。它能给用户提供更加个性化,量身定做的功能。该图形系统采用分层设计,总体结构如图1所示。
2.1 数据对象层
数据对象层是数据的提供方。它主要是管理3D地理背景信息,3D电气图符,电网的结构参数和拓扑数据,以及各种专题图形,设备的实时信息等。数据的来源可以是多样的,如数据库、网络、svg、3dmax文件等。它通过数据接口,用来屏蔽不同数据类型,给数据表示层提供统一的数据格式。它从根本上解决了数据的多样化和不确定的问题,能很好的和其它系统的数据进行无缝连接,实现数据的共享,在该系统中实现地理数据和电气数据的融合。
图1 TOSCAN4000配网监控系统的图形系统总体结构
2.2 数据表示层
数据表示层是3D图形引擎的核心层。它主要分为3部分:基本对象、设备对象和最优空间树。它通过数据对象层的数据接口获取配电网数据后,把电气设备和地理对象按空间划分成最优空间树。
(1)基本对象
基本对象主要是点、线、曲面、平面、3角形、矩形、图片等,它是构成图形的基本元素。主要包括下列功能:①计算基本对象的AABB(Axis-Aligned Bounding Box简称AABB)和球形包围体;②基本对象间的距离计算;③基本对象间碰撞相交计算、和射线相交计算等,以及获取相交的顶点坐标等;④剔除不可见的顶点坐标;⑤基本对象的3角形的分解。例如把多边形分解为一组 3角形等;⑥基本对象顶点的修改变更,高亮度显示,简单的运行控制;⑦基本对象保存到文件和从文件中读取功能。
(2)设备对象
设备对象是由基本对象组合形成。每个设备对象具有特殊的含义,如变电站,电杆,居民楼,树木等。设备对象提供的基本功能包括:①控制设备对象的显示或不显示;②设备对象选取以及和用户的键盘鼠标交互的功能;③把设备对象分解为基本对象;④把设备对象和设备属性,图形数据及其拓扑数据,实时信息相关联。
(3)最优空间树
最优空间树是分割3维空间后形成的树。下面介绍形成最优空间树的过程:
1)获取电气设备和地理背景的最大空间范围,作为树的根节点的AABB。
2)把树的根节点的 AABB按空间坐标平均分割为512个子AABB,每个子AABB作为树的树枝节点。这样就生成了树的第1层树枝节点。
3)把上1层上的每个树枝节点作为根节点,再平均分割为512个AABB,每个子AABB作为当前树枝节点的下级树枝节点。这样就生成了树的第2层树枝节点。
4)循环3的步骤,创建4到6层树枝节点。按照一个树枝节点下面会挂4K到16K个树叶,根据总的设备个数,就可以计算出实际需要的最大的树枝节点层数。树枝的层次不要太多,最好在10层以内,一般通过适当增加树叶的个数,来解决海量的设备问题。
5)从数据接口获取一个图形信息(包括电气图形或地理图形等),创建一个设备对象,计算出它的球形包围体。采用深度优先的算法,从树根开始,比较每个树枝AABB和该设备对象的球形包围圈,如果树枝包含该设备对象,继续向下比较。如果树枝和该设备相交,该设备就作为该树枝的父节点的树叶。
6)循环5的操作,直到所有设备都挂到树上。
7)清除没有树叶的树枝节点对象。
8)计算出所有的树枝节点的实际的球形包围体。
9)把树枝、树叶的所有内容(包括球形包围体等)保存到文件(或者数据库)中。在文件头处保存每个树枝节点内容和树枝的树叶在文件中的开始位置和长度。这样方便下次把最优空间树的某树枝中的树叶全部读取到内存。
最优空间树是在 4叉树[3]基础上进行改进后形成的树。它只需要创建一次。把创建好的空间树保存到文件(或数据库)中,下次需要显示图形时,只需先读取树枝和树枝中的树叶在文件中的开始位置等信息到内存中,再确定读取哪些叶子的内容。根据当前用户的当前位置和需要显示窗口的大小,可以得到一个AABB对象,采用深度优先的算法,把当前用户视口的AABB和空间树每个树枝的球形包围体比较。如果当前用户视口的AABB和某一个树枝的球形包围体相交或包含,读取该树枝的树叶在文件中的偏移量,采用文件映射技术定位到文件的树叶处,把树叶内容读取到内存,再把每个树叶的球形包围体和前用户视口的AABB比较,如果它们是相交或包含关系,就把该树叶内容显示到屏幕上,否则就不显示该树叶内容。采用该方法,即使是海量的图形数据,系统在显示图形时,占用pc机器的内存都是很小的,因此图形也能很快速的显示。
最优空间树的主要优点如下:
1)采用数组存放每一层的树枝,可以进行数据的快速查找。由于基本上等分的空间,所以可以根据用户的视口AABB和缩放率,直接定位到某个树枝,不需要从根节点递归查找,从而缩短查找时间。
2)对于大量变化的设备对象(如模拟移动汽车,局部雨雪等),都很方便在树枝上进行修改。要显示大量动态的设备,普通的4叉树不是很适合。
3)对于不同的图层设备(如开关图层和配变图层),可以共用一个最优空间树,这样可以节省很多空间。对于普通的4叉树在显示不同图层时需要对应构建不同的树。
2.3 图形渲染层
图形渲染层也是3D图形引擎的核心层。它主要分为2部分:图形主表面和纹理生成器。图形主表面接收到要渲染图形的命令后,最优空间树剔除不可见的图形坐标,把可见的图形坐标发送给纹理生成器。纹理生成器接收到数据后,采用pbuffer或fbo等技术离屏绘制到显示卡中(如果pc机器的opengl版本小于1.4,纹理生成器就会把图形绘制到位图中),图形主表面根据共享上下文或纹理直接渲染到纹理的技术,把图形显示在屏幕上。
(1)纹理生成器
纹理生成器主要负责图形的移动、特效以及生成纹理等功能。一个纹理生成器采用一个独立线程,在自己独立的空间运行。图形数据可以在不同的纹理生成器中共享。纹理生成器在绘制图形时,大部分时间是用在根据用户视口的AABB查找要显示的图形顶点坐标上,小部分的时间用在显示图形上。因此,3D图形引擎速度的关键在于生成最优空间树,以及充分利用CPU和显示卡的性能。3D图形引擎的纹理生成器的个数最好和CPU的核总数一样多,这样就可以实现并行绘制图形,加快纹理生成的速度。如果计算机有多块显示卡,纹理生成器的绘制速度也会有明显的提高。
(2)图形主表面
图形主表面采用一个独立线程,主要管理纹理生成器和声音等对象。它获取当前图形窗口的高和宽,然后把宽和高各自增加20%,得到一个屏幕矩形对象,再获取当前PC机CPU的核的总个数(下面以2个核为例子),同时创建2个纹理生成器对象,同时把屏幕矩形对象分割为4到8块瓦片(最好根据纹理生成器的个数来分割瓦片),然后把不同的瓦片分配给不同的纹理生成器。纹理生成器根据瓦片范围生成对应的用户视口的AABB来绘制纹理。图形主表面采用纹理的方式把瓦片拼接起来,显示到屏幕上。图形数据的处理主要分为2类:
1)图形操作,如图形漫游,图形缩放,图形的高亮和灰化显示,图形的颜色闪烁等。图形主表面是采用双缓存纹理来显示图形。当后台不可见的纹理生成器生成纹理后,把后台纹理和前台纹理相互替换,使后台纹理变得可见,前台纹理变得不可见。采用该技术,使图形显示更加平滑,并且可以留出更多时间让纹理生成器去生成纹理。
什么叫好菜?符合酒店标准、客人满意的菜品就是好菜;什么叫成功菜品?一道菜品客人能够顺利的吃下去,并感到非常舒服,意犹未尽的菜品就是成功菜品;什么是菜品质量内涵?有血有肉,通过味道能和客人交流的菜品就是有内涵的好菜品。
2)图形查询统计,如设备查询,区域统计,容量统计,拓扑分析等。图形主表面把查询统计命令发给所有的纹理生成器。例如定位某一开关,把最优空间树的第1层不同的树枝分给不同的纹理生成器,每个纹理生成器按深度优先去查找开关。当某一个纹理生成器查找到该开关后,通知其他纹理生成器停止查找。把该开关进行适当缩放后,再移动到屏幕中心,进行高亮闪烁提醒用户。
2.4 应用对象层
应用对象层主要负责界面的显示和键盘鼠标输入等功能,为用户提供方便的操作,直观的图形显示。因为采用了全新的3D内核图形引擎,可以弥补原来传统2D图形的不足:
(1)可以直观的看出架空线,地缆线的上下层次关系,以及同杆架设物左右等关系。
(2)可以清楚的查看到配电网接入的低压设备,如居民楼上的电表。
(3)可以模拟河流,雾,雨,雪,冰冻,以及雷害区、鸟害区、污闪区等。
(5)通过逐渐透明化弱化地理背景,高亮度强调显示电气设备的充停电状态等。
3 系统主要特点
该图形系统主要的特点有:
(1)图形引擎是基于opengl开发的全3D内核图形系统。在不损失性能的情况下,它可以移植到不同的操作系统上。
(2)图形引擎能自动适应从低档到高档的pc机器,并且能自动根据不同显示卡的配置,选择最好的性能来显示图形。目前它能支持opengl的版本从1.1到3.0。
(3)由于采用分层设计,做到图形数据和图形显示分开,并且具有良好的重用性和平台的扩展性。
(4)对海量图形数据的支持。图形数据即使是100GB以上,图形引擎也能在普通的pc机器上很快速的处理图形。
(5)由于采用多线程绘制图形和多线程查询统计等技术,能充分利用多核CPU和多块显示卡的优势,进行并行显示和查询,能极大的提高了图形处理速度。
(6)给用户提供了更加真实,更加形象生动的,具有高度互动性的智能配网展示平台。
4 结论
随着智能化电气设备产品不断丰富和发展,配电网的数字化、信息化水平也在迅速的提高。TOSCAN4000配网监控系统,跟随着时代的发展,升级改造图形系统,是向着智能电网可视化发展的有益尝试,对3D图形在智能配网的应用和发展有一定的指导意义。
[1]李兴源,魏巍,王渝红等.坚强智能电网发展技术的研究[J].电力系统保护与控制,2009,37(17):1-6.
[2]施婕,艾芊.智能电网实现的若干关键技术问题研究[J].电力系统保护与控制.2009,37(19):1-4.
[3]Raphael Finkel and J.L. Bentley (1974). "Quad Trees:A Data Structure for Retrieval on Composite Keys".Acta Informatica 4 (1): 1-9. doi:10.1007/BF00288933.