用于JAVA DOOCS数据显示的HTML5 WEB界面外文翻译资料

 2022-05-26 09:05

英语原文共 7 页,剩余内容已隐藏,支付完成后下载完整资料


用于JAVA DOOCS数据显示的HTML5 WEB界面

摘要

JAVA DOOCS数据显示(JDDD)[1]是标准开发用于FLASH的控制系统面板的工具

设施和欧洲XFEL。面板主要是在DESY校园开始。用于远程监控和专家协助安全,快速和轻量级访问方法是必需的。一个可能的解决方案是使用HTML5作为传输协议,因为它可用

许多常见平台,包括移动平台。出于这个原因,运行一个HTML5版本的JDDD在Tomcat应用程序服务器中开发。WebSocket技术用于传输面板图像到浏览器。另一方面,鼠标事件是

从浏览器发送回Tomcat服务器。现在可以从中访问数千个现有的JDDD面板远程使用标准网络技术。没有特别的浏览器插件是必需的。

本文讨论了基于web的一般问题与控制系统的交互,例如安全性,可用性,网络流量和可扩展性,并呈现WebSocket方法。

介绍

JDDD是DESY设计和运行控制系统面板的常用工具[2,3,4,5,6]。每天从DESY办公室和控制室大约3000个控制面板被启动。

经验表明,许多专家小组需要远程协助。最舒适的访问方式是使用Web界面,该界面可在世界各地的任何PC和移动设备上使用,而不需要此界面,因此不需要特殊的Web面板版本以避免双重工作。通信应该快速和轻量级,并且还必须在有限的带宽环境中工作。

现代响应式Web通信的常用技术是AJAX(异步JavaScript和XML)。使用AJAX,Web浏览器轮询服务器以获取每次更新的数据。为了以高频率传输大数据包(如JDDD Web界面所需),每次创建新的HTTP连接都将成为瓶颈。更好的解决方案是像WebSockets这样的持久连接。

WebSockets技术

WebSockets提供客户端和服务器之间的协议

服务器,它运行在持久的TCP连接上。图1中显示了这种通信的可视表示:

图1:使用WebSockets进行客户端/服务器通信。

图1使用WebSockets进行客户端/服务器通信。

握手

任何使用WebSocket协议的网络通信都以开始握手开始。 客户端Web浏览器向服务器发送一个请求,将HTTP升级到WebSocket协议,如果服务器支持WebSockets,它会发回一个响应:Ok我正在将您的HTTP升级到单个TCP套接字连接。

双向消息

通过这种开放的连接,双向,全双工消息可以高频交换(同时或前后)。 在一个JDDD WebSocket连接的情况下,面板图像,这是在服务器端创建的,被发送到客户端。而鼠标事件,其在浏览器窗口产生的,将被发送回服务器。

关闭信道

如果客户端或服务器关闭连接,则会在服务器上停止面板图像创建,并删除用于控制系统值的所有监视器。

JDDD WEB界面结构

支持WebSocket协议的服务器

从Tomcat 7和Glassfish 4开始支持WebSocket协议。两种可能性都经过了测试,最终选择了Tomcat,因为它是更轻量,更容易管理。 在服务器端,一个JDDD应用程序正在Tomcat Web服务器中运行(请参见图2)。 所有面板都在此单个JDDD实例中以无协议头模式启动。 为每个面板创建缓冲图像,其更新速率为当前0.5 Hz。

服务器到客户端通信

为在带宽较低的系统上运行JDDD Web界面,网络流量必须降至最低。 在服务器端,这是通过将面板图像切成10次10个子图像来完成的。 检查每个子图像的修改情况,只有已更改的部分发送给客户端。

客户端到服务器通信

在网页浏览器(客户端)中,所有鼠标移动,点击和拖动操作都会被JavaScript收集。 由于浏览器和浏览器的位置不同,它们在发送到服务器之前会在客户端进行修正位置。 现在,JDDD Web界面模拟相应的Java鼠标事件,以便面板响应的同“正常”鼠标点击一样。

