CN101258495A - 用于提供对过程控制环境中的控制器的直接web访问的系统和方法 - Google Patents
用于提供对过程控制环境中的控制器的直接web访问的系统和方法 Download PDFInfo
- Publication number
- CN101258495A CN101258495A CNA2006800326620A CN200680032662A CN101258495A CN 101258495 A CN101258495 A CN 101258495A CN A2006800326620 A CNA2006800326620 A CN A2006800326620A CN 200680032662 A CN200680032662 A CN 200680032662A CN 101258495 A CN101258495 A CN 101258495A
- Authority
- CN
- China
- Prior art keywords
- controller
- web
- execution environment
- web server
- application
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Computer And Data Communications (AREA)
- User Interface Of Digital Computer (AREA)
- Information Transfer Between Computers (AREA)
Abstract
一种控制器(104a-104b)包括执行环境(200),其能够执行用于控制处理环境(100)中的处理元件(102-102b)的应用。该控制器(104a-104b)还包括web服务器(222),其能够在所述执行环境(200)内被执行。该web服务器(222)还能够提供对所述控制器(104a-104b)的直接web访问,这是通过经由网络(110,114a-114b)提供与所述控制器(104a-104b)和所述处理元件(102a-102b)的至少其中之一相关联的信息以便在web浏览器上显示来实现的。可以按照嵌入在web页面(302)中的图形图像(304-306)的形式来提供所述信息,或者可以利用web服务、web表单或者智能客户端应用来提供所述信息。此外,所述web服务器(222)还可以作为所述执行环境(200)中的后台任务来执行,所述执行环境(200)可以表示确定性执行环境,并且所述应用可以表示实时应用。
Description
相关申请的交叉引用
本申请涉及下列专利申请:
在_提交的标题为“APPARATUS AND METHOD FORDETERMINISTIC GARBAGE COLLECTION OF A HEAP MEMORY”的美国专利申请No._/_,_[案号为H0006922];以及
在提交的标题为“DETERMINISTIC RUNTIME EXECUTIONENVIRONMENT AND METHOD”的美国专利申请No._/_,_[案号为H0006879];
所述两个专利申请被结合于此以作参考。
技术领域
本公开内容总体上涉及控制系统,更具体而言,涉及一种用于提供对过程控制环境中的控制器的直接web访问的系统和方法。
背景
通常利用过程控制系统来管理处理设施。除了其他功能之外,这些控制系统常常管理所述处理设施内的电动机、催化裂化器、阀门、以及其他工业设备的使用。示例的处理设施包括制造工厂、化工厂、原油精炼厂以及矿石处理厂。在这些设施中,所述工业设备通常执行在所述处理设施内处理材料所需的动作。
在常规的过程控制系统中,使用各种控制器来控制所述处理设施内的电动机和其他工业设备的操作。所述控制器例如可以监控工业设备的操作、向工业设备提供控制信号以及在工业设备发生故障时生成警报。常规的控制器通常缺乏简单易用的用户接口以允许用户与所述常规控制器进行交互。此外,执行程序以提供用户接口可能会干扰由所述常规控制器所执行的其他操作,比如当用户接口程序的执行干扰实时控制应用的执行时。
概要
本公开内容提供一种用于提供对过程控制环境中的控制器的直接web访问的系统和方法。
在一个实施例中,一个控制器包括执行环境,所述执行环境能够执行用于控制处理环境中的处理元件的应用。所述控制器还包括web服务器,其能够在所述执行环境内被执行。所述web服务器还能够提供对所述控制器的直接web访问,这是通过经由网络提供与所述控制器和所述处理元件的至少其中之一相关联的信息以便在web浏览器上显示而实现的。
在特定实施例中,可以通过嵌入在web页面中的图形图像的形式来提供所述信息,或者可以利用web服务、web表单或者智能客户端应用来提供所述信息。此外,所述web服务器可以作为所述执行环境内的后台任务而被执行,所述执行环境可以表示确定性执行环境,并且所述应用可以表示实时应用。
通过下面的附图、描述和权利要求书,本领域技术人员可以很容易看出其他技术特征。
附图简述
为了更全面地理解本公开内容,现在参考以下结合附图所做出的详细描述,其中:
图1示出根据本公开内容的一个实施例的示例过程控制系统;
图2示出根据本公开内容的一个实施例的提供对过程控制系统中的控制器的直接web访问的示例执行环境;
图3A到图3E示出根据本公开内容的一个实施例的通过对过程控制系统中的控制器的直接web访问而提供的示例显示;以及
图4示出根据本公开内容的一个实施例的用于提供对过程控制系统中的控制器的直接web访问的示例方法。
详细描述
图1示出根据本公开内容的一个实施例的示例过程控制系统100。在图1中示出的过程控制系统100的实施例仅仅用于说明。在不背离本公开内容的范围的情况下可以使用过程控制系统100的其他实施例。
在该示例实施例中,过程控制系统100包括一个或多个处理元件102a-102b。处理元件102a-102b表示处理环境中的各组件,其可以执行多种功能当中的任何功能。例如,处理元件102a-102b可以表示处理环境中的电动机、催化裂化器、阀门以及其他工业设备。处理元件102a-102b可以表示在任何适当的处理环境中的任何其他或附加组件。每一个所述处理元件102a-102b包括用于在处理环境中执行一个或多个功能的任何硬件、软件、固件或其组合。在本文献中,短语“处理元件”是指能够执行一个或多个功能以便在处理环境中操纵、改变或者以其他方式处理一种或多种材料的任何组件、设备或系统。此外,短语“处理环境”是指操纵、改变或者以其他方式处理一种或多种材料的一个或多个处理元件的集合,其中包括制造工厂或生产工厂或其他设施。
两个控制器104a-104b被耦合到处理元件102a-102b。在本文献中,术语“耦合”及其派生词是指两个或更多个元件之间的任何直接或间接通信,而不管这些元件是否彼此发生物理接触。控制器104a-104b控制处理元件102a-102b的操作。例如,控制器104a-104b可能能够周期性地向处理元件102a-102b提供控制信号。作为一个具体例子,如果处理元件表示电动机,则所述控制器104a-104b中的一个可以向该电动机每毫秒提供一次控制信息。每一个所述控制器104a-104b包括用于控制一个或多个所述处理元件102a-102b的任何硬件、软件、固件或其组合。控制器104a-104b例如可以表示C300控制器。
两个服务器106a-106b被耦合到控制器104a-104b。服务器106a-106b执行各种功能以支持控制器104a-104b和处理元件102a-102b的操作和控制。例如,服务器106a-106b可以记录由控制器104a-104b收集或生成的信息,比如与处理元件102a-102b的操作相关的状态信息。服务器106a-106b还可以执行用来对控制器104a-104b的操作进行控制的应用,从而控制处理元件102a-102b的操作。另外,服务器106a-106b可以提供对控制器104a-104b的安全访问。每一个所述服务器106a-106b包括用于提供对控制器104a-104b的访问或控制的任何硬件、软件、固件或其组合。服务器106a-106b例如可以表示执行来自MICROSOFT CORPORATION的WINDOWS 2000的个人计算机(比如台式计算机)。在本文献中,术语“应用”是指适于用适当计算机语言实施的一个或多个计算机程序、指令集、过程、函数、对象、类、实例或相关数据。
一个或多个操作员站108a-108b被耦合到服务器106a-106b。操作员站108a-108b表示提供对服务器106a-106b的用户访问的计算或通信设备,所述服务器106a-106b随后可以提供对控制器104a-104b和处理元件102a-102b的用户访问。例如,操作员站108a-108b可以通过利用由控制器104a-104b和服务器106a-106b收集的信息而允许用户检查处理元件102a-102b的操作历史。操作员站108a-108b还可以允许用户调节处理元件102a-102b、控制器104a-104b或者服务器106a-106b的操作。每一个所述操作员站108a-108b包括用于支持对所述系统100的用户访问和控制的任何硬件、软件、固件或其组合。操作员站108a-108b例如可以表示执行来自MICROSOFTCORPORATION的WINDOWS 95、WINDOWS 2000或WINDOWS NT的个人计算机。
在该例中,至少其中一个所述操作员站108a是远程站。该远程站通过网络110被耦合到服务器106a-106b。网络110便于所述系统100中的各种组件之间的通信。例如,网络110可以在各网络地址之间传送因特网协议(IP)分组、帧中继帧、异步传输模式(ATM)信元或者其他适当信息。网络110可以包括一个或多个局域网(LAN)、城域网(MAN)、广域网(WAN)、诸如因特网之类的全球网络的全部或一部分、或者处在一个或多个位置处的一个或多个任何其他通信系统。
在该例中,所述系统100包括两个附加服务器112a-112b。服务器112a-112b执行各种应用以控制系统100的总体操作。例如,系统100可以被使用在处理或生产工厂或者其他设施中,并且服务器112a-112b可以执行被用来控制所述工厂或其他设施的应用。作为具体例子,服务器112a-112b可以执行诸如企业资源计划(ERP)、制造执行系统(MES)或者任何其他或附加工厂或过程控制应用之类的应用。每一个所述服务器112a-112b包括用于控制系统100的总体操作的任何硬件、软件、固件或其组合。
如图1所示,系统100包括支持系统100内的各组件之间的通信的各种冗余网络114a-114b和单一网络116a-116c。每一个所述网络114a-114b、116a-116c表示便于系统100内的各组件之间的通信的任何适当的网络或网络组合。网络114a-114b、116a-116c例如可以表示以太网。
在操作的一方面中,一个或多个所述控制器104a-104b执行、支持或者以其他方式提供对执行环境的访问。所述执行环境提供对于各应用在执行期间可能使用的各种特征的支持。例如,所述执行环境可以提供对于由所述应用所使用的数学函数、输入/输出功能以及通信功能的支持。所述执行环境还可以支持对汇编代码的编译、对堆存储器的管理以及任何其他或附加功能。在本文献中,短语“受管理应用”是指在所述执行环境中执行的应用。受管理应用例如可以包括由控制器104a-104b执行来控制系统100内的处理元件102a-102b的实时应用。实时应用可以表示与外部环境交互或者按照精细定时的方式不同地操作的程序。
在一些实施例中,在控制器104a-104b中用来执行所述受管理应用的执行环境是确定性的。确定性执行环境是这样一种执行环境,其行为是可预测的或者可以被精确地指定。在图2中示出执行环境的一个示例实施例,在下面将对其进行描述。此外,可以在标题为“DETERMINISTIC RUNTIME EXECUTION ENVIRONMENT ANDMETHOD”的美国专利申请No._/_,_[案号为H0006879]中找到示例执行环境的附加细节,该申请已被结合于此以作参考。
为了提供对控制器104a-104b的访问,至少其中一个所述控制器104a-104b包括或者以其他方式支持web服务器。所述web服务器例如可以表示在该控制器中执行而不会干扰实时控制应用的执行的后台任务。所述web服务器允许对所述控制器进行直接的基于web的用户访问,这例如是通过允许用户使用操作员站108a-108b从而利用标准web浏览器访问该控制器而实现的。这样,用户可能能够更容易地访问及控制所述控制器的操作。在本文献中,短语“直接web访问”是指通过直接寄宿(host)在设备(比如控制器)上的web服务器(比如嵌入式web服务器)进行访问。这可以允许把与所述设备相关联的请求直接路由到该设备。
每一个所述控制器104a-104b可以支持关于所述web服务器的任何适当层次的功能。例如,在一些实施例中,控制器可以包括仅仅生成图形图像并且将其提供给用户的web服务器。所述图像例如可以包含对应于控制器或者由该控制器所监控的处理元件的诊断信息。这特别可以允许对所述控制器或者由该控制器所监控的(多个)处理元件进行非交互式监控。作为一个具体例子,由其中一个所述控制器104a-104b执行的web服务器可以表示超文本传输协议(HTTP)服务器,其能够提供包含嵌入的联合图像专家组(JPEG)图像的超文本标记语言(HTML)web页面。
在其他实施例中,控制器可以包括更复杂的web服务器,其允许对该控制器的更多用户交互和控制。例如,控制器中的web服务器可以提供或支持允许与用户交换更复杂的信息和图形的web服务。作为具体例子,控制器中的web服务器可以支持开放连通性(OPC)可扩展标记语言数据访问(XML-DA)服务或者活动服务器页面.Net(ASP.Net)应用。此外,控制器中的web服务器还可以支持富客户端应用或智能客户端应用(比如用C#或Visual Basic.Net(VB.NET)编写的应用),其被下载到用户设备(比如操作员站108a-108b)并且由所述用户设备执行。
在特定实施例中,如果控制器中的web服务器支持使用ASP.Net,则可以禁用任何.Net编译功能。在这些实施例中,所述.Net编译功能可以在别处(比如在用户的设备上)执行,以便生成中间语言代码(比如汇编代码)。所述汇编代码随后被下载到所述控制器上,该控制器在其后台中把该代码编译成可执行代码。这样,所述.Net编译功能的性能就可能不干扰所述控制器中的实时应用的执行,并且所述执行环境可以是更加确定性的。
在其他特定实施例中,控制器中的web服务器可以支持富客户端应用或智能客户端应用(比如winform)。该控制器自身不需要理解winform,并且该控制器可以把所述winform提供给用户并允许该用户的设备(比如其中一个所述操作员站108a-108b)为所述winform生成必要的对象。
通过在一个或多个所述控制器104a-104b中提供web服务器,用户可以更容易地访问控制器104a-104b。例如,用户可以利用任何适当的联网计算机或其他用户设备来直接访问控制器104a-104b。此外,可以利用标准web浏览器来访问控制器104a-104b。另外,所述web服务器可以向用户提供任何静态或动态内容,其中包括动态HTML、web表单以及智能客户端winform。
虽然图1示出过程控制系统100的一个实例,但是可以对图1做出各种改变。例如,一个控制系统可以包括任何数目的处理元件、控制器、服务器和操作员站。此外,图1示出这样一个操作环境,其中可以使用一个或多个支持web服务器的控制器。所述控制器可以被使用在任何其他适当的设备或系统中。
图2示出根据本公开内容的一个实施例的提供对过程控制系统中的控制器的直接web访问的示例执行环境200。图2中示出的执行环境200的实施例仅仅用于说明。在不背离本公开内容的范围的情况下可以使用所述执行环境的其他实施例。此外,图2中示出的执行环境200可以被实施在控制器104a-104b中,尽管执行环境200也可以被使用在任何其他适当的设备或系统中。
在该示例实施例中,执行环境200包括全局汇编高速缓存(GAC)202。全局汇编高速缓存202表示能够存储将在执行环境200中执行的不同汇编代码程序的存储器。所述汇编代码程序可以表示将在执行环境200中执行的受管理应用。作为一个例子,全局汇编高速缓存202可以存储能够控制图1的一个或多个处理元件102a-102b的汇编代码程序。全局汇编高速缓存202可以存储多个汇编代码程序和/或相同汇编代码程序的不同版本。全局汇编高速缓存202表示任何一个或多个适当的存储和检索设备。
汇编加载器204把汇编代码加载到执行环境200中以便执行。例如,汇编加载器204可以把由用户下载的新的汇编代码检索到全局汇编高速缓存202中。汇编加载器204随后可以把所标识的汇编代码加载到编译器中,以便进行编译并且使用在执行环境200中。汇编加载器204包括用于加载汇编代码以便执行的任何硬件、软件、固件或其组合。汇编加载器204例如可以表示在执行环境200的后台中执行的软件线程。
提前(AOT)编译器206对由汇编加载器204加载的汇编代码进行编译。AOT编译器206表示加载时间编译器,其在汇编代码被加载时编译所述汇编代码。例如,AOT编译器206可以把汇编代码从中间语言转换到能够在执行环境200中执行的本机可执行代码。此外,AOT编译器206可以把指令插入到所述本机可执行代码中,以便确保在执行环境200中正确地执行所述代码。AOT编译器206包括用于编译汇编代码的任何硬件、软件、固件或其组合。AOT编译器206例如可以表示在执行环境200的后台中执行的软件线程。
AOT编译器206产生本机可执行代码,比如本机可执行代码208a-208b。本机可执行代码208a-208b表示能够在执行环境200中执行的可执行代码。本机可执行代码208a-208b可以提供执行环境200中的任何适当功能,比如提供对图1的一个或多个处理元件102a-102b的控制。本机可执行代码208a-208b可以提供执行环境200中的任何其他或附加功能。
一个或多个应用域210表示这样的域,其中在执行域200中执行一个或多个受管理应用(比如由本机可执行代码208a-208b实施的应用)。每个应用域210表示用于执行一个或多个受管理应用的任何适当域。虽然在图2中被显示为单个应用域210,但是也可以使用多个应用域210。
执行环境200中的所述汇编代码和本机可执行代码由代码管理器212管理。例如,代码管理器212可以控制执行环境200中的汇编代码的加载和卸载。作为一个具体例子,代码管理器212可以从用户或受管理应用接收指示执行环境200加载汇编代码程序的命令。代码管理器212随后可以使得汇编加载器204把所述汇编代码加载到AOT编译器206中,并且AOT编译器206生成被加载到应用域210中的本机可执行代码。代码管理器212还可以从用户或受管理应用接收指示执行环境200卸载汇编代码程序的命令。代码管理器212随后可以从应用域210中卸载与所标识的汇编代码相关联的本机可执行代码。卸载汇编代码的过程可以包括回收与该汇编代码相关联的存储器并且确保消除所卸载的汇编代码与执行环境200或其他程序之间的关联。代码管理器212包括用于管理在执行环境200中使用的汇编代码和/或已编译代码的任何硬件、软件、固件或其组合。代码管理器212例如可以表示在执行环境200的后台中执行的软件线程。
执行环境200还包括存储器管理器214。存储器管理器214表示管理堆存储器的使用的确定性存储器管理器。例如,存储器管理器214可以把堆存储器的各块分配给正在应用域210中执行的各受管理应用。存储器管理器214还可以使用无用单元收集信息216来释放不再被所述受管理应用使用的堆存储器的各块。无用单元收集信息216例如由无用单元收集过程生成,所述无用单元收集过程由存储器管理器214提供并且在执行环境200的后台中执行。此外,存储器管理器214还可以支持对所述堆存储器的取消分段过程。所述取消分段过程可以被用来把堆存储器的未使用的各块组合成更大的块。存储器管理器214包括用于管理堆存储器的任何硬件、软件、固件或其组合。存储器管理器214例如可以表示在执行环境200的后台中执行的软件线程。
执行环境200还包括异常表218,其存储异常信息220。异常信息220标识出在执行环境200中所经历的各种问题。示例的问题可以包括:尝试加载不存在于明确指定的位置处或者不存在于全局汇编高速缓存202中的汇编代码,在编译所加载的汇编代码的过程中出现错误,或者尝试卸载先前未加载的汇编代码。在执行环境200中执行的应用或过程可以生成标识所检测到的问题的异常。所述异常由异常信息220标识,所述异常信息被存储在异常表218中,以供稍后使用(比如在调试期间使用)或者由所述应用或过程用于运行时间的自动恢复。
嵌入式web服务器222被用来允许用户访问实施执行环境200的控制器。例如,web服务器222可以利用由所述控制器收集的信息生成图形图像(比如JPEG图像),并且提供嵌入在HTML页面中的所述图形图像。web服务器222还可以支持ASP.NET或其他应用,其为用户提供更高级的web服务。此外,web服务器222可能能够把代码下载到用户设备(比如其中一个所述操作员站108a-108b)中,所述用户设备随后执行所述代码并且与web服务器222交互。web服务器222包括用于提供对支持执行环境200的控制器的基于web的访问的任何硬件、软件、固件或其组合。web服务器222例如可以表示在执行环境200的后台中执行的软件线程。
调度器224被用来调度所述受管理应用(比如本机可执行代码208a-208b)的执行。调度器224还可以被用来调度执行环境200中的后台任务的执行。所述后台任务特别包括利用web服务器222提供基于web的访问、堆存储器管理、汇编加载和卸载以及汇编编译。例如,调度器224可以支持时间分片以允许执行多个线程,其中所述各线程表示所述后台任务和受管理应用。调度器224包括用于调度应用和其他任务的执行的任何硬件、软件、固件或其组合。
在一些实施例中,调度器224和执行环境200协作,以确保所述受管理应用和后台任务被正确执行。例如,调度器224可以控制何时可以在执行环境200中执行后台任务以及执行多长时间。作为一个具体例子,调度器224可以先占执行所述受管理应用的所有线程,并且随后调用执行环境200以执行一个或多个后台任务。调度器224向执行环境200通知可用于执行所述后台任务的时间量。执行环境200保证在该时间量到期时或者到期前把控制返回给调度器224。当执行环境200正在执行后台任务时,从/向堆存储器读取或写入数据的受管理应用不能中断该后台任务。可以允许不访问堆存储器的其他线程(比如中断服务例程或ISR)中断后台任务。通过在时间上进行平均,调度器224可以向执行环境200提供足够的时间来执行为了正确执行所述受管理应用所需要的后台任务。作为一个例子,所述受管理应用可以使用高达大约80%的可用时间片,而剩余的20%由后台任务使用。
这种类型的调度可能会对所述受管理应用施加特定要求。例如,所述受管理应用应当随着时间允许把适当的处理资源提供给后台任务并且由所述后台任务使用。此外,在把控制转移给后台任务之前,受管理应用应当来到“清空点(clean point)”或者使用读取和写入屏障(barrier)。“清空点”通常表示这样的点:在该点处,对于所述受管理应用所执行的相关指令的序列已被完成;所述“清空点”不表示在所述相关指令序列的执行期间发生的一点。作为一个例子,当控制转移发生时,受管理应用应当完成了对数据结构或文件中的数据的访问,而不是处在读取数据或写入数据的过程中间。如果在控制转移发生时所述受管理应用不处在清空点,则使用读取或写入屏障。所述读取或写入屏障通常表示用来向后台任务通知特定数据当前正被受管理应用所使用的标记或标志。这例如可以防止后台任务在取消分段期间移动所述数据或者在无用单元收集期间丢弃所述数据。
在一些实施例中,图2中示出的各组件在平台/操作系统抽象层上操作。所述平台/操作系统抽象层把执行环境200与底层的硬件平台或操作系统逻辑地分离。这样,执行环境200可以被用于不同的硬件平台和操作系统,而无需针对特定硬件平台或操作系统专门设计执行环境200。
虽然图2示出提供对过程控制系统中的控制器的直接web访问的执行环境200的一个实例,但是可以对图2做出各种改变。例如,图2中所示的功能划分仅仅用于说明。根据具体需求,图2中的各组件可以被组合或省略,并且可以添加附加的组件。
图3A到3E示出根据本公开内容的一个实施例的通过对过程控制系统中的控制器的直接web访问而提供的示例显示。具体而言,图3A到3E示出由用户使用来访问由控制器中的web服务器产生的不同web页面的web浏览器。为了易于解释,图3A到3E中示出的显示被描述为由web服务器生成,所述web服务器是利用图1的控制器104a中的图2的执行环境200执行的。可以由所述web服务器生成任何其他显示,并且所述web服务器可以操作在任何其他执行环境中以及任何其他设备、系统或环境中。
如图3A中所示,web浏览器正在显示由控制器104a生成的web页面302。在该例中,控制器104a正在生成标识出过程控制系统100中的阀门的操作的web页面302。web页面302包括两个图形304-306。在该具体例子中,图形304标识出所述阀门的历史操作,这例如是通过标识出该阀门如何随着时间打开及关闭而实现的。图形306标识出由控制器104a提供给该阀门的控制信号,这例如是通过标识出使得该阀门随时间打开及关闭的控制信号而实现的。web页面302还可以包括按钮308。按钮308可以由观看web页面302的用户选择。在该例中,按钮308允许用户访问另一个web页面,用户可以在该另一个web页面中确定用于所述阀门的任何适当操作参数。
在图3B中,web浏览器正在显示由控制器104a生成的web页面322。在该例中,控制器104a正在生成标识出可用于用户的不同web服务的web页面322。在该具体例子中,执行环境200可以按照块的形式寄宿应用或应用模块,所述块可以用图形产生或者利用基于文本的语言产生。web页面322特别允许用户观看当前正被执行的各块以及观看各块的描述和运行时间状态(其被称作“值”)。web页面322还允许用户观看关于执行环境200的信息(比如版本和超限运行计数)。
在图3C中,web浏览器正在显示由控制器104a生成的web页面342。在该例中,控制器104a正在生成包括web表单的web页面342。所述web表单对于特定控制器标识出所加载的各块、这些块中的字段以及这些块字段中的值。
在图3D中,web浏览器正在显示由控制器104a生成的web页面362。在该例中,控制器104a正在生成包括反建器(back builder)功能的web页面362。反建器表示被用来对块配置进行逆向工程的基于web的解决方案。随后使得所述配置可用于观看,或者可以在无需整个建立环境的情况下实施配置改变。在该例中,可以利用智能客户端winform提供所述反建器功能。
在图3E中,web浏览器正在显示由控制器104a生成的web页面382,并且向用户提供两个附加表单384-386。在该例中,可以响应于用户选择表单384中的块而向该用户提供表单386。如图3E中所示,web页面382正在显示类似于表单386的表单。这说明例如可以通过再利用web浏览器(比如MICROSOFT的INTERNET EXPLORER)中的表单以及对应于建立工具的winform来对web表单进行再利用。
在控制器104a的执行环境200中执行的web服务器222可以按照任何适当方式生成如图3A到3E中所示的web页面。例如,web服务器222可以在特定时间片(与由受管理应用和其他后台任务所使用的时间片交错)期间被执行。在所述时间片期间,web服务器222可以利用由控制器104a收集的数据来生成图像(比如图3A中的图形304-306)。当接收到针对控制器104a的基于web的访问的请求时,web服务器222可以生成包含先前生成的图像的web页面(比如web页面302),并且随后把该web页面提供给请求所述基于web的访问的用户。这表示web服务器222能够生成web页面的一种可能方式。web服务器222可以使用任何其他适当技术,其中包括响应于所述请求生成所述图像或其他内容,而不是在接收到请求之前生成。
虽然图3A到3E示出通过对过程控制系统中的控制器的直接web访问而提供的显示实例,但是可以对图3A到3E做出各种改变。例如,所述web页面的内容仅仅用于说明。控制器104a可以生成包含任何适当内容的任何其他或附加web页面。此外,可以从web页面中省略所有用户输入机制;并且web页面可以仅仅被动地向用户呈现信息,而不支持与用户的任何附加交互。
图4示出根据本公开内容的一个实施例的用于提供对过程控制系统中的控制器的直接web访问的示例方法400。为了易于解释,图4中示出的方法400被描述为在图1的控制器104a内的图2的执行环境200中执行。该方法400可以被使用在任何其他执行环境中以及任何其他设备、系统或环境中。
在步骤402,控制器104a监控一个或多个处理元件102a的操作。这例如可以包括由控制器104a收集关于处理元件102a的操作的信息(比如诊断信息)。作为一个具体例子,这可以包括由控制器104a收集关于处理元件102a的操作参数的信息。这还可以包括由控制器104a生成控制信号以控制处理元件102a的操作,其中所收集的信息包括关于所生成的控制信号的信息。
在步骤404,控制器104a存储与所监控的处理元件102a相关联的信息。这例如可以包括由控制器104a存储标识处理元件102a的操作参数以及由控制器104a生成的控制信号的信息。所述信息可以被存储在任何适当位置处,比如控制器104a内部的存储器或者控制器104a外部的数据库中。
在步骤406,控制器104a接收针对控制器104a的基于web的访问的请求。这例如可以包括由控制器104a接收来自其中一个所述操作员站108a-108b的信息,所述信息表明用户正在尝试利用web浏览器访问控制器104a。这还可以包括由控制器104a调用执行web服务器222。
如果在步骤408处控制器104a仅仅支持最小访问,则在步骤410处控制器104a生成一个或多个图形图像。这例如可以包括由web服务器222利用由控制器104a收集的信息来生成一个或多个JPEG图像或其他图像。作为一个具体例子,这可以包括由web服务器222生成表示由所监控的处理元件102a使用的操作参数和控制信号的时间曲线图的图形图像。
在步骤412,控制器104a把所述图形图像嵌入到一个或多个web页面中。这例如可以包括由web服务器222生成一个或多个包含所生成的JPEG图像或其他图像的HTML web页面。
在步骤414,控制器104a把所生成的web页面提供给用户。这例如可以包括由web服务器222利用HTTP把所生成的HTML web页面传送给操作员站108a或108b。此时,用户可以采取任何适当动作,比如检查所述图形图像中的诊断信息。用户还可以检查处理元件102a的操作并且识别出处理元件102a的潜在问题。
如果在步骤408处控制器104a所支持的多于最小访问,则在步骤416处控制器104a与用户进行交互并且交换信息。这例如可以包括由web服务器222以任何适当方式(其中包括但不限于使用图形图像)把所收集的信息和其他信息提供给用户。这还可以包括由用户向web服务器222提供信息,其中所提供的信息被用来改变控制器104a的操作。此外,这可以包括由web服务器222向用户的操作员站提供代码(比如C#或VB.NET代码)以供执行。用户与web服务器222可以利用任何适当机制进行交互,其中包括web表单和智能客户端winform。
虽然图4示出用于提供对过程控制系统中的控制器的直接web访问的方法400的一个实例,但是可以对图4做出各种改变。例如,在控制器104a中支持的web服务器可以仅仅允许对控制器104a的最小访问(从而可以跳过步骤408和416),或者仅仅允许对控制器104a的多于最小访问(从而可以跳过步骤408-414)。
对于在本专利文献中通篇使用的某些词和短语的定义进行阐述可能是有利的。术语“包含”和“包括”以及其派生词是指包含而没有限制。术语“或”是包含性的,其是指和/或。短语“与...相关联”和“与其相关联”以及其派生词可以是指包括、被包括在内、与...互连、包含、被包含在内、连接到或与...连接、耦合到或与...耦合、可与...通信、与...协作、交错、并置、与...邻近、受...限制、具有、具有...的属性等等。术语“控制器”是指控制至少一项操作的任何设备、系统或其一部分。控制器可以用硬件、固件、软件或者至少相同两项的组合来实施。与任何特定控制器相关联的功能可以是集中式的或分布式的(无论本地还是远程地)。
虽然本公开内容描述了特定实施例以及通常相关联的方法,但是本领域技术人员明显可以看出对这些实施例和方法的改变和置换。因此,上面对示例实施例的描述并不限定或约束本公开内容。在不背离由后面的权利要求书所限定的本公开内容的精神和范围的情况下,其他改变、替换和修改也是可能的。
Claims (10)
1、一种控制器(104a-104b),包括:
执行环境(200),其能够执行用于控制处理环境(100)中的处理元件(102-102b)的应用;以及
web服务器(222),其能够在所述执行环境(200)内被执行,该web服务器(222)还能够提供对所述控制器(104a-104b)的直接web访问,这是通过经由网络(110,114a-114b)提供与所述控制器(104a-104b)和所述处理元件(102a-102b)的至少其中之一相关联的信息以便在web浏览器上显示来实现的。
2、权利要求1所述的控制器(104a-104b),其中,所述web服务器(222)能够作为所述执行环境(200)中的后台任务来执行。
3、权利要求1所述的控制器(104a-104b),其中,所述web服务器(222)能够通过以下操作提供所述信息:
生成图形图像(304-306),所述图形图像包含与所述控制器(104a-104b)和所述处理元件(102a-102b)的至少其中之一相关联的所述信息的至少一部分;以及
通过所述网络(110,114a-114b)把包括所述图形图像(304-306)的web页面(302)提供给所述web浏览器。
4、权利要求3所述的控制器(104a-104b),其中:
所述web服务器(222)包括超文本传输协议服务器;
所述图形图像(304-306)包括联合图像专家组图像;以及
所述web页面(302)包括超文本标记语言web页面。
5、权利要求1所述的控制器(104a-104b),其中,所述web服务器(222)能够通过利用以下各项当中的一项或多项经由所述网络(110,114a-114b)与用户进行交互来提供所述信息:与所述web浏览器相结合的web服务、web表单以及智能客户端应用。
6、权利要求1所述的控制器(104a-104b),其中:
所述执行环境(200)包括确定性执行环境;以及
所述应用包括实时应用。
7、一种方法,包括:
在控制器(104a-104b)内的执行环境(200)中执行用于控制处理环境(100)中的处理元件(102a-102b)的应用;
在该执行环境(200)中执行web服务器(222);以及
利用该web服务器(222)提供对所述控制器(104a-104b)的直接web访问,其中提供所述直接web访问包括:通过网络(110,114a-114b)提供与所述控制器(104a-104b)和所述处理元件(102a-102b)的至少其中之一相关联的信息,以便在web浏览器上显示。
8、权利要求7所述的方法,其中,执行所述web服务器(222)包括:作为所述执行环境(200)中的后台任务来执行所述web服务器(222)。
9、权利要求10所述的方法,其中:
所述执行环境(200)包括确定性执行环境;以及
所述应用包括实时应用。
10、一种被包含在计算机可读介质上并且可操作用于由处理器执行的计算机程序,所述计算机程序包括用于执行以下操作的计算机可读程序代码:
在控制器(104a-104b)内的执行环境(200)中执行用于控制处理环境(100)中的处理元件(102a-102b)的应用;以及
在该执行环境(200)中执行web服务器(222),该web服务器(222)能够提供对所述控制器(104a-104b)的直接web访问,这是通过经由网络(110,114a-114b)提供与所述控制器(104a-104b)和所述处理元件(102a-102b)的至少其中之一相关联的信息来实现的。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/175,834 | 2005-07-06 | ||
US11/175,834 US7216007B2 (en) | 2005-07-06 | 2005-07-06 | System and method for providing direct web access to controllers in a process control environment |
PCT/US2006/026497 WO2007006045A2 (en) | 2005-07-06 | 2006-07-05 | System and method for providing direct web access to controlers in a process control environment |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101258495A true CN101258495A (zh) | 2008-09-03 |
CN101258495B CN101258495B (zh) | 2013-03-20 |
Family
ID=37547015
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2006800326620A Active CN101258495B (zh) | 2005-07-06 | 2006-07-05 | 用于提供对过程控制环境中的控制器的直接web访问的系统和方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US7216007B2 (zh) |
EP (1) | EP1899869A2 (zh) |
JP (1) | JP2009501968A (zh) |
CN (1) | CN101258495B (zh) |
WO (1) | WO2007006045A2 (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102096595A (zh) * | 2009-08-23 | 2011-06-15 | 美国银行公司 | 动态配置系统 |
US9201665B2 (en) | 2009-08-23 | 2015-12-01 | Bank Of America Corporation | Outputting presentation code updated for a particular user in response to receiving a page identifier |
CN106559239A (zh) * | 2015-09-29 | 2017-04-05 | 镇江雅迅软件有限责任公司 | 一种云平台部署办法 |
CN107015520A (zh) * | 2016-01-28 | 2017-08-04 | 西门子公司 | 用于借助网络协议访问数据或函数的方法和设备 |
Families Citing this family (42)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7441114B2 (en) * | 2002-09-10 | 2008-10-21 | Ge Fanuc Automation North America, Inc. | Methods and systems for management and control of an automation control module |
US7904583B2 (en) * | 2003-07-11 | 2011-03-08 | Ge Fanuc Automation North America, Inc. | Methods and systems for managing and controlling an automation control module system |
JP4465584B2 (ja) * | 2003-07-17 | 2010-05-19 | 横河電機株式会社 | 電子機器システム及び電子機器システムの構築方法 |
US7799273B2 (en) | 2004-05-06 | 2010-09-21 | Smp Logic Systems Llc | Manufacturing execution system for validation, quality and risk assessment and monitoring of pharmaceutical manufacturing processes |
US7444197B2 (en) | 2004-05-06 | 2008-10-28 | Smp Logic Systems Llc | Methods, systems, and software program for validation and monitoring of pharmaceutical manufacturing processes |
EP1938504B1 (en) | 2005-10-21 | 2020-04-29 | Honeywell Limited | An authorisation system and a method of authorisation |
US7613753B2 (en) * | 2006-11-28 | 2009-11-03 | Alcatel Lucent | Platform and method for functional programming (FP) processing |
JP2008191901A (ja) * | 2007-02-05 | 2008-08-21 | Kyocera Mita Corp | 電子機器、制御プログラム及び電子機器の制御方法。 |
EP1975792A1 (en) * | 2007-03-29 | 2008-10-01 | Siemens Aktiengesellschaft | System and method for handling a data refresh procedure in a production execution system |
US8351350B2 (en) * | 2007-05-28 | 2013-01-08 | Honeywell International Inc. | Systems and methods for configuring access control devices |
US8598982B2 (en) * | 2007-05-28 | 2013-12-03 | Honeywell International Inc. | Systems and methods for commissioning access control devices |
US7940673B2 (en) * | 2007-06-06 | 2011-05-10 | Veedims, Llc | System for integrating a plurality of modules using a power/data backbone network |
US8303337B2 (en) | 2007-06-06 | 2012-11-06 | Veedims, Llc | Hybrid cable for conveying data and power |
US8271836B2 (en) * | 2007-09-27 | 2012-09-18 | Microsoft Corporation | Capturing diagnostics in web browser applications |
US20100293360A1 (en) * | 2007-10-05 | 2010-11-18 | Schneider Electric Automation Gmbh | Automation device with control program and method for programming thereof |
US20110071929A1 (en) * | 2008-01-30 | 2011-03-24 | Honeywell International Inc. | Systems and methods for managing building services |
US7856158B2 (en) | 2008-03-07 | 2010-12-21 | Ballard Claudio R | Virtual electronic switch system |
US20090307233A1 (en) * | 2008-06-02 | 2009-12-10 | Guorui Zhang | Efficient Handling of PMU Data for Wide Area Power System Monitoring and Visualization |
US9141105B2 (en) * | 2008-07-23 | 2015-09-22 | Hurco Companies, Inc. | Method and apparatus for monitoring or controlling a machine tool system |
US8234502B2 (en) * | 2008-08-29 | 2012-07-31 | International Business Machines Corporation | Automated password authentication |
EP2332386A4 (en) | 2008-09-30 | 2014-07-23 | Honeywell Int Inc | SYSTEMS AND METHOD FOR INTERACTION WITH ACCESS CONTROL DEVICES |
US8878931B2 (en) | 2009-03-04 | 2014-11-04 | Honeywell International Inc. | Systems and methods for managing video data |
EP2408984B1 (en) | 2009-03-19 | 2019-11-27 | Honeywell International Inc. | Systems and methods for managing access control devices |
US9494931B2 (en) | 2009-09-23 | 2016-11-15 | Fisher-Rosemount Systems, Inc. | Dynamic hyperlinks for process control systems |
US9280365B2 (en) * | 2009-12-17 | 2016-03-08 | Honeywell International Inc. | Systems and methods for managing configuration data at disconnected remote devices |
US8707414B2 (en) * | 2010-01-07 | 2014-04-22 | Honeywell International Inc. | Systems and methods for location aware access control management |
USD662869S1 (en) | 2010-06-01 | 2012-07-03 | Ballard Claudio R | Automotive wheel center nut |
US8787725B2 (en) | 2010-11-11 | 2014-07-22 | Honeywell International Inc. | Systems and methods for managing video data |
US8671299B2 (en) * | 2011-05-26 | 2014-03-11 | Google Inc. | Delaying the initiation of transitioning to a lower power mode by placing a computer system into an intermediate power mode between a normal power mode and the lower power mode |
WO2012174603A1 (en) | 2011-06-24 | 2012-12-27 | Honeywell International Inc. | Systems and methods for presenting dvm system information |
CN104137154B (zh) | 2011-08-05 | 2019-02-01 | 霍尼韦尔国际公司 | 用于管理视频数据的系统和方法 |
US9344684B2 (en) | 2011-08-05 | 2016-05-17 | Honeywell International Inc. | Systems and methods configured to enable content sharing between client terminals of a digital video management system |
US10362273B2 (en) | 2011-08-05 | 2019-07-23 | Honeywell International Inc. | Systems and methods for managing video data |
US8976541B2 (en) | 2011-08-31 | 2015-03-10 | Potens Ip Holdings Llc | Electrical power and data distribution apparatus |
US9400867B2 (en) | 2011-09-10 | 2016-07-26 | Cbm Enterprise Solutions, Llc | Method and system for monitoring and reporting equipment operating conditions and diagnostic information |
US9485236B2 (en) | 2012-11-14 | 2016-11-01 | Verifyme, Inc. | System and method for verified social network profile |
US9250660B2 (en) | 2012-11-14 | 2016-02-02 | Laserlock Technologies, Inc. | “HOME” button with integrated user biometric sensing and verification system for mobile device |
US10523903B2 (en) | 2013-10-30 | 2019-12-31 | Honeywell International Inc. | Computer implemented systems frameworks and methods configured for enabling review of incident data |
US10777027B2 (en) | 2016-07-15 | 2020-09-15 | Komatsu Ltd. | Working vehicle, remote diagnosis system, and remote diagnosis method |
EP3715966A1 (de) * | 2019-03-29 | 2020-09-30 | Siemens Aktiengesellschaft | Verfahren und system zur einbettung einer einzubettenden web-anwendung in eine umgebende web-anwendung |
JP7418188B2 (ja) * | 2019-11-19 | 2024-01-19 | 株式会社キーエンス | 安全コントローラおよび履歴表示装置 |
US20220405104A1 (en) * | 2021-06-22 | 2022-12-22 | Vmware, Inc. | Cross platform and platform agnostic accelerator remoting service |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5805442A (en) * | 1996-05-30 | 1998-09-08 | Control Technology Corporation | Distributed interface architecture for programmable industrial control systems |
US6282454B1 (en) * | 1997-09-10 | 2001-08-28 | Schneider Automation Inc. | Web interface to a programmable controller |
US6788980B1 (en) * | 1999-06-11 | 2004-09-07 | Invensys Systems, Inc. | Methods and apparatus for control using control devices that provide a virtual machine environment and that communicate via an IP network |
US6640140B1 (en) * | 2000-10-10 | 2003-10-28 | Schneider Automation Inc. | PLC executive with integrated web server |
US7392293B2 (en) * | 2003-03-18 | 2008-06-24 | Leonik Thomas E | Method and apparatus for dynamically displaying real world data in a browser setting |
US20060036967A1 (en) * | 2004-04-26 | 2006-02-16 | Crichlow Henry B | Remote meter reading using transmitted visual graphics. |
-
2005
- 2005-07-06 US US11/175,834 patent/US7216007B2/en not_active Expired - Fee Related
-
2006
- 2006-07-05 EP EP06774563A patent/EP1899869A2/en not_active Ceased
- 2006-07-05 WO PCT/US2006/026497 patent/WO2007006045A2/en active Application Filing
- 2006-07-05 JP JP2008520409A patent/JP2009501968A/ja not_active Withdrawn
- 2006-07-05 CN CN2006800326620A patent/CN101258495B/zh active Active
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102096595A (zh) * | 2009-08-23 | 2011-06-15 | 美国银行公司 | 动态配置系统 |
US9032368B2 (en) | 2009-08-23 | 2015-05-12 | Bank Of America Corporation | Dynamic configuration system |
US9201665B2 (en) | 2009-08-23 | 2015-12-01 | Bank Of America Corporation | Outputting presentation code updated for a particular user in response to receiving a page identifier |
CN106559239A (zh) * | 2015-09-29 | 2017-04-05 | 镇江雅迅软件有限责任公司 | 一种云平台部署办法 |
CN107015520A (zh) * | 2016-01-28 | 2017-08-04 | 西门子公司 | 用于借助网络协议访问数据或函数的方法和设备 |
CN107015520B (zh) * | 2016-01-28 | 2019-09-06 | 西门子公司 | 用于借助网络协议访问数据或函数的方法和设备 |
US11005974B2 (en) | 2016-01-28 | 2021-05-11 | Siemens Aktiengesellschaft | Method and apparatus for accessing data or functions of a programmable controller via a network protocol |
Also Published As
Publication number | Publication date |
---|---|
WO2007006045A3 (en) | 2007-03-08 |
JP2009501968A (ja) | 2009-01-22 |
US7216007B2 (en) | 2007-05-08 |
US20070011227A1 (en) | 2007-01-11 |
EP1899869A2 (en) | 2008-03-19 |
WO2007006045A2 (en) | 2007-01-11 |
CN101258495B (zh) | 2013-03-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101258495B (zh) | 用于提供对过程控制环境中的控制器的直接web访问的系统和方法 | |
US11704224B2 (en) | Long running workflows for robotic process automation | |
US8880591B2 (en) | Workflow management in distributed systems | |
US6065009A (en) | Events as activities in process models of workflow management systems | |
CN101208649B (zh) | 用于处理制造环境所引起的生产事件的系统和方法 | |
US7689989B2 (en) | Thread monitoring using shared memory | |
RU2433463C2 (ru) | Динамическое перепозиционирование потока работ конечными пользователями | |
US8306996B2 (en) | Processing model-based commands for distributed applications | |
US7835933B2 (en) | Method and system for event management in business processes | |
US20210165639A1 (en) | Intelligent workflow design for robotic process automation | |
Casati et al. | Modeling exceptional behaviors in commercial workflow management systems | |
CN103632219A (zh) | 用于重新分配用于检查数据质量的作业的方法和系统 | |
US20080109436A1 (en) | Finalize sequencing for objects | |
EP1969540A1 (en) | Handling exceptional situations in a warehouse management | |
US8819695B2 (en) | Controlling application landscapes | |
Fu et al. | Stateful requirements monitoring for self-repairing socio-technical systems | |
US20130167051A1 (en) | Method and system for customizing a graphic user interface of a manfuacturing execution system screen | |
CN101449221B (zh) | 允许过程控制系统中的非确定性执行的系统和方法 | |
US20070113051A1 (en) | Apparatus and method for live loading of control applications in a process control environment | |
EP2988469B1 (en) | A method and apparatus for updating a user interface of one program unit in response to an interaction with a user interface of another program unit | |
US20090228783A1 (en) | Method and System for Notifying a Client on Server Disconnection in a Manufacturing Execution System | |
Dayal et al. | Issues in operation flow management for long-running acivities | |
CN102089774A (zh) | 改进的预约调度方法和用户接口 | |
EP3343475A1 (en) | Long-running condition recovery method | |
Madaan et al. | Frws: Towards failure resilient workflow system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |