基于B/S结构的网络控制系统开发
扫描二维码
随时随地手机看文章
1 引言
在工业自动化领域里,控制网络正向体系结构的开放性方向发展,信息沟通的领域正迅速覆盖从工厂的现场设备到控制、管理的各个层次,基于 internet/intranet的企业综合自动化方案已经成为热门的研究方向。
通过internet浏览器相关人员能够进行生产过程的远程监视,远程设备调试和远程设备故障诊断、处理,不但可以提高企业自动化水平,实现无人职守,而且在很大程度上为企业生产运作的科学管理、安全运行和有效维护奠定了坚实的基础。但是,由于网络延时的存在,基于网络的控制系统不可能是一种闭环控制,采用的是远程监督控制方案,而逻辑控制功能由现场设备层完成。
本文根据这一思想提出基于b/s结构进行的网络控制,并开发了一套基于plc和交流变频器的实时远程控制系统,该系统集工控组态软件、plc技术、变频控制技术,网络通信技术于一体。
2 browser /server结构的工业信息监控系统
客户/服务器(client/server)技术是目前广泛使用的一种信息处理模式[2]。与传统的集中式信息处理模式相比,它可以减少系统开支,将网络所连接的微机群信息处理性能大大提高,因为其分布式处理的特点,它可以提高系统的可靠性,此外,由于其采用模块化及开放式体系结构,使得它容易将不同的机器有效地连接在一起,易于系统的扩展升级,提高了系统的灵活性。但其也存在许多潜在的缺陷[3],诸如布局困难、培训费用及系统维护费用高等,而且c/s结构也不能满足客户端跨平台的要求。因此,本文利用browser /server结构建造工业信息监控系统。
2.1 browser/server体系结构的特点
随着internet/intranet技术和应用的发展,www服务成为核心服务,用户可通过浏览器browser统一的界面上,完成网络上各种服务和应用功能。这种在20世纪90年代中期发展的,基于浏览器、web服务器和应用服务器的计算结构称为browser/service(b /s,浏览器/服务器)计算模式,b/s模式继承传统的c/s(客户/服务器)模式中的网络软、硬件平台和应用,但克服了c/s模式的上述缺陷,这种新的结构具有下列优点:
(1) 应用服务器的开发简单
b/s结构是一个包括了客户、web服务器和应用服务器的三层结构,涉及到四个组成部分:浏览器、web服务器、数据库服务器、应用服务器。这种划分使得程序的编制简单,例如应用服务器不必过多地考虑和客户端的通讯问题,大量的与客户端的数据传输由数据库服务器和web服务器完成,使开发者能够把更多的精力放在功能的完善上。
(2) 有许多现成的可供选择的外围程序
web服务器和数据库服务器可以采用现成的产品,只有应用服务器需要自己开发,而且由于web服务器负责与数据库服务器和客户端浏览器的一部分通信,减轻了应用服务器的开发负担。
(3) 客户端获取数据更加容易
采用b/s结构,最直接的和最大的变化体现在客户端上。客户端不再像传统的c/s结构中那样,只与一个应用服务器通信。客户端获取数据的渠道不止一条。对于非实时数据,浏览器可以直接向web服务器发出数据查询请求,而应用服务器只要负责把数据写入数据库即可,不参与客户端获取数据库中的数据这一过程。对实时数据,浏览器通过页面内嵌的activex控件,直接与应用服务器通信,而web服务器和数据库服务器对此将一无所觉。
2.2 browser/server结构的工业信息监控系统
b/s结构的工业信息监控系统是c/s结构的延伸,它们的网络结构基本相同,只是服务器端的功能更加分散,基本框图如图1所示。
工业信息监控系统采用b/s模式,客户端直接通过浏览器与服务器端进行动态交互,而c/s模式采用的是事件驱动方式。各子站得到现场控制单元的实时信息,并将其写入数据库服务器保存,web服务器将数据库服务器的实时数据动态发布到网上,客户端便能通过浏览器方便的得到这些实时信息;另一方面,客户端的控制信息也可以通过web服务器写入各子站,再由子站将数据写入现场设备,实现远程控制。b/s模式下浏览器代替专门的客户端软件,用户通过浏览器获得自己权限内的企业内部数据信息,同时做出决策。按照tcp/ip通信协议和www规范,通过嵌在web页面activex控件对数据端口的访问,实现现场数据的远程采集,同时根据采集的信息发出相应的指令对现场设备进行控制。因此,系统的开放性得到很大提高,开发与维护更加方便。
3 基于b/s结构的远程控制实例
本文研究开发了一套基于plc和交流变频器的实时远程控制系统,该系统集工控组态软件、plc技术、变频控制技术,网络通信技术于一体。
3.1 系统总体结构
本系统是一个双容水箱水位实时检测和控制系统,采用一般化的监控系统分层结构,整个系统分成三级:现场控制级(plc)、上位机监控级(服务器)、远程控制级(客户)。实验台实现以下功能:
(1) 通过对下位机(plc)的程序设计,使其能实现对水位的pid控制和模糊控制。
(2) 通过通讯电缆实现下位机(plc)与上位机(组态王)的通讯。
(3) 通过对上位机工控软件的开发,使其能采集现场数据,并将客户端的用户信息写到下位机(plc)。
(4) 远程客户与上位机通过实验室局域网通信,使远程客户能浏览水位实时趋势图和历史趋势图,并能进行控制参数的调节,选择控制方式,以及紧急事故处理(启停泵)系统框图如图2所示。
3.2 系统硬件配置
整个水位网络控制系统的工艺流程的设计如下所述:通过plc控制程序对水位进行pid控制和模糊控制,把运算的结果输出到变频器,来控制交流马达的启停和转速,从而水位稳定在设定值,此外通过plc与组态王的通信,以及远程客户机与上位机的通信,实现在远程客户端对给定值,高限,低限的设置,以及控制方式的选择,控制参数的调整,并通过报警图,趋势图对水位进行监控。系统硬件具体配置如附表所示。
3.3系统软件配置
由上述的网络结构,整个系统分成三个层次,其软件设计也由三个部分组成:
(1) 现场控制层软件设计:在这一部分要实现的功能是水位信号的采集、pid控制算法的实现、模糊控制算法的实现、控制信号的输出等。选用的控制器是西门子s7-300系列的可编程逻辑控制器,因此选择与之配套的编程软件step7,它可使用梯形逻辑,功能块图或语句表。利用step7编制控制程序,调试成功后将程序写入plc,这样plc就可以脱机运行了。通过实验,验证了这一控制方案,控制精度高,运行平稳,抗干扰能力强。
(2) 上位机软件设计:这一部分主要是作为远程客户机与下位机(plc)通信的桥梁,一方面负责采集plc数据,并将其传送给远程客户机,另一方面,接收远程客户机的控制信息,并将其写入plc。组态王自带s7-300的驱动程序,能方便地得到plc数据,并且其网络功能较强,能快速实现基于 tcp/ip协议的网络通信,因此,我们采用组态王作为上位机软件开发环境。
(3) 远程客户端软件设计
这一部分主要是实现与上位机的通信以及监控画面的开发,为了便于实现与上位机的通信,采用统一的开发环境—组态王,将整个应用程序分配给多个服务器,用以提高项目的整体容量结构并改善系统的性能。服务器的分配可以是基于项目中物理设备结构或不同的功能,用户可以根据系统需要设立专门的io服务器、历史数据服务器、报警服务器、登录服务器和web服务器等。
3.4 网络控制的实现及安全管理
因为组态王是完全基于网络的,是一种真正客户/服务器模式,因此可以将“组态王”安装在网络版windows98/2000或nt上,并在配置网络时绑定tcp/ip协议,即可利用其网络功能实现远程控制。
在本系统中我们利用实验室原有的局域网,将其中1台作为服务器,通过串行口与下位机(plc)相连,并将该机网络标识设为server,其余计算机作为远程客户,将其网络标识分别设为client1、client2等,各主机安装统一的操作系统windows2000,且都安装组态王6.0。完成网络连接之后,对各个站点设置网络参数,并且定义在网络上进行数据交换的变量,报警数据和历史数据的存储和引用等等。
在此系统中,程客户端除了可以实时监控双容水箱的水位控制情况外,利用网络的回写功能,还可以实现远程修改p、i、d参数,以提高控制效果。为确保系统的安全运行,每个参数都有一定的修改权限,只有拥有该权限的用户才能修改,这样就确保了网络控制的安全有效性。
4 结束语
本文客户/服务器模式和浏览器/服务器模式进行了分析比较,提出了基于浏览器/服务器模式的网络架构。并以实验室双容水箱水位控制系统为研究对象,深入研究了组态软件—组态王的网络功能,并利用该组态软件实现了网络远程控制,进而证明了利用b/s模型进行网络控制的有效性。