CN102413121B - 用于与过程控制系统中的设备通信的面向服务的框架 - Google Patents
用于与过程控制系统中的设备通信的面向服务的框架 Download PDFInfo
- Publication number
- CN102413121B CN102413121B CN201110290543.8A CN201110290543A CN102413121B CN 102413121 B CN102413121 B CN 102413121B CN 201110290543 A CN201110290543 A CN 201110290543A CN 102413121 B CN102413121 B CN 102413121B
- Authority
- CN
- China
- Prior art keywords
- service
- process control
- network
- equipment
- control system
- 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.)
- Active
Links
- 238000004891 communication Methods 0.000 title claims abstract description 62
- 238000012369 In process control Methods 0.000 title claims abstract description 28
- 238000010965 in-process control Methods 0.000 title claims abstract description 28
- 238000004886 process control Methods 0.000 claims abstract description 158
- 238000000034 method Methods 0.000 claims abstract description 120
- 230000004044 response Effects 0.000 claims description 22
- 102100021399 Bargin Human genes 0.000 claims description 7
- 101710050909 Bargin Proteins 0.000 claims description 7
- 230000005540 biological transmission Effects 0.000 claims description 5
- 238000006243 chemical reaction Methods 0.000 claims description 4
- 230000001360 synchronised effect Effects 0.000 claims description 2
- 230000008569 process Effects 0.000 description 74
- 238000012545 processing Methods 0.000 description 23
- 230000006870 function Effects 0.000 description 13
- 238000010586 diagram Methods 0.000 description 12
- 230000008859 change Effects 0.000 description 9
- 238000005259 measurement Methods 0.000 description 9
- 230000003993 interaction Effects 0.000 description 6
- 230000008901 benefit Effects 0.000 description 5
- 230000010354 integration Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 3
- 238000009432 framing Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 3
- 241000208340 Araliaceae Species 0.000 description 2
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 2
- 235000003140 Panax quinquefolius Nutrition 0.000 description 2
- 230000010267 cellular communication Effects 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000003745 diagnosis Methods 0.000 description 2
- 239000012530 fluid Substances 0.000 description 2
- 235000008434 ginseng Nutrition 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 238000000844 transformation Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 238000011217 control strategy Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000013079 data visualisation Methods 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 238000009472 formulation Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000005086 pumping Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000010561 standard procedure Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
- G05B19/4185—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the network communication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L41/5041—Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Manufacturing & Machinery (AREA)
- General Engineering & Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Computer And Data Communications (AREA)
- Testing And Monitoring For Control Systems (AREA)
- Communication Control (AREA)
Abstract
公开了一种用于与过程控制系统中的设备通信的面向服务的框架。公开的用于与过程控制系统中的设备通信的示例性方法包括:调用用于与所述过程控制系统中的设备通信的服务,所述服务具有独立于用于实现所述过程控制系统的过程控制网络协议的通用接口;将所述服务变换为用于实现所述服务的一个或多个网络操作,所述网络操作对于用于实现所述过程控制系统的所述过程控制网络协议是特定的;以及根据所述一个或多个网络操作,使用对于用于实现所述过程控制系统的所述过程控制网络协议特定的网络接口以与所述设备通信。
Description
技术领域
本发明通常涉及过程控制系统,更具体地说,涉及一种用于与过程控制系统中的设备通信的面向服务的框架。
背景技术
比如化学、石油或其它工艺中所使用的过程控制系统典型地包括一个或多个过程控制器,其经由模拟、数字或组合模拟/数字总线通信地耦接到至少一个客户端或操作者工作站以及耦接到一个或多个现场设备。可以是例如阀、阀定位器、开关和发射机(例如温度、压力和流速率传感器)的现场设备在例如打开或关闭阀以及测量过程控制参数的过程内执行过程控制功能。控制器接收指示由现场设备所进行的过程测量的信号,处理该信息以实现控制例程,并且生成通过总线或其它通信线路发送到现场设备以控制过程的操作的控制信号。以此方式,控制器经由通信地耦接现场设备的总线和/或其它通信链路来使用现场设备执行并且协调控制策略或例程。
可以使得来自现场设备和控制器的信息作为客户端/操作者工作站(例如基于处理器的系统)执行的运行时间数据对于一个或多个应用可用,以使得操作者能够关于过程执行期望的功能。这些功能中的一些可以包括:(例如,经由图形用户接口)浏览过程的当前状态,估计过程,(例如经由可视对象图)修改过程的操作等。很多过程控制系统还包括一个或多个其它客户端工作站,也称为应用站。典型地,使用经由局域网(LAN)通信地耦接到过程控制系统内的控制器、操作者工作站以及其它系统的个人计算机、工作站等实现应用站。每一应用站可以在过程控制系统内执行运行活动管理功能、维护管理功能、虚拟控制功能、诊断功能、实时监控功能、与安全有关的功能、配置功能等的一个或多个策略、例程或应用。
发明内容
在此描述的示例性方法、装置和产品物通常涉及过程控制系统,更具体地说,涉及一种用于与过程控制系统中的设备通信的面向服务的框架。在此公开的示例中,用于与过程控制系统中的设备通信的方法包括:调用用于与所述过程控制系统中的设备通信的服务,所述服务提供独立于用于实现所述过程控制系统的过程控制网络协议的通用接口。所述示例性方法还包括:将所述服务变换为用于实现所述服务的一个或多个网络操作,所述网络操作对于用于实现所述过程控制系统的过程控制网络协议是特定的。此外,所述示例性方法包括:根据所述一个或多个网络操作使用对于用于实现用于所述设备通信的过程控制系统的所述过程控制网络协议特定的网络接口。
在此公开的另一示例中,产品的有形物存储机器可读指令,其当执行时使得机器至少调用用于与过程控制系统中的设备通信的服务,所述服务提供独立于用于实现所述过程控制系统的过程控制网络协议的通用接口。所述机器可读指令当执行时还使得所述机器至少将所述服务变换为用于实现所述服务的一个或多个网络操作,所述网络操作对于用于实现所述过程控制系统的所述过程控制网络协议是特定的。所述机器可读指令当执行时还使得机器至少根据所述一个或多个网络操作使用对于用于实现所述过程控制系统的所述过程控制网络协议特定的网络接口以与所述设备通信。
在此公开的又一示例中,一种用于与过程控制系统中的现场设备通信的装置包括:处理器,用于实现用于与使用多个不同过程控制网络协议实现的多个过程控制系统中的多个现场设备通信的面向服务的框架。在一些示例中,所述面向服务的框架包括:服务层,实现用于与所述多个现场设备通信的多个服务,每一服务提供独立于用于实现所述多个过程控制系统的任何所述多个过程控制网络协议的各个通用接口。在一些示例中,所述面向服务的框架还包括:多个变换层,每一各个变换层用于将所述多个服务中的每一服务变换为用于实现所述各个服务的网络操作的各个序列,所述网络操作的各个序列对于与所述各个变换层关联的特别的过程控制网络协议是特定的。在一些示例中,所述面向服务的框架还包括:多个网络层,分别与所述多个变换层关联,用于提供对于用于实现所述多个过程控制系统的所述多个过程控制网络协议中的每一个特定的多个网络接口。所述示例性装置还包括:用于通信地耦接客户端设备所实现的应用与所述处理器所实现的所述服务层的接口。
附图说明
图1是示出包括用于实现用于与过程控制系统中的设备通信的面向服务的框架的现场设备集成服务器的示例性过程控制环境的框图。
图2是可由图1的现场设备集成服务器实现的示例性面向服务的框架的框图。
图3示出可由图2的面向服务的框架提供的示例性服务。
图4是可以用于实现图1的过程控制环境的示例性现场设备集成服务器的框图。
图5是可以用于实现图1的过程控制环境的示例性客户端设备的框图。
图6是表示用于实现图1的过程控制环境中的示例性面向服务的框架的示例性过程的流程图。
图7是表示用于实现图6的面向服务的框架过程中的服务层处理的示例性过程的流程图。
图8是表示用于实现图6的面向服务的框架过程中的变换层处理的示例性过程的流程图。
图9是表示用于实现图6的面向服务的框架过程中的网络层处理的示例性过程的流程图。
图10是表示图2的面向服务的框架的示例性操作的流程图。
图11是可以执行用于实现图6-图10的过程中的一些或所有以在图1的过程控制环境中实现图2的面向服务的框架的示例性机器可读指令的示例性处理系统的框图。
具体实施方式
虽然以下描述示例性方法、装置和在其它组件当中包括硬件上执行的软件和/或固件的产品物,但应注意,这些示例仅仅是说明性的,不应看做限制。例如,预期在硬件中独占地、在软件中独占地、或在硬件和软件的任何组合中可以实施任何或所有硬件、软件和固件组件。因此,虽然以下描述示例性方法、装置和产品物,但本领域技术人员应容易理解,提供的示例不仅仅是用于实现这些方法、装置和产品物的方式。例如,虽然结合实现用于与过程控制系统中的设备通信的面向服务的框架描述示例性方法、装置和产品物,但示例性方法、装置和产品物更普通地可应用,并且可以被实现以用于任何自动化系统、批处理系统、制造系统、工业控制系统、安全仪表系统等。
很多不同类型的过程控制网络协议可以用于实现过程控制系统。这些过程控制网络协议的示例包括,但不限于,Foundation Fieldbus协议、Profibus协议、HART协议等。如上所述,过程控制系统可以采用在一个或多个客户端工作站上执行的一个或多个客户端应用,以处理信息并且与过程控制系统中的现场设备交互。然而,在先前的过程控制系统中,这些客户端应用典型地针对用于实现特定过程控制系统的特定过程控制网络协议。因此,当在过程控制系统中采用不同(例如新的)过程控制网络协议时,可能需要修改并且甚至重写先前过程控制系统中所使用的客户端应用,并且这些现有客户端应用可能不能移植到采用不同过程控制网络协议的不同过程控制系统上。
反之,在此描述的示例性方法、装置和产品物实现用于与过程控制系统中的设备通信的面向服务的框架,其使得客户端应用(例如过程控制应用)能够独立于用于实现其中采用客户端应用的一个或多个过程控制系统的任何特定的一个或多个过程控制网络协议。在一些示例中,在现场设备集成(field device integration,FDI)标准的情况下实现面向服务的框架。在此描述的示例性面向服务的框架包括与服务层、一个或多个变换层、以及分别与所述一个或多个变换层关联的一个或多个网络层。在该示例中,服务层实现用于与一个或多个过程控制系统中的一个或多个现场设备通信的一个或多个过程控制服务。每一服务提供独立于用于实现一个或多个现场设备可驻留在其中的任何过程控制系统的任何过程控制网络协议。换句话说,服务层实现的服务是网络协议不可知论(network protocolagnostic)的。面向服务的框架实现的过程控制服务的示例包括,但不限于:(1)用于将消息发送到现场设备并且从所述设备接收对应的响应的服务;(2)用于订购现场设备所返回的公开的数据的服务;(3)用于接收现场设备所返回的事件的服务;(4)用于获得描述过程控制系统和实现所述过程控制系统的现场设备组的信息的服务;(5)用于将控制参数值写入现场设备的服务,等。
示例性面向服务的框架中包括的一个或多个变换层均针对各个过程控制网络协议。因此,特定的变换层将服务层提供的每一服务变换为用于实现所述各个服务的网络操作的各个序列,其中,网络操作的各个序列对于与所述特定变换层关联的特定过程控制网络协议是特定的。在一些示例中,变换层读取用于实现与其通信以准备用于实现服务的网络操作的特定序列的现场设备的设备描述。在一些示例中,变换层附加地或替代地保持用于实现特定服务的网络操作的特定序列,以随着它们被执行而实现用于跟踪网络操作的序列。
示例性面向服务的框架中包括的一个或多个网络层也均针对各个过程控制网络协议。例如,特定的网络层提供用于对于变换层支持的特定的过程控制网络协议特定的关联的变换层的网络接口。网络接口使得能够根据(例如,执行,实现,等)用于实现特定设备的变换层所确定的网络操作的特定序列与支持特定过程控制网络协议的一个或多个现场设备交换通信交易(例如命令、响应等)。
参照附图,图1是示出包括用于实现用于与示例性过程控制系统102中的现场设备通信的面向服务的框架的FDI服务器106的示例性过程控制环境100的框图。示例性控制环境100可以包括可以通信地耦接到过程控制系统102和/或其它控制系统(未示出)的附加的客户端(未示出)。
客户端104(例如终端、工作站、个人计算机等)、示例性控制系统102和/或现场设备集成(FDI)服务器106使用FDI标准进行通信。FDI服务器106在使用包括HART、FoundationFieldbus和/或Profibus的不同标准来操作的不同网络上与设备交互。通常,无论设备初始地期望和/或构建的标准如何,FDI提供用于允许设备制造商和/或供应商构建能够由消费者用于统一地管理设备的工具集。FDI包括允许通过标准电子设备描述语言(ElectronicDevice DescriptionLanguage,EDDL)中的基于文本的文件(例如XML文件)来描述设备、设备提供的方法、设备支持的测量和设备参数、用于设备的配置信息、和/或用户能够具有的与设备的交互的文本设备描述方法。
如以下更详细描述的那样,FDI服务器106基于消息总线架构和面向服务的架构实现面向服务的框架。消息总线架构提供用于与面向服务的框架通信的应用(例如以下更详细描述的客户端104上执行的应用120)的标准方法。消息总线架构类似经由通信信道发送和接收消息的消息总线。消息总线架构允许应用与过程控制控制器、服务器、设备和/或其它应用通信,而不必知道关于控制器、服务器、设备和/或应用的内部操作的所有具体细节。
除了消息总线架构之外,面向服务的架构还提供过程控制功能作为服务的集合。在这种面向服务的架构下,在与设备关联的设备描述中概述了特定设备所支持的网络服务。通过由被定义为FDI标准的部分的基于消息的交互所实现的接口来调用服务。因为通过基于消息的交互来调用服务,所以服务请求者和服务提供者的位置能够分离,并且因此分布在过程控制环境100内。
在至少一些情况下,将消息总线架构和面向服务的架构组合为面向服务的框架能够提供若干优点。例如,能够在不同环境下运行应用(例如,在Microsoft WindowsTM主机上执行的应用可以使用若干过程控制网络协议中的一个与过程控制嵌入式设备进行交互)。作为另一可能的优点,并非所有设备需要支持所有服务。又一可能的优点,服务允许独立于实际过程控制网络(例如总线)协议实现的较高级别的应用。
示例性客户端104和示例性FDI服务器106经由第一通信总线108通信。FDI服务器106将通信总线108连接到其它通信总线110、112,其可以是与通信总线108相同类型或不同类型。FDI服务器106还经由通信总线112与控制系统102通信。因此,客户端104可以经由FDI服务器106和适当的通信总线108和112与控制系统102中的任何设备通信。
在一些示例中,可以使用局域网(local area network,LAN)协议(例如以太网)、(例如,基于电气电子工程师协会(Institute ofElectrical and ElectronicsEngineers,IEEE)802.11标准族的)无线保真(wireless fidelity,Wi-Fi)协议、蜂窝通信网络、因特网等实现通信总线108-110,并且通信总线112可以实现为符合FoundationFieldbus协议、Profibus协议和/或HART协议。附加地或者替代地,通信总线108-110中的一个或多个可以实现为符合FoundationFieldbus协议、Profibus协议和/或HART协议。附加地或替代地,通信总线112可以实现为符合LAN协议(例如以太网)、(例如基于IEEE 802.11标准族的)Wi-Fi协议、蜂窝通信网络、因特网等。
示例性控制系统102可以包括任何类型的制造设施、处理设施、自动化设施、和/或任何另外类型的过程控制结构或系统。在一些示例中,控制系统102可以包括位于不同位置的多个设施。此外,虽然示例性控制系统102与过程控制子系统114关联,但控制系统102可以包括附加的过程控制子系统。
示例性过程控制子系统114经由数据总线118通信地耦接到控制器116。过程控制子系统114可以包括所示的任何数量的现场设备119(例如输入和/或输出设备)。现场设备119可以包括能够接收输入、生成输出和/或控制过程的任何类型的过程控制组件。例如,现场设备119可以包括输入设备,例如,比如用于控制过程的阀、泵浦、风扇、加热器、冷却器、和/或混合器。此外,现场设备119可以包括输出设备,例如,比如用于测量过程的部分的温度计、压力计、浓度计、流体级别计、流体表、和/或蒸汽传感器。输入设备可以从控制器116接收指令,以执行制定的命令并且对过程产生改变。此外,输出设备可以测量过程数据、环境数据、和/或输入设备数据,并且将测量的数据发送到控制器116作为过程控制信息(例如过程数据)。该过程数据可以包括与来自每一现场设备119的测量的输出对应的变量(例如,测量的过程变量和/或测量的质量变量)的值。
在图1的所示示例中,示例性控制器116可以经由数据总线118与过程控制子系统114内的现场设备119通信。数据总线118可以耦接到过程控制子系统114内的通信组件。通信组件可以包括I/O卡,用于从现场设备119接收数据并且将数据转换为示例性控制器116能够接收的通信介质。此外,这些I/O卡可以将来自控制器116的数据转换为对应现场设备119能够处理的数据格式。在示例中,使用Fieldbus协议或其它类型的有线和/或无线通信协议(例如Profibus协议、HART协议等)可以实现数据总线118。
控制器116经由有线和/或无线连接通信地耦接到FDI服务器106。在一些示例中,连接可以包括防火墙和/或用于限制对控制器116的访问的其它安全机制。在控制器116从过程控制子系统114接收过程数据时,控制器116可以将过程数据发送到FDI服务器106。在其它示例中,控制器116可以按周期时间间隔(例如每分钟、小时、天等)将过程数据发送到FDI服务器106。替代地,FDI服务器106可以从控制器116请求过程数据。
一旦接收到过程数据,图1的示例性FDI服务器106便将该过程数据存储在文件系统(未示出)内。文件系统可以通过分级的方式基于过程控制子系统114内的设备119和/或基于在管理过程控制子系统114的控制器116内操作的例程(例如应用和/或算法)被安排有目录和/或子目录。在其它示例中,可以由控制系统102的操作者来安排文件系统。过程数据可以存储至关联目录和/或子目录内的参数。在一些示例中,参数可以是与在控制器116上操作的例程关联或与过程控制环境100内的现场设备输出关联的变量。参数可以包括描述与该参数关联的过程数据的类型的元数据。
示例性客户端104可以与可以被授权读取、写入和/或订购与过程控制环境100关联的过程数据的个体关联。客户端104也可以与和可以从远程位置访问过程控制环境100的控制系统102关联的人员关联。客户端104可以使用任何有线和/或无线通信介质(例如因特网)经由FDI服务器106访问过程控制环境100。
示例性FDI服务器106能够格式化过程数据,从而在客户端104上操作的客户端应用120的用户可浏览过程数据。图1的示例示出在接口122中显示过程数据的客户端应用120。例如,客户端应用120可以包括web客户端显示应用。FDI服务器106可以通过创建网页和/或访问模板网页并且在网页内放置或嵌入数据字段来格式化用于web服务器应用的过程数据。接口122经由web浏览器然后可以通过使用超文本标记语言(HTML)请求和响应而访问FDI服务器106中掌管的网页来显示过程数据。替代地,FDI服务器106可以通过初始化客户端应用120处的、在web浏览器(例如接口122)内可以是可执行的或可以是对于客户端104而言原有的(例如操作系统应用、应用插件)web应用(例如ActiveX、AdobeFlashTM和/或SilverlightTM)来格式化用于客户端显示应用的过程数据。在一些示例中,在将过程数据发送到客户端应用120之前,FDI服务器106关联过程数据与对应的数据字段。一旦接收到过程数据,客户端应用120便创建(例如呈现)web浏览器(例如接口122)内的显示,以查看对应数据字段内的过程数据。
图2是可以由图1的示例性FDI服务器106至少部分地实现的示例性面向服务的框架200的框图。如图2所示,面向服务的框架200与客户端应用202、设备描述208以及一个或多个设备网络210通信。面向服务的框架200包括服务层212、变换层214、网络层216以及安全层218。
图2的示例性客户端应用202是用于配置设备的应用、用于执行设备校准和诊断的应用、和/或用于从位于一个或多个设备网络中的设备读取测量值和事件的应用。客户端应用202能够包括根据富客户端模型或富因特网模型实现的用户接口(user interface,UI)。例如,在富客户端模型中,UI采用Microsoft WindowsTM或相似的应用风格。在富因特网模型中,UI采用web风格客户端,例如web浏览器接口或web浏览器插件接口。如图2所示,客户端应用202包括服务消费者206,其可以从服务层212请求并且消费服务。例如,使用图1的示例性客户端104和/或图11的示例性处理系统1100上执行的计算机可读指令可以实现可以与图1的应用120对应的客户端应用202。客户端应用202经由面向服务的框架200与可以与过程控制子系统114对应的设备网络210通信。虽然面向服务的框架200被描述为通过FDI服务器106实现,但示例性面向服务的框架200和/或框架200的选择的部分可以替代地实现在客户端104、服务器106、控制器116和/或网络108、110和112上的设备128-136中的一个或多个或任何组合上。
服务层212包括服务接口220、服务消息类型222、服务数据类型224、适配器226以及服务228。服务层212提供的示例性服务228支持对设备描述208和一个或多个设备网络210的访问。服务228被暴露为服务订约,其允许应用和/或设备请求为执行期望的能力或功能所需的特定服务228。在一些示例中,用于包括服务所实现的新功能和/或包括新消息和数据类型的对服务订约的改变可能与现有服务订约不后向兼容。
在所示示例中,通过将基于消息的接口提供给服务228的服务接口220访问服务层212。服务层212管理来自应用和/或设备的服务请求,并且变换客户端应用202所使用的服务订约。当在服务与服务消费者之间传送消息时,一个或多个适配器226可以用于将消息转换为各个服务消费者能够理解的格式。
策略定义对服务层212的访问。策略提供用于服务消费者确定用于访问服务的任何连接和/或安全需求和/或与请求服务有关的任何其它细节的方式。
示例性变换层214变换服务层所提供的网络独立服务以支持用于实现包含期望与其通信的设备的设备网络210(或,更一般地,过程控制系统)的特定过程控制网络协议(例如HART、Fieldbus、Profibus,其在此也称为设备网络协议)。变换层214包括应用前端229,用于将服务层212提供的网络独立服务228变换为用于实现各个服务的网络操作230的各个序列。应用前端229为特定服务228确定的网络操作230的序列对于与变换层214关联的特定过程控制网络协议236以及还对于服务228与其通信的特定网络组件231(例如现场设备)是特定的。变换层214还保持用于实现特定服务以随着它们被执行以实现服务228跟踪网络操作230的序列的网络操作230的序列的执行的状态(例如顺序、时间等)。
变换层214从例如在开始时读取的设备描述文件208接收关于设备(例如网络组件231)的信息。设备描述文件208包括以电子设备描述语言(EDDL)232和/或普通文件格式234的关于设备的信息。例如,EDDL文件232表示由图1的过程控制系统102中包含的现场设备的各个制造商所生成的、定义设备行为的文本描述和逻辑。EDDL文件232能够类似图1的过程控制系统102上包含的设备的数字数据表单。与传统编程语言相比,EDDL元件的灵活性有限,并且对于设备描述是特定的。然而,EDD语言的简单性允许EDD设备描述的容易和高效的开发,提供对于硬件和操作系统平台的独立性,产生用于设备操作的统一哲学,并且通过解释产生高强健性。通常,EDDL技术用于具有低至平均复杂性的设备。
普通文件格式234存储关于设备和/或应用的信息,并且文件可以在系统、工具集、应用和/或其他设备之间交换。在一些示例中,普通文件格式234使用包括灵活并且允许使用标签的虚拟不受限的描述的可扩展标记语言(extensible markup language,XML)的图式。
网络层216包括用于与用于实现图1的过程控制系统102的设备网络中的一个或多个交互的数据访问功能。在所示示例中,网络层216包括网络应用编程接口(applicationprogramming interface,API)240,其支持各种网络消息类型242、网络数据类型244以及可能地,对于特定过程控制网络协议236特定的一个或多个对象字典246。示例性框架200可以包括多个网络层216和关联的变换层214,其中,每一变换层214和关联的网络层216对于实现特定设备网络210(或,更一般地,特定过程控制系统)的特定设备网络协议236(也称为过程控制系统协议,例如HART、Fieldbus和Profibus)是特定的。因此,示例性框架200和网络应用层216不需要对这些协议的任何改变。
设备网络210根据各个网络协议236和网络服务238与实现过程控制系统(例如图2的过程控制系统102)的现场设备进行交互,以向示例性框架200提供用于配置过程控制现场设备、访问设备诊断、传送测量值、传送告警和事件的能力和/或其它通信和控制能力。面向服务的框架200支持的一些示例性能力包括请求和/或响应,公开和/或订购、发送事件、维护应用和/或设备的目录,和/或将命令写入设备。面向服务的框架200经由服务层212向客户端应用202提供对这些能力的访问。例如,面向服务的框架200可以具有对于请求/响应、公开/订购、事件、目录和写入能力的服务。
在某个示例中,面向服务的框架200采用用于调用服务的异步呼叫模型。使用异步呼叫避免阻塞客户端过程。在一些示例中,用于执行背景操作的一个或多个分离的处理线程也用于对于来自现场设备的数据轮询。因此,通过背景线程和异步执行可以处理较长运行操作(例如从现场设备读取数据),以防止实现UI应用的处理线程被阻塞(例如,如可能与先前应用一起发生的)。在一些示例中,服务呼叫使用包括用于使得能够认证客户端-服务器连接的安全信息的绑定。为了保护敏感信息和通信信道,因特网协议安全性(InternetProtocol Security,IPSec)和安全套接层(Secure Sockets Layer,SSL)可以用于保障通信信道(例如客户端设备104与FDI服务器106之间的信道)。也可以采用用于保护数据的加密和用于检测数据篡改的数字签名,连同用于打开和关闭这些能力的选项。
在示例性操作中,客户端应用202使用FDI标准并且调用具有通用(例如,网络独立)接口220的服务228,以请求从设备(例如压力发射机)读取压力。在接收请求时,服务层212将请求传送到变换层214。变换层214生成对于压力发射机连接到的设备网络特定的命令,并且经由网络应用层216发送命令。例如,如果设备网络是HART网络,则客户端应用202将命令发送到压力发射机。反之,如果设备网络是Fieldbus网络,则客户端应用202读取或请求对象字典项。设备网络将请求传送到压力发射机,并且经由网络应用层216将响应从设备返回到变换层214。变换层214然后将响应转换为客户端应用202可理解的通用响应格式。在一些其它示例中,客户端应用202需要用于响应的特定格式。在这些情况下,当响应返回到客户端应用202时,客户端应用202可以请求调用特定适配器226。
在一些情况下,可能需要限制对设备网络的访问。为了支持这种需求,面向服务的框架200包括安全层218,用于提供一个或多个认证模块248和/或认证模块250。用于通过框架200认证应用202的认证模块248的实现可以依赖于正使用的服务主机的类型。因此,面向服务的框架200允许一个或多个安全层218合并到框架200。例如,如果在因特网信息服务(Internet Information Services,IIS)中掌控(host)面向服务的框架200,则可以使用IIS提供的认证支持。如果WindowsTM Service掌控服务,则可以使用基于消息或基于传送的认证。
在一些示例中,面向服务的框架200为用户访问提供认证。在这些情况下,认证模块250可以用于提供关于用于用户、组和角色的资源的访问许可。
在一些示例中,变换层214的实现分离到FDI服务器106和客户端设备104,以例如改进过程控制应用202的性能。在这些示例中,客户端设备104可以实现不包含敏感信息的交易层214的部分,而FDI服务器106可以实现确实包含敏感信息的交易层214的部分。
在一些示例中,FDI服务器106和/或客户端设备104采用缓存,以例如改进过程控制应用202的性能。例如,客户端设备104可以缓存从FDI服务器106获得的面向服务的框架200(例如,比如服务228)的组件。附加地或者替代地,例如,FDI服务器106可以在设备描述208从外部存储器、现场设备自身等被读取之后缓存它们。附加地或者替代地,适当地,FDI服务器106可以缓存从现场设备返回的数据和/或待写入现场设备的数据,直到该数据将要被返回到应用202或写入现场设备。
在一些示例中,在面向服务的框架200中采用程序编制(composition),以允许更容易地扩展应用,而无需整个应用的重新实现或重新部署。这可以通过从多个模块实现应用并且设计待松散地耦接的组件来实现。
在一些示例中,面向服务的框架200支持意外管理和日志记录。例如,例如验证消息的错误可以被日志记录在FDI服务器106上,以供操作员工和监控系统使用。意外管理也可以覆盖异步意外以及客户端和服务器代码之间的意外协调。关于日志记录,对客户端文件系统的访问在Silverlight应用中不可用,并且客户端和服务器的执行一般异步进行。因此,从客户端侧传送到服务器侧的日志文件中包括一些或所有以下信息:(1)与每一日志记录的项关联的用户;(2)与日志项关联的机器;(3)用于组合有关客户端和服务器日志文件的机制;(4)关键错误和意外等。
在一些示例中,实现过程控制应用202以利用例如客户端设备104的平台的内建媒体能力。例如,可以服从以下指南:(1)因为用于面向服务的框架200的接口独立于任何特定过程控制网络协议,所以过程控制应用202被设计为利用客户端设备104已经提供的图形能力。以及(2)利用本地图形和/或矢量图形,以例如改进应用性能。
在一些示例中,提供在客户端设备104上执行的应用202与在FDI服务器106上执行的面向服务的框架200之间的接口的服务接口220支持固定或移动的客户端设备104,例如富桌面、智能手机、欠能力手机等。因此,可以实现服务接口220以例如支持用于用作与富UI相似的移动接口的部分的启用导航的富和移动接口的UI描述。
在一些示例中,面向服务的框架200支持采用web风格接口的应用202。在这些示例中,数据绑定用于在例如列表和多行数据显现中显示数据。这可以减少实现设备日期的显现所需的代码,这样可以简化开发并且减少编码错误。数据绑定也启用不同视图或形式的自动同步。双向绑定的使用允许用户更新显现数据。此外,可以陷阱(trap)导航按钮事件,以避免远离应用或网页的不期望的导航。
如上所述,变换层214存储为实现客户端应用202所调用的特定服务228而确定的网络操作230的序列的状态。因为一个或多个应用202可以同时调用多个服务228,因此变换层214被配置为将用于同时执行的不同服务228的网络操作230的不同序列的状态信息存储在隔离的存储(未示出)中,从而另一序列不能破坏一个序列的状态。
如上所述,面向服务的框架200包括安全层218,用于提供一个或多个认证模块248和/或认证模块250。在一些示例中,认证模块248支持应用202、面向服务的框架200、设备描述文件208等的验证,以确保正确地协同操作这些组件。例如,应用202的客户端侧验证可以用于确保正确的UI被呈现给用户。服务器侧验证可以用于验证来自数据源的输入,例如应用202和/或现场设备提供的数据。例如,服务器侧验证机制可以用于约束、拒绝和/或清理数据,其中,关于长度、范围、格式等检查输入数据。在一些示例中,隔离存储(未示出)用于存储对于特定应用202和/或客户端设备104特定的验证规则。
图3是示出图2的示例面向服务的框架200可以提供的示例服务228的框图。图3的示例性服务228包括示例性请求-响应服务304,用于将消息发送到现场设备以及从设备接收对应响应的应用(例如客户端应用202)。图3的示例性服务228还包括示例性公开订购服务308,用于订购现场设备返回的公开的数据的应用(例如客户端应用202)。图3的示例性服务228还包括示例性事件服务312,用于接收现场设备返回的事件的应用(例如客户端应用202)。此外,图3的示例性服务228包括目录服务316,用于获得描述一个或多个设备网络210(例如,或,更一般地,一个或多个关联的过程控制系统102)和一个或多个设备网络210互连的(例如,并且,因此,实现一个或多个关联的过程控制系统102)的现场设备的组的信息的应用(例如客户端应用202)。图3的示例性服务228还包括示例性写入服务320,用于将控制参数值写入现场设备的应用(例如客户端应用202)。在一些示例中,写入服务320可以支持各种访问限制(例如,比如限制写入仅授权用户)。
图4是图1的FDI服务器106的示例性实现的框图。所示示例的FDI服务器106包括示例性应用接口404,用于与应用(例如图2的客户端应用202和/或图1的客户端应用120)进行交互。例如,应用接口404可以实现独立于任何过程控制网络协议的服务消息类型222和服务数据类型224定义的基于消息的服务接口220。此外,应用接口404可以实现为与在FDI服务器106自身上和/或在其它客户端设备(例如,比如图1的客户端104)上执行的应用通信地耦接。
图4的FDI服务器106还包括示例性处理器408,用于执行用于实现一些或所有图2的面向服务的框架200的机器可读指令。使用任何类型的一个或多个处理器(例如以下更详细描述的图11的处理系统1100中包括的处理器1102中的一个或多个)可以实现处理器408。
图4的FDI服务器106还包括示例性网络接口412,用于与实现一个或多个过程控制系统的一个或多个设备网络进行交互。因此,网络接口412可以支持上述过程控制网络协议236中的一个或多个。
图5是图1的客户端设备104的示例实现的框图。所示示例的客户端设备104包括示例性客户端接口504,用于与执行其它过程控制应用(例如,比如图2的其它客户端应用202和/或图1的其它客户端应用120)的其它客户端进行交互。例如,客户端接口404可以用于在相同或不同设备上执行的应用之间的通信的任何类型的通信协议和/或交互过程传信。
图5的客户端设备104还包括示例性处理器508,用于执行用于实现待与图2的面向服务的框架200交互的一个或多个应用202。使用任何类型的一个或多个处理器(例如以下更详细描述的图11的处理系统1100中包括的处理器1102中的一个或多个)可以实现处理器508。
图5的客户端设备104还包括示例性服务接口512,用于与正实现面向服务的框架200的图1和/或图4的FDI服务器106交互。因此,服务接口512是图4的应用接口404的对等物,并且可以实现独立于过程控制网络协议的面向服务的框架200的服务消息类型222和服务数据类型224定义的基于消息的服务接口220。
虽然图4-图5中已经分别示出实现图1的FDI服务器106和客户端设备104的示例性方式,但以任何另外方式可以组合、划分、重排、省略、消除和/或实现图4-图5所示的元件、过程和/或设备中的一个或多个。此外,通过硬件、软件、固件和/或硬件、软件和/或固件的任何组合可以实现示例性应用接口404、示例性处理器408、示例性网络接口412、示例性客户端接口504、示例性处理器508、示例性服务接口512和/或,更一般地,图4的示例性FDI服务器106和/或图5的示例性客户端设备。因此,例如一个或多个电路、可编程处理器、专用集成电路(ASIC)、可编程逻辑器件(PLD)和/或现场可编程逻辑器件(FPLD)等可以实现任何示例性应用接口404、示例性处理器408、示例性网络接口412、示例性客户端接口504、示例性处理器508、示例性服务接口512和/或,更一般地,示例性FDI服务器106和/或示例性客户端设备104。当阅读任何所附装置权利要求以仅覆盖软件和/或固件实现时,示例性FDI服务器106、示例性客户端设备104、示例性应用接口404、示例性处理器408、示例性网络接口412、示例性客户端接口504、示例性处理器508和/或示例性服务接口512中的至少一个由此明确地定义为包括存储这些软件和/或固件的有形计算机可读介质(例如存储器、数字多功能盘(DVD)、压缩盘(CD)等)。此外,图4的示例性FDI服务器106和/或图5的示例性客户端设备104可以包括除了图4-图5所示的之外或并非图4-图5所示的一个或多个元件、过程和/或设备,和/或可以包括多于一个的任何或所有所示元件、处理和设备。
图6-图10示出可以执行以实现示例性过程控制环境100、示例性FDI服务器106、示例性客户端设备104、示例性应用接口404、示例性处理器408、示例性网络接口412、示例性客户端接口504、示例性处理器508、示例性服务接口512和/或,更一般地,面向服务的框架200的示例性过程的流程图。在这些示例中,通过包括用于处理器(例如以下结合图11讨论的示例处理系统1100所示的处理器1102)执行的机器可读指令的一个或多个程序可以实现每一流程图表示的过程。替代地,除了处理器1102(例如,比如控制器和/或任何其它合适的设备)之外的和/或(例如ASIC、PLD、FPLD、离散逻辑等实现的)固件或专用硬件中嵌入的设备可以执行实现图6-图10的流程图表示的过程中的一个或多个的整个一个或多个程序和/或其部分。此外,可以手动地实现图6-图10的流程图表示的过程中的一个或多个、或其一个或多个部分。此外,虽然参照图6-图10所示的流程图描述示例性过程,但可以替换地使用用于实现在此描述的示例性方法和装置的很多其它技术。例如,参照图6-图10所示的流程图,块的执行的顺序可以改变,和/或描述的块中的一些可以改变、消除、组合和/或再分为多个块。
如上所述,使用有形计算机可读介质(例如硬盘驱动器、闪存储器、只读存储器(ROM)、CD、DVD、缓存、随机存取存储器(RAM))和/或其中存储信息达到任何持续时间(例如达到延伸的时间周期、永久地、简短时刻,用于临时缓冲、和/或用于信息的缓存)的任何其它存储介质上存储的编码的指令(例如计算机可读指令)可以实现图6-图10的示例性过程。如在此描述的那样,有形计算机可读介质明确地定义为包括任何类型的计算机可读存储,并且排除传输信号。附加地或者替代地,使用非瞬时计算机可读介质(例如闪存储器、ROM、CD、DVD、缓存、随机存取存储器(RAM))和/或其中存储信息达到任何持续时间(例如,达到延伸的时间周期、永久地、简短时刻,用于临时缓冲、和/或用于信息的缓存)的任何其它存储介质可以实现图6-图10的示例性过程。如在此描述的那样,术语非瞬时计算机可读介质明确地定义为包括任何类型的计算机可读介质,并且排除传输信号。此外,如在此使用的那样,术语“计算机可读”和“机器可读”被认为是等同的,除非另外指示。
图6示出可以被执行以实现图2的示例性面向服务的框架200的示例性过程600。基于预定事件的产生等、或其任何组合,以预定间隔可以执行示例性过程600。从用于支持图1和/或图5的客户端设备104执行的过程控制应用202的图1和/或图4的FDI服务器106执行的角度描述图6的过程600。因此,参照前面的图,图6的过程600在块605开始执行,在块605,客户端设备104执行待使用面向服务的框架200提供的一个或多个网络独立服务228(也称为网络不可知论服务、设备独立服务、设备不可知论服务等)与一个或多个过程控制系统中的一个或多个现场设备通信的过程控制应用202。例如,在块605,过程控制应用可以使用图3的所有的请求-响应服务304、公开-订购服务308、事件服务312、目录服务316和/或写入服务320与一个或多个现场设备通信。
在块610,在FDI服务器106上执行的面向服务的框架200确定是否采用访问策略。如果采用访问策略(块610),则在块615,面向服务的框架200的认证模块248认证用于面向服务的框架200的过程控制应用202。此外,在块620,面向服务的框架200的认证模块250认证过程控制应用202的用户,以将用户特定访问级别(例如,只读、读写、不访问、管理访问等)提供给面向服务的框架200提供的服务228。
在块625,过程控制应用202与面向服务的框架200的网络独立服务层212交互。服务层212被称为网络独立的,因为其提供用于与过程控制系统中的现场设备通信的服务228,其中,服务不依赖于任何特定过程控制网络协议。以下更详细描述的图7示出可以用于在块625实现处理的示例性过程。
在块630,面向服务的框架200的网络独立服务层212与面向服务的框架200的网络依赖变换层214进行交互。变换层214被称为网络依赖的,因为面向服务的框架200中包括的每一变换层214将服务层212提供的网络独立服务228变换为特定于(例如依赖于)网络操作的各个序列。以下更详细描述的图8示出可以用于实现决630的处理的示例性过程。
在块635,面向服务的框架200的网络依赖变换层214与面向服务的框架200的对应网络依赖网络层216进行交互。网络层216被称为网络依赖的,因为面向服务的框架200中包括的网络层216向其各个变换层214确定的网络操作的序列提供针对变换层214支持的特定过程控制网络协议的网络接口。以下更详细描述的图9示出可以用于实现块635处的处理的的示例性过程。
在块640,面向服务的框架200的一个或多个网络层216用于与实现包含过程控制应用202将要与其通信的一个或多个现场设备的一个或多个过程控制系统的一个或多个特定设备网络210进行交互。示例性过程600的执行然后结束。
图7示出可以被执行为实现图6的块625的示例性服务层处理的示例性过程625。参照前面的图,图7的过程625在块705开始执行,在块705,面向服务的框架200的服务层212暴露过程控制应用202可访问的服务订约形式的可用网络独立服务228。在块710,过程控制应用202使用服务接口220中的一个或多个调用服务228中的一个或多个,每一服务接口220与各个服务228关联。例如,每一服务接口220是采用使用面向服务的框架200指定的服务消息类型222和服务数据类型224定义的网络独立消息的基于消息的服务接口。
在块715,服务层212确定响应于在块710调用特定服务228的过程控制应用202通过现场设备返回到过程控制应用202的响应(例如设备数据、事件等)是否需要适配于应用特定格式。如果需要应用特定响应适配(块715),则服务层212调用选择的适配器226将响应数据适配于对于过程控制应用202特定的格式。示例性过程625的执行然后结束。
图8示出可以被执行为实现在图6的块630的示例性变换层处理的示例性过程630。参照前面的图,图8的过程630在块805开始执行,在块805,面向服务的框架200的服务层212调用支持用于与特定现场设备通信的过程控制网络协议的面向服务的框架200的特定变换层214。此外,在块805,特定变换层214中包括的应用前端229用于将实现服务层212提供的特定服务228的服务操作变换为用于实现服务228的一个或多个网络操作230的各个序列。如上所述,实现特定服务228的服务操作独立于任何过程控制网络协议,而网络操作230的序列对于用于实现包含服务228将要与其通信的特定现场设备的设备网络210(例如,并且,更一般地,过程控制系统)的特定过程控制网络协议是特定的。
在块810,变换层214使用设备描述文件208(例如,以EDDL格式232和/或普通文件格式234)准备用于与服务228将要与其通信的一个或多个特定现场设备接口的网络操作230的序列。
在块815,变换层214(例如通过调用对应网络层216)执行网络操作230的序列,并且随着执行网络操作230的序列保持它们的状态。在块810变换层214保持的状态可以用于跟踪已经执行了网络操作230的序列中的哪个以及在给定时间仍然将要执行哪个以实现服务228。在已经执行网络操作230的序列之后,示例性过程630的执行然后结束。
图9示出可以被执行为实现图6的块635的示例性网络层处理的示例性过程635。参照前面的图,图9的过程635在块905开始执行,在块905,调用特定网络层216以使得对应变换层214确定的网络操作的序列能够与对于包含通过其将要执行网络操作230的序列的现场设备的设备网络210定义的适当网络API 240进行交互。例如,在块905使用的网络API240支持各个网络消息类型242、网络数据类型244以及对于包含通过其将要执行网络操作230的序列的现场设备的设备网络210采用的特定过程控制网络协议236特定的可能地一个或多个对象字典246。在过程在块905完成之后,执行示例性过程635然后结束。
图10示出说明图2的服务框架200的示例性操作的示例性过程1000以使得客户端应用202能够与过程控制系统102中的现场设备通信。参照前面的图,在块1005,客户端应用调用服务层212暴露的并且具有通用(例如网络独立)接口220的网络独立服务228,以从现场设备(例如压力发射机)请求读取数据(例如监控的压力)。在块1010,变换层214将网络独立服务228变换为网络操作230的网络依赖序列,以实现包含现场设备的特定设备网络210中的服务228。例如,在块1010,变换层214的应用前端229使用从设备描述文件208获得的网络组件信息准备网络操作230的序列。(例如,设备描述文件208可以是EDDL描述232或压力发射机的普通文件格式描述234)。
在块1015,变换层214调用与变换层214关联的网络层216提供的网络API 240,以根据在块1010确定的网络操作230的顺序将网络依赖交易(例如,根据网络消息类型242、网络数据类型244和/或对象字典246格式化的命令)发送到现场设备(例如压力发射机)。一段时间过后,在块1020,网络API 240从现场设备(例如压力发射机)接收(例如包含测量的压力数据的)响应。在块1025,变换层214将在块1015接收的响应的网络依赖格式变换为网络独立响应格式,其被提供给服务层212。在块1030,服务层212根据需要调用适配器226,以将在块1025准备的响应的通用网络独立格式变换为仍然网络独立但对于应用202特定的格式。在块1035,服务层(例如使用在块1005调用的服务220的服务接口220)将响应返回到应用202。示例性过程1000的执行然后结束。
图11是能够实现图2的FDI服务器106和面向服务的框架200的示例性处理系统1100的框图。示例性处理系统1100可以附加地或替换地用于实现用于执行客户端应用120、202等的客户端104。例如,计算机1100可以是服务器、个人计算机、移动电话(例如蜂窝电话)、个人数字助理(PDA)、因特网设备、或任何另外类型的计算设备。
示例性处理器系统1100包括处理器1102,具有关联的存储器(例如随机存取存储器(RAM)1104、只读存储器(ROM)1106和闪存储器1108)。其中,处理器1102可以执行用于实现图6-图10中表示的过程的机器可读指令。处理器1102可以任何类型的处理单元,例如来自族、族和/或族的一个或多个微处理器、来自和/或族微控制器的一个或多个微控制器等。当然,来自其它族的其它处理器也是适当的。
RAM 1104、ROM 1106和/或闪存储器1108可以存储实现图9的过程900的机器可读指令。同步动态随机存取存储器(SDRAM)、动态随机存取存储器(DRAM)、RAMBUS动态随机存取存储器(RDRAM)和/或任何另外类型的随机存取存储器设备可以实现RAM1104。所示示例性的闪存储器1108包括引导块1110。存储器控制器(未示出)典型地控制对RAM 1104、ROM1106和闪存储器1108的访问。
处理器1102耦接到接口(例如其它组件可以接口到的总线1112)。在所示示例中,对总线1112接口的组件包括输入设备1114、显示设备1116、大型存储设备1118和可拆卸存储设备驱动器1120。可拆卸存储设备驱动器1120可以包括关联的可拆卸存储介质1122(例如磁或光介质)。
输入设备1114允许用户将数据和命令输入到处理器1102。使用键盘、鼠标、触摸屏、轨迹板、条码扫描仪或使得用户能够将信息提供给处理器1102的任何另外设备可实现输入设备1114。
例如,显示设备1116可以是液晶显示器(LCD)监视器、阴极射线管(CRT)监视器或充当处理器1102与用户之间的接口的任何另外合适的设备。图11刻画的显示设备1116包括将显示屏幕接口到处理器1102所需的任何附加硬件。
例如,大型存储设备1118可以是传统硬盘或处理器1102可读取的任何另外磁或光介质。
例如,可拆卸存储设备驱动器1120可以是光驱,例如压缩盘-可记录(CD-R)驱动器、压缩盘-可重写(CD-RW)驱动器、数字多功能盘(DVD)驱动器)或任何另外光驱。例如,其可以替换地是磁介质驱动器。可拆卸存储介质1122是对于可拆卸存储设备驱动器1120的补充,因此介质1122被选择为通过驱动器1120操作。例如,如果可拆卸存储设备驱动器1120是光驱,则可拆卸存储介质1122可以是CD-R盘、CD-RW盘、DVD盘或任何另外合适的光盘。另一方面,例如,如果可拆卸存储设备驱动器1120是磁介质设备,则可拆卸存储介质1122可以是磁碟或任何另外合适的磁存储介质。
在RAM 1104、ROM 1106、闪存储器1108、大型存储设备1118中和/或在可拆卸存储介质1122(例如CD或DVD)上可以存储用于实现图6-图10的过程中的一个或多个的编码的指令。
作为对于实现系统(例如图11的处理系统)中在此描述的方法和/或装置的替换,在例如处理器和/或ASIC(专用集成电路)的结构中可以嵌入在此描述的方法和/或装置。
从前面的公开,应理解,在此描述的示例性方法、装置和产品物可以用于实现用于与过程控制网络中的设备通信的面向服务的框架。至少在一些情况下,在此公开的示例性面向服务的框架可以提供超过先前过程控制解决方案的优点。例如,在此公开的面向服务的框架中,卖家可以能够将功能、特征和灵活性添加到系统,而不具有对现有应用的影响。作为另一示例,因为每一过程控制应用仅需要获知如何通过服务通信,所以在此公开的面向服务的框架可以减少整个系统复杂度,而在框架中以较低级别提供用于与设备通信的特定过程控制网络/设备协议。作为又一示例,因为在此公开的面向服务的框架暴露用于与设备网络通信的通用网络独立接口,所以过程控制应用可以独立于潜在设备网络改变,允许应用改变、更新和替换仅基于该相同网络独立接口。作为再一示例,在此公开的面向服务的框架允许当过程控制应用仅支持到框架的单个连接,而不是用于支持每一网络类型的多个连接。作为另一示例,在此公开的面向服务的框架允许添加服务以支持过程控制设备网络提供的能力,并且EDDL描述可以定义特定设备提供哪些服务。作为还一示例,在此公开的面向服务的框架包括可以用作用于验证过程控制系统实现的一致性测试点的层之间的良好定义的接口。作为又一示例,在此公开的面向服务的框架的网络独立服务接口可以允许消费者从供应商购买设备并且将它们插入具有期望将继续与不同设备通信的过程控制应用的架构。
最后,虽然在此已经描述了特定示例性方法、装置以及产品物,但本发明的覆盖的范围不限于此。反之,本发明良好地覆盖字面上或在等同原则的教导下落入所附权利要求的范围内的所有方法、装置和产品物。
Claims (17)
1.一种用于与过程控制系统中的设备通信的方法,所述方法包括:
调用用于与所述过程控制系统中的所述设备通信的服务,所述服务具有独立于用于实现所述过程控制系统的过程控制网络协议的通用接口;
通过读取所述设备的设备描述文件以准备网络操作的序列来将所述服务变换为用于实现所述服务的所述网络操作的序列,所述网络操作的序列对于用于实现所述过程控制系统的所述过程控制网络协议是特定的;
保持所述网络操作的序列的执行状态,以跟踪已经执行了所述网络操作的序列中的哪个以实现所述服务,用于同时执行的不同服务的网络操作的不同序列的状态信息存储在隔离的存储中;以及
根据所述网络操作的序列,使用对于用于实现所述过程控制系统的所述过程控制网络协议特定的网络接口以与所述设备通信。
2.如权利要求1所述的方法,其特征在于,所述服务由提供多个服务的服务层暴露为服务订约,所述多个服务中的每一个独立于用于实现所述过程控制系统的所述过程控制网络协议,并且所述多个服务中的每一个支持与使用多个不同过程控制网络协议实现的多个不同过程控制系统中的设备的通信。
3.如权利要求1所述的方法,其特征在于,调用所述服务包括:使用定义基于消息的服务接口的多个消息中的一个或多个来调用所述服务,所述多个消息包括多个服务消息类型和多个服务数据类型,所述多个服务消息类型和所述多个服务数据类型独立于任何过程控制网络协议。
4.如权利要求1所述的方法,其特征在于,以电子设备描述语言或普通文件格式中的至少一个来存储所述设备描述。
5.如权利要求1所述的方法,其特征在于,所述网络特定接口包括网络应用编程接口,其包括多个网络消息类型、多个网络数据类型或对于用于实现所述过程控制系统的所述过程控制网络协议特定的对象字典中的至少一个。
6.如权利要求1所述的方法,其特征在于,还包括:
从所述设备接收响应,所述响应具有对于用于实现所述过程控制系统的所述过程控制网络协议特定的第一格式,
将所述响应从所述第一格式变换为独立于用于实现所述过程控制系统的所述过程控制网络协议的第二格式;以及
调用适配器以将所述响应从所述第二格式变换为对于将要接收所述响应的应用特定的第三格式。
7.如权利要求1所述的方法,其特征在于,还包括:在调用所述服务之前认证应用。
8.如权利要求1所述的方法,其特征在于,还包括:基于当调用所述服务时执行的用户认证来限制与所述设备的通信。
9.如权利要求1所述的方法,其特征在于,所述服务与以下中的至少一个对应:
第一服务,用于将消息发送到设备并且从所述设备接收对应的响应;
第二服务,用于订购由所述设备所返回的公开的数据;
第三服务,用于接收由所述设备所返回的事件;
第四服务,用于获得描述所述过程控制系统和包括所述设备的、实现所述过程控制系统的多个设备的信息;以及
第五服务,用于将控制参数值写入所述设备。
10.如权利要求1所述的方法,其特征在于,使用异步发送的一个或多个消息来调用所述服务,并且所述网络接口实现同步轮询以从所述设备获得数据。
11.一种用于与过程控制系统中的设备通信的装置,包括存储器和耦合到所述存储器的处理器,所述存储器包含指令,所述指令在由所述处理器执行时使得所述处理器进行以下操作:
调用用于与所述过程控制系统中的所述设备通信的服务,所述服务具有独立于用于实现所述过程控制系统的过程控制网络协议的通用接口;
通过读取所述设备的设备描述文件以准备网络操作的序列来将所述服务变换为用于实现所述服务的所述网络操作的序列,所述网络操作的序列对于用于实现所述过程控制系统的所述过程控制网络协议是特定的;
保持所述网络操作的序列的执行状态,以跟踪已经执行了所述网络操作的序列中的哪个以实现所述服务,用于同时执行的不同服务的网络操作的不同序列的状态信息存储在隔离的存储中;以及
根据所述网络操作的序列,使用对于用于实现所述过程控制系统的所述过程控制网络协议特定的网络接口以与所述设备通信。
12.如权利要求11所述的装置,其特征在于,所述服务由提供多个服务的服务层暴露为服务订约,所述多个服务中的每一个独立于用于实现所述过程控制系统的所述过程控制网络协议,所述多个服务中的每一个支持与使用多个不同过程控制网络协议实现的多个不同过程控制系统中的设备的通信,并且其中,所述指令在由所述处理器执行时还使得所述处理器进行以下操作:使用定义用于调用所述设备的基于消息的服务接口的多个消息中的一个或多个来调用所述服务,所述多个消息包括多个服务消息类型和多个服务数据类型,所述多个服务消息类型和所述多个服务数据类型独立于任何过程控制网络协议。
13.如权利要求11所述的装置,其特征在于,所述网络特定接口包括网络应用编程接口,其包括多个网络消息类型、多个网络数据类型或对于用于实现所述过程控制系统的所述过程控制网络协议特定的对象字典中的至少一个。
14.一种用于与过程控制系统中的现场设备通信的装置,所述装置包括:
处理器,用于实现用于与使用多个不同过程控制网络协议实现的多个过程控制系统中的多个现场设备通信的面向服务的框架,所述面向服务的框架包括:
服务层,实现用于与所述多个现场设备通信的多个服务,每一服务具有独立于用于实现所述多个过程控制系统的任何所述多个过程控制网络协议的各个通用接口;
多个变换层,每一各个变换层用于通过读取所述设备的设备描述文件以准备所述网络操作的序列来将所述多个服务中的每一服务变换为用于实现所述各个服务的网络操作的各个序列,所述网络操作的各个序列对于与所述各个变换层关联的特别的过程控制网络协议是特定的,其中,所述多个变换层中的第一变换层保持实现第一服务的所述网络操作的第一序列的执行状态,以跟踪已经执行所述网络操作的第一序列中的哪个以实现所述第一服务;以及
多个网络层,分别与所述多个变换层关联,用于提供对于用于实现所述多个过程控制系统的所述多个过程控制网络协议中的每一个特定的多个网络接口;以及
用于通信地耦接由客户端设备所实现的应用与由所述处理器所实现的所述服务层的接口。
15.如权利要求14所述的装置,其特征在于,每一服务由所述服务层暴露为各个服务订约,每一服务支持与使用所述多个不同过程控制网络协议实现的所述多个不同过程控制系统中的所述多个现场设备的通信,并且使用定义用于调用所述多个服务中的每一个的基于消息的服务接口的多个消息中的一个或多个来调用每一服务,所述多个消息包括多个服务消息类型和多个服务数据类型,所述多个服务消息类型和所述多个服务数据类型独立于任何过程控制网络协议。
16.如权利要求14所述的装置,其特征在于,所述多个变换层中的所述第一变换层通过以下步骤将所述第一服务变换为所述网络操作的第一序列:
读取所述第一服务将要与其通信以准备所述网络操作的第一序列的第一现场设备的设备描述。
17.如权利要求14所述的装置,其特征在于,由第一网络层所提供的第一网络特定接口包括网络应用编程接口,其包括多个网络消息类型、多个网络数据类型或对于用于实现第一过程控制系统的第一过程控制网络协议特定的对象字典中的至少一个。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/889,064 US20120079125A1 (en) | 2010-09-23 | 2010-09-23 | Service oriented framework for communicating with devices in a process control system |
US12/889,064 | 2010-09-23 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102413121A CN102413121A (zh) | 2012-04-11 |
CN102413121B true CN102413121B (zh) | 2017-08-01 |
Family
ID=44908342
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110290543.8A Active CN102413121B (zh) | 2010-09-23 | 2011-09-22 | 用于与过程控制系统中的设备通信的面向服务的框架 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20120079125A1 (zh) |
JP (3) | JP2012069113A (zh) |
CN (1) | CN102413121B (zh) |
DE (1) | DE102011053851A1 (zh) |
GB (1) | GB2486516B (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120226786A1 (en) * | 2011-03-04 | 2012-09-06 | General Electric Company | System and method for porting of device software |
US10031490B2 (en) * | 2013-03-15 | 2018-07-24 | Fisher-Rosemount Systems, Inc. | Mobile analysis of physical phenomena in a process plant |
WO2014198500A1 (en) * | 2013-06-11 | 2014-12-18 | Siemens Aktiengesellschaft | An industrial control system for monitoring and controlling an automation plant |
US11570065B2 (en) | 2014-04-09 | 2023-01-31 | Convida Wireless, Llc | Service enabler function |
DE102014006622B4 (de) | 2014-05-08 | 2022-03-03 | Acontis Technologies Gmbh | Verfahren zur Fernnutzung eines Endgerätes |
EP2988183B1 (de) | 2014-08-14 | 2020-04-01 | Siemens Aktiengesellschaft | System zum beobachten und/oder steuern einer anlage |
DE102014014183A1 (de) * | 2014-09-19 | 2016-04-07 | Abb Technology Ag | Einrichtung zur Verwaltung und Konfiguration von Feldgeräten einer Automatisierungsanlage |
DE102017109030A1 (de) * | 2017-04-27 | 2018-10-31 | Endress+Hauser Process Solutions Ag | Verfahren zum Betreiben eines Feldgeräts |
DE102018109609A1 (de) * | 2018-04-20 | 2019-10-24 | Weidmüller Interface GmbH & Co. KG | Gateway und Verfahren zum Übertragen von Daten zwischen einer Produktionsmaschine und einem übergeordneten System über ein zwischengeschaltetes Gateway |
DE102018132384A1 (de) * | 2018-12-17 | 2020-06-18 | Endress+Hauser Conducta Gmbh+Co. Kg | Hardware-Software-Kommunikationssystem für eine Sensorsignalüberwachung der Prozessautomatisierungstechnik |
EP3702856B1 (en) * | 2019-03-01 | 2024-05-29 | ABB Schweiz AG | Network centric process control |
CN113098951B (zh) * | 2021-03-30 | 2022-08-30 | 中电科航空电子有限公司 | 一种民机客舱无线网络系统及其服务器软件架构 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7386551B1 (en) * | 1998-11-09 | 2008-06-10 | Unisys Corporation | Method and apparatus for providing an availability message to a remote user |
Family Cites Families (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63163604A (ja) * | 1986-12-26 | 1988-07-07 | Toshiba Mach Co Ltd | フロ−チヤ−ト式プログラマブルシ−ケンスコントロ−ラのモニタ方法 |
JPH08286725A (ja) * | 1995-04-13 | 1996-11-01 | Miyachi Technos Corp | 抵抗溶接用又はレーザ加工用端末ユニット、抵抗溶接又はレーザ加工制御装置、端末ユニット稼働方法 |
JPH09237115A (ja) * | 1996-03-01 | 1997-09-09 | Toshiba Corp | 監視制御装置 |
JPH09258806A (ja) * | 1996-03-19 | 1997-10-03 | Meidensha Corp | プロセス情報の等価方法 |
JPH11316685A (ja) * | 1997-10-31 | 1999-11-16 | Endress & Hauser Gmbh & Co | コントローラを用いてフィールドバスを介してフィールドデバイスを遠隔制御および/または遠隔操作する装置 |
JPH11143523A (ja) * | 1997-11-05 | 1999-05-28 | Fanuc Ltd | 数値制御装置の状態診断装置 |
US7640007B2 (en) * | 1999-02-12 | 2009-12-29 | Fisher-Rosemount Systems, Inc. | Wireless handheld communicator in a process control environment |
US6449715B1 (en) * | 1999-10-04 | 2002-09-10 | Fisher-Rosemount Systems, Inc. | Process control configuration system for use with a profibus device network |
JP2001184119A (ja) * | 1999-12-27 | 2001-07-06 | Tsubakimoto Chain Co | モニタリング方法及び装置 |
JP3442334B2 (ja) * | 2000-02-24 | 2003-09-02 | 東京瓦斯株式会社 | セントラルヒーティングシステムの故障診断装置及び故障診断方法 |
JP2002091888A (ja) * | 2000-09-12 | 2002-03-29 | Digital Electronics Corp | 制御システムおよびそれに適用されるメール送信プログラムを記録した記録媒体 |
JP4185661B2 (ja) * | 2000-11-17 | 2008-11-26 | キヤノン株式会社 | 機器管理装置、機器管理プログラム、機器管理プログラムが格納された記録媒体、及び機器管理方法 |
JP2002341906A (ja) * | 2001-05-15 | 2002-11-29 | Digital Electronics Corp | プログラム式表示装置およびその表示装置を用いたデータ通信システム |
JP2003331076A (ja) * | 2002-05-10 | 2003-11-21 | Hitachi Ltd | 設備保全システム |
DE602004023227D1 (de) * | 2003-12-04 | 2009-10-29 | Honeywell Int Inc | System und verfahren zur übermittlung von geräteberen gesteuerten geräten |
US7930053B2 (en) * | 2003-12-23 | 2011-04-19 | Beacons Pharmaceuticals Pte Ltd | Virtual platform to facilitate automated production |
US7206977B2 (en) * | 2004-01-13 | 2007-04-17 | International Business Machines Corporation | Intelligent self-configurable adapter |
JP4324864B2 (ja) * | 2004-03-15 | 2009-09-02 | オムロン株式会社 | ネットワークシステム |
US8533737B2 (en) * | 2004-03-18 | 2013-09-10 | Global Infotek, Inc. | System and method for interfacing distributed systems with different frameworks |
JP4842541B2 (ja) * | 2005-01-07 | 2011-12-21 | 株式会社デジタル | 制御用表示装置、画面データ生成装置、並びに、それらのプログラムおよび記録媒体 |
US7921194B2 (en) * | 2006-03-09 | 2011-04-05 | Samsung Electronics Co., Ltd. | Method and system for remote access to universal plug and play devices |
US8015039B2 (en) * | 2006-12-14 | 2011-09-06 | Sap Ag | Enterprise verification and certification framework |
KR101474840B1 (ko) * | 2007-11-05 | 2014-12-19 | 삼성전자 주식회사 | UPnP 기반의 네트워크 시스템 및 그 제어 방법 |
CN101572603B (zh) * | 2008-04-30 | 2012-05-30 | 国际商业机器公司 | 分布式环境中的组成服务的统一访问控制系统及方法 |
US7774404B2 (en) * | 2008-06-13 | 2010-08-10 | Sap Ag | Managing software component versions within a service oriented architecture |
JP2010055423A (ja) * | 2008-08-28 | 2010-03-11 | Toshiba Corp | マイクロプロセッサ |
US8763089B2 (en) * | 2010-01-12 | 2014-06-24 | Microsoft Corporation | Flexible authentication and authorization mechanism |
US20110295646A1 (en) * | 2010-05-26 | 2011-12-01 | Sap Ag | Service delivery management for brokered service delivery of service groups |
CN102346685B (zh) * | 2010-07-29 | 2016-09-28 | 甲骨文国际公司 | 集成适配器管理系统和方法 |
-
2010
- 2010-09-23 US US12/889,064 patent/US20120079125A1/en not_active Abandoned
-
2011
- 2011-09-09 GB GB1115637.9A patent/GB2486516B/en active Active
- 2011-09-15 JP JP2011201998A patent/JP2012069113A/ja active Pending
- 2011-09-22 DE DE102011053851A patent/DE102011053851A1/de active Pending
- 2011-09-22 CN CN201110290543.8A patent/CN102413121B/zh active Active
-
2017
- 2017-04-06 JP JP2017076246A patent/JP2017120669A/ja active Pending
-
2019
- 2019-04-15 JP JP2019076955A patent/JP7298976B2/ja active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7386551B1 (en) * | 1998-11-09 | 2008-06-10 | Unisys Corporation | Method and apparatus for providing an availability message to a remote user |
Also Published As
Publication number | Publication date |
---|---|
US20120079125A1 (en) | 2012-03-29 |
JP2012069113A (ja) | 2012-04-05 |
GB2486516A (en) | 2012-06-20 |
GB2486516B (en) | 2017-02-01 |
JP2017120669A (ja) | 2017-07-06 |
JP2019145149A (ja) | 2019-08-29 |
GB201115637D0 (en) | 2011-10-26 |
DE102011053851A1 (de) | 2012-03-29 |
CN102413121A (zh) | 2012-04-11 |
JP7298976B2 (ja) | 2023-06-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102413121B (zh) | 用于与过程控制系统中的设备通信的面向服务的框架 | |
JP7087120B2 (ja) | プロセス工場の少なくとも一部を制御及び/又は監視する方法、プロセス工場の少なくとも一部を制御及び/又は監視する装置、及び、機械アクセス可能媒体 | |
US20230341840A1 (en) | Industrial data services platform | |
CN102736581B (zh) | 用于将设备描述文件发送至主机的方法和装置 | |
CN102385323B (zh) | 用于显示本地化过程控制对象的方法及装置 | |
Wang et al. | Integrating Building Management System and facilities management on the Internet | |
CN102200994B (zh) | 用于访问存储于服务器的过程数据的方法和装置 | |
CN107295064B (zh) | 基于web的组态型远程监控方法、电子设备及存储介质 | |
CN107005444B (zh) | 设备同步和测试 | |
US9560087B2 (en) | Providing machine-to-machine service | |
US20150067153A1 (en) | Remote monitoring of data facility in real-time using wireless sensor network | |
US20150319148A1 (en) | Network information system with license registration and method of operation thereof | |
US8660833B2 (en) | Method, computer program product and apparatus for providing an interactive network simulator | |
EP3104315A1 (en) | Information collection system, information collection terminal device, information collection server, and information collection method | |
CN105051714B (zh) | 基于网络的虚拟媒体重定向的系统和方法 | |
JP2018519161A (ja) | ダッシュボードアプリケーションを実行するデバイスを有する打錠機 | |
US20040255057A1 (en) | Method and apparatus for providing help information in multiple formats | |
Sanz-Jimeno et al. | A tool based on the industry foundation classes standard for dynamic data collection and automatic generation of building automation control networks | |
CN107072537A (zh) | 低敏度生命系统架构 | |
JP7052755B2 (ja) | 制御装置、管理プログラムおよび制御システム | |
CN114969175A (zh) | 保险平台与外部系统的对接方法及相关设备 | |
US20240265001A1 (en) | System and method for blockchain data fabric | |
US12055924B2 (en) | Edge application discovering and management state machine objects in automation controllers for MES and DCS applications | |
US20110184750A1 (en) | Hospital information system | |
Oksanen | Utilization of smart meter HAN interface real-time data on TaloTohtori 2.0 IoT platform |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |