CN103221891A - 用于分布式控制系统的智能接口 - Google Patents

用于分布式控制系统的智能接口 Download PDF

Info

Publication number
CN103221891A
CN103221891A CN2011800553589A CN201180055358A CN103221891A CN 103221891 A CN103221891 A CN 103221891A CN 2011800553589 A CN2011800553589 A CN 2011800553589A CN 201180055358 A CN201180055358 A CN 201180055358A CN 103221891 A CN103221891 A CN 103221891A
Authority
CN
China
Prior art keywords
data
dcs
module
request
interface 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.)
Pending
Application number
CN2011800553589A
Other languages
English (en)
Inventor
T·M·森特乔治
D·M·卡尼
P·E·亨卡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ABB Inc Canada
ABB AB
ABB Inc USA
Original Assignee
ABB AB
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by ABB AB filed Critical ABB AB
Publication of CN103221891A publication Critical patent/CN103221891A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total 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/4185Total 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
    • G05B19/41855Total 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 by local area network [LAN], network structure
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total 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/4185Total 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/25Pc structure of the system
    • G05B2219/25232DCS, distributed control system, decentralised control unit
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/31From computer integrated manufacturing till monitoring
    • G05B2219/31124Interface between communication network and process control, store, exchange data
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Manufacturing & Machinery (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)
  • Multi Processors (AREA)
  • Programmable Controllers (AREA)

Abstract

提供了一种用于将外部应用连接至分布式控制系统(DCS)的智能接口系统。该接口系统可操作以自动扫描DCS以确定其配置并且构建该DCS的拓扑模型。该拓扑模型被用来确定从该DCS中的模块所请求的数据是否能够由该模块所提供。被构建该拓扑模型为线程安全。该接口系统中的节流机制保护该DCS免于遭受过多数据请求。

Description

