Cooperative Design of Real-time Online with VRMAT and DAOPOWER SLW2D/3D
封加会 FENG Jia-hui;温玉维 WEN Yu-wei;游振兴 YOU Zhen-xing
(中国能源建设集团湖南省电力设计院有限公司,长沙 410007)
(China Energy Engineering Group Hunan Electric Power Design Institute Co.,Ltd.,Changsha 410007,China)
摘要:在输电线路勘测设计中,以往各种方式的航测平断面成图都是将断面和地物量测完成后,再通过软件自带的输出接口输出为道亨ORG格式断面,然后在道亨软件中打开,进行排位等操作。本文提出了利用自主开发的维迈航测电力线路三维选线平台和道亨软件的实时联机接口,将两者的数据实现互联互通,让勘测和设计人员能够实时看到地物量测和排位效果,优化输电线路勘测设计过程,并在实践中得到了很好的应用,体现了输电线路协同设计的发展方向。
Abstract: In the transmission line survey and design, the previous methods of aerial surveying and flat section are all completed after the section and ground objects are measured, then output to the DAOPOWER ORG format section through the software's own output interface, open in the software, and perform the ranking and other operations. This paper proposes the use of the self-developed VRMAT aerial survey power line 3D line selection platform and DAOPOWER software real-time online interface to interconnect the two data, so that survey and design personnel can see the ground object measurement and ranking effect in real time and optimize the transmission line survey and design process. It has been well applied in practice and reflects the development direction of the transmission line collaborative design.
关键词:三维选线;实时联机;协同设计
Key words: three-dimensional line selection;real-time online billing;cooperative design
中图分类号:TN913.1 文献标识码:A 文章编号:1006-4311(2019)22-0276-03
0 引言
随着航测技术在输电线路勘测设计中的广泛应用,航测内业平断面量测已经成为平断面成图的重要方式。但是以往的方式都是先量测,再导出成相应的格式,然后进行排位设计等其他操作。勘测人员不能实时看到量测断面和地物在专业电气软件中的显示,设计人员在排设计时,亦不能实时看到塔位在立体中的位置,不便于查看立塔周围的环境;如果后期立塔条件不满足或者需要改线,工序需要在勘测和设计人员来回反复。本文通过利用VC++ MFC开发,实现维迈航测选线平台和道亨软件的实时联机,将航测软件中采集的断面和地物信息实时传给道亨软件,并在道亨SLW2D中实时绘制平断面图,在道亨SLW3D中绘制输电线路三维透视场景;同时将道亨排位设计的杆塔信息传回航测立体窗口,在航测立体窗口绘制塔位位置,让勘测和设计人员能过够对及时对不恰当的位置做出修改,优化输电线路勘测设计的步骤和过程,提高输电线路勘测设计效率,保证工程设计质量,体现了输电线路勘测设计协同发展的方向。
1 传统输电选线的方法和流程
输电线路路径传统的选线方法是在谷歌地图、奥维地图、数字化地形图或者正射影像图上确定路径平面方案,航测获取现实影像,通过全数字摄影测量平台空三数据处理,借助佩戴立体眼镜在立体模型里采集获得确定路径的平断面,然后在平断面上设计杆塔位。具体路线方案优化的选线流程是:平面图上设计选线定线→空三数据处理→佩戴立体眼镜在立体模型里采集断面→采集平断面→在平断面上排位设计→在立体模型中检查塔位,查看塔基地形图。当塔位高差太大,导致无法立塔或者跨越物过高造成路径无法通过,或者是跨越房屋太多和路径曲折系数不合理等原因,都需要重新改变路径方案,如此往复调整,直至路径方案达到可行性和合理性。
2 维迈航测选线系统(VRMAT)与道亨软件实时联机
2.1 维迈航测选线系统功能模块
2.1.1 基础地理数据管理
将相关地理基础空间数据录入到平台中,能够实现海量数据的快速加载。数据主要包括:栅格图数据(遥感影像、航空影像、地形图、DOM、DEM及其他扫描栅格图)、调绘数据(军事区、保护区、机场控制区、风景区、矿区、地灾易发区、重要交叉跨越、点状地物等)。
2.1.2 正射影像选线功能
该功能主要实现在正射影像上结合该区域的基础地理数据进行输电线路路径粗选,对路径有影响的区域进行避让,确定路径的基本走向。
2.1.3 三维立体模型的断面采集功能
根据正射影像粗选的线路路径,利用人造立体视觉原理,用户通过佩戴立体眼镜和脚手轮对线路断面、路径范围内的平面地物进行精确的立体采集和立体量测,完成电力线路的三维精选,并输出平断面数据成果与其它模块交互工作。
2.1.4 平断面塔位排位功能
该功能响应三维立体模型的断面采集功能输出的平断面数据,即时显示输电线路平断面图,设置排位参数,在平断面图上设计塔位,并输出塔位定位信息。
2.1.5 三维漫游功能
该功能根据DEM和DOM数据生成大场景模型,以设计的选线排位数据为基础,实现设计成果的真实显示,可对输电线路进行任意的缩放漫游,对输电线路与周围环境的协调性、安全线进行综合评价。
2.1.6 道亨SLW2D/3D系统的实时联机
提供与道亨SLW的实时联机功能,设计人员在道亨二维设计平台里进行排位时,将数据实时发送给立体窗口和道亨三维设计平台,便于设计人员在立体模型和三维场景中检查立塔条件和线路走廊通道地物情况,及时做出修改,满足三维设计要求。
2.2 与道亨软件联机协同选线实现途径
道亨SLW2D/3D广泛应用在输电线路设计领域,在其平台上可进行精细化设计、电气校验和基础配置等设计工作,实现使其与选线系统实时联机是一种可行的技术方案。
设计人员在道亨SLW2D设计平台里进行排位时,该模块将数据实时发送给立体选线窗口和道亨SLW3D设计平台,同理在立体选线窗口的路径变化,道亨设计平台也实时跟随变化,便于设计人员在立体模型和三维场景中检查立塔条件和线路走廊通道地物情况,及时做出修改;
实时联机的接口包含两部分,将航测立体采集的断面、地物传给道亨软件进行自动绘制;接受道亨排位设计时传回来的塔位排位数据,结合线路路径转角坐标,在航测立体窗口进行自动绘制,立体呈现。联机原理是将两个进程访问同一个逻辑内存,进程之间共享的内存通常为同一段物理内存。三维选线平台的多个进程通过消息触发机制获取道亨软件的排位数据,道亨软件同样通过消息触发获取内存中断面和路径数据,以实现不同软件的联机协同作业。
2.2.1 航测采集的断面信息传给道亨SLW2D
航测采集的断面信息传给道亨SLW2D核心代码如下:
首先定义用来存储中心线和左右边线点的点列,并初始化:
CGPointArray m_PtsMidSamp; m_PtsMidSamp.Reset();
CGPointArray m_PtsLeftSamp; m_PtsLeftSamp.Reset();
CGPointArray m_PtsRightSamp; m_PtsRightSamp.Reset();
将航测的中心线和左右边线的点信息分别存于点列中:
unsigned long num;
ENTCRD Pt3d;
for ( num = StartTower; num+1 < EndTower+1; num++ )
{
Pt3d.x = m_routePts[num].x;
Pt3d.y = m_routePts[num].y;
Pt3d.z = m_routePts[num].z;
m_PtsMidSamp.Append(pt3d);
pt3d.x = m_PtsLeft[num-StartTower].x; pt3d.y = m_PtsLeft[num-StartTower].y;
pt3d.z = m_PtsLeft[num-StartTower].z;
m_PtsLeftSamp.Append(pt3d);
pt3d.x = m_PtsRight[num-StartTower].x; pt3d.y = m_PtsRight[num-StartTower].y;
pt3d.z = m_PtsRight[num-StartTower].z;
m_PtsRightSamp.Append(pt3d);}
其次,得到当前需要传送线路的ID和指针:
int idx = PLSRouteManager.GetCurRoute();
CPLSActObj *pRoute=NULL;
if(CurPLSFile.GetEnt(idx,&pRoute)==FALSE) return ;if(pRoute==NULL) return ;
最后,将点信息存于线路并设置“左中右”类型标志,传给道亨SLW2D软件绘制:
pRoute->Setxyz(m_PtsMidSamp.Get(), 0, m_PtsMidSamp.GetSize()) ;
pRoute->SetObjType( OBJTYPE_TRANS_C );
SLWOperate(Add_Object,pRoute);
pRoute->Setxyz(m_PtsLeftSamp.Get(), 0, m_PtsLeftSamp.GetSize());
pRoute->SetObjType( OBJTYPE_TRANS_L );
SLWOperate(Add_Object,pRoute);
pRoute->Setxyz(m_PtsRightSamp.Get(), 0, m_PtsRightSamp.GetSize());
pRoute->SetObjType( OBJTYPE_TRANS_R );
SLWOperate(Add_Object,pRoute);
UINT ptsum=pRoute->GetPtsum();
const PLSPOINT* pts =((CRouteObj*)pRoute)->Getxyz();
最后,整体将断面信息传给道亨SLW2D进行绘制:
SLWOperate(Add_Object,pRoute);
航测采集的地物信息传给道亨SLW2D的核心代码如下:
首先得到选择的起始塔位和终止塔位内的地物数量和地物id:
UINT objSum=0;
Int* objIDs=GetObjectByRoute(
StartTower,EndTower,objSum);
if(objSum<=0 || objIDs==NULL) {
delete pRoute; return; }
再次,遍历所有地物,传给道亨SLW2D进行绘制:
for (i=0; i<objSum; i++)
{
CPLSActObj *pobj=NULL;
if(CurPLSFile.GetEnt(objIDs[i],&pobj)== FALSE) { ASSERT(FALSE); continue; }
SLWOperate(Add_Object, pobj);
delete pobj;
}
2.2.2 道亨SLW2D排位信息传给航测系统
此部分接口包含接收道亨SLW2D排位信息,绘制塔位;相应道亨SLW2D软件端塔位的高度、位置调整以及删除消息,实时在立体窗口做出反馈,实现二维设计与三维选线的实时互动,部分代码如下:
switch(data.nOperType)
{
//相应道亨SLW2D添加塔位消息,在立体窗口中绘制塔
case eTowerAdd:
{
for(UINTi=1; i<pRoute->GetPtsum(); i++)
{
double dis=sqrt((pts[i].x-pts[i-1].x)*(pts[i].x-pts[i-1].x)+(pts[i].y-pts[i-1].y)*(pts[i].y-pts[i-1].y));
if(fabs(data.x+fDis-lfRouteLei)<1)
{
TOWERPARA tp=((CRouteObj*)pRoute)->GetTowerPara(i-1); strcpy(tp.strName,towerName); tp.lfHigh=data.lfTowerHigh; tp.lfKVal=data.lfKVal*10; ((CRouteObj*)pRoute)->ModifyTowerPara(i-1,tp);
if(pts[i-1].c!=penCornerTOWER)
{
int cd=(data.nTowerType==1)
penLinearTOWER:penCornerTOWER;
pRoute->ModifyPtCd(i-1,cd);
}
}
}
}
相应道亨SLW2D删除塔位消息,在立体窗口中删除对应塔位
case eTowerDel:
{
int idx=0;
UINT i;
for (i=1; i<pRoute->GetPtsum(); i++)
{
double dis=sqrt((pts[i].x
-pts[i-1].x)*(pts[i].x-pts[i-1].x)+(pts[i].y-pts[i-1].y)*(pts[i].y-pts[i-1].y));
if(fabs(data.x+fDis-lfRouteLei)<1)
{
idx=i-1;
}
}
}
相应道亨SLW2D修改塔位位置消息,在立体窗口中修改对应塔位置塔位
case eTowerMod:
{
int idx=0;
UINT i;
for (i=1; i<pRoute->GetPtsum(); i++)
{
double dis=sqrt((pts[i].x
-pts[i-1].x)*(pts[i].x-pts[i-1].x)+(pts[i].y-pts[i-1].y)*(pts[i].y-pts[i-1].y));}
3 实际效果展示
内业勘测人员,通过维迈航测立体选线与量测平台联机的方式,采集一定数量的断面和房屋、道路、水系、交跨电力线等地物数据。当在立体窗口中右键结束某段断面或某个地物采集时,设计人员在道亨SLW2D平台中,便可以实时的看到传过来的数据,联机效果如图1所示。
在勘测人员将断面和地物采集完成后,设计人员直接在道亨SLW2D中进行排位设计。此时,道亨SLW2D排位成果会实时传回立体窗口,然后在立体窗口中将排位的直线塔位置绘制出来,设计人员可以在立体窗口检查立塔位置是否合适,同时分析塔位坡度是否满足立塔条件,然后做出移动、修改操作。
同时,在道亨SLW3D中直接利用维迈航测立体选线与量测平台传过来的真实三维坐标数据和道亨SLW2D的排位成果,实现三维分析和展示,解决航测道亨SLW3D平台中DEM和DOM不精确,影响三维设计的现实问题,设计效果如图2所示。
■
4 结束语
通过维迈航测选线选线系统和道亨软件的实时联机,我公司勘测、设计人员,能够实时看到地物、断面采集效果和实时的排位效果;勘测、设计人员能够对不合理的位置进行重新调整、设计,大大提高了输电线路工程的勘测设计效率,减少了输电线路平断面数据在勘测和设计人员之间的反复交换的频率,体现了输电线路勘测设计协同作业的发展方向。
二三维联动选线协同设计平台主要实现基于二、三维联动的输电线路选线,二三维交互优化选线技术应用及三维优化选线平台的实现不仅能满足输电线路优化选线的需要,还能有效地为复杂环境下的线路路径选择提供现场决策,有力地保障了电网建设的顺利进行,实现了社会效益和经济效益双赢。相信类似这样的协同设计在以后输电线路设计工作中会越来越多,扮演的角色越来越重要;通过这样的协同方式,发挥更加高层次的勘测价值,提高经济效益,提升线路工程设计质量。
参考文献:
[1]汤坚.大场景立体匹配片技术在输电线路路径优化中的研究[J].电力勘测设计,2011(4):60-62.
[2]谭仁春,李鹏鹏,文琳,等.无人机倾斜航摄的城市三维建模方法优化[J].测绘通报,2016(11):39-42.
[3]侯志会.高压架空输电线路三维数字化协同开发平台设计[D].天津:天津大学,2017.
[4]游川.输电线路三维数字化仿真系统的设计与实现[D].成都:电子科技大学,2017.
[5]汤坚.特高压架空输电线路二三维交互优化选线技术的研究与系统设计[J].电力勘测设计,2011(4):68-70. |