Web Service使用可扩展标记语言(XML)作为基本的数据表示方式,消除了使用不同组件模型、操作系统和编程语言的系统之间所存在的差异。简单对象访问协议(SOAP,Simple Object Access Protocol)是用于交换XML编码信息的轻量级协议。它的主要作用是为各类XML消息,提供一个简单统一的传输机制。Web Service使用SOAP来包装XML数据,通过HTTP(或MSMQ、SMTP、TCP/IP)作为传输协议,在不同平台、不同软件、不同组织之间进行传递。Web Service的描述语言为WSDL。它提供了一种描述服务接口的标准方法,定义了一种描述接口的抽象语言,使服务的接口定义独立于底层协议和编码方式。通用描述、发现和集成(UDDI)是Web Service的信息注册的标准规范,用来对服务提供动态的注册功能。
可见,Web Service采用XML、SOAP、HTTP、WSDL、UDDI等标准协议。这些协议与特定的操作系统、对象模型和编程语言无关。因此,利用Web Service来建立远程监控系统时
(1) 由于采用标准的协议,不受特定的开发者、平台、语言和数据编码格式的限制
(2) 开发的Web Service可以供不同的客户调用
(3) HTTP作为传输协议可以穿过防火墙,提供在Internet上的连接和访问[8]
(4) 如果知道Web Service的地址并具有相应权限,就可以在网络的任何地方进行调用。
3 远程监控系统结构
为了实现工业过程的远程监控,基于Web Service技术的远程监控系统结构如图4所示。
图4 基于Web Service的远程监控系统结构
3.1 基于Web Service的远程监控系统结构
传统的远程监控系统多使用OPC技术来获取各种现场设备的数据,包括实时采样值、历史数据、报警数据等等。该系统也使用OPC来与现场设备进行数据交换。图4中的OPC服务器由设备供应商提供。OPC技术是以Microsoft的OLE/COM 技术为基础。因此,与其他组件技术一样,它不是防火墙友好的,难以通过防火墙从OPC服务器获取所需的数据。即使在同一局域网内,位于不同计算机上的OPC客户端要连接到OPC服务器都需要经过复杂的DCOM和安全性设置,这增加了系统开发的难度,为此要对OPC服务器的数据进行封装。通过网关(命名为“过程网关”)的形式来为各个系统提供数据。过程网关作为OPC客户端从OPC服务器获取各种过程数据,将这些数据按照一定规则重新组织,并封装在Web Service内,过程网关也从已有的控制系统中获取所需的数据,并以服务的形式暴露给各种应用。
Web已被广泛用于监控系统中,它可以提供统一的人机界面,并且操作简单友好。该系统结构使用Web来建立监控系统,Web监控系统通过过程网关获取现场设备的数据,将这些数据以Web的形式提供给远程用户。远程用户通过PC、PDA、笔记本电脑或手机访问Web页,将各种控制数据送回Web监控系统。Web监控系统再将这些控制数据通过过程网关传送给现场设备,这样就完成了对现场设备的远程监控。
当然,远程的用户也可以通过直接访问过程网关来实现远程的监控。由于Web监控系统以HTML的形式来传送消息和过程网关提供的Web Service的防火墙友好性,因此不管使用那种方式来进行远程监控,都不会受到防火墙的限制。
3.2 过程网关
过程网关是现场设备与监控系统的桥梁,起着重要的数据中转作用,其结构如图5所示。
图5 过程网关与监控应用
(1) 数据获取
过程网关需要获取
来自现场的实时数据,以对工业过程进行及时的监控
来自其他控制系统的数据,以允许监控应用与这些系统进行数据交互。
目前主要的自动化设备生产厂家,如Rockwell、Siemens等,都提供了对OPC技术支持,通过OPC来获取现场设备的数据。OPC服务器通过各种现场设备的驱动程序,直接从设备中取得数据,再将这些数据提供给OPC客户端。OPC有几种协议,分别有不同用途。例如,OPC客户端通过OPC DA获取设备或SCADA系统的数据通过OPC AE获取报警和事件信息通过OPC HDA获取过程控制中的历史数据。
现场控制系统将各种数据存入数据库中,过程网关通过访问这些数据库来获取控制系统的数据。获取这些数据的目的在于使远程控制系统可以与已有的控制系统进行交互,方便地将这些系统集成到新的系统中,使其获得新的生命周期。成熟的中间件技术,如ODBC、ADO等,为数据库的访问提供了简单快捷的方法。
(2) 数据的Web Service封装
通过4.2.1获取的数据需要封装为Web Service,以便Web监控系统和远程用户能够进行调用。在进行数据封装时,按照功能需求确定需要暴露给调用者的接口(类似于编程语言中的函数接口),然后通过开发工具来开发这些Web Service。这些工具有Microsoft的Visual Studio.NET、IBM的WebSphere、Borland的JBuilder等等。数据封装为Web Service后可以提供WSDL,方便调用者进行调用。
(3) 安全审查
过程网关的某些Web Service可能涉及到保密的数据,因此需要考虑数据传输的安全性,并对客户端的访问进行限制。可用多种方法来提供所需的安全性
采用WS-Security标准[9]
使用SSL进行加密和签名
使用传输层安全性(Transport Layer Security,TLS)、IPSec[10]等确保数据的安全传输
使用服务器,如IIS,的身份验证功能
提供用户的角色定义和权限分配。
(4) 服务调用
开发监控应用时,通过查找操作从本地或服务注册中心检索服务描述,然后进行Web监控系统的开发。而开发完成后的系统可以位于网络的任意位置。Web监控系统与过程网关提供的Web Service进行绑定,通过服务的调用实现数据的交互,由于Web监控系统的数据是通过纯HTTP协议传输的,因此是防火墙友好的。
3.3 Web监控系统
监控系统可以有多种形式。传统的监控系统通过各种组态软件开发,如InTouch,iFix、RSView32等等,但这种监控系统一般是针对集散控制系统或现场总线控制系统的,不利于进行远程的监控。每一种应用都需要相应的运行环境,这将增加用户的投资,如采用基于Web的监控系统,就可以提供统一的人机界面,有利于进行远程监控。
(1) Web监控
远程的用户可以通过浏览器访问现场的运行画面,掌握现场数据。同时可以通过浏览器发送控制命令,控制现场设备的运行。Web监控程序还可以实现数据存档、报表打印、故障报警、统计图表及曲线的显示等[11]。在开发Web监控程序时,首先要获取过程网关提供的WSDL(通过在服务注册中心查找获取,或直接通过过程网关Web Service所在的URL获取)。在开发过程中,Web Service的使用与一般的API函数类似。为了提高性能,应尽量使用异步调用的方式。ASP.NET、JSP等都可以用来进行Web监控程序的开发。由于终端设备的性能差异,需要为手机、PDA等设备开发不同于PC的Web监控程序。
(2) 冲突避免
如果多个用户同时进行监控,可能会导致冲突,因此需要限制同时操作的用户数量。当一个用户访问Web监控系统时,如果此时已经达到了允许的最大访问数,则必须进行等待。此时,允许用户查看各种数据,但屏蔽用户的控制操作。当有其他的用户断开连接后,取消对该用户控制操作的屏蔽,可允许其进行相应的控制。
(3) 权限管理
权限管理为每个用户分配不同的权限,只允许用户进行授权范围内的操作。至少应将用户分为三个级别:管理员:主要负责对Web监控系统的管理和维护,对用户进行管理高级操作员:可以浏览各种数据,并进行相应的控制操作一般操作员:只具有浏览数据的权利,不能进行修改。
不同的用户登录系统后具有不同的操作权限,这样可以防止控制操作的滥用,增强系统的安全性。
(4) 日志管理
日志可以记录系统的运行情况以及用户进行的各种操作,特别要记录系统运行中出现的故障。对于用户操作产生的日志需要包括用户名、所进行的操作、时间和IP地址。这样可以掌握用户所进行的各种操作,也便于在出现错误时进行追踪和修复。
从Web浏览器远程监控Linux服务器和桌面系统方法详见:http://jingyan.baidu.com/article/9113f81b60f0c62b3214c7e7.html不知道你是否用的是韩国的一套监控软件叫HITECH,他可以实现,一般的话现在的监控软件都可以在WEB中输入ip地址加端口号就能连接到监控服务器上,请仔细阅读你的监控软件说明书,或者打厂家电话进行询问!欢迎分享,转载请注明来源:夏雨云
评论列表(0条)