CN107678412A - 利用覆盖的派生的和链接的定义 - Google Patents

利用覆盖的派生的和链接的定义 Download PDF

Info

Publication number
CN107678412A
CN107678412A CN201710969588.5A CN201710969588A CN107678412A CN 107678412 A CN107678412 A CN 107678412A CN 201710969588 A CN201710969588 A CN 201710969588A CN 107678412 A CN107678412 A CN 107678412A
Authority
CN
China
Prior art keywords
graphic element
definition
element object
user
module
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
Application number
CN201710969588.5A
Other languages
English (en)
Other versions
CN107678412B (zh
Inventor
C·斯科特
M·M·菲尔金斯
K·R·贝尔维尔
B·M·琼斯
M·G·奥特
D·马鲁彻拉
L·O·琼德
J·M·卢卡斯
M·J·刘易斯
S·G·汉马克
S·C·吉尔伯特
M·J·沙利文
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.)
Fisher Rosemount Systems Inc
Original Assignee
Fisher Rosemount Systems Inc
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 Fisher Rosemount Systems Inc filed Critical Fisher Rosemount Systems Inc
Publication of CN107678412A publication Critical patent/CN107678412A/zh
Application granted granted Critical
Publication of CN107678412B publication Critical patent/CN107678412B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • 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/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B15/00Systems controlled by a computer
    • G05B15/02Systems controlled by a computer electric
    • 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/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0428Safety, monitoring
    • 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]
    • 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/41845Total 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 system universality, reconfigurability, modularity
    • 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/4186Total 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 protocol, e.g. MAP, TOP
    • 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/4188Total 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 CIM planning or realisation
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B23/00Testing or monitoring of control systems or parts thereof
    • G05B23/02Electric testing or monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • 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/24Pc safety
    • G05B2219/24215Scada supervisory control and data acquisition
    • 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/25067Graphic configuration control system
    • 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/31418NC program management, support, storage, distribution, version, update
    • 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/31467Display of operating conditions of machines, workcells, selected programs
    • 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/31472Graphical display of process
    • 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/32Operator till task planning
    • G05B2219/32128Gui graphical user interface
    • 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/33Director till display
    • G05B2219/33273DCS distributed, decentralised controlsystem, multiprocessor
    • 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 Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Manufacturing & Machinery (AREA)
  • Quality & Reliability (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Stored Programmes (AREA)
  • User Interface Of Digital Computer (AREA)
  • Programmable Controllers (AREA)
  • Testing And Monitoring For Control Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

用于灵活配置操作过程工厂或过程控制系统的技术使得对父对象的改变能够选择性地传播到从父对象派生的子对象,以使得子对象的第一子集和它们相应的实例化随着该改变而更新,而第二子集和相应的实例化保持不变。父对象可以是对应于过程实体的类或实例过程对象,子对象的第一和/或第二子集可被选择。过程控制系统或工厂的灵活配置允许例如在配置环境中对父过程对象做出草案改变或修改,而不自动触发父过程对象和/或其派生的子对象被相应地实例化和/或下载到运行时系统。允许该草案修改的父对象可以包括类对象、实例对象和/或库对象。此外,过程工厂中的灵活图形元素对象在过程被控制的运行时操作环境中以及在配置环境中都是可配置的。

Description

利用覆盖的派生的和链接的定义
本申请是申请号为201380064166.3、名称为“动态可重用类”的分案申请。
相关申请的交叉引用
本申请要求2012年10月8日提交的、名称为“Process Plant ConfigurationsUsing Flexible Objects”的美国临时申请No.61/711,110的权益,将其全部内容引入于此以供参考。此外,本申请要求2012年10月8日提交的、名称为“Configurable User Displaysin a Process Control System”的美国临时申请No.61/711,105的权益,将其全部内容引入于此以供参考。
此外,本申请与同时提交的、名称为“Method and Apparatus for ManagingProcess Control Configuration”的美国申请No.______有关,将其全部内容引入于此以供参考。本申请还与同时提交的、名称为“Derived and Linked Definitions withOverride”的美国申请No._____有关,将其全部内容引入于此以供参考。此外,本申请与同时提交的、名称为“Dynamically Reusable Classes”的美国申请No._____有关,将其全部内容引入于此以供参考。
技术领域
本发明概括而言涉及过程工厂,更具体而言,涉及在配置和查看过程工厂或过程控制系统的操作时使用灵活的对象。
背景技术
分布式过程控制系统,如用于化工、石油或其他过程工厂中的分布式过程控制系统,通常包括一个或多个过程控制器,该过程控制器经由模拟、数字或组合的模拟/数字总线可通信地耦接到一个或多个现场设备。现场设备可以例如是阀、阀定位器、开关和发射器(例如温度、压强、液位和流速传感器),其位于过程环境内并且执行诸如打开或关闭阀、测量过程参数等过程功能。智能现场设备,例如符合已知的现场总线协议的现场设备还可以执行控制计算、报警功能和其他通常实现在控制器内的控制功能。过程控制器也通常位于工厂环境内,其接收指示由现场设备做出的过程测量值的信号和/或与现场设备有关的其他信息,并且执行控制器应用,该控制器应用例如运行不同的控制模块,这些控制模块做出过程控制决策、基于接收的信息产生控制信号以及与现场设备(例如HART和现场总线现场设备)中正在执行的控制模块或块进行协作。控制器中的控制模块通过通信线路向现场设备发送控制信号,从而控制过程工厂的操作。
来自现场设备和控制器的信息通常可以通过数据高速通道被一个或多个其他硬件设备所用,这些硬件设备如通常放置在远离严苛的工厂环境的控制室或其他位置中的操作者工作站、个人计算机、数据历史库、报告产生器、集中式数据库等。这些硬件设备运行例如使得操作者能够执行针对过程的功能的应用,例如改变过程控制例程的设置,修改控制器或现场设备内的控制模块的操作,查看过程的当前状态,查看由现场设备和控制器生成的警报,出于训练人员或者测试过程控制软件的目的而仿真过程的操作,保持和更新配置数据库,等等。
例如,爱默生过程管理公司所销售的DeltaVTM控制系统包括存储在位于过程工厂内的不同位置处的不同设备中所存储和运行的多个应用。位于一个或多个操作者工作站中的配置应用使得用户能够创建或改变过程控制模块并且经由数据高速通道将这些过程控制模块下载到专用的分布式控制器。通常,这些控制模块由可通信地互连的功能块构成,它们是面向对象的编程协议中的对象,用于基于输入来执行控制方案中的功能以及向控制方案中的其他功能块提供输出。该配置应用还允许配置设计者创建或改变由查看应用所使用的操作者界面以向操作者显示数据,以及使得操作者能够改变过程控制例程中的设置,例如设置点。每个专用的控制器,以及在某些情况下,一个或多个现场设备,存储并执行相应的控制器应用,该控制器应用运行分发给它并下载给它的控制模块,以实现实际的过程控制功能。查看应用可以在一个或多个操作者工作站(或者与操作者工作站和数据高速通道可通信地连接的一个或多个远程计算设备)上运行,经由数据高速通道从控制器应用接收数据并且将该数据显示给过程控制系设计者、操作者或者使用该用户界面的用户,并且可以提供任意数量的不同视图,例如操作者视图,工程师视图,技术人员视图,等等。数据历史库应用通常存储在数据历史库设备中并且由其运行,该数据历史库设备收集并存储跨数据高速通道提供的部分或所有数据,而配置数据库应用可以在附接到该数据高速通道的另一个计算机中运行,以存储当前过程控制例程配置和与其相关联的数据。或者,配置数据库可以位于与配置应用相同的工作站中。
当前,配置应用通常包括模板对象或项目的库,如功能块模板对象,以及在一些情况下,包括控制模块模板对象。这些配置应用用于配置过程工厂的控制策略并且在过程工厂的用户接口处提供显示视图。模板对象都具有与其相关联的缺省性质、设置和方法。使用配置应用的工程师可以选择这些模板对象并且基本上将所选择的模板对象的副本放置在配置屏幕中以开发模块,例如控制模块。在选择和将模板对象放置在配置屏幕的过程期间,工程师将这些对象的输入和输出互连并且改变它们的参数、名称、标签和其他性质以创建特定控制模块用于过程工厂中的特定应用。在创建了一个或多个这种控制模块之后,工程师可以将所创建的模块存储在库中或者存储在配置数据存储区域中。工程师然后可以实例化控制模块(例如使得创建与控制模块相对应的可扩展文件)并且将其下载到适当的一个或多个控制器、现场设备和其他过程元素以在过程工厂的运行期间执行。
其后,工程师通常通过在显示创建应用中选择和构建显示对象来为过程工厂内的操作者、维护人员等创建一个或多个显示。这些显示通常以系统级实现在一个或多个工作站中,并且向操作者或维护人员提供关于控制系统或工厂中的设备的操作状态的预先配置的显示。通常,这些显示采取报警显示、控制显示、维护显示等形式,其中报警显示用于接收和显示由过程工厂内的控制器或设备产生的警报,控制显示指示在过程工厂内受控的控制器和其他设备的操作状态,维护显示指示过程工厂内的设备的功能状态。这些显示通常被预先配置为以已知方式显示从过程工厂内的过程控制模块、设备或其他过程元素接收的信息或数据。在一些已知的系统中,通过使用对象来创建显示,其中每个对象具有与物理或逻辑元素相关联的图形,并且每个对象可通信地关联到物理或逻辑元素以接收关于该物理或逻辑元素的数据。对象可以基于接收到的数据改变显示屏上的图形以例如显示罐是半满的,显示流量传感器测量的流体流量,等等。
与控制配置应用类似,显示创建应用可以具有模板图形显示项目,如罐、阀、传感器、类似滑杆、开/关开关的操作者控制按钮等,其可以以任何希望的配置放置在屏幕上以创建操作者显示、维护显示等。模板图形显示项目可以与配置对象一起存储在模板库中或者可以存储在不同的模板库中。当放置在屏幕上时,各个图形项目可以在屏幕上以向不同用户提供过程工厂的交互工作的一些信息或显示的形式来互连。然而,为了以动画展示图形显示,显示创建者必须通过指定图形项目和过程工厂内的有关数据源之间的通信链接来手动将每个图形项目与过程工厂内产生的数据(如传感器测量的数据或者指示阀位置的数据等)关联起来。该过程非常冗长、耗时并且可能产生错误。此外,一旦创建了显示,其在其配置和布局中保持静态。
虽然控制配置应用内的控制模板对象和显示创建应用内的显示项目由于能够被复制和使用来创建不同的控制模块和图形显示而非常方便,但是常常需要为过程工厂内的不同设备和显示创建大量的相同控制模块和图形显示。例如,许多中到大型的过程工厂具有相同或类似设备的大量实例,这些实例可以使用相同的基本通用控制模块和显示来控制和查看。
为了解决这一问题,美国专利No.7,043,311(其全部内容被引入于此以供参考)公开了一种过程工厂配置系统,其使用类对象(也称为模型类对象,并且在这里统称为类对象或类)来使得用户能够从一个公共的模块类对象创建大量控制模块、单元或设备模块,或显示模块。这些控制、设备或显示模块被创建为模块类或类对象的实例,并且包括模块类对象的所有特征和性质,从而使得更容易从单个或公共类模块对象创建多个类似的控制、设备或显示对象。实例又可以具有它们自身的子类,使得对象可以具有多代或多级关系。其后,从模块类对象创建的每个实例、子类或多层子类可以通过对其相应的父对象(parentobject)进行改变并存储这些改变而自动改变。例如,模块实例保留它们到模块类对象的连接并在类模块改变或更新时自动更新。类似的,从不是类对象的父对象创建的子对象和多级子对象可以通过对父对象进行改变并存储这些改变而自动改变。在一种实施方式中,子对象中的至少一些存储在与库逻辑和/或物理分离的系统配置数据存储区域或其他数据存储区域中。
然而,在例如过程工厂中使用的典型的控制系统中,可能有数百个类似的项目(如控制模块或显示元素)必须被定义。这些项目包括与例如流量或压强的控制相关联的控制策略,以及用于在图形显示中呈现这些控制策略的显示组件。现在,实现一个使用类或模块类对象来配置这些公共项目的配置系统非常常见,其中该配置系统包括模块类对象的库,并且使得用户能够产生任意特定模块类对象的许多副本或实例以供工厂中使用。在这些系统中,对对象的修改必须首先对模型类对象进行,这然后使得这些改变自动传播到该模块类对象的所有实例、子对象和多级子对象(如果有的话)。事实上,这些配置系统被设计为仅允许直接对模型实例进行少量调整,如改变模型实例中的参数值。例如,控制策略的典型类行为使得仅在参数级别上并且仅在特定参数被授权改变从模块类内进行的访问时才能够修改类项目的实例。结果,可以开发许多不同的模块类对象以配置彼此仅有少量或微小差别的过程工厂项目(如工厂设备)。不幸地,随着定义的这些模块类对象越来越多,通过使用配置类对象获得的原始生产力提高反而降低。
更进一步,如上所述,使用基于类的配置项目的当前配置系统通常被设计为保证当对类项目进行改变时,该改变立即传播到该类的所有模块实例。这一特征被设计到配置系统中,因为实例出于它们的定义而实际上共享或指向它们的相应的父项目或对象(例如,该类项目或对象)。虽然这种自动改变传播特征使得控制系统设计更加简单并且在设计的早期阶段更加有效,但是一旦控制系统在工厂中安装并运行,同时改变与特定模块类对象相关联的所有实例是不可接受的或者不现实的。重要的是,给定的模块类对象通常在其生命周期期间经历许多改变。在模块类对象创建之后,对模块类的后续改变(可能是结构性改变或者参数值改变)导致修改过的模块类,其改变需要被分发给模块实例、分发给一个或多个子对象和/或分发给其他模块类,如派生的模块类。然而,实际上,在工厂中运行的每个受影响的子对象可能需要在实际的过程设备上进行单独测试和验证,并且因此用户可能需要将对模块类对象的改变延迟几个月或几年以等待适当的时间来更新该类对象的所有模块实例。此外,由于对模块类对象的改变被自动分发给派生的对象,所以对模块类的简单改变将影响数百个,甚至可能数千个模块实例和子对象。许多过程工业不能处理在工厂操作阶段期间扩展该工厂的多个区域所需要的破坏性下载。结果是,控制系统被初始设计具有关联到模块类对象的模块实例,只用于在系统进入工厂操作阶段之前被最终转换到无类控制模块的这些实例。
出于上述各种原因,类实例在许多情况中被中断或者与原始的类对象解除关联以使得能够对类实例进行改变,这从而创建了新的类模块或者允许对类对象进行改变而不被立即传播给所有实例。然而,这一操作首先破坏了使用基于类的配置对象的优点。
即使在类/实例连接不被切断的较小系统中,仍然难以在不影响该类中的所有实例的情况下定义或调试对控制对象的新改变,因为一方面,不可能在实例上实现新改变,另一方面,当对类对象做出任何改变时,该改变将自动应用于类对象的每个实例。这里,再次,子对象中的一个(例如一个实例)必须被从类对象暂时断开,以使得能够在该实例上设计和测试新改变。在这种情况下,一旦改变完成,将必须手动对类对象进行改变,并且用户必须清除用于测试的实例并将该实例重新附接到其适当的类对象。这样,实际上,为了处理这些问题,用户必须创建整个单独的类对象以通过将越来越多的类与用于测试目的的原始类对象断开来处理实例之间的轻微改变,或者必须完全放弃类概念。
进一步的,当前市场中使用的大多数配置系统不使用类来配置控制系统的图形显示。典型的,图形与控制策略单独地定义,并且一个图形项目通常与多个不同的控制策略类一起使用。因此,当对特定图形项目作出改变时,用户必须核实改变后的图形项目与所有策略实例在所有显示上一起工作。当以上述方式出现对控制策略的改变并且控制策略类激增时,每个实例的每个图形项目需要被验证,这非常耗时并且不实用。
虽然图形使用可以用于更新类似的图形项目,然而该使用将使得所有所选的图形项目相同。这样,最终,该方案类似于使用图形项目的类。此外,设计图形形式的实例差很困难并且需要编程技巧。由于各种各样的改变都是允许的并且事实上在图形项目中是希望的,因此需要使用特殊形式设计指定了在从公共图形对象创建的每个图形显示项目中以覆盖(override)结构允许或支持哪些改变。这些改变例如包括指定诸如允许一个实例上的用户为该项目的一部分定义旋转、选择必须在显示中示出哪些串和变量,以及哪些是可选的,之类的改变。没有这些预先设计,图形对象甚至不能对其作出微小的改变。不幸的是,试图设计或预先指定图形项目中的可允许的改变的配置系统很快变得不可用,因为对图形项目的改变非常普遍。结果是,有效地维持图形成本是控制系统中正在进行的问题,并且只在维持图形的步骤必须与对控制配置系统中使用的控制模块类做出的改变相协调时才加剧。
更概括而言,用户想要使用可重用的图形组件配置显示,并且能够看到他们做出的与原始图形定义的改变。此外,他们想要能够在一个地方对定义做出改变,并且使得这些改变应用于图形定义所用于的显示,其后维持他们对各种显示做出的特定改变。当前,在一些显示系统中,显示组件可以分组为动态模型(dynamo),其是基本图形的组合,如配置有动画和事件句柄行为的矩形和文本块。这些基本形状可被配置为各种组合以代表来自工厂部分的设备或数据。一些动态模型通常作为显示配置系统的一部分而立即可用,而其他动态模型被项目工程创建和维持,并且还有一些其他动态模型被顾客配置。当前,当这些动态模型在显示上使用时,完整的副本被放置在使用原始动态模型的每个实例的显示中。然而,并没有回到原始动态模型的硬链接。然而,每个实例可以改变动态模型的若干个方面,如动画表达路径、位置朝向或允许该特定显示匹配在使用显示元素的用户接口的当前显示域内的其他可视方面。
该方案有几个问题和限制。概括而言,顾客试图使得财务成本最小化并且试图使得显示的质量和可靠性最大化。然而,动态模型定义总是需要一个或多个改变。在对主或原始动态模型做出改变之后,顾客需要通过更新使用该特定动态模型的所有显示来将那些改变投入生产。然而,由于正被改变的原始动态模型及其副本之间没有硬链接,因此确定动态模型用在哪里是一个严重的问题。通常,创建的每个动态模型包括串域,用于存储动态模型名称和版本。然而,不是所有顾客都使用该技术,并且在任意情况下,该域可能在编辑会话期间被用户不经意地清除或删除,从而失去回到原始动态模型的命名连接。此外,如果新的动态模型从已有的动态模型创建,并且该参考值没有更新,则串将具有到原始动态模型名称和版本的不正确参考。此外,如果差是显示上的改变或对动态模型的改变,则只可能知道动态模型中什么是不同的,但是不知道为什么。因此,用户难以确定当对原始动态模型做出改变时是否需要向特定显示中正使用的特定动态模型结合该改变。
进一步的,虽然用户能够将实例更新到新的动态模型并且保持实例特定改变,但是用户通常不知道哪些改变在新的主控中,以及哪些是特定于实例的,因此不能确定显示项目内的哪些差应当留在原处。当前,更新到动态模型的新版本需要完全重新拷贝动态模型以代替在显示上配置的值。该过程重写了显示项目上的任何特定于实例的改变。结果是,用户然后必须手动重新应用之前对显示项目或实例做出的所有改变,并且如果用户忘掉了一些改变,则这些改变将丢失。这一操作不利的影响操作者显示的质量并且还消耗更长时间,因为其实现了一个手动的过程。更进一步的,原始动态模型级别只是一级深度的。结果是,动态模型只能从基本图形构造而来而不能从其他动态模型构造而来,这防止了构建用于其他动态模型的基础的一组动态模型。
发明内容
配置系统使用灵活的或可修改的对象(例如模块类对象、模块实例对象和子对象)技术来使得基于类的配置在开发新的控制策略或显示元素时以及在当这些元素在工厂环境中运行或执行时对这些元素做出改变时能够更有用和更有利。这种配置系统在这里可交换地称为“灵活配置系统”或“配置系统”。更具体而言,使用新的灵活对象降低了类对象的扩散并且通过允许从类对象做出的实例之间的更多改变而使得单个类对象可以应用于各种各样的应用(使用)。具有新的灵活对象的配置系统允许用户根据特定需要例如向基于类的实例(或其他子对象)添加项目,但是以不迫使实例或子对象从类移除或解除关联的形式并且以不会影响同一个类的其他实例的形式,除非用户希望对其他实例或父对象本身做出那种改变。类似的,添加到实例或子对象的项目可以在实例或子对象内被标记,并且可以被附加标签以不干扰在父级别上以及出于文档清理目的而添加的任何事物。进一步的,具有新的灵活对象的配置系统支持子级别处的父内容的禁用和/或子级别处的父内容的删除。在子级别禁用或删除父内容例如允许用户更好地处理比剩余类实例具有更少功能的实例,同时仍然使得核心类功能保留类的一部分。如果希望,子级别处被禁用的任何内容可以被可视地变为无色或者在支持查看子级别的配置使用中变得不可见,并且能够被用户在任意时间重新启用。禁用的内容在运行时将不再使用,但是仍然保留在配置环境中。如果用户决定在子对象内包括之前禁用的父对象的部分,则该子对象可以被标记用于下载以更新控制系统中的运行时版本。
此外,使用灵活对象的配置系统通过允许将改变或更新以分阶段形式分发给实例和子对象而使得类在运行工厂中更加有用。例如,用户或配置工程师可以通过允许用户对类对象做出改变并且决定该类对象的哪个实例以及在什么时间应当接收那些改变来将类改变向下传播到实例,这导致工厂性能提高并且运行时支持更好,而不是迫使所有类改变立刻传递给该类的所有实例。这种分阶段特征允许用户做出类改变并且将该改变仅传播到需要改变的实例。用户然后可以稍后返回并且将该改变传播给更多实例或者剩余实例。更具体地,这种分阶段特征允许用户基于当前工厂操作考虑决定哪个实例可以使得向其下载配置更新并且可以在流体时间线上分阶段引入类改变,这在过程操作中是有意义的,而不是必须手动管理下载或者同时向所有实例执行自动下载。
作为另一个特征,使用灵活对象的配置系统通过选择性地将实例改变传播给类对象而提高了用户递增地做出和验证改变的能力。例如,配置系统使得用户能够采取在一个实例上做出的改变并且将该改变传播回类对象以分发回剩余实例。该特征向用户提供了内置的测试环境,其中用户能够在将一个改变转出(roll out)到类对象的所有其他实例之前改变和测试一个实例。
可以理解,本文描述的配置系统保持了基于类的行为的优点,同时该系统提供了使得用户能够控制将改变从模块类和其他父对象转出到控制器、设备、显示器或过程工厂或过程控制系统内的其他过程元素中运行的模块实例和其他子对象,例如在过程工厂或系统的运行时操作环境中。这样,本文描述的配置系统允许将对模块类和其他父对象的改变结合到过程工厂或过程控制系统的(对应于父对象和相应的子对象的)过程元素中,从而以受控的、随时间分阶段的形式改变工厂或系统操作和/或行为,使得过程工厂或者过程控制系统的一部分中(或者在一些情况下,在整个工厂或者系统中)的实时操作不被不利地影响。在一些情况下,对父对象的改变不被传播给子对象。此外,由于改变可以以受控的形式递增地应用于过程工厂或者系统的过程元素(例如,代替等待直到与所改变的父对象的子对象相对应的所有过程元素都适合的更新的时间),所以在将改变应用于过程工厂或者过程控制系统的一部分(或者在一些情况下,应用于整个工厂或者系统)时的不必要的延迟的出现被减少,从而提高了过程工厂或者系统随着时间的总体效率和生产率。
此外,本文描述的技术、系统和方法允许用户安全地在父或子对象的临时副本上进行工作,并且使得父或子对象准备好仅在接收到适当的批准时部署(下载)到控制器、设备或其他过程元素。这样,在过程工厂或者控制系统的运行时环境中批准过程元素中应用的或者实例化的修改或改变的草案(来自改变的父对象或者改变的子对象)降低了向工厂或者系统中不利地结合不完整的或者不正确的修改或改变的机会。也就是说,通过使用本文所描述的草案和批准技术,配置系统提高了结合到过程工厂或者系统的改变的准确性,并且从而提高了过程工厂或者系统的操作质量。
在一种情况下,配置系统可以通过使用可能松散地基于图书发布模型的编辑和分发机制来执行分阶段,其中用户对最终批准的草案进行工作,产生被分发给工厂内的各个位置的版本。一些控制器、显示或其他工厂资产将在最新的版本发布时得到或使用该最新的版本,而其他可以仅在其非常希望或者方便这么做时才结合或更新到新版本。进一步的,使用该系统,用户能够对配置库和系统配置项目作出改变而不会触发下载并且不可能影响运行中的系统。用户可以将对项目或对象的修改保存为草案,并且一旦改变被批准,能够创建被分发和下载给运行中的系统的版本。更具体而言,在配置系统中,模块实例(和其他子对象)被连接到模块类或父对象的特定版本,这使得模块类或父对象有可能经过附加的改变(版本)而不立即影响其子。这样,在示例性例子中,该特征使得不必每次对模块类做出改变时都下载模块实例,而是使得用户能够控制模块实例被更新以链接到模块类的最新版本的时间。事实上,不管父对象是否是库项目,子对象被连接到它们的父对象的特定版本,从而允许父对象的改变或修改不立即影响其所有子对象。
因此,使用本文所述的配置系统的分阶段技术,用户可以选择对库项目或父对象的改变是否被自动分发给子对象,或者用户是否将手动管理该分发。此外,父库和系统配置项目可能经历草案、版本和(对于系统配置项目)下载版本的多个阶段。这里,用户可以创建父对象的临时副本(草案),并且仅当获得适当的批准时将修改后的项目版本下载到运行中的系统,这表示可以在不影响运行的系统的情况下对草案项目进行测试。类似的,为了改进用户体验以及使得用户控制时感觉更好,用户可以看到草案、当前版本和已下载的版本之间的差异。在特定项目的情况下,用户可以选择查看草案和当前版本之间、草案和已下载的版本之间、当前版本和已下载的版本之间等的差异。此外,库和系统配置项目可以支持参考,在这种情况下有可能查看哪些系统配置项目使用了库项目,以及系统配置项目是否在使用该库项目的最新版本。
更进一步的,在模块类和实例结构中使用版本使得有可能创建包,其是特定父项目版本的基本版本集合,并且分发这些包以供同时下载。该特征使得能够定义与特定方案或问题有关的库包,并且根据该库包可以创建大多数或者所有必需的工厂配置。其后,当包被更新以纠正问题或提高功能时,可以通过安装与包同时包含的库项目的新版本来安装包的新版本。然后用户可以根据工厂场景的允许来自由更新系统配置,这消除或降低了当前配置系统中产生的需要对父项目进行更新以立即用于更新其子项目的逻辑问题。例如,本文描述的配置系统可以用于管理库和系统配置项目,包括工程单元、警报设置和全局值、安全对象(如用户账户、功能和参数安全性以及授权策略),并且还可以应用于用户产生的文档,如标准操作过程(SOP)、启动/停止过程、警报帮助等。
在显示项目的情况下,配置系统的灵活对象使得用户能够创建链接的图形可配置形状(例如图形元素模块(Graphical Element Modules)或GEM),该图形可配置形状可重用并且将其他形状与行为进行组合。GEM提供了可配置形状的一个或多个可视化表示或视图。GEM的定义存储与该GEM在特定显示和其他对象中的使用/实例分开存储(例如以使得能够共享GEM定义)。此外,配置系统的灵活对象支持定义图形定义或者从其他图形定义派生出图形定义(例如显示和GEM)。例如,一个GEM可以使用其他GEM构建。
典型的,对父对象的覆盖、改变或修改导致对实例或子对象的相应改变。配置系统的灵活对象扩展了该覆盖概念以允许使用控制策略功能块所支持的简单参数覆盖来对显示项目的内部结构进行改变。这些附加的覆盖例如可以包括对性质、动画和事件句柄的覆盖,支持添加图形形状、动画或事件句柄的覆盖,支持图形形状的移动的覆盖和/或支持图形形状、动画或事件句柄的移除的覆盖。特定显示实例的覆盖可以与实例一起而与GEM定义分开地存储,以使得有可能知道与显示实例中使用的GEM定义中已经做出的改变相比,哪些改变是特定于显示实例的。这样,对GEM和其他显示对象(父或子对象)的覆盖可以包括对GEM和其他显示对象的内容的修改和改变。
此外,当加载显示时,GEM定义可以用于定义显示项目的初始表示、动画和事件处理行为。其后,可以根据需要将覆盖应用于显示项目的特定显示实例或者类对象以提供特定于实例的改变。该特征可以使用简单性质覆盖来实现以改变形状的朝向或位置,或者移除形状,或者用一个形状替换另一个形状,如移除原文地显示值的文本框和添加图形地将值显示为填充百分比的矩形。或者,覆盖可以添加动画或事件句柄或者通过改变已有的动画或事件句柄的一个或多个性质来改变已有的动画或事件句柄。在一个实施例中,修改后的覆盖的GEM可以存储或维护为GEM定义的子对象。
此外,显示配置系统使得能够在其他GEM上构建GEM,这允许针对特定功能、产业组或者顾客容易地创建更通用的项目。在一个例子中,可以通过派生来扩展GEM,在这种情况下,可以在派生的GEM中应用相同的覆盖结构,从而允许将显示项目扩展为库中的新的显示类对象,或者扩展为要由操作者在运行时打开的实例。显示配置系统还可以包括使得用户能够容易地确定GEM的(其中使用了GEM的)所有实例并且容易地确定哪些显示是从其他显示派生的的机制。类似的,显示配置系统可以包括使得用户能够决定性地确定派生的定义或用法上已经改变了什么、能够覆盖(调整(tweak))复合图形(例如GEM)的内部结构同时保持到原始GEM定义的链接的关系、能够添加和移除形状、能够添加和移除数据(动画)、能够添加和移除事件句柄、以及能够覆盖形状、动画、事件句柄和GEM定义中的任意其他对象类型的性质的机制。
进一步的,显示配置系统可以包括使得用户能够将定义或派生的定义(显示类项目)更新到新的版本并将那些改变应用到实例而不失去实例的覆盖的机制。显示配置系统还可以包括使得用户能够通过组合其他GEM定义来创建GEM、能够从一个显示派生出另一个显示、能够从一个GEM派生出另一个GEM以及能够指示对显示实例做出的调整和覆盖的机制。
显示配置系统提供的图形元素和显示的灵活配置允许对过程工厂或过程控制系统更加安全有效地实时监控、控制和/或操作。具体而言,显示配置系统允许操作者在工厂的实时或者运行时操作环境中以及在配置环境中,配置为过程控制系统或工厂的一个或多个部分的特定监控、控制和/或操作特别定做或定制的图形元素和/或显示。该图形元素和/或显示可以附加地或者替换地被特别定做或定制用于特定操作者、操作者组、组织实体、商业或其他实体。显示配置实体还允许操作者存储定制的图形元素和/或定制的显示以用于一般性(例如工厂级或系统级、实时环境或配置环境)的访问、使用、重用和结合。因此,由于在过程工厂或系统的多种环境中图形元素和/或图形显示的配置是流线型的并且是可以完全定制的,因此使得操作者能够有效安全地操作过程工厂或系统。
进一步的,由于图形元素和/或显示被定制用于过程工厂或系统的特定部分或实体的特定目的,因此使用定制的图形元素和/或显示能够容易地、快速地识别由过程工厂或系统的特定部分或实体(例如在控制一个或多个过程时)产生的并且需要必要的人工和/或自动干预的实时数据。在一个例子中,在定制的图形元素和/或显示处接收和识别实时数据,并且基于识别的数据的内容,手动和/或自动地产生更新的控制算法并将其发送给过程工厂以执行。在其他例子中,基于接收和识别的数据的内容,恢复动作指令被手动或自动发送给过程工厂或系统的一个或多个过程元素以执行,和/或关闭或初始化指令被发送给过程工厂或系统的一个或多个过程元素以执行。当然,基于接收到的和识别的实时数据向过程工厂或系统发送和/或由其执行其他数据、配置和/或指令也是可能的。在一些情况下,基于识别的实时数据而传递给过程工厂或系统的数据、配置和/或指令导致对过程工厂或系统的改变(例如对过程元素的更新的或新的配置)或者造成对其操作的改变。在一些情况下,所传递的数据、配置和/或指令使得过程工厂或控制系统执行一个动作(例如,从操作中移除特定过程元素、将一个源产生的数据重新路由到另一个源,等等)。
因此,由于显示配置系统允许图形元素和/或显示产生更加定制和详细的信息(更具体而言,针对过程工厂或系统产生的实时数据),对过程工厂或过程控制系统的一个或多个部分的控制和/或操作进行的任何必要修改被更快地确定并结合到过程工厂或控制系统的运行时环境中。因此,利用本文描述的技术、方法和系统,过程工厂或系统的效率和安全性能够进一步提高。
附图说明
图1是位于过程工厂或者过程控制系统内的示例性分布式过程控制网络的方框图,包括实现配置应用的工作站,该配置应用使用模块类对象来配置过程工厂或者过程控制系统的控制和显示活动;
图2是图1的反应器单元的图;
图3是图2的反应器单元中使用的累加器装置实体的图;
图4是图2的反应器单元中使用的出口阀系统的图;
图5是示出了模块类对象和针对该模块类对象的单元、装置、控制和显示类型的相关联的模块对象之间的相互关系的示例性逻辑图;
图6是反应器单元模块类对象的示例性逻辑图,其可以用于执行图1的工厂中的反应器的配置活动;
图7是可以由配置操作者用来使用模块类对象配置过程工厂的配置屏幕的示例性图示;
图8是用户修改图1的过程控制系统的库中存储的模块对象的示例性场景的方框图;
图9是用户修改图1的过程控制系统的库中存储的模块对象的第二示例性场景的方框图;
图10是包括附加动作的图9的第二示例性场景的方框图;
图11是用户修改图1的过程控制系统的系统配置数据存储区中存储的模块对象的第三示例性场景的方框图;
图12是示例性阀图形元素的第三可能视图;
图13示出了示例性的定义使用模式的图;
图14示出了示例性的嵌套定义使用模式的类图;
图15示出了抽象的嵌套定义使用的实例;
图16示出了示例性派生模式的图;
图17示出了嵌套派生模式的实例的图;
图18示出了基于定义创建的形状使用的实例;
图19示出了应用于用法模式上的域值覆盖调整的实例;
图20示出了应用于派生模式上的域值覆盖调整的实例;以及
图21示出了多个基本上对对象的多个修改或调整的实例。
具体实施方式
现在参考图1,过程工厂10包括经由例如以太网连接或总线15耦接到多个工作站14的一个或多个过程控制器12。控制器12还经由多组通信线路或总线18耦接到过程工厂10内的设备或装置,其中图1中仅示出了连接到控制器12a的一组通信线路18。通信线路或总线18例如可以是有线连接、无线连接或者有线和无线连接的组合。控制器12可以利用仅使用Fisher-Rosemount Systems公司销售的DeltaVTM控制器来实现,其能够与控制元素(如分布在整个过程工厂10内的现场设备和现场设备中的功能块)进行通信以执行一个或多个过程控制例程,从而实现过程工厂10或者过程工厂10中操作的一个或多个过程的希望的控制。工作站14(其例如可以是个人计算机)可以由一个或多个配置工程师使用来设计要由控制器12执行的过程控制例程19以及要由工作站14或其他计算机执行的显示例程,并且与控制器12通信以将这样的过程控制例程19下载到控制器12。此外,工作站14可以执行用于接收和显示与过程工厂10或过程工厂10运行期间的元素有关的信息的显示例程。
每个工作站14包括用于存储诸如配置设计应用和显示或查看应用之类的应用以及用于存储诸如与过程工厂10的配置有关的配置数据的数据的存储器20。每个工作站14还包括执行应用以使得配置工程师能够设计过程控制例程和其他例程以及将这些过程控制例程下载到控制器12或其他计算机,或者在过程工厂10的操作期间采集并向用户显示信息。在一些实施例中,远程计算设备与工作站14可通信地连接(例如经由基于网络或web的接口)以使得配置工程师可以从工作站14远程地执行应用。
更进一步的,每个控制器12包括以任意已知形式存储控制和通信应用的存储器22和执行该控制和通信应用的处理器24。在一种情况下,每个控制器12存储和执行用于使用多个不同的、独立执行的控制模块或块19来实现控制策略的控制器应用。每个控制模块19可以由通常称为功能块的东西构成,其中每个功能块是整体控制例程的一部分或子例程,并且与其他功能块(经由称为链路的通信)联合操作以在过程工厂10内实现过程控制环路,例如以控制过程工厂10执行的一个或多个过程的操作。
如公知的,功能块(其可以是面向对象的编程协议中的对象)通常执行输入功能(如与诸如发射器、传感器或其他过程参数测量设备之类的现场设备相关联的输入功能)、控制功能(如与执行PID、模糊逻辑等控制的控制例程相关联的控制功能)或者用于控制某些设备(如阀或其他现场设备)的操作的输出功能中的一种,以在过程工厂10中执行某些物理功能。当然,还存在混合的以及其他类型的复合功能块,如模型预测控制器(MPC)、优化器等等。虽然现场总线协议和DeltaV系统协议使用以面向对象的编程协议设计和实现的控制模块和功能块,但是也可以使用任意希望的控制编程方案,例如包括序列功能图、梯形逻辑等,来设计控制模块,而不限于使用功能块或任意其他特定编程技术来设计。
工作站14可以经由示出了过程控制例程19内的控制元素的显示屏向用户提供控制器12内的过程控制例程19的图形表示以及这些控制元素被配置来提供对过程工厂10的控制的形式。在图1的系统中,配置数据库25连接到以太网总线15以存储控制器12和工作站14所使用的配置数据,并且在一些情况下,通过采集和存储过程工厂10中产生的数据以供未来使用来作为数据历史库。在一个实施例中,配置数据库25可以包括与配置数据相对应的库项目(例如模板和类模块)和系统配置项目(例如从库项目创建的对象)。这样,配置数据库25可以逻辑和/或物理地分为库数据存储区和系统配置存储区。
在图1所示的过程工厂10中,控制器12a经由总线18可通信地连接到三组类似配置的反应器(其是工厂10内的复制设备),这里分别称为反应器01、反应器02和反应器03。反应器01包括反应器容器或罐100、三个输入阀系统(其是设备实体)101、102和103和一个出口阀系统104,其中三个输入阀系统连接以控制流体入口线路分别向反应器容器100提供酸、碱和水,出口阀系统连接以控制流体流出反应器容器100。传感器105可以是任意希望类型的传感器,如液位传感器、温度传感器、压强传感器等,其布置在反应器容器100中或反应器容器100附近。出于讨论的目的,传感器105假设为是液位传感器。此外,共享的总管阀系统110连接在每个反应器01、反应器02和反应器03的水位上游以提供用于控制水向每个反应器的流动的主控制。
类似地,反应器02包括反应器容器200、三个输入阀系统201、202和203、输出阀系统204和液位传感器205,而反应器03包括反应器容器300、三个输入阀系统301、302和303、输出阀系统304和液位传感器305。在图1的例子中,反应器01、反应器02和反应器03可以产生盐,输入阀系统101、201和301提供酸,输入阀系统102、202和302提供碱,输入阀系统103、203和303与共享的水总管一起向反应器容器100提供水。输出阀系统104、204和302可以操作来将产品发送出指向图1右侧的流线并且将废水或其他不希望的材料排出指向图1底部的流线。
控制器12a经由总线18可通信地耦接到阀系统101-104、110、201-204和301-304,以及到传感器105、205和305,以控制这些元素的操作以相对于反应器单元,即反应器01、反应器02和反应器03,执行一个或多个操作。这种操作通常称为阶段,可以包括例如注入反应器容器100、200和300,加热反应器容器100、200和300内的材料,倾倒反应器容器100、200和300,清理反应器容器100、200和300,等等。
图1中所示的阀、传感器和其他设备可以是任何希望的类型或种类的设备,例如包括现场总线设备、标准4-20ma设备、HART设备、无线HART设备,等等,并且可以使用任何已知的或希望的通信协议,如现场总线协议、HART协议、无线HART协议或其他无线协议、4-20ma模拟协议等,与控制器12(例如控制器12或12a中的任一个)。通常,位于过程环境内并且执行直接影响过程的控制的功能(例如诸如打开或关闭阀之类的物理功能、用于控制算法或环路中的测量功能和/或其他功能)的设备在本文中被称为“现场设备”。
更进一步的,根据本文描述的原则,其他类型的设备可以连接到控制器12并且被控制器12控制。例如,控制器12可以连接到一个或多个输入/输出(I/O)设备(未示出),其又可以连接到一个或多个现场设备。I/O设备通常由控制器12使用来支持一个或多个现场设备、控制器12和/或过程控制系统之间的通信。这样,I/O设备还可以是控制算法或环路的直接执行中的参与者以控制过程。因此,在本文中控制器、I/O设备和现场设备被统称并且直接称为“过程控制设备”。当然,术语“过程控制设备”不仅限于控制器、I/O设备和现场设备,还可以包括参与控制算法和/或环路或者控制算法和/或环路所需的其他设备,该控制算法和/或环路要被执行来控制过程工厂或过程控制系统中的过程。
此外,工厂10内可以连接其他数量或类型的控制器以控制与过程工厂10相关联的其他设备或区域,并且这种附加的控制器的操作可以以任意希望的方式与图1中所示的控制器12a的操作进行协作。在一些实施例中,图1的过程工厂10包括过程工厂10内的用于无线通信的一个或多个节点(未示出),如接入点、工厂10内的无线和有线网络之间的网关、到其他网络的网关、工厂10内部或外部的中继器、路由器等等。这些用于无线通信的节点可以(使用有线协议、无线协议或者其组合)可通信地耦接到控制器12、工作站14、配置数据库25、现场设备、其他支持无线的节点和其他数据库或数据存储设备。
概括而言,图1的过程工厂10可以用于实现批处理过程,其中,例如工作站14或控制器12a中的一个执行批执行例程,批执行例程是一个高级控制例程,其指导反应器单元(以及其他设备)中的一个或多个的操作,以执行产生产品(如特定类型的盐)所需的一系列不同步骤(通常称为阶段)。为了实现不同阶段,批执行例程使用通常称为配方的东西,配方指定了要执行的步骤、与步骤相关联的量和事件以及步骤的顺序。一个配方的步骤可以包括,例如使用适当的材料或作料填充反应器容器、混合反应器容器内的原料、将反应器容器内的材料加热到某个温度达某个时间量、清空反应器容器,然后清理反应器容器以准备下一个批处理运行。每个步骤限定了批处理运行的阶段,控制器12a内的批执行例程将为这些阶段中的每一个执行不同的控制算法。当然,每个配方的特定材料、材料的量、加热温度、时间等可以不同,并且从而这些参数可以取决于正在制造或生产的产品和正在使用的配方而在不同批处理运行之间不同。本领域技术人员可以理解,虽然本文针对图1中所示的反应器中的批处理运行描述了控制例程和配置,但是该控制例程可以用于控制其他希望的设备以根据需要执行任意其他希望的批处理运行或者执行连续的处理运行。
还可以理解,可以同时或在不同时间在图1的每个不同的反应器单元上实现批处理的相同阶段或步骤。此外,由于图1的反应器单元通常包括相同数量和类型的设备,所以特定阶段的相同的一般性阶段控制例程可以用于控制不同的反应器单元中的每一个,除了该一般性阶段控制例程必须被修改以控制与不同的反应器单元相关联的不同硬件或设备。例如,为了实现反应器01的填充阶段(其中该反应器单元被填充),填充控制例程将与输入阀系统101、102和103相关联的一个或多个阀打开特定时间量,例如直到液位计105感测到容器100满了。然后,该相同的控制例程可以通过仅仅将输入阀的指定改变到与阀系统201、202和203相关联的那些而不是与阀系统101、102和103相关联的那些并且将液位计的指定改变到液位计205而不是液位计105,来用于实现反应器02的填充阶段。
图2更详细地示出了图1的反应器中的一个,更具体地,反应器01。如图1中类似示出的,图2的反应器01包括反应器罐100、用于向罐100输入酸、碱和水的输入阀系统101、102和103、用于从罐100移除材料的输出阀系统104以及液位传感器105。如图2中进一步示出的,每个输入阀系统101、102和103使用类似的设备实体,称为累加器,其包括彼此平行设置的两个阀和设置在这两个阀的下游的流量测量设备。输入阀系统101的累加器在图3中更详细地示出,其包括称为开/关型阀的粗糙阀101a、称为开/关型阀的精细阀101b和设置在阀101a和101b下游的流量计101c。累加器101具有与其相关联的一个或多个控制模块或例程,用于使用流量计101c做出的测量控制酸的输入。第一个这样的控制例程可以使用粗糙阀101a和精细阀101b通过累加器101执行快速流量控制,而第二个这样的控制例程可以使用粗糙阀101a和精细阀101b通过累加器101执行精确的流量控制。
从图2中可以理解,碱输入阀系统102包括粗糙阀102a、精细阀102b和流量计102c,共享的水输入阀系统110包括粗糙阀110a、精细阀110b和流量计110c。每个累加器101、102和110具有相同类型的复制设备,但是它们用在同一单元(即,反应器01单元)上的不同位置中。类似的,反应器02和反应器03也在输入阀系统201、202、301和302处包括累加器。
类似的,输出阀系统104是包括这三个阀的另一件复制设备。如图4中示出的,输出阀系统104包括主出口阀104a、产品阀104b和排出阀104c,主出口阀104a必须打开以从罐100释放任何材料,产品阀104b必须与主出口阀104a一起打开以从罐100交付产品,排出阀104c必须与主出口阀104a一起打开以从罐100向排出或庇护系统排出材料,如废品、清洗液等。当然,一个或多个控制例程与出口阀系统104相关联以控制阀104a、104b和104c的状态以关闭罐100、排出罐100或从罐100中清空产品。
为了创建和改变过程配置,存储在图1的一个工作站14中的配置应用50包括一组模块类对象52,用于配置过程控制工厂10。模块类对象在配置具有许多组复制设备的工厂时尤其有用。概括而言,可以为过程工厂10内复制或使用的每个不同类型的物理单元或设备、为过程工厂10内复制或使用的每种类型的控制活动、为过程工厂10中复制或使用的每种不同类型的显示应用等创建不同的模块类对象52。在创建之后,模块类对象52可以用于配置过程工厂10的与模块类对象相对应的元素。
模块类对象52本质上是过程实体的一般性版本并且不关联于任何特定过程实体,能够具有与其相关联的更低级对象或实例53、54、55和56(这里称为模块对象或模块块)。本文使用的术语“过程实体”通常是指过程工厂10或环境的子集,其可以被整体识别、分类或分组。例如,过程实体可以是工厂的物理区域、设备的类型、控制功能的类型、或其他类别。过程实体可以包括其他过程实体。例如,与“阀”相对应的过程实体可以包括更低级的过程实体,如“气阀”或“水阀”,并且更低级的过程实体“水阀”可以包括进一步低级的过程实体,如“单向水阀”和“双向水阀”。
如上所述,在本文中所使用的模块类对象通常是过程实体的一般性的或者分类的指示。模块对象53、54、55、56可以从模块类对象创建或派生,因此可以继承与其所创建或派生的模块类对象相同的结构和性质。然而,每个模块类对象关联于过程工厂10内的特定实体。因此,可以创建单个模块类对象52以代表特定类型的反应器单元(不管工厂10内存在多少那些反应器单元),同时可以为工厂10内实际存在的那种类型的不同的反应器单元中的每一个存在或创建不同的模块对象53。
从模块类对象创建或派生的模块对象与模块类对象相关联或由模块类对象拥有。结果是,对模块类对象做出的改变可以反映在或传播到与该模块类对象相关联的每个模块对象。因此,当已经从特定模块类对象创建了多个模块对象,并且每个不同的模块对象关联于不同的过程实体时,可以通过简单地改变模块类对象并将该改变向下传播到相关联的模块对象来改变不同的模块对象中的每一个。如下面讨论的,该传播可以在模块类对象改变时自动发生,或者可以选择传播的时间。
图1的模块类对象52可以是在面向对象的编程环境或语言中通常称为对象的东西。结果是,这些对象能够拥有或指向其他对象。概括而言,模块类对象52是高级对象,其可以包括单独的元素的指示或定义,如与过程实体相关联的控制例程、设备或其他元素,以及那些单独的元素彼此交互的方式的定义或指示,如物理元素互连的方式或者逻辑元素与物理元素相结合地操作的方式。换句话说,模块类对象可以是例如面向对象的编程语言内的对象,该对象提供了控制和查看过程工厂10内的特定件设备或设备组、控制元素、显示器等的基础并且可以用于创建该元素的要被用于在过程控制工厂10内配置不同的复制设备的许多实例。
基本上,每个模块类对象是以所有不同的控制和/或显示应用或例程的形式包括过程实体的一般性定义的配置容器,该不同的控制和/或显示应用或例程可应用于该实体以被控制器12使用以控制该实体或者由工作站14使用来执行针对该实体的显示动作。模块类对象可以表示任意本性的过程实体,如单元、一件设备、控制实体、显示应用等。在过程工厂10的配置期间,模块类对象可以用于为任意数量的不同的过程实体创建符合模块类对象所提供的定义的过程实体的配置实例,每个配置实例(从模块类对象创建的模块对象)与不同的实际过程实体相关联或关联于不同的实际过程实体。这些不同的模块对象除了其他内容外还包括限制于过程工厂10内设置的特定过程实体的控制例程和/或显示例程,这些控制例程能够下载并在图1的控制器12内使用以对过程实体执行实际的控制活动,并且显示例程能够下载到工作站14以在过程工厂10的操作期间执行针对实体的实际显示活动。
不同类型的模块类对象可以反映不同范围的过程实体,并且因此包含配置来对或针对不同范围的过程实体进行操作的控制和/或显示例程。过程实体(如单元)的范围越大,控制和/或显示例程通常与模块类对象的关联越多,并且使用那些模块类对象来配置工厂的不同部分越容易。然而,与模块类对象相关联的过程实体的范围越大,过程包括该范围的复制设备的可能性越小,因此模块类对象在大范围上有用的可能性越小。相反,与模块类对象相关联的过程实体的范围越低,模块类对象能够用于工厂的各种不同位置的可能性越大,但是在任意特定实例中使用该模块类对象时执行的配置的量越少。在任一情况下,模块类对象使得能够针对不同的复制设备在比控制模块级别更高的抽象级别上执行配置,这使得配置具有复制单元和其他设备的过程工厂更加容易并且在使用模块类对象,尤其是大范围的模块类对象(如单元级别)时消耗的时间更少。
因此,多个对象级别是可能的。例如,从模块类对象52创建的与实例53、54、55、56相对应的对象(例如“实例对象”)本身可以是一个或多个实例子对象的集合(未示出)的父对象。一个或多个实例子对象可以是另一个级别的子对象的父对象,等等。如本文中使用的,“过程元素对象”一般是指最低级别的对象,其对应于向其下载了配置的基本过程实体,如阀、传感器、图形形状或者控制器。因此,过程元素对象可以是没有子对象的实例对象。
在一个例子中,当配置过程控制系统时,配置工程师可以为过程工厂内复制的不同元素(例如为图1的不同反应器)创建单个模块类对象。其后,配置工程师可以为图1的每个实际反应器创建该模块类对象的实例(模块对象)。每个这样创建的模块对象将包括控制器12a操作图1的一个反应器所使用的控制例程,并且特别关联于或联系于图1的一个反应器内的设备。这些控制例程然后可以下载到控制器12a并在过程工厂10的操作期间使用。然而,在创建之后,每个模块对象仍关联于模块类对象并且可以被模块类对象控制以改变、向模块对象提供访问或拒绝访问等等。
虽然在过程工厂内可以创建和使用许多不同的可能类型的模块类对象来执行过程工厂内的配置活动,但是这里作为例子讨论的四种具体类型包括单元模块类对象、设备模块类对象、控制模块类对象和显示模块类对象。概括而言,每种不同类型的模块类对象被设计或意图用于过程工厂10内的不同范围的控制或使用。单元模块类对象意图用于表示(并且配置)过程工厂内的宽范围设备的活动。具体而言,单元模块类对象意图用于建模或用于配置互相相关的设备集合(典型的是复制设备),例如图1的反应器,这些设备具有以某种已知方式互相合作的各自的元素。
设备模块类对象意图用于表示(并且配置)过程工厂内的不那么宽范围的物理设备的控制活动。与设备模块类对象相关联的设备通常是构成单元的子系统的一个或多个物理实体,如阀、流量计等,并且设备模块类对象可以包括要在该设备上执行的一个或多个命令或算法,其可以是命令驱动的算法(CDA)、状态驱动的算法(SDA)、序列功能图(SFC)算法、功能块图(FBD)算法、阶段算法等等。因此,设备模块类对象的目标在于配置单元内的多个低级组件或实体的控制,以提供关于该单元内所使用的该设备的一组基础功能。如所知的,当低级组件必须在多个步骤之间协调以完成一个功能时,使用命令驱动的算法(命令驱动的控制逻辑)。例如,阀可能需要打开一段特定时间量,然后闭合,而另一个阀打开然后闭合。图3的累加器101使用这种类型的命令驱动的算法来基于流量计的读数首先启动然后操作粗糙阀和精细阀,以提供通过累加器的希望的总流量。状态驱动的算法(状态驱动的控制逻辑)可以指定可以在单个步骤操纵的不同的低级组件的状态。这种状态驱动的算法可以用于图4的出口阀系统104,其中基于出口阀系统104的希望状态,不同的阀的状态被区别地控制(但是在单个步骤中),以关闭罐100、排出罐100或从罐100交付产品。
控制模块类对象意图用于表示(并且配置)过程工厂内的各个控制元素或控制模块。控制模块类对象提供或指定要在过程实体(如阀、表等)、一件设备或者甚至一个单元上执行的特定类型的控制。概括而言,控制模块类对象提供特定类型的控制编程,如限定了要在控制器中执行的某些控制模块的一组通信互连的功能块,用于执行过程工厂内的复制控制活动。在大多数情况下,控制模块类对象可以提供一般性控制策略来操纵单个设备或一组相关的设备。
显示模块类对象意图用于表示(并且配置)在过程工厂10的操作期间由用户(如控制操作者)查看的显示活动。这样,显示模块类对象可以指定在图1的操作者工作站14内产生某种类型的显示所需的编程以及要在一个或多个工作站14(以及过程工厂10内的任何其他设备)中运行所需的编程,以使得该显示能够在工厂10的操作期间从工厂获取适当的信息。显示类模块的类型例如包括警报显示、配置查看显示、操作查看显示、诊断显示等。当然,显示模块类对象可以提供表示或关联于过程工厂内的物理元素或实体的任何希望的范围的显示。例如,显示模块类对象可以显示关于过程工厂10内的整个区域、单元、一件设备、控制元素或者这些元素的组合的信息。
参考图5,分级图示出了图1的配置应用50中使用的不同类型的模块类对象之间的互连以及模块类对象与从这些模块类对象开发的模块对象之间的相互关系。在图5的图的顶部开始,模块类对象(或在本文中可替换地称为“类对象”)通过模块类类型区分为单元模块类类型400、设备模块类类型402、控制模块类类型404和显示模块类类型406中的一种。当然,也可以提供或使用其他类型的模块类对象,这里所示的四种类型仅仅是示例性的模块类类型。各个模块类对象(其可以例如是面向对象的编程语言中的高级对象,并且出于清楚起见在图5中用双轮廓线表示)落入不同类型的模块类400、402、404和406中的每一种。具体而言,对于过程工厂10内的不同单元或单元类型,可以有许多不同的单元模块类对象。例如,反应器单元类模块对象410可以表示过程工厂10内的反应器的特定类型或配置。类似的,打包者(packager)单元模块类对象412可以表示过程工厂10内的包单元的额定类型或配置,烘干机单元类模块对象414可以表示过程工厂10内的烘干机单元的特定类型或配置。当然,可以有多个反应器单元模块类对象来表示在物理组成上彼此不同的反应器。此外,这里并未试图列出工厂内可以用单元模块类对象表示或建模的所有不同类型的单元,并且本领域技术人员可以认识到,在不同类型的工厂中有许多可以使用单元模块类对象建模或表示的不同类型的单元。
类似的,可以有许多不同的设备模块类对象用于表示、建模和配置过程工厂10内的不同类型的设备。图5中示出的例子包括累加器设备模块类对象416和出口阀设备模块类对象418,每个与过程工厂10内的不同类型的设备(并且优选地是复制设备)相关联。按照相同方式,可以有图5中示出的许多不同类型的控制模块类对象作为开/关阀控制模块类对象422、液位传感器控制模块类对象424和流量计控制模块类对象426。此外,图5中将显示模块类对象显示为警报显示模块类对象432、查看显示模块类对象434和诊断显示模块类对象436。当然,根据本文描述的原理,可以在过程工厂10的配置应用50中创建和使用任意其他希望的单元、设备、控制和显示模块类对象。
每个模块类对象可以具有与其相关联的或者由其拥有的子对象。这些子对象可以本身是模块类对象,或者,如图5中所示,可以是作为它们所属于的模块类对象的实例所创建的模块对象。这种实例在本文中可互换地称为它们所基于或者它们根据其创建的模块类对象的“模块对象”、“实例”、“实例对象”或“模块实例对象”。图5示出了反应器单元模块类对象410具有与其相关联的三个反应器模块对象,称为反应器01(参考标记440a)、反应器02(参考标记440b)和反应器03(参考标记440c),这些反应器模块对象对应于(即,关联于)图1的相应的反应器类对象410。图5还示出了累加器设备模块类对象416具有或拥有5个不同的子模块对象,称为水1、酸1、酸2、碱1和碱2(参考标记440d-440h)。类似的,开/关阀控制模块类对象422被示出为包括子模块对象,称为粗糙阀1、粗糙阀2、粗糙阀3、精细阀1、精细阀2和精细阀3(参考标号440i-440n)。此外,图5示出了基于警报显示模块对象432的警报A图形元素对象440o、基于查看显示模块类434的温度传感器B图形元素440p和控制模块C图形元素440q,以及基于诊断显示模块436的测试模块D图形元素440r和泵E图形元素440s。通过类似的方式,图5的其他单元、设备、控制和显示模块类对象中的每一个可以具有与其相关联的一个或多个模块对象。然而,出于简单起见,这些模块对象未在图5中示出。
在图5的图中,反应器01、反应器02和反应器03单元模块对象、酸1、酸2、碱1、碱2和水1累加器(设备)模块对象(参考标号440a-h)、粗糙阀1、粗糙阀2、粗糙阀3、精细阀1、精细阀2和精细阀3控制模块对象(参考标号440i-440n)、警报A、温度传感器B、控制模块C、测试模块D、泵E图形元素对象(参考标号440o-440s)和其他单元、设备、控制和显示模块对象中的每一个是关联于过程工厂10内的实际的过程元素(如过程工厂10内的单元、设备、控制模块、显示应用和图像或图形显示元素)的单独的对象。这样,对象440a-440s在这里可互换地称为“过程元素对象”、“过程元素模块对象”或“元素对象”。类似的,每个对象440a-440s是其相应的“父”或“父对象”410-436的“子”或“子对象”。例如,由于工厂10中使用多个物理酸累加器,所以在配置例程中将创建多个酸累加器过程元素模块对象,对于工厂10内存在的每个单独的酸累加器都存在一个单独的子酸累加器过程元素模块对象。然而,每个子单独累加器过程元素模块对象关联于同一父累加器模块类对象416或由同一父累加器模块类对象416拥有。当然,图5的图仅示出了有限个与其相关联的模块类对象、模块对象、实例对象和过程元素对象,并且可以理解,可以提供其他类型的模块类对象,并且可以从每个不同的模块类对象创建任意希望数目的模块对象、实例对象和过程元素对象。
此外,作为父对象的子对象的对象本身可以具有子对象。例如,类对象流量计控制模块426可以包括两个子实例对象,例如“水流量计模块”和“溶剂流量计模块”(未示出)。水流量计模块可以包括与过程工厂10内的相应的实际流量计元素(如“水流量计1”和“水流量计2”)相对应的相应的子过程元素模块对象。这样,过程元素对象“水流量计1”和“水流量计2”基于“水流量计模块”,并且其基于流量计控制模块426。
作为对象的一部分,图5的每个模块类对象(并且因此图5的每个模块对象)可以包括定义或构成该模块的物理或逻辑过程元素的定义或指示,并且根据需要还包括那些过程元素物理或逻辑地彼此交互以执行过程工厂10内的某些活动的方式。例如,单元模块类对象典型地包括被定义为单元的过程实体内或者构成被定义为单元的过程实体的所有物理和控制元素的指示。单元模块类对象还可以定义各个部分的特定组成以及那些部分如何物理的关联在一起以作为一个单元操作。类似的,设备模块类对象将典型地包括用于控制被定义为该件设备的实体的控制例程或控制模块以及使用该控制例程或控制模块来定义各个部分物理或逻辑地交互的方式的命令,以在设置在工厂10内时操作为一件设备。类似的,每个控制模块类对象将典型地以某种形式的控制算法的形式定义要在工厂内执行的控制活动。并且,每个显示模块类对象还可以定义显示屏配置、要显示的信息和表示过程工厂的各个元素并且要在显示屏上显示的图形或图像元素,以及针对工厂10内的指定类型的单元、设备、工厂区域或者任何其他物理或逻辑实体要采集的数据和要在所采集的数据上执行的数据操作。
作为模块类定义的一部分,模块类对象可以指示或定义要结合在其中或在其中使用的其他模块类对象。在这种情况下,从该模块类对象创建的模块对象将结合、指向或包括根据模块类级别上定义的关系而从其他模块类对象创建的其他模块对象。虽然不严格必需,但是单元模块类对象可以结合其他单元模块类对象、设备模块类对象、控制模块类对象和显示模块类对象,而设备模块类对象可以结合其他设备模块类对象、控制模块类对象和显示模块类对象。控制模块类对象可以结合或指向其他控制模块类对象和显示模块类对象。然而,根据需要,还可以使用其他模块类对象相互关系。这些结合关系在图5的图的底部通过大的箭头示出,指示任意显示模块类对象可以包括在控制、设备和单元模块类对象中的任意一个中或被其指向,任意控制模块类对象可以包括在设备和单元模块类对象中的任意一个中或被其指向,并且任意设备模块类对象可以包括在任意一个单元模块类对象中或被其指向。可以理解,模块类对象可以结合相同类型的其他模块类对象。例如,单元模块类对象,作为其定义的一部分,可以结合另一单元模块类对象。以类似的方式,设备模块类对象可以包括另一设备模块类对象,控制模块类对象可以包括另一控制模块类对象,显示模块类对象可以包括另一显示模块类对象。当然,根据需要,模块类对象可以多次使用或结合另一模块类对象。例如,反应器单元模块类对象可以多次结合或使用累加器设备模块类对象,因为被反应器单元模块类对象建模的反应器包括累加器的多个实例。
可以理解,当第一模块类对象结合或使用第二模块类对象时,从第一模块类对象创建或者作为第一模块类对象的实例的任何模块对象将结合或使用从第二模块类对象创建或者作为第二模块类对象的实例的模块对象。这样,当反应器单元模块类对象410使用累加器模块类对象416作为其一个元素或一部分时,反应器01模块对象将使用或包括累加器模块对象中的一个(如酸1模块对象440e),作为其一个元素或一部分。类似的,如果累加器设备模块类对象结合或包括出口阀设备模块类对象时,从累加器设备模块类对象创建的模块对象(其例如可以唯一地命名为累加器1)将包括从出口阀设备模块类对象创建的模块对象,并且例如唯一地命名为出口阀2。通过这种方式,在模块类对象级别上定义的模块类对象之间的关系被反映在从这些模块类对象开发或创建的模块对象中。模块类对象(及其模块对象)之间的互连或参考使得能够在配置活动期间获得大的可变性和高的可转移性,从而使得在创建了原语模块类对象(如控制和设备模块类对象)的集合之后,可以通过参考该原语模块类对象来容易地创建更复杂的模块类对象(如单元模块类对象)。当然,虽然模块类对象可以参考或使用其他模块类对象,但是它们还可以或者可以替代地定义或使用与模块类对象不关联的简单的对象或过程元素对象,如阀、传感器等等。这些简单的或者过程元素对象将针对其所用于的控制例程而完全定义在模块类对象本身中。
图6中示出了一种示例性反应器单元模块类对象410以示出描述或限定于单元模块类对象相关联或者存在于单元模块类对象内的实体的一种方式。如图6中所示,反应器单元模块类对象410包括罐500的指示,其是过程工厂10内的简单对象或过程元素对象,不存在用于其的模块类对象。罐500以虚线示出,因为没有控制或者低级活动需要控制,或者执行针对罐的输入/输出活动。结果,包括罐500仅用于示出与反应器单元模块类对象410相关联的其他对象之间的互连。反应器单元模块类对象410还包括三个分别命名为酸、碱和水的累加器501、502和510,其是图5的累加器设备模块类对象416的三个不同参考。水累加器模块类对象510显示在单元模块类对象410的一段中,以虚线分隔开以指示这是一个共享的模块类对象,并且因此单元模块类对象410与其他单元模块类对象具有对该对象的共享控制。图6的出口对象504是对图5的出口阀设备模块类对象418的参考,液位传感器505是对图5的液位传感器控制模块类对象424的参考,进水阀503是对阀对象的参考,该阀对象可以是简单阀元素(因此在单元模块类对象410中完全定义)或者可以是对配置策略中的其他地方所定义的阀控制模块类对象的参考。出于定义不同元素之间的互连起见,还示出了反应器单元模块类对象410的不同实体或不同部分之间的物理互连。如上所述,单元模块类对象410或任意类型的其他模块类对象可以包括简单元素,该简单元素在模块类对象内完全定义(包括与其相关联的任何一般性控制例程)和/或可以包括对模块类对象外部定义的模块类对象的参考。
单元模块类对象410还包括两个示例性显示模块类对象,称为反应器查看显示520和反应器警报显示522,其是对图5的查看显示模块类对象434和警报显示模块类对象432的参考。这些对象限定了用于显示与反应器单元模块类对象410中定义的反应器单元的任意设备或部分相关联的状态(例如罐的填充液位)和警报的一般性显示活动。类似的,单元模块类对象410可以包括盒子524中示出的其他元素,如阶段类对象,作为剂量(Dose)、混合(Mix)、排出(Drain)和冲洗(Flush)阶段类对象,它们中的每个限定了要在单元模块类对象410所定义的单元上执行的一般性控制例程。单元模块类对象与阶段类对象可以具有零个或更多个关联。阶段类对象524可以在其他地方定义并被以任意希望的方式引入到单元模块类对象410。在某种意义上,阶段类524是可以在单元模块类对象410所定义的单元上执行的命令或例程,以执行不同功能,如填充单元、加热该单元、清空该单元、清理该单元,等等。
此外,单元模块类对象410可以包括存储器或部分526,其存储对由配置应用50(图1)从该单元模块类对象410创建的模块类对象的参考。部分526本质上是从单元模块类对象410创建并被单元模块类对象410拥有的模块对象的列表。(当然,该列表或所拥有的模块对象的其他指示可以存储在工作站中或者由配置应用50以任意希望的方式存储,而不必物理地包含在单元模块类对象410中)。在任一情况下,在图6的例子中,单元模块类对象410拥有模块类对象反应器01 440a、反应器02 440b、反应器03 440c等,每个都是从反应器单元模块类对象410创建的。
单元模块类对象410还包括可以由单元模块类对象410在配置活动期间或配置活动之后执行的一组方法530。方法530可以包括自动将对单元模块类对象410做出的改变传播给单元模块类对象410所拥有的每个模块对象526的改变管理方法或应用。其方法可以包括执行针对单元模块类对象410和/或针对由其拥有的任意单元模块对象526的安全或访问控制的安全控制方法,或者使得用户或者配置工程师能够指定模块类对象或从其创建的任何模块对象的改变参数和/或安全参数的方法。当然,不同方法530可以对或针对单元模块类对象410执行任何其他过程。
如果希望,单元模块类对象410可以控制对模块类对象410做出的改变被传播给单元模块对象526的方式以及在单元模块对象526中设置安全访问的方式。一种提供这种功能的方式是在单元模块类对象410内设置一个或多个标志或参数以指定改变被传播给单元模块对象526以及在单元模块对象526中处理安全的方式。具体而言,一个或多个改变传播参数必须被设置以指定对单元模块类对象410做出的改变是否被自动传播给一个或多个模块类对象526。这些改变传播参数可以存储在单元模块对象526中并且可以指定整个单元模块对象或者基于一个一个子元素,指定对单元模块类对象做出的改变是否要被反映到单元模块对象中。例如,单元模块类对象410可以包括全局改变参数534(标记为“C”),其可以设置在从单元模块类对象410创建的每个单元模块对象中,以允许或禁止对单元模块类对象410做出的改变被自动反映到单元模块对象中。类似的,每个子元素或块(如块501-505、510、520和522)可以包括改变参数536,改变参数536用于仅为该块指定在单元模块类对象410中对该块做出的改变是否要被反映到单元模块对象中。当然,单元模块对象的不同块可以区别地设置,以使得例如对单元模块类对象410的酸块501做出的改变将被传播给特定的一个模块对象526的对应的酸块,但是对单元模块类对象410的碱块502做出的改变不被传播给该特定的一个单元模块对象的碱块。此外,从单元模块类对象创建的不同的单元模块对象可以具有彼此不同地设置的改变参数,以使得对单元模块类对象410内的碱块502做出的改变被传播给单元模块对象526的第一个单元模块对象526的对应的碱块,但是不被传播给单元模块对象526的第二个单元模块对象526的对应的碱块。当然,单元模块类对象410的改变管理方法可以访问和使用单元模块对象526的改变参数以当在单元模块类对象410中做出改变时在那些对象内做出或不做出改变。
通过类似的方式,单元模块类对象410可以包括一个或多个安全参数,该安全参数指定了在每个单元模块对象526中控制安全或访问的方式。单元模块类对象410可以包括全局安全参数538(标记为“S”),其可以向从反应器单元模块类对象410创建的整个反应器单元模块对象提供任意希望级别的安全,和/或可以包括用于单元模块类对象410的每个子元素(如用于块501-505、510、520和522等中的每一个)的不同安全参数540,其逐块地指定了那些块中的每一个的安全级别。全局安全参数538可以是锁定参数,该锁定参数锁定了到除了具有预先授权的安全访问级别的用户之外的所有用户的单元模块类对象。当然,安全参数538和540可以指定多个不同安全级别中的任一个,如无访问、限制访问、访问额定类型或用户的标识,等等,并且在不同块中以及在从同一单元模块类对象创建的不同单元模块对象中,安全级别可以被设置为不同。如果希望,安全措施的一部分可以包括提供对与单元模块类对象相关联的一个或多个方法或算法上的加密。
可以理解,单元模块类对象410的改变和安全参数可以被设置为缺省值,并且从单元模块类对象410创建的每个单元模块对象526的对应的改变和安全参数可以在创建时取该缺省值。然而,缺省改变和安全参数也可以在这些单元模块对象创建之后在单元模块对象526中(由具有适当的安全访问的用户)单独地改变。虽然这里针对反应器单元模块类对象讨论了改变和安全参数,但是可以以其他类型的单元模块类对象以及以任何希望类型的设备模块类对象、控制模块类对象、显示模块类对象等来提供类似的改变和安全参数。
如果希望,单元模块类对象410可以包括到为单元类模块对象存储的或者与单元模块类对象相关联的文档(包括与和单元模块类对象410相关联的单元或该单元的任何子单元相关联的文档)的参考,如URL或其他参考。这种参考在图6中显示为参考549。
图6的实施例示出了与单元模块类对象410相关联并且指示应用于单元模块类对象410的子或派生对象的改变传播和安全指南的改变参数和安全参数。在一些实施例中,改变参数和/或安全参数可以附加地或者替换地与模块类对象410的相应的子对象或相应的派生对象相关联(例如与反应器对象440a相关联),并且可以指示相应的子对象或派生对象是否接收来自一个或多个父对象的改变或是否结合来自一个或多个父对象的安全限制。
图7示出了可以由图1的配置应用50在配置工程师创建和使用模块类对象来配置过程工厂10时创建的屏幕显示。通常,屏幕显示包括屏幕左手侧的浏览器视图,其提供表示过程工厂10的配置的组织树结构。类似的,屏幕显示通常包括在其右手侧的一个或多个信息视图。这些信息视图提供了关于浏览器视图中被选择的那些元素的进一步信息。可以在信息视图中显示给用户或者由用户改变的信息可以由图6的控制和安全参数来确定或控制,该控制和安全参数为不同的模块类对象或其子元素中的每一个设置。这样,浏览器视图内的特定元素可以基于在模块类对象中设置的安全和控制参数显示或暴露给一个用户以查看和/或改变并且被传播给浏览器视图中示出的模块对象。当然,如前所述,信息可以总是隐藏,可以仅在用户输入密码或其他安全码时可显示或改变,可以总是可显示而不改变,可以总是可显示并且可改变,或者可以是这些或其他安全和改变参数的任意其他组合。更进一步的,如果希望,元素的可显示性、可视性或者可改变性可以使用高亮、灰色、彩色或者任意其他技术在浏览器视图中指示,以通知用户哪些元素可以更详细地显示或改变。
在图7中,屏幕显示600包括在显示器左手侧示出的浏览器配置视图602的一部分。浏览器视图602的该部分示出了存储有多个模块类对象的库,包括单元模块类对象604、设备模块类对象606和控制模块类对象608。反应器单元模块类对象610(其可以对应于图6的反应器单元模块类对象410)存储在单元模块类库604中并且包括多个子元素的指示,所述子元素包括剂量(Dose)、混合(Mix)、排出(Drain)和冲洗(Flush)阶段类对象、进水和液位计控制模块类对象和希望的其对象。这样,如单元模块类库604中所定义的,反应器单元模块类对象610包括阶段类的指示以及设备模块类对象和控制模块类对象的指示。由于在屏幕600中选择了反应器单元模块类对象610,其元素更详细地显示在屏幕600的右手侧612。
更进一步的,设备模块类库606包括累加器设备模块类对象614(其可以对应于图7的累加器设备模块类对象416)和反应器出口设备模块类对象616。累加器设备模块类对象614包括算法(如图7的算法564中的一个)的三个不同部分,称为命令00001、命令00002和命令00003。模块类对象614还包括对称为粗糙阀和精细阀(其是开/关类型控制模块类对象)和流量计(其是流量计类型控制模块类对象)的控制模块类对象的参考。更进一步的,反应器出口设备模块类对象616包括状态驱动的控制算法,该状态驱动的控制算法具有不同状态(称为状态00001、状态00002和状态00003)、目标(Target)、驱动(Drive)、监控(Monitor)和回读(Readback)模块以及出口(Outlet)、排出(Drain)和产品(Product)阀控制模块对象(其可以是开/关控制模块类对象类型的模块块的指示或参考,并且其可以命名为(Outlet)、排出(Drain)和产品(Product)或者其可以是简单对象)。与累加器和反应器出口模块类对象614和616相关联的命令和状态驱动的算法可以是任何希望的例程并且可以指向要与那些命令一起使用的设备模块类对象中的控制模块对象。具体而言,设备模块类对象的CDA或SDA命令算法可以通过结合控制模块(或其他设备模块)模块的名称而包括指向控制模块(或其他设备模块)的表达或动作,以指示在执行算法时要操纵哪件设备。这些算法内的控制模块(或另一设备模块)的名称的使用指定了由算法所位于的设备模块对象所参考或者与算法所位于的设备模块对象相关联的控制模块对象,并且在该设备模块对象从设备模块类对象创建时应当关联或初始化该特定名称。
当然,如果希望,图7中所示的屏幕和类似的屏幕可以被配置工程师用于创建和制定剂量(Dose)或其他阶段类中的或者用于任何其他模块(如单元模块类对象、设备模块类对象和显示模块类对象)的控制算法,从而创建任何希望的模块类对象。在创建了如上所述的一个或多个模块类对象之后,配置工程师可以使用这些模块类对象来配置过程工厂10内的元素。
在单元模块类对象内可以将任意设备或控制模块指定为共享或非共享的模块对象。非共享的模块对象完全由高级模块对象拥有,其中非共享的模块对象在该高级模块对象中创建。共享的模块对象由多于一个更高级的模块对象拥有或与其相关联。模块对象的共享或非共享特性影响模块对象在浏览器视图中的图示。具体而言,非共享模块对象指定造成模块对象仅仅显示在控制策略内的更高级对象下,而共享模块对象指定造成共享模块块或模块对象显示在共享该元素的每个更高级模块对象下以及浏览器层级中的独立的模块对象下。
可以理解,通过类似的方式,配置工程师可以根据本文描述的原理使用任何其他单元模块类对象、设备模块类对象和控制模块类对象以及显示模块类对象来为过程控制环境内的单元、设备、控制元素和显示元素创建配置元素。此外,配置工程师可以通过改变一个或多个单元模块类对象并且使得那些改变传播到从那些单元模块类对象创建的并与其相关联的每个模块对象,来全局地对不同的过程实体的配置的元素做出改变。该特征使得能够在已经创建配置之后,更容易地并且耗时更少地在该配置内做出改变。此外,配置工程师可以通过设置模块类对象内的安全参数来向配置系统内的模块对象的不同元素或组件指定访问级别。如上所述,配置工程师可以在任何级别(如在单元模块级别、设备模块级别、控制模块级别和显示模块级别)一个模块一个模块地指定安全性。通过这种方式,单元模块对象的一些元素可以是可查看的,而其他元素是不可查看的。
当然,一旦配置系统完成并且模块对象关联于过程工厂10内的相应的过程实体,控制和显示模块或者与这些模块相关联的元素可以下载到适图1的当的控制器12、设备和工作站14,以在过程工厂10的操作期间运行。
本文描述的技术、系统和方法允许使用灵活的类对象、实例对象和过程元素对象对过程工厂和过程控制系统进行配置。在一个例子中,对父对象的改变或修改被分阶段或延迟传播给一个或多个相应的子对象,以使得配置更新的定义能够在过程工厂中控制。在一个实施例中,分阶段和/或延迟由用户指示,并且可以对于不同子对象而不同。在另一个例子中,对父对象做出的改变被应用于选择的子对象而不是父对象的所有子对象。用户可以指示对于要应用改变的希望的子对象的选择。在又一个例子中,对子对象做出的改变被选择性地应用于其父对象和/或应用于一个或多个子对象。对要应用改变的希望的父对象和/或子对象的选择可以由用户指示。此外或者替换地,用户可以对各个对象做出草案改变或者修改而不自动分发和/或实例化(例如创建可执行文件)该修改。可以将草案改变的不同集合保存为各个对象的不同版本,并且可以离线测试而不影响运行时过程工厂的现场操作。
此外,本文描述的技术、系统和方法应用于存储在过程控制系统或工厂10的库中的项目或对象(例如模板和/或用户创建的库对象)。替换地或者附加地,该技术、系统和方法应用于过程控制系或工厂10的配置数据库25中存储的项目或对象,其在一些情况下至少部分地从库项目或对象创建或派生。
更进一步的,本文描述的一个或多个灵活配置技术和对象可以用于过程工厂中,如图1的过程工厂10,或者用于其他适当的过程工厂或过程控制系统。在一个例子中,本文描述的一个或多个技术由在图1的一个或多个工作站14上运行的配置应用来执行。在另一个例子中,本文描述的一个或多个技术至少部分地由访问该应用的远程应用(例如web客户端或其他远程访问手段)来执行。在一些实施例中,一个或多个灵活配置技术与除了本文描述的配置技术之外的其他配置技术结合使用。
此外,本文描述的灵活配置技术和对象是使用模块类(如图5中所述的模块类)来实现的。然而,本文描述的灵活配置技术可以使用其他适当的模块类、软件架构和/或编程技术来实现。
项目或对象草案:
如前所述,本文描述的灵活配置技术、系统和方法的实施例使得用户能够对库和系统配置项目或对象做出改变而不需要下载,下载可能会不利地影响运行时过程工厂或过程控制系统。库项目或对象通常是存储在中央访问的位置或库(例如工作站14和其他接口和计算设备可访问的配置数据库25或其他存储设备)中的模块对象。系统配置项目或对象(以及一些库项目或对象)通常基于一个或多个库项目或从一个或多个库项目派生。对于一些项目和对象,至少一些方面由用户定制。
本文使用的术语“项目”通常是指对象,如类对象、实例对象或者过程元素对象。项目可以存储在库中(例如“库项目”或“库对象”),或者项目可以存储在系统配置数据存储区域中(例如“配置项目”或“配置对象”)。此外,本文使用的术语“项目”通常还可以指对象内部并且由对象定义的项目,例如对象的内容的至少一部分。对象的可能的内部项目例如包括方法、动作、数据域或其他属性、输入、输出、I/O类型(例如控制器(例如图1的控制器12或12a)与系统进行通信的输入/输出卡或设备的类型)、功能或用法、定义、参数值、对父对象的参考、对子对象的参考、对不是父对象也不是子对象的另一对象的参考,以及其他内部项目。内部项目可以绝对定义(例如存储常数值或表达式的数据域),或者内部项目可以相对定义,例如通过参考绝对值、绝对表达式、另一对象或另一参考。例如,图形显示元素对象定义的内部项目可以包括对父对象的参考、一个或多个域、触发器、功能、视图定义、事件句柄、动画、占位符、参数、表格等等。在另一个例子中,控制模块元素对象定义的内部项目可以包括对父对象的参考、一个或多个输入、输出、参数、功能块、互连、域表达式、外部参考、动作、算法、转换,等等。
本文使用的术语“链接的”是指其结构和初始值从父对象或项目派生或创建的对象或项目,和/或其结构和初始值被提供给子对象或项目的对象或项目。这样,链接的项目可以是父项目。此外或者替换地,链接的项目可以是子项目。因此,本文所使用的“未链接的”项目是指不具有父对象并且不具有任何子对象的项目或对象。链接(例如维持父/子对象关系的指示)允许用户定义父项目或对象的结构和初始值,然后与实例或子对象共享相同的结构和初始值。例如,当用户想要做出影响类对象的所有实例的修改或改变时,用户仅仅修改类对象,并且该改变被分发或传播给该类对象的链接的实例。
本文使用的术语“当前项目”或“当前对象”表示已经被实例化(并且在一些情况下已经被下载)的项目或对象,其可以在过程工厂10中的对应的过程元素的运行时期间运行。例如,当当前过程元素控制对象被实例化时,与当前过程元素控制对象相对应的可执行的配置代码被下载到过程元素,如图1的控制器12或12a,并且控制器12或12a被配置为在运行时期间根据所实例化的当前过程元素控制对象所定义的功能、输入、输出和其他条件来操作。在另一个例子中,当前图形显示视图对象在与该当前图形显示视图对象中所包含的定义相对应的视图被构建和呈现给用户接口时在用户接口处实例化。典型的,对由对象定义的特定内部项目作出的改变不影响该对象定义的其他内部项目。
术语“修改”和“调整”在本文中可以互换地使用以表示在维持到其父对象的链接的情况下对对象的内容作出的一个或多个修改。对当前项目或对象的修改或改变的一个例子是向当前项目或对象添加新的内部项目,如添加新的参数或动作。此外或者替换地,修改可以包括删除当前过程元素对象的已有项目和/或可以包括改变该对象定义的项目的值、表达式或参考。在一些情况下,修改包括禁用特定项目,使得特定项目在实例化期间被忽略。例如,在特定示例对象中,用户可以禁用父类对象中定义的项目。这样的能力允许用户定义比该类的剩余部分具有更少功能,但是仍然包括核心类功能的实例。任何禁用的内容可以被可视地无色、使得不可见或者以其他方式无力地渲染,并且在运行时期间不使用。禁用的内容可以被用户在任何时间重新启用。通常,修改可以包括解析对常数值或表达式的参考,如当父对象中的参考被解析为相应的子对象中的常数值时。
可以对类项目或对象、实例项目或对象、过程元素项目或对象或者内部项目作出任何修改、改变和其组合。在一个实施例中,在实例对象和其他子对象的情况下,对子对象的改变或修改不造成子对象被移除出其父对象。例如,对实例对象的修改不从其类中移除实例对象,并且此外,不影响相同类的其他实例,除非用户指示影响。在一个实施例中,对子对象定义的项目的改变或修改由子对象内的标志或其他标记来指示,并且可以被这样标记以不影响类级别的项目。这样,这种灵活性可以降低父对象的扩散,并且通过允许在子项目或对象之间有更多改变,使得单个父项目或对象可应用于更多应用。
此外,用户能够保存对项目或对象做出的修改的集合作为草案。通常,草案对象能够被测试而不影响运行时过程工厂或系统。(本文使用的草案对象的“测试”通常是指对草案对象本身做出初步检查以确定修改或改变是否正确的能力,但是通常不表示完整的工厂接受度测试,这将要求草案对象工作在具有其他草案的环境中。)
在一个实施例中,特定对象一次只存在一个草案。在一个实施例中,特定对象可能存在多个不同草案。用户可以能够添加、删除或修改草案对象。在一些实施例中,可以获得草案对象的版本控制。可以通过对象中包括的或者与对象相关联的标识、域或其他指示来标识草案对象。在一个实施例中,草案对象存储为当前实例化的对象的子对象、存储为当前对象的父对象的子对象或者存储为派生出当前对象的库对象的子对象。在一些情况下,还可以存储与草案对象相对应的其他信息(例如作者、存储时间等)。
可以创建和存储包含对当前对象的不同修改的不同草案(例如,同时地)。不同草案可以在本质上是顺序的。例如,第一草案可以对应于配置传统过程设备,第二草案可以对应于配置该过程设备的更新的模型。不同的草案内容可能不同。例如,第一草案可以对应于配置由制造者A做出的阀以执行特定功能,而第二草案可以对应于配置由制造者B做出的阀以执行类似功能。事实上,例如根据用户需要,顺序和/或内容改变的任意组合可以跨草案集合来体现。
草案通常不被允许实例化或下载,但是被允许测试以保证将它们发布到允许分发和下载的版本之前它们能够很好地工作。通过这种方式,用户能够对当前项目或对象做出修改并且将修改存储为草案。当用户认为该草案可接受时,用户可以发布该草案以产生项目或对象的新版本,例如“发布的”或“批准的”项目或对象。存储项目或对象的新版本并且可用于实例化或下载到过程工厂或系统中。
版本:
这样,版本帮助用户跟踪和控制对过程元素的改变。具体而言,项目或对象可以经历改变,作为其生命期的一部分。最初,对象被创建,并且对对象的每个后续改变(不管是结构上的(如添加/删除功能块)还是改变参数值)通常都被分发或传播给其子对象。然而,在现场过程工厂操作期间,应当防止对父项目或对象的改变(尤其是不完整的、未批准的或未测试的改变)以不受控方式进入运行时系统。因此,本文描述的灵活配置技术和对象包括“版本”以使得用户能够控制改变的分发和传播。本文使用的“版本”通常是指对当前对象的未被批准或发布的草案修改,并且可用于实例化到运行时环境中。版本或发布能够被实例化到过程工厂或过程控制系统,而草案不允许被实例化。
在一个实施例中,当用户指示时(例如只在用户批准草案之后),草案被发布为版本。此外,当对对象的过程元素项目的草案修改被批准时,过程元素项目或对象的状态可以从阻止或不允许实例化的第一状态(例如“草案”状态)改变为允许实例化的第二状态(例如“发布”状态)。在一个实施例中,只有具有适当的安全检查的授权用户被允许将草案发布为版本(例如以批准草案修改以产生发布的修改或版本)。当可获得多个草案时,用户可以选择要将多个草案中的哪一个发布到版本中。
对象的版本可以由对象中包含的或者与对象相关联的标志、域或其他指示来标识。在一个实施例中,版本或发布的修改的对象被存储为单独的对象,其指示或链接到作为其父对象的修改的对象的草案、当前对象、另一版本、另一对象或库对象。在一些情况下,还可以存储与对象的版本相对应的其他信息(例如作者、发布时间等)。在一个实施例中,子项目或对象可以链接到父对象的版本和父对象本身。
在一个实施例中,当可获得对象的多个版本时,用户可以指示或选择要实例化该多个版本中的哪一个。例如,用户可以指示该对象的不同版本要在过程工厂内的不同过程元素处实例化。替换地或者附加地,用户可以为版本或者为不同版本指示实例化的不同项目。在一些情况下,用户还可以删除、禁用或编辑版本。
在一些实施例中,只允许存储一个草案(而不是多个草案)。在这样的实施例中,只有当前对象的当前版本可以由用户编辑。因此,编辑后,用户保存草案修改的对象,并且,在用户指引下,草案修改的对象被发布为对象的新的当前版本。在一个实施例中,前一个当前版本可以被自动删除,如果它没有任何子对象链接到它并且它不是唯一的版本的话,如在库项目或对象的情况下。因此,如果当前版本没有任何子对象,则对当前版本的修改的随后发布可以简单地取代或覆盖当前版本(例如不创建一个附加的当前版本)。在一个实施例中,一个或多个先前的当前版本可以隐藏或不让用户访问。
在一个实施例中,发布具有至少一个子对象的父项目或对象会自动产生子对象的一个新的当前版本。在一个实施例中,重新命名一个对象不创建对象的一个新版本,但重新命名由对象定义的内部项目需要将重新命名的内部项目保存为草案,并且发布重新命名的内部项目草案作为内部项目的新版本。
在一个实施例中,如果发布的项目或对象是指或结合到另一个发布的项目或对象(并且可选地被嵌套到多个对象级别),则创建最内的项目或对象的一个新版本可以在所有嵌套级别上自动创建每个包含的项目或对象的新版本。
改变和修改的分发和传播:
术语“分发”和“传播”在这里可以替换使用,并且一般是指结构(如用于控制对象的功能块的使用、动态模型的用法、形状、参数类型、电线,等;又如用于图形元素对象的动画、视图定义、形状、连接器,等)和参数值从父对象到子对象的传递,和/或从一个子对象到其父对象的传递。通常,传播在一个版本或发布的对象的修改或改变。在一个实施例中,只有对象的发布版本中包含的改变的项目才被传播。在一个实施例中,对象的整个版本都被传播。
策略设置可以每个对象地或者每个项目地控制分发或传播过程。在一个实施例中,策略设置可由用户(如配置设计师或系统管理员)改变。在一些配置系统中,访问改变的策略设置被安全地控制。分发或传播策略设置包括至少两种可能的值:自动的和用户管理的。在一个例子中,如果针对库中定义的设备项目的策略被设置为自动的,则对新版本中发布的库中存储的设备项目的改变或修改被立即自动传播到该设备项目的任何链接的项目,从而产生链接的项目的新发布的版本。
然而,如果对象的策略被设置为用户管理的,则新发布的改变不是立即自动传播给链接的项目。相反,用户手动启动在选定的时间传播(或创建一个脚本或类似地启动传播)给选择的链接项目。在上述库存储的设备项目的例子中,如果其策略被设置为用户管理的,则用户可以选择特定的子系统配置项目以在指定时间接收发布的改变。另外,如果有库存储的设备项目的多个存储的版本,则用户可以指示该多个版本中的哪一个版本在哪个时间传播。
因此,本文描述的灵活配置技术和对象允许用户对父对象(例如,类对象)做出改变、指定改变要被分发或传播给的子对象(例如,实例对象),以及指定传播何时发生。因此,在发布后,对父对象做出的改变可以仅立即传播到需要改变的子对象,而其他子对象可以在稍后的时间更新该改变。对改变或修改的接收者的选择可以在每个过程实体或元素的基础上执行,或者可以在组的基础上(例如,一个工厂区域、某个制造商的所有设备、运行版本X的所有设备、某个测试生产线中的所有仪器,等)执行。在分发和传播中的这种选择可能会增加运行过程中的工厂性能,因为不是所有的子对象都一次性更新。此外,改变和修改可以以优化的和受控的方式分阶段到过程工厂中。
在一个实施例中,对于具有至少一个子项目,并且还具有多个已有版本的父对象,改变分发或传播策略设置不会影响父对象的任何发布的、当前实例化的版本。然而,如果父项目或对象的内容随之发生改变,则内容改变被传播给所有子项目或对象以使得子对象使用产生的父对象的当前版本,并且之前的版本被删除或禁用。
在一个实施例中,参数值从父对象的传播或分发仅在该值在子对象中未被覆盖时才出现。
与父对象类似,对子对象(例如,一个实例对象或过程的元对象)做出的改变或修改也可以选择性地传播或分发给各自的父对象(例如,类对象或实例对象)。在一个实施例中,传播的时间和/或内容由用户选择。通过这种方式,在子对象处的改变可以传播给父对象,其又可以将该改变传播给其他子对象。
在一个实施例中,用户可以指示子对象定义的特定项目要对父对象隐藏(例如,禁用)。例如,如果特定参数值被添加到子对象,但一般不应用于父对象和父对象的其他子对象,则在传播到父对象期间,该特定参数值可被标记或以其他方式隐藏或禁用。
实例化:
在一个实施例中,版本可以被选择由用户实例化。在运行时选择的版本的实例化导致相应的过程元素根据选定的版本所定义的内部项目执行。例如,在控制对象的情况下,用户希望控制对象的特定的发布版本被下载到运行时系统中的对应设备。用户指示系统从选定的版本生成下载版本,并将下载版本发送给运行时系统中的过程元素。因此,在运行时期间,过程元素执行控制对象的执行版本,其中执行版本包括配置,该配置包含该版本中包括的修改。在另一个例子中,用户指示配置系统实例化发布的、在显示器视图上包括的图形显示元素对象。配置系统创建图形元素对象的执行版本。当相应的显示视图在运行时构建时,图形显示对象的执行版本运行,导致相应的图形元素被包含在显示视图中。当多个版本可用时,用户可以选择要实例化哪一个版本。
在上述实例化的例子中,实例化发生在用户指定或指示的时间,或在用户指定或指示的事件之后。在一些实施例中,用户可以指示对象的版本要在发布之后立即实例化。例如,用户可以指示与该版本相对应的子对象的第一集合的实例化要在发布后立即执行,与该版本相对应的子对象的第二集合的实例化要延迟指定的时间量,以及与该版本相对应的子对象的第三集合的实例化被延迟到用户明确请求实例化。因此,利用本文描述的灵活的配置系统技术和对象,用户能够控制在各个过程控制元素处修改何时被实例化以及哪些修改被实例化。
事实上,本文描述的技术和对象向用户提供更灵活地修改对象或项目的内容并且更灵活地管理过程工厂或过程控制系统内的修改的分发和时间的功能和能力。例如,用户能够创建对象的实例和用法、创建对象的副本、从对象创建派生类、修改内部项目(例如,用法和实例),能够添加附加的结构、修改对象中和用法和实例中包含的内部项目(例如,参数和性质值)、隐藏或禁用所选择的内部项目、链接和断开对象,和/或控制对项目或对象的改变的传播与分发。
示例性场景:
接下来,提供几个例子来说明过程工厂或过程控制系统中的灵活配置的特征、功能和操作。这些示例场景可以通过由u1-7的任一个所示出的技术的任何一个或多个部分或它们的组合来实现。这些示例场景不是限制性的,而是提供用来说明本文所述的技术、系统和方法的一些概念、优点和用法。此外,这些场景不是可能出现的场景的排他集合。此外,虽然这些示例性场景通常参考库项目或对象,但是这些场景可以很容易地应用到过程工厂或过程控制系统内的其他项目和对象,如系统配置对象、图形和显示对象、实例对象、过程元素对象、类对象,等。
在如图8所示的第一示例场景中,用户执行任务或执行一个或多个命令以创建、改变或修改库项目或对象1000。在一个实施例中,该命令在配置系统处例如经由工作站14或其他用户接口接收。当用户创建或编辑库项目或对象1000并保存时,项目的草案1002被存储。用户可以对草案1002进行附加的编辑。在某些时候,用户批准改变并发布项目(1005)。发布(1005)导致库项目1000的新的版本1008,因为在第一示例性场景中库项目1000没有子项目。新版本1008可获得以被实例化为过程工厂或过程控制环境的运行时环境。
在如图9所示的第二示例性场景中,库项目1010可以有子项目或对象1012,例如,库项目1010被链接到另一个库项目或链接到系统配置项目1012。在第二场景中,用户改变库项目1010并将其存储作为草案修改库项目1013。在某些时候,对草案1013的改变被批准,用户发布草案1013以产生库版本的当前版本1014,其包括该改变。用户希望控制对库项目1010的改变如何分发或传播到其子项目1012,例如,考虑到过程工厂的操作阶段、人员、程序问题和/或其他问题。用户管理的分发可以改进过程工厂(如炼油厂)中的操作,因为改变或修改能够在最佳的时间分发(例如,适当的支持团队到位以堵住阀,等)。
为了完成库项目1010的当前版本1014的受控传播或分发,用户设置策略设置来控制库项目1010的分发过程。在一个实施例中,该策略设置对应于库项目1010。或者,该策略设置可以对应于库项目1010的用法或子项目1012。在一个实施例中,该策略设置可以包括两个选项:自动1018和用户管理1015。当策略被设置为自动1018时,库项目1010的发布的当前版本1014(或发布的版本1014中包括的改变)被从库项目1010自动分发1018给子项目1012。当策略设置是用户管理1015时,用户可以创建当前版本1014的草案1022。草案1022又可以被发布为子项目1012的新的当前版本1025。
如图10所示,系统配置项目1012的新的当前版本1025可以被实例化。例如,如果系统配置项目1012对应于控制或功能块,则当前版本1025可以被转换成下载版本1028,其可被下载(例如,自动下载或由用户指示下载)到对应的运行时项目1030作为执行版本1032。在另一个例子中,如果系统配置项目1012对应于图形元素,则当包括图形项目显示视图被创建时,图形元素的当前版本在运行时被实例化。
另一方面,回到图9,当分发策略设置指示用户管理1018时,用户可以将对库项目1010做出的改变根据需要手动传播或分发到它的每一个子项目1012。本质上,库项目1010的当前版本1014是由用户命令1018(其可由用户显式地输入或包含在脚本中)从子项目1012的库中“拉出”的。在一个例子中,用户选择目标子项目(例如,系统配置项目1012),并要求1018库项目1010的当前版本1014(或其中的修改)被传播给目标子项目1012。在传播后,系统配置项目1012的草案1022被创建并存储。用户可能会或可能不会向草案系统配置项目1022做出附加的编辑。在某个期望的时间,用户发布草案系统配置项目1022,产生系统配置项目1012的可以被实例化的新版本1025。
前面的场景描述了库项目1000和1010的修改。然而,不仅是修改库项目1010。图11示出了一种场景,其中用户直接修改不是模板库的系统配置项目1040。用户将对配置项目1040的改变保存为草案1042,并且在草案1042被批准后,用户将草案1042发布到项目1040的当前版本1045中。在图11所示的例子中,用户请求产生下载版本1048(例如,可执行的),并随后请求将该项目1040的下载版本1048发送到运行时项目1050,以便执行版本1052被包含在对应的运行时项目1050中并由其运行。
本文描述的示出了灵活技术和对象的其他可能的场景包括:
1、用户复制具有多个版本的库项目。
在这种场景下,分发策略设置被设置为用户管理。库中存在具有多个版本的库项目。
用户复制库项目以产生具有不同名称的新的库项目。由此产生的库项目的副本将具有一个与原库项目的当前版本匹配的单独版本。然而,新的库项目只是一个副本,并不受对原库项目的后续改变的影响。
2、用户从一个库项目派生出另一个库项目。
项目(如显示或面板)存在于库中。该项目具有单个罐,例如显示一个发射器和两个阀。
用户选择一个命令来创建从第一库项目创建的新的库项目的草案。然后用户修改该草案以添加第二发射机,保存草案,并将草案发布为派生的库项目的第一版本。
用户随后修改原始库项目以添加第三阀、保存原始库项目的草案,并将草案发布为版本。然后用户分发修改后的原始库项目的版本。作为分发结果,派生库项目现在包含三个阀。
3、用户创建具有多个版本的库项目的实例。
分发设置被设置为用户管理,在这种场景下,在任何时间只有一个当前版本可用。用户创建库项目,并创建库项目的第一实例。然后用户修改原始库项目,将修改保存为草案,并发布修改后的原始库项目。发布导致原始库项目的新版本。
接下来,用户创建库项目的第二实例。第二实例是基于库项目的当前版本(例如,修改后的原始库项目)的,但第一实例不受影响。也就是说,第一实例仍然基于原始库项目而没有修改。
在一个实施例中,当新的实例或使用从库项目,有多个版本创建新的实例,或者使用指当前,库项目提供版本。
4、用户创建具有多个版本的库项目的用法。
这种场景与前一场景类似,但涉及库项目而不是实例的用法。在这种场景下,在一个时间只有一个当前版本可用。如果从具有多个版本的项目创建新的用法,则新的用法是基于库项目的当前可用版本。
5、用户修改具有用法的库项目。
在这种场景下,系统配置项目是基于库项目的。系统配置项目包括库项目的用法(如模块内的复合功能块用法)。改变的分发被设置为用户管理。
用户改变系统配置项目所基于的库项目,并且观察到该库项目现在具有可视指示符(如堆叠的图标)以显示存在库项目的多个版本。用户打开库项目上的参考视图,并且发现存在不在使用库项目的新的(现在是当前)版本的用法(模块内的复合功能块用法),例如,包括在系统配置项目中。
6、用户修改具有另一库项目中的用法的库项目。
这种场景类似于前一场景,但用法被包含在另一库项目而不是系统配置项目中。在这种场景下,分发策略仅控制到系统配置项目的分发,并且保持设置为用户管理。对库项目的改变被自动分发到其他库项目内的用法,而不考虑策略设置。也就是说,到库项目的分发被缺省为“自动”,并且不能够被修改。如果受影响的库项目本身由其他库项目使用,则分发递归;为被对另一库项目的改变影响的所有库项目创建新版本。
在一些实施例中,可修改的策略设置可用于库项目,并且不同的可修改的策略设置可用于非库项目,如配置项目。
7、用户修改具有实例的库项目。
在这种场景下,库项目的实例(如模块实例)被存储为系统配置项目。分发被设置为用户管理。
用户改变库项目,并观察到库项目现在具有可视指示符(如堆叠的图标)以显示存在多个版本。用户打开库项目上的参考视图,并且发现存在不在使用库项目的新的(现在是当前)版本的系统配置实例。
8、用户修改具有派生的库项目的库项目。
在这种场景下,父库项目被派生的库项目使用,派生的库项目又由系统配置项目使用。到系统配置项目的分发被设置为用户管理,并且到库项目的分发是不可修改的,缺省为自动。
用户修改父库项目。由于库项目分发设置是自动,所以自动更新派生的库项目。然而,基于派生的库的系统配置项目未被更新,因为到配置项目的分发设置被设置为用户管理。因此,系统配置项目继续使用派生的库项目的以前的版本。用户可以通过打开父库项目上的参考视图来看到这个,而且观察到派生的库项目使用父库项目的当前版本,但是系统配置项目不是使用父库项目的当前版本。
9、用户在库项目的上下文中更新用法。
基于前一场景,用户看到与库项目相对应的堆叠的图标,指示不是所有的库项目的实例都已更新。到系统配置项目的分发被设置为用户管理。
用户打开库项目上的参考视图,并且看到对应于两个显示的两个行,每个使用库项目。然后用户改变其中一个现实以使用库项目的当前更新版本。当用户打开显示时,用户可以看到库项目的当前更新版本,例如,该显示以及示出它们正在使用当前更新版本的任何库项目用法。
之后,用户打开第二显示上的参考视图,并且改变用法以使用库项目的当前更新版本。用户保存第二显示,并且用法的外观指示正在使用库项目的当前更新版本。
由于用户改变,系统中不存在链接到库项目的第一版本的项目,因此第一版本由系统自动删除。在其它实施例中,第一版本可以被设置为禁用或不活跃的。
用户可以多选不是当前版本的用法并选择将它们更新到当前版本。库项目上的指示符可能在所有实例都在使用最新版本时消失。如果在多选操作期间用法或实例不能被更新,则该用法或实例被跳过并且更新前进到下一个项目。在更新结束时,用户将看到哪些项目没有成功更新。
10、用户在库项目的上下文中更新库项目用法。
在一个实施例中,库项目的改变被自动分发到其他库项目内的用法,而不管系统配置分发策略设置。在一些实施例中,不同的库分发策略设置可用并且可被具有权限的用户修改。
11、用户在库项目的上下文中更新实例。
这个场景扩展了传统的基于类的模块行为。存在库项目,并且库项目的实例被存储为系统配置项目。然而,该实例未使用库项目的当前版本。到系统配置对象的分发被设置为用户管理。
用户选择库项目,并打开参考视图。用户看到系统配置实例没有使用该库项目当前版本,所以用户选择该实例并执行“使当前”命令。这个命令产生使用库项目的当前版本的新的实例草案。然后用户可以采取步骤来编辑和/或发布系统配置实例的草案。
12、用户在库项目的上下文中更新派生项目。
允许用户创建基于其他库项目的库项目。例如,用户可以创建没有任何互锁的父库模块,然后可以通过添加互锁创建具有父库模块的所有功能的派生库模块。对父库模块的算法的改变可以留到派生库模块,所以用户通过在一个地方定义算法而获益。
13、用户在用法的上下文中更新用法。
在这种场景下,用户希望更新用法以使用当前版本。例如,控制模块对象被存储为系统配置对象,并且包括具有单个输入连接器的单个版本复合块的功能块用法。单个版本复合块是库项目,并且到系统配置对象的分发被设置为用户管理。用户修改库中的复合块以添加另一输入连接器,创建库复合块的新的当前版本。用户可以看到指示库复合块有多个版本的图形。
接下来,用户选择特定控制模块上的功能块使用,并选择“使当前”命令。特定控制模块的用法更新以使用当前版本,从而显示该附加的输入连接器。如果以前的库复合块版本没有在系统中使用,则图形改变以表明库复合块不再有多个版本。
14、用户在库项目用法的上下文中更新库项目用法。
与派生项目类似,库项目在其他库项目中的用法(例如,功能块)可能会缺省为自动更新,而不考虑对配置项目的分发策略设置。然而,在改变由于一些冲突而无法自动分发给另一库项目的情况下,用户可以手动校正库项目用法。
15、用户在实例的上下文中更新实例。
在这种场景下,库模块具有单个版本,并且库模块的实例存储为系统配置项目。到系统配置项目的分发被设置为用户管理。用户修改库模块并发布该改变。与库模块相关联的显示上的图形指示库复合块具有多个版本。
用户选择模块实例,并选择“使当前”命令。创建该实例的使用库模块的当前修改后的版本的草案。然后用户可以发布该草案来创建模块实例的新的当前版本。如果以前的库模块版本在该系统的任何地方都不再使用,则与库相关联的多个版本指示符从显示中移除。
16、用户更新设备项目中包含的所有实例。
这种场景类似于前一场景,除了更新是在设备项目的上下文中进行的,如区域、单位或单元。存在具有单个版本的库模块,并且在一个区域下的系统配置中存在该模块的两个实例。到系统配置的分发被设置为用户管理。用户修改库模块,并且提供指示库复合块具有多个版本的图形。
在与上下文(例如,区域)相对应的显示上,该区域也被标记为具有不是当前实例。在扩大区域视图之后,两个模块实例被标记为不是当前。用户选择该区域,并选择“使当前”命令。创建使用库模块的当前版本的实例的草案。用户可以发布该草案以创建模块实例的新的当前版本,从而导致“不当前”的标志从显示中消失。如果以前的库模块版本在该系统的任何地方都不再使用,则与库模块相对应的多版本指示符也可以从显示中消失。
17、用户在派生项目的上下文中更新派生项目。
库存储两个项目,库显示DISP1和从DISP1派生的库显示DISP2。用户改变DISP1以添加文本域,发布DISP1并分发DISP1。因此,DISP2被自动更新为具有该文本域。
类似的,库存储库设备类型VALVE,其可能具有与它相关联的面板。库还存储库设备类型DVC,其是从VALVE派生的,并且包括对VALVE使用的面板来说附加的信息。此外,库存储应用特定的库设备类型MfctrDVC,其又向DVC的面板增添了更多的信息。当用户改变VALVE的参数值时,该参数值在DVC和MfctrDVC中都自动更新,当DVC和MfctrDVC不覆盖参数值时。
接着,用户通过从MfctrDVC设备类型派生出应用特定的设备类型MfctrDVC-CriticalService来创建这种设备类型。这样,用户覆盖其中一个参数。在这个后续的场景中,当用户改变VALVE中的相同参数的值时,在DVC和MfctrDVC中参数值自动更新,因为DVC和MfctrDVC不覆盖该参数值。然而,在MfctrDVC-CriticalService中参数值不改变,因为用户已经覆盖了该参数值。
因此,在一个实施例中,从其他项目派生的库项目总是在父库项目改变时更新,而不考虑系统配置项目的分发策略设置。然而,由于冲突,父库项目的当前版本不会自动传播到具有结构改变的派生库项目。在用户校正了这一问题之后,用户可以手动更新派生库项目。
18、用户更新导致违反规则的用法。
在这种场景下,到系统配置对象的分发被设置为自动。然而,如果违反规则(例如,数据库规则),则分发对库项目的改变可能不能够更新一些或所有的子系统配置实例。当分发关联与发布的下一步时,这种偏差在用户保存库项目时可能并不明显。事实上,新版本可能已经在观察到偏差之前被其他链接的项目使用。在这种场景下,用户可以编辑库项目以校正偏差,从而产生库项目的新的当前版本,该新的当前版本可用于所有实例而不违反规则。
为了说明,利用新的用法来更新新版本与被添加到实例的名称冲突。例如,库存储具有命名为USAGE1的用法的库模块LM。库模块LM的系统配置实例MA和MB存在于区域AreaA中。然后用户向实例MA添加用法USAGE2。
用户向库模块LM增加了用法USAGE2,发布库模块LM,并且分发。由于实例MA已经使用了USAGE2,因此实例MA留下是不当前,并且“不当前”指示符对应于实例MA。然而,实例MB没有这样的用法,被成功更新。
19、用户在从用户管理切换到自动系统配置分发之后保存库项目。
在这种场景下,库项目由多个显示使用。一个显示使用当前版本,而其他显示使用前一版本。用户从用户管理切换到自动分发。分发从用户管理的自动分发的改变不影响显示。
当系统配置分发设置被设置为自动时,用户修改库项目。因此,库项目的所有实例都被更新以使用当前修改版本。由于所有的系统配置实例都被更新,所以库项目的老版本不再被参考,并且可以被自动删除。库项目的图标改变为指示仅存在一个版本。
20、用户下载未在使用库项目的当前版本的实例。
用户可以将未在使用库项目的当前版本的系统配置实例下载到过程元素。下载请求可能会导致显示下载警告。
21、用户下载具有未在使用库项目的当前版本的用法的对象。
用户可以将未包括库项目的用法的当前版本的系统配置实例下载到过程元素。下载请求可能会导致显示下载警告。
22、用户导入包含库项目的文件。
在这种场景下,用户导入文件,并且文件中的项目的列表被提供给用户。用户可以为每个项目选择导入行为(如跳过、覆盖,等)。
如上述示例性场景说明,用户可以使用本文所述的灵活配置技术、系统和方法来执行至少以下动作或命令:
编辑–打开并可能修改项目或对象。用户可以打开草案或版本。
保存为草案–保存打开(并可能修改过的)项目作为草案。
测试–运行草案对象而不下载或实例化该草案对象。
批准–批准草案发布。
发布–获取草案并把它变成当前版本。通常,在批准草案后执行发布。
产生–从发布的或当前版本生成下载的或运行时版本。
发送–发送版本给运行环境。
下载–向运行环境发送下载版本的发送命令的实施例。通常,下载是在系统配置项目的上下文中进行的。
分发/传播/更新–利用对特定的对象编辑做出的修改来更新另一个链接的对象。更新、分发或传播对特定对象的修改可能会导致更新多个其他链接的对象,例如子对象和/或父对象。
从库中更新–将对库对象版本的修改更新(例如,分发或传播)给从该库对象派生的子对象。库对象的更新或传播可能会导致更新多个级别的链接的子对象。这样,例如,用户可以从库项目的当前版本生成实例或派生项目使用。
删除–从存储设备中删除对象或项目。
验证–检查项目或对象以寻找错误。草案和版本都可以被验证。
差异–确定对象或项目的各个版本之间的差异。
参考–确定与项目或对象相关联的参考。
在一些实施例中,上述动作或命令的一个或多个可以隐藏或终端用户不可用。例如,生成和发送命令可以组合成下载命令,或者用户可能不被允许删除项目,除非用户具有正确的权限。
在一个实施例中,用户能够请求灵活配置系统显示项目或对象的草案、当前发布版本和下载版本之间的任何差异。例如,用户可以请求查看草案和当前版本之间的差异、草案和版本控制中的任何版本之间的差异、草案和下载版本之间的差异、两个不同的草案之间的差异、两个不同的当前版本之间的差异、当前版本和下载版本之间的差异和其他的组合。
在一个实施例中,用户能够请求配置系统显示特定对象的所有直接链接的子对象,不论直接链接的子对象是否使用该特定对象的当前版本。相反,在一个实施例中,用户能够请求视图来确定子对象是否正在使用它的父对象的当前版本。
包:
在一些实施例中,上述草案、发布和实例化技术可应用于一组对象。一组或多个对象在本文中通常被称为“包”。在一个实施例中,包的成员由用户选择。在某些场景下,包的至少一些成员由制造商或供应商提供为开箱即用(out-of-the-box,OOB)。
例如,OOB包可以包括一组“启动器(Starter)”库项目(例如,模块,复合材料,显示器,设备,等)。用户可以从项目的启动器集合中选择不同的项目来创建过程解决方案,如控制回路或过程模型。如果用户向OOB包添加定制的对象,则用户可以指定增强OOB包作为与启动器包不同的包。
另一个示例性包可以包括配置实现,其被定制为解决特定的过程问题,例如,锅炉包或反应器包。这些包通常用作过程控制问题的完整解决方案,因此,称之为“解决方案包”。在一个实施例中,解决方案包包括可选的实例化规则,当用户产生包的实例时应用该实例化规则。例如,当锅炉包被实例化时,规则可以说明包中的所有项目都将根据命名约定使用字符串替换来命名。
类似于项目或对象,可以为当前包创建或编辑一个或多个草案。草案包可以发布为版本,并且版本可以被选择以实例化。在一个实施例中,当用户想要保存包的新版本时,新版本可以取代前一版本,或者新版本可以与前一版本同时存储。
这些包草案、包发布和包实例化技术还向用户提供了另一层面的灵活性。在一个示例性(但是非限制性)的场景下,创建库包并将其存储为包的第一草案。例如,库包对应于锅炉或反应器的模板配置。包的第一草案被发布并存储为第一版本,并被实例化到过程工厂或系统中。第一版本随后被修改(例如,以校正问题和/或向锅炉或反应器添加功能),并随后发布为包的第二版本。在接收到用户指示以实例化包的第二版本时,只有包的第二版本中包括的、从包的第一版本更新的项目被实例化。此外,用户可以根据逻辑、性能、带宽和/或其他限制的要求,指示各个更新项目的实例化的时间。如果第二版本的用法需要出于任何理由被终止,第一版本可以被重新实例化到过程工厂或系统中。
图形或显示项目或对象:
现在转到灵活的图形或显示项目或对象的讨论,“显示”一般所指是图形实体(例如,大多数颗粒状实体),其可以被操作者在运行时单独打开和查看。通常,灵活的图形或显示项目或对象是从其他图形对象配置的,并且可以存储在对象库或系统配置数据存储实体中。显示可以通过下载发布版本以在过程元素的运行时执行而实例化,或者可以被实时地实例化,如当操作者请求构建特定的显示视图时。可以通过灵活的图形项目或者对象定义的显示的类型包括,例如:
1)操作显示:操作显示通常提供过程在过程工厂中运行时的窗口或者表示。通常,显示视图是根据GEM和其他库和/或系统配置对象配置的,并且可以在本地或者远程用户接口实例化。
2)仪表盘显示:仪表盘显示向操作者和工厂人员提供了关键度量。仪表盘显示可以根据库和/或系统配置对象来配置并且在本地或者远程用户接口处实例化。在一些实施例中,仪表板显示上包括的有限能力、特征或者图形可以由操作者在运行时配置和实例化。仪表盘上包括的功能、特征和图形元素和形状通常被称为“小配件(Gadgets)”。一般来说,小配件是已被标记为可在运行时使用并且可以放置在仪表板显示上的GEM。因此,本文所使用的术语“GEM”一般是指作为小配件的GEM和不作为小配件的GEM。仪表盘和小配件的例子在2012年10月8日提交的、名称为“Configurable User Displays in a Process ControlSystem”的共同待决的美国临时申请No.61/711,105中提供,其全部内容在此被引用以作为参考。
3)布局显示:布局显示提供用户接口上的区或者区域以允许用户能够组织其上的其他显示。利用布局显示,用户能够在单个监视器屏幕上或者跨多个监视器屏幕创建显示的安排。
4)形式显示:形式显示提供用户接口供配置或者运行时期间的数据输入。用户可以利用形式显示来创建或者修改对象,输入配置或者运行时数据,输入值,以及一般性地操作显示项目和对象。
显示通常包含一个或多个视图,每个视图是显示的不同可视化表示。显示的每个视图可以包含形状(例如,矩形,椭圆形和其他形状)和/或控制(例如,标签或文本框),并且可以具有存储在对象库中或作为系统配置数据存储实体中的相应的对象。一些形状,如矩形,文本框或堆叠面板,可内置并存储在配置系统中(例如,例如被编译并向系统注册)。其他形状可以由用户创建,并且对应的形状对象可以存储在对象库或作为系统配置GEM或小配件。
如前面所讨论的,GEM或小配件是将一个或多个形状和行为进行组合的可重用的形状。GEM和小配件可以由用户创建,发布为版本,并且存储在配置系统中作为对象,如在库中或在系统配置中。GEM可以链接到其他对象,并且对GEM对象的后续改变可能会传播到其他GEM和显示中的GEM的所有使用,例如以如前所述的方式。在一个实施例中,开箱即用(OOB)形状、GEM、小配件和显示(在某些情况下,对应于客户的特定行业)在配置系统的库中提供,例如作为一组原语对象或对象的“启动器集合”。
与显示类似,GEM可以包含一个或多个可视化表示或视图。每个GEM视图包括一个或多个内置和/或创建的形状。图12示出了示例性阀GEM的三个可能的不同视图,即垂直视图1060a、水平视图1060b和另一水平视图1060c。GEM的视图可以用来呈现不同的细节级别、形状排列或呈现有关GEM的信息的不同焦点。
除了相对静态的形状和视图,显示、GEM或小配件还可以包含动态行为以允许操作者看到过程数据,通过过程数据导航,或改变过程数据。动态行为例如可以包括动画和事件处理,在下面讨论。
动画将来自过程工厂内的信息源的过程数据映射到显示上的各种形状以通过文本或图形方式显示数据。动画效果可以应用于形状域(例如,应用于文本域或可见性域),以使得当信息源的域值改变时,动画也改变。因此,动画允许利用函数操纵过程数据(例如,数学函数)以将原过程数据转换成有意义的可视化表示。例如,动画可以应用到矩形形状以显示针对罐液位的矩形填充百分比,或者动画可以应用到文本形状以文本地显示填充百分比值。
事件句柄被配置为执行对事件(如单击鼠标、键盘操作和快捷键移动)的定义的响应。定义的响应例如可能是导航到另一个显示,确认警报,改变过程设置点,输入数据,和其它动作。
由于GEM可以被包含在多个可视化表示或视图中,所以与GEM相关联的动画和事件句柄可以被创建一次并且重用于各种视图中以提供数据的不同取向或呈现。因此,采集GEM和针对其各个视图修改GEM用法所需的自定义代码的量可以减少。
为了使GEM可在许多对象和信息来源之间可重用,在一个实施例中,利用占位符对动画和事件句柄路径进行部分或完全符号化。占位符值的值可以在配置GEM的特定用法时提供,或者占位符值可以在运行时被编程设置。动画和事件句柄可以参考占位符,以使得占位符的值在运行时在参考中被取代以解析到特定对象的路径。此外,类似于GEM,显示也可以支持占位符,以使得显示可重用。通过提供各个占位符的值,显示实例可以被创建作为配置的一部分或在运行时被动态创建。
在一些实施例中,利用全局设置影响信息的重用和共享。全球设置允许配置设计师配置在许多不相关的显示和GEM之间共享的状态和行为,例如在客户端人机界面(HMI)会话的生命期期间。全局设置中的项目可被任何显示或GEM参考和使用,从而允许在许多项目之间进行重用和共享。在一个实施例中,全局设置中的每个项目被存储在一个对象中,该对象被链接到与该全局设置相对应的对象。
在一些实施例中,信息的重用和共享通过利用样式和/或样式集而受影响。样式是域名和值对的集合,而样式集是样式的集合。在一个实施例中,所有形状都支持样式。当形状被用户添加到显示或GEM的视图时,样式域可以被设置为样式集的希望的样式。因此,添加的形状使用样式中为每个域定义的值。样式和样式集可以在配置系统中由相应的对象表示。
在一些实施例中,命名常数允许用户在创建名称-值对时的灵活性。例如,图形元素对象内的域被分配一个命名常数作为值,如TitleFont或TankBodyColor。名称常数允许创建工程标准并且将其分配给域值。如果工程标准发生了改变,则命名常数值可以在一个中央位置更新。命名常数例如可以包含名称、标题、描述和数据类型。任何域值可以被设置为值或命名常数,如关于形状用法、动画、转换器、表格、全局集和样式的域。
模式:
显示对象可以通过一个或多个模式彼此和与其他对象相关,如用法模式或派生模式。此外或替换地,配置对象可以通过一个或多个模式彼此和与其他对象相关。不同类型的模式的使用不一定相互排斥。例如,几种模式的不同方面可以组合。
用法模式通常是基于定义的对象的容器或组。图13示出了定义用法设计模式的例子的图。利用用法模式,图形对象1062a的定义包括一个或多个其他图形项目1062c的一个或多个用法1062b。当实例化时,这些用法1062b代表由图形对象1062a定义的图形形状,其在显示的视图上呈现。每个用法1062b可以具有定义,该定义包括内部项目(如域、事件和行为)的缺省值。在一个实施例中,这种内部项目可以被配置。
根据需要,定义用法模式可以嵌套多个级别。图14示出了示例性嵌套定义用法设计模式的类图。例如,显示可以包含GEM,它可以包含另一个GEM或形状。
图15示出了抽象的嵌套定义用法的例子。在图15中,用法C1(参考标号1065a)基于用法B1(参考标号1065b)的定义。用户可以修改(例如,覆盖或调整)来自另一个用法的一个或多个内部项目。例如,在图15中,对用法C1(参考标号1065c)的改变是一个调整。
另一种可以关联对象的模式是派生模式。图16中示出了示例性派生模式的图。派生模式允许在不使用聚合(如上述定义用法模式的情况下)的情况下扩展定义。特别是,派生模式允许创建新的定义1068a而不创建层次结构中的另一级别。例如,“基于”定义1068a中的所有内部项目都包括在派生定义1068b中。
派生模式可以嵌套多个级别,例如,派生定义可以基于另一派生定义,其最终可以基于非派生定义。嵌套级别的任意希望数量都是可能的。图17示出了嵌套派生模式的例子,其中从第一派生定义1070b创建新的定义1070a,第一派生定义1070b是从第二派生定义1070c创建的,第二派生定义1070c是从非派生定义(未显示)创建的。
灵活项目和对象:
如前面所讨论的,在配置系统中可以灵活地定义并且使用对象。在一个实施例中,灵活的对象可以包括一个或多个内部项目,其又可能由另一对象定义。以下是可以包括在系统配置中的灵活项目、对象和内部项目的描述。虽然这些描述是在图形或显示对象的背景下呈现的,但是本文所讨论的概念和属性也适用于配置对象。
域是表示给定对象的状态或属性的内部项目。例如,矩形大小存储在宽度域和高度域中。每个域可以具有名称和值。在一个实施例中,与域相关联的附加的元数据指示域的其他属性,如域是否可动画,域是否只读,以及域的数据类型。例如,元数据可以用来配置给定的对象。域的值可以是简单数据类型,如字符串,或可以是对另一个对象(如库对象、形状对象或过程元素对象)的参考。在一个实施例中,域的值可以由用户修改或覆盖。
占位符是允许定义的项目跨多个其他对象使用的广义的内部项目。例如,对于显示对象,占位符可以是图形项目,其允许概括动画和事件句柄并且跨各种图形或显示对象以及信息源路径重用。因此,占位符提供一定程度的间接性,并且在运行时用值来解析。在一些实施例中,占位符可以嵌套。
参数是代表域的状态或属性的内部项目。例如,对于显示和图形对象,参数可以是具有值和状态的图形元素。参数可以被添加到图形项目(如GEM、小配件、显示和仪表板、布局和形式、全局集等)。参数在运行时通常是不可见的。然而,通过创建参考该值的表达式,参数可以在运行时期间影响对象的可见方面(如动画)。用户可以向对象添加参数,但在一些实施例中,用户可能被不允许向特定库项目或原语对象添加参数。
功能是提供针对特定对象的行为内部项目。例如,利用显示和图形对象,功能可以是从一个组或一个全局集提供的图形项目或一般行为。例如,一组可视项目可以提供AddShape()函数,或全局集可以提供OpenDisplay()函数。某些功能可以内置并且因此不能被用户改变。其他的功能可以由用户创建。在一个实施例中,函数可以在运行时期间经由编程API或脚本执行。此外,功能可以取一个或多个参数,例如常数、域的值、对另一对象的参考或对参数的参考。在一些情况下,函数可以返回一个值,例如,常数、域的值、对另一对象的参考或对对象的参考。
动画是将数据从信息源或对象映射到内部项目的域的内部项目。例如,对于显示或图形对象,动画可以将数据映射到矩形的FillPercent域或标签的文本性质。动画包括在表达式的参考值改变时被重新评估和/或重新计算的表达式。此外,动画与目标域(例如要利用重新计算的表达式的结果更新的父对象上的域)相关联。因此,在运行时,当动画的计算值改变时,目标域被利用重新计算的值更新,从而使屏幕渲染改变。在一个实施例中,动画包括更新频率,并且可以包括用于变换表达式结果的转换器。
转换器是将动画的表达式结果变换为最终的动画结果的内部项目。例如,这个变换可以改变表达式的重新计算的值(结果)、结果的数据类型或格式、结果和数据类型两者,或者该变换可以执行对该表达式的结果的一些其他类型的转换。每个转换器类型可以包括可由用户配置的特定域。
事件是定义了动作和反应的对象的内部项目。事件的定义通常包括事件触发器,如用户点击,鼠标移动,鼠标悬停,或数据改变。可选地,事件还定义有事件句柄,事件句柄在触发器触发时执行一个或多个响应功能或行为。事件句柄可以由用户进行配置,可以被提供为预先配置的定义上的OOB行为,或者可以被提供作为特定形状的内置行为。添加定事件的事件句柄允许顾客创建基于特定触发器的行为。
每个事件触发器可以支持一个或多个特定参数。一般来说,事件触发器包括指示触发事件触发器的对象的发送方参数。此外,事件触发器可以包括适合于事件类型的可选参数,如要在触发时发送的信息。例如,鼠标点击触发器可以只有发送方参数,而鼠标移动触发器可以具有当鼠标移动被触发时被要发送的发送方参数和鼠标位置坐标(例如X,Y)。在某些情况下,事件不会基于用户动作而触发,而是当对象的域值或系统状态改变(例如从初始化到稳态)时触发。
在一些实施例中,事件句柄被配置用于事件触发器。在这些实施例中,当事件触发器触发时调用事件句柄,并且响应于触发器触发而执行一个或多个功能。在一个实施例中,用户定义要包括要与可用函数(例如,显示、窗口或全局集可用的函数)一起执行的定制行为或逻辑的事件句柄。
表格是包括具有输入值和输出结果的一个或多个数据结构的内部项目。在一个实施例中,表格可以与表格转换器一起使用,以将输入值从一种数据类型转换到另一种。例如,对于图形对象,表格用法可以包括将过程值转换为颜色,或将过程值转化为字符串。这样,表格提供了非编程方式来配置输入值的范围的结果。表格可以对输入值的精确匹配或输入值的范围进行操作。
形状对象基本上是广义的可视构建块,其可以结合在一起以创建复杂和专门的可视项目的可视化表示,如GEM和显示。一些形状对象可以是内置的(例如,具有通过配置系统安装的可执行OOB),并且称之为原语形状。原语形状可以属于几种类型中的一种,如几何形状(例如矩形,椭圆,直线)、可以排列其他形状的容器(例如,组、板、网格)、或控件(例如,文本框、下拉组合框或批处理列表控件、趋势)。
每个形状(无论是否是原语的)具有定义。定义可以包括例如一个或多个域、动画、具有事件触发器的事件、句柄和/或连接点。在一个实施例中,形状可以支持样式域。通常,大多数形状是可配置的并且可修改的。例如,矩形被提供为配置系统的内置,并且用户可以通过设置域值和向矩形用法添加事件或动画来修改矩形对象。然后用户可以保存修改后的矩形形状作为新的对象,并且可以在批准后发布。
图18示出了基于矩形的定义1078创建的形状用法Rect 1(参考标号1075)。用户已经从矩形定义的缺省值修改了宽度1080a和高度1080b域的值。此外,用户已添加了目标是宽度域的动画1082a,并且添加了范围转换器1082b以适当缩放该值。用户还增加了针对点击事件1085b的用法1075上的事件句柄1085a,并且该事件句柄已经被配置来调用OpenDisplay()函数。在一个实施例中,只有被特别覆盖的域(例如,1080a,1080b)是持久的。也就是说,形状用法1075链接回定义1078,并且其值未被覆盖的任何域来自定义1078(或者在某些情况下来自样式)。例如,如果矩形定义1078的前景刷从蓝色变为灰色,则未覆盖该前景刷的任何用法(例如,用法Rect1 1075)将在该改变从矩形定义1078版本传播过来之后具有蓝色的前景刷。
关于几何形状定义,一组形状允许几个形状对于某些动作(如可视性、改变大小、布置/取向和事件)被视为一个形状。例如,组形状是相对保持各自的(X,Y)坐标方向的多个形状的副本。域的行为和组的事件以及它们如何影响域和该组内包含的形状的事件都是可配置的。例如,动态模型是一种类型的组形状。
面板形状可以类似于一个组形状,但可以允许更具体地控制包含的形状的渲染(例如,在大小、位置、排列等方面)。面板内的项目一般都是按序或停靠到面板的特定区域,并且与组不同,没有相对的坐标设置。面板给予用户在不知道项目的确切数目时控制项目的能力,以及在面板或包含的窗口改变大小时可视地安排项目而不需要单独地移动每个项目的能力。面板还提供当项目被添加、移除或隐藏在面板内时通过调整其他项目的位置以移除空白空间并且避免重叠的行为。
连接器用法表示过程工厂中的物理链接元素,如电线、管道、风道或输送带。在配置过程中,连接点表示连接用法到形状用法的连接的指示。当形状用法在配置期间移动时,连接器用法允许连接器跟踪和重新路由以及改变大小。特别是,连接器根据其定义的算法和设置来遵从和路由。因此,连接器是链接到显示上的其他显示对象的形状,并且由各自的性质和行为定义。当放置在显示上并且连接时,连接器能够在不同形状用法之间路由。配置用户可以修改连接器的放置或路由、定义缺省的可视效果和/或修改连接器用法的连接点。
层是另一种类型的显示对象,其可在配置时间使用以通过隐藏和锁定可能会干扰当前任务或可能防止形状用法被无意修改的形状以组织和提高用户的编辑经验。层提供一种组织形状用法的方式以有助于显示定义和/或GEM视图定义的配置。层还可以用于组织形状以提供运行时特征,如显示和隐藏细节(如帮助、维护或诊断层)。
特别是,视图可以具有一个或多个层。视图内的形状可以与特定层相关联(例如,形状对象和层对象可以链接)。特定层可以被指定为仅用于配置,或用于配置和运行时二者。层可以是可视的或隐藏的。层可以被锁定和解锁以防止被无意选择或修改。当层的可视性改变时,值可以递归地传播给通过包含的GEM用法上的名称来匹配的所有层。例如,“帮助”层上的可视性应用于与帮助层相关联的任何GEM用法。
用户创建的项目和对象:
上述灵活对象中的至少部分可以由用户创建,如:
显示器-例如可以在运行时由用户打开的可视项目。显示通常表示操作过程的视图或提供有关过程的特定区域的细节。
GEM和小配件-例如,表示过程中的过程元素或其他实体并且可以包括(例如,放置)在显示或其他GEM上的配置的形状。例如,设备、控制模块、动态模型、显示视图或其他过程元素可以通过GEM表示。GEM可被配置为可重用以表示工厂或过程内的过程的相同类型的设备或零件的不同实例。因此,GEM可以被配置并且测试一次,但可以在其他GEM和显示中使用多次。通常,GEM包括名称、标题、描述、选定的视图和其他域(如表格、事件、参数和功能)。GEM例如可以嵌套在其他GEM中或在显示内。通常,GEM具有一个或多个视图定义,该视图定义提供GEM的一个或多个对应的可视化表示。可以向GEM提供缺省视图,并且在一些实施例中,用户能够改变缺省视图。事实上,用户可以改变GEM定义的任何域。
在一个实施例中,小配件是可以在运行时可用并且能够放在仪表板显示上的GEM。操作者例如可能能够在运行时期间创建和修改小配件。
GEM定义可以是从另一GEM定义派生的。当GEM从另一GEM派生时,派生的GEM包括来自其所基于的GEM的所有视图。用户可以修改这些视图或向派生的GEM添加附加视图。附加视图可以是独立的,可以从当前GEM定义中定义的已有视图派生,也可以从其所基于的GEM定义创建。
在一个实施例中,当GEM放在显示视图或另一GEM视图中时,放置的GEM成为形状用法(类似于添加内置的形状用法,如矩形或组)。然而,放置的GEM仍然链接到它们各自的定义,并且对用法的改变基于传播设置与策略而传播。
在一个实施例中,修改GEM用法(例如,调整大小)类似于修改组用法。此外,GEM或小配件可以通过使用提供给配置设计师的标准化或部分标准化的形式来配置。
视图-例如,显示或GEM内的可视化表示。每个显示或GEM可以具有一个或多个定义的视图。可视或图形项目(例如,形状和其他GEM)可以被添加到视图定义。视图可以是独立的,或者可以从同一父定义或基础定义内的另一视图派生出。
独立视图定义通常会定义它们的整个内容和信息,如形状、静态配置的域值、动画和事件句柄。因此,独立的视图定义是不基于包容性显示或GEM定义内的任何其他视图定义的。但是,显示或GEM定义可以具有独立的并且不是从公共视图派生的多个视图。
另一方面,派生视图定义通常基于同一个容器定义内的另一个视图定义。当容器定义是派生的,则视图定义可以从容器定义所基于的定义的视图派生。例如,如果显示A定义了视图A和视图B。如果显示B是从显示A派生的,那么显示B将缺省地具有视图A和视图B,但是还可以定义从视图B派生的视图C。
视图定义可以包括用户可以配置或用户可以向其添加针对这些域的动画的已知域的集合。视图定义也可以包括具有已知触发事件的一个或多个事件,用户可以向其添加事件句柄。此外,特定视图定义包括形状用法,例如,来自其所基于的视图的所有用法,以及添加到这个特定视图定义的任何形状用法。视图可以提供命名空间,以使得视图定义中的项目是唯一命名的。
全局集合-例如,保持状态(例如,值)和行为(例如功能)的配置的项目,其可以从不相关的显示、小配件和GEM参考。一般来说,全局集合没有任何运行时的可视化表示,但在运行时是可用的。全局集合可以被标记为单元素的,或者全局集合可以对应于实例或一组对象。因此,全局集合提供了一种方法来在许多对象之间共享和重用信息。
样式和样式集合-例如,可能在一个地方发生了改变并且应用在形状用法或其他可视化项目的集合以保持一致性的域名和值的集合(例如,域/值对)。样式集合是样式的集合,通常包括名称、标题、描述和其他可能的域。在一个实施例中,当形状具有样式集合时,如果域没有被覆盖并且不是动画,则该样式中的域的值应用于该形状。样式集合可以是可编辑的并且可版本控制的。
因此,如上所述,配置系统支持可视或图形项目的健壮集合,每个可视或图形项目由各自的对象定义。可视或图形项目的集合可以包括例如一个或多个显示定义、仪表板、布局、GEM定义、小配件定义、全局集合、内置的形状定义、组定义、视图定义、形状用法、组用法、动态模型、GEM用法、小配件用法、浏览器(chrome)用法、区域用法、面板用法、连接点、连接器、动画、转换器、事件触发器、事件句柄、占位符、参数、功能、表格、名称集合、样式和/或样式集合。可视或图形项目的集合的至少一部分可以由用户创建或修改。
此外,定义每个可视或图形项目的对象可以包括例如一个或多个内部项目,如域、事件触发器、功能、视图定义、事件句柄、动画、占位符、参数、表格、名称集合、转换器、内置形状的用法、GEM用法、小配件的用法、Chrome用法、区域用法、组用法、动态模型、面板用法、连接点、连接器、全局集合、样式集合和/或样式。可视或图形项目的对象中定义的每个内部项目可以是内置于配置系统的、由用户添加的、通过定义配置的或参考另一项目的。
改变、修改和调整:
如前面所讨论的,用户可以改变、修改或调整对象定义的内容。也就是说,用户可以改变对象的一个或多个内部项目同时保持到各自所基于的定义的链接。这些改变、修改或调整可以包括例如添加、删除、和/或修改对象的内容(例如,域或其他内部项目)。此外,这些改变在发布为版本时,通常优先于其所基于的对象的定义,并且在新版本被传播时可以允许应用来自修改的定义的未来改变。例如,如果定义中包含的项目(例如GEM)在用法或派生的视图中被修改和调整,则调整优先。然而,如果该项目被删除出其所基于的定义,则对用法或派生的定义的调整丢失。例如,在其所基于的定义中包含的项目(如GEM)被删除,但之前在用法或派生的定义中被调整。在这个例子中,调整丢失。此外,如果其所基于的定义中包含的项目(如GEM)被修改,但是在用法或派生的定义中已被删除,则对其所基于的定义的改变不传播给该用法或派生的定义。
在一个实施例中,特定子对象或用法上的调整可以被推回到其所基于的定义。在一个例子中,其所基于的定义被更新到包括对子对象的调整的新版本,并且该调整从子对象移除。
图19-21示出了可以对各个可视项目和对象做出的修改或调整的例子。特别是,图19示出了应用于用法模式的域值覆盖调整的例子。在图19中,宽度域值1090a和高度域值1090b被覆盖。
图20示出了应用于派生模式的域值覆盖调整的例子。在图20中,宽度域值1092a和高度域值1092b被覆盖。
图21示出了应用于对象的多个级别的多个修改或调整的例子。特别是,图21示出了应用于较低定义的调整如何成为下一级的缺省值(例如,参考标号1095a-1095c),如何在多个级别覆盖值(例如,参考标号1098a、1098b),以及对最外层定义的覆盖如何占优(例如,参考标号1100)。
如图19-21中所示,在一个实施例中,调整可以在用法模式和派生模式上执行。此外,可以对配置项目或对象和/或可视或图形项目或对象进行调整或修改。例如,可以调整的可视或图形项目的集合可以包括例如一个或多个显示定义、仪表板、布局、GEM定义、小配件定义、全局集合、内置的形状定义、组定义、视图定义、形状用法、组用法、动态模型、GEM用法、小配件用法、chrome用法、区域用法、面板用法、连接点、连接器、动画、转换器、事件触发器、事件句柄、占位符、参数、功能、表格、名称集合、样式和/或样式集合。此外,调整可以在其他对象定义中包含的一个或多个对象上执行,如域、事件触发器、功能、视图定义、事件句柄、动画、占位符、参数、表格、名称集合、转换器、内置形状的用法、GEM的用法、小配件的用法、Chrome用法、区域用法、组用法、动态模型、面板用法、连接点、连接器、全局集合、样式集合和/或样式。
在实施时,本文所描述的方法和技术的任一个或其部分可以通过执行存储在一个或多个非暂态、有形计算机可读存储介质或存储器(如磁盘、激光盘、光盘、半导体存储器、其他存储设备或其他存储介质)中、计算机或处理器的RAM或ROM中等的软件来执行。在一个实施例中,本文所描述的方法和技术的任一个或其部分可以通过配置器或灵活配置器(例如一个或多个配置应用或其他合适的应用)来执行。配置器可以可通信地耦接到过程工厂或过程控制系统中所包括的数据存储设备和一个或多个可配置元素。配置器可以包括存储在一个或多个有形非暂态存储器或计算机可读存储介质上的计算机可执行指令,该计算机可执行指令可以运行以执行本文所描述的方法和技术的任一个或其部分。
虽然上述文字阐述详细描述了许多不同的实施例,但是应该认识到,专利的范围是由本专利末尾提供的权利要求的语言及其等价物定义的。详细的描述被视为仅仅是示例性的,而不是描述每一个可能的实施例,因为描述每一个可能的实施例是不切实际的,甚至是不可能的。众多可选的实施例可以使用当前技术或本专利申请日之后出现的技术来实现,这将仍然落入权利要求及其所有等价物的范围内。通过举例而不是限制的方式,本公开涉及至少有以下几个方面:
一种配置过程工厂的方法,包括:
接收用于指示对于所述过程工厂的特定元素的当前过程元素对象的修改的第一用户输入指示,所述特定元素对应于在所述过程工厂中受控的一个或多个过程;
基于第一用户输入,修改当前过程元素对象以产生特定元素的修改的过程元素;
将所述修改的过程元素对象的实例化延迟至由第二用户输入指示的指定时间;
在指定时间,使得修改的过程元素对象的实例化,以使得所述特定元素在运行时根据所述修改的过程元素对象进行操作,以提供与所述过程工厂中受控的一个或多个过程有关的控制或显示。
根据前述方面的方法,其中:
接收指示修改当前过程元素对象的第一用户输入包括:接收指示对从其中创建当前过程元素对象的集合的一个当前实例对象的修改的用户输入,当前过程元素对象的集合包括特定元素的当前过程元素对象以及从类对象中创建的当前实例对象;和
该方法还包括基于指示对当前实例对象的修改的用户输入,修改当前实例对象,以产生一个修改的实例对象,并且基于所述修改的实例对象修改所述当前过程元素对象的集合。
根据前述方面的方法,其中:
当前实例对象是第一当前实例对象,
修改的实例对象是第一修改的实例对象,并且
该方法还包括基于指示对第一当前实例对象的修改的用户输入,修改第二当前实例对象,以产生第二修改的实例对象,第二当前实例对象从类对象中创建。
根据前述方面的方法,其中,所述第二当前实例对象基于所述第一当前实例对象。
根据前述方面的任一项的方法,其中:
指定时间是第一指定时间;
当前过程控制元素对象的集合是当前过程控制元素对象的第一集合;和
该方法还包括:
使所述当前过程控制元素对象的第一集合在所述第一指定时间实例化,并
使与第二修改的实例对象相对应的当前过程控制元素对象的第二集合在不同于所述第一指定时间的在第二指定时间实例化。
根据前述方面的任一项的方法,其中以下各项中的至少一项:
所述第一当前实例对象通过用户指示,
所述第二当前实例对象通过用户指示,
所述第一指定时间由用户指示,或者
所述第二指定时间由用户指示。
根据前述方面的任一项的方法,还包括:维护另一当前过程元素对象,包括:基于指示对当前实例对象的修改的用户输入,不修改另一当前过程元素对象,所述另一当前过程元素对象基于类对象,并排除在对应于当前实例对象的当前过程元素对象的集合之外。
根据前述方面的任一项的方法,还包括传播对当前实例对象的所述修改给类对象。
根据前述方面的任一项的方法,其中接收指示修改当前过程元素对象的第一用户输入包括接收指示一个修改到一个类对象在其上的当前过程元素对象是根据用户输入。
根据前述方面的任一项的方法,其中:
当前过程元素对象是第一当前过程元素对象,
修改的过程元素对象是第一修改的过程元素对象,并
该方法还包括基于所述第一用户输入修改第二当前过程元素对象,以产生第二修改的过程元素对象,第二当前过程元素对象基于类对象。
根据前述方面的任一项的方法,其中指定时间是第一指定时间,并且该方法还包括使所述第二修改的过程元素对象在不同于所述第一指定时间的第二指定时间实例化。
根据前述方面的任一项的方法,
其中,第一当前过程元素对象中的至少一个从第一实例对象创建,或者第二当前过程元素对象从第二实例对象创建,并且
其中,第一实例对象和第二实例对象是从类对象创建的。
根据前述方面的任一项的方法,其中:
当前过程元素对象是第一当前过程元素对象,
修改的过程元素对象是第一修改的过程元素对象,并
该方法还包括基于所述第一用户输入不修改第二当前过程元素对象,第二当前过程元素对象基于类对象。
根据前述方面的任一项的方法,其中所述第二当前过程元素对象由用户指示。
根据前述方面的任一项的方法,其中接收指示对当前过程元素对象的修改的第一用户输入包括以下各项中的至少一项:
添加当前过程元素对象的内容,
删除当前过程元素对象的内容的至少第一部分,
禁用当前过程元素对象的内容的至少第一部分或者当前过程元素对象的内容的至少第二部分,
启用当前过程元素对象的禁用内容,
改变当前过程元素对象中包括的值,
改变包含在当前过程元素对象中的参考,
重新命名当前过程元素对象,或
解析包含在当前过程元素对象中的参考。
根据前述方面的任一项的方法,其中接收指示对特定元素的当前过程元素对象的修改的第一用户输入包括:接收指示对控制模块或显示模块的当前过程元素对象的修改的第一用户输入。
根据前述方面的任一项的方法,
还包括:
将修改的过程元素对象存储为草案修改的过程元素对象,
接收用户指示以发布草案修改的过程元素对象以生成发布的修改的过程元素对象;和
其中,使修改的过程元素对象实例化包括使发布的修改的过程元素对象实例化。
根据前述方面的任一项的方法,其中所述修改的过程元素对象是第一修改的过程元素对象,所述方法进一步包括:
接收指示对当前过程元素对象或第一修改的过程元素对象之一的另一修改的第三用户输入,并且
根据第三用户输入修改当前过程元素对象或第一修改的过程元素对象之一,以产生第二修改的过程元素对象。
根据前述方面的任一项的方法,
将修改的过程元素对象存储为草案修改的过程元素对象包括:将第一修改的过程元素对象存储为第一草案修改的过程元素对象,
该方法还包括:将第二修改的过程元素对象存储为第二草案修改的过程元素对象。
根据前述方面的任一项的方法,其中,接收用户指示以发布草案修改的过程元素对象包括接收所述用户指示以发布所选的草案修改的过程元素对象。
根据前述方面的任一项的方法,进一步包括:
接收用户请求以比较以下各项中的至少两个:当前过程元素对象、草案修改的过程元素对象和发布的修改的过程元素对象;和
在用户接口显示对应于用户请求的比较。
根据前述方面的任一项的方法,进一步包括:
接收要包括在草案包中的对象集合的选择的指示;
存储该草案包的指示;和
接收用户指示以发布草案包以生成发布包;和
使对应于包括在发布包中的对象的过程元素对象的集合实例化。
根据前述方面的任一项的方法,其中对象的集合包括类对象、实例对象、库对象或过程元素对象的至少一个。
根据前述方面的任一项的方法,其中:
草案包是第一草案包;
该方法还包括:
接收指示对第一草案包的修改的第三用户输入,和
根据第三用户输入修改第一包装草案;和
将修改的第一草案包存储为第二草案包;和
其中,接收所述用户指示以发布草案包来生成发布包包括:接收用户指示来发布所选择的草案包来生成发布包。
一种配置过程工厂的方法,包括:
接收指示对对应于在所述过程工厂中受控的一个或多个过程的当前类对象的修改的用户输入;
将修改传播给从类对象创建的当前对象的集合的第一子集的每个当前对象,以创建修改的对象的第一子集;
不将修改传播给从类对象创建的当前对象的集合的第二子集;
使与修改的对象的第一子集相对应的修改的过程元素对象的第一集合实例化,以使得相应的过程元素的第一集合在运行时根据所述修改的过程元素对象的第一集合进行操作,以提供关于在所述过程工厂中受控的一个或多个过程的控制或显示功能;和
维持与当前对象的第二子集相对应的当前过程元素对象的第二集合的实例化,使得过程元素的相应的第二集合在运行时根据当前对象的第二子集进行操作以提供关于在所述过程工厂中受控的一个或多个过程的控制或显示功能。
根据前述方面的任一项的方法,还包括:接收当前对象的第一子集的用户选择或当前对象的第二子集的用户选择的指示中的至少一个。
根据前述方面的任一项的方法,其中以下各项中的至少一项:
当前对象的第一子集包括从当前类对象创建的第一当前实例对象,
当前对象的第二子集包括从当前类对象创建的第二当前实例对象,
当前对象的第一子集包括具有基于当前类对象的定义的第一当前过程元素对象,或
当前对象的第二子集包括具有基于当前类对象的定义的第二当前过程元素对象。
根据前述方面的任一项的方法,还包括维持该修改的指示。
根据前述方面的任一项的方法,其中接收指示对当前类对象的修改的用户输入包括下列各项中的至少一者:
添加当前类对象的内容,
删除当前类对象的内容的至少第一部分,
禁用当前类对象的内容的至少第一部分或当前类对象的内容的至少第二部分,
启用当前类对象的禁用内容,
改变包括在当前类对象中的值,
改变包括在当前类对象中的参考,
重新命名当前类对象,或
解析包括在当前类对象中的参考。
根据前述方面的任一项的方法,还包括:将所述修改传播给从类对象创建的当前对象的集合的第三子集的每个当前对象,以创建修改的对象的第三子集。在一个实施方案中,包括所传播的修改的每个当前对象可以被重新命名。
根据前述方面的任一项的方法,其中,用户输入是第一用户输入,并且其中所述方法还包括:延迟所述修改的过程元素对象的实例化,直到由第二用户输入所指示的指定时间。
根据前述方面的任一项的方法,其中,指定时间是第一指定时间,并且该方法还包括延迟与当前对象的集合的第三子集相对应的修改的过程元素对象的第三集合的实例化直到不同于第一指定时间的第二指定时间。
根据前述方面的任一项的方法,其中,所述相应的过程元素的第一集合包括显示模块或控制模块中的至少一个。
一种配置过程工厂的方法,包括:
接收指示对从与所述过程工厂中受控的一个或多个过程相对应的类对象创建的当前实例对象的修改的用户输入;
基于用户输入修改当前实例对象,以产生修改的实例对象;
基于所述修改的实例对象,修改从当前实例对象创建的当前过程元素对象的第一集合,以产生修改的过程元素对象的第一集合;
使所述修改的过程元素对象的第一集合实例化,以使得相应的过程元素的第一集合在运行时根据所述修改的过程元素对象的第一集合进行操作,以提供与在过程工厂中控制的一个或多个过程有关的控制或显示功能;
将修改传播给其他对象的集合以生成修改的其他对象的集合,所述修改的其他对象的集合是基于类对象的;和
使与修改的其他对象的集合相对应的修改的过程元素的第二集合实例化,以使得相应的过程元素的第二集合在运行时期间,根据所述修改的过程元素对象的第二集合进行操作,以提供与在过程工厂中控制的一个或多个过程有关的控制或显示功能。
根据前述方面的任一项的方法,其中,所述当前实例对象是第一当前实例对象,并且其中将所述修改传播给其他对象的集合包括将所述修改传播给从类对象创建的第二当前实例对象。
根据前述方面的任一项的方法,还包括:不将所述修改传播给从类对象创建的第三当前实例对象。
根据前述方面的任一项的方法,其中,将所述修改传播给其他对象的集合包括将所述修改传播给类对象。
根据前述方面的任一项的方法,还包括维持该修改的指示。
根据前述方面的任一项的方法,还包括:基于所述修改的类对象,不修改当前过程元素对象的第二集合,其中当前过程元素的第二集合是基于类对象的,并由用户指示。
根据前述方面的任一项的方法,其中,将所述修改传播给其他对象的集合包括:将所述修改传播给基于当前实例对象创建的另一对象。
根据前述方面的任一项的方法,其中,所述另一对象是另一实例对象或从当前实例对象创建的过程元素对象之一。
根据前述方面的任一项的方法,还包括:接收对其他对象的用户选择的指示。
根据前述方面的任一项的方法,还包括:基于所述修改的实例对象,不修改当前过程元素对象的第三集合,当前过程元素对象的第三集合是基于当前实例对象的,并由用户指示。
根据前述方面的任一项的方法,其中,所述用户输入是第一用户输入,并且其中所述方法还包括:延迟所述修改的过程元素对象的第一集合的实例化,直到由第二用户输入所指示的指定时间。
根据前述方面的任一项的方法,其中,指定时间是第一指定时间,并且该方法还包括延迟所述修改的过程元素对象的第二集合的实例化,直到不同于第一指定时间的第二指定时间。
根据前述方面的任一项的方法,其中,接收指示对当前实例对象的修改的用户输入包括下列中的至少一者:
增加当前实例对象的内容,
删除当前实例对象的内容的至少第一部分,
禁用当前实例对象的内容的至少第一部分或所述当前实例对象的内容的至少第二部分,
启用当前实例对象的禁用内容,
改变包括在当前实例对象中的值,
改变包括在当前实例对象中的参考,
重新命名当前实例对象,或
解析包括在当前实例对象中的参考。
根据前述方面的任一项的方法,其中,所述相应的过程元素的第一集合包括控制模块或显示模块中的至少一个。
根据前述方面的任一项的方法,还包括:重新命名任何修改的对象。
一种配置过程工厂的方法,包括:
接收指示对过程工厂的特定元素的当前过程元素对象的修改的用户输入,该特定元素对应于在所述过程工厂中控制的一个或多个过程;
基于用户输入修改当前过程元素对象以生成特定元素的修改的过程元素对象;
将修改的过程元素对象存储为草案修改的过程元素对象;
接收用户指示以发布草案修改的过程元素对象以生成发布的修改的过程元素对象;和
使发布的修改的过程元素实例化,以使特定元素在运行时根据发布的修改的过程元素对象进行修改,以提供与在过程工厂中控制的一个或多个过程有关的控制或显示功能。
根据前述方面的任一项的方法,其中,所述用户输入是第一用户输入,修改的过程元素对象是第一修改的过程元素对象,并且所述方法还包括:
接收指示对当前过程元素对象或所述第一修改的过程元素对象之一的另一修改的第二用户输入,并且
根据所述第二用户输入修改当前过程元素对象或第一修改的过程元素对象之一,以产生第二修改的过程元素对象。
根据前述方面的任一项的方法,其中,
将修改的过程元素对象存储为草案修改的过程元素对象包括:将第一修改的过程元素对象存储为第一草案修改的过程元素对象,
该方法还包括将第二修改的过程元素对象存储为第二草案修改的过程元素对象。
根据前述方面的任一项的方法,其中,接收所述用户指示以发布草案修改的过程元素对象包括:接收所述用户指示以发布选择的草案修改的过程元素对象。
根据前述方面的任一项的方法,其中,进一步包括:
接收用户请求以比较以下各项中的至少两个:当前过程元素对象、草案修改的过程元素对象和发布的修改的过程元素对象;和
在用户接口显示对应于用户请求的比较。
根据前述方面的任一项的方法,进一步包括:
将过程工厂的多个草案修改的对象存储为草案包,多个草案修改的对象包括草案修改的过程元素对象;
接收用户指示以发布草案包以生成发布包;
发布多个草案修改的对象的至少一个子集,以产生包含在发布包中的发布的修改的对象的集合;和
使发布的修改的对象的集合实例化,以使得与发布的修改的对象的集合相对应的过程元素对象在运行时根据发布的修改的对象的集合进行操作,以提供与在过程工厂中控制的一个或多个过程有关的控制或显示功能。
根据前述方面的任一项的方法,其中,存储所述多个草案修改的对象包括:存储包括以下各项中的至少一项的多个草案修改的对象:草案类对象或从草案类对象或从另一类对象创建的草案实例对象。
根据前述方面的任一项的方法,还包括:接收对所述多个草案修改的对象的选择的指示。
根据前述方面的任一项的方法,其中,:
草案包是第一草案包;
该方法还包括:
接收指示对所述第一草案包的修改的另一用户输入,和
根据另一用户输入修改第一草案包;和
将修改的第一草案包存储为第二草案包;并且
其中,接收所述用户指示以发布草案包来生成发布包包括:接收用户指示来发布所选择的草案包来生成发布包。
根据前述方面的任一项的方法,其中,接收指示对当前过程元素对象的修改的用户输入包括以下各项中的一项:
接收指示对当前过程元素对象所基于的当前实例对象的修改的用户输入,或
接收指示对当前过程元素对象所基于的当前类对象的修改的用户输入。
配置以执行前述方法中的任一项或前述方法的任何组合的装置。
因此,鉴于前述内容,在技术,在此讨论的技术、系统、方法、设备和装置允许改变模块类和其他父对象以集成到过程工厂或过程控制系统中,从而以受控的方式随时间改变其操作和/或行为,使得在过程工厂或过程控制系统的各个部分(或者,在某些情况下,在整个工厂或系统中)的实时操作不会受到不利影响。另外,由于改变可以被递增地应用或分阶段到过程工厂或系统的过程元素(例如,而不是等待直到一个与改变的父对象的要被更新的子对象相对应的所有过程元素都适合的时间),对过程工厂或过程控制系统的部分(或在某些情况下,对整个工厂或系统)的改变的不必要的延迟的发生被降低,从而提高了过程工厂或系统随着时间的整体效率和生产率。
此外,本文所讨论的技术、系统、方法、装置和设备允许对父对象和/或子对象的修改或改变的草稿在过程工厂或控制系统的运行时环境中应用到或实例化到过程元素中之前(无论是从一个改变父对象或改变的子对象),批准它们。因此,不完整或不正确的修改或改变被无意中并入工厂或系统的机会显著降低,并且被集成到过程工厂或系统的改变的精度提高,从而提高了过程工厂或系统的操作的质量、效率和安全性。
此外,在此相对于图形元素和显示所讨论的技术、系统、方法、装置和设备允许更安全和有效地实时监控、控制和/或操作过程工厂或过程控制系统。特别是,操作者能够实时地或在运行时工厂操作环境中都配置图形元素和/或显示,该图形元素和/或显示被专门定制或定做用于过程控制系统或工厂的一个或多个部分的特定监控、控制和/或操作。另外地或可选地,一个或多个图形元素和/或显示可以被专门定制或定做用于特定操作者、操作者组、组织实体、企业或其它实体。操作者能够保存这些自定义的图形元素和/或显示以用于一般性(例如,全厂范围或全系统、实时或配置)访问、使用、重用和整合。因此,由于图形元素和/或图形显示的配置被简化并且可定制在多种环境中,因此操作者中断和错误减少,因此能够使操作者更有效率和更安全地操作过程工厂或系统。
更进一步地,由于图形元素和/或显示被定制用于过程工厂或系统的特定部分或实体的特定目的,因此由过程工厂或系统的特定部分或实体(例如,在控制一个或多个过程时)生成的、并且需要必要的手动和/或自动干预的实时数据能够使用该图形元素和/或显示容易地和快速地辨别。在一些情况下,与干预相关联并传递给过程工厂或系统的数据、配置和/或指令导致过程工厂或系统或其操作的改变(例如,过程元素的更新的或新的配置)。在某些情况下,所传递的数据、配置和/或指令使得过程工厂或控制系统执行一个动作(例如,从操作中移除特定过程元素、将由源产生的数据重新路由到另一个源等)。因此,由于在此描述的技术、方法和系统允许图形元素和/或显示产生更加定制和详细的信息(特别是,相对于由过程工厂或系统生成的实时数据),所以对过程工厂或过程控制系统的一个或多个部分的控制和/或操作的所有必要的修改被更迅速地确定并集成到过程工厂或控制系统的运行时环境中。因此,利用本文中所描述的技术、方法和系统,过程工厂或系统的效率和安全性进一步提高。

