基于Visual Lisp For AutoCAD 的输电线路选线与数据处理系统
2023-03-11周红宇陶晓学魏冠军
周红宇,陶晓学,李 毓,魏冠军
(1.兰州石化职业技术大学土木工程学院,甘肃 兰州 730050;2.四川长园工程勘察设计有限公司,四川 成都 610011;3.兰州交通大学测绘与地理信息学院,甘肃 兰州 730070)
在电力工程勘测设计领域,AutoCAD 是应用最为频繁的软件之一,该软件对设计工作有较强的辅助作用,可以实现无纸化设计,但AutoCAD 并未兼顾各行各业的工作习惯和专业要求。如在电力工程勘测设计行业中[1-3],会经常遇到以下情况:①输电线路的可研和初设阶段利用DWG(AutoCAD 数据存储格式)格式的地形图进行路径选择和优化,而塔位设计等工作需要在道亨架空送电线路应用平台[4];②在AutoCAD 中的输电线路平面图中(此平面图带有高程点),无法将平面图数据输出为org 格式(道亨架空送电线路应用平台数据格式)。因此,针对上述问题,利用AutoCAD 软件二次开发接口,实现符合电力工程勘测设计行业使用需求的功能是十分必要的。
1 输电线路选线与数据处理现状
1.1 org文件数据格式
输电线路设计中的平断面图是外业测量的主要成果,也是线路设计的重要技术输入文件。平断面图上有2 个主要部分:①断面线:根据线路中线各桩点的高程而绘制的一条高低起伏的曲线,反映沿线路中线地面的起伏变化;②平面图:反映输电线路中心线两侧各一定距离所经地区的平面附属物(如公路、高压线、河流、铁路、农田、通信线等)[5],在SLCAD 软件中用org数据结构保存这些数据。
org 文件是SLCAD 中的数据格式。测量点数据在SLCAD 的图形界面中完成平断面图绘制,保存为org格式,并且图形界面中的展点、绘图过程也被记录在org 文件中。org 文件是对用户开放的,可以用文本打开和编辑。断面图的数据可分为桩位数据和断面点数据,桩位数据主要指线路的中心桩,包括转角桩和直线桩;断面点是线路范围内的地物或地貌特征点,包括路径上的断面点和偏离路径上的点[6]。偏距是点位偏离中心线的垂距,里程是各个线段的累加距离。如图1 所示,相邻两转角点J1 和J2,高程点B 垂直于JI-J2 线段BA,垂足是A,J1-A是以J1 为起始点的距离,BA 为偏距。J1-A 是点位投影到直线上相对于J1 的距离,再加上J1 的里程,就能得到A 点的里程。如果B 点在以J1 为起始点到J2 方向上的左侧,称为左偏点。如果B 点在以J1 为起始点到J2 方向上的右侧称为右偏点。如果B 点在以J1 为起始点到J2 方向上的线段上,称为断面上的点。
图1 路径转角
在org 文件中,桩位数据的格式为:“测量方法,桩名,偏距,里程,高程,点编码,转角角度,注记;断面点数据格式为:“测量方法,点号,偏距,里程,高程,点编码,连接点,线型,连线编码”[5]。桩位的测量方法为0,点编码为96=00+96,断面点测量方法为b,点编码为13=00+13,偏距和转角角度的符号遵从“左正右负”的原则。
1.2 现有选线与数据处理软件
目前将高程点数据或者等高线数据输出为org 格式有如下几种方法:①商业的GNSS 数据采集软件的电力模块,在采集数据之前先建立输电线路路径,采集的断面数据保存到GNSS 手薄相应的数据库中,最终导出为org 格式或通过中间软件转换为org 格式,这里有Leica GNSS 的电力线路测量模式、南方GNSS的电力之星、华测GNSS 输电线路模块等;②利用商业的数据处理软件将坐标高程数据转换成org 格式,有道亨SLGPS数据处理软件、洛斯达公司的架空送电线路软件;③在等高线数据上设置线路路径并输出为org 格式,有道亨CAD 选线软件、TLCADVBA 软件;④二三维选线系统,有EcanPLStation 架空输电线路选线设计与平断面成图系统,以及海拉瓦输电线路选线系统等。
1.3 现有选线与数据处理软件存在问题
各种方法都能得到想要的结果,但也都存在着一定的局限性:①GNSS 数据采集软件上电力模块是常用的数据处理方法,但是导出的org数据只能是GNSS采集的数据,无法在等高线上输出org,如果没有利用专用的GNSS 模块采集,就无法输出org 数据;②利用商业的数据处理软件将坐标高程数据转换成org 格式,这个方法需要事先确定好转角,不同转角间的断面数据需要对应清楚,部分软件不能自动的按照耐张段提取相应的断面数据,并且需要购买相应的软件;③在等高线数据上设置线路路径并输出为org格式,这个方法可以在等高线上将路径输出org 格式,但是高程点无法输出为org 格式;④二三维选线系统,这类系统一般是在立体模型上或者在等高线上提取数据,软件价格比较昂贵,没有AutoCAD 软件操作方便。
1.4 设计选线与数据处理软件的可行性
针对以上模式存在不足和实际工作中的需要,开发输电线路选线与数据处理系统。根据高程点输出org 格式数据,这种情况是路径转角坐标已经确定,识别路径周围的高程点,自动输出为org 格式数据;根据等高线输出org,这种情况是在AutoCAD 上打开等高线,在等高线上绘制输电线路路径,自动输出路径的org数据。
AutoCAD二次开发已经是很成熟的技术,用于开发的资源较多。系统主要用到的算法有提取高程点、根据高程点与路径的关系计算偏距和里程、提取等高线与路径相交点的高程信息。综上所述,开发输电线路选线与数据处理系统是可行的。
2 设计与实现系统
2.1 开发平台选择
目前,输电线路设计制图软件以AutoCAD 为主,地形图绘制软件主要以南方CASS[7]为主,Visual Lisp是属于AutoCAD第三代开发工具,对于AutoLisp开发语言的进一步扩展,提供了更好的开发环境,在语法、格式、源代码的处理上都有较高的提升[8]。本系统选择AutoCAD 为平台,全面结合AutoCAD 与CASS功能,利用Visual Lisp 开发工具,实现输电线路选线与数据处理。
2.2 系统的模块构成
该系统分为两大子模块,即高程点输出org 模块和等高线输出org模块,这2种模块分别处理高程点数据和等高线数据,输出的结果都为标准的org 格式数据,系统结构如图2所示。
图2 系统结构图
2.3 输电线路选线与数据处理流程设计
在AutoCAD中开发选线与数据处理菜单栏,下拉菜单有:高程点输出org 命令、等高线输出org 命令。高程点输出org命令的主要流程如图3所示,等高线输出org命令的主要流程如图4所示。
图3 高程点输出org流程图
图4 等高线输出org流程图
2.4 输电线路选线与数据处理实现原理
在AutoCAD中通过菜单或命令行,启动输电线路选线与数据处理功能,按照操作流程即可输出org数据。
1)提取转角坐标,转角高程可以是手动输入,也可以提取已存在高程点,并将其显示在对话框中。
2)选高程点构造选择集,因CASS 软件高程点是块,注记是块的属性,所以筛选条件设置为图层、类型、块名,将筛选出的高程点存放到数组变量中。
3)根据转角坐标将路径划分成几个耐张段。
4)选高程点,将高程点投影到相应的转角段内,得到里程和偏距。在程序实现过程中,需要完成一个重要的步骤,就是判断断面点的位置。
5)判断高程点是否参与运算,如果点到转角段的垂距大于中心距离,则不参与运算。
6)判断高程点是否在转角的连线上,如果点到转交段的垂距大于点的偏距,此点为边线点,否则为断面上的点。并判断此点是左偏点还是右偏点。
7)遍历列表中所有高程数据,如果是转角点,那么按照“测量方法,桩名,偏距,里程,高程,点编码,转角角度,注记”格式,将数据写入后缀名为.org 文件中。如果是断面点或边线点,按照“测量方法,点号,偏距,里程,高程,点编码,连接点,线型,连线编码”将数据写入后缀名为.org文件中。
2.5 断面点与路径关系的判断
org的数据是里程和偏距,如图1所示将高程点坐标投影到相应的转角段内可以得到。一条输电线路有很多耐张段,需要判断高程点坐标投影到哪条耐张段上,之后再求得相应里程和偏距。
如图5 所示,已知A 点坐标(xA,yA),AB 的方位角为α,P 点坐标(xP,yP),可知EP=xP-xA,AE=yP-yA, CG=DE=AE cosα, GP=EP sinα, PC=CG-GP ,DC=EG ,EG=PE cosα,AD=AE sinα,AC=AD+DC ,则PC为点P到直线AB的距离公式(1),AC为以A为起点的里程公式(2)[9]。
图5 点P与直线AB的关系
根据PC的正负可以判断点在AB直线的左右,当PC 为正号时,P 点在直线AB 的右侧;当PC 为负号时,P点在直线AB的左侧。
根据图6所示,J1、J2、J3点为已知转角点,B和B’点为测量得到的高程点。将B点投影到J1-J2耐张段上,J1-A的长度小于J1-J2,则B点是J1-J2耐张段内的点;又如B’高程点投影到J1-J2 耐张段上,J1-A’的长度大于J1-J2,则B’点是J1-J2 耐张段外的点。通过这样的判断可以将高程点划分到不同耐张段上,但C点和C’点比较特殊。线段Ⅰ是过J2点垂直J1-J2 耐张段,线段Ⅱ是过J2 点垂直J2-J3 耐张段,C点和C’点位于线段Ⅰ和线段Ⅱ相交的范围内。可以看出过C 点可分别做两条垂线,ca 垂直J1-J2,Cb 垂直J2-J3,垂足点都在耐张段内。过C’点可分别做两条垂线,ca’垂直J2-J3,Cb’垂直J1-J2,垂足点都在耐张段的外,在其延长线上。进行高程点划分的过程中需要分析C和C’这类点,如果高程点有2个以上的垂足点,并且都在耐张段内,那么此类点距离哪个耐张段近,就划分到此耐张段中;如果高程点没有耐张段内的垂足,只有耐张段以外的垂足点,需要继续判断这类点距离哪个转角近,此类点的里程与它最近的转角里程相等。图7为断面点与路径关系的判断流程图。
图6 断面点与路径关系
图7 断面点与路径关系的判断流程图
2.6 输电线路选线与数据处理系统测试与应用
等高线输出org处理功能如图8所示,选取1∶1 000的带状地形图进行实验,线路工程总长度共计1.8 km。利用等高线输出org功能,设置起点里程为0,左右边线各20 m,点击提取转角点命令并选取路径,自动提取转角坐标并生成左右边线路径,点击输出org 命令,用时15″ 生成org 文件。SLCAD 软件打开输出的org 文件,显示出平断面图,将中心断面数据与左右边线连接后,设计人员可进行杆塔排位。利用这种方法,方便设计人员比选路径方案。图9 为等高线输出org的平断面图。
图8 等高线输出org处理功能
图9 等高线输出org的平断面图
高程点输出org 功能如图10,选取8.5 km 的线路进行实验,利用GNSS 接收机、全站仪和无人机航测系统采集地形和地物的三维坐标,用南方CASS 软件展点,选择高程点输出org 功能,设置起点里程为0,距离中心线40 m 的高程点为路径影响点,点的偏距设置1 m,点击提取高程点命令,自动提取转角坐标,点击选取高程点命令,选中6 314 个点,点击输出org 命令,保存输出文件。软件输出6 314 个高程点,用时3″ 。用SLCAD 软件打开输出的org 文件,显示出平断面图,将中心断面数据与左右边线连接后,可进行杆塔排位。图11 为高程点输出org 的平断面图。
图10 高程点输出org处理功能
图11 高程点输出org的平断面图
为了确保输出的数据准确性,分别检查高程点输出org成果与等高线输出org成果的质量。检查高程点输出org 成果是利用CAD 软件量取高程点的偏距,以及高程点投影到路径上的里程,将量取的数据与输出的org 数据对比,查看是否有偏差。在J1-J2、J2-J3、J3-J4 之间,每个耐张段内选取重要的高程点(重要的高程点是弧垂最低点下的高程点和地面高程相对高一些的点)30个,量取偏距和里程,经对比分析,数据完全相同。检查等高线输出org成果,利用cad软件量取等高线距离转角点的平距和查看等高线的高程,每个耐张段内选取重要的高程点30 个,经对比分析,数据完全相同。分析得出软件输出成果准确,完全与手动量取的结果一致。
输电线路选线与数据处理系统已经在35 kV 光伏送出工程和35 kV 风电送出工程中多次使用,实际效果良好。使用过程操作流畅,未出现过错误,软件整体比较可靠。
3 结 语
本文介绍输电线路选线与数据处理方法,对其现状进行分析,设计输电线路选线与数据处理系统的流程和方法,利用AutoCAD平台,选择Visual Lisp 程序设计语言二次开发,实现输电线路选线与自动的数据处理。在AutoCAD图形化界面下,既能在等高线上生成ORG 数据,又能利用高程点生成ORG 数据。方便设计人员比选路径方案,节省测量人员的工作时间,减少人为失误率,提高制图质量。在数据处理过程中,如何将CASS 软件中的线划图转换成ORG 数据中的平面图是进一步需要研究的问题。