162  EPEM 2020.
8
专业论文
Professional papers
基于WEB组态智能低压开关柜通讯网关设计
上海华建电力设备股份有限公司  陈  胜
摘要:新一代通讯网关WEB组态技术便于多种终端显示,便于通过互联网采用网页实时发布数据信息,同时借助及时向用户发布告警信息,便于快速处理现场故障。关键词:数据采集转发网关;网页组态;MQTT
1 网关功能分析以
往的SCADA 系统是由通讯前置机(网关)加后台机来实现的,面临的
问题有:系统部署复杂。如涉及服务器、工程师站、IO 通讯、操作系统等;
升级困难。由于操作系统、系统硬件的更新换代,组态软件面临平均5年一次的升级、平均2年一个版本;WEB 支持困难。由于架构限制问题,只能采用附加功能的方式支持Web,系统效率低;应用集成困难。SCADA 或HMI 软件只能是独立的系统,集成也只能通过控件或其他形式进行,无法与管理系统整合为一个统一的平台
[1]
目前大多数网关属于嵌入式组态网关,主要实现将仪表设备或第三方设备数据采集后,转换成另一个协议如104协议再转发到上一级进行处理,网关的功能相当有限。同时随着网关硬件不段升级换代,性能大幅提高,批量生产、成熟的产品很多,可选择一款适合的产品定制开发应用,在网关上增加物联网的功能,如采用MQTT 上传数据到云平台、在网关内增加WEB 服务器、网页设计采用最新的HTML5及SVG 技术、将网关内实时采集的数据进行周期性存储生成历史数据库,然后用开源的grafana 程序对历史数据库进行展示等。新设计研发的WEB 网关是具有自动化功能网关,采用WEB 网关的优势主要有:跨平台。手机、平板、电脑都能监视系统,无需进行终端APP 的开发工作;瘦客户端。解决硬件采购成本问题;可虚拟化。解决服务器最大利用率问题;低成本。改造用户不
用考虑电脑采购成本;人性化。IT 工程师可随意开发想要的界面监控平台;自动化工程师在较短时间内很容易学会操作。
2 硬件选型
通过比较与综合测试后选取了以下嵌入式工业计算机:采用CPU 为4核A9,主频1.4GHz,高性能512M DDR3内存,板载8GB eMMC 存储,板载4个全工业隔离RS485接口,2个100M/10M 自适应网卡,集成了专用加密芯片,能有效防止应用程序被盗,电源输入口与RS485接口都提供4KV 抗雷防护,一次冲压成型铝合金外壳,提供极好的防锈防氧化能力,具有完善的底层驱动,将重点关注应用层开发。在智能低压开关柜上,我们需要对几个柜体上马达保护器或线路保护设备数据进行采集,再将收集到的数据转发到上一级,这里采用了双网口,可以一个网口做本地WEB 浏览同时按常规方式将数据转发到当地监控中心,另一个网口用来将数据通过MQTT 转发给云平台处理。
3 软件结构设计
3.1 组态环境
组态环境的主体是组态编辑软件,由界面组态模块,数据组态模块、通讯配置模块3个功能模块组成。
界面组态模块。使用设计师级别的Inkscape SAGE(SCADA 动画图形编辑器)进行SVG 图形设计,可
为动画创建超现实的符号或图像。因为使用了矢量图形,即使放大100次后视网膜显示
2020.8 EPEM
163
svg如何复制到
专业论文
Professional papers
仍将保持清晰。相比之下,使用光栅图像的传统SCADA 将在缩放时显示质量差和锯齿状模拟屏幕。此外,网页具有自动配合显示终端分辨率功能,可适合任何尺寸的屏幕,同时保持其原始比例,这意味着系统不必担心现场使用的实际屏幕分辨率发生改变而进行返工。
数据组态模块。主要包括采集端的数据来源、数据类型、取值方式、数值的线性变换,以及转发端的数据排序、数据分类、历史存储时间间隔、报警的方式及报警文本内容的设定。数据名称采用统一标签,方便界面组态去调用,还有两种虚拟数据,一种用来监视采集及通讯报文的状况,另一种对采集的数据做一些逻辑或算术运算得到新的综性数据[2,3]。
通讯配置模块。支持多种采集端协议,如MODBUS、IEC101、IEC103、IEC104、CDT、DNP、多功能电度表DL/T645等,为方便接口管理将不同的协议转换成IEC104内部接口协议,这样可内部统一标准存储数据,方便数据做各种转发接口,包括转发到给网页做实时数据查询、转发到数据库存储历史数据、转发到MQTT 协议上传云平台,也便于将网关内数据直接IEC104协议转发给上级调度。
对不同的协议制作不同的属性模板定义,便于不同的协议有不同的遥测、遥信、遥控、遥脉、事件、告警等特有的属性,针对具体的设备建立设备库,设备库中保存了四遥及告警事件等关键属性的模板,方便重复配置相同类型的设备,通常只需修改如设备上通讯地址不相同的地方。数据采集的通道考虑了串口与网口两种,对于每一种数据采集协议可选硬件接口为串口或网口,网口可选TCP 服务端、TCP 客户端、UDP 服务端、UDP 客户端,方便通讯硬件介质的不同选择相对应的通道类型。也新增了支持通道上的报文内容显示及记录,并对报文的内容进行解析,方便工程师进行现场调试及处理故障。
3.2 配置文件
配置文件采用XML 格式,XML 是一种用于标记电子文件使其具有结构性的标记语言,这样可根据需求自定义XML 标签,具有跨平台、跨语言的特点,兼容性强,适合用于保存配置信息,包括一些用JavaScript 脚本编写的自定义逻辑虚拟点,也可保存在XML 文件中。采用统一的配置文件即
可上传到网关中,也可将配置文件上传到云平台上来减少工程维护的工作量。
3.3 发布环境
浏览器是监控界面运行的载体。利用浏览器呈现监控界面具备的优势有:一方面每一个操作系统浏览器是默认自带的工具软件,用户不需为监控工作安装额外的软件,另一方面浏览器是基于互联网,方便远程监控和局域网内多点同时监控实现。因Chromium Browser 的兼容性,目前网关建议使用Chromium Browser 达到最佳效果。
WEB 服务器。因网关中采用的是LINUX 操作系统,就要在LINUX 系统上搭建Nginx 服务器,Nginx 是一个高性能的http 服务器和反向代理服务器。Nginx 既可作为一个HTTP 服务器进行网站的发布处理,也可作为一个反向代理服务器进行负载均衡。因Nginx 本身并不会对PHP 文件进行解析,对PHP 页面的请求将会被交给FastCGI 进程监听的IP 地址及端口,由php-fpm(第三方的fastcgi 进程管理器)作为动态解析服务器处理,最后将处理结果再返回给Nginx。即Nginx 通过反向代理功能将动态请求转向后端php-fpm,从而实现对PHP 的解析支持[4]。采用Nginx+php 作为webserver 的架构模式需实现的是如何让Nginx 正确调用php。由于Nginx 调用php 并不是如同调用一个静态文件那么直接简单,是需要动态执行php 脚本,因此涉及到了对f 文件的配置,关键在nginx server 中正确配置php 调用方法。
数据区。数据主要由实时数据与历史数据组成,实时数据是根据配置文件在内存中动态生成的数据缓存区域,程序为每个数据对象分配了存储空间,数据的交互是对内存缓冲区的读取与更新。历史数据是对由Sqlite、MySQL、SQL server 等建立的数据库进行定时存取或按需存取。
通信接口。发布环境的通信接口是网关与网页界面交互数据的格式,为提高数据的交互效率采用JSON(JavaScript Object Notation,JS 对象简谱),JSON 是一种轻量级的数据交换格式,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使其成为理想的数据交换语言,易于人阅读和编写同时也易于机器解析和生成,并有效地提升网络传输效率。
164  EPEM 2020.
8
专业论文
Professional papers
4 关键技术与实现
网关开发目标:综合以往网关软件及多个开源软件,对软件的整合及优化,实现跨平台运行(Windows/Linux/手机终端)的网关设备。该网关主要功能有支持web 界面显示、支持平台监控、支持数据远传、支持物联网信息共享,随时随地了解现场,实时报警。现有网关的架构具备了便于二次
开发的模块化架构、单机部署架构、双机部署架构、数据存储等特点,在此基础上按目标增加新的功能。
4.1 图形界面元素设计
图形组态系统采用开源的Inkscape 无损缩放矢量图绘图软件,技术方面涉及SVG、XML 语言,实现在Windows7平台及Ubuntu 平台上已完成Inkscape+SAGE 编译,图形组态软件优化,开发电力图元的生成、管理、调用接口,图元及图元组等高、等宽、等高宽的操作,图形显示与数据点绑定接口及其优化。
4.2 组态环境下的实现
基于QT 的组态配置工具软件,实现包括组态实时数据的定义,通讯规约的定义等,历史数据和报警数据格式的定义,完成配置工具在Windows 平台及ubuntu 平台的编译,同时考虑工作平台studio 与开发平台developer 的功能不同设计。前端的通讯规约通过模块二次开发,实现规约转换模块转为IEC 60870 104协议,可处理的采集端规约有MODBUS、MODBUS TCP/IP、IEC101、IEC103、IEC 104、DNP3、CDT、OPC UA(client 端)等;实现数据存储模块SQLServer、mysql 接口开发、数据库的优化、用户及用户权限管理等。
通过物联网中消息队列遥测传输MQTT 协议,在程序中实现WEB 网关上传云平台数据的需求,实现平台无关地交换数据。只需要开发端平台支持标准MQTT 协议即可,网关连上MQTT 平台与云端进行通讯,进行数据交互,将实时数据上传到云端同时处理云端发送到网关的指令,并通过网关控制接入的开关柜内设备。
MQTT 使用websocket 作为网络传输,MQTT 协议传输的消息处理分为主题(Topic)和负载(payload)两部分和实现方式,处理MQTT 权限配置,MQTT 控制包格式,控制包结构,固定头类型标志长度,可变头包标识,有效数据部
分;MQTT 发布消息接收,发布消息释放,发布消息完成,订阅主题,订阅应答,订阅取消及应答,断开连接通知;定义MQTT 数据格式,测试MQTT 协议交换数据。
4.3 发布环境下的实现
搭建json 格式的Webserver 服务,通过Webserver 实现网页实时数据显示,基于GNU Libmicrohttpd 的服务器进行HTTP Server 协议开发可配置的HTTP 端口,用于冗余模式下的事件和信息同步,优化HTTP GET 请求点列表以允许更大的请求,克服浏览器对URL 大小的限制,使用简单的JSON UDP 消息更容易提供数据[5]。在Webserver 中处理将标签点与点号进行关联,记录远程登录和注销用户及IP 地址并生成日志文件,允许遥控与遥调设置,遥测点越限报警,可设置启用/禁止点报警等。
5 结语
本网关解决开关柜中设备之间、设备和云端之间的互操作,对用户来说摆脱了指定设备的限制,做到了监控的“随时随地”,该组态的网关的成功得益于Web 技术和云平台,目前对监控画面与报警能较好地处理,下一步对数据的处理与分析进一步完善,数据库数据可通过开源的Grafana 软件把图表展示出来,Grafana 软件结合数据库有利于数据图表展示丰富多样化,可进行数据统计与分析,生成实时与历史数据报表;还有更多地考虑监控的数据在互联网上的安全问题,网关可处理点数也将从2000点到50000点扩容,进一步提升监控管
理的全面性。
参考文献
[1]黄华梅,杨信廷,等.基于AJAX 和SVG 的组态软件Web 发布模型[J],计算机工程与设计,2010,11.[2]郭巍,赵英,曲延涛.组态软件关键技术研究[J].电测与仪表,2006,3.
[3]张成,李迪,等.基于Web 发布的组态软件设计与实现[J].计算机软件开发与应用,2018,1.
[4]田春伟.工控组态软件Web 发布系统的设计与实现[D].上海交通大学,2015.
[5]李之奇,封成玉,等.基于SpringBoot 的工控组态软件Web 发布系统设计与实现[J].华北计算机系统工程研究所,2019,4.

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。