Claims (27)

1.一种方法,包括:
在过程工厂的运行时环境的操作者接口处接收对在所述运行时环境中执行的图形元素对象的实例的至少部分的覆盖的指示,
所述图形元素对象的实例(i)在所述过程工厂的配置环境中根据所述图形元素对象配置,并定义形状、动态图形行为、以及所述形状的多个可视化表示;(ii)从所述图形元素对象实例化到所述运行时环境中,以及(iii)在所述运行时环境中在显示对象的实例中执行,所述显示对象的实例包括多个图形元素,
所述显示对象的实例(i)在所述配置环境中根据所述显示对象配置,(ii)从所述显示对象实例化到所述运行时环境中,以及(iii)在所述运行时环境中执行并由此链接到相应的过程元素,并且
所述显示对象的实例提供与由所述过程工厂对工业过程的实时控制相对应的由相应过程元素生成的实时数据;
生成所述覆盖的定义,并将所述覆盖的定义与所存储的所述图形元素对象的实例的配置分开存储,由此使得所述覆盖的定义能够用于与所述图形元素对象的实例分开使用;
在所述运行时环境中向所述图形元素对象的实例的至少所述部分应用所述覆盖的定义,由此生成经修改的图形元素对象的实例;以及
在所述运行时环境中在所述显示对象的实例中执行经修改的图形元素对象的实例。
2.根据权利要求1所述的方法,其中,生成所述覆盖的定义包括生成对所述图形元素对象的实例的一个或多个参数的一个或多个值的一个或多个改变。
3.根据权利要求1所述的方法,其中,存储所述覆盖的定义包括将所述覆盖的定义与所述图形元素对象的实例一起存储。
4.根据权利要求1所述的方法,其中,生成所述覆盖的定义包括生成所述图形元素对象的子对象,所述子对象包括所述覆盖的定义。
5.根据权利要求4所述的方法,其中,生成包括所述覆盖的定义的所述图形元素对象的所述子对象包括:生成包括所述覆盖的定义的类对象。
6.根据权利要求1所述的方法,其中,生成所述覆盖的定义包括:在不在其中包括所述图形元素对象的对象层级中创建新的级别的情况下生成所述图形元素对象的派生对象。
7.根据权利要求1所述的方法,其中:
所述图形元素对象的实例是所述图形元素对象的第一实例,并且,经修改的图形元素对象的实例是第一经修改的图形元素对象的实例;并且
所述方法还包括:将所述覆盖的定义应用于所述图形元素对象的第二实例,由此生成第二经修改的图形元素对象的实例。
8.根据权利要求1所述的方法,其中:
所述经修改的图形元素对象的实例是所述图形元素对象的第一实例;并且
所述方法还包括:执行所述图形元素对象的第二实例,所述第二图形元素对象的实例不包括所述覆盖。
9.根据权利要求1所述的方法,其中,将所述覆盖的定义与所存储的所述图形元素对象的实例的配置分开存储包括:将所述覆盖的定义在库中存储为新的对象,所述库包括以下各项中的至少一项:所存储的所述图形元素对象的实例的配置、所述图形元素对象、或所述显示对象。
10.根据权利要求1所述的方法,其中:
所述图形元素对象包括多个视图定义,每个视图定义分别对应于与所述图形元素对象相对应的所述形状的不同的可视化表示;并且
执行所述经修改的图形元素对象的实例包括:在与由所述图形元素对象定义的所述形状的特定视图定义相对应的特定可视化表示中执行所述经修改的图形元素对象的实例。
11.根据权利要求1所述的方法,其中,使得所述覆盖的定义能够用于与所述图形元素对象的实例分开使用包括:使得所述覆盖的定义能够用于与所述图形元素对象的其它实例结合使用。
12.根据权利要求1所述的方法,其中,使得所述覆盖的定义能够用于与所述图形元素对象的实例分开使用包括:使得所述覆盖的定义能够用于在所述过程工厂的所述运行时环境中跨多个操作者工作站使用。
13.根据权利要求1所述的方法,其中:
接收对所述图形元素对象的实例的至少所述部分的覆盖的指示包括:接收与所述图形元素对象的至少一个属性相对应的修改的指示;
所述至少一个属性包括以下各项中的至少一项:性质、动画、或在所述图形元素对象中定义的事件句柄;
所述动画定义基于由相应的过程元素生成的实时数据的改变而改变的所述图形元素对象的实例的可视化表示的至少部分的第一特定动态图形行为;
所述事件句柄定义在触发发生时将执行的所述图形元素对象的实例的第二特定动态图形行为;以及
所述性质定义所述图形元素对象的实例的所述可视化表示的特征。
14.根据权利要求13所述的方法,其中,所述图形元素对象的所述至少一个属性包括第一属性,并且其中,与所述图形元素对象的所述至少一个属性相对应的所述修改包括以下各项中的至少一项:对所述第一属性的修改、所述第一属性的删除、或对所述图形元素对象的第二属性的添加。
15.根据权利要求13所述的方法,还包括:利用至少一个相应的占位符将所述图形元素对象的所述至少一个属性符号化。
16.根据权利要求15所述的方法,还包括:定义包括在所述图形元素对象中的特定占位符的值。
17.根据权利要求1所述的方法,其中:
接收对所述图形元素对象的实例的至少所述部分的覆盖的指示包括:接收与包括在所述图形元素对象中的定义相对应的修改的指示;
所述定义的源是所述图形元素对象从其派生的另一个图形元素对象;并且
所述定义包括以下各项中的至少一项:所述图形元素对象的可视化表示的定义、由所述相应的过程元素生成的所述实时数据经由其在所述图形元素对象的实例处接收的链接的定义,或者所述图形元素对象的至少一个属性的定义。
18.根据权利要求17所述的方法,其中,包括在所述图形元素对象中的定义是第一定义,并且与包括在所述图形元素对象中的所述第一定义相对应的修改包括以下各项中的至少一项:对所述第一定义的修改、所述第一定义的删除、对所述图形元素对象的第二定义的添加。
19.根据权利要求17所述的方法,其中,所述图形元素对象是所述另一个图形元素对象的子对象。
20.根据权利要求1所述的方法,其中,接收对所述图形元素对象的实例的至少所述部分的覆盖的指示包括:接收与所述图形元素对象的用法模式相对应的修改的指示,所述用法模式包括其中包含所述图形元素对象的图形元素对象的分组,所述图形元素对象的分组基于所述一个或多个定义。
21.根据权利要求20所述的方法,其中,所述用法模式是第一用法模式,并且其中,与所述图形元素对象的所述第一用法模式相对应的修改包括以下各项中的至少一项:对所述第一用法模式的修改、所述第一用法模式的删除、或与所述图形元素对象相对应的第二用法模式的添加。
22.根据权利要求1所述的方法,其中,接收对所述图形元素对象的实例的至少所述部分的覆盖的指示包括:接收与所述图形元素对象所属于的全局设置相对应的修改的指示,所述全局设置包括跨多个图形元素对象共享的状态或动态行为中的至少一个的配置的定义。
23.根据权利要求22所述的方法,其中,所述全局设置是第一全局设置,并且其中,与所述第一全局设置相对应的所述修改包括以下各项中的至少一项:对所述第一全局设置的修改、所述第一全局设置的删除、或者所述图形元素对象所属于的第二全局设置的添加。
24.根据权利要求1所述的方法,其中,接收对所述图形元素对象的实例的至少所述部分的覆盖的指示包括:接收与所述图形元素对象使用的样式集相对应的修改的指示,所述样式集包括域名和值的一个或多个对的集合的定义。
25.根据权利要求24所述的方法,其中,所述样式集在所述配置环境中通过相应的对象表示。
26.根据权利要求1所述的方法,其中,所述图形元素对象的实例还定义动态文本行为。
27.根据权利要求13所述的方法,其中,所述动画是第一动画,并且其中,所述至少一个属性包括第二动画,所述第二动画定义基于由所述相应的过程元素生成的所述实时数据的改变而改变的所述图形元素对象的实例的可视化表示的至少部分的动态文本行为。
CN201710969588.5A 2012-10-08 2013-10-08 用利用覆盖的派生和链接的定义配置图形元素对象的方法 Active CN107678412B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201261711105P 2012-10-08 2012-10-08
US201261711110P 2012-10-08 2012-10-08
US61/711,110 2012-10-08
US61/711,105 2012-10-08
CN201380064166.3A CN104838324B (zh) 2012-10-08 2013-10-08 动态可重用类

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201380064166.3A Division CN104838324B (zh) 2012-10-08 2013-10-08 动态可重用类

