基于物联网的应急燃油发电机监控系统*

2023-11-29 11:26哈尔滨工业大学芜湖机器人产业技术研究院林宇丰刘丰福
数字技术与应用 2023年11期
关键词:燃油发电机服务器

哈尔滨工业大学芜湖机器人产业技术研究院 林宇丰 刘丰福

为解决对应急燃油发电机难以集中管理以及运行状态的监视和周期性维护耗费人力和时间的问题,结合物联网技术,研发了监视、控制、管理一体化的监控系统。首先,介绍了监控系统所具备的基本功能和系统设计时所遵循的原则。然后,在研究监控系统整体结构的基础上,提出了基于OPC UA 通讯协议实现的应急燃油发电机与监控系统的连接方法,进一步阐述了监控系统基于ASP.NET Core 的技术架构和逻辑结构。最后,给出了监控系统的数据监测与远程控制的实现方法。

电力能源是在当今社会中最主要的能源。为了避免电力中断而影响人们的生活和企业生产,在重要的区域如医院、学校、政府部门等都配有应急备用电源,以减少电力中断所导致的人员伤亡和重大经济损失。应急发电机以燃油发电机为主,其具有燃油效率高、燃料容易获取、不受地域限制或气候环境影响的优势[1]。应急燃油发电机可以独立运行,并且可以长时间进行供电,最大限度地避免了电力中断所带来的影响,因此得到了广泛的应用。

应急发电机具有工作时间不确定性,存在地理位置分散以及难以集中管理的问题。一方面,由于应急发电机的工作特性,其工作时间无法预测且往往都是突发性的。现阶段,应急燃油发电机的维保工作主要是通过人工的方式进行定期启动测试和周期性的保养[2-4];另一方面,应急发电机的分布不集中,甚至有的在偏僻的山区,因此进行维保工作时将会耗费大量的人力和物力。

作为当下的热门趋势之一,物联网技术已被广泛应用于各个领域。现有的监测或监控系统虽然能够实现数据监测,但还没有具备实时监控的功能或受到通讯限制不能进行异地远程监控[5-8]。本文将基于物联网技术开发应急燃油发电机的监控系统,将应急燃油发电机进行集中管理,并实现实时监测与远程控制等功能。

1 监控系统的基本功能

应急燃油发电机监控系统通过为企业部门和技术人员提供应急发电机数据作为参考,利用远程控制功能完成启动、停机等操作,能够有效地减少技术人员到达现场的次数,以提高企业的经济效益。另外,配合维保管理、故障管理等功能,使得对应急发电机的维护工作能够得到更精确合理的安排,以进一步提高应急燃油发电机的工作可靠性。

作为监测、控制、管理一体化的监控系统,其具备了四大功能模块:即设备档案管理、设备监控管理、设备维保管理以及用户角色管理。每个功能模块下的具体功能如图1 所示。

图1 监控系统的功能结构图Fig.1 Function structural diagram of monitoring system

(1)设备档案管理。应急燃油发电机监控系统的设备档案管理是整个系统重要的组成部分之一。系统的绝大部分功能都离不开发电机设备,所以需要建立一个良好的设备模型。设备信息记录着各个发电机的基本信息,并允许上传设备照片,以便于技术人员能够在现场快速辨别相关发电机。设备变量是指应急发电机中所有可被监测的参数,通过设置各个变量的节点地址能够让数据采集服务准确获取该变量的数据,使采集过程更为流畅。

(2)设备监控管理。设备监控管理模块是应急燃油发电机监控系统的核心功能之一,其包括实时数据监测、历史数据查询以及远程控制。数据监测和查询能够让技术人员掌握停机发电机的实时状态,为不在现场的技术人员对发电机进行故障排查或分析提供数据参考。远程控制实现了发电机的启动和停机等基本操作,减少技术人员到现场为应急发电机进行定期启动测试的次数,能够节约企业的人力成本与时间成本。

