张 洁 徐彦青 魏国富 高 珂 王金龙
1(青岛理工大学信息与控制学院 山东 青岛 266520) 2(青岛前景互联信息技术有限公司 山东 青岛 266073)
热网监控是城市供热的基础保障。目前大部分城市的供热系统,尤其是换热站数量较多的供热系统都已按照国家规范安装了监控系统[1-3],监控系统对整个热网的热力参数进行跟踪监测,快速、准确地反映仪表故障报警信息。因此,城市供热中的监控系统是否能够正常且有效地运行,是整个热网控制系统中自动监测与控制的关键一环。但在城市供热的正常运行中,对其监督和监控往往局限在对压力、温度等各功能模模块单元中,对热电厂以及热力公司等供热企业未能形成有效监管。供热企业对各功能模块单元的监控,往往局限于供热企业自检和定期的现场检查,对于各功能模块硬件设备工作状况实时监控缺少有效的手段[4-8]。因此,建立完善的监控系统具有重要的现实意义,能够有效节省人力物力,保证数据可靠传输,加强对供热系统的监督,提高供热系统的仪器设备预警能力,提高现场修检人员快速反应能力,保护管网和仪表仪器设备的安全[9-10]。针对监控系统对热网监测分析不完善的问题,本文设计了协议转换方法,利用GIS技术,实现了热网监测管理系统,主要包括报警监测、监督管理、GIS管理、实时数据管理等功能。对于没有安装热网相关设备的供热企业,通过安装电磁流量计、超声波流量计、压力变送器等流量传感器,利用智能流量显示仪收集传感器数据,然后为智能流量显示仪配置(Data Transfer unit, DTU)设备。这是专门用于将串口数据转换为IP数据或将IP数据转换为串口数据通过无线通信网络进行传送的无线终端设备。并与前置软件(一种连接智能流量仪表和后台的通信处理机)相连通,在前置软件中对数据进行协议解析处理,并将数据的格式统一化,然后把数据存入数据库中。热网监控管理系统解决了目前国内监控系统对热网运行状态监测与分析不完善、监管力度不足的问题,并在江苏省某热电厂工程中成功运行至今,验证了系统的性能。
随着热网规模不断扩大,热网数据越来越多,传统的数据采集处理无法实时、准确地获取热网范围内的全部热网数据。另外,目前的热网设备来自不同厂商,其使用的传输协议各不相同,因此在采集数据和处理数据时,需要对数据进行协议预处理。
文献[3]对供热企业提供监控管理,利用控制器(可编程逻辑控制器)PLC采集处理换热站信号,并基于该信号设计数据库表,但是对使用不同传输协议的设备不能进行处理。文献[4]针对锅炉设计了监控云平台,该平台可与使用扩展协议的设备进行数据传输,但是对扩展协议有要求,扩展协议不可与平台原通信协议中所使用或保留的控制命令相冲突。
在热网监控中,首先各种热网传感器将数据传输到智能流量显示仪中,智能流量显示仪配置DTU并与前置软件相连,前置软件定时向智能流量显示仪发送查询数据的指令,智能流量显示仪返回对应的数据包给前置软件。由于传感器设备来自不同厂商,通信协议各不相同,造成数据库存储的障碍,本文通过对不同协议进行判断和处理,再根据对应协议对通信包中数据进行解析,将数据转换成统一格式再存入数据库中实现对热网数据的实时获取。同时系统可以根据需要进行规模扩展,兼容现有设备或加入更新设备。图1为协议转换图。
图1 协议转换图
热网监测管理系统在每个供热企业的使用现场部署超时波流量计、平衡流量计、压力变送器、电磁流量计等传感器设备,设备采用MODBUS标准通信协议(应用层报文传输协议),以 485总线为基础,组成问答式的局部通信网络,智能流量/热量显示仪在此通信网络下采集、解释、换算实时数据(传感器设备中的各种热网数据),并负责处理、存储、管理。系统的前置软件通过ICP/IP协议连接到装配置了DTU的智能流量显示仪。配置硬件人员在DTU中刷入远程平台IP、配置心跳规则、注册包等,将不同设备和远程平台的端口进行匹配,以便获取实时数据和下发指令。但不同设备或者不同供热企业因实际情况可能使用不同的协议,即使是同一个供热企业使用一类设备,也可能存在设备之间的协议类型不同。表1列出了系统中前置软件与 DTU之间的数据格式。
表1 数据格式表
表2是对数据格式的解释说明。
表2 数据格式说明
以本系统中热网系统“Xuyi”协议为例解析数据。前置软件向智能流量/热量显示仪发送9C 01 01 77 79 00指令,查询“联谊生物”机构的数据,返回一个数据包,如下:
22 09 94 17 86 00 15 43 00 56 51 00 00 13 26 00 01 73 07 00 00 69 27 00 00 00 00 23 00 00 99 00 00 05 01 34
表3是基于“Xuyi”协议对上述数据包的解析说明。
表3 数据包解析表
Web服务器通过前置软件获取数据主要包括3个过程:信息获取、信息提取、信息发送。
(1) 信息获取 Web服务器从DTU配置中获取设备和远程平台IP端口对应顺序,根据实际情况,设置时间间隔,定时通过前置软件向配置了DTU的智能流量显示仪传输指令,然后获得对应设备的数据包,当数据包过长时,将一个数据包分成长度合适的多个数据包进行传输,避免发生TCP/IP丢包的情况。
(2) 信息提取 从数据包中解析数据,根据不同需求和协议,进行不同的解码和提取,去除冗余字段,进行格式统一处理。
(3) 信息发送 本系统存在2种信息发送情况。一种是Web后台服务器向前置软件发送指令(如控制阀门等设备的打开、关闭或者对某个设备进行充值等),前置软件根据指令中涉及设备所使用的协议对Web后台服务器传输的指令进行解析并转化成ASCII码形式指令,然后再下发给智能流量显示仪。另一种是前置软件定时根据协议拼接特殊指令(整点数据上报指令,监测采集指令等)并下发给智能流量显示仪,同时设置监听将获取的实时数据及时推送给Web服务器。
系统总体架构设计采用站控层、通信层和间隔层三层架构。在间隔层采集传感器与热网设备运行的实时数据,经通信层的Web服务器、交换机,通过网络传输的方式与站控层进行数据传输,实现远程监控管理热网。系统网络拓扑架构图如图2所示。
图2 热网监控拓扑架构图
该系统将数据展示和处理严格分开,系统逻辑结构更加清晰,同时提高系统安全性能。业务逻辑和数据处理完全分开的设计方法有利于对系统的维护和功能扩展。本文的系统框架如图3所示。
图3 热网监控系统框架
首先热网监测管理系统定时通过前置软件向智能流量仪表发送不同指令,通过指令查询数据,同时前置软件连接后台与传感器、压力计等传感器,智能流量仪表定时以报文形式发送数据包应答前置软件。然后前置软件获取相应的数据报文并按照协议进行解析,再提取出设备端口、压力、温湿度等主要信息,并对信息进行格式统一处理再存入数据库中。最后浏览器向后台服务器发出请求,后台接收请求后解析并对数据库进行相应处理。处理完成后,将结果封装成JSON字符串然后传到前台页面,在浏览器上展现。
本系统采用SSM框架开发,分为数据访问层、业务逻辑层、业务控制层。数据访问层封装操作数据的方法,该层包括2个部分:封装的SQL语句和调用SQL的方法接口类。通过调用接口使用相应的数据库操作方法;创建公用业务逻辑层,并在此层中封装基础业务逻辑操作,然后将数据访问层注入该层,通过在公共方法类中调用相应的数据接口,进行不同的业务逻辑预处理;通过控制层调用业务逻辑层来完成业务逻辑操作。
系统采用模块化设计,图4为实时数据信息的UML类图。业务控制器AtYewushujuController封装了为不同的页面传递数据的方法,它通过调用业务逻辑层AtYewushujuService里面封装的操作数据接口,完成对实时数据信息的操作,包括:定时刷新实时数据和锅炉数据;加载负载曲线(热网分表、总表和锅炉的瞬时流量对比曲线);加载管损曲线(热网分表、总表和管损的瞬时流量对比曲线);批量删除和展示历史数据(前一个月的实时数据);根据条件查询历史时刻数据和超限数据报警信息,根据机构、日期和变量的查询条件展示变量曲线对比图;蒸汽日报、蒸汽时报、蒸汽月报、蒸汽天报、蒸汽年报等统计报表信息。
图4 热网实时信息的UML类图
对于系统在线用户的操作,在传统的Web应用模式中使用同步加载操作,服务器处理完HTTP请求后需重新加载整个页面。本系统采用AJAX技术(一种通过异步通信实现客户端页面局部更新的技术)实现页面的分步刷新。
系统前置软件接收的数据包有4种类型信息:热网数据信息、设备信息、机构信息和充值信息。系统将设备管理表与系统机构表关联得到供热企业的设备状态信息;实时业务数据表与设备管理表关联得到设备的热网数据;系统机构表、设备管理表和充值表关联得到供热企业的充值信息。由于一个设备每隔几分钟产生一条实时数据并存入实时业务数据表,为避免冗余数据过多,提高查询效率,将实时业务数据表中超过6个月的数据提取出来,再转存至业务数据表。实时业务数据表、系统机构表、充值表和设备管理表的关系如图5所示。
图5 系统表关系图
前端使用jQuery+Bootstrap技术来渲染页面并通过浏览器展现给用户。本系统定时刷新首页单位监控模块中的数据,单位监控模块展示了热网单位的名称和状态,实时数据一旦超过该单位设置的上下限值,就将状态改为超限报警,同时刷新首页的单位详情模块。单位详情模块默认展示单位监控模块中排列在第一行的单位的所有热网数据,用户可通过点击不同的单位名称来切换单位详情模块的数据。单位详情模块中所展示的单位状态为超限报警的情况下将超出限制值的热网数据标记为红色,以引起热网用户的注意,并快速确认出现异常的数据。标出超线数据和单位状态报警的javascript代码如下:
//首页监控实时单位报警
function addLianWangTr(obj ,_index) {
var type = "1";
//在页面拼接出监控单位的状态:工作正常,断电状态,
//网络异常或者超限报警
var _tr = ′
′′+
′′+
′
$′#lianwang_body_max′).append(_tr);
}
function openDanWeiViewInit(obj) {
for (var o in obj) {
//对超出限度的某个数据进行页面报警
//判断密度的数据是否需要报警
changedivcolor(midumax,midumin,midu,"midu");
//判断频率的数据是否需要报警
changedivcolor(pinlvmax,pinlvmin,pinlv,"pinlv");
//判断温度的数据是否需要报警
changedivcolor(wendumax,wendumin,wendu,"wendu");
//判断压力的数据是否需要报警
changedivcolor(yalimax,yalimin,yali,"yali");
//判断流量的数据是否需要报警
changedivcolor(liuliangmax,liuliangmin,liuliang,"liuliang");
}
}
//改变数据颜色,实现报警的方法
function changedivcolor(limitmax,limitmin,limitcanshu,id) {
var canshudiv=document.getElementById(id);
if(parseInt(limitcanshu)>parseInt(limitmax)||parseInt(limitcanshu) canshudiv.style.color="red"; }else { canshudiv.style.color="#00d0fe"; } 系统具备报警监测,监督管理,GIS管理,实时数据管理四大功能,功能模块结构如图6所示。 图6 系统功能模块图 3.5.1报警监测 系统分为余额报警、余量报警和页面报警。余额报警的流程如下:系统定时获取热网的实时数据(包含实时的余额数据)和报警信息,如果接收到的报警信号为余额报警,系统将日期、充值类型、余额不足的机构名称、当前余额剩余量,以及余额限度等数据拼接为余额报警短信,然后将短信发送给用热网单位相关负责人,负责人及时对余额不足的设备进行充值;如果实时获取的余额数据低于一定的余额下限值,则再发送一条余额报警提醒短信。余量报警短信与余额报警短信流程一致。页面报警流程:系统实时接收显示联网供热企业各个监测点的设备数据,当数据超过供热企业设置的对应的数据限制,在页面做突出显示处理。 3.5.2监督管理 监督管理用于对供热企业的添加和管理,对项目的机构、岗位、用户等进行相应操作设置,设置拥有余额下限权限(接收余额报警短信)、余量下限权限(接收余量报警短信)和充值成功权限(充值成功后接收充值成功短信)的人员,为不同的登录该系统的人员设置不同的权限、展示不同内容,或者改变权限的分配情况,对系统不同权限人员(如系统管理员,二级管理员)进行添加、分配权限等操作,拥有不同系统权限的系统用户对充值记录有不同的审核权限。 3.5.3GIS管理 系统可以自由地为每个机构标注热网管道,或者修改已标注的管道信息,在GIS上的对应地理位置标注管道的走向、长度等。该标注信息实时展示在浏览器首页,供各用户查看。标注每个供热企业位置并高亮显示企业名称,各系统登录用户可通过点击企业名称快速查看企业详情。 3.5.4实时数据管理 主要是对不同区域不同供热企业的设备数据进行统计和分析、展示数据、提供数据对比、制作报表,为各级供热企业管理提供信息支撑。 系统首页展示所有供热企业的GIS标注和实际管道标注情况如图7所示。点击GIS上的企业标签展示该企业的实时数据、实时曲线、历史数据、历史曲线。 图7 GIS管道图 对系统内大规模的热量数据,除了如GIS内的数据列表和实时曲线等展示形式,本系统还提供如图8所示的对比曲线图形式,用户从选择机构的下拉框中选择任意一个或多个机构,改变日期(默认为当天)和变量(默认为流量)即可查询出选择日期下,所选择机构的变量对比图,直观提供了不同机构的变量差异。 图8 曲线对比图 系统展示热网数据的另一种方式为统计并生成报表。本系统提供蒸汽日报、蒸汽时报、蒸汽月报、蒸汽年报、蒸汽天报等多种报表。图9就是蒸汽年报图,展示了不同区域热用户使用流量的情况和单位,将一年分为1月到12月份并显示合计数据。 图9 蒸汽年报图 系统对热网中的异常数据提供页面报警,如图10所示,其中:(a) 是热网的单位监控模块,单位监控模块是热网中的单位名称和状态的列表,一页展示5条记录,可以翻页查看剩余单位列表,列表对超出设定限度的单位显示超限报警,如科思化学;(b) 是单位详情模块,默认展示单位监控模块中的第一条数据,单位详情模块中标红具体的超限数据如温度数据。点击单位监控模块中的不同单位名称可以切换单位详情模块中的单位数据,展示所点击单位的具体数据。 (a) (b)图10 热网综合监控图 系统提供角色权限服务,针对不同用户提供不同的可操作范围,如图11展示登录系统的角色名称、角色编码、是否为系统角色、用户的类型,其可以访问的数据范围为更新的时间、备注信息、用户的状态以及对该用户的操作和新增系统使用者。操作的类型有编辑、停用、删除、功能菜单、系统权限、分配用户。 图11 角色管理图 系统实施过程中,涉及到智能仪器仪表、压力变送器、平衡流量计等仪器设备,表4列举了项目中设计的所有设备型号。 表4 采集设备表 现场设备通过局部通信网络,被智能流量显示仪收集数据,再通过有线的VPN和无线GPRS建立的通信网络将数据传输到前置软件进行处理。图12是现场的设备图,左侧位智能涡街流量计,右侧为智能流量显示仪设备。 图12 现场设备图 对于大部分供热系统中安装的监控系统缺乏对整个供热系统的实时监测与分析的问题,本文设计了协议转换方法。利用GIS技术完成了热网监控管理系统的搭建,本文设计的协议转换方法可以对多种协议进行解析,使供热系统中的使用不同通信协议的设备与热网监控系统实时通信,完成本系统对供热系统的实时监测。该系统已在江苏省某热电厂项目中投入使用,且经过长时间的运行验证,证明了系统的可靠性。3.5 系统功能
4 系统应用
4.1 GIS地图展示
4.2 曲线对比图
4.3 数据报表
4.4 页面报警
4.5 角色管理
5 结 语