� � � � � � � � � �
收稿日期: 2005�06�29
作者简介:张静( 1979�) ,女,江西九江人,长沙理工大学助教,硕士,主要从事 LonWorks现场总线过程控制系统和网络实时监控系统研究.
第 20卷第 4期
2 00 5年 11月
长 沙 电 力 学 院 学 报 ( 自 然 科 学 版 )
JOURNAL OF CHANGSHA UNIVERSITY OF ELECTRIC POWER( NATURAL SCIENCE)
Vol. 20 No. 4
Nov. 2 0 0 5
C/ S与 B/ S混合架构的远程监视系统设计
张 � 静1,吴 � 敏2,袁卓异3
(1� 长沙理工大学 电气与信息工程学院, 湖南 长沙 � 410076; 2� 中南大学信息科学与工程学院, 湖南长沙 � 410083;
3� 长沙水业投资管理有限公司, 湖南 长沙 � 410007)
摘 � 要:在比较 C/ S 和 B/ S 模式的优缺点基础上, 分析了采用 C/ S 和 B/ S 混合构架的远程监视系统,并阐述了系
统实现中的主要关键技术.
关 � 键 � 词:远程监视; 网络通信;现场总线
中图分类号:TP 273+ . 5� � � 文献标识码: A � � � 文章编号: 1006�7140( 2005) 04�0053�04
Design of Remote Monitor System Based on the
Mixed Composition of C/ S and B/ S
ZHANG Jing1, WU Min2, YUAN Zhuo�yi3
( 1�College of Electrical & Information Engineering, Changsha University of Science & Technology, Changsha 410076, China;
2�College of Information Science & Engineering, Central South University, Changsha 410083, China;
3. Changsha Water Service Investment Management Co. , Ltd, 410007, China)
Abstract:Based on comparison of the advantages and disadvantages of the C/ S mode with those of the B/ S
mode, a remote monitor system with the mixed composit ion of C/ S & B/ S is analysised. It explains the key
technologies used in the system.
Key words: remote monitor; network communication; f ieldbus
� � 基于 Internet的远程监控系统构建了 Internet 网
� � � 企业网 � � � 现场总线的三级模式, 是 Internet 技
术、Web技术、数据库技术、TCP/ IP 网络通信技术、
浏览器技术发展的产物. 以现场总线为基础的底层
控制网络( Infranet)、以局域网为基础的企业网 ( In�
tranet)和以广域网为基础的互联网( Internet )相互连
接,可使控制网络和信息网络融为一体,构成三网融
合的网络构架.
本文从控制系统的网络化出发, 在比较 C/ S
( Client/ Server ) 和 B/S ( Browser/ Server ) 模式的基础
上,构建了一个基于 LonWors现场总线的 C/ S与 B/
S 混合架构远程监视系统体系结构, 并对其实现的
主要关键技术进行较详细的阐述.
1 � 系统总体设计
1�1 � 系统功能
1) 网络通信: 实现局域网内的本地数据传送,
将现场数据实时传给局域网内的远程控制计算机;
实现 Internet网上的远程数据发布, 支持远程用户通
过浏览器实时监视现场的运行状况.
2) 数据管理:以数据库形式实时保存工业现场
数据,实现数据的采集、校验、存储及发布工作.
3) 用户界面:用图形模拟现场环境构筑监视界
面,远程用户可直观地对工业现场进行实时监视.
1�2 � 设计
本系统是一个构建在 LonWorks 现场总线控制
网络基础上的远程监视系统, 一方面 LonWorks现场
总线控制网络在现场对设备进行实时监控, 另一方
面现场采集的实时数据经过局域网送到远方的数据
库服务器保存, 由Web应用服务器以动态网页的形
式实时发布,供任何经过授权的客户端浏览器来监
视.
在局域网内的数据传送实现, 考虑到以下因素:
一,客户端应用程序(现场总线控制网络的上位监控
软件)是自行开发的专用软件,需进行复杂的数据采
集、数据处理及现场监控等工作; 二,现场所有状态
数据都将传送至数据库服务器, 传输数据量大;三,
地理范围较小. 所以我们选择了 C/ S 结构, 其专用
性、交互性强及通讯速度快等特点将可以得到充分
发挥.
而在 Internet上的数据发布实现, 即开发Web应
用程序方面, B/ S模式与 C/ S模式相比,前者极大方
便了应用程序的开发和维护. 在 B/ S 模式下, 程序
员只需集中精力开发位于中间层的 Web服务器端
的应用软件,无需考虑客户端的兼容性,并且后台数
据库系统改变或数据库结构的变化不会对客户端产
生影响.此外,由于只需传输一些简单的状态数据,
故采用 B/ S 模式是最合适的选择. 若采用 C/S 模
式,则会造成资源的浪费和软件的重复开发.
因此,本系统实际由 2个子系统组成:一个是基
于C/ S的局域网数据传送子系统,主要面向局域网
用户,由上位监控计算机和数据库服务器组成;另一
个是基于 B/ S的远程数据发布子系统, 主要面向广
域网用户,由浏览器、Web服务器和数据库服务器三
部分构成. 这种混合架构使得系统既有 瘦客户!
( B/ S)的优点,又兼备( C/ S)最大限度地利用客户机
和服务器上资源的特点.其中Web 服务器和数据库
服务器都部署在远程控制计算机上, 完成数据的采
集、存储和发布功能,供经过授权的客户通过浏览器
监视最新的现场实时数据, 如图 1所示.
图 1� C/ S 与 B/ S 混合架构的远程监视系统结构图
2 � 实现的关键技术
2�1 � C/ S模式的局域网数据传送实现
1) Winsock通信.
Winsock是Windows与TCP/ IP 的通用网络编程
接口[ 1] ,其应用程序的基本框架是客户机( Client ) /
服务器(Server)模型, 进行通信的基础是套接字. 在
此方式中,服务器在特定端口监听客户端的请求,一
旦客户端发出请求,服务器程序就能被唤醒,为客户
端提供相应的服务.
在局域网数据传送中,上位组态计算机为客户
端,而远程控制计算机为服务器端,上位组态监视平
台作为客户程序向远程控制计算机发送连接请求,
在得到确认后,开始传送数据,远程控制计算机的服
务器程序则将接收的数据存入数据库中. 考虑到服
务器需完成数据的接收、验证、存储等工作,又要保
证系统的实时性, 所以服务器的应用程序是在Win�
dows环境下利用 Visual C+ + 6. 0来实现的. 而客户
机的应用程序,由于只需完成简单的数据传送工作,
且考虑到与组态监视平台的其他功能模块开发的一
致性,因此是用Visual Basic6. 0实现的.
2) 客户应用程序实现.
在VB6. 0中专门提供了一个调用Winsock APIs
的组件 � � � Winsock控件,该控件给程序员提供了一
个访问TCP/ IP 网络的捷径. Winsock 控件对用户来
54 长 沙 电 力 学 院 学 报 ( 自 然 科 学 版 ) � � � � � � � � � � � � � 2005年 11月
说是不可见的, 在编写客户或服务器应用程序时, 用
户不必了解 TCP 的细节或调用低级的 Winsock
APIs,只需通过设置控件属性并调用其方法就可轻
易连接到一台远程机器上去, 并且还可双向交换数
据.
程序部分代码如下:
∀用 Connect方法向服务器发出连接请求
Private Sub Cmdtest�Click( )
� tcpClient. RemoteHost = ServerIP
� ∀ServerIP 为服务器 IP 地址, 或服务器计算机
名
� tcpClient. RemotePort = 3333
� tcpClient. Connect
End Sub
图 2 � 局域网内服务器应用程序流程图
� � 3) 服务器应用程序实现.
用VC6. 0实现的服务器应用程序需完成的任
务主要有:接收客户应用程序发送的数据, 经抽取、
校验后将数据存入数据库.其中数据接收部分采用
Winsock套接字技术,而对数据库的操作部分, 则通
过 ODBC( Open Database Connectivity)技术来完成, 其
具体流程如图2所示.
2�2 � B/ S模式的远程数据发布实现
1) ASP 开发Web数据库.
在 B/ S模式下,要求数据库能被Web服务器访
问,这种在Web 上使用的数据库即为Web 数据库,
其实现技术主要有通用网关接口( CGI)、服务器应用
程序接口( ISAPI)、动态服务器网页( ASP)等.
ASP又称活动服务器网页[ 2] , 是微软公司推出
的一种服务器端脚本运行环境, 内含于 IIS之中,可
以生成和运行动态的、交互的、高性能的Web 服务
器应用程序, 其核心技术是对组件和对象技术的充
分支持. 通过使用 ASP 的组件和对象技术, 用户可
以直接使用 ActiveX控件, 调用对象方法和属性, 以
简单的方式实现强大的功能.
ASP的工作流程分为 5 个阶段: 请求、分析、执
行、封装和应答. 它访问数据库的过程是: 当浏览器
向Web服务器申请访问一个 ASP 文件时, Web服务
器调用ASP 文件, 然后解释执行每一条脚本语句,
用ADO组件通过ODBC接口访问数据库, 再把执行
的结果生成HTML 文件传给客户端.
ASP 技术访问数据库原理如图 3所示.
图 3� ASP技术访问数据库原理图
� � 2) ActiveX技术.
由于本系统要提供给用户的页面图元种类多,
图形复杂,图元要根据数据来改变状态.我们将图元
分为 2种类型:背景对象和前景对象.其中背景对象
指不需要动态刷新的图元, 如管道、文字等; 前景对
象指需要根据数据来改变状态的图元, 如液位、实时
曲线等. 背景图元用 PhotoShop 绘出加入网页中, 而
前景图元就要使用Act iveX控件.
ActiveX控件是一个提供特定功能的二进制对
象[ 3] ,就如同一个计算机程序一样,它们可以被加入
到客户服务器应用程序、Web 应用程序以及使用
JavaScript和 Vbscript的 Web页中. 利用脚本描述语
言( Script )可以在控件之间以及客户端与服务器之
间通过设置属性( property)、调用方法( method)和激
活事件( event)进行通信.作为针对 Internet应用的开
发技术, ActiveX控件被广泛的运用于客户端和服务
器端,可以大大增加页面的表达效果.例如,我们在
网页中加入Trend实时曲线图控件:
< OBJECT
classid= clsid: 9687C44A - 906A - 11D4 - 987D -
DA7EAAB63647!height= 178 id= Trend1
style= FONT- SIZE: xx- small!; HEIGHT: 178px;
LEFT: 0px; TOP: 32p>
当数据需要更新时, 只要调用: Trend1. AddXY
55第 20卷第 4期 张� 静等: C/ S与 B/ S混合架构的远程监视系统设计
( 0, Gtime( ) , Pressure1) ; Trend1. Refresh( )即可.
3 � 系统实例
以过程控制实验室的实验装置为对象, 构建一
个LonWorks现场总线过程控制与远程监视系统, 其
硬件结构如图 4所示. 在中心室内, 两台 PC机分别
完成上位计算机和远程控制计算机的功能; 在实验
现场, LON通用智能节点彻底下放到现场,就近分散
分布于各实验装置周围.
图 4� 系统控制应用硬件结构图
远程监视系统工作步骤: # 启动上位监控平台
VSC的远程数据发送画面,输入远程控制计算机的
IP地址,发送连接请求,如图5所示,连接完成后, 即
可向其发送实时数据; ∃ 在远程控制计算机上,配置
好Web服务器并完成相应的Web服务器开发.使得
Web服务器能从数据库服务器得到最新的数据并具
有发布实时动态网页的能力; %在客户端,只需点击
IE浏览器,选择相应控制系统的动态网页名, 如在
浏览器地址栏输入 http: / / 202. 197. 58. 95/ pressure.
htm后,即可在计算机屏幕上看到控制系统动态网
页,如图 6所示.
图 5� 组态监视平台客户应用程序界面
图 6� 客户端浏览器页面
4 � 结论
本文主要介绍了1个基于 C/ S和B/ S混合构架
的远程监视系统, 在比较 C/ S和 B/S 模式的优缺点
的基础上, 分析了采用 C/ S和 B/ S混合构架实现远
程监视的优势,同时论述了系统采用的关键技术.经
实验证明本系统能有效实现对 LonWorks现场总线
过程控制系统的远程监视, 结构灵活、操作简单、运
行可靠.
参考文献:
[ 1] 王艳华. 基于Winsock的TCP/ IP 网络通信[ J] .电讯技术, 2000,
(5) : 76�80.
[ 2] 张文增, 孙振国. 基于 ASP 和Web数据库技术的服务器应用程
序开发方案[ J] .计算机工程, 2001, 27( 5) : 78�81.
[ 3] 赵维铎, 易红. 基于 Web和现场总线的数控系统远程监控研究
[ J] .东南大学学报(自然科学版) , 2003, 33(1) : 45�48.
56 长 沙 电 力 学 院 学 报 ( 自 然 科 学 版 ) � � � � � � � � � � � � � 2005年 11月