Publications (2)

Publication Number Publication Date
CN107678412A true CN107678412A (zh) 2018-02-09
CN107678412B CN107678412B (zh) 2020-05-15

Family

ID=49382665

Family Applications (4)

Application Number Title Priority Date Filing Date
CN201380063079.6A Active CN104903799B (zh) 2012-10-08 2013-10-08 过程控制系统中的可配置用户显示
CN201710969588.5A Active CN107678412B (zh) 2012-10-08 2013-10-08 用利用覆盖的派生和链接的定义配置图形元素对象的方法
CN201611003855.5A Active CN106896762B (zh) 2012-10-08 2013-10-08 过程控制系统中的可配置用户显示
CN201380064166.3A Active CN104838324B (zh) 2012-10-08 2013-10-08 动态可重用类

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201380063079.6A Active CN104903799B (zh) 2012-10-08 2013-10-08 过程控制系统中的可配置用户显示

Family Applications After (2)

Application Number Title Priority Date Filing Date
CN201611003855.5A Active CN106896762B (zh) 2012-10-08 2013-10-08 过程控制系统中的可配置用户显示
CN201380064166.3A Active CN104838324B (zh) 2012-10-08 2013-10-08 动态可重用类

Country Status (6)

Country Link
US (7) US10444949B2 (zh)
JP (9) JP2016505909A (zh)
CN (4) CN104903799B (zh)
DE (2) DE112013004915T8 (zh)
GB (4) GB2526670B (zh)
WO (2) WO2014058889A1 (zh)