用于分布式控制系统的智能接口
技术领域
本发明涉及一种用于分布式控制系统(DCS)的接口,并且更具体地涉及一种用于DCS的智能接口。
背景技术
DCS是针对工业过程的控制专用的系统,其中该系统由控制模块所组成,该控制模块并未定位于中央而是代替为贯穿过程对其进行分布,其中该工业过程的每个子过程由一个或多个控制模块所控制。DCS的其它组件包括输入和输出(I/O)模块和通信模块。DCS内的模块之间的通信通常利用专有协议。
对于具有专有通信协议的DCS而言,通常提供接口以使得诸如维护管理系统或监管系统之类的外部应用或系统能够从DCS获取信息并且另外与DCS进行通信。常规的DCS接口利用DCS的静态模型或配置。该配置使用通常被称作“标签”的数据点进行人工建立。标签包括输入、输出、设置点、所测量变量、控制器增益、模块状态等。用于DCS配置的标签以两种方式之一进行人工输入。标签可以被直接输入到接口之中或者标签可以从人工建立并验证的工程工作站数据库输入到接口之中。以任一种方式,用户都必须人工输入标签并且确保该配置是正确的且最新的。由于配置中的误差会导致控制系统的不正确操作,所以这是非常重要的。
除了以上内容之外,常规的DCS接口通常没有防止不正确或无效命令被发送至DCS的特征。因此,通过这种接口所发送的不正确或无效命令可能导致DCS的中断或者甚至导致作为DCS一部分的某些设备的损坏。
基于以上内容,需要一种便于构建并且更好地保护DCS的有所改进的DCS接口。本发明针对这样的接口。
发明内容
依据本发明,提供了一种用于将外部应用连接至分布式控制系统(DCS)的方法和接口系统。该接口系统包括具有指令的计算机可读介质,该指令用于使得计算机执行该方法。依据该方法,对DCS进行扫描以确定其配置。所确定的DCS的配置用于构建DCS的拓扑模型。从外部应用接收针对来自DCS中的模块的数据的外部请求。使用该拓扑模型以确定该模块是否能够提供所请求的数据。
附图说明
考虑到以下说明书、所附权利要求和附图将更好地理解本发明的特征、方面和优势,其中:
图1是具有多个过程控制单元的第一分布式控制系统(DCS)的示意图;
图2是连接至对根据本发明所实施的智能接口进行主控的工作站的第一DCS和第二DCS的示意图;
图3是智能接口的示意图;
图4是智能接口的主例程的流程图;
图5是智能接口的回路扫描子例程的流程图;
图6是智能接口的节点扫描子例程的流程图;以及
图7是用于存储智能接口的拓扑模型的类结构。
具体实施方式
应当注意的是,在以下的详细描述中,无论是否在本发明的不同实施例中示出,相同的组件具有相同的附图标记。还应当注意的是,为了清楚简明地公开本发明,附图可以不必要按比例并且本发明的某些特征可以以稍微示意性的形式示出。
现在参考图1,示出了可以随其使用本发明的DCS 10的示意图。DCS 10包括回路12,回路12包括多个节点16、18、20、22、24与之相连接的一个或多个网络线缆14。每个节点包括连接至回路12以便与回路12上的其它节点进行通信的一个电子设备或多个电子设备。每个节点在回路上具有唯一的地址,并且每个节点通过终端单元(TU)28连接至回路12。虽然在图1中仅示出了一个回路,但是应当意识到的是,DCS 10可以包括多个回路,诸如图2中所示出的。在一个实施例中,回路12是以10兆赫或2兆赫的通信速率进行工作的单向、高速串行数据网络。
节点16、20分别包括过程控制单元(PCU)30、32。如以下将更为详细描述的,每个PCU 30、32包括网络通信管理器(NCM)模块35以及一个或多个用于对在诸如发电厂、造纸厂或者化学或制造车间之类的工业设施中的过程或子过程进行控制的控制器。NCM模块35监视用于传出数据至数据包控制器,并且将收到的数据路由且传送至控制器。每个控制器可以是冗余的,并且PCU可以包含在第二TU 28上相连至网络的冗余NCM模块35。节点16、20中的每一个通过TU 28以及一个或多个NCM模块35连接至回路12。
节点18、22包括分别具有与之相连接的操作员工作站36、28的计算机接口单元(CIU)34。每个工作站36、38包括处理器和相关联的存储器以及用于显示图形用户界面(GUI)的监视器,操作员可以通过该监视器对设施中的过程和子过程进行监视和人工控制。每个工作站36、38通过CIU 34和TU 28连接至回路12。CIU 34可以独立于工作站或者集成到工作站之中,但是作为DCS 10的一部分。为了便于说明,与工作站36、38相关联的CIU 34与工作站36、38集成。如以下将更为详细描述的,智能接口系统44被存储在工作站38的存储器中并且由工作站38的一个或多个处理器所执行。
PCU 32包括连接至通信总线52的多个基于微处理器的控制器50,该通信总线52可以是具有类似以太网的协议的串行通信系统。每个控制器50包含用于对工业设施的一个或多个子过程(或回路)进行控制的一个或多个控制程序(或配置)。该控制程序利用通过一个或多个I/O子系统54从现场设备所接收的操作数值。每个单独控制器50或冗余控制器50的配对可以具有单独的I/O子系统54。控制程序可以以五种IEC 61131-3标准的语言:梯形图、结构化文本、功能块图、指令表和顺序功能图中的一种或多种进行编写。此外,控制程序可以以诸如C的传统编程语言进行编写。在本发明的一个实施例中,控制程序可以以功能块图进行编写。来自控制程序的输出通过I/O子系统54而被传送至现场设备的控制设备。I/O子系统54包括连接至I/O总线58的多个I/O模块56。控制器50还连接至I/O总线58以从I/O模块56接收操作数值。
通常,PCU 30具有类似于PCU 32的配置,即PCU 30具有多个控制器、通信总线和I/O子系统。
现在参考图2,示出了本发明的一个实施例,其中企业具有(第一)DCS 10和第二DCS 70。此外,示出第一DCS 10具有第二回路60,第二回路60具有类似于(第一)回路12的配置,即第二回路60具有一个或多个PCU,每个PCU具有多个控制器、通信总线和I/O子系统。第一和第二回路12、60由桥接模块62所连接。第二DCS 70具有类似于DCS 10的配置,即该DCS具有一个或多个回路,每个回路具有一个或多个PCU,每个PCU包括多个控制器、通信总线和I/O子系统。如所示出的,工作站38和运行于其上的智能接口系统44连接至DCS 10和DCS 70两者。
现在参考图3,示出了智能接口系统44的示意性表示,该智能接口系统44是可操作以在一个或多个外部应用和DCS 10、70之间自动提供接口的软件系统。如所示出的,智能接口系统44通常包括软件应用接口(API)80、系统数据通道(SDA)服务器82和OPC服务器84。API 80是包括一组“C”语言子例程的低级接口,其提供对设置在CIU 34中的本地语言命令的通道。每个CIU 34由一个或多个硬件模块所组成,该硬件模块将基于微处理器的设备(诸如工作站36或38)或PCU(例如PCU 30或32)连接至回路(例如,回路12)。在一个实施例中,每个CIU 34包括网络接口模块以及网络至计算机的传输模块。在该实施例中,每个CIU 34可以处理四种信息类型:广播、时间同步、组播和轮询。此外,所有信息都包含回路冗余校验码以及校验和以确保数据完整性。
SDA服务器82可高度适配并且可以伴随一个或多个DCS(例如,两个、三个、四个DCS等)所使用。对于连接至SDA服务器82的每个DCS,创建API通道、API连接器、CIU监视器和拓扑寻找器(finder)的实例。此外,SDA服务器82包括API封装器196和拓扑模型数据库88。
在图3所示的实施例中,SDA服务器82与两个DCS相互联系,两个DCS即DCS 10和DCS 70,并且SDA服务器82包括用于DCS10的拓扑寻找器85和用于DCS 70的拓扑寻找器86。每个拓扑寻找器可在SDA服务器82启动时可操作以发现其相关联DCS的拓扑并且创建该DCS的拓扑模型。这些拓扑模型被存储在拓扑模型数据库88中。该拓扑模型数据库88包含SDA服务器82与之相连接的所有DCS的模型,所有的DCS在该情况下包括DCS 10和DCS 70。如以下将更全面描述的,拓扑模型数据库88被用作内部参考以控制能够与任意所连接的DCS发生的通信的类型。
拓扑寻找器的主例程92在图4中示出。在步骤96,主例程92调用回路扫描子例程110(图5中所示)首先对智能接口系统44所属的回路(即,本地回路)进行扫描,该回路在图3的实施例中为回路12。在步骤96完成之后,主例程92进行至步骤98,其中主例程92调用节点扫描子例程112(图6中所示)以扫描本地回路(例如,回路12)的节点(例如,节点16-24)。在扫描本地回路和本地回路的节点之后,主例程92进行至步骤100,其中做出是否有另一个回路要扫描的检查。如果有另一个回路要扫描,则主例程进行至下一个回路(例如,回路60),并且在步骤102中调用回路扫描子例程对该下一个回路进行扫描。在步骤102之后,主例程92进行至步骤104,其中主例程92调用节点扫描子例程以扫描该下一个回路中的节点。重复步骤100-104直至再没有回路要扫描或者确定API断开连接。一旦DCS中的所有回路都已经被扫描,完成该DCS的拓扑模型并且主例程92返回至步骤106。
主例程92的回路和节点扫描过程被定期执行以更新DCS的拓扑模型。当计时器指示已经过去了预定时间周期时,主例程92从步骤106进行通过多个步骤回至步骤96以再次执行以上所描述的回路和节点扫描步骤。
现在参考图5,示出了回路扫描子例程110的流程图。在步骤112中,回路扫描子例程110生成针对当前回路的回路拓扑报告。该回路拓扑报告包括当前回路中所有节点的列表并且包含针对每个节点的识别信息。例如,该识别信息可以包括节点的地址、节点的类型(例如,处理控制、计算机接口、桥接口、事件序列或其他)和每个节点在回路上的电/逻辑位置(节点顺序)。在步骤114,回路扫描子例程110执行诊断操作,其中对可用诊断信息进行回顾以确定是否在任意回路中存在通信问题。如果在回路之一中存在通信问题,标记(标示)该问题以使得该问题可以在所连接外部应用中的显示中被视觉识别。在步骤114之后,回路扫描例程进行至一系列步骤,其中使用该回路拓扑报告创建或更新拓扑模型(取决于扫描是初始扫描还是更新扫描)。
如果在回路拓扑报告中找到任何在现有拓扑模型中还没有相对应对象的节点,创建新的节点以表示该节点并且将该节点添加至拓扑模型。如果节点恰好是到远程回路的桥,那么也创建新的回路对象并将新的回路添加至拓扑模型。
如果在回路拓扑报告中找到已经在现有拓扑模型中所表示的节点,则将所发现节点的类型与现有拓扑模型中的节点对象进行比较。如果节点类型不匹配,则丢弃现有节点对象并且用表示当前拓扑(如回路拓扑报告所表示的)的新的节点对象来代替。
如果对应于现有拓扑模型中的节点对象的节点在当前回路拓扑报告中不再出现,则在步骤124中标记该节点为离线。在步骤126中,离线比用户可选的持续时间更长的任何节点被当做为将从DCS永久性移除,并且从拓扑模型中移除它的相对应的节点对象。该持续时间可以根据车间状况进行调节—在维护期间该持续时间可以是数周,但是在正常操作期间其通常小于10分钟或重置节点所需的时间。当从拓扑模型中移除节点对象时,之前作为该节点对象的一部分的所有模块对象也被移除。
现在参考图6,示出了节点扫描子例程112的流程图。节点扫描子例程112针对与特定节点相关联的所有模块扫描该节点。从该扫描所获得的信息被用来创建或更新拓扑模型,这取决于该扫描是初始扫描还是更新扫描。节点扫描子例程112通过向特定节点中的每个可能模块地址发送状态请求消息而扫描该节点。如果从在特定地址处的模块接收到良好响应,则该模块被认为存在并且在线。如果接收不到响应或接收到不良响应,则确定目标模块不存在。
如果在拓扑模型中与由节点扫描子例程112所发现的模块的相同地址处存在模块对象,然后将该对象的模块类型与所发现的模块进行比较。如果该对象的模块类型与所发现的模块不匹配,则在步骤130中删除该对象并且在步骤132中用新的对象代替以表示所发现的模块。作为步骤132的一部分,节点扫描子例程112在硬件能力数据库215中查找所发现的模块的模块类型以确定模块类型的已知能力并且将该信息连同拓扑模型中的模块对象一起存储在拓扑模块数据库88中。如果状态请求消息被发送至与拓扑模型中的模块对象相同地址处的模块并且没有接收到响应或接收到不良响应,则在步骤134中该地址处的模块将被标记为“离线”。如果模块保持离线长于用户可选择的持续时间,则认为该模块要从DCS永久移除并且在步骤136中从拓扑模型中移除其相对应的模块对象。该持续时间可以根据车间状况进行调节—在维护期间该持续时间可以是数周,但是在正常操作期间其通常小于5分钟或为重置模块所需的时间。
在步骤132创建了新的模型对象之后,节点扫描子例程112进行至步骤140,其中,如果该模块可以支持模块状态异常报告标签(ModStat XR标签),该子例程在CIU 34中为对应于新创建的模型对象的模块创建ModStat XR标签。节点扫描子例程112基于模块的类型来确定模块是否能够安全支持ModStat XR标签。例如,主控制器(诸如控制器50)能够支持ModStat XR标签,但是备用控制器、一些通信模块和I/O模块则不能。然而,来自用于主控制器的ModStatXR的异常报告将包含与该控制器相关联的备用控制器和I/O模块相关的信息。并且来自智能通信模块的ModStat XR将包含关于其配对的网络接口模块的信息。ModStat XR标签允许将从模块收集相当数量的信息并且在异常报告中报告该相当数量的信息。这样的信息包括模块类型、模块的操作状态(例如,配置、执行等)、模块所使用的各种通信信道的错误状态以及模块电源的问题。来自模块的异常报告被临时存储在所连接的CIU 34中并且随后被收集并存储在拓扑模型中。在CIU 34中,当接收到来自点(过程值或模块状态标签)的异常报告时,重写之前的异常报告。因此,CIU 34被频繁轮询以获得快速状态变化。在一些实施例中,通过轮询而不是异常报告来获得状态和过程信息。
使用不同类的对象生成并存储拓扑模型数据库88。现在参考图7,示出了用于存储拓扑模型数据库88的类结构150。如所示出的,类结构150包括模型类152、回路列表类154、节点列表类156和模块列表类158。
模型类152提供与用于企业的所有拓扑模型相关的信息并且准许这些拓扑模型的修改。模型类152能够提供与企业中的所有DCS、回路、节点和模块相关的信息并且使得能够针对来自(多个)拓扑模型的上述对象的添加和移除。模型类152使用对DCS类162的调用而获取关于DCS的信息并且使用对回路列表类154的调用而获取与回路、节点和模块相关的信息。
回路列表类154提供与企业中的所有回路、节点和模块相关的信息并且准许针对来自(多个)拓扑模型的回路的对象的添加和移除。回路列表类154使用对实体列表基础类160的调用而获取关于回路的信息并且使用对节点列表类156的调用而获取与节点和模块相关的信息。
节点列表类156提供与企业中的所有节点和模块相关的信息并准许针对来自(多个)拓扑模型的节点的对象的添加和移除。节点列表类156使用对实体列表基础类160的调用而获取关于节点的信息并且使用对模块列表类158的调用而获取关于模块的信息。
模块列表类158提供与企业中的所有模块相关的信息并且准许针对来自(多个)拓扑模型的模块的对象的添加和移除。模块列表类158使用对实体列表基础类160的调用而获取关于模块的信息。
实体列表基础类160通过实体基础类162分别从回路类164、节点类166和模块类168获取与回路、节点和模块相关的信息。进而,模块类168从模块定义类170和模块标识符类172获取有关模块的详细信息。
拓扑模型是线程安全的,即当做出影响到数据的变化时,不允许读取数据,并且反之亦然。类结构150的结构允许以累进且粒度的方式实现该线程安全。更具体地,在类结构150的每个类中实施读/写锁。因此,在模型类152中的DCS对象上实施读/写锁,用以(1)如果DCS对象被添加或者从企业的(多个)拓扑模型中被移除时,防止读取任何关于DCS对象的信息,以及(2)如果正从DCS对象读取信息时,防止该DCS对象被添加或者从(多个)拓扑模型移除。类似地,在回路列表类154中的回路对象上实施读/写锁,用以(1)如果从企业的(多个)拓扑模型中添加、改变或移除该回路对象,防止读取任何关于回路对象的信息,以及(2)如果从该回路对象读取信息,防止从(多个)拓扑模型添加、改变或者移除该回路对象。继续向下的类层级,分别在节点列表类156和模块列表类158中的节点对象和模块对象上放置类似的读/写锁。回路类164、节点类166和模块类168中的读/写锁提供甚至更具粒度的锁定能力。例如,在模块类168的每个对象实例上实施读/写锁,用以(1)如果配置或更新模块,防止读取任何关于该模块的任何信息,以及(2)如果读取模块,防止配置、更新或移除该模块。
从前述,应当意识到的是,类结构150的配置提供了线程安全而没有SDA服务器82的操作的不当干扰。更具体地,该配置允许读/写锁仅指向需要被锁定的DCS部分。例如,如果仅有DCS回路中的两个不同节点中的两个模块例如由于它们正在被配置而需要被锁定,则仅在那两个模块上实施锁定,而不是像如果模块对象以简单分级方式进行设置的情况下那样,在两个节点或者整个回路或者整个DCS上实施锁定。
返回参考图3,除了拓扑模型数据库88和拓扑寻找器85、86之外,用于DCS 10、70的SDA服务器82的实施例还包括用于CIU34a(DCS 10)的API连接器180、API通道182和CIU监视器184,以及用于CIU 34b(DCS 170)的API连接器188、API通道190和CIU监视器192。
每个API连接器180、188经由API 80建立到其相关联的CIU34的连接以及关闭该连接。此外,每个API连接器180、188包括点管理器对象,其分配并追踪用于其相关联的CIU 34中的点数据库的标记。无论CIU 34何时重启,由于重启CIU 34清空了点数据库,所以删除了其相关联的CPI连接器中的点管理器对象并且创建一个新的点管理器对象。
每个CIU监视器184、192与相关联的API连接器进行交互以建立、维护并且重启其相关联CIU 34中的连接。此外,CIU监视器在所配置的间隙检查连接状态。在每个执行周期期间,CIU监视器从其相关联的CIU 34获取异常报告并且将检查其相关联的API连接器的状态。如果其相关联的API连接器被发现离线或断开连接,则CIU监视器将试图在API连接器和CIU 34之间重新建立连接。
每个API通道182、190以受控方式可操作用以通过其相关联的CIU 34和API 80向其相关联的DCS传送请求并从其相关联的DCS接收响应。API通道可以被轻易修改以便可与除了CIU 34之外的通信模块以及除了API 80之外的软件应用接口所使用。此外,API通道还可操作用以经由CIU 34和API 80获取诊断数据。诊断数据包括存储器使用、错误计数、通信度量、固件水平、程序执行度量、错误状态。API通道具有针对相关联API连接器的引用(指针),但是仅在该API连接器上执行状态读取和更新。API通道使用控制通信速率的节流机制传送请求。该节流机制使用轮询周期,轮询周期是请求的开始之间所需的时间。如果对API通道做出第二调用以在之前的第一调用的轮询周期已经过去(如从发起对API通道的调用的时间起所测量的)之前发出第二请求,则第二请求将被延迟直至第一调用的轮询周期过去。此外,如果在之前的第一请求已经完成之前对API通道做出针对第二请求的第二调用,则读/写锁将防止该第二请求(以及任意后续请求)被发送直至第一请求完成。当第一请求完成时,当轮询周期过去时释放该读/写锁,并且可使该读/写锁对行线程中的下一个请求可用。
SDA服务器82的组件(类)采用通用语言运行时(CLR),其是微软的.NET initiative的核心组件。在CLR中,代码以被称作通用中间语言(CIL)的字节代码的形式所表示。与SDA服务器82相对比,API 80使用本机的“C”库。因此,提供API封装器196并且将其连接至API连接器180、188和API通道182、190。API封装器196将来自SDA服务器82的组件的请求转换为本机的“C”调用以传送至API 80,并且将从API 80所接收的本机的“C”结构、阵列和指针转换为SDA服务器82的组件所使用的本机的.NET数据类型。
提供网络服务器应用200以使用简单对象访问协议(SOAP)将SDA服务器82连接至任意网络客户端。然而,网络服务器应用200和客户端之间的通信是加密的。此外,到网络服务器应用200的客户端连接必须通过作为主控SDA服务器82的服务器(例如,工作站38)上的本地账户进行连接而被验证。
SDA服务器82能够处理网络服务器应用200所接收的数据请求并且要求来自DCS中的多个目标的信息。这样的多目标数据请求通常是诊断的并且仅需要来自每个目标的少量数据(例如,来自块读取的单个浮点数值)。针对每个目标实行所请求的动作,并且所有所请求动作的结果被同时返回至相关API通道(182或190)。在请求中指定多个目标将延长请求完成以及能够返回结果之前的时间,但是其将导致较少的往返行程并因此导致较少的开销。这在非常短的时间内以其它方式需要许多读取并且所产生的数据将非常小(例如,来自控制器模块的请求块读取可以利用针对网络服务器应用200的单个请求而不是多个请求来完成)的情况下是有用的。可以被指定的目标的数量并未被限制,并且由客户端应用进行合理请求而定。由于节流由相关的API通道所执行,所以具有大量目标的请求将不会充斥CIU 34。
针对请求大量数据(例如,回路拓扑报告)的网络服务器应用200的诊断数据请求通常仅被指向DCS中的单个目标。
OPC服务器84可操作以经由OPC UA从SDA服务器82发布数据并且使用TCP和HTTP OPC UA通信栈两者支持连接。OPC服务器84能够执行读取和功能调用(在必须执行操作的情况下)并且提供订阅206。OPC服务器84实施定制节点管理器210和定制OPC数据模型212,其包括定制对象类型、定制复杂变量类型、定制列举和方法。
OPC服务器84通过两个接口连接至SDA服务器82。由SDA服务器82自主发现并监视的数据(诸如异常报告)通过运行时主接口214而被推送至OPC服务器84。通过网络服务器应用200获取必须从SDA服务器82进行轮询的数据。
OPC服务器的定制节点管理器210能够任选地启动IX数据处理器线程以将数据记录至记事器(historian)。所记录的数据将包括所有所发现的拓扑信息和变化、异常报告以及为了实现针对OPC服务器84或客户端订阅的读取请求所需的任意诊断数据。
OPC服务器的定制节点管理器210能够任选地利用用户标签管理器87组件以允许用户安全配置他们明确希望揭示的过程标签。用户标签管理器87从数据库加载用户所定义的标签信息。如发现DCS(例如,DCS 10或70)中的模块时,可以找到并识别一些支持用于过程数据的标签的模块。在这样的情况下,节点管理器210检查用户标签管理器87以确定用户是否在所发现的模块中明确配置了标签。如果是,则那些标签通过轮询或异常报告经过OPC服务器84向用户进行揭示。OPC节点管理器210可能需要对SDA服务器82进行请求以便指示其在DCS中设置点或者从用户所定义标签的模块轮询数值。这些请求中的每一个都将被SDA服务器82所筛选以确保目标模块能够进行所请求的动作,并且处于其能够对该动作进行服务的状态。因此,用户不能对系统中会导致通信问题的无效标签进行配置。用户可以手工配置对于特定外部应用非常重要的过程数据的标签以便确保过程数据被送至该外部应用,原因在于DCS可能无法将所有过程数据发送至单个CIU 34或者可能无法以及时的方式向单个CIU 34提供对于所有过程数据的更新。
现在将关于DCS 10对智能接口系统44的操作进行描述。一旦启动智能接口系统44(并且特别是SDA服务器82),拓扑寻找器85发现DCS 10的拓扑并且将其添加至拓扑模型数据库88。按照预定间隔定期更新拓扑模型数据库88,该间隔是可配置的。当网络服务器应用200从DCS 10中的特定模块(处于特定地址的)接收到针对数据的请求,该请求就被转发至拓扑模型数据库88以便确定该地址(回路、节点、模型等)是否有效以及所请求的数据是否能够从该地址处的特定模块和/或节点所获得(即,被其所支持)。如果拓扑模型数据库88确定了该地址有效并且能够从处于该地址的模块获取所请求的数据,则该请求被转发至API通道182,其作用于该请求以通过API封装器196、API 80和CIU 34a而从模块获取数据,受到任意所要求的节流控制。来自该模块的所请求数据随后通过CIU34a、API 80、API封装器196和API通道182而被传送回网络服务器应用200。
智能接口系统44提供了多种益处。不同于依赖于用户来确保接口中存在有效的DCS配置,智能接口系统44在运行时使用DCS组件的自动发现而自行配置。这意味着由智能接口系统44所揭示的DCS设备已经被识别并且实际存在。用户无法针对并不存在的设备或者如果对其进行访问则会导致系统扰动的设备配置标签或者发出命令。这也将用户从手工验证DCS配置的繁重任务中解放了出来,并且允许智能接口系统44将利用现有系统快速被部署。
另外,DCS发现和自行配置能够被用来阻止并不被DCS中的任意目标设备所支持的命令。由于一些命令仅被某些设备模型所支持,所以这通过防止用户向设备发出不受支持的命令而进一步保护DCS。在将服务于用户请求的任意命令提交至DCS之前,针对在所发现的配置中的目标设备执行查找,该查找包括每个设备的能力的资料。如果目标设备不支持命令,则用户请求被中止。
智能接口系统44进一步的益处在于,智能接口系统44对导致向DCS施加以负载的请求进行节流。通过验证要求并且导致向DCS发出命令的所有请求都受到该节流机制的影响,这限制了针对DCS的突出用户请求并且强制最大的请求速率。所发起的新的请求可能被该节流机制所保持并延迟以便满足这些要求。这导致了一种接口系统,其针对行为不当的客户端应用或无意或有意地试图以将用大量所支持的命令而另外干扰到DCS的方式配置或使用客户端应用的用户更具抵抗力。
所要理解的是,上述(多个)示例性实施例的描述旨在仅是说明性的,而并非是本发明的穷举。本领域技术人员将能够对所公开主题的(多个)实施例进行某些添加、删除和/或修改而并不背离本发明的精神或者其由所附权利要求所限定的范围。