图2:使用WebSockets进行客户端/服务器通信的JDDD Web界面体系结构。

安全

在启动Web服务之前,Web浏览器会显示JavaScript登录对话框。 用户名和密码被发送到服务器,并执行DESY Kerberos认证。 该面板已在后台启动,并显示有效的身份验证。

JDDD WebSocket项目包含一个会话管理器,用于存储每个会话的用户名,会话ID和时间戳。 当点击按钮打开一个新的面板,会话ID将从父面板继承,不需要进一步的身份验证。 会话超过最后一次鼠标点击后的特定时间(当前为1小时)。 然后停止会话的所有面板,并从会话管理器中删除会话ID。

在第一个测试阶段,JDDD Web界面已经以“只读”模式部署。 改变控制系统值是不可能的。

可扩展性

目前,一个Tomcat实例正在Web服务器上运行。 在此Tomcat服务器中,JDDD在单个Java虚拟机(JVM)中启动。 可在一个JDDD应用程序中运行的面板数量取决于CPU功率,最大堆空间和面板复杂程度。 使用现有的硬件,可以以合理的速度启动15至20个标准面板。假设每个用户在他的网页浏览器中同时启动约5个控制系统面板,3到4个人可以同时使用JDDD网页界面。

为更多用户提供服务,需要安装Tomcat群集。 负载平衡器在集群中的Tomcat服务器之间分发传入请求。

结论

所提出的技术符合我们的要求的概念证明已经完成。 Web界面与本机JDDD具有相似的外观和功能(参见图3),对于大多数操作任务0.5 Hz的面板更新速率足够快(存在一些限制:例如右键点击无法处理,因为这些限制 被保留用于浏览器上下文菜单)。

使用的架构的基本优势是:

  1. 面板只能设计一次,并且可以在标准JDDD和Web界面中使用。
  2. JDDD源代码的更改和改进即时在Web界面中提供。

图3:在Safari浏览器(较大面板)和Firefox(较小面板)中运行的JDDD Web界面的屏幕截图。 所有无用的浏览器工具栏都会被删除,并且每个面板都会在分开的窗口中打开。 因此面板的外观和操作与原生JDDD相同。

展望

一些加速器专家已经在使用当前的JDDD Web界面。 为了将Web界面提供给更多的用户群,需要改进的服务器设置。 为了支持实际操作,“只读”模式必须改为完整的读/写模式,计划在不久的将来完成。

引用文献

[1] jddd website: http://jddd.desy.de

[2] E. Sombrowski. A. Petrosyan, K. Rehlich, W. Schuuml;tte, “jddd: a tool for operators and experts to design control system panels”, ICALEPCSrsquo;13, San Francisco, USA, October 2013.

[3] E. Sombrowski. A. Petrosyan, K. Rehlich, W. Schuuml;tte, “jddd, a state-of-the-art solution for control panel development”, ICALEPCSrsquo;11, Grenoble, France, October 2011.

[4] E. Sombrowski, P. Gessler, J. Meyer, A. Petrosyan, K. Rehlich, “jddd in action”, ICALEPCS#39;09, Kobe, Japan, October 2009. [5] E. Sombrowski, K. Rehlich, “First Experiences with jddd for Petra Vacuum Controls”, PCAPACrsquo;08, Ljubljana, Slovenia, October 2008.

[6] E. Sombrowski, A. Petrosyan, K. Rehlich, P.Tege, 'jddd: A Java Doocs Data Display for the XFEL', ICALEPCS#39;07, Knoxville, Tennessee, October

在控制系统用户界面引入WEB技术

摘要

随着基于网络技术的发展,尤其是HTML5 [1],可以创建基于Web的控制系统用户界面(UI),这些界面是跨浏览器和跨设备兼容的。本文介绍了两种有助于实现此目标的技术。第一个是可以无缝显示的WebOPI [2]