(3)设备维保管理。应急燃油发电机的维护与保养是保证其在遇到电力中断时可以正常运行的重要因素之一。监控系统中具有设备的维保管理,其记录着发电机的维保情况、维保单位、费用等信息,能够辅助技术人员安排维保工作。故障维修管理能够让技术人员在发现问题后及时上报,然后由管理人员根据情况安排维修工作。此外,在维保管理模块中还能够按照指定时间段对维保费用进行统计,以便于日后的财务规划。

(4)用户角色管理。应急燃油发电机监控系统的用户角色管理是保证系统安全性的重要功能,可以避免外来人员进入到监控系统。用户管理记录了所有能登录监控系统的技术人员或管理人员。对不同的用户还可以分配不同的角色,而每个角色对应着不同的权限,用户交互界面也会随着用户角色的不同而有所变化。

2 监控系统的设计原则

应急燃油发电机监控系统开发的目的是为了解决应急发电机维护和监测耗费大量人力财力和时间的问题。一个完好的监控系统不仅仅在功能上解决问题,还需要考虑该系统的未来发展趋势。因此,应急燃油发电机监控系统在设计开发时,将依据以下几点原则:

(1)实时性。应急燃油发电机监控系统需要实时数据才能准确地展示发电机的当前运行状态,所以要确保从应急发电机中所采集的数据能够及时传输到数据库中。另外,对应急燃油发电机的远程控制要保证低延迟的信号传递,使应急发电机能够快速接收控制请求并进行响应,避免技术人员进行重复控制等误操作。

(2)可靠性。可靠性是指在应急燃油发电机监控系统在长时间运行或进行大量的信息处理时,依然能够正常稳定地运行。监控系统须具备24h 不间断运行的能力,即使出现系统崩溃或宕机的情况,监控系统能够在短时间内快速恢复正常。为保证监控系统与应急发电机之间的通讯流畅,应急发电机有多种联网方式以及断网自动重连功能,以确保应急发电机始终处于在线状态。

(3)可维护性。应急燃油发电机的监控系统在设计时需要考虑到系统在实际投入应用后,可能会因为企业业务的调整而需要对部分功能进行调整或二次开发。为方便后期系统维护人员对系统进行更改,对基本的系统设置提供用户交互界面,减少通过后台进行代码修改。同时,为提高程序代码的易读性,对所有应用程序中的函数都添加注释。

(4)安全性。应急燃油发电机监控系统的安全性可以分为两个方面:首先是系统的应用安全,其包括通过权限授权用户使用系统的功能及资源,避免外来人员或无关人员进入系统;其次是数据安全,即使用专用的通讯协议进行数据传输,并对数据库中关键和敏感的数据进行加密,保证数据的完整性和保密性,加大直接获取有效信息的难度。

(5)灵活性。应急燃油发电机监控系统在设计开发时要选择具有兼容性的操作系统和数据库等,使系统能够快速转移到其他硬件或服务器上,避免相关技术迭代后导致系统不能正常使用。监控系统还具备未来可扩展的特点,能够快速部署新的功能或集成其他子系统,并根据需求随时增加或删减应用模块。

3 监控系统的整体设计

3.1 总体框架设计

应急燃油发电机监控系统的总体框架设计如图2 所示,主要由应急发电机、云端服务器以及客户端用户三个部分组成。云端服务器包含了各种逻辑业务和功能服务,承担了整个监控系统的绝大部分事务,其中包括处理应急燃油发电机PLC 的数据、处理各种来自客户端的请求和操作、呈现用户界面以及向应急发电机发出控制请求等。

图2 监控系统的总体框架Fig.2 Overall framework of monitoring system

应急燃油发电机可以根据自身现有的PLC 通讯接口,利用现场总线技术或通过4G 移动通讯网络和局域网进行联网。云端服务器中的数据服务模块将获取应急发电机的数据,按照数据库的存储要求进行处理,并保存至数据库中。客户端用户则利用互联网与云端服务器连接,在浏览器上通过Web 服务进行操作和控制。