Claims (20)

1.一种用于将外部应用连接至分布式控制系统(DCS)的接口系统,所述接口系统包括具有指令的计算机可读介质,所述指令用于使得计算机执行方法,所述方法包括:
扫描所述DCS以确定其配置;
使用所述DCS的所述确定的配置来构建所述DCS的拓扑模型;
从所述外部应用接收针对来自所述DCS中的模块的数据的外部请求;并且
使用所述DCS的所述拓扑模型确定所述模块是否能够提供所述请求的数据。
2.根据权利要求1所述的接口系统,其中所述方法进一步包括:
如果确定所述模块能够提供所述请求的数据,生成针对数据的内部请求;并且
向所述模块发送针对数据的所述内部请求。
3.根据权利要求2所述的接口系统,其中针对数据的所述外部请求包括所述模块的地址。
4.根据权利要求3所述的接口系统,其中所述确定步骤包括:
确定针对数据的所述外部请求中的所述地址是否是所述拓扑模型中的有效地址;
确定所述拓扑模型中所述地址处的所述模块的类型;以及
确定所述确定的模块类型是否能够提供所述请求的数据。
5.根据权利要求4所述的接口系统,其中如果在针对数据的所述外部请求中的所述地址是所述拓扑模型中的有效地址并且所述拓扑模型中的所述地址处的所述模块类型能够提供所述请求数据,所述方法确定所述模块能够提供所述请求的数据。
6.根据权利要求2所述的接口系统,其中针对数据的所述外部请求是针对数据的第一外部请求,针对数据的所述内部请求是针对数据的第二内部请求,并且其中所述方法进一步包括:
从所述外部应用接收针对来自所述DCS的数据的第二外部请求;
使用所述DCS的所述拓扑模型确定所述DCS是否能够提供在针对数据的所述第二外部请求中所请求的数据;
如果确定所述DCS能够提供在针对数据的所述第二外部请求中所请求的数据,生成针对数据的第二内部请求;
确定自接受到针对数据的所述第一外部请求起是否已经过去了预定时间段;以及
如果所述预定时间段还没有过去,则保持针对数据的所述生成的第二内部请求。
7.根据权利要求6所述的接口系统,其中所述方法进一步包括:
确定是否已经向所述模块发送了针对数据的所述第一内部请求;以及
如果还未对所述模块发送针对数据的所述第一内部请求,则保持针对数据的所述生成的第二内部请求。
8.根据权利要求1的所述接口系统,其中所述方法进一步包括在多个类中存储所述拓扑模型,并且其中在所述类的每个类中的对象上放置读/写锁,对象上的每个读/写锁防止在对所述对象进行改变的同时从所述对象数据的读取,并且反之亦然。
9.根据权利要求8所述的接口系统,其中所述类包括回路类、节点类和模块类,并且其中所述DCS包括回路、在所述回路上的多个节点以及每个节点中的多个模块,并且其中用于所述回路的对象存储在所述回路类中,用于所述节点的对象存储在所述节点类中并且用于所述模块的对象则存储在所述模块类中。
10.根据权利要求1所述的接口系统,其中所述接口系统可操作以将所述外部应用连接至多个分布式控制系统。
11.根据权利要求1所述的接口系统,其中针对数据的所述外部请求包括针对来自所述模块的诊断数据的请求。
12.根据权利要求11所述的接口系统,其中所述诊断数据包括从由存储器使用、错误计数、通信度量、固件水平、程序执行度量、错误状态以及以上所述的组合所构成的群组中所选择的数据。
13.根据权利要求1所述的接口系统,其中所述DCS包括具有与之连接的多个节点的回路、包括连接至通信总线的多个基于微处理器的控制器的节点,并且其中所述回路包括单向、高速串行数据网络。
14.根据权利要求13所述的接口系统,其中针对数据的所述外部请求是SOAP消息。
15.一种将外部应用连接至分布式控制系统(DCS)的方法,所述方法包括:
扫描所述DCS以确定其配置;
使用所述DCS的所述确定的配置来构建所述DCS的拓扑模型;
从所述外部应用接收针对来自所述DCS中的模块的数据的外部请求;以及
使用所述DCS的所述拓扑模型确定所述模块是否能够提供所述请求的数据。
16.根据权利要求15所述的方法,进一步包括:
如果确定所述模块能够提供所述请求的数据,生成针对数据的内部请求;以及
向所述模块发送针对数据的所述内部请求。
17.根据权利要求16所述的方法,其中针对数据的所述外部请求包括所述模块的地址。
18.根据权利要求17所述的方法,其中所述确定步骤包括:
确定针对数据的所述外部请求中的所述地址是否是所述拓扑模型中的有效地址;
确定所述拓扑模型中所述地址处的所述模块的类型;以及
确定所述确定的模块类型是否能够提供所述请求的数据。
19.根据权利要求18所述的方法,其中如果在针对数据的所述外部请求中的所述地址是所述拓扑模型中的有效地址并且所述拓扑模型中所述地址处的所述模块类型能够提供所述请求的数据,所述方法确定所述模块能够提供所述请求的数据。
20.根据权利要求15所述的方法,其中所述方法进一步包括在多个类中存储所述拓扑模型,并且其中在所述类的每个类中的对象上放置读/写锁,对象上的每个读/写锁防止在对所述对象进行改变的同时从所述对象读取数据,反之亦然。
CN2011800553589A 2010-10-12 2011-09-16 用于分布式控制系统的智能接口 Pending CN103221891A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US39246710P 2010-10-12 2010-10-12
US61/392,467 2010-10-12
PCT/US2011/051934 WO2012050734A1 (en) 2010-10-12 2011-09-16 Intelligent interface for a distributed control system

