在自动化系统内启用面向对象能力的制作方法

文档序号:6269982阅读:119来源:国知局
专利名称:在自动化系统内启用面向对象能力的制作方法
技术领域
本发明涉及工业控制系统,尤其涉及在自动化系统内启用面向对象能力的系统和方法。
背景技术
工业控制器是用于控制工业过程、机器、制造设备、和其他工厂自动化应用的专用处理设备。根据控制程序或例行程序,工业控制器可测量代表控制过程状态一个或多个变量或输入,和改变影响过程的控制输出。输入和输出可以是二进制的(举例来说,开或关),和/或模拟假定数值的连续范围。控制程序可以一系列具有批处理能力的执行周期来加以执行,并且能包括一个或多个功能单元。这样的控制程序可在具有工具和接口的控制器配置系统内被创建,由此用户可使用控制功能的编程语言或图形表示实现控制策略。控制程序可从配置系统中下载至一个或多个用于实现在控制程序或机器内的控制策略的控制器。
从控制的过程接收到的测得的输入和发送到过程的输出可通过控制系统内一个或多个输入/输出(I/O)模块,该模块作为控制器和控制过程之间的电气接口并且被放置于接近或远离控制器。输入和输出可记录在处理器存储器的I/O表内。输入值可通过一个或多个输入模块从控制的过程中异步地读出,并且输出值可通过处理器直接写入I/O表,用以通过专用的通信线路顺序发送给处理。输出模块可直接通过提供来自I/O表的输出给诸如马达、驱动器、阀门、螺线管等的制动器与控制的过程直接接口。
在控制程序执行期间,与控制的过程交换的输入和输出值通过I/O表。在I/O表内输入值可通过专用的扫描线路从控制的过程中异步地更新。该扫描线路可与输入和/或输出模块通过在底板或网络通信中的总线通信。扫描线路也可异步地将I/O表内的输出值写到控制的过程。来自I/O表的输出值可发送至一个或多个用于与过程接口的输出模块。如此,控制器可简单地访问I/O表而不需要直接与控制过程通信。
在布式的控制系统中,把工业控制器分开成多个控制模块(每个模块执行不同的功能)可促进控制器硬件配置。然后,对于控制任务需要的特定控制模块在架子内的公共底板上和/或网络或其他通信介质连接在一起。控制模块可包括处理器、电源、网络通信模块、以及直接与控制过程交换的输入和输出信号的I/O模块。模块之间的数据可使用串行或并行的底板通信总线,或通过网络交换。除了仅基于网络通信实现I/O操作之外,还存在可以执行自主逻辑的或其他控制程序或例行程序的智能模块。
分布式工业控制系统的各种控制模块可在架子内沿公共通信链路立体地分布。如此,某些I/O模块可定位接近一部分控制设备以及远离控制器的剩余部分。数据可通过公共通信链路或网络与这些远程模块通信,其中所有在网络上的模块使用标准通信协议通信。
在一般分布式控制系统中,提供一个或多个I/O模块以与过程接口。输出通过网络或底板从主机或对等设备以消息的形式得出它们的控制值或输出值。例如,输出模块可通过通信网络或底板通信总线从诸如可编程逻辑控制器(PLC)的处理器接收输出值。理想的输出值通常以消息的形式发送给输出模块,诸如I/O消息。输出模块接收这样的消息以提供相应的输出(模拟的或数字的)给控制过程。输入模块测量过程变量的值并且通过网络或底板报告输入值给主机或对等设备。输入值可通过处理器(举例来说,PLC)以执行控制计算。
在当今的自动系统中,数据和行为是分开的,其中数据的备份可存在于诸如车间地面、控制级和MES层的控制结构内的多个级别上。在控制系统内,例如,对于特定数据源在多个位置维持持续性可导致多个问题。例如,数据可改变与系统行为无关,而系统行为可导致数据和行为之间的不一致。此外,数据和/或行为可在在其他级(举例来说,MES层)上没有做出相应变化的情况下,在一个级(举例来说,控制级)上被改变,这种做法可形成错误的自动化系统行为。
此外,如注意到的,数据一般存储在一个或多个特定控制系统内的控制器内。数据可以多种格式存储包括各种位、文字和可在系统内分布并未被收集和组织的整数值,这会给予外部设备的通信困难和麻烦,该值,为了与数据通信,一般的I/O读数可用以读出不同位置的数据以确定该数据的属性和方法以及如何使用该数据。通过这种方式,数据可存储在架构内的各种级别上并且不是自描述性的,因此不能在架构内由不同级别容易地使用。
传统地,数据的格式和含义必须被预先定义以使数据的格式和值(举例来说,位、单词、标记名称等)对于控制系统已经有了指定的含义。例如,如果单词“Joe”表示一比例因数,数据后的这种含义必须在控制系统内一级一级地从源传送给订户(举例来说,从组件到MES层)以使数据可以被数据订户读出并且理解。类似地,在反向通信遇到困难以致如果你要执行程序,你必须按照特定协议对数据做出改变。如此,例如,如果不按照特定的数据通信协议,在控制系统和MES层之间传统的通信会失败。
提供