应急燃油发电机监控系统是以物联网技术为基础,为实现该监控系统,应急发电机不仅需要能够进行联网,还需要能够形成OPC UA 服务器,通过OPC UA协议接入到云端服务器中。随着工业智能化的推广和普及,新一代的工业设备已经具备了上述条件,可以直接作为OPC UA 服务器使用,但极少应用在应急燃油发电机中。这导致了有许多正在投入使用的应急燃油发电机,难以直接启用OPC UA 服务器,甚至所使用的PLC 可能还缺少了OPC UA 的接口。

为了解决应急发电机无法直接组网以及对不同品牌的PLC 需要不同协议的问题,需要一个能够接入以太网并且支持各种PLC 协议的数据采集网关设备。对此,应急燃油发电机监控系统将采用工业级边缘计算智能网关。如图3 所示,利用智能网关作为应急燃油发电机与云端服务器之间的桥梁,专门负责处理PLC 的协议解析和转换,形成OPC UA 的接口,不仅能够解决上述问题,还可以直接作为OPC UA 服务器使用。

图3 智能网关在监控系统中的应用Fig.3 Application of smart gateway in monitoring system

应急燃油发电机的PLC 通过其具有的通讯接口,如串口RS-232、RS-485 或以太网RJ-45 等,与智能网关进行有线通讯,每个应急燃油发电机都可以单独配一个智能网关。在后期应用与发展,即便换了新的应急燃油发电机或PLC 的协议出现变更,只需要单独重新设置网关即可,不需要对云端服务器进行重大调整,提高了监控系统的灵活性。

智能网关可以通过4G 移动通讯网络以及有线的局域网进行联网。当其中一个网络服务中断时,网关能够自动切换到另一个方式进行联网,通过两种不同的联网方式提高智能网关的工作可靠性,尽可能保证云端服务器能够随时通过网关与应急燃油发电机进行连接。

3.2 技术架构与逻辑结构

为了方便用户在无需安装任何特别的应用软件的情况下使用监控系统,应急燃油发电机监控系统采用B/S 架构,即浏览器/服务器结构。浏览器是指Web 浏览器,作为监控系统的前端,其主要负责显示用户界面并向服务器发送请求,拥有极少的事务逻辑。监控系统的应用程序以及数据库系统都将部署到服务器上,由服务器负责实现绝大部分的事务逻辑。

应急燃油发电机监控系统将使用基于微软的.NET 平台中的ASP.NET Core 网站开发技术。ASP.NET Core是.NET 的新型高性能的开源框架,它是ASP.NET 的重新设计,简化了网页应用的编程过程和开发工具。ASP.NET Core 不仅允许应用在Windows 上进行开发运行,而且还能够在macOS 和Linux 跨平台上使用。ASP.NET Core 能够用于开发网络应用服务和物联网应用,并将应用部署到云端服务器上运行,非常适合应用在该监控系统上。

监控系统的应用程序将通过语句集成查询(LINQ)的语言级查询语法来完成数据库的查询操作。LINQ 具有很高的表达力度,其代码精简,能够在程序的逻辑意图和代码之间找到合理平衡,实现高效的编程过程。LINQ不仅简化了数据访问的方法,而且还可以实现在查询数据过程中插入逻辑操作,使数据查询能够灵活地根据具体功能需求随时调整。

应急燃油发电机监控系统的应用程序采用模型-视图-控制器(MVC)的结构模式。MVC 体系结构模式将应用程序分成三个主要部分,即模型、视图和控制器。将系统应用程序按照MVC 结构进行划分有便于编码的过程和对单一功能进行调试测试。如图4 所示,将程序的显示模块、功能模块和属性模块分离后,每个部分都有各自的功能,降低了代码之间的耦合性,进而提高了程序的可维护性和可扩展性。

图4 监控系统的逻辑结构Fig.4 Logical structure of monitoring system

应急燃油发电机监控系统的业务功能在MVC 结构模式下的调用逻辑为:客户端用户通过前端的视图进行操作时或通过URL 网址进行访问时,会向应用程序发送一个请求。控制器接收到该请求后,会按照程序的流程进行处理,选择相应的模型和视图进行响应,并将结果展示给客户端用户。

4 监控系统的核心功能实现

4.1 数据采集服务