Publications (1)

Publication Number Publication Date
CN103221891A true CN103221891A (zh) 2013-07-24

Family

ID=44681440

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2011800553589A Pending CN103221891A (zh) 2010-10-12 2011-09-16 用于分布式控制系统的智能接口

Country Status (9)

Country Link
US (1) US20120089239A1 (zh)
JP (1) JP2013542524A (zh)
CN (1) CN103221891A (zh)
AU (1) AU2011314240A1 (zh)
BR (1) BR112013008748A2 (zh)
DE (1) DE112011103443T5 (zh)
GB (1) GB2498474A (zh)
RU (1) RU2013121569A (zh)
WO (1) WO2012050734A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105793786A (zh) * 2013-12-10 2016-07-20 西门子公司 用于控制工厂网格的方法
CN107683588A (zh) * 2015-05-21 2018-02-09 恩德莱斯和豪瑟尔过程解决方案股份公司 自动拓扑扫描
CN108494763A (zh) * 2018-03-16 2018-09-04 沈阳中科博微科技股份有限公司 一种opc-ua数据通信处理方法
CN115167316A (zh) * 2022-08-04 2022-10-11 中国核动力研究设计院 一种核电厂dcs平台的协同处理方法、系统及存储介质

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103558809B (zh) * 2012-05-09 2019-06-18 布里斯托尔D/B/A远程自动化解决方案公司 配置过程控制设备的方法和装置
US10795341B2 (en) * 2013-07-30 2020-10-06 Dmg Mori Aktiengesellschaft Control system for controlling operation of a numerically controlled machine tool, and back-end and front-end control devices for use in such system
US9604407B2 (en) 2013-12-03 2017-03-28 Xerox Corporation 3D printing techniques for creating tissue engineering scaffolds
US9785490B2 (en) 2014-12-23 2017-10-10 Document Storage Systems, Inc. Computer readable storage media for dynamic service deployment and methods and systems for utilizing same
CN105812253A (zh) * 2014-12-29 2016-07-27 中国科学院沈阳自动化研究所 一种opc ua数据服务网关装置及其实现方法
US9989955B2 (en) 2015-07-09 2018-06-05 Honda Motor Co., Ltd. System configuration management using encapsulation and discovery
SG10201505489QA (en) * 2015-07-14 2016-07-28 Yokogawa Engineering Asia Pte Ltd Systems and methods for optimizing control systems for a process environment
JP6897452B2 (ja) * 2017-09-22 2021-06-30 横河電機株式会社 情報収集システム
JP2019057196A (ja) * 2017-09-22 2019-04-11 横河電機株式会社 情報収集装置、情報収集方法
US11775307B2 (en) 2021-09-24 2023-10-03 Apple Inc. Systems and methods for synchronizing data processing in a cellular modem

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5233510A (en) * 1991-09-27 1993-08-03 Motorola, Inc. Continuously self configuring distributed control system
US6571140B1 (en) * 1998-01-15 2003-05-27 Eutech Cybernetics Pte Ltd. Service-oriented community agent
US20030236576A1 (en) * 2001-06-22 2003-12-25 Wonderware Corporation Supervisory process control and manufacturing information system application having an extensible component model
EP1906274A2 (en) * 2006-09-29 2008-04-02 Rockwell Automation Technologies, Inc. Web-based configuration server for automation systems
US20100247096A1 (en) * 2001-06-13 2010-09-30 Jeffrey Kenneth Emery Network Operating System With Topology Autodiscovery

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SE519905C2 (sv) * 2001-10-05 2003-04-22 Abb Ab Dataåtkomstmetod för ett styrsystem
US7606890B1 (en) * 2002-06-04 2009-10-20 Rockwell Automation Technologies, Inc. System and methodology providing namespace and protocol management in an industrial controller environment
US7233830B1 (en) * 2005-05-31 2007-06-19 Rockwell Automation Technologies, Inc. Application and service management for industrial control devices
US7533111B2 (en) * 2005-12-30 2009-05-12 Microsoft Corporation Using soap messages for inverse query expressions
US8352912B2 (en) * 2008-12-15 2013-01-08 International Business Machines Corporation Method and system for topology modeling

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5233510A (en) * 1991-09-27 1993-08-03 Motorola, Inc. Continuously self configuring distributed control system
US6571140B1 (en) * 1998-01-15 2003-05-27 Eutech Cybernetics Pte Ltd. Service-oriented community agent
US20100247096A1 (en) * 2001-06-13 2010-09-30 Jeffrey Kenneth Emery Network Operating System With Topology Autodiscovery
US20030236576A1 (en) * 2001-06-22 2003-12-25 Wonderware Corporation Supervisory process control and manufacturing information system application having an extensible component model
EP1906274A2 (en) * 2006-09-29 2008-04-02 Rockwell Automation Technologies, Inc. Web-based configuration server for automation systems

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105793786A (zh) * 2013-12-10 2016-07-20 西门子公司 用于控制工厂网格的方法
US10372098B2 (en) 2013-12-10 2019-08-06 Siemens Aktiengesellschaft Method for controlling a grid of plants
CN107683588A (zh) * 2015-05-21 2018-02-09 恩德莱斯和豪瑟尔过程解决方案股份公司 自动拓扑扫描
US10771339B2 (en) 2015-05-21 2020-09-08 Endress+Hauser Process Solutions Ag Automated topology scan
CN108494763A (zh) * 2018-03-16 2018-09-04 沈阳中科博微科技股份有限公司 一种opc-ua数据通信处理方法
CN108494763B (zh) * 2018-03-16 2020-10-16 沈阳中科博微科技股份有限公司 一种opc-ua数据通信处理方法
CN115167316A (zh) * 2022-08-04 2022-10-11 中国核动力研究设计院 一种核电厂dcs平台的协同处理方法、系统及存储介质
CN115167316B (zh) * 2022-08-04 2024-05-14 中国核动力研究设计院 一种核电厂dcs平台的协同处理方法、系统及存储介质