Families Citing this family (419)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8930331B2 (en) 2007-02-21 2015-01-06 Palantir Technologies Providing unique views of data based on changes or rules
US8429194B2 (en) 2008-09-15 2013-04-23 Palantir Technologies, Inc. Document-based workflows
US9104695B1 (en) 2009-07-27 2015-08-11 Palantir Technologies, Inc. Geotagging structured data
WO2021220058A1 (en) 2020-05-01 2021-11-04 Monday.com Ltd. Digital processing systems and methods for enhanced collaborative workflow and networking systems, methods, and devices
WO2021161104A1 (en) 2020-02-12 2021-08-19 Monday.Com Enhanced display features in collaborative network systems, methods, and devices
US9547693B1 (en) 2011-06-23 2017-01-17 Palantir Technologies Inc. Periodic database search manager for multiple data sources
US8799240B2 (en) 2011-06-23 2014-08-05 Palantir Technologies, Inc. System and method for investigating large amounts of data
US9092482B2 (en) 2013-03-14 2015-07-28 Palantir Technologies, Inc. Fair scheduling for mixed-query loads
US9736065B2 (en) 2011-06-24 2017-08-15 Cisco Technology, Inc. Level of hierarchy in MST for traffic localization and load balancing
US8732574B2 (en) 2011-08-25 2014-05-20 Palantir Technologies, Inc. System and method for parameterizing documents for automatic workflow generation
US8504542B2 (en) 2011-09-02 2013-08-06 Palantir Technologies, Inc. Multi-row transactions
US8908698B2 (en) 2012-01-13 2014-12-09 Cisco Technology, Inc. System and method for managing site-to-site VPNs of a cloud managed network
EP2831682B1 (en) * 2012-03-30 2018-03-07 ABB Schweiz AG A method for engineering a distributed control system and an engineering tool thereof
US9798768B2 (en) 2012-09-10 2017-10-24 Palantir Technologies, Inc. Search around visual queries
US11216159B2 (en) 2012-10-08 2022-01-04 Fisher-Rosemount Systems, Inc. Configuration element for graphic elements
CN104903799B (zh) * 2012-10-08 2018-05-22 费希尔-罗斯蒙特系统公司 过程控制系统中的可配置用户显示
US11774927B2 (en) 2012-10-08 2023-10-03 Fisher-Rosemount Systems, Inc. Methods and apparatus to provide a role-based user interface
KR20140045741A (ko) * 2012-10-09 2014-04-17 삼성전자주식회사 가상 폴더를 생성하여 저장된 애플리케이션들을 관리할 수 있는 전자 장치 및 방법
US9348677B2 (en) 2012-10-22 2016-05-24 Palantir Technologies Inc. System and method for batch evaluation programs
US9183231B2 (en) * 2012-11-29 2015-11-10 Sap Se Interactive table to present multi-level relationships between data items
US9501507B1 (en) 2012-12-27 2016-11-22 Palantir Technologies Inc. Geo-temporal indexing and searching
US10419725B2 (en) * 2013-01-10 2019-09-17 Tyco Safety Products Canada Ltd. Security system and method with modular display of information
US9380431B1 (en) 2013-01-31 2016-06-28 Palantir Technologies, Inc. Use of teams in a mobile application
US10223327B2 (en) 2013-03-14 2019-03-05 Fisher-Rosemount Systems, Inc. Collecting and delivering data to a big data machine in a process control system
US10866952B2 (en) 2013-03-04 2020-12-15 Fisher-Rosemount Systems, Inc. Source-independent queries in distributed industrial system
US10909137B2 (en) 2014-10-06 2021-02-02 Fisher-Rosemount Systems, Inc. Streaming data for analytics in process control systems
US9665088B2 (en) 2014-01-31 2017-05-30 Fisher-Rosemount Systems, Inc. Managing big data in process control systems
US10678225B2 (en) * 2013-03-04 2020-06-09 Fisher-Rosemount Systems, Inc. Data analytic services for distributed industrial performance monitoring
US10386827B2 (en) 2013-03-04 2019-08-20 Fisher-Rosemount Systems, Inc. Distributed industrial performance monitoring and analytics platform
US9558220B2 (en) 2013-03-04 2017-01-31 Fisher-Rosemount Systems, Inc. Big data in process control systems
US10649424B2 (en) 2013-03-04 2020-05-12 Fisher-Rosemount Systems, Inc. Distributed industrial performance monitoring and analytics
US10282676B2 (en) 2014-10-06 2019-05-07 Fisher-Rosemount Systems, Inc. Automatic signal processing-based learning in a process plant
US10649449B2 (en) 2013-03-04 2020-05-12 Fisher-Rosemount Systems, Inc. Distributed industrial performance monitoring and analytics
US9372603B2 (en) * 2013-03-12 2016-06-21 Air Liquide Large Industries U.S. Lp Data sampling method for determining salient values in a large data stream
US10037314B2 (en) 2013-03-14 2018-07-31 Palantir Technologies, Inc. Mobile reports
US9043439B2 (en) 2013-03-14 2015-05-26 Cisco Technology, Inc. Method for streaming packet captures from network access devices to a cloud server over HTTP
US10140664B2 (en) 2013-03-14 2018-11-27 Palantir Technologies Inc. Resolving similar entities from a transaction database
US10637909B2 (en) * 2013-03-15 2020-04-28 Gordon E. Seay Methods for managing entity profiles and application launching in software applications
US9678484B2 (en) 2013-03-15 2017-06-13 Fisher-Rosemount Systems, Inc. Method and apparatus for seamless state transfer between user interface devices in a mobile control room
US8909656B2 (en) 2013-03-15 2014-12-09 Palantir Technologies Inc. Filter chains with associated multipath views for exploring large data sets
US8924388B2 (en) 2013-03-15 2014-12-30 Palantir Technologies Inc. Computer-implemented systems and methods for comparing and associating objects
US8937619B2 (en) 2013-03-15 2015-01-20 Palantir Technologies Inc. Generating an object time series from data objects
US10275778B1 (en) 2013-03-15 2019-04-30 Palantir Technologies Inc. Systems and user interfaces for dynamic and interactive investigation based on automatic malfeasance clustering of related data in various data structures
EP3200131A1 (en) * 2013-03-15 2017-08-02 Fisher-Rosemount Systems, Inc. Data modeling studio
US8917274B2 (en) 2013-03-15 2014-12-23 Palantir Technologies Inc. Event matrix based on integrated data
US9965937B2 (en) 2013-03-15 2018-05-08 Palantir Technologies Inc. External malware data item clustering and analysis
US8868486B2 (en) 2013-03-15 2014-10-21 Palantir Technologies Inc. Time-sensitive cube
US8818892B1 (en) 2013-03-15 2014-08-26 Palantir Technologies, Inc. Prioritizing data clusters with customizable scoring strategies
US8799799B1 (en) 2013-05-07 2014-08-05 Palantir Technologies Inc. Interactive geospatial map
US9519394B2 (en) * 2013-06-03 2016-12-13 GE Intelligent Platforms Inc. Method and apparatus for creating instances for pre-defined areas of a topology
FR3007160B1 (fr) * 2013-06-17 2016-12-09 Sdmo Ind Procede de controle d’au moins un groupe electrogene, dispositif et groupe electrogene correspondants.
CN104346231B (zh) * 2013-07-30 2018-06-29 商业对象软件有限公司 仪表板性能分析器
US9223773B2 (en) 2013-08-08 2015-12-29 Palatir Technologies Inc. Template system for custom document generation
US9335897B2 (en) 2013-08-08 2016-05-10 Palantir Technologies Inc. Long click display of a context menu
US8713467B1 (en) 2013-08-09 2014-04-29 Palantir Technologies, Inc. Context-sensitive views
US9626176B2 (en) 2013-09-13 2017-04-18 Microsoft Technology Licensing, Llc Update installer with technical impact analysis
US9830142B2 (en) 2013-09-13 2017-11-28 Microsoft Technology Licensing, Llc Automatic installation of selected updates in multiple environments
US10026064B2 (en) 2013-09-13 2018-07-17 Microsoft Technology Licensing, Llc Automatically recommending updates based on stored lifecycle information
US9665359B2 (en) 2013-09-13 2017-05-30 Microsoft Technology Licensing, Llc Automatically resolving conflicts after installation of selected updates in a computer system
US9785317B2 (en) 2013-09-24 2017-10-10 Palantir Technologies Inc. Presentation and analysis of user interaction data
US8938686B1 (en) 2013-10-03 2015-01-20 Palantir Technologies Inc. Systems and methods for analyzing performance of an entity
US8812960B1 (en) * 2013-10-07 2014-08-19 Palantir Technologies Inc. Cohort-based presentation of user interaction data
US9798750B2 (en) 2013-10-14 2017-10-24 Schneider Electric Software, Llc Parameter download verification in industrial control system
US10423713B1 (en) * 2013-10-15 2019-09-24 Google Llc System and method for updating a master slide of a presentation
US8924872B1 (en) 2013-10-18 2014-12-30 Palantir Technologies Inc. Overview user interface of emergency call data of a law enforcement agency
US9116975B2 (en) 2013-10-18 2015-08-25 Palantir Technologies Inc. Systems and user interfaces for dynamic and interactive simultaneous querying of multiple data stores
US9021384B1 (en) 2013-11-04 2015-04-28 Palantir Technologies Inc. Interactive vehicle information map
US9686581B2 (en) * 2013-11-07 2017-06-20 Cisco Technology, Inc. Second-screen TV bridge
US8868537B1 (en) 2013-11-11 2014-10-21 Palantir Technologies, Inc. Simple web search
US9105000B1 (en) 2013-12-10 2015-08-11 Palantir Technologies Inc. Aggregating data from a plurality of data sources
US10579647B1 (en) 2013-12-16 2020-03-03 Palantir Technologies Inc. Methods and systems for analyzing entity performance
US10025834B2 (en) 2013-12-16 2018-07-17 Palantir Technologies Inc. Methods and systems for analyzing entity performance
US9552615B2 (en) 2013-12-20 2017-01-24 Palantir Technologies Inc. Automated database analysis to detect malfeasance
US10356032B2 (en) 2013-12-26 2019-07-16 Palantir Technologies Inc. System and method for detecting confidential information emails
US8832832B1 (en) 2014-01-03 2014-09-09 Palantir Technologies Inc. IP reputation
US9043696B1 (en) 2014-01-03 2015-05-26 Palantir Technologies Inc. Systems and methods for visual definition of data associations
GB2522338B (en) * 2014-01-03 2020-12-16 Fisher Rosemount Systems Inc Reusable graphical elements with quickly editable features for use in user displays of plant monitoring systems
US10291729B2 (en) * 2014-01-21 2019-05-14 Apptimize, Inc. User interface modification and usage tracking
US20150212717A1 (en) * 2014-01-30 2015-07-30 Honeywell International Inc. Dashboard and control point configurators
US9483162B2 (en) 2014-02-20 2016-11-01 Palantir Technologies Inc. Relationship visualizations
US9009827B1 (en) 2014-02-20 2015-04-14 Palantir Technologies Inc. Security sharing system
US9727376B1 (en) 2014-03-04 2017-08-08 Palantir Technologies, Inc. Mobile tasks
US8935201B1 (en) 2014-03-18 2015-01-13 Palantir Technologies Inc. Determining and extracting changed data from a data source
US9836580B2 (en) 2014-03-21 2017-12-05 Palantir Technologies Inc. Provider portal
US9755858B2 (en) 2014-04-15 2017-09-05 Cisco Technology, Inc. Programmable infrastructure gateway for enabling hybrid cloud services in a network environment
US10222935B2 (en) 2014-04-23 2019-03-05 Cisco Technology Inc. Treemap-type user interface
US9857958B2 (en) 2014-04-28 2018-01-02 Palantir Technologies Inc. Systems and user interfaces for dynamic and interactive access of, investigation of, and analysis of data objects stored in one or more databases
US9009171B1 (en) 2014-05-02 2015-04-14 Palantir Technologies Inc. Systems and methods for active column filtering
US9473365B2 (en) 2014-05-08 2016-10-18 Cisco Technology, Inc. Collaborative inter-service scheduling of logical resources in cloud platforms
US9720396B2 (en) 2014-05-23 2017-08-01 Fisher-Rosemount Systems, Inc. Methods and apparatus to configure process control systems based on generic process system libraries
USD776143S1 (en) 2014-06-23 2017-01-10 Sartorius Stedim Biotech Gmbh Display with a graphical user interface
US9619557B2 (en) 2014-06-30 2017-04-11 Palantir Technologies, Inc. Systems and methods for key phrase characterization of documents
US9129219B1 (en) 2014-06-30 2015-09-08 Palantir Technologies, Inc. Crime risk forecasting
US9535974B1 (en) 2014-06-30 2017-01-03 Palantir Technologies Inc. Systems and methods for identifying key phrase clusters within documents
US10572496B1 (en) 2014-07-03 2020-02-25 Palantir Technologies Inc. Distributed workflow system and database with access controls for city resiliency
US9202249B1 (en) 2014-07-03 2015-12-01 Palantir Technologies Inc. Data item clustering and analysis
US9785773B2 (en) 2014-07-03 2017-10-10 Palantir Technologies Inc. Malware data item analysis
US9256664B2 (en) 2014-07-03 2016-02-09 Palantir Technologies Inc. System and method for news events detection and visualization
US9021260B1 (en) 2014-07-03 2015-04-28 Palantir Technologies Inc. Malware data item analysis
US10122605B2 (en) 2014-07-09 2018-11-06 Cisco Technology, Inc Annotation of network activity through different phases of execution
US20160026923A1 (en) 2014-07-22 2016-01-28 Palantir Technologies Inc. System and method for determining a propensity of entity to take a specified action
US10162315B2 (en) * 2014-07-23 2018-12-25 Emerson Process Management Power & Water Solutions, Inc. Process control system using typical and adapter components
EP3175337A4 (en) * 2014-07-28 2018-04-04 Between The Flags (aust) Pty Ltd A computing device, system, method, computer program and data signal arranged to facilitate the display of information
US10031494B2 (en) * 2014-08-15 2018-07-24 Honeywell International Inc. Dashboard and button/tile system for an interface
US9454281B2 (en) 2014-09-03 2016-09-27 Palantir Technologies Inc. System for providing dynamic linked panels in user interface
US9390086B2 (en) 2014-09-11 2016-07-12 Palantir Technologies Inc. Classification system with methodology for efficient verification
US9811251B2 (en) * 2014-09-23 2017-11-07 Environmental Intellect, Llc Graphical user interface systems and methods for data integration with data-driven engineering drawings
US9729542B2 (en) 2014-09-24 2017-08-08 Oracle International Corporation Compartmentalizing application distribution for disparate electronic devices
US9825878B2 (en) 2014-09-26 2017-11-21 Cisco Technology, Inc. Distributed application framework for prioritizing network traffic using application priority awareness
US9703532B1 (en) * 2014-09-30 2017-07-11 The Mathworks, Inc. Dynamically updating class instances based on class definition changes
US10095923B2 (en) * 2014-10-01 2018-10-09 Abb Schweiz Ag Method and system for configuring devices of a control system based on engineering graphic objects
US9928043B2 (en) * 2014-10-03 2018-03-27 Sap Se User-driven evolving user interfaces
US9767172B2 (en) 2014-10-03 2017-09-19 Palantir Technologies Inc. Data aggregation and analysis system
US9501851B2 (en) 2014-10-03 2016-11-22 Palantir Technologies Inc. Time-series analysis system
US9785328B2 (en) 2014-10-06 2017-10-10 Palantir Technologies Inc. Presentation of multivariate data on a graphical user interface of a computing system
US10168691B2 (en) 2014-10-06 2019-01-01 Fisher-Rosemount Systems, Inc. Data pipeline for process control system analytics
TWI511104B (zh) * 2014-10-07 2015-12-01 Wistron Corp 互動式電子白板操作方法以及使用該方法的裝置
US9984133B2 (en) 2014-10-16 2018-05-29 Palantir Technologies Inc. Schematic and database linking system
US9229952B1 (en) 2014-11-05 2016-01-05 Palantir Technologies, Inc. History preserving data pipeline system and method
US9043894B1 (en) 2014-11-06 2015-05-26 Palantir Technologies Inc. Malicious software detection in a computing system
US20160132037A1 (en) * 2014-11-11 2016-05-12 Yokogawa Electric Corporation Process control systems and systems and methods for configuration thereof
US9851712B2 (en) * 2014-11-12 2017-12-26 Yokogawa Electric Corporation Process control system and configuration system for an industrial plant
US10108183B2 (en) 2014-11-12 2018-10-23 Yokogawa Electric Corporation Process control system and configuration system
US9483546B2 (en) 2014-12-15 2016-11-01 Palantir Technologies Inc. System and method for associating related records to common entities across multiple lists
GB2535597B (en) 2014-12-17 2021-11-24 Fisher Rosemount Systems Inc Methods and apparatus to provide a role-based user interface
US11762542B2 (en) * 2014-12-19 2023-09-19 Rockwell Automation Technologies, Inc. Industrial automation visualization dashboard creation paradigm
US9348920B1 (en) 2014-12-22 2016-05-24 Palantir Technologies Inc. Concept indexing among database of documents using machine learning techniques
US10552994B2 (en) 2014-12-22 2020-02-04 Palantir Technologies Inc. Systems and interactive user interfaces for dynamic retrieval, analysis, and triage of data items
US9367872B1 (en) 2014-12-22 2016-06-14 Palantir Technologies Inc. Systems and user interfaces for dynamic and interactive investigation of bad actor behavior based on automatic clustering of related data in various data structures
DE102014019368A1 (de) * 2014-12-22 2016-06-23 Abb Technology Ag Einrichtung zur Verwaltung und Konfiguration von Feldgeräten einer Automatisierungsanlage
US10362133B1 (en) 2014-12-22 2019-07-23 Palantir Technologies Inc. Communication data processing architecture
US10452651B1 (en) 2014-12-23 2019-10-22 Palantir Technologies Inc. Searching charts
EP3037944B1 (en) * 2014-12-23 2024-02-07 Dassault Systèmes Designing a multi-physics system
US9870205B1 (en) 2014-12-29 2018-01-16 Palantir Technologies Inc. Storing logical units of program code generated using a dynamic programming notebook user interface
US9335911B1 (en) 2014-12-29 2016-05-10 Palantir Technologies Inc. Interactive user interface for dynamic data analysis exploration and query processing
US9817563B1 (en) 2014-12-29 2017-11-14 Palantir Technologies Inc. System and method of generating data points from one or more data stores of data items for chart creation and manipulation
US10372879B2 (en) 2014-12-31 2019-08-06 Palantir Technologies Inc. Medical claims lead summary report generation
US11302426B1 (en) 2015-01-02 2022-04-12 Palantir Technologies Inc. Unified data interface and system
US11226605B2 (en) 2015-01-09 2022-01-18 Siemens Aktiengesellschaft Provisioning of control layer applications for use in industrial control environments
US10387834B2 (en) 2015-01-21 2019-08-20 Palantir Technologies Inc. Systems and methods for accessing and storing snapshots of a remote application in a document
US10050862B2 (en) 2015-02-09 2018-08-14 Cisco Technology, Inc. Distributed application framework that uses network and application awareness for placing data
US9720659B2 (en) * 2015-02-12 2017-08-01 International Business Machines Corporation Sparse object instantiation
US9727560B2 (en) 2015-02-25 2017-08-08 Palantir Technologies Inc. Systems and methods for organizing and identifying documents via hierarchies and dimensions of tags
US10708342B2 (en) 2015-02-27 2020-07-07 Cisco Technology, Inc. Dynamic troubleshooting workspaces for cloud and network management systems
US10037617B2 (en) * 2015-02-27 2018-07-31 Cisco Technology, Inc. Enhanced user interface systems including dynamic context selection for cloud-based networks
WO2016139805A1 (ja) * 2015-03-05 2016-09-09 三菱電機株式会社 プログラマブルロジックコントローラエンジニアリングツール及びプログラマブルロジックコントローラエンジニアリングツールプログラム
US9891808B2 (en) 2015-03-16 2018-02-13 Palantir Technologies Inc. Interactive user interfaces for location-based data analysis
US9886467B2 (en) 2015-03-19 2018-02-06 Plantir Technologies Inc. System and method for comparing and visualizing data entities and data entity series
US9348880B1 (en) 2015-04-01 2016-05-24 Palantir Technologies, Inc. Federated search of multiple sources with conflict resolution
US10382534B1 (en) 2015-04-04 2019-08-13 Cisco Technology, Inc. Selective load balancing of network traffic
EP3286611B1 (en) * 2015-04-21 2021-11-03 Siemens Aktiengesellschaft Method and system for cross discipline data validation checking in a multidisciplinary engineering system
US10103953B1 (en) 2015-05-12 2018-10-16 Palantir Technologies Inc. Methods and systems for analyzing entity performance
US10476982B2 (en) 2015-05-15 2019-11-12 Cisco Technology, Inc. Multi-datacenter message queue
US20160349931A1 (en) * 2015-05-28 2016-12-01 Rockwell Automation Technologies, Inc. Responsive user interface for an industrial environment
US10628834B1 (en) 2015-06-16 2020-04-21 Palantir Technologies Inc. Fraud lead detection system for efficiently processing database-stored data and automatically generating natural language explanatory information of system results for display in interactive user interfaces
DE102015211308A1 (de) * 2015-06-19 2016-12-22 Robert Bosch Gmbh Werkzeugsystem für eine Montageanlage mit anwenderspezifischem Bericht und ein Verfahren für ein Werkzeugsystem einer Monateanlage
GB201511175D0 (en) * 2015-06-25 2015-08-12 Mclaren Applied Technologies Ltd Analysing physical systems
US10034201B2 (en) 2015-07-09 2018-07-24 Cisco Technology, Inc. Stateless load-balancing across multiple tunnels
US9418337B1 (en) 2015-07-21 2016-08-16 Palantir Technologies Inc. Systems and models for data analytics
CN105068516A (zh) * 2015-07-23 2015-11-18 德阳瑞能电力科技有限公司 集散控制设备冗余总线管理系统
US9392008B1 (en) 2015-07-23 2016-07-12 Palantir Technologies Inc. Systems and methods for identifying information related to payment card breaches
US9454785B1 (en) 2015-07-30 2016-09-27 Palantir Technologies Inc. Systems and user interfaces for holistic, data-driven investigation of bad actor behavior based on clustering and scoring of related data
US20170034306A1 (en) 2015-07-30 2017-02-02 Nasdaq, Inc. Software application architecture
US9996595B2 (en) 2015-08-03 2018-06-12 Palantir Technologies, Inc. Providing full data provenance visualization for versioned datasets
US9456000B1 (en) 2015-08-06 2016-09-27 Palantir Technologies Inc. Systems, methods, user interfaces, and computer-readable media for investigating potential malicious communications
US9600146B2 (en) 2015-08-17 2017-03-21 Palantir Technologies Inc. Interactive geospatial map
US10489391B1 (en) 2015-08-17 2019-11-26 Palantir Technologies Inc. Systems and methods for grouping and enriching data items accessed from one or more databases for presentation in a user interface
US10102369B2 (en) 2015-08-19 2018-10-16 Palantir Technologies Inc. Checkout system executable code monitoring, and user account compromise determination system
US9671776B1 (en) 2015-08-20 2017-06-06 Palantir Technologies Inc. Quantifying, tracking, and anticipating risk at a manufacturing facility, taking deviation type and staffing conditions into account
US10853378B1 (en) 2015-08-25 2020-12-01 Palantir Technologies Inc. Electronic note management via a connected entity graph
US11150917B2 (en) 2015-08-26 2021-10-19 Palantir Technologies Inc. System for data aggregation and analysis of data from a plurality of data sources
US9485265B1 (en) 2015-08-28 2016-11-01 Palantir Technologies Inc. Malicious activity detection system capable of efficiently processing data accessed from databases and generating alerts for display in interactive user interfaces
US10706434B1 (en) 2015-09-01 2020-07-07 Palantir Technologies Inc. Methods and systems for determining location information
US10200246B1 (en) * 2015-09-01 2019-02-05 Vmware, Inc. Importing parameters from nested information-technology blueprints
JP6426565B2 (ja) * 2015-09-03 2018-11-21 ファナック株式会社 作業者に応じて機械の操作情報を表示器に表示させる機械制御システム
US9984428B2 (en) 2015-09-04 2018-05-29 Palantir Technologies Inc. Systems and methods for structuring data from unstructured electronic data files
US9639580B1 (en) 2015-09-04 2017-05-02 Palantir Technologies, Inc. Computer-implemented systems and methods for data management and visualization
US9576015B1 (en) 2015-09-09 2017-02-21 Palantir Technologies, Inc. Domain-specific language for dataset transformations
US20170075510A1 (en) 2015-09-11 2017-03-16 Johnson Controls Technology Company Thermostat with occupant identity determination features
US10296617B1 (en) 2015-10-05 2019-05-21 Palantir Technologies Inc. Searches of highly structured data
US10067780B2 (en) 2015-10-06 2018-09-04 Cisco Technology, Inc. Performance-based public cloud selection for a hybrid cloud environment
US11005682B2 (en) 2015-10-06 2021-05-11 Cisco Technology, Inc. Policy-driven switch overlay bypass in a hybrid cloud network environment
US10484388B2 (en) * 2015-10-11 2019-11-19 Computational Systems, Inc. Span of responsibility access control system
US10248114B2 (en) * 2015-10-11 2019-04-02 Computational Systems, Inc. Plant process management system with normalized asset health
JP6961582B2 (ja) * 2015-10-12 2021-11-05 フィッシャー−ローズマウント システムズ,インコーポレイテッド 切断されたプロセス制御ループの一部分をコミッショニングするためのデバイスパラメータの自動分配
US10462136B2 (en) 2015-10-13 2019-10-29 Cisco Technology, Inc. Hybrid cloud security groups
US10630557B2 (en) * 2015-10-19 2020-04-21 Nicira, Inc. Virtual network management
US9424669B1 (en) 2015-10-21 2016-08-23 Palantir Technologies Inc. Generating graphical representations of event participation flow
WO2017076420A1 (en) * 2015-11-02 2017-05-11 Abb Schweiz Ag System and method for automation system configuration
DE102015221517A1 (de) * 2015-11-03 2017-05-04 Krones Ag Bedienmodul zum Bedienen einer Maschine in der Lebensmittelindustrie
US10523657B2 (en) 2015-11-16 2019-12-31 Cisco Technology, Inc. Endpoint privacy preservation with cloud conferencing
US10205677B2 (en) 2015-11-24 2019-02-12 Cisco Technology, Inc. Cloud resource placement optimization and migration execution in federated clouds
JP6649756B2 (ja) * 2015-11-26 2020-02-19 アズビル株式会社 表示装置および方法
US10223429B2 (en) 2015-12-01 2019-03-05 Palantir Technologies Inc. Entity data attribution using disparate data sets
US10706056B1 (en) 2015-12-02 2020-07-07 Palantir Technologies Inc. Audit log report generator
US10084703B2 (en) 2015-12-04 2018-09-25 Cisco Technology, Inc. Infrastructure-exclusive service forwarding
US9514414B1 (en) 2015-12-11 2016-12-06 Palantir Technologies Inc. Systems and methods for identifying and categorizing electronic documents through machine learning
US9760556B1 (en) 2015-12-11 2017-09-12 Palantir Technologies Inc. Systems and methods for annotating and linking electronic documents
US10114884B1 (en) 2015-12-16 2018-10-30 Palantir Technologies Inc. Systems and methods for attribute analysis of one or more databases
US9542446B1 (en) 2015-12-17 2017-01-10 Palantir Technologies, Inc. Automatic generation of composite datasets based on hierarchical fields
US10373099B1 (en) 2015-12-18 2019-08-06 Palantir Technologies Inc. Misalignment detection system for efficiently processing database-stored data and automatically generating misalignment information for display in interactive user interfaces
US9823818B1 (en) 2015-12-29 2017-11-21 Palantir Technologies Inc. Systems and interactive user interfaces for automatic generation of temporal representation of data objects
US10871878B1 (en) 2015-12-29 2020-12-22 Palantir Technologies Inc. System log analysis and object user interaction correlation system
US10089289B2 (en) 2015-12-29 2018-10-02 Palantir Technologies Inc. Real-time document annotation
US9792020B1 (en) 2015-12-30 2017-10-17 Palantir Technologies Inc. Systems for collecting, aggregating, and storing data, generating interactive user interfaces for analyzing data, and generating alerts based upon collected data
US9612723B1 (en) 2015-12-30 2017-04-04 Palantir Technologies Inc. Composite graphical interface with shareable data-objects
US10367914B2 (en) 2016-01-12 2019-07-30 Cisco Technology, Inc. Attaching service level agreements to application containers and enabling service assurance
US11073810B2 (en) * 2016-01-14 2021-07-27 Rockwell Automation Technologies, Inc. Presentation of graphical visualizations and control mechanisms in-line with programming logic
US10503483B2 (en) 2016-02-12 2019-12-10 Fisher-Rosemount Systems, Inc. Rule builder in a process control network
EP3208675A1 (de) * 2016-02-22 2017-08-23 Siemens Aktiengesellschaft Planungs- und engineering-verfahren sowie werkzeug für eine verfahrens- oder prozesstechnische anlage
US10698938B2 (en) 2016-03-18 2020-06-30 Palantir Technologies Inc. Systems and methods for organizing and identifying documents via hierarchies and dimensions of tags
KR101873093B1 (ko) * 2016-03-25 2018-06-29 엘에스산전 주식회사 Hmi 시스템의 모니터링 뷰어 표시 방법
US9652139B1 (en) 2016-04-06 2017-05-16 Palantir Technologies Inc. Graphical representation of an output
US10031654B2 (en) * 2016-04-12 2018-07-24 Honeywell International Inc. Apparatus and method for generating industrial process graphics
KR102485385B1 (ko) * 2016-05-10 2023-01-04 엘에스일렉트릭(주) 원격감시 제어시스템
US10068199B1 (en) 2016-05-13 2018-09-04 Palantir Technologies Inc. System to catalogue tracking data
US10713015B2 (en) * 2016-05-15 2020-07-14 Servicenow, Inc. Visual programming system
US10129177B2 (en) 2016-05-23 2018-11-13 Cisco Technology, Inc. Inter-cloud broker for hybrid cloud networks
US10007674B2 (en) 2016-06-13 2018-06-26 Palantir Technologies Inc. Data revision control in large-scale data analytic systems
CN106126355A (zh) * 2016-06-22 2016-11-16 百度在线网络技术(北京)有限公司 基于iOS系统的事件传递方法和装置
US10545975B1 (en) 2016-06-22 2020-01-28 Palantir Technologies Inc. Visual analysis of data using sequenced dataset reduction
US10909130B1 (en) 2016-07-01 2021-02-02 Palantir Technologies Inc. Graphical user interface for a database system
US10659283B2 (en) 2016-07-08 2020-05-19 Cisco Technology, Inc. Reducing ARP/ND flooding in cloud environment
US10432532B2 (en) 2016-07-12 2019-10-01 Cisco Technology, Inc. Dynamically pinning micro-service to uplink port
US10671038B2 (en) 2016-07-15 2020-06-02 Fisher-Rosemount Systems, Inc. Architecture-independent process control
US10263898B2 (en) 2016-07-20 2019-04-16 Cisco Technology, Inc. System and method for implementing universal cloud classification (UCC) as a service (UCCaaS)
US10382597B2 (en) 2016-07-20 2019-08-13 Cisco Technology, Inc. System and method for transport-layer level identification and isolation of container traffic
US10324609B2 (en) 2016-07-21 2019-06-18 Palantir Technologies Inc. System for providing dynamic linked panels in user interface
US10719188B2 (en) 2016-07-21 2020-07-21 Palantir Technologies Inc. Cached database and synchronization system for providing dynamic linked panels in user interface
US10878140B2 (en) * 2016-07-27 2020-12-29 Emerson Process Management Power & Water Solutions, Inc. Plant builder system with integrated simulation and control system configuration
US10142346B2 (en) 2016-07-28 2018-11-27 Cisco Technology, Inc. Extension of a private cloud end-point group to a public cloud
US10437840B1 (en) 2016-08-19 2019-10-08 Palantir Technologies Inc. Focused probabilistic entity resolution from multiple data sources
US10567344B2 (en) 2016-08-23 2020-02-18 Cisco Technology, Inc. Automatic firewall configuration based on aggregated cloud managed information
US10579217B2 (en) * 2016-09-13 2020-03-03 Honeywell International Inc. System and method for presenting a customizable graphical view of a system status to identify system failures
US10552002B1 (en) 2016-09-27 2020-02-04 Palantir Technologies Inc. User interface based variable machine modeling
US10523592B2 (en) 2016-10-10 2019-12-31 Cisco Technology, Inc. Orchestration system for migrating user data and services based on user information
US10409253B2 (en) * 2016-10-24 2019-09-10 Fisher-Rosemount Systems, Inc. Systems and methods for merging modular control systems into a process plant
US20180129191A1 (en) * 2016-11-04 2018-05-10 Rockwell Automation Technologies, Inc. Industrial automation system machine analytics for a connected enterprise
US10726507B1 (en) 2016-11-11 2020-07-28 Palantir Technologies Inc. Graphical representation of a complex task
US9842338B1 (en) 2016-11-21 2017-12-12 Palantir Technologies Inc. System to identify vulnerable card readers
US10318630B1 (en) 2016-11-21 2019-06-11 Palantir Technologies Inc. Analysis of large bodies of textual data
US10372520B2 (en) 2016-11-22 2019-08-06 Cisco Technology, Inc. Graphical user interface for visualizing a plurality of issues with an infrastructure
KR101873655B1 (ko) * 2016-11-30 2018-07-02 엘에스산전 주식회사 모니터링 화면 표시 방법
US11250425B1 (en) 2016-11-30 2022-02-15 Palantir Technologies Inc. Generating a statistic using electronic transaction data
US11044162B2 (en) 2016-12-06 2021-06-22 Cisco Technology, Inc. Orchestration of cloud and fog interactions
US10739943B2 (en) 2016-12-13 2020-08-11 Cisco Technology, Inc. Ordered list user interface
GB201621434D0 (en) 2016-12-16 2017-02-01 Palantir Technologies Inc Processing sensor logs
US9886525B1 (en) 2016-12-16 2018-02-06 Palantir Technologies Inc. Data item aggregate probability analysis system
US10249033B1 (en) 2016-12-20 2019-04-02 Palantir Technologies Inc. User interface for managing defects
US10326817B2 (en) 2016-12-20 2019-06-18 Cisco Technology, Inc. System and method for quality-aware recording in large scale collaborate clouds
US10728262B1 (en) 2016-12-21 2020-07-28 Palantir Technologies Inc. Context-aware network-based malicious activity warning systems
US10360238B1 (en) 2016-12-22 2019-07-23 Palantir Technologies Inc. Database systems and user interfaces for interactive data association, analysis, and presentation
US11373752B2 (en) 2016-12-22 2022-06-28 Palantir Technologies Inc. Detection of misuse of a benefit system
US10460602B1 (en) 2016-12-28 2019-10-29 Palantir Technologies Inc. Interactive vehicle information mapping system
US10721262B2 (en) 2016-12-28 2020-07-21 Palantir Technologies Inc. Resource-centric network cyber attack warning system
US10762471B1 (en) 2017-01-09 2020-09-01 Palantir Technologies Inc. Automating management of integrated workflows based on disparate subsidiary data sources
US10334029B2 (en) 2017-01-10 2019-06-25 Cisco Technology, Inc. Forming neighborhood groups from disperse cloud providers
US10133621B1 (en) 2017-01-18 2018-11-20 Palantir Technologies Inc. Data analysis system to facilitate investigative process
US10509844B1 (en) 2017-01-19 2019-12-17 Palantir Technologies Inc. Network graph parser
CN108363361B (zh) * 2017-01-26 2023-11-21 台湾积体电路制造股份有限公司 半导体机台运作流程动态显示系统、半导体机台运作流程动态显示方法及数字信息存储媒体
US10552191B2 (en) 2017-01-26 2020-02-04 Cisco Technology, Inc. Distributed hybrid cloud orchestration model
US10320683B2 (en) 2017-01-30 2019-06-11 Cisco Technology, Inc. Reliable load-balancer using segment routing and real-time application monitoring
US10671571B2 (en) 2017-01-31 2020-06-02 Cisco Technology, Inc. Fast network performance in containerized environments for network function virtualization
US10515109B2 (en) 2017-02-15 2019-12-24 Palantir Technologies Inc. Real-time auditing of industrial equipment condition
US20180259934A1 (en) * 2017-03-09 2018-09-13 Johnson Controls Technology Company Building management system with custom dashboard generation
US11226126B2 (en) * 2017-03-09 2022-01-18 Johnson Controls Tyco IP Holdings LLP Building automation system with an algorithmic interface application designer
JP6782187B2 (ja) * 2017-03-23 2020-11-11 株式会社東芝 プラント操作監視装置およびプラント操作監視方法
US10581954B2 (en) 2017-03-29 2020-03-03 Palantir Technologies Inc. Metric collection and aggregation for distributed software services
US10866936B1 (en) 2017-03-29 2020-12-15 Palantir Technologies Inc. Model object management and storage system
US11005731B2 (en) 2017-04-05 2021-05-11 Cisco Technology, Inc. Estimating model parameters for automatic deployment of scalable micro services
US10133783B2 (en) 2017-04-11 2018-11-20 Palantir Technologies Inc. Systems and methods for constraint driven database searching
DE112017007222T5 (de) * 2017-04-13 2019-11-28 Mitsubishi Electric Corporation Bildschirmanzeigegenerierungsvorrichtung, Fabrikautomatisierungssystem und Bildschirmanzeigegenerierungsverfahren
US11474496B2 (en) * 2017-04-21 2022-10-18 Rockwell Automation Technologies, Inc. System and method for creating a human-machine interface
US10817492B2 (en) * 2017-05-05 2020-10-27 Servicenow, Inc. Application extension
US10563990B1 (en) 2017-05-09 2020-02-18 Palantir Technologies Inc. Event-based route planning
US10382262B1 (en) * 2017-05-10 2019-08-13 Appian Corporation Dynamic application configuration techniques
US10606872B1 (en) 2017-05-22 2020-03-31 Palantir Technologies Inc. Graphical user interface for a database system
US10795749B1 (en) 2017-05-31 2020-10-06 Palantir Technologies Inc. Systems and methods for providing fault analysis user interface
JP6542838B2 (ja) * 2017-06-06 2019-07-10 ファナック株式会社 産業機械システムおよび産業機械システムの制御方法
US10956406B2 (en) 2017-06-12 2021-03-23 Palantir Technologies Inc. Propagated deletion of database records and derived data
US10365641B2 (en) * 2017-06-19 2019-07-30 Fisher-Rosemount Systems, Inc. Synchronization of configuration changes in a process plant
US10761509B2 (en) * 2017-06-23 2020-09-01 Honeywell International Inc. Efficient method and system for automatically generating data points in a SCADA system
US10382274B2 (en) 2017-06-26 2019-08-13 Cisco Technology, Inc. System and method for wide area zero-configuration network auto configuration
US10439877B2 (en) 2017-06-26 2019-10-08 Cisco Technology, Inc. Systems and methods for enabling wide area multicast domain name system
US11200031B2 (en) 2017-07-06 2021-12-14 Mastercontrol Inc. Interface for building and updating processing modules in a manufacturing environment
US11216762B1 (en) 2017-07-13 2022-01-04 Palantir Technologies Inc. Automated risk visualization using customer-centric data analysis
US10403011B1 (en) 2017-07-18 2019-09-03 Palantir Technologies Inc. Passing system with an interactive user interface
US10551814B2 (en) * 2017-07-20 2020-02-04 Fisher-Rosemount Systems, Inc. Generic shadowing in industrial process plants
US10425288B2 (en) 2017-07-21 2019-09-24 Cisco Technology, Inc. Container telemetry in data center environments with blade servers and switches
US10892940B2 (en) 2017-07-21 2021-01-12 Cisco Technology, Inc. Scalable statistics and analytics mechanisms in cloud networking
US10601693B2 (en) 2017-07-24 2020-03-24 Cisco Technology, Inc. System and method for providing scalable flow monitoring in a data center fabric
US10430444B1 (en) 2017-07-24 2019-10-01 Palantir Technologies Inc. Interactive geospatial map and geospatial visualization systems
US10541866B2 (en) 2017-07-25 2020-01-21 Cisco Technology, Inc. Detecting and resolving multicast traffic performance issues
US11237576B2 (en) * 2017-08-03 2022-02-01 Johnson Controls Tyco IP Holdings LLP HVAC system with data driven user interfaces for equipment commissioning and operation
US20190068466A1 (en) * 2017-08-30 2019-02-28 Intel Corporation Technologies for auto-discovery of fault domains
EP3451095B1 (en) * 2017-08-31 2023-11-15 Fisher-Rosemount Systems, Inc. Configuration element for graphic elements
GB2568368B (en) 2017-09-13 2022-08-24 Fisher Rosemount Systems Inc Assistant application for a modular control system
US20190101884A1 (en) * 2017-09-29 2019-04-04 Rockwell Automation Technologies, Inc. Event driven triggering of thin client resolution
US20190102456A1 (en) * 2017-09-29 2019-04-04 Rockwell Automation Technologies, Inc. Reduced data set automation visualization content
US10788972B2 (en) * 2017-10-02 2020-09-29 Fisher-Rosemount Systems, Inc. Systems and methods for automatically populating a display area with historized process parameters
US10768598B2 (en) * 2017-10-02 2020-09-08 Fisher-Rosemount Systems, Inc. Systems and methods for ease of graphical display design workflow in a process control plant
GB2568586B (en) * 2017-10-02 2022-11-23 Fisher Rosemount Systems Inc Systems and methods for configuring and presenting a display navigation hierachy in a process plant
GB2568786B (en) * 2017-10-02 2022-11-09 Fisher Rosemount Systems Inc Plant/project standards and display themes in a process control plant
GB2568785B (en) * 2017-10-02 2023-02-15 Fisher Rosemount Systems Inc Systems and methods for configuring and presenting a display navigation hierarchy in a process plant
US11243677B2 (en) * 2017-10-02 2022-02-08 Fisher-Rosemount Systems, Inc. Systems and methods for ease of graphical display configuration design in a process control plant
US10810173B2 (en) * 2017-10-13 2020-10-20 Yokogawa Electric Corporation System and method for design data analyzing
US10353800B2 (en) 2017-10-18 2019-07-16 Cisco Technology, Inc. System and method for graph based monitoring and management of distributed systems
US10564993B2 (en) * 2017-11-07 2020-02-18 General Electric Company Contextual digital twin runtime environment
US11481362B2 (en) 2017-11-13 2022-10-25 Cisco Technology, Inc. Using persistent memory to enable restartability of bulk load transactions in cloud databases
US11281726B2 (en) 2017-12-01 2022-03-22 Palantir Technologies Inc. System and methods for faster processor comparisons of visual graph features
US10783162B1 (en) 2017-12-07 2020-09-22 Palantir Technologies Inc. Workflow assistant
US10877984B1 (en) 2017-12-07 2020-12-29 Palantir Technologies Inc. Systems and methods for filtering and visualizing large scale datasets
US10769171B1 (en) 2017-12-07 2020-09-08 Palantir Technologies Inc. Relationship analysis and mapping for interrelated multi-layered datasets
US11314721B1 (en) 2017-12-07 2022-04-26 Palantir Technologies Inc. User-interactive defect analysis for root cause
US10705882B2 (en) 2017-12-21 2020-07-07 Cisco Technology, Inc. System and method for resource placement across clouds for data intensive workloads
US11263382B1 (en) 2017-12-22 2022-03-01 Palantir Technologies Inc. Data normalization and irregularity detection system
US11595474B2 (en) 2017-12-28 2023-02-28 Cisco Technology, Inc. Accelerating data replication using multicast and non-volatile memory enabled nodes
USD914734S1 (en) * 2018-02-05 2021-03-30 St Engineering Land Systems Ltd Display screen or portion thereof with graphical user interface
CN108388712B (zh) * 2018-02-07 2021-12-10 中国化学赛鼎宁波工程有限公司 一种基于spi软件的仪表回路图绘制方法
US11599369B1 (en) 2018-03-08 2023-03-07 Palantir Technologies Inc. Graphical user interface configuration system
DE102018106245A1 (de) * 2018-03-16 2019-09-19 Krones Ag Behälterbehandlungsanlage und Verfahren mit sicherheitsgerichtetem Management von Einstellungen für eine Behälterbehandlungsanlage
US10862867B2 (en) 2018-04-01 2020-12-08 Cisco Technology, Inc. Intelligent graphical user interface
US10877654B1 (en) 2018-04-03 2020-12-29 Palantir Technologies Inc. Graphical user interfaces for optimizations
US10511534B2 (en) 2018-04-06 2019-12-17 Cisco Technology, Inc. Stateless distributed load-balancing
US10754822B1 (en) 2018-04-18 2020-08-25 Palantir Technologies Inc. Systems and methods for ontology migration
US10885021B1 (en) 2018-05-02 2021-01-05 Palantir Technologies Inc. Interactive interpreter and graphical user interface
US10754946B1 (en) 2018-05-08 2020-08-25 Palantir Technologies Inc. Systems and methods for implementing a machine learning approach to modeling entity behavior
CN108919751A (zh) * 2018-05-28 2018-11-30 马鞍山光标网络科技有限公司 一种智能楼宇监控系统
US10728361B2 (en) 2018-05-29 2020-07-28 Cisco Technology, Inc. System for association of customer information across subscribers
US10904322B2 (en) 2018-06-15 2021-01-26 Cisco Technology, Inc. Systems and methods for scaling down cloud-based servers handling secure connections
US10764266B2 (en) 2018-06-19 2020-09-01 Cisco Technology, Inc. Distributed authentication and authorization for rapid scaling of containerized services
US11119630B1 (en) 2018-06-19 2021-09-14 Palantir Technologies Inc. Artificial intelligence assisted evaluations and user interface for same
US11019083B2 (en) 2018-06-20 2021-05-25 Cisco Technology, Inc. System for coordinating distributed website analysis
JP6863341B2 (ja) 2018-06-28 2021-04-21 横河電機株式会社 フィールド機器、フィールド機器の診断方法および診断装置
US10819571B2 (en) 2018-06-29 2020-10-27 Cisco Technology, Inc. Network traffic optimization using in-situ notification system
US11698890B2 (en) 2018-07-04 2023-07-11 Monday.com Ltd. System and method for generating a column-oriented data structure repository for columns of single data types
US11436359B2 (en) 2018-07-04 2022-09-06 Monday.com Ltd. System and method for managing permissions of users for a single data type column-oriented data structure
CN109144477B (zh) * 2018-07-06 2022-02-08 武汉斗鱼网络科技有限公司 一种自动管理类对象内存的方法及电子设备
US10904342B2 (en) 2018-07-30 2021-01-26 Cisco Technology, Inc. Container networking using communication tunnels
US11347524B2 (en) * 2018-09-04 2022-05-31 Fisher-Rosemount Systems, Inc. Systems and methods for embedding a web frame with preconfigured restrictions in a graphical display view of a process plant
US11126638B1 (en) 2018-09-13 2021-09-21 Palantir Technologies Inc. Data visualization and parsing system
US11294928B1 (en) 2018-10-12 2022-04-05 Palantir Technologies Inc. System architecture for relating and linking data objects
US11392284B1 (en) * 2018-11-01 2022-07-19 Northrop Grumman Systems Corporation System and method for implementing a dynamically stylable open graphics library
CN109542031B (zh) * 2018-11-20 2021-10-26 上海电器科学研究所(集团)有限公司 一种远程运维系统中的设备组态方法
US10740943B1 (en) * 2018-11-27 2020-08-11 Facebook, Inc. System and method for modification of an animation effect during continuous run
US20220091594A1 (en) * 2018-12-31 2022-03-24 Abb Schweiz Ag Method and system to generate control logic for performing industrial processes
USD929431S1 (en) * 2019-01-17 2021-08-31 Bae Systems Controls Inc. Display screen or portion thereof with animated graphical user interface
TWI811523B (zh) * 2019-03-19 2023-08-11 日商住友重機械工業股份有限公司 支援裝置、支援方法、支援程式及廠房
JP6962345B2 (ja) * 2019-03-22 2021-11-05 オムロン株式会社 情報処理装置、情報処理方法、および情報処理プログラム
US11451610B1 (en) 2019-03-26 2022-09-20 Samsara Inc. Remote asset monitoring and control
US11349901B1 (en) 2019-03-26 2022-05-31 Samsara Inc. Automated network discovery for industrial controller systems
US11451611B1 (en) 2019-03-26 2022-09-20 Samsara Inc. Remote asset notification
US10609114B1 (en) 2019-03-26 2020-03-31 Samsara Networks Inc. Industrial controller system and interactive graphical user interfaces related thereto
JP7181555B2 (ja) * 2019-04-05 2022-12-01 i Smart Technologies株式会社 生産効率向上支援システム
US11127130B1 (en) 2019-04-09 2021-09-21 Samsara Inc. Machine vision system and interactive graphical user interfaces related thereto
JP6888745B2 (ja) * 2019-04-12 2021-06-16 住友電気工業株式会社 データ可視化装置、データ処理方法およびデータ処理プログラム
EP3736647A1 (de) * 2019-05-07 2020-11-11 Siemens Aktiengesellschaft Abhängigkeiten zwischen prozessobjekten
US10698704B1 (en) * 2019-06-10 2020-06-30 Captial One Services, Llc User interface common components and scalable integrable reusable isolated user interface
US10649745B1 (en) 2019-06-10 2020-05-12 Capital One Services, Llc User interface common components and scalable integrable reusable isolated user interface
CN112286144B (zh) * 2019-07-24 2022-03-15 北京国电智深控制技术有限公司 一种组态方法及系统、计算机可读存储介质
US11768878B2 (en) * 2019-09-20 2023-09-26 Fisher-Rosemount Systems, Inc. Search results display in a process control system
US11768877B2 (en) * 2019-09-20 2023-09-26 Fisher-Rosemount Systems, Inc. Smart search capabilities in a process control system
US11092939B2 (en) * 2019-10-07 2021-08-17 Fisher-Rosemount Systems, Inc. Preview mode for configuration logic
US11194450B2 (en) * 2019-10-19 2021-12-07 Salesforce.Com, Inc. Definition of a graphical user interface dashboard created with manually input code and user selections
US11640155B2 (en) * 2019-11-07 2023-05-02 Baker Hughes Oilfield Operations Llc Customizable workflows for machinery management
US11475052B1 (en) * 2019-11-08 2022-10-18 Tableau Software, Inc. Using visual cues to validate object models of database tables
US11361156B2 (en) 2019-11-18 2022-06-14 Monday.Com Digital processing systems and methods for real-time status aggregation in collaborative work systems
US10846436B1 (en) 2019-11-19 2020-11-24 Capital One Services, Llc Swappable double layer barcode
JP7446789B2 (ja) * 2019-11-22 2024-03-11 株式会社東芝 情報提供装置、情報提供方法、及びプログラム
CN112859757B (zh) * 2019-11-27 2022-04-22 宁波舜宇智能科技有限公司 边缘计算控制方法、装置、边缘计算机和可读存储介质
US11474506B2 (en) * 2019-12-13 2022-10-18 Honeywell International Inc. Ability to have multiple versions of a process element in a process plant simultaneously
JP6892946B1 (ja) * 2020-03-18 2021-06-23 エヌ・ティ・ティ・コミュニケーションズ株式会社 情報処理装置、設定方法および設定プログラム
US11137744B1 (en) * 2020-04-08 2021-10-05 Samsara Inc. Systems and methods for dynamic manufacturing line monitoring
US11687211B2 (en) * 2020-04-22 2023-06-27 Microstrategy Incorporated System and method for dossier creation with linking dossiers and context passing
US11829953B1 (en) 2020-05-01 2023-11-28 Monday.com Ltd. Digital processing systems and methods for managing sprints using linked electronic boards
US20210357084A1 (en) * 2020-05-15 2021-11-18 Fisher-Rosemount Systems, Inc. Systems and methods for implementing standard operating procedures in a graphical display configuration
US11199951B1 (en) * 2020-05-26 2021-12-14 Salesforce.Com, Inc. Database system dashboard snapshotting
USD956786S1 (en) * 2020-07-14 2022-07-05 Autel Intelligent Technology Corp., Ltd. Display screen or portion of a device with transitional graphical user interface
US20220058306A1 (en) * 2020-08-19 2022-02-24 Rockwell Automation Technologies, Inc. Line connector extraction from p&id
US20220075603A1 (en) * 2020-09-08 2022-03-10 UiPath, Inc. Dynamic robot tray by robotic processes
US11158177B1 (en) 2020-11-03 2021-10-26 Samsara Inc. Video streaming user interface with data from multiple sources
WO2022106885A1 (en) * 2020-11-18 2022-05-27 Myomega Systems Gmbh Industrial control system
JP2022083205A (ja) * 2020-11-24 2022-06-03 シュナイダーエレクトリックホールディングス株式会社 プログラマブル表示器
US11131986B1 (en) 2020-12-04 2021-09-28 Samsara Inc. Modular industrial controller system
KR20230116888A (ko) 2020-12-11 2023-08-04 니뽄 다바코 산교 가부시키가이샤 향미 흡인기
USD966326S1 (en) * 2020-12-30 2022-10-11 Atlantic Technical Organization Display screen with graphical user interface for a software directed at constructing machine learning workflows through machine learning suggestions
USD966325S1 (en) * 2020-12-30 2022-10-11 Atlantic Technical Organization Display screen with graphical user interface for a software directed at clustering machine learning flows
CN114691262A (zh) * 2020-12-30 2022-07-01 特灵国际有限公司 动态创建机组控制图形用户界面和机组控制逻辑
USD969842S1 (en) * 2021-01-11 2022-11-15 Samsung Electronics Co., Ltd. Display screen or portion thereof with graphical user interface
US11481288B2 (en) 2021-01-14 2022-10-25 Monday.com Ltd. Digital processing systems and methods for historical review of specific document edits in collaborative work systems
US11314493B1 (en) * 2021-02-19 2022-04-26 Rockwell Automation Technologies, Inc. Industrial automation smart object inheritance
US20220292457A1 (en) * 2021-03-10 2022-09-15 Rockwell Automation Technologies, Inc. Industrial automation smart object inheritance break and singleton creation
US11586186B2 (en) 2021-03-17 2023-02-21 Rockwell Automation Technologies, Inc. System model smart object configuration
EP4086713A1 (en) * 2021-05-04 2022-11-09 ABB Schweiz AG System and method for visualizing process information in industrial applications
EP4092496A1 (de) * 2021-05-19 2022-11-23 Siemens Aktiengesellschaft Engineering-system zum projektieren einer bedien-beobachtungssicht für eine automatisierungseinrichtung
EP4327540A1 (de) * 2021-06-16 2024-02-28 Siemens Aktiengesellschaft Verfahren, vorrichtungen, computerprogramm und computerlesbares medium zur verwendung konfigurierbarer logiken für einen modularen aufbau einer technischen anlage
EP4109237A1 (en) * 2021-06-22 2022-12-28 ABB Schweiz AG Computer-implemented method for updating a process control system
US11650897B2 (en) * 2021-06-30 2023-05-16 Baker Hughes Holdings Llc Event visualization for asset condition monitoring
US11956199B2 (en) 2021-07-26 2024-04-09 Airship Group, Inc. Software development kit enabled cross-channel two-way software application messaging
US11835941B2 (en) 2021-08-10 2023-12-05 Rockwell Automation Technologies, Inc. Industrial automation smart object parent/child data collection propagation
US11899432B2 (en) * 2021-08-19 2024-02-13 Rockwell Automation Technologies, Inc. Industrial automation project library cross sharing
US20230095230A1 (en) * 2021-09-29 2023-03-30 Amazon Technologies, Inc. Separate relationship management for application data objects
USD1001832S1 (en) * 2021-11-30 2023-10-17 Passivelogic, Inc Display screen or portion thereof with a graphical user interface
USD1012100S1 (en) * 2021-11-30 2024-01-23 PassiveLogic, Inc. Display screen or portion thereof with a graphical user interface
USD1012101S1 (en) * 2021-12-01 2024-01-23 Passivelogic, Inc Display screen or portion thereof with a graphical user interface
USD998640S1 (en) * 2021-12-01 2023-09-12 PassiveLogic, Inc. Display screen or portion thereof with a graphical user interface
USD998642S1 (en) * 2021-12-02 2023-09-12 PassiveLogic, Inc. Display screen or portion thereof with a graphical user interface
USD998643S1 (en) * 2021-12-02 2023-09-12 PassiveLogic, Inc. Display screen or portion thereof with a graphical user interface
USD999234S1 (en) * 2021-12-03 2023-09-19 PassiveLogic, Inc. Display screen or portion thereof with a graphical user interface
CN114327436B (zh) * 2022-03-12 2022-07-08 联信弘方(北京)科技股份有限公司 一种监控目标插件化的开发方法、系统、终端及存储介质
US11741760B1 (en) 2022-04-15 2023-08-29 Samsara Inc. Managing a plurality of physical assets for real time visualizations
WO2023199524A1 (ja) * 2022-04-15 2023-10-19 三菱電機株式会社 監視システム、監視方法および監視プログラム
US11861955B1 (en) 2022-06-28 2024-01-02 Samsara Inc. Unified platform for asset monitoring
WO2024028977A1 (ja) * 2022-08-02 2024-02-08 ファナック株式会社 教示装置
CN115291876B (zh) * 2022-09-29 2023-03-17 安徽商信政通信息技术股份有限公司 一种表单设计工具构建方法、系统、电子设备和存储介质
CN115544046B (zh) * 2022-11-25 2023-03-10 成都交大光芒科技股份有限公司 一种对象数据的分层更新方法、装置、设备和存储介质
US11741071B1 (en) 2022-12-28 2023-08-29 Monday.com Ltd. Digital processing systems and methods for navigating and viewing displayed content
US11886683B1 (en) 2022-12-30 2024-01-30 Monday.com Ltd Digital processing systems and methods for presenting board graphics
US11893381B1 (en) 2023-02-21 2024-02-06 Monday.com Ltd Digital processing systems and methods for reducing file bundle sizes

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06309425A (ja) * 1990-10-12 1994-11-04 Internatl Business Mach Corp <Ibm> グラフィックディスプレイ装置及び方法
EP0816998A2 (en) * 1996-06-26 1998-01-07 Xerox Corporation Method and apparatus for grouping graphic objects on a computer based system having a graphical user interface
CN1716137A (zh) * 2004-05-25 2006-01-04 费舍-柔斯芒特系统股份有限公司 用于工厂配置系统中的对象的版本控制
US20090177543A1 (en) * 2001-06-28 2009-07-09 Pranil Ram Tabs based drag and drop graphical trading interface
CN102033747A (zh) * 2009-09-23 2011-04-27 费希尔-罗斯蒙特系统公司 用于过程控制系统的动态链接图形消息