图13以说明一特定工业自动化架构,其中提供的图和附加的文字以说明与传统的架构关联的各种缺陷。在工业自动化系统领域的当前技术使用具有两层或多层的分层架构。现有技术图13说明了一般的3层架构,使用控制层1310、制造执行系统(MES)1320层和企业资源计划(ERP)1330层。注意到在分层的架构中的功能是重要的。控制层1310(举例来说,工厂地面)可包括诸如PLC和驱动器的控制器,它们专用于实时控制。如此,这些控制器捕获工厂地面数据并把该数据发送至更高的级(举例来说,MES层1320、ERP层1330等)。MES层1320可由一个或多个具有皆结构数据、软件应用程序以及面向事务的架构的计算设备组成。ERP层1330可使用一个或多个一般运行,诸如次序管理和客户管理应用程序的ERP软件的计算设备。控制层1310数据包括传感器和制动器的状态并且不把这些状态与诸如产品的批次或机器的效率的物理或逻辑的实体相关。这样的数据被称作松散的,由于需要有效的客户程序以转换该数据为结构化的数据类型,该数据类型通常在MES层1320或ERP层1330使用。而且,由于控制器发送松散的数据给可驻留在多个计算机上的多个MES应用,在几个地方具有相同数据多个备份在当今是普遍的。由于诸如在失败的事件中,系统恢复和数据的单个“正确”备份的发现存在困难的原因,这个是不理想的。
相应地,以以上的观点,在工业自动化领域中需要在控制架构内用以发送数据和行为的灵活和宽容的系统和方法。
发明概要以下表示了本发明简要的概述以提供本发明某些方面基本的理解。该概述不是本发明广泛地总的看法。该概述既不是标识本发明的主要或关键元素,也不是描述本发明的范围。它唯一的目的是以简化的方式表现本发明的某些概念作为对在后表示的更多详细的描述的前序。
本发明提供用以在控制器(举例来说,工业控制器、可编程逻辑控制器、智能终端等)内创建结构化的对象的系统和方法,该控制器提供定义好的用于数据和服务的接口以使外部的客户机(举例来说,控制系统,MES层等)可从控制器以已知的格式请求数据和/或服务。如此,外部客户机不需要知道控制器内的数据位置和/或格式(举例来说,特定位和字节是如何组织的)。
通过这种方法,对象级能力可在控制器内被使用,其中可实现识别对象以及识别数据的特性。类似地,根据本发明的一方面,可实现对于用于激活和请求项的服务调用的识别方法。通过这种方式,控制系统可发布签名信息给上位客户机以减少对于特定数据格式和组织的需要。控制系统可通过控制器连接到控制服务以发送对象和相应的服务至一个或多个控制器。动态询问可使用来定位这样的服务以代替需要数据文件的传统方法。
上述益处可通过提供接收来自数据源诸如可来编程逻辑控制器或其他合适的地面级设备的数据的封装组件实现。此后,该接收到的数据以显示该接收到的数据的特性和方法这样的方式封装,使这些特性和方法作为一个环境。在工业自动化环境(举例来说,企业资源计划系统等)以及厂区设备中(举例来说,可编程逻辑控制器)所使用的高级系统来说,使用共用的数据对象格式可促进对于封装为数据对象的特性和方法的访问。通过格式化数据为一个或多个数据对象,在工业自动化环境内的数据消耗设备可使用接口以访问表示希望接收到的特性和/或方法的数据对象。
通过调整在工厂地面上的控制器内的计算能力和高速通信的快速提高的倾向,本发明集中在在当今工厂地面、MES、和ERP系统的分层边界中的自动化数据的公共的、面向对象表示的创建上。如此,该面向对象表示在工业自动化分层结构的所有级中可以是共用的,并且允许待生成的层使用标准编程技术。本发明大大减少定制的软件和定制的数据接口,其中数据可被存储并且从在控制架构中的诸如产生特定数据的位置的单一位置上被访问。
为了完成以上描述的和相关的范围,接着,本发明包括在此以后详细描述的特性。以下详细提出的描述和附加的附图示出了本发明的诸方面。然而,这些方面是指示性的,而本发明的原理可使用于一些各种方法。当考虑结合附图从本发明的详细描述中,本发明的其他方面、优势以及新颖特性将是显而易见的。
附图简述图1示出了根据本发明的一方面的典型目录接口系统。
图2示出了根据本发明的一方面的具有人工智能组件的典型目录接口系统。
图3示出了根据本发明的一方面的具有多个数据源的典型目录接口系统。
图4示出了根据本发明的一方面的具有多个数据请求者和数据源的使用目录接口系统的典型系统。
图5示出了根据本发明的一方面的目录结构系统。
图6示出了根据本发明的一方面的具有地址列表的数据目录系统。
图7示出了根据本发明的一方面的在网络环境中的典型控制架构。
图8示出了根据本发明的一方面的接收来自地址的数据的典型方法。
图9示出了根据本发明的一方面的基于相关的属性选择数据的典型方法。
图10示出了使用请求应用实现数据的典型方法。
图11示出了典型的计算环境,其中可使用本发明。
图12示出了典型的网络,其中可使用本发明。
图13是通常在工业自动化环境中使用的典型传统的架构。
发明的详细描述现在参考附图描述本发明,其中相同的参考数字用于指相同的元件。本发明涉及支持面向对象的访问,例如,在控制架构内多级上的信息的系统和方法。这样的数据访问以MES系统附近的层或MES系统的部分或以例如,诸如在控制器或MES层内合作封装数据的白盒的方式而被促进。此外,这样的对于数据面向对象的访问可被作为控制器数据类型的标准行为和那些数据类型的标志在控制器内构成。通过这种方式,用户可直接使用自动系统组件来使用诸如特性、方法、范围/访问限定(私人、保护的、公开的企业)、多态性、继承性等的面向对象的概念。这种对于数据的访问完全与传统的工厂自动控制技术明显不同,其中数据存储在分层数据架构的多个位置内。
例如,在分层架构内,工厂地面可包括诸如PLC和驱动器的控制器,该控制器专用于实时控制。如此,这些控制器可捕获工厂地面数据并且发送该数据至更高的级。工厂地面数据包括感应器和传感器的状态并且不把这些状态与诸如产品的批次或机器的效率的物理或逻辑的实体相关。这样的数据被称作松散的,由于需要有效的客户程序以转换该数据为结构化的数据类型,该数据类型通常在MES层或ERP“企业”系统中被使用。而且,由于控制器发送松散的数据给可驻留在多个计算机上的多个MES应用,在几个地方具有相同数据多个备份在当今是普遍的。由于诸如在失败的事件中,系统恢复和数据的“贵重备份”(golden copy)的发现存在困难的原因,这数据重复性是不理想的。
现在参考图1,典型系统100包括与数据消耗设备120接口的封装组件110。封装组件110可使用来接收来自一个或多个源的数据并且以允许数据消耗设备120的方式来简化例如,自动化系统的系统整合、开发和维护的方式封装该数据。通过封装使数据的特性和方法实质上对任何合适的数据订户都是可访问的,这样的简化就有可能完成。
封装组件110可接收来自任何源的信息,该封装组件110与该源连接进行通信。例如,封装组件110可与位于数据驱动的机构中的外部设备通信以接收来自有关系统的控制架构的各种源的信息。这样的信息可通过特定协议或通信标准诸如以太网、ControlNet、DeviceNet、Profibus、CAN总线等予以发送。或者或此外,通信可由诸如无线以太网、红外线、Wi-Fi、蓝牙等的无线协议实现。此外,封装组件110可通过各种诸如双绞线、同轴电缆、串行电缆等的介质接收数据。封装组件110可以是诸如串行端口、USB端口、有线终端等的硬件接口,或诸如线、电缆、端口等的硬件设备。或者,封装组件110可以本质上是软件以致数据通过诸如例如,API的软件接口被接收和发送。
封装组件110可用来封装数据以使它能利用特定控制架构的一个或多个级支持面向对象的数据访问。例如,这样封装的数据可由例如,在制造执行系统(MES)上的应用和/或在控制级上的处理组件所访问。如此,只有来自特定源的数据的单备份需要存在在特定控制架构中。这样封装的数据可存储在存储器(图中未示)中以使在控制架构中可维持数据持久性的加强方式。
由封装组件110接收的数据的封装可由多个各种因素确定。数据可包括广泛的信息类型,该信息类型包括值和用以描述该值的元数据。例如,来自非接触式传感器的数据传送可包括2.4伏特的数据值和数据的比例因数以及传感器的制造厂商和型号。比例因数可用来确定引入的数据真实值。例如,使用特定比例因数2.4伏特的值可表示17厘米的测量。
可以理解的是本发明可完全抽象位置和/或数据含义的任何概念并且仅仅对于数据用户表现适当的特性子集和方法。例如,封装的数据可具有“标度值”特性而不是必须指定在控制方案内的单词是比例。类似地,如果封装的数据被用以激活处理中的下一批量,例如,可以有表现“运行下一批量”的方法而不是需要数据订户知道激活这样的批量需要设定在控制系统内特定单词的某个比特。特性可被显示以表现诸如成分量、烹调时间、烹调温度等的调配值。或者,这些特性可以是“运行批量”命令的参数。此外,可发布这些对象、方法和特性以减少系统内数据的文件。
数据消耗设备120实际上可以是任何使用特定数据的设备、组件、应用等。如所提到的,一旦数据由封装组件110封装,它可被用作数据对象以及由数据消耗设备使用。通过这种方式,例如,数据消耗设备120(举例来说,MES应用)可直接读和/或写特性和/或调用基于控制器的数据对象的方法。通过进一步的例子,控制器可以是能直接读和/或写特性和/或调用由MES层应用(或其他控制器的)的数据对象显示的对象的方法的客户设备。如此,封装数据作为数据对象可促进整个控制系统内数据的通信和实现。此外,由于只存在这样数据的单个备份,控制系统可以在它在系统内提供连续的数据(举例来说,特性)和方法(举例来说,行为)中更加加强。
封装组件110和数据消耗设备120可以相互是远程的或本地的并且可以使用各种技术耦合。例如,数据消耗设备120可基于一个条件、一个时间或基于一个周期请求来自封装组件110的数据,并且可使用诸如ControlNet、DeviceNet、Profibus、以太网等的通信协议中的任何数量的协议做出该请求。此外,各种介质可被用以发送这样的请求,诸如有线的(举例来说,同轴电缆、双绞线等)和/或无线技术(举例来说,红外线、无线以太网、蓝牙等)。如图中所示,数据消耗设备120可重新发送数据(举例来说,特性和/或方法)给例如,诸如控制器或软件应用的另一不同的数据消耗设备。
图2示出了使用抽象组件210和封装组件220以提供能与处理设备230接口的数据对象的系统200。抽象组件210可接收来自一个或多个可定位于特定控制架构内的源的数据。例如,数据可从企业资源计划(ERP)应用、MES应用、控制器等中被接收。此外,数据可使用各种格式化并包括有关数据如何被使用、数据源、数据的定标等的自描述信息。
抽象组件210可用以确定什么特性和方法被显示给特定数据用户。通过这种方式,通过不允许用户察看他们不感兴趣的和/或应该被禁止访问的数据可减少用户混淆。例如,如果数据用户希望访问来自在控制系统内的数据对象的比例因数,抽象组件可仅仅提供数据的比例因数并减少额外不需要的诸如数据源、源位置、源制造商等数据。
封装组件220可用以定义数据对象可与各种数据用户接口的方式。根据本发明,访问数据对象的特性和/或方法可由用以与这样的数据对象通信的接口予以命令。例如,封装组件可定义,数据对象与处理设备230连口的方式。通过这种方式,数据对象可使用不同的数据以提供相同的特性和/或方法给处理设备230。例如,封装组件220允许用户修改用以提供这种特性和/或方法给特定数据用户的数据,诸如处理组件230。
通过封装数据,可对由处理设备230所隐藏的数据对象做出改变,但提供相同的接口给处理设备230以提供通信的一致和可靠的方法。此外,这样的接口可提供广泛的“标志”以对数据用户描述各种数据。例如,标志可用以描述数据和自动地允许这样的数据用户接口至控制系统的理想的方面,而不是对数据用户显示数据点和/或单词。例如,某个数据点可被标识为“标度”、“温度”、“距离”等。通过这种方式,数据用户不需要熟悉在控制网络内数据的位置和功能。而是,这样的用户可仅仅询问特定控制系统有关具有各种特性和/或方法的数据以接收想要的数据给接口。
封装组件220可具有能确定接口诸如处理设备230的数据用户最好的方式的人工智能(AI)组件(图中未示)。例如,AI组件可识别数据用户的类型和相应的需要并且顺序地提供适当的接口给数据对象。
在本发明的一个方面,对于数据对象的接口以及对数据消耗者显示的这样的数据的特性和方法可由机器学习来完成其中具有用于搜索理想的结果和/或不理想结构的例子的一个或多个训练组可用以训练系统。在本发明的另一方面,初始条件根据一个或多个指示理想结果的特性而被使用。这样的初始条件可根据时间调整并且响应于与返回的结果关联的用户活动以提高辨别。例如,由用户使用的结果可用以训练系统以学习对于关联的询问的理想结果。此外,对于特定数据项最常询问的那个结果的知识(举例来说,特性、方法等)可用以配置合适的接口以仅仅显示数据用户感兴趣和/或被授权查看的信息。例如,一个被用户多次访问的结果可认为对用户更有用。通过这种方式,如果特定数据用户请求特定特性和/或方法,这样方面的数据在今后可加以使用。
此外,如在此被使用的,术语“推论”通常涉及从一组由事件和/或数据捕获的观察结果中推理有关或推断系统、环境、和/或用户的状态的过程。例如,推论可用以识别特定的上下文或活动,或可产生状态的概率的分布。推论可以是概率性的,也就是说,有关状态的概率分布的计算基于数据和事件的考虑。推论也可涉及从一组事件和/或数据中组成高级事件所用的技术。这样的推论导致由一组观察的事件和/或存储的事件数据构成的事件或行动,不管事件是否与接近的时间相关、以及事件和数据是否来自一个或多个事件和数据源。各种分类方案和/或系统(举例来说,支持向量机、神经网络(举例来说,反向传播、反馈转发返回传播、反射基础和模糊逻辑)、专家系统、Bayesian网络、和数据合成)可结合执行结合本发明的自动的和/或推导的活动所使用。
还根据本发明的另一个方面,一技术可被用以预期对于数据用户适当的接口。例如,诸如表示随着接口至各种用户的同时已使用的此类数据相关的数据和属性的历史数据的信息可用以预告在网络内用户的偏好的数据特性和/或方法。例如,基于统计、概率、推论和分类(举例来说,明确训练的和不明确训练的)的智能决策,包括Bayesian学习、Bayesian分类以及其他诸如决定树学习方法、支持向量机、线性和非线性衰退和/或神经网络可根据本发明的一方面加以使用。通过这种方式,AI组件(图中未示)可通过封装组件使用以提供基于有关特定数据源的特定数据用户学习的活动做出的决定。
通过一种方法,处理设备230实质上可以是任何组件,其中可驻留一个或多个数据点。根据本发明的一方面,可编程逻辑控制器(举例来说,Allen BradleyPLC5、SLC-500、MicroLogix等)可以是处理设备230。例如,处理设备230可以是用来通过使用不同的协议与一个或多个数据用户通信的Allen BradleySLC-500PLC。通过进一步的例子,处理设备可以是诸如可请求和/或使用各种具有特定特性和/或方法的数据的数据库的软件应用。
图3示出了包括嵌入于工业控制器320的封装组件310的系统300。封装组件310提供由工业控制器320接收的数据的特性和方法。如图所示,工业控制器320耦合至控制组件350。工业控制器320实质上可以是任何在工业环境中使用的处理设备。这样的例子包括可编程逻辑控制器、智能处理器、远程终端、数据获得卡等。此外,使用任何介质(举例来说,同轴电缆、双绞线、串行等)和/或诸如ContorlNet、DeviceNet、以太网、红外线等的协议可实现与工业控制器的通信。此外,工业控制器有一个或多个端口以提供数据发送至多个数据用户。通过这种方法,工业控制器320可以实质上在任何所介绍的控制系统内接收和/或发送数据。
如图所示,封装组件310嵌入于工业控制器320中。然而,可以理解的是封装组件实质上可位于有关工业控制器320任何位置(举例来说,远程地)。例如,封装组件310可用以封装由工业控制器接收的数据以使数据呈现给不同的数据用户以产生在自动化系统内面向对象的能力。通过这种方式,数据用户可使用有关诸如特性、方法、范围和/或访问限定词、多态、继承等的数据的面向对象概念。例如,术语“聚集”可由一个以上的可与工业控制器接口的数据用户(图中未示)使用,该工业控制器中每个用户分配不同的含义至该术语。通过这种方法,来自封装的组件的数据可识别由每个不同数据用户需要的特定功能。
通过进一步的例子,一组类似的数据对象(举例来说,来自相同过程的数据、相同的控制方面等)可被分组以定义该组中与数据关联的特性和方法。通过这种方法,在多个事件中没有重复定义特性和方法的情况下,与数据对象组关联的特性和方法可被单次地定义并且由多个数据用户使用。此外,在控制系统内数据定义和使用的一致性可得到维护。
现在参考图4,示出了典型系统400,其中工业控制器410与多个数据订户420至460连接。由工业控制器410接收的数据可存储于存储器中(图中未示)以在将来被访问。工业控制器410实质上可以是任何能驻留在工业环境中的控制器,诸如可满足诸如IP67、IP45等特定环境标准的组件。此外,工业控制器410可处理和/或存储接收的数据以被本地和/或远程检索和使用。
由工业控制器410接收和存储的数据可提供这样的数据的单个备份给系统400的其余部分。例如,该数据可被封装以显示特性和方法的合适的子集至一个或多个数据订户。通过这种方式,只要对这样的数据方面感兴趣的授权的订户可查看数据。封装的数据可以是自描述为在控制系统内通过各种接口通信。此外,一个或多个可在定位于特定控制架构中多个不同位置的数据订户420至460可通过工业控制器访问数据。
数据订户420至460可以是在特定架构和/或系统内的任何位置和/或控制级。例如,数据订户430可表现在MES层内的应用,其中这样的应用可在工业控制器410内直接读和/或写特性和/或调用数据的方法。这样的数据连接可通过使用各种技术来实现。例如,标准执行引擎可被嵌入于工业控制器和/或诸如.NET公共语言运行时间或Java虚拟机的数据订户。此外,例如,控制器面向对象的概念可使用来自使用诸如IEC-1111语言标准控制系统编程语言的工业控制器的数据被实现。这样的语言可包括分段传递式梯形逻辑、结构化文本、功能框图、顺序功能图、指令列表等。
图5表现了控制架构500,其中数据对象组件510接口至控制层520、对象层530、MES层540和/或ERP层550。数据对象组件510可接收来自一个或多个源的信息以抽象和封装这样的信息,可依次作为数据对象输出。例如,这种数据对象可接口至控制架构500的一个或多个层(举例来说,控制、对象、MES、ERP等)以使数据对象可如自动分层那样容易地上下相互交换。通过这种方式,面向的对象访问信息可在控制架构500的多个级上得以支持。
可以理解的是根据本发明的一个方面,由控制架构500使用的数据可存储于多个位置中的一个。例如,数据可从数据访问组件510、对象层530、MES层540等访问。虽然数据可被从控制架构500内的一个以上的位置访问,这样的数据仅驻留(举例来说,存储于)在一个位置中以提供该数据的特性和方法一致的更新。例如,数据可被从数据对象组件510或对象层530任一个元素加以定位和访问。此外,可以理解的是根据本发明使用的数据实际上可以在有关控制架构500的任何位置。
单接口可用以对于数据特性和/或方法的读和/或写,而不管架构500的哪个级要访问数据。例如,如果特定分层(举例来说,ERP、MES控制等)要访问特定数据或使用来自不同位置的这样面向的对象服务数据,此数据将具有相同的表示而不管数据用户的类型和/或位置。换而言之,数据将作为具有特定属性和/方法的对象出现。此外,不管这样的数据是否被本地激活或在不同的位置被使用,数据用户可依然具有能力接口以访问数据。
图6显示了系统600,其中数据对象目录610可接口至控制层620、MES层630和/或ERP层640。通过这种方法,数据对象目录610可被一个或多个从任意数量的源接收的数据对象所总装。例如,数据对象可从MES层630和/或外部数据对象源接收。
传统地,在控制架构一个层内使用的数据不能被相同架构的不同层容易地使用(举例来说,读、写等)。而,这样的数据必须被重新格式化和/或重新配置以符合使用此数据的每个层的某些数据使用需求。然而,根据本发明的一个方面,数据可被封装和存储在数据对象目录610中以呈现想要的数据特性和方法给多个用户。通过这种方法,数据对象目录可被分布以使一个或多个数据对象利用特定项目通过拖动和下拉想要的数据对象至特定项目所使用。例如,用户可使用一个或多个数据对象构建数据对象目录以执行想要的控制功能并且也接口到MES层和/或外部整合。这样的数据对象可存储在数据对象目录610中并在将来的某个时间通仅仅通过“下拖”目录对象和下拉它至特定项目所使用。
数据对象目录610可通过特定用户用以组织想要的数据对象。例如,数据对象可根据多个数据用户的需要被分成多个组,该数据用户通过数据对象目录610访问一个或多个数据对象。如此,根据本发明,如果使用来自多个硬件和/或软件组件的特定过程点组以控制在工厂内特定流水线上的生产,这样的数据可先被封装为一个或多个数据对象。然后,这些数据对象可被作为组(举例来说,子目录)放置到数据对象目录610并通过包括控制层620、MES层630和ERP层640的整个数据架构整体地使用。
图7示出了典型系统700,该系统使用可编程逻辑控制器(PLC)710以与传感器720接口并且提供这样的信息至PLC740和/或MES应用750。为了促进数据特性和/或方法的通信,PLC710可耦合至封装组件730,该封装组件730接收来自传感器的数据并且转变该数据为可被PLC710、PLC740和/或MES应用750(举例来说,数据用户)使用的数据对象。可以理解的是一个或多个数据用户可以实质上相同的方式接口来自封装组件的数据对象。例如,MES应用750可请求特定类型的数据对象并被连接到PLC710以与名为“Tank 1”的数据对象接口。一旦这样的结果被返回,MES应用能使用结构化的方法以调用实际上发送服务至PLC710的数据对象。通过这种方法,诸如C#、Visual Basic、C等程序可在MES应用750被使用以支持这样的服务级架构和容易地访问数据对象“Tank 1”。
图8、9和10示出了根据本发明的方法800、900和1000。为了解释的简明,方法被描写和描述成一系列活动。可以明白和理解的是本发明不被所示的活动和/或活动的次序所限制,例如活动可以以各种次序和/或与没有在此呈现和描述的方法同时发生。此外,根据本发明,不是所有示出的活动都被需要以实现方法。另外,本领域的普通技术人员可明白和理解方法可由状态图或事件被选择地表现为一系列相关状态。
现在参考图8,示出了用以显示数据特性和方法给一个或多个用户的方法800。通过这种方法,对于信息面向对象的访问可在特定控制架构内被提供给一个或多个级。在810,数据由基本上任何可发送信息的源被接收。这样的信息可通过一个或多个协议(举例来说,串行、ControlNet、DeviceNet等)使用诸如同轴电缆、以太电缆、红外线、无线以太网等各种有线和/或无线介质而被发送。例如,信息可基于事件、周期性或一次被接收。通过例子,只要特定温度符合或超过预定值,数据可被接收。
接收的数据可使用各种格式和/或标准以不同的长度发送。通常,这样的数据可包括与接收的数据关联的值和方法。可用元数据以描述接收到的这样的值和方法以帮助客户理解什么方法和特性可用以及怎样访问和/或调用这样的特性和方法。此外,这样的数据基本上可在任何与控制架构关联的位置被接收。通过这种方式,例如,数据可作为邻近MES系统的层或MES系统的部分或作为与在控制器和/或MES层内合作封装数据的白盒被接收。或者,数据可通过控制器被接收以支持对于信息面向对象的访问作为控制器数据类型的标准行为和那些数据类型的标志。
在820,数据被抽象化以使数据可与信息关联,该信息可对一个或多个数据用户有某些作用。例如,数据可提供值、设备制造商、设备协议、设备端口、设备位置、设备IP地址、设备颜色、数据的周期性等。然而,一个或多个用户可不请求所有发送的数据。这样抽象可帮助确定数据封装的方式。
在830,数据被封装以使数据可提供给一个或多个数据用户。通过这种方式,只要特性和方法合适的子集可被显示给特定用户以防止客户在访问中访问不被授权和/或不感兴趣访问的数据。通过限制数据特性和方法的显示,对于访问特性和方法的方式的改变不会影响访问该数据的不同客户。此外,例如,数据的封装可对特性和/或方法提供选择的访问,该特性和/或方法在控制架构内使用特定接口。在840,数据作为数据对象发送给一个或多个数据用户。
图9示出了典型方法900,其中使用数据的特性和方法。在910,例如,请求数据。这样的数据可由一个或多个与控制系统关联的数据用户请求。此外,数据的类型、属性、格式等可被指定并且这样的请求可通过搜索引擎、询问组件等实现。在920,数据被定位。数据可基于至少部分的请求的数据参数被定位在特定系统内。通过这种方式,有关数据含义的数据位置、地点或任何特定信息就不必要定位请求的数据。如此,系统实质上可调节任何数据请求,特别那些来自新的和/或不熟悉特定控制系统的架构的用户。
在930,数据用户读出数据特性和在940,数据用户可写入一个或多个数据属性。类似地,在950,数据用户可调用与在位于920的数据相关的方法。如此,在定位想要的数据时,用户可开始通过一个或多个与数据用户关联的过程以使用这样定位的数据。提供被封装的支持对于信息面向对象的访问的数据可促进这样的互动。此外,用户可使用各种具有诸如特性、方法、范围限定、访问限定、多态等的面向对象概念。
现在参考图10,示出了方法1000,该方法通过公共接口提供数据给第一和第二数据用户。在1010,数据根据特种协议、介质和标准被接收。例如,只要这样的数据到达特定组件和/或设备,这样的数据就可被轮询和/或接受。在1020,根据本发明,接收到的数据被转换成数据对象。数据可通过抽象和封装数据被转换成数据对象以提供用于数据用户使用这样的数据的方法。在1030,接收到来自第一用户的请求。这样的用户可本地和/或远程地做出对于数据的请求并且实质上可以定位于任何与诸如MES层、控制层等的控制系统关联的位置。在1040,接收到来自第二用户的请求。这样的用户可类似地被实质上定位于任何位置。在1050,数据通过使用公共接口提供给第一和第二用户以由每个各自用户使用数据对象。这样的接口可基于诸如用户需要、与数据关联的特性和/或方法等多个因素而加以定义。
参考图11,描述了用以实现本发明各个方面的典型环境1110包括计算机1112。计算机1112包括处理单元1114、系统存储器1116、以及系统总线1118。系统总线1118耦合系统组件包括,但不局限于,系统存储器1116至处理单元1114。处理单元1114可以是各种可用处理器的任何一种。双微处理器和其他多处理器架构也可用作处理单元1114。
系统总线1118可以是总线结构的多种类型中的任何一种,该总线结构包括存储总线或存储控制器、外围总线或外部总线、和/或使用各种可用总线架构中的任何一种的本地总线,该总线架构包括,但不局限于,8位总线、工业标准结构(ISA)、微信道结构(MSA)、扩展工业标准结构(EISA)、智能电子驱动(IDE)、VESA局部总线(VLB)、外设部件互连(PCI)、通用串行总线(USB)、高级图形接口(AGP)、个人计算机存储卡国际协会总线(PCMCIA)以及小型计算机系统接口(SCSI)。
系统存储器1116包括易失性存储器1120和非易失性存储器1122。基本输入/输出系统(BIOS)存储于非易失性存储器1122中,它包括基本例行程序以在计算机1112内的两个元件之间,诸如在启动期间,转移信息。通过说明,而非限制,非易失性存储器1122可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程只读存储器(EPROM)、电可擦可编程只读存储器(EEPROM)、或快速存储器。易失性存储器1120包括如外部高速缓冲存储器活动的随机存取存储器(RAM)。通过说明,而非限制,RAM可以多种形式获得,诸如同步随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、同步DRAM(SDRAM)、双数据速率SDRAM(DDR SDRAM)、增强SERAM(ESDRAM)、同步链DRAM(SLDRAM)、以及直接存储器总线RAM(DRRAM)。
计算机1112也包括可移动/不可移动、易失性/非易失性计算机存储介质。图11所示,例如,磁盘存储器1124。磁盘存储器1124包括,但不局限于,像磁盘驱动器、软盘驱动器、磁带驱动器、Jaz驱动器、Zip驱动器、LS-100驱动器、快速存储器卡、或存储棒。此外,磁盘驱动器1124可包括独立的存储介质或与其他存储介质结合的存储介质,该其他存储介质包括,但不局限于,诸如光盘驱动器(CD-ROM)、可记录光盘驱动器(CD-R Drive)、可写光盘驱动器(CD-RM Drive)或数字化通用光盘ROM驱动器(DVD-ROM)的光盘驱动器。为了促进磁盘存储设备1124与系统总线1118的连接,通常使用诸如接口1126的可移动或不可移动接口。
可以理解的是图11描述软件,该软件作为在合适的操作环境1110内描述的用户和基本计算机资源之间的中介物。这样的软件包括操作系统1128。操作系统1128可存储在磁盘存储器1124上,用以控制和分配计算机系统1112的资源。系统应用1130通过操作系统1128由存储在系统存储器1116或磁盘存储器1124上的程序模块1132和程序数据1134利用资源的管理。可以理解的是本发明可使用各种操作系统或操作系统的组合所实现。
用户通过输入设备1136输入命令或信息至计算机1112。输入设备1136包括,但不局限于,诸如鼠标、跟踪球、记录笔、触摸板、键盘、麦克风、操纵杆、游戏板、圆盘式卫星电视天线、扫描仪、TV调谐卡、数码照相机、数码摄影机、网络照相机等的指示设备。这些和其他输入设备由接口端口1138通过系统总线1118连接到处理单元1114。接口端口1138包括,例如,串行端口、并行端口、游戏端口、和通用串行总线(USB)。输出设备1140使用如输入设备1136的端口相同类型中的某些类型。如此,例如,USB端口可用以提供输入至计算机1112,并用以将从计算机1112输出的信息提供至输出设备1140。提供输出适配器1142以说明存在诸如某些在其他输出设备1140中,需要特殊配置器的监视器、扬声器、和打印机的输出设备1140。输出适配器1142包括,仅为说明而非限制,提供在输出设备1140和系统总线1118之间连接方式的视频和声频卡。应该注意的是其他设备和/或设备的系统提供输入和输出能力两者,诸如远程计算机1144。
计算机1112可在网络的环境中使用逻辑连接到一个或多个诸如远程计算机1144的远程计算机进行操作。远程计算机1144可以是个人计算机、服务器、路由器、网络PC、工作站、基于微处理器的装置、对等设备或其他公共网络节点等,并且通常包括许多或所有关于计算机1112描述的元件。为了简明,只有记忆存储器设备1146结合远程计算机1144示出。远程计算机1144通过网络接口1148逻辑地连接至计算机1112,然后通过通信连接1150物理地被连接。网络接口1148包括诸如局域网(LAN)和广域网(WAN)的通信网络。LAN技术包括光纤分布式数据接口(FDDI)、铜分布式数据接口(CDDI)、以太网/IEEE1102.3、令牌网/IEEE 1102.5等。WAN技术包括,但不局限于,点对点链接、如综合服务数字网(ISDN)和其后的各种的线路转接网络、封装交换网络、和数字用户线路(DSL)。
通信连接1150涉及使用的硬件/软件以连接网络接口1148至总线1118。尽管所示的通信连接1150为了清楚的说明是在计算机1112内部,它也可以是在计算机1112的外部。对于连接到网络接口1148必要的硬件/软件包括,只为示例目的,诸如包括常规电话级调制解调器、电缆调制解调器和DSL调制解调器、ISDN适配器、和以太网卡的调制解调器的内部和外部技术。
图12是一示例计算环境1200的框图,其中可使用本发明。系统1200包括一个或多个客户机1210。客户机1210可以是硬件和/或软件(举例来说,线程、进程、计算设备)。系统1200还包括一个或多个服务器1230。服务器1230也可以硬件和/或软件(举例来说,线程、进程、计算设备)。
在客户机1210和服务器1230之间可能的通信可以是被在两个或多个计算机过程之间传送的数据包形式。系统1200包括用以促进客户机1210和服务器1230之间通信的通信构架1250。客户机1210可与接口到一个或多个被用存储本地信息至客户机1210的客户数据存储器1260。类似地,服务器1230可被接口到一个或多个可被用以存储本地信息至服务器1230的服务器的数据存储器1240。
以上描述的内容包括本发明的例子。当然,为了描述本发明而描述每个组件或方法可以想到的组合是不可能的,但是本领域的普通技术人员可意识到本发明的许多进一步的组合和改变是可能的。相应地,本发明要包括属于在附加的权利要求书的精神和范围内的所有更改、修改和变换。在这点上,可以意识到的是本发明包括系统和具有用以执行本发明多种方式的步骤的计算机可执行指令的计算机可读介质。此外,尽管本发明一特定特性已经结合本发明的多个方面或实现中的仅仅一个被公开,这样的特性可结合其他实现的一个或多个其他特性对于任何给定的或特定的应用而言是希望的和有益的。此外,对于在详细的描述或权利要求书中所使用的术语“包括”、“包含”、“有”、“具有”,以及它们的变形,这样的术语包括于类似术语“包含”和它的变形中。
权利要求
1一种提供数据给工业控制系统的系统(100、200),包括与工业控制设备(320、410)关联的封装组件(110),所述组件接收来自源的数据以及封装数据(220、310)至有关数据的包特性和方法作为一个或多个数据对象,其中面向对象访问数据通过使用公共数据对象格式加以促进;以及位于工业控制网络内的数据消耗设备(120),所述设备使用接口以访问从封装的数据对象中的一个选择的数据对象。
2.如权利要求1所述的系统,其特征在于,封装组件(110)与处理设备(230)、智能终端、远程终端、工业处理器、可编程逻辑控制器(710、740)以及智能控制器中的一个或多个关联。
3.如权利要求1所述的系统,其特征在于,数据消耗设备(120)位于企业资源计划层(550、610)、制造执行系统层(540、630)、对象层(530)以及控制层(520、620)中的至少一个。
4.如权利要求1所述的系统,其特征在于,数据消耗设备(120)是处理设备(230)、智能终端、远程终端、工业处理器、可编程逻辑控制器(710、740)以及智能控制器中的一个或多个。
5.如权利要求1所述的系统,其特征在于,接口防止未授权的数据消耗设备访问数据特性和数据方法中的至少一个。
6.如权利要求1所述的系统,其特征在于,进一步包括搜索引擎,所述引擎能通过使用封装的数据定位数据特性和数据方法中的至少一个。
7.如权利要求1所述的系统,其特征在于,数据消耗设备(120)可以是直接读数据特性(930)、直接写特性(640)和直接调用数据方法(950)中的至少一个。
8.如权利要求1所述的系统,其特征在于,只有每个数据对象(510)的单个实例是与工业控制系统关联。
9如权利要求1所述的系统,其特征在于,封装组件(110)可定位于企业资源计划层(550、610)、制造执行系统层(540、630)、对象层(530)以及控制层(520、620)中的至少一个。
10.如权利要求1所述的系统,其特征在于,进一步包括抽象组件(210),所述组件确定对特定数据消耗设备(120)显示的特性和方法。
11.如权利要求1所述的系统,其特征在于,进一步包括人工智能(AI)组件,所述组件确定在数据消耗组件(120)和数据对象(510)之间的合适的接口。
12.如权利要求11所述的系统,其特征在于,AI组件基于数据消耗设备模型(120)、数据消耗设备的需求、消耗设备的修订、消耗设备的数据访问的历史以及消耗设备的授权级中的至少一个确定合适的接口。
13.如权利要求11所述的系统,其特征在于,AI组件至少一部分基于支持向量机器、神经网络、反向传播、反馈转发返回传播、反射基础、模糊逻辑、专家系统、Bayesian和数据融合网络等中的一个做出确定。
14.一种在工业控制系统内提供数据的计算机可实现方法(800),包括从源接收数据(810);抽象数据的特性和方法(820);封装数据的特性和方法以提供数据对象(830);以及显示数据的特性和方法(840)至至少一个数据订户(420-460)。
15.如权利要求14所述的方法,其特征在于,进一步包括与数据订户接口以确定数据订户需要的一个和数据订户的授权。
16.如权利要求15所述的方法,其特征在于,与特性和方法的接口,包括读一个或多个特性(930)、写一个或多个特性(940)以及调用一个或多个方法(950)中的至少一个。
17.如权利要求14所述的方法,其特征在于,数据(1030)为ERP层(550、640)、MES层(540、630)、控制层(520、620)以及对象层(530)之一可接收。
18.如权利要求14所述的方法,其特征在于,进一步包括在一个或多个层之间的数据对象的相互交换,其中所述层是ERP层(550、640)、MES层(540、630)、控制层(520、620)以及对象层(530)中的一个。
19.如权利要求14所述的方法,其特征在于,进一步包括在对象目录(610)中存储一个或多个数据对象。
20.一种提供对于信息面向对象的访问的方法,包括从工业控制组件接收数据(120)的步骤;通过显示合适的特性和方法的子集来封装数据(110、220、310)的步骤;以及提供这种的特性和方法(210)给数据用户的步骤。
全文摘要
本发明涉及,例如,支持在控制架构内的多个分层上对于信息的面向对象的访问的系统和方法。这样的数据访问可以靠近MES系统的层或MES系统的部分或合作封装,诸如在控制器或MES层内封装的数据的白盒的形式予以促进。此外,这样的对于数据面向对象的访问可作为控制器数据类型的标准行为和那些数据类型的标志在控制器内构成。通过这种方式,数据能作为数据目标加以封装,使用与每个数据用户的共用接口来展示相关数据的性能和/或方法。这样,数据用户直接利用它们的自动化系统组件来应用面向对象的概念,诸如特性、方法、范围/访问限定(私人、保护的、公开的企业)、多态性、继承性等。
文档编号G05B15/02GK1755564SQ200510113320
公开日2006年4月5日 申请日期2005年9月30日 优先权日2004年9月30日
发明者M·D·卡兰, J·J·拜尔, D·W·法奇民, R·A·玛夸尔德特, R·A·莫斯, S·C·布瑞安特, S·昌德 申请人:洛克威尔自动控制技术股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1