应急燃油发电机监控系统是以应急发电机的变量数据为基础。为了确保数据采集过程能够独立运行且不会受到其他模块影响,本文设计了一个能够部署在云端服务器的数据采集服务,其程序流程图如图5 所示。该服务将由应用主程序调用,并按照系统设置的时间间隔触发,从而实现实时的数据采集。

图5 数据采集服务的程序流程图Fig.5 Program flow chart of data acquisition service

首先,数据采集服务会与监控系统的数据库进行连接,从数据库中获取用户事先为应急发电机设置的OPC UA 服务器的通信地址以及各个变量的节点地址。接下来,根据应急发电机的通信地址,数据采集服务会在基于TCP 协议尝试寻找对应的OPC UA 服务器并建立通信通道。当连接成功后,数据采集服务会按照变量节点地址在OPC UA 服务器里读取对应节点的具体数据值。在获取变量数据后,数据采集服务会将数据按照数据库要求进行最后的处理,最终将数据存入数据库。

当OPC UA 服务器出现网络中断时,会导致数据采集服务无法建立连接。此时会提示连接失败,而OPC UA 服务器会将未能成功传输的数据临时保存在自身的存储器中,待网络恢复后,主动补发数据至云端服务器。

4.2 数据查询与监测

应急燃油发电机的数据传递是以云端数据库为中间节点分成两个独立运行的部分,如图6 所示。数据采集服务会实时地进行数据采集并将数据写入数据库中,而MVC 部件只有在收到用户请求后才会进行数据调用和展示的工作。应急燃油发电机的数据将通过CanvasJS 图表库生成的曲线图进行展示,能够以直观的方式表达变量变化的趋势。

图6 数据传递过程Fig.6 Process of data transfer

当用户进行历史数据查询时,MVC 部件会根据浏览器用户要查询的时间段调用相应的数据,以静态的网页将这些数据进行展示。当用户使用实时数据监测功能时,如果需要通过刷新整个页面的方式触发MVC 部件,会给用户造成不好的使用体验,所以需要利用JavaScript制作动态页面。通过JavaScript 可以对数据监测页面中的曲线图进行更新,实现在不重新加载整个页面的情况下获取最新的实时数据,使得用户获得更好的浏览体验。

4.3 远程控制

远程控制功能是MVC 部件中唯一能与OPC UA 服务器建立连接的功能。远程控制的程序流程如图7 所示。在设备档案管理模块中为应急燃油发电机设置变量时,用户需要选择应急发电机的变量是否允许写入,而这信息将在远程控制功能中有所体现。对于可写入或控制的变量,应用程序会在远程控制页面生成相应的操作按钮,每个按钮都对应着一个可控的变量。用户则可以通过操作按钮实现对应急发电机的远程操作,如启动、停机等。

图7 远程控制的程序流程图Fig.7 Program flow chart of remote control

当用户点击操作按钮时,应用程序会获取当前应急燃油发电机的OPC UA 地址,并与对应的OPC UA 服务器建立连接。成功连接后,将用户的操作写入到相应的应急发电机变量中。例如,用户点击“启动”按钮后,会把OPC UA 服务器中的启动变量的具体值从原来的“false”改写成“true”,然后由应急发电机的PLC 部件执行该动作,启动应急发电机。

5 结论

本文提出了基于物联网技术的应急燃油发电机监控系统。该监控系统利用智能网关实现了与应急发电机建立基于OPC UA 通讯协议的连接通道,实现了数据采集与监测和远程控制核心功能,能够减少对应急燃油发电机的现场启动测试与定期维护所耗费的人力物力,进而提高企业的经济效益。

猜你喜欢
燃油发电机服务器
燃油泄漏闯了祸
通信控制服务器(CCS)维护终端的设计与实现
大型发电机励磁用旋转变换器的开发和应用
中国服务器市场份额出炉
得形忘意的服务器标准
随身携带的小发电机
计算机网络安全服务器入侵与防御
柴油发电机负荷计算
奔驰S500车燃油表不准
迈腾1.8TSI车燃油消耗量大