Family Cites Families (104)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02208693A (ja) * 1989-02-08 1990-08-20 Toshiba Corp マルチウィンドウ画面表示装置
US5241624A (en) 1991-10-03 1993-08-31 International Business Machines Corporation Method for determining a user selected group of data objects for the propagation of attribute values
US5808611A (en) * 1993-09-23 1998-09-15 International Business Machines Corporation Positioning for multiple icons in an object-oriented interface
US5576946A (en) * 1993-09-30 1996-11-19 Fluid Air, Inc. Icon based process design and control system
US5564007A (en) 1994-06-03 1996-10-08 Motorola Inc. Method for configuring an automated dispense machine
US5812394A (en) 1995-07-21 1998-09-22 Control Systems International Object-oriented computer program, system, and method for developing control schemes for facilities
US5777616A (en) * 1996-08-05 1998-07-07 International Business Machines Corporation Data processing system and method for invoking a function of a multifunction icon in a graphical user interface
US5950201A (en) * 1996-12-06 1999-09-07 International Business Machines Corporation Computerized design automation method using a single logical PFVL paradigm
US6990652B1 (en) 1997-03-04 2006-01-24 National Instruments Corporation System and method for determining methods and properties to be invoked on objects in a graphical program
US6014612A (en) 1997-10-02 2000-01-11 Fisher Controls International, Inc. Remote diagnostics in a process control network having distributed control functions
US6942143B1 (en) 1997-10-16 2005-09-13 Dentsu, Inc. System and method for accessing broadcast media in data communication with a broadcast receiving device
US6766946B2 (en) * 1997-10-16 2004-07-27 Dentsu, Inc. System for granting permission of user's personal information to third party
JPH11282655A (ja) * 1998-03-30 1999-10-15 Canon Inc 露光装置、露光装置システム、半導体製造装置、半導体製造システム、およびデバイス製造方法
US6282175B1 (en) 1998-04-23 2001-08-28 Hewlett-Packard Company Method for tracking configuration changes in networks of computer systems through historical monitoring of configuration status of devices on the network.
US6285966B1 (en) * 1998-06-25 2001-09-04 Fisher Controls International, Inc. Function block apparatus for viewing data in a process control system
US6211877B1 (en) 1998-07-20 2001-04-03 Hewlett-Packard Co Method for communicating between programming language controlled frames and CGI/HTML controlled frames within the same browser window
JP2000222184A (ja) * 1999-02-01 2000-08-11 Hitachi Building Systems Co Ltd プログラム変更方法
WO2000070417A1 (en) * 1999-05-17 2000-11-23 The Foxboro Company Process control configuration system with parameterized objects
US7089530B1 (en) * 1999-05-17 2006-08-08 Invensys Systems, Inc. Process control configuration system with connection validation and configuration
US7272815B1 (en) 1999-05-17 2007-09-18 Invensys Systems, Inc. Methods and apparatus for control configuration with versioning, security, composite blocks, edit selection, object swapping, formulaic values and other aspects
US6577323B1 (en) 1999-07-01 2003-06-10 Honeywell Inc. Multivariable process trend display and methods regarding same
JP2001195255A (ja) 1999-10-29 2001-07-19 Mitsubishi Heavy Ind Ltd オブジェクトの生成支援方法および装置
WO2002067149A1 (en) * 2001-02-20 2002-08-29 Workonce Wireless Corporation Automated procedure for database creation for a form-based data collection system
US7389204B2 (en) 2001-03-01 2008-06-17 Fisher-Rosemount Systems, Inc. Data presentation system for abnormal situation prevention in a process plant
WO2003001376A1 (en) * 2001-06-22 2003-01-03 Wonderware Corporation A customizable system for creating supervisory process control and manufacturing information applications
WO2003001343A2 (en) 2001-06-22 2003-01-03 Wonderware Corporation Supervisory process control and manufacturing information system application having an extensible component model
US6839852B1 (en) 2002-02-08 2005-01-04 Networks Associates Technology, Inc. Firewall system and method with network mapping capabilities
US6928328B2 (en) 2002-08-02 2005-08-09 Fisher-Rosemount Systems, Inc. Integrated electronic signatures for approval of process control system software objects
JP2004085243A (ja) * 2002-08-23 2004-03-18 Chino Corp 記録計
DE10348563B4 (de) 2002-10-22 2014-01-09 Fisher-Rosemount Systems, Inc. Integration von Grafikdisplayelementen, Prozeßmodulen und Steuermodulen in Prozeßanlagen
US9983559B2 (en) 2002-10-22 2018-05-29 Fisher-Rosemount Systems, Inc. Updating and utilizing dynamic process simulation in an operating process environment
US7146231B2 (en) 2002-10-22 2006-12-05 Fisher-Rosemount Systems, Inc.. Smart process modules and objects in process plants
US7237109B2 (en) 2003-01-28 2007-06-26 Fisher- Rosemount Systems, Inc. Integrated security in a process plant having a process control system and a safety system
US7330768B2 (en) 2003-01-28 2008-02-12 Fisher-Rosemount Systems, Inc. Integrated configuration in a process plant having a process control system and a safety system
US6975966B2 (en) 2003-01-28 2005-12-13 Fisher-Rosemount Systems, Inc. Integrated diagnostics in a process plant having a process control system and a safety system
US7526347B2 (en) 2003-02-18 2009-04-28 Fisher-Rosemount Systems, Inc. Security for objects in a process plant configuration system
US7043311B2 (en) 2003-02-18 2006-05-09 Fisher-Rosemount Systems, Inc. Module class objects in a process plant configuration system
US7634384B2 (en) 2003-03-18 2009-12-15 Fisher-Rosemount Systems, Inc. Asset optimization reporting in a process plant
US6898542B2 (en) * 2003-04-01 2005-05-24 Fisher-Rosemount Systems, Inc. On-line device testing block integrated into a process control/safety system
US20040201602A1 (en) 2003-04-14 2004-10-14 Invensys Systems, Inc. Tablet computer system for industrial process design, supervisory control, and data management
JP2004318745A (ja) 2003-04-21 2004-11-11 Toshiba Corp プラント監視装置
US7421458B1 (en) 2003-10-16 2008-09-02 Informatica Corporation Querying, versioning, and dynamic deployment of database objects
US20050125787A1 (en) 2003-12-05 2005-06-09 Leonid Tertitski Convertible runtime graphical user interface
US7030747B2 (en) * 2004-02-26 2006-04-18 Fisher-Rosemount Systems, Inc. Method and system for integrated alarms in a process control system
US7913177B1 (en) 2004-03-08 2011-03-22 Adobe Systems Incorporated System and method for managing instantiation of interface elements in rich internet applications
JP2005301726A (ja) 2004-04-13 2005-10-27 Glory Ltd サービス窓口案内装置、サービス窓口案内方法およびサービス窓口案内プログラム
US7729789B2 (en) * 2004-05-04 2010-06-01 Fisher-Rosemount Systems, Inc. Process plant monitoring based on multivariate statistical analysis and on-line process simulation
JP2007536634A (ja) * 2004-05-04 2007-12-13 フィッシャー−ローズマウント・システムズ・インコーポレーテッド プロセス制御システムのためのサービス指向型アーキテクチャ
US20050251380A1 (en) * 2004-05-10 2005-11-10 Simon Calvert Designer regions and Interactive control designers
CN101095131A (zh) * 2004-05-28 2007-12-26 约翰·戈尔齐 用于代表个体之间关联性的系统、方法和图形工具
US7490295B2 (en) * 2004-06-25 2009-02-10 Apple Inc. Layer for accessing user interface elements
US7440809B2 (en) 2004-07-14 2008-10-21 York International Corporation HTML driven embedded controller
US20060117268A1 (en) * 2004-11-30 2006-06-01 Micheal Talley System and method for graphical element selection for region of interest compression
JP2006252145A (ja) 2005-03-10 2006-09-21 Yokogawa Electric Corp パラメータ表示装置およびパラメータ表示方法
US8543931B2 (en) * 2005-06-07 2013-09-24 Apple Inc. Preview including theme based installation of user interface elements in a display environment
JP4650141B2 (ja) * 2005-07-25 2011-03-16 富士ゼロックス株式会社 情報処理装置および情報処理プログラム
US8065131B2 (en) 2005-07-29 2011-11-22 General Electric Company Configurable system and method for power and process plant modeling
US7974826B2 (en) 2005-09-23 2011-07-05 General Electric Company Energy system modeling apparatus and methods
JP4484808B2 (ja) * 2005-12-08 2010-06-16 三菱電機株式会社 監視制御画面表示装置
US20070174429A1 (en) 2006-01-24 2007-07-26 Citrix Systems, Inc. Methods and servers for establishing a connection between a client system and a virtual machine hosting a requested computing environment
US7848829B2 (en) 2006-09-29 2010-12-07 Fisher-Rosemount Systems, Inc. Methods and module class objects to configure absent equipment in process plants
US20080189638A1 (en) * 2006-10-16 2008-08-07 Invensys Systems, Inc. Bridging human machine interface technologies in a process automation and information management environment
US8650059B2 (en) 2006-10-27 2014-02-11 Verizon Patent And Licensing Inc. Method and apparatus for role-based presentation of information
JP2008118068A (ja) 2006-11-08 2008-05-22 Renesas Technology Corp 半導体装置の生産管理システム
US8843883B2 (en) 2007-01-03 2014-09-23 International Business Machines Corporation System and method for model-driven dashboard for business performance management
EP1944702B1 (en) 2007-01-10 2018-07-25 Harman Becker Automotive Systems GmbH Updatable navigation database
EP1965301A1 (en) 2007-02-27 2008-09-03 Abb Research Ltd. Method and system for generating a control system user interface
US7676294B2 (en) 2007-09-27 2010-03-09 Rockwell Automation Technologies, Inc. Visualization of workflow in an industrial automation environment
WO2009046095A1 (en) * 2007-10-01 2009-04-09 Iconics, Inc. Visualization of process control data
US8065202B1 (en) * 2008-01-15 2011-11-22 SciQuest Inc. Form management in an electronic procurement system
US20090210386A1 (en) 2008-02-20 2009-08-20 Cahill James S Methods and apparatus to create process plant operator interfaces
US8896603B2 (en) 2008-02-26 2014-11-25 Fisher-Rosemount Systems, Inc. Methods and apparatus to bind properties in a process control system
GB2476011B (en) 2008-09-29 2013-05-15 Fisher Rosemount Systems Inc Efficient design and configuration of elements in a process control system
US8065278B2 (en) * 2008-09-30 2011-11-22 Symantec Operating Corporation Restoring selected objects from a monolithic database backup
KR101510738B1 (ko) * 2008-10-20 2015-04-10 삼성전자주식회사 휴대단말의 대기화면 구성 방법 및 장치
US8881039B2 (en) * 2009-03-13 2014-11-04 Fisher-Rosemount Systems, Inc. Scaling composite shapes for a graphical human-machine interface
JP4783447B2 (ja) * 2009-04-02 2011-09-28 株式会社エヌ・ティ・ティ・ドコモ 表示制御装置及び表示制御方法
US8448076B2 (en) * 2009-04-27 2013-05-21 Fisher-Rosemount Systems, Inc. Configuring animations and events for operator interface displays in a process control system
JP2010266915A (ja) * 2009-05-12 2010-11-25 Yamatake Corp 制御プログラム構成表示装置および結線図生成方法
US8122434B2 (en) * 2009-05-29 2012-02-21 Invensys Sytems, Inc. Methods and apparatus for control configuration control objects associated with a track attribute for selecting configuration information
US8127060B2 (en) * 2009-05-29 2012-02-28 Invensys Systems, Inc Methods and apparatus for control configuration with control objects that are fieldbus protocol-aware
US9098563B2 (en) 2009-07-14 2015-08-04 Hewlett-Packard Development Company, L.P. Comparing versions of a hierarchical object
US9043003B2 (en) 2009-07-31 2015-05-26 Fisher-Rosemount Systems, Inc. Graphical view sidebar for a process control system
US8316313B2 (en) * 2009-10-14 2012-11-20 Fisher-Rosemount Systems, Inc. Method for selecting shapes in a graphical display
JP2011118493A (ja) * 2009-12-01 2011-06-16 Hitachi High-Tech Control Systems Corp プラント監視制御システム
US8825183B2 (en) 2010-03-22 2014-09-02 Fisher-Rosemount Systems, Inc. Methods for a data driven interface based on relationships between process control tags
JP5323103B2 (ja) 2010-09-03 2013-10-23 三菱電機株式会社 グラフィカルユーザインタフェース装置
US9547295B2 (en) * 2010-09-24 2017-01-17 Fisher-Rosemount Systems, Inc. Methods and apparatus to display process control device information
US8473917B2 (en) 2010-09-30 2013-06-25 Rockwell Automation Technologies, Inc. Enhanced operation diagnostics
JP5580173B2 (ja) * 2010-11-11 2014-08-27 株式会社東芝 プラント監視制御システムの表示装置、及び、その表示画面の作成方法
US8566923B2 (en) 2011-02-01 2013-10-22 Rockwell Automation Technologies, Inc. Enhanced organization and automatic navigation of display screens facilitating automation control
US20120215464A1 (en) 2011-02-18 2012-08-23 Utilivista Limited Energy consumption monitor
US20130311914A1 (en) 2011-11-11 2013-11-21 Rockwell Automation Technologies, Inc. Method and apparatus for computer aided design of human-machine interface animated graphical elements
WO2013074868A1 (en) 2011-11-16 2013-05-23 Flextronics Ap, Llc Complete vehicle ecosystem
US9032326B2 (en) 2012-06-21 2015-05-12 Sap Se Late instantiation of dependent objects
JP2014035609A (ja) 2012-08-08 2014-02-24 Hitachi High-Tech Control Systems Corp 計装用オペレータズコンソールの作画方法及びプラント監視制御システム
US9448908B2 (en) 2012-09-10 2016-09-20 Applitools Ltd. System and method for model based session management
US9166405B2 (en) 2012-09-24 2015-10-20 Cooper Technologies Company Energy harvesting load control switch
US11774927B2 (en) 2012-10-08 2023-10-03 Fisher-Rosemount Systems, Inc. Methods and apparatus to provide a role-based user interface
CN104903799B (zh) 2012-10-08 2018-05-22 费希尔-罗斯蒙特系统公司 过程控制系统中的可配置用户显示
KR200468556Y1 (ko) 2013-03-14 2013-08-21 염선영 형광펜을 갖는 2색 볼펜
US9709978B2 (en) 2013-05-09 2017-07-18 Rockwell Automation Technologies, Inc. Using cloud-based data for virtualization of an industrial automation environment with information overlays
US20150106753A1 (en) 2013-10-14 2015-04-16 Invensys Systems, Inc. Human-machine interface (hmi) system having elements styles with centrally managed and distributed graphic styles
JP7104967B2 (ja) 2018-05-24 2022-07-22 オート化学工業株式会社 下地処理剤及びそれを用いた接着方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06309425A (ja) * 1990-10-12 1994-11-04 Internatl Business Mach Corp <Ibm> グラフィックディスプレイ装置及び方法
EP0816998A2 (en) * 1996-06-26 1998-01-07 Xerox Corporation Method and apparatus for grouping graphic objects on a computer based system having a graphical user interface
US20090177543A1 (en) * 2001-06-28 2009-07-09 Pranil Ram Tabs based drag and drop graphical trading interface
CN1716137A (zh) * 2004-05-25 2006-01-04 费舍-柔斯芒特系统股份有限公司 用于工厂配置系统中的对象的版本控制
CN102033747A (zh) * 2009-09-23 2011-04-27 费希尔-罗斯蒙特系统公司 用于过程控制系统的动态链接图形消息