Also Published As

Publication number Publication date
US20120089239A1 (en) 2012-04-12
GB2498474A (en) 2013-07-17
GB201306315D0 (en) 2013-05-22
WO2012050734A1 (en) 2012-04-19
DE112011103443T5 (de) 2013-08-14
JP2013542524A (ja) 2013-11-21
RU2013121569A (ru) 2014-11-20
AU2011314240A1 (en) 2013-05-02
BR112013008748A2 (pt) 2019-09-24

Similar Documents

Publication Publication Date Title
CN103221891A (zh) 用于分布式控制系统的智能接口
CN108600029B (zh) 一种配置文件更新方法、装置、终端设备及存储介质
CN110794800B (zh) 一种智慧工厂信息管理的监控系统
CN100580623C (zh) 在集成应用之间保持数据一致性的方法和装置
US20140228978A1 (en) Method for generating and handling applications for components of a distributed control system and engineering system for implementing the process
CN104615486B (zh) 用于搜索推广平台的多任务调度和执行方法、装置和系统
CN102045192A (zh) 网络结构的假定所用的装置及系统
CN105556499A (zh) 智能自动缩放
US20200382365A1 (en) Updating software in cloud gateways
CN111026602A (zh) 一种云平台的健康巡检调度管理方法、装置及电子设备
CN108009258A (zh) 一种可在线配置的数据采集与分析平台
US10466686B2 (en) System and method for automatic configuration of a data collection system and schedule for control system monitoring
CN111641516B (zh) 进程控制系统中节点的在线重新配置
US11500690B2 (en) Dynamic load balancing in network centric process control systems
CN113448947B (zh) 一种mongo数据库分布式部署运维的方法和装置
CN108173711B (zh) 企业内部系统数据交换监控方法
CN104423963A (zh) 控制程序管理装置、信息处理装置及控制程序处理方法
CN105550094B (zh) 一种高可用系统状态自动监控方法
Basile et al. Modelling automation systems by UML and Petri Nets
CN109840184B (zh) 电网设备投运展示的调度方法、系统及设备
CN113553163A (zh) 一种基于调度器的Jenkins应用部署方法及装置
CN110998519A (zh) 用于配电网的分层设备软件更新
CN117477779A (zh) 一种变电站监控系统的多业务组态配置器及配置方法
CN105580000A (zh) 对等网络中的任务分发
CN117709841A (zh) 一种设备管理方法、装置、电子设备及存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20130724