|
发布时间: 2024-02-28 |
其他研究 |
|
|
收稿日期: 2023-07-31
中图法分类号: TN919.5
文献标识码: A
文章编号: 2096-8299(2024)01-0087-06
|
摘要
基于i.MX6ULL嵌入式平台和gSOAP技术, 设计了电力机房动环监控系统。通过采用分布式架构, 实现了服务端与客户端的通信。该系统实时监控机房运行状态, 如温度、湿度、电压、电流等环境参数, 支持远程设备控制和管理; 同时, 提供实时数据展示和历史数据查询功能, 方便用户监控和分析机房运行状态。测试结果表明, 该系统具有实时性、可扩展性和可靠性等优点, 有效提高了机房管理效率和安全性。
关键词
gSOAP技术; 动环监控; Web服务; 嵌入式; 电力机房
Abstract
Based on the i.MX6ULL embedded platform and gSOAP technology, a power room dynamic environment monitoring system has been designed. The system adopts a distributed architecture, achieving communication between the server and the client and real time monitoring of the operating status of the computer room, such environmental parameters as temperature, humidity, voltage, and current, and support for remote device control and management. At the same time, it provides real-time data display and historical data query functions, facilitating users to monitor and analyze the operating status of the computer room. Test results show this system has the advantages of real-time, scalability, and reliability, effectively improving the efficiency and security of computer room management.
Key words
gSOAP technology; environmental monitoring; Web service; embedded platform; power room
近年来, 随着电力机房规模的扩大和复杂性的增加, 对电力机房的实时监控与管理提出了更高要求。国内的相关研究多以ARM芯片、Modbus协议实现电力机房监控[1], 国外多关注基于云计算和物联网的技术[2], 如Zigbee和Z-Wave[3]。gSOAP是一种能够把C/C++语言接口转换为基于简单对象访问协议(Simple Object Access Protocol, SOAP)的Web Service(网络服务)工具。使用gSOAP作为电力机房动环监控系统的框架, 可以实现分布式架构支持、实时数据传输和处理, 使其具有更强的安全性、灵活的扩展性, 以及跨平台兼容性等特点。这些创新点有助于提高电力机房监控系统的性能、可靠性和安全性, 提供更好的监控和管理能力, 对电力机房环境监控领域具有重要意义。本文通过充分利用嵌入式平台和gSOAP技术, 设计了高效稳定的电力机房动环监控系统, 提升了安全性、稳定性与管理效率。
本文提出的基于嵌入式平台和gSOAP技术的电力机房动环监控系统, 可实时监测温度、湿度、电压、电流等参数, 支持远程控制和设备管理, 提供实时与历史数据展示。其采用i.MX6ULL硬件平台, 使用gSOAP框架作为底层通信协议, 通过RS485与其他设备联动。系统还包括告警通知、本地图像存储和远程视频监控功能。
1 系统总体设计
1.1 接口网络结构
集中监控中心(Supervision Center, SC)是面向多现场监控单元(Field Supervision Unit, FSU)管理的高级监控层次, 即集团监控平台。其通过B接口连接全国的FSU[4]。FSU是由若干监控模块和其他辅助设备组成, 面向设备数据采集、处理的监控层次, 具有采样、数据处理、数据中继等功能。FSU与SC之间通过Web Service和文件传输协议(File Transfer Protocol, FTP)的方式互联, 消息协议为扩展标记语言(eXtensible Markup Language, XML)格式, 二者形成B接口协议的协议标准。接口网络结构如图 1所示。
A接口协议指FSU与被监控的传感器设备、电力设备、视频设备等之间的连接。监控点指被监控设备上的某个特定信号。
1.2 系统设计过程
2 软件设计与实现
2.1 Web界面实现
2.2 A接口实现
A接口首先通过加载厂家提供的协议库对设备资源进行初始化, 包括FSU硬件资源信息、软件资源信息和串口资源信息。该接口支持设备协议的动态管理, 包括动态加载和卸载协议库, 并能及时加载更新的协议库资源。A接口可以通过写串口数据的方式, 将控制命令发送到设备的硬件接口, 实现对设备的控制, 如开关操作、参数配置等。
2.3 B接口实现
2.3.1 B接口实现方式
B接口基于Web Service技术, 采用超文本传输协议(Hyper Text Transfer Protocol, HTTP)+SOAP+XML的方式。其具体实现方式如下。
(1) 网络服务描述语言定义 网络服务描述语言(Web Services Description Language, WSDL)是一种基于XML的规范, 描述了接口的数据类型、操作和消息格式。使用WSDL来定义系统B接口的结构和操作。
(2) SOAP消息格式 SOAP消息包含请求和响应的数据以及相关的标头信息, 如操作名称、命名空间等。使用XML构建符合SOAP协议的消息格式。
(3) HTTP传输方式 使用HTTP作为底层的传输协议。在发起接口请求时, 将SOAP消息封装在HTTP请求体中, 并通过Post方法发送给响应方的接口统一资源定位符(Uniform Resource Locator, URL)。响应方接收到请求后, 返回的响应消息也通过HTTP进行传输。
(4) XML编解码 在SOAP消息中使用XML来编码和解码接口数据, 使用XML的结构和标签来描述接口请求和响应的数据结构和内容。
(5) SOAP协议交互 根据WSDL定义的接口操作, 将请求消息发送到接受的接口URL, 并等待响应方的响应。响应方收到请求后, 根据SOAP消息中的操作类型和参数进行相应的处理, 并将响应数据封装到SOAP消息中返回给请求方。
(6) 消息协议 采用XML格式进行数据交换, XML报文格式如表 1所示, 根据报文类型区分数据传输类型, 并实现相应功能。
表 1
XML报文格式
报文类型 | 一级节点 | 二级节点 | 定义 |
请求 | Request | Rk_Type | 报文类型 |
Info | 报文内容 | ||
响应 | Response | Rk_Type | 报文类型 |
Info | 报文内容 |
2.3.2 B接口上gSOAP技术的应用
(1) 通过使用gSOAP技术, 可以实现监控系统的分布式架构。gSOAP支持客户端和服务器端之间的双向通信, 可以实现监控系统的分布式部署, 将监控任务分散在多个节点上, 提高系统的可靠性和可扩展性。
(2) gSOAP具有高效的数据传输和处理能力, 可以实现监控数据的实时传输和处理。通过gSOAP的异步通信机制和高并发处理能力, 可以减少数据传输的延迟, 有效地实现动态监控和实时预警。
(3) gSOAP提供了多种安全机制, 如安全套接层/安全传输层(SSL/TLS)协议、SOAP消息加密和数字签名等, 可以增强监控系统的安全性[11]。通过对数据的加密和身份验证, 可以保护敏感数据不被非法篡改和访问, 提高系统的安全性和信任度。
(4) gSOAP支持自定义的数据类型和接口描述语言, 可以根据监控系统的特定需求进行灵活地扩展。开发人员可以基于gSOAP进行定制开发, 以满足不同的功能和接口要求, 提供更加个性化和定制化的解决方案。
(5) gSOAP是一个跨平台的框架, 可以在不同的操作系统和硬件平台上运行[12]。这使得电力机房监控系统可以在不同的环境中使用和部署, 实现系统的灵活性和可移植性。
2.3.3 B接口工作流程
FSU客户端能够建立安全可靠的连接, 与SC进行数据交换, 并在需要时灵活地建立或关闭连接, 有效地促进了数据的传输效率和安全性。FSU与SC建立连接过程如图 2所示。
具体的工作流程如下。
步骤1 FSU客户端先进行4G/3G拨号上网, 成功后建立Internet协议安全性/第二层隧道协议(IPSec/L2TP)隧道连接, 并获取内网IP[13]。
步骤2 IPSec/L2TP隧道连接成功后, FSU向SC传送注册(login, login_ack)报文, 报文需携带用户名、内网IP, 以及FSU所外接的设备ID等, 需由SC端进行验证。这种方式确保了数据的安全传输。
步骤3 登录成功后, B接口协议利用该连接进行通信。
步骤4 若连接中断, 需要重新进行上述连接和注册过程, 以确保持续的网络通信。
步骤5 当在此IPSec/L2TP隧道连接上成功传送登出(logout, logout_ack)报文时, FSU客户端可拆除建立的IPSec/L2TP隧道, 断开传输控制协议(Transmission Control Protocol, TCP)连接, 保证安全关闭。
FSU与SC成功建立连接后, 作为客户端向SC平台注册机发送注册指令进行注册。SC作为服务器端, 由SC平台注册机统一分配采集机, 并通知采集机, 向采集机下发FSU的注册信息, 进行系统注册。SC返回注册成功信息并将分配的采集机IP反馈给FSU。注册成功后, B接口利用该连接进行通信。FSU会持续检查外接设备数据库是否有监控点的告警信息, 如果有, 则向采集机上报。FSU客户端的工作流程如图 3所示。
当SC端请求读取、写入或者删除某个设备信息时, SC首先会向FSU发送一个查询请求, 此时SC作为客户端, FSU作为服务器端。FSU需时刻查询是否有SC的请求信息, 若有则需解析SC发送的请求信息, 打开数据库, 读取请求设备数据并配置参数, 操作成功后向SC发送答复报文。FSU服务器端的工作流程如图 4所示。
FSU具备双向通信功能, 其流程如图 5所示。FSU的双向通信功能有效地解决了大规模设备网络化管理中的通信难题, 提升了通信效率和系统的稳定性。通过这一功能, FSU可以灵活地管理和控制数据传输, 主动响应SC的请求并上报设备事件数据。当FSU作为服务器端时, 能够与SC建立连接, 并接收SC轮询获取的慢数据请求, 包括实时请求数据、设备控制请求。这些请求涵盖了温度、湿度、电压、电流、电量、频率、开关状态等数据, 并能够及时返回给SC。此外, FSU还提供文件传输协议(File Transfer Protocol, FTP)接口, 为SC提供视频图像文件的传输功能。当FSU充当客户端时, 它能够主动向SC发起设备事件数据的上报, 包括配置信息、实时数据、历史数据、实时报警、历史报警、控制结果, 实现设备状态信息的实时更新。
2.3.4 XML报文的生成与解析
MiniXML是一个小型的C语言开源库, 旨在解析和生成XML文件, 也是一种轻量级的XML解析器。该解析器最大的特点是小巧、独立, 无需其他库的支持, 只需要使用GCC(GNU Compiler Collection, GNU编译器套件)编译器和make程序即可编译。
使用MiniXML库创建XML文档的流程如下:
步骤1 定义要生成的报文结构和内容;
步骤2 创建一个空的MiniXML文档对象;
步骤3 逐级创建XML元素, 通过调用MiniXML提供的方法, 将元素添加到文档对象中, 使用元素的名称、属性和文本内容等定义元素的特性[14-15];
步骤4 如果报文中需要包含子元素, 可以在父元素中重复步骤3, 将子元素添加到父元素中;
步骤5 完成报文的创建后, 将MiniXML文档对象转化为字符串或写入文件, 生成最终的报文。
使用MiniXML库解析XML文档的流程如下:
步骤1 获取要解析的报文, 可以从文件中读取或者从字符串中获取;
步骤2 创建一个空的MiniXML文档对象;
步骤3 将要解析的报文加载到文档对象中;
步骤4 通过遍历文档对象的元素和属性, 逐级提取报文中的内容, 并进行相应的处理和存储;
步骤5 如果报文中存在子元素, 可以递归地解析子元素, 重复步骤4, 直至完成报文的解析。
3 测试结果与分析
经过测试, 在动环监控系统中, FSU与SC成功进行了通信, 报文数据如图 6所示。SC监控中心实时性能查询界面如图 7所示。其可实时观察到电力机房监控点的状态。
B接口协议具有高效的数据传输能力和稳定的连接性, 有助于实时监控并传输大量的监测数据。分析该动环监控系统的测试结果, 得到系统具有以下特点。
(1) 双向通信实现更快速、高效地数据传输, 使得监控系统的数据可以实时共享和交互。图 6(a)所示的FSU客户端在上报告警信息的同时, 也能接收图 6(b)所示SC客户端轮询获取的慢数据请求。这样, 就可以将机房的动态和变化快速反馈给相关的监控系统和用户, 帮助其做出更准确和及时的决策。
(2) 进一步拓展与其他系统的数据集成能力。通过与能源管理系统、机房设备管理系统等内部系统的数据交互, 可以实现更全面和综合的机房监控和管理。同时, 与外部系统的数据对接, 扩大了电力机房的服务范围和应用场景。
(3) 注重数据传输的安全性和隐私保护。通过加密、身份验证等安全机制, 确保数据传输的机密性和合法性。同时, 合规地管理和保护用户的个人信息和敏感数据, 防止数据泄露和滥用。
(4) 可以结合自动化和智能化技术, 实现监控系统的自动报警、异常探测、故障诊断等功能。通过数据的分析和学习, 提供预测性维护和优化调整的支持, 也为电力机房的运行和维护提供更智能和高效的方法。
4 结语
本文设计的系统具有几个关键优势。首先, 嵌入式平台具有高性能和低功耗的特性, 为监控系统提供稳定可靠的硬件基础。其次, gSOAP技术的运用保证了系统之间的高效通信和数据交换, 从而提高了监控系统的性能和可靠性。最后, 系统提供了多种扩展功能, 如告警通知、本地图像存储和远程视频监控等, 使得用户可以全面掌控电力机房的运行状态, 提高了管理效率和精确度。综上所述, 基于嵌入式平台和gSOAP技术的电力机房动环监控系统设计是一种高效稳定的解决方案, 通过整合硬件平台、通信协议和功能扩展, 提高了机房的安全性和稳定性, 以及工作人员的管理效率和精确度, 能够有效满足电力机房环境监控与管理的需求。
参考文献
-
[1]徐文亮. 微波机房动力与环境监控系统建设与实践[J]. 电视技术, 2023, 47(1): 198-200.
-
[2]鲁霞, 白铁男, 徐晓, 等. 开源架构下的气象数据机房动环监控系统设计[J]. 现代信息科技, 2022, 6(24): 72-74.
-
[3]余笛林, 徐岩, 倪庆文, 等. 基于物联网平台的动环监控技术分析和探讨[J]. 现代传输, 2022(5): 53-58.
-
[4]QIN Y, FU X, LIN Y, et al. Self-powered Internet of Things sensing node based on triboelectric nanogenerator for sustainable environmental monitoring[J]. Nano Research, 2023, 16(9): 11878-11884. DOI:10.1007/s12274-023-5689-8
-
[5]张荣杰. 动环监控的虚拟化云边协同接入关键技术研究[D]. 杭州: 杭州电子科技大学, 2022.
-
[6]王佳新. 5G技术在电力机房智能巡检中的应用[J]. 光源与照明, 2022(2): 107-109.
-
[7]郑凯, 张宏愿, 李国良, 等. 基于WebService的实时雨水情数据库管理系统[J]. 绿色科技, 2021, 23(16): 215-218.
-
[8]陈民, 郭偶凡, 张宇新, 等. 电力机房一体化可信监控装置设计[J]. 单片机与嵌入式系统应用, 2021, 21(3): 84-87.
-
[9]杨武林, 张静, 张俊俊. 一种电力机房巡检作业机械臂设计与研制[J]. 制造业自动化, 2020, 42(10): 22-25.
-
[10]WANG L, ZHU S W, YU J F. Transplant and tailor of gSOAP based on embedded linux[J]. Applied Mechanics & Materials, 2013, 303-306: 2445-2448.
-
[11]BONDAREV R, PAN'CZYK B. Comparison of frameworks for creating web services using the Axis2/C and gSOAP examples[J]. Journal of Computer Sciences Institute, 2021, 18: 37-41. DOI:10.35784/jcsi.2420
-
[12]卢海文. 基于安卓终端的智能水文监测系统设计[D]. 太原: 太原理工大学, 2020.
-
[13]AZIZ M M A, GHASEMI R, WALIULLAH M, et al. Aftermath of bustamante attack on genomic beacon service[J]. BMC Medical Genomics, 2017, 10(增刊2): 43-54.
-
[14]曹军, 李林, 王正阳, 等. 基于嵌入式系统的IEC61400-25-4通信服务WebService实现[J]. 价值工程, 2019, 38(28): 282-287.
-
[15]PADMANABAN R, THIRUMARAN M, ARUNA R, et al. PIRAP: security assessment framework for heterogeneous web service composition[J]. International Journal of Cooperative Information Systems, 2023, 32(1/2): 225003.