Also Published As

Publication number Publication date
US9513780B2 (en) 2016-12-06
JP7025485B2 (ja) 2022-02-24
US9501208B2 (en) 2016-11-22
JP7306505B2 (ja) 2023-07-11
US20140108985A1 (en) 2014-04-17
JP2020177686A (ja) 2020-10-29
US9792004B2 (en) 2017-10-17
US20140100669A1 (en) 2014-04-10
JP2019016401A (ja) 2019-01-31
US11650718B2 (en) 2023-05-16
CN106896762B (zh) 2020-07-10
GB2525982A (en) 2015-11-11
GB2578839A (en) 2020-05-27
CN106896762A (zh) 2017-06-27
US20170364225A1 (en) 2017-12-21
GB2526670B (en) 2020-02-05
US10444949B2 (en) 2019-10-15
GB201917091D0 (en) 2020-01-08
DE112013004924T9 (de) 2015-07-23
JP6795664B2 (ja) 2020-12-02
US20200319767A1 (en) 2020-10-08
CN104838324B (zh) 2017-09-12
CN104838324A (zh) 2015-08-12
JP2019016400A (ja) 2019-01-31
JP2022051942A (ja) 2022-04-01
GB2578840B (en) 2020-09-02
US10691311B2 (en) 2020-06-23
GB2578839B (en) 2020-08-19
US20140100668A1 (en) 2014-04-10
CN107678412B (zh) 2020-05-15
DE112013004915T5 (de) 2015-06-18
US20140100676A1 (en) 2014-04-10
JP2021047874A (ja) 2021-03-25
WO2014058900A1 (en) 2014-04-17
JP2016505909A (ja) 2016-02-25
JP6734899B2 (ja) 2020-08-05
JP2020035454A (ja) 2020-03-05
JP2023029859A (ja) 2023-03-07
GB2526670A (en) 2015-12-02
DE112013004924T5 (de) 2015-07-02
DE112013004915T8 (de) 2015-07-23
WO2014058889A1 (en) 2014-04-17
JP6735326B2 (ja) 2020-08-05
US20200225821A1 (en) 2020-07-16
JP6423348B2 (ja) 2018-11-14
GB201505495D0 (en) 2015-05-13
US11599251B2 (en) 2023-03-07
CN104903799A (zh) 2015-09-09
CN104903799B (zh) 2018-05-22
GB2525982B (en) 2017-08-30
GB201917090D0 (en) 2020-01-08
GB2578840A (en) 2020-05-27
JP2016504640A (ja) 2016-02-12
GB201505494D0 (en) 2015-05-13

Similar Documents

Publication Publication Date Title
CN104838324B (zh) 动态可重用类
CN102269989B (zh) 基于过程控制标签间关系的用于数据驱动界面的方法及装置
US11216159B2 (en) Configuration element for graphic elements
JP4936641B2 (ja) プロセス・プラント・コンフィギュレーション・システムにおけるモジュール・クラス・オブジェクト
JP4919588B2 (ja) プロセスプラント構成システムにおけるオブジェクトのバージョン管理
US7848829B2 (en) Methods and module class objects to configure absent equipment in process plants
JP2005339495A (ja) プロセスプラント構成システムのオブジェクトに対するセキュリティ
CN101995860A (zh) 使用模板的系统配置
CN102227692A (zh) 过程控制系统的元件的高效设计和配置
CN109426232A (zh) 图形元素的配置元素

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant