摘要:海洋疏浚工程船在疏浚作业过程中将会产生大量的数据,就目前而言这些重要的数据只能在船机工作室内进行监控。以往因为通信技术的限制,不能实现船岸一体化,但是随着北斗卫星集群数传技术的成熟,船岸一体化中的数据传输问题得到了有效解决,因此通过互联网技术将SCADA系统采集到的数据网络化就成为了可能,Web-SCADA的任务就是要实现这些数据在岸端的显示,通过浏览器端的仿真页面监控工程船的工作状况。
关键词:Web-SCADA;海洋疏浚;工程船;疏浚作业;数据网络化 文献标识码:A
中图分类号:TP311 文章编号:1009-2374(2015)06-0064-02 DOI:10.13535/j.cnki.11-4406/n.2015.0459
现代海上工程船设备先进,已经高度自动化、信息化,因为通信技术的限制,不能实现船岸一体化,因此被称之为漂浮在海洋上的信息孤岛。我国的北斗卫星短报文通信打破了这个限制,在北斗卫星集群数传技术的支持下,在岸上实时监控海上工程船的运行状态、工作状态就是一个Web实现问题,就是从独立运行的SCADA系统到基于互联网运行的Web-SCADA的技术实现问题。目前,SCADA系统凭借它在工业控制等方面的优势在海洋疏浚工程船中得到广泛的应用,但是SCADA系统因为如下原因已经远远不能满足实际工作中生产的需求:一是系统维护和升级存在困难,不能满足大型系统的需求;二是系统质量不能保证,为了让数据库与活动客户保持连接,就要分散运算资源,导致系统性能的下降;三是在复杂的环境下,用户有可能长时间等待,甚至系统会崩溃;四是C/S模型开发系统的生命周期短、可扩展性、可维护性差,研发周期长。SCADA系统只能将船机运行和工作状态呈现在在船机工作室内,离船联网提出的船岸一体化目标要求相距甚远。随着北斗集群数传技术对于海上通信的技术和经济限制的突破,基于互联网的Web-SCADA将有效地克服SCADA系统的局限性。
1 系统架构
1.1 工作流程
海洋疏浚工程船Web-SCADA系统基于北斗集群数传技术,将远洋疏浚工程船采集到的数据通过北斗卫星集群数传技术传输给岸基指挥中心,然后通过B/S架构的网络平台将采集到的数据通过互联网发布出去,从而在岸端的用户可以通过互联网查看到原本只能在船机工作室才能监控到的工程数据。
1.2 基本组成
1.2.1 客户终端:客户终端分为两部分:一是监控终端;二是管理终端。(1)监控终端。监控终端为工作人员提供实时监控工程船的船机状态和工作状态的平台,并且把控制信息通过网络上报到中心服务器,如预警信息,比如某个齿轮箱的温度或者油压过高需要调控等;(2)管理终端。管理终端实现用户管理,Web-SCADA设计的目的之一就是实现多人、多地点对同一监控目标的监控,因此不同的工作人员登录系统后根据身份获得不同的权限,并且对本次登录操作负责。
1.2.2 通信网络:通信网络主要包括移动通信网络和互联网,实现客户端和中心服务器的双向数据传输。Web-SCADA是基于互联网设计的,良好的通信网络是系统正常运行的必要条件。
1.2.3 中心服务器:中心服务器是Web-SCADA的核心所在,Web-SCADA主要运行在中心服务器之上的应用服务的实现,中心服务器包括两个部分,分别是应用服务器和数据库服务器。应用服务器负责监听相应的网络端口,接收工程船发送的海量数据并校验,同时负责发布数据并响应用户的请求,为浏览器提供SCADA的仿真视图。数据库服务器实现对数据库的访问和管理,因为海洋作业产生的数据量非常巨大,所以采用分布式数据管理系统。
2 Web-SCADA实现技术
2.1 Flex仿真页面技术
本文提出的Web-SCADA是基于Flex技术实现的。Flex技术是将桌面应用的华丽界面与Web应用的广泛性、低成本以及多媒体通信集成于一体的新互联网应用技术,具有极强的用户互动性和丰富的用户体验性,是当前领先和成熟的RIA(富互联网应用程序)技术。
Flex框架由MXML页面标记语言,ActionScript编程语言和Flex类库组成。MXML是基于XML的标记语言,用于界面的布局和显示控件。MXML提供了用户界面和服务器端数据的绑定,极大简化了数据访问编程,提高了编程效率。ActionScript是类似JavaScript的强类型面向对象语言,用于操控GUI组件、事件监听、数据访问回调等。Flex类库是核心,提供了种类繁多的各种控件、GUI组件、数据访问组件、行为组件等,可以方便实现负责的用户界面和响应事件类型。利用Flex提供的丰富的组件绘制功能,可以绘制疏浚工程船SCADA界面的仿真页面,这样更符合工作人员习惯。
2.2 WebService服务
WebService是SOA的具体实现,WebService适用于不同系统之间的接口调用或者不同编程语言实现的接口之间的调用。本系统客户端的仿真页面是基于Flex实现,而应用服务是基于.NET平台实现,因此非常适合适用WebService来做接口调用。WebService向外暴露一个可以通过Web进行调用的API,调用成功以后会返回XML数据。简单地说,WebService是一个平台独立的,低耦合的,自包含的、基于可编程的Web的应用程序,可使用开放的XML标准来描述、发布、发现、协调和配置这些应用程序,用于开发分布式的互操作的应用程序。
2.3 异步访问
在对数据库进行访问时,为了避免同步访问数据时所带来的延迟,我们需要改进设计,以提高程序执行效率。一方面,可以避免因频繁刷新网页给用户以良好的使用体验;另一方面,也降低了程序崩溃的可能性。Flex自带异步组件,避免使用第三方插件,可以非常方便地实现异步访问。
3 应用服务架构
应用服务架构即是Web架构,遵循多层架构的设计思想,设计上采用四层架构,将数据、业务逻辑、服务提供以及客户端操作分离开。这种架构既便于系统的开发维护,又有利于系统的部署使用,还能提高系统的安全性和可扩展性。
3.1 数据层
数据层为Web-SCADA系统提供数据支持,本系统存储的数据来自海洋疏浚工程船,包括工作人员数据、工程船数据,所有数据都采用关系型数据的方式组织。
3.2 数据访问层
数据访问层主要是将业务逻辑层进行封装处理,将系统的各项功能以WebService服务的方式发布给显示层。该层充分体现了SOA的设计理念。
3.3 业务逻辑层
业务逻辑是对数据进行处理分析,为上层调用提供合适的信息。同时对系统的安全性、运算负载平衡、系统运行状况等进行控制。
3.4 显示层
显示层即是Web-SCADA的客户端,为工作人员提供图形化的仿真页面,并且提供众多和中心服务器交互的接口,便于工作人员对海洋疏浚工程船的监视和控制。
4 主要功能
船机工作室中SCADA系统上的所有界面及功能都被搬到了网络上,工作人员借助Web-SCADA系统在岸端就可以对工程船进行监控。
5 结语
本文提出了一套完整的实现船岸一体化的解决方案,建立Web-SCADA系统平台用于监控和调度海洋疏浚工程船。通过客户端Flex异步调用服务器端WebService的相关方法,实现了一个页面无刷新更新实时数据的Web-SCADA系统。岸基工作人员不再需要亲临疏浚工程船去观看基于C/S架构的监控系统来指导疏浚工作,仅需要一个能联网的浏览器,并且不需要安装任何第三方组态软件就能实时指导工程船工作。整个系统可以远程访问,使工作人员虽远离现场,亦可处处监控工程船的工作情况。此外,一个工作人员可同时监控多个过程,使过程控制人员不再分身乏术;多个工作人员也可以监控同一过程,真正实现了数据的开放性及过程信号的透明化。该系统研制的成功解决了船岸一体化问题,对疏浚领域数字化监控系统的升级和海洋工程船舶技术水平的提升起到了至关重要的作用。
参考文献
[1] 何嗣隆.北斗集群数输技术及其在海洋疏浚工程船中的应用研究[D].华东师范大学,2014.
[2] 刘耀,李超良.组态软件框架的研究与设计[J].微计算机信息,2005,21(6X).
[3] 陈群.基于ASP.NET AJAX新型Web SCADA的设计与实现[J].工业控制计算机,2009,(6).
[4] 蔡黄辉,马文涛.软件架构设计的过程[M].北京:机械工业出版社,2010.
[5] 熊桂喜.计算机网络(第三版)[M].北京:清华大学出版社,1998.