CSS BOY [3] Web浏览器中的操作员界面(OPI),无需修改原始OPI文件。 WebOPI利用BOY强大的图形编辑功能,并提供重用现有OPI文件的便利。另一方面,它使用通用JavaScript和Web浏览器和Web服务器之间的通用通信机制。它并未针对控制系统进行优化,从而导致不必要的网络流量和资源使用。我们的第二项技术是基于WebSocket的过程数据访问(WebPDA)[4]。它是一个提供的协议

高效的控制系统数据通信使用WebSocket [5],使用户可以使用标准的网页技术,如HTML,CSS和JavaScript创建基于Web的控制系统UI。 WebPDA独立于控制系统,可能支持任何类型的控制系统。

简介

现在,人们可以在网络浏览器中做很多事情,例如实时会议,交易,游戏,看电影等等。网络浏览器不再是一个简单的浏览器。它成为各种应用的便利平台。 Web应用程序比桌面应用程序有许多优点:

1)易于访问。所有你需要的是一个URL;

2)易于部署和维护;

3)随时随地接入。具有桌面应用程序特性的Web应用程序称为富互联网应用程序(RIA)[6]。 RIA已经发明了一些技术,如Flash,Java Applet和Silverlight,但所有这些技术都需要在用户设备上安装独立的插件或客户端软件,更糟糕的是,它们不适用于流行的iOS设备,如iPhone和iPad 。

幸运的是,HTML5近年来成为所有主流网络浏览器厂商都很快采用的标准。基于HTML5的Web应用程序具有最大的跨浏览器和跨设备兼容性。

HTML5包含一组新的API,例如canvas元素,WebSocket,拖放,WebGL,Web Worker,Web存储,音频,视频等。其中,canvas元素和WebSocket对于控制系统UI应用程序是最重要的。 canvas元素允许动态的,可编写脚本的2D形状和位图图像渲染。这使得在Web浏览器中动态绘制控制系统UI变得很容易。

WebSocket通过单个TCP连接提供全双工通信信道。在WebSocket之前,HTTP严格遵循请求 - 响应模型。对于每个更新,客户端发起一个新的连接。服务器无法启动更新并将其“推”到客户端。一些解决方法已被用于规避这个问题,如轮询和长轮询。由于请求 - 响应模型,这些需要额外的头部数据和延迟。与纯HTTP相比,WebSocket是一种自然的全双工双向单插槽连接。一旦建立了WebSocket连接,服务器就可以随时向客户端发送消息,反之亦然。这大大减少了延迟,节省了带宽和CPU功耗。此外,WebSocket API非常易于使用,因为常规功能(如握手,成帧,缓冲和编码)已在规范中定义,并由WebSocket API提供商实施。 WebSocket的这些优点使其成为实时控制系统Web应用程序的通信协议的理想选择

Web操作界面

要将控制系统用户界面引入Web,理想的方法是直接在Web浏览器中运行现有的桌面操作界面,而无需额外的工作。 这正是WebOPI所做的。 它无缝地执行CSS BOY在网页浏览器中创建的OPI文件,无需任何修改(见图1)。

图1:在CSS BOY和Web浏览器中运行相同的OPI的比较。

CSS BOY (Control System Studio)是一个现代化的实时图形操作界面编辑器[7]。 它允许用户使用超过50个小部件的拖放构建控制系统GUI。 它可以通过Jython或JavaScript进一步编程。 它为额外的数据源,自定义小部件和脚本库提供了扩展点。通过重新使用从CSS BOY创建的OPI文件,WebOPI可以立即继承CSS BOY的强大运行时功能,并利用BOY OPI编辑器的直观图形编辑功能。此外,WebOPI和CSS BOY使用Eclipse远程应用程序平台(RAP)技术90%单一来源[8]。 这允许CSS BOY和WebOPI的连续同步演变,这意味着CSSOPY的新增功能可立即在WebOPI中使用。

WEBOPI 架构 全文共9888字,剩余内容已隐藏,支付完成后下载完整资料


资料编号:[11794],资料为PDF文档或Word文档,PDF文档可免费转换为Word

原文和译文剩余内容已隐藏,您需要先支付 30元 才能查看原文和译文全部内容!立即支付

以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。