目前,将Web技术用于工业控制中已经成为一个热点,通过在工业控制底层的现场设备中运行嵌入式Web服务器,可用标准浏览器在Internet网络的远端对这些设备进行访问与控制,通过存储在现场设备中的网页,动态地反映现场设备的运行状态以及执行操作后的反馈信息。这势必给采集、检测、分析、控制、系统维护等带来新的功能优势,如远程采集、监控、系统维护等。这种嵌入式Web服务器与现场控制系统、仪器仪表相结合,就可通过Internet实现远程监控和系统维护。同时,控制系统、仪器仪表在Web功能延伸的同时,还必须保证系统本身具备的特性:实时性、可靠性、安全性等。
一 传统控制系统与Web技术改造后的控制系统比较
在工业控制系统中,对远端嵌入式控制设备进行访问和监控往往通过专用通信协议和监控软件。通常这种方式的访问,客户端和服务器端的程序都是专为用户定制的,具有良好的响应。但缺点也十分明显,即每台想访问服务器的客户PC机都要安装给定版本的客户端程序,一旦有新的版本产生,每台客户端PC都得重新安装新的版本,要让每台客户机都尽快更新成最新版本的程序是一 件费时的事情。
嵌入式Web技术的控制系统的监控功能是通过位于PC机上的通用客户端程序(如IE软件)访问位于嵌入设备中的服务器端程序来完成。嵌入式Web服务器却可简化和实现远程访问和控制。嵌入式Web服务器就是一个HTTP文本服务器,它是在非PC机的现场设备上运行的特殊Web服务器。通常这些现场设备资源有限,如CPU运算处理能力不强、存储空间少、能耗要求严格,所以嵌入式Web服务器在工业控制中应用通常都有一些特殊的要求。由于嵌入Web服务器遵循HTTP协议,可通过标准的浏览器进行访问,就不需要定制特殊的客户端程序,只需安装标准的浏览器软件,如Internet Explore或者Netscape。这样只有现场设备的应用程序需要定制和更新,客户端程序就不需要。典型的采用嵌入式Web服务器的控制系统结构如图1所示。
[align=cetner]
工业控制采用嵌入式Web技术,具有以下优势:
(1)无须研发客户端软件,网络浏览器作为通用客户端的人机界面可运行于各个平台,无论是Windows、Unix均可,与所在工作站的操作系统无关;
(2)浏览器的界面简单易用,无需进行额外的使用培训;
(3)可通过浏览器进行服务器端软件的下载、升级和更新,使管理和升级现场设备应用软件更加轻松和方便;
(4)同一个服务器设备可被多个浏览器同时访问,只需通过安全认证,可以使用户通过Internet网进行远程监测、控制、升级,节省人力资本;
(5)服务器端软件可以进行自诊断,能实时进行故障报警,故障分析,并通过Internet网络通知不在现场的管理者,可加快故障排除,缩短故障响应和维修时间。
二 嵌入式Web服务器与标准Web服务器的差别
标准Web服务器,目的是用于电子商务或在Internet上发布网络服务供大多数人访问,是定位在“集中所有的Web服务软件的优点,提供最稳定的、全功能的HTTP服务器”。它的全功能的许多特性都是以牺牲代码空间并占用大量硬件资源为代价的,而工业底层的各种现场设备的各种资源均有限,和PC机有很大的差别,上面这些要求对嵌入式Web服务器来说难以实现。嵌入式Web服务器则更多地关注根据仪表、控制系统的特点设计,以下是嵌入式Web服务器的具体特征。
1. 有限的嵌入式系统资源,较少的代码空间
这是最重要的需求。许多嵌入式设备通常只有有限的存储空间(Flash和RAM),这就要求我们的服务器程序所占的存储空间要小(包括代码空间、堆和栈的大小)。同时,由于大多数嵌入式设备没有很好的存储管理功能,不能对已经分配的存储空间进行有效的回收,所以一旦用于打开某个网页的内存空间被释放之后,很难与临近的内存空间合并,导致将来无法使用。这就要求严格控制嵌入式Web服务器的代码大小,所需内存大小,并采用预分配和静态分配的机制进行存储管理,防止出现内存碎片。
2. 能够支持动态网页的生成
标准Web服务器通常含有大量的静态存储网页,而嵌入式Web服务器要根据需求动态生成网页。这些网页需要实时地反映设备的状态、采集的信号、报警信息,反馈操作的执行结果等等。嵌入式Web服务器必须要求网页能随现场设备的变化而动态更新和生成。通常有以下两种做法来实现动态数据的生成:
(1)通过纯C代码在程序执行时生成HTML的标签来反映动态的数据;
(2)直接生成动态网页,并通过扩展标签来嵌入动态数据。
3. 可以与控制系统、仪器集成
嵌入式Web服务器应当能与现有的控制设备进行很好地集成,以方便设计。将已有的与设备相关的应用程序接口API与Web服务器集成,可通过不同的途径。不同的嵌入Web服务器供应商会提供不同的方法,目前还没有统一的标准。但比较通用的做法是通过动态服务网页ASP(Active Server Pages)和javascript来使设备的应用程序产生的动态结果链接到网页上。
4. 能够支持没有文件系统的设备
许多嵌入式设备通常没有磁盘文件系统或其他大容量存储设备,但仍希望通过网页来对其进行访问和控制,这就要求嵌入式Web服务器能够通过ROM或Flash这样的存储设备来进行网页的存储。
5. 可以移植到新的平台上和CPU体系结构中
嵌入式Web服务器通常要应用在不同的现场设备中,这些设备具有不同的处理器体系 ,如果Web服务器具有高度可移植性,则不仅可使更多的不同现场设备提供Web服务,而且能让在Web服务器上的开发经验从一个项目转移到另一个项目上来。
6. 必须有安全保护,严格认证关键信息的访问以及组态、配置的操作对嵌入式控制系统、仪表设备的信息安全是十分重要的,通常使用的安全模型都应该在嵌入式设备中得到相应的实现,如SSL加密和认证、DDA加密、用户操作权限设置等,保证控制系统信息实时控制的安全可靠。
三 嵌入式Web技术在工业现场中的具体实现方式
由于在工业现场中,各种智能仪表的运算能力、储存空间及其他各种硬件资源均有不同,其接入到网络中的方式也有不同,导致嵌入式Web技术在具体的实现中有以下几种方式:
(1)运行软件TCP/IP协议栈,设备内部实现Web服务器。
这种方式的关键是用纯软件来实现TCP/IP的协议栈,让嵌入式Web服务器软件在此之上运行,并可直接连接到网络上。这种直接连接的方式,通常需要CPU具有很强的运算处理能力,要求32位处理器,如ARM系列CPU,PowerPC,MIPS处理器等,它们通常有串口可以与Modem连接,或者有以太网芯片组连接到以太网上,从而让TCP/IP协议栈软件与外界进行通信,其结构如图2。
其技术优点是:设备可直接挂接到网络上;整体性好,不需要其他辅助硬件,全部硬件就是CPU和接口芯片,硬件设计简单。
其缺点是:需要处理能力较高的CPU,通常为32位运算能力的处理器;代码量和数据内存耗费很大,需要较大的存储空间;纯软件协议栈,软件调试复杂。
(2)通过辅助硬件实现TCP/IP协议栈,控制设备集成形式实现Web服务器。
这种方式如图3,完全由硬件来实现TCP/IP协议栈,只需在硬件规划时设计好接口即可。也可采用能实现TCP/IP的硬件电路板,通过串口接入到现场智能设备上,从而实现硬件TCP/IP协议。现场设备的控制处理器只需运行嵌入式Web服务器软件即可,大大减轻了负担。
方案优点是: 设备可以直接挂接到网络上;全部的TCP/IP协议栈由外围芯片硬件实现,减轻了调试软件的负担;CPU不用运行TCP/IP协议栈软件,减轻了处理负担,对CPU的性能要求降低,减少了存储器的使用空间。
其缺点是:增加了外围芯片,成本增加;增加了硬件设计复杂度和产品成本。
(3)外部网关形式实现嵌入式Web服务器,对多设备进行调度。
这种方式如图4,通常让一台PC机来充当外部网关,在此之上运行完整的TCP/IP协议和部分嵌入式Web服务软件,通过串口等方式使每台PC机可控制一个或者多个现场设备。外界对现场设备的访问,先要通过网关进行解析,然后与现场设备交换信息,提取网页等,并将最终的信息送给外部访问者。
其优点是:现场设备不需其他辅助的硬件,只需有简单的RS-232或RS-485等通信接口;极大减轻了CPU的负载,对CPU的性能和存储器空间的要求大大降低;基于8位或16位微处理器使得控制设备比较适合采用外部网关形式Web服务器;由于软硬件的修改很少,极大缩短了产品的研发时间。
其缺点是:由于需要外部的网关(通常是PC机),增加了产品的成本和系统复杂性;在网关与现场设备之间的协议没有标通常,采取何种方式实现网络互联并运行嵌入式Web服务器,取决于硬件资源、产品成本和用途。对于CPU处理能力强的硬件设备,可采用第一种或者第二种方式,而对于CPU处理能力不强,产品数量不多,或者是老设备的改造等,可在原有硬件的基础上考虑第二种或者第三种实现方式。
四 嵌入式Web技术发展展望
将嵌入式Web技术应用到工业控制现场具有许多优点,但同时还有一些关键问题需要进一步解决:
(1)实时性
在用户浏览器和工业控制底层的嵌入Web服务器之间,通常采用10M/100M以太网。如果要将实时采集的信息及时反映到用户的浏览器上,可用路由器或者交换器把关键网段隔离开,这样可避免更多的冲突,保证足够的通信速率。同时在CPU的处理能力上也要有所考虑,采用高运算能力32位嵌入式微处理器,以保证控制运算的实时性,以及在多用户访问同一个嵌入式Web服务器时可有较快的响应速度。
(2)工业标准的选择
Internet相关各种标准在不停地发展。从使用的语言上来看,HTML语言已经有了更多替代,如XML可扩展标识语言,可使表示形式和具体内容分开,具有更强的数据交换功能,更有利于控制系统通过标准方式来交换数据。所以在现场设备中,会得到更多的推广。
(3)可靠性
工业控制设备基本功能是实现现场过程变量的输入、输出和控制任务,现场控制设备的可靠性至关重要,由于增加了嵌入式Web服务功能,导致系统软件功能变得复杂而且耗费资源。因此必须进行严格的系统软硬件可靠性设计,保证现场控制设备增加了远程服务的Web服务功能的前提下系统控制功能仍能稳定地运行。
(4)安全性
对工业现场关键设备的访问和操作,以及网页信息的显示,均要保证安全性,通常不能用明文在网络上传输信息,而是采用加密措施以及鉴别认证进行用户管理。
五 结束语
随着网络技术不断的发展,将Web技术应用到工业控制现场中使得系统功能在空间上得到延伸,具备网络化自动化控制系统的特性,具有较好应用性、开放性,是技术发展的趋势和热点。同时,在具体实现嵌入式Web服务器的时候,我们要考虑底层设备和仪器的各种资源约束,如处理器速度、存储器空间、通信接口方式、产品成本等,以决定采取何种方式接入网络,以及实现哪些Web服务器功能。