CN115622727A - 工业自动化安全远程访问 - Google Patents

工业自动化安全远程访问 Download PDF

Info

Publication number
CN115622727A
CN115622727A CN202210825325.8A CN202210825325A CN115622727A CN 115622727 A CN115622727 A CN 115622727A CN 202210825325 A CN202210825325 A CN 202210825325A CN 115622727 A CN115622727 A CN 115622727A
Authority
CN
China
Prior art keywords
industrial
data
asset
control
project
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210825325.8A
Other languages
English (en)
Inventor
斯蒂芬·C·布赖恩特
纳撒尼尔·S·桑德勒
斯科特·A·米勒
瑞安·P·邓恩
布鲁斯·T·麦克利夫
纳班·阿查里雅
朱莉·阮
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.)
Rockwell Automation Technologies Inc
Original Assignee
Rockwell Automation Technologies 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 Rockwell Automation Technologies Inc filed Critical Rockwell Automation Technologies Inc
Publication of CN115622727A publication Critical patent/CN115622727A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0272Virtual private networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/102Entity profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions

Abstract

本发明提供了一种工业自动化安全远程访问。工业信息中心(IIH)和工业开发中心(IDH)用作工业生态系统平台,在工业生态系统平台上,多个参与者可以递送与其核心竞争力相关的可重复和标准化服务。IIH系统的核心围绕开发生态系统,生态系统通过聚合数字内容和领域专业知识,为用户(包括工业企业、OEM、系统集成商、供应商等)创建和传递价值。IIH系统用作生态系统与工厂设施的OT环境之间的可信信息代理,并且提供用于连接资产、情境化资产数据并提供对生态系统的安全访问的平台。作为该生态系统的一部分,IIH系统使用安全远程访问架构,以允许用户经由虚拟专用网络连接远程地访问关于其工厂车间资产的数据。

Description

工业自动化安全远程访问
技术领域
本文中公开的主题一般地涉及工业自动化系统,并且例如涉及工业信息服务。
背景技术
OT级系统可以是分散且复杂的,并且可以与许多物理设备集成。这种具有挑战性的环境再加上特定于领域的编程和开发语言可能会使OT级上的控制系统的开发变得困难,从而导致开发、测试和最终部署新的控制系统设计的长开发周期。此外,鉴于普遍缺乏当前虚拟化和模拟能力,在实际测试或优化可以开始之前必须购买、编程和在物理操作环境中安装工业自动化系统。该工作流程通常会导致项目延迟或成本超支。此外,已安装的工业监测和控制系统固有的复杂性和自定义特性可能使工业资产的所有者(例如,工厂所有者或工业企业实体)难以管理其OT级系统并保护其专有知识产权免受灾难性故障或网络攻击。
发明内容
为了提供对本文中描述的一些方面的基本理解,下面给出了简化的概述。该概述不是广泛的综述,也不意在标识关键/重要要素或描绘本文所描述的各个方面的范围。其目的仅在于以简化形式给出一些概念作为后面给出的更详细的描述的前奏。
在一个或更多个实施方式中,提供了一种用于提供对工业资产的安全远程访问的系统,该系统包括:设备接口组件,其被配置成经由云平台通信地连接至部署在一个或更多个工业设施处的网关设备,其中,网关设备通信地连接至在一个或更多个工业设施处操作的工业资产,以及网关设备分别执行安全远程访问运行时服务;用户接口组件,其被配置成经由云平台向客户端设备提供前端接口,并且经由与前端接口的交互来接收包括用户身份和凭证信息的请求数据;以及访问管理组件,其被配置成响应于确定用户身份和凭证信息允许访问工业资产的子集,经由网关设备中的通信地连接至工业资产的子集的网关设备在客户端设备与工业资产的子集之间建立虚拟专用网络连接。
此外,一个或更多个实施方式提供了一种方法,该方法包括:由包括处理器的系统经由云平台通信地连接至安装在一个或更多个工业设施处的网关设备,其中,网关设备通信地连接至在一个或更多个工业设施处操作的工业资产,以及网关设备分别执行安全远程访问运行时服务;由系统经由云平台向客户端设备提供前端接口;由系统经由与前端接口的交互来接收包括用户身份和凭证信息的请求数据;以及由系统响应于确定用户身份和凭证信息允许访问工业资产的子集,经由网关设备中的通信地连接至工业资产的子集的网关设备在客户端设备与工业资产的子集之间建立虚拟专用网络连接。
此外,根据一个或更多个实施方式,提供了一种非暂态计算机可读介质,在所述非暂态计算机可读介质上存储有指令,所述指令响应于执行而使在云平台上执行并且包括处理器的系统执行操作,所述操作包括:经由云平台通信地连接至安装在一个或更多个工业设施处的网关设备,其中,网关设备通信地连接至在一个或更多个工业设施处操作的工业资产,以及网关设备分别执行安全远程访问运行时服务;经由云平台向客户端设备提供前端接口;经由与前端接口的交互来接收包括用户身份和凭证信息的请求数据;以及响应于确定用户身份和凭证信息允许访问工业资产的子集,经由网关设备中的通信地连接至工业资产的子集的网关设备在客户端设备与工业资产的子集之间建立虚拟专用网络连接。
为了实现上述及有关目的,在本文中结合以下描述和附图对某些示意性方面进行了描述。这些方面表示可以实践的各种方式,本文意在涵盖所有这些方式。在结合附图考虑的情况下,根据下面的详细描述,其他优点和新颖特征会变得明显。
附图说明
图1是示例工业控制环境的框图。
图2是示例工业开发中心(IDH)储存库系统的框图。
图3是示出IDH储存库系统的通用架构的图。
图4是示出与使用IDH储存库系统设计的自动化系统的新控制项目的创建相关联的示例数据流的图。
图5是示出可以由IDH储存库系统利用的与构建、部署和执行控制项目相关的几个示例自动化对象属性的图。
图6是示出从提交给IDH储存库系统的控制项目中提取项目遥测数据的图。
图7是示出基于对提取的项目遥测数据的分析来生成项目推荐的图。
图8是示出由IDH储存库系统模拟控制项目的图。
图9是示出由IDH储存库系统生成移交文档的图。
图10是示出由IDH储存库系统收集数字签名的图。
图11是示出提交控制项目的新版本以与较旧项目版本一起归档的图。
图12是示出将设备配置数据智能备份到IDH储存库系统的图。
图13是示出可以通过IDH储存库系统发起的示例恢复过程的图。
图14是示出基于由装备供应商提交给储存库系统的设备简档来创建和存储资产模型的图。
图15是示出基于控制项目和相应资产模型生成自动化系统或工业环境的数字孪生(digital twin)的图。
图16是示出利用包括多个数字孪生的虚拟化工厂的模拟场景的图。
图17是示出使用由自动化系统设备生成并由IDH储存库系统收集的现场数据(live data)来对虚拟工厂进行细化的图。
图18是示出多用户与虚拟化工厂进行交互的图。
图19是示出可以经由IDH储存库系统远程查看和控制在工厂环境内操作的工业资产的架构的图。
图20是示例工业信息中心(IIH)储存库系统的框图。
图21是示例智能网关设备的框图。
图22是由IIH系统促进的生态系统的一般概念图。
图23是示出由OEM为正在构建以交付给客户的机器创建和注册资产模型的图。
图24是示出结合自动化对象的示例资产模型的图。
图25是示出在客户设施处调试机器以及将机器注册到IIH系统的图。
图26是示出将资产模型从供应商储存库部署到IIH系统的客户储存库的图。
图27是示出基于机器身份来选择和集成资产模型的图。
图28是示出IIH系统为工厂环境内的工业资产的集合提供工业信息服务的架构的图。
图29是示出用于提供对客户的工业资产的安全远程访问的通用架构的高级图。
图30是示出IDH储存库系统的示例架构的图,该架构支持在云平台上将虚拟机实例实例化为系统的数字工程服务的一部分并使用安全远程访问特征连接至这些虚拟机实例的能力。
图31是描绘将虚拟机镜像注册到镜像注册表的图。
图32是示出虚拟机在IDH储存库系统上的多租户执行的图。
图33是IDH储存库系统的示例实施方式的图,IDH储存库系统可以提供具有预先安装的项目转换服务的虚拟机。
图34是示出使用运行项目转换服务的部署的虚拟机转换控制程序文件的图。
图35是用于建立对关于在工厂设施中操作的工业资产的数据的安全远程访问的示例方法的流程图。
图36a是用于远程部署和安全访问预先安装有用于设计和测试工业项目的数字设计应用的虚拟机的示例方法的第一部分的流程图。
图36b是用于远程部署和安全访问预先安装有用于设计和测试工业项目的数字设计应用的虚拟机的示例方法的第二部分的流程图。
图37是示例计算环境。
图38是示例联网环境。
具体实施方式
现在参照附图描述主题公开内容,其中,贯穿全文使用相同的附图标记指代相同的要素。在下面的描述中,出于说明的目的,阐述了大量的具体细节以便提供对其的透彻理解。然而,可能明显的是,可以在没有这些具体细节的情况下实践主题公开内容。在其他实例中,以框图形式示出了公知的结构和设备以便于对其的描述。
如在本申请中使用的,术语“组件”、“系统”、“平台”、“层”、“控制器”、“终端”、“站”、“节点”、“接口”意在指代计算机相关实体、或与具有一个或更多个特定功能的操作设备相关的或作为该操作设备的一部分的实体,其中,这样的实体可以是硬件、硬件和软件的组合、软件、或执行中的软件。例如,组件可以是但不限于:在处理器上运行的进程、处理器、硬盘驱动器、包括附加固态存储驱动器(螺丝拧紧或螺栓固定)或者可移除附加固态存储驱动器的(光存储介质或磁存储介质的)多个存储驱动器;对象;可执行体;执行的线程;计算机可执行程序、和/或计算机。通过例示,服务器上运行的应用以及服务器二者均可以为组件。一个或更多个组件可以驻留在执行的进程和/或线程内,并且组件可以位于一个计算机上和/或分布在两个或更多个计算机之间。此外,本文所描述的组件可以根据其上存储有各种数据结构的各种计算机可读存储介质来执行。组件可以例如根据具有一个或更多个数据组分(例如,来自与本地系统、分布式系统中的另一组件进行交互的一个组件的数据,以及/或者来自经由信号在网络例如因特网上与其他系统进行交互的一个组件的数据)的信号经由本地和/或远程处理进行通信。作为另一个示例,组件可以是具有由电气或电子电路系统操作的机械组件所提供的特定功能的设备,其中所述电气或电子电路系统通过处理器执行的软件或固件应用被操作,其中处理器可以位于设备内部或外部,并且执行软件或固件应用的至少一部分。作为又一个示例,组件可以是如下设备,该设备通过电子组件提供特定功能而无需机械部件,电子组件可以在其中包括处理器以执行提供电子组件的至少部分功能的软件或固件。作为再一个示例,接口可以包括输入/输出(I/O)组件以及相关联的处理器、应用或应用编程接口(API)组件。虽然前述示例涉及组件的各个方面,但是举例说明的方面或特征也适用于系统、平台、接口、层、控制器、终端等。
如本文中所使用的,术语“推断(to infer)”和“推断(inference)”一般是指根据经由事件和/或数据捕获的一组观察结果来推理或推断系统、环境和/或用户的状态的过程。可以采用推断来标识特定的上下文或动作,或者可以例如生成状态的概率分布。推断可以是概率性的,也就是说,所关注的状态的概率分布的计算基于数据和事件的考虑。推断还可以指用于从一组事件和/或数据构成较高等级事件的技术。这样的推断导致从一组观察到的事件和/或存储的事件数据来构造新的事件或动作,而不管事件是否是时间接近地紧密相关,并且不管事件和数据是来自一个事件和数据源、还是来自若干个事件和数据源。
此外,术语“或”意指包含性的“或”,而非排他性的“或”。也就是说,除非另外指明或者在上下文中明确,否则短语“X采用A或B”旨在表示任何自然的包含性排列。也就是说,短语“X采用A或B”满足以下实例中的任何一个:X采用A;X采用B;或X采用A和B二者。此外,除非另有指明或上下文明确针对单数形式,否则本申请中以及所附权利要求中使用的冠词“一(a)”和“一个(an)”一般应被解释为是指“一个或更多个”。
此外,如本文中使用的术语“集合”排除空集,例如其中没有元素的集合。因此,本主题公开内容中的“集合”包括一个或更多个要素或实体。作为说明,控制器的集合包括一个或更多个控制器;数据资源的集合包括一个或更多个数据资源;等等。同样地,本文中使用的术语“组”是指一个或更多个实体的集合,例如节点组指代一个或更多个节点。
将根据可以包括许多设备、组件、模块等的系统来呈现各个方面或特征。但应当理解和明白的是,各个系统可以包括另外的设备、组件、模块等以及/或者可以不包括结合附图所论述的设备、组件、模块等的全部。还可以使用这些方法的组合。
图1是示例工业环境100的框图。在该示例中,多个工业控制器118被部署在整个工业工厂环境中,以监测和控制与产品制造、加工、运动控制、批处理、材料处理或其他这样的工业功能相关的相应工业系统或处理。工业控制器118通常执行相应的控制程序以便于对组成受控工业资产或系统(例如,工业机器)的工业设备120进行监测和控制。一个或更多个工业控制器118还可以包括在个人计算机、刀片式服务器或其他硬件平台或云平台上执行的软控制器。一些混合设备还可以将控制器功能与其他功能(例如,可视化)进行组合。由工业控制器118执行的控制程序可以包括用于处理从工业设备120读取的输入信号以及控制由工业控制器生成的输出信号的任何可想到的类型的代码,包括但不限于梯形逻辑、顺序功能图、功能框图、结构化文本、C++、Python、Javascript等。
工业设备120可以包括输入设备、输出设备或者用作输入设备和输出设备二者的设备,输入设备向工业控制器118提供与受控工业系统相关的数据,输出设备对由工业控制器118生成的控制信号做出响应以控制工业系统的各方面。示例输入设备可以包括遥测设备(例如,温度传感器、流量计、物位传感器、压力传感器等)、手动操作者控制设备(例如,按钮、选择器开关等)、安全监测设备(例如,安全垫、安全拉绳、光幕等)以及其他这样的设备。输出设备可以包括马达驱动器、气动致动器、发信号设备、机器人控制输入设备、阀等。诸如工业设备120M的一些工业设备可以在不受工业控制器118控制的情况下在工厂网络116上自主地操作。
工业控制器118可以通过硬连线连接或者通过有线或无线网络与工业设备120通信上对接。例如,工业控制器118可以配备有与工业设备120进行通信以影响对设备的控制的本地硬连线输入和输出。本地控制器I/O可以包括:向现场设备发送离散电压信号以及从现场设备接收离散电压信号的数字I/O,或者向设备发送模拟电压或电流信号以及从设备接收模拟电压或电流信号的模拟I/O。控制器I/O可以通过背板与控制器的处理器进行通信,使得数字信号和模拟信号可以被读入控制程序并由控制程序控制。工业控制器118还可以使用例如通信模块或集成联网端口通过工厂网络116与工业设备120进行通信。示例性网络可以包括因特网、内联网、以太网、以太网/IP、设备网、控制网、数据高速公路和数据高速公路加(DH/DH+)、远程I/O、现场总线、网络通讯协议(Modbus)、过程现场总线(Profibus)、无线网络、串行协议等。工业控制器118还可以存储可以由控制程序引用并且用于控制决策的持久数据值,其包括但不限于:表示受控机器或处理的操作状态的测量的或计算的值(例如,罐物位、位置、警报等),或者在自动化系统的操作期间收集的捕获的时间序列数据(例如,多个时间点的状态信息、诊断发生等)。类似地,一些智能设备——包括但不限于马达驱动器、器械或状况监测模块——可以存储用于控制操作的状态和/或使操作的状态可视化的数据值。这样的设备还可以将时间序列数据或事件捕获在日志上以供稍后检索和查看。
工业自动化系统通常包括一个或更多个人机接口(HMI)114,其允许工厂人员查看与自动化系统相关联的遥测数据和状态数据,并且控制系统操作的一些方面。HMI 114可以通过工厂网络116与工业控制器118中的一个或更多个进行通信,并且与工业控制器交换数据以促进在一个或更多个预开发的操作者接口屏幕上对与受控工业过程相关的信息进行可视化。HMI 114还可以被配置成允许操作者将数据提交至工业控制器118的存储器地址或指定的数据标签,从而为操作者提供向受控系统发布命令(例如,循环启动命令、设备致动命令等)、修改设定点值等的手段。HMI114可以生成一个或更多个显示屏幕,操作者通过一个或更多个显示屏幕与工业控制器118进行交互并且从而与受控过程和/或系统进行交互。示例显示屏幕可以使用过程的图形表示来使工业系统或其相关联设备的当前状态可视化,所述过程的图形表示显示计量的或计算的值、基于状态采用颜色或位置动画、呈现警报通知或者采用其他这样的技术以向操作者展现相关数据。以该方式呈现的数据由HMI 114从工业控制器118读取,并且根据由HMI开发者选择的显示格式被呈现在显示屏幕中的一个或更多个上。HMI可以包括具有用户安装或预先安装的操作系统以及用户安装或预先安装的图形应用软件的固定位置设备或移动设备。
一些工业环境还可以包括与受控工业系统的特定方面相关的其他系统或设备。这些系统或设备可以包括例如一个或更多个数据历史库(data historian)110,所述数据历史库110聚合和存储从工业控制器118和其他工业设备收集的生产信息。
工业设备120、工业控制器118、HMI 114、相关联的受控工业资产、以及其他工厂车间系统例如数据历史库110、视觉系统以及其他这样的系统在工业环境的运营技术(OT)级上操作。更高级别的分析和报告系统可以在信息技术(IT)域中的工业环境的较高企业级处(例如在办公网络108上或在云平台122上)操作。这样的较高级别的系统可以包括例如企业资源计划(ERP)系统104,所述ERP系统104集成并总体地管理高级业务操作,例如财务、销售、订单管理、营销、人力资源或其他这样的业务功能。鉴于较高级别的业务考虑,制造执行系统(MES)102可以监测和管理控制级上的控制操作。报告系统106可以从工厂车间的工业设备收集操作数据,并且生成总结受控工业资产的操作统计的每日或轮班报告。
OT级系统可以是分散且复杂的,并且可以与许多物理设备集成。这种具有挑战性的环境再加上特定于领域的编程和开发语言可能会使OT级上的控制系统的开发变得困难,从而导致开发、测试和最终部署新的控制系统设计的长开发周期。此外,鉴于普遍缺乏当前虚拟化和模拟能力,在实际测试或优化可以开始之前必须购买、编程和在物理操作环境中安装工业自动化系统。该工作流程通常会导致项目延迟或成本超支。此外,已安装的工业监测和控制系统固有的复杂性和自定义特性可能使工业资产的所有者(例如,工厂所有者或工业企业实体)难以管理其OT级系统并保护其专有知识产权免受灾难性故障或网络攻击。
为了解决这些和其他问题,本文中描述的一个或更多个实施方式提供了基于云的工业开发中心(IDH),其支持对于工业客户而言易于使用并被提供为服务的开发和测试能力。IDH包括增强的存储平台和相关联的设计工具(被统称为Vault),其用作储存库,客户可以在该储存库上存储控制项目代码、设备配置以及工业自动化项目的其他数字方面。IDH系统可以促进与控制系统相关联的数字内容的容易发现和管理,并且可以被用于系统备份和还原、代码转换以及版本管理。
图2是根据本公开内容的一个或更多个实施方式的示例工业开发中心(IDH)储存库系统202的框图。在本公开内容中说明的系统、装置或过程的方面可以构成实施在(一个或多个)机器内例如实施在与一个或更多个机器相关联的一个或更多个计算机可读介质(或介质)中的机器可执行组件。这样的组件在由一个或更多个机器(例如(一个或多个)计算机、(一个或多个)计算设备、(一个或多个)自动化设备、(一个或多个)虚拟机等)执行时可以使(一个或多个)机器执行描述的操作。
IDH储存库系统202可以包括用户接口组件204、项目生成组件206、项目遥测组件208、项目分析组件210、项目文档组件212、资产恢复组件214、仿真组件216、模拟组件218、设备接口组件220、访问管理组件222、供应组件224、一个或更多个处理器226和存储器228。在各种实施方式中,用户接口组件204、项目生成组件206、项目遥测组件208、项目分析组件210、项目文档组件212、资产恢复组件214、仿真组件216、模拟组件218、设备接口组件220、访问管理组件222、供应组件224、一个或更多个处理器226和存储器228中的一个或更多个可以彼此电气和/或通信上耦接以执行IDH储存库系统202的功能中的一个或更多个。在一些实施方式中,组件204、206、208、210、212、214、216、218、220、222和224可以包括存储在存储器228上并由处理器226执行的软件指令。IDH储存库系统202还可以与图2中未描绘的其他硬件组件和/或软件组件进行交互。例如,处理器226可以与一个或更多个外部用户接口设备诸如键盘、鼠标、显示监视器、触摸屏或其他这样的接口设备进行交互。
IDH储存库系统202可以在云平台上被实现为基于云的服务的集合,以促进具有业务或技术关系的各种各样的用户的访问,所述用户包括工业装备所有者(例如,工业企业实体或工厂所有者)、装备供应商、原始装备制造商(OEM)、系统集成商或其他这样的用户实体。系统202在其上执行的云平台可以是允许具有云能力的设备访问和利用共享的计算服务的任何基础设施。云平台可以是由具有因特网连接性并具有使用IDH储存库服务的适当授权的设备经由因特网可访问的公共云。在一些场景下,云平台可以由云提供商作为平台即服务(PaaS)而提供,并且IDH储存库系统202可以作为基于云的服务驻留在云平台上并在云平台上执行。在一些这样的配置中,IDH储存库系统202的所有者可以将对云平台和相关联的IDH储存库服务的访问作为订阅服务提供给客户。可替选地,云平台可以是由工业企业(工厂设施的所有者)在内部操作的私有云。示例私有云平台可以包括代管IDH储存库系统202并驻留在受防火墙保护的公司网络上的服务器的集合。
用户接口组件204可以被配置成接收用户输入并以任何合适的格式(例如,视觉、音频、触觉等)将输出呈现给用户。在一些实施方式中,用户接口组件204可以被配置成与客户端设备(例如,膝上型计算机、平板计算机、智能电话等)通信上对接,客户端设备(例如,经由硬连线连接或无线连接)通信上连接至IDH储存库系统202。然后,用户接口组件204可以为客户端设备提供IDH接口环境,系统202通过该IDH接口环境接收用户输入数据并呈现输出数据。在其他实施方式中,用户接口组件204可以被配置成生成适当的接口屏幕并将其提供给客户端设备(例如,程序开发屏幕、项目提交屏幕、分析结果屏幕等),并经由这些接口屏幕交换数据。可以经由用户接口组件204的各种实施方式接收的输入数据可以包括但不限于编程代码(包括工业控制编程,例如梯形逻辑编程)、设备配置数据、工程图、HMI应用或其他这样的输入。由用户接口组件204的各种实施方式呈现的输出数据可以包括程序代码、编程反馈(例如,错误和突出显示、编码建议等)、控制项目遥测和推荐、项目测试结果等。
项目生成组件206可以被配置成基于经由用户接口组件204接收的设计输入以及由IDH储存库系统202维护的工业知识、预定义代码模块和资产模型来创建包括一个或更多个项目文件的控制系统项目。控制系统项目可以包括工业控制代码(例如,梯形逻辑、结构化文本、功能框图等)、包括一个或更多个HMI接口屏幕定义的HMI应用、设备配置文件或其他这样的项目文件中的一个或更多个。
项目遥测组件208可以被配置成分析用户提交的工业控制项目,并基于该分析为所提交的项目生成项目遥测或统计信息。可以由项目遥测组件208生成的示例项目遥测数据可以包括但不限于项目中使用的设备的清单、关于如何使用设备的信息、指示设备或相关联软件将在多大程度上接近硬件或软件容量限制运行的报告、预计项目在运行期间将消耗多少内存或能量或其他这样的统计。
项目分析组件210被配置成分析由项目遥测组件208生成的项目遥测数据,并基于该分析生成设计推荐或警告。项目分析组件210还可以生成从多个最终客户提交的多个项目推断出的设备或装备使用情况统计,以供装备供应商或OEM使用。
项目文档组件212可以被配置成基于对控制系统项目的分析来生成各种项目移交文档或验证文档,包括但不限于批准文档、安全验证清单、I/O检验文档、审计文档或其他这样的文档。资产恢复组件214可以被配置成收集和归档控制项目文件和设备配置的备份,并根据灾难恢复或远程部署目的的需要部署这些归档的项目文件。仿真组件216可以被配置成在虚拟化(或仿真)工业控制器上仿真正在测试的工业控制项目的执行。模拟组件218可以被配置成在正在仿真的工业控制项目的控制下模拟工业自动化系统的虚拟化模型的操作。设备接口组件220可以被配置成:在运行期间从组成自动化系统的工业设备接收实时操作和状态数据,并将控制命令部署到自动化系统的选定设备。
访问管理组件222可以被配置成管理对注册的资源例如已经经由网关设备注册的工业资产的远程访问。供应组件224可以被配置成将虚拟机镜像的实例部署为客户指定的数字工程空间内的可执行虚拟机。
一个或更多个处理器226可以执行参考所公开的系统和/或方法而在本文中描述的功能中的一个或更多个。存储器228可以是计算机可读存储介质,其存储用于执行参考所公开的系统和/或方法而在本文中描述的功能的计算机可执行指令和/或信息。
图3是示出根据一个或更多个实施方式的IDH储存库系统202的通用架构的图。如上所述,IDH储存库系统202可以作为基于云的存储、分析和项目编辑服务的集合在云平台上执行。客户端设备302(例如,膝上型计算机、平板计算机、台式计算机、移动设备、可穿戴AR/VR仪器等)可以访问储存库系统的项目开发和分析工具,并利用这些工具为正在开发的自动化系统加载或创建控制项目。为此,系统的用户接口组件204可以向客户端设备302远程提供IDH客户端304。IDH客户端304包括用作到系统202的接口的多个接口显示。
使用由储存库系统202提供的工具,用户可以向储存库系统202提交控制项目306。通常,控制项目306包括数字数据或文件,所述数字数据或文件当在部署在工业环境内的相应工业设备上被执行时促进对自动化系统或工业过程的监测和控制。控制项目306可以包括旨在在工业控制器上执行的控制代码(例如,梯形逻辑、顺序功能图、结构化文本、功能框图等)、设备配置数据(例如,工业控制器配置文件、马达驱动器配置文件等)、可视化应用(例如,HMI应用、AR/VR内容等)或其他这样的控制项目数据。在一些场景下,控制项目306还可以包括用于其相关联的自动化系统的工程文档,包括工程图(例如,CAD文件)、支持文档、维护计划或其他这样的文档。在使用由IDH储存库系统202提供的设计工具来执行项目开发的一些场景下,控制项目306可以作为正在进行的项目开发输入被提交;例如,作为在设计者编写代码时提交给储存库系统202的控制代码被提交。可替选地,用户可以将完成的控制项目提交到储存库以进行存储、分析和反馈。将在本文中更详细地描述这两种场景。
除了用作用于提交的控制项目306的基于云的存储之外,储存库系统202对提交的控制项目306应用各种分析,并生成用于改进所提交的控制项目的方面的项目推荐308。该分析可以基于在储存库系统202上维护的客户储存库324和供应商储存库326中包含的特定于客户的信息和特定于供应商的信息以及存储在知识库328中的一般工业专业知识。
储存库系统202可以维护为各个不同的最终用户实体(例如,装备或工厂所有者、工业企业等)指定的多个客户储存库324。工业资产的所有者可以提交项目版本310并将项目版本310归档在其指定的客户储存库324中。用户还可以定义定制的工厂标准314,定制的工厂标准314可以被存储在客户储存库324中并应用于所提交的控制项目以确保项目符合定义的标准。客户储存库324还可以存储与在客户设施处使用的工业资产相对应的数字资产模型312。这些资产模型312可以用于多种目的,包括但不限于所提交的控制项目的数字模拟。
储存库系统202还可以基于由装备或设备供应商提交并存储在一个或更多个供应商储存库326中的特定于供应商的数据来分析控制项目306。类似于客户储存库324,储存库系统202可以维护分配给各个不同的装备供应商或OEM的多个供应商储存库326。供应商可以提交设备简档316或他们的装备或设备的其他类型的数字模型,以存储在其指定的供应商储存库326中。这些设备简档316可以结合构建客户的自动化系统或工厂环境的数字孪生来使用,或者将客户对其装备的使用与已定义的装备容量进行比较。供应商还可以提交和存储可以结合其装备的操作执行的应用318或代码段(例如,控制逻辑、HMI接口显示、报告工具等)。
还可以鉴于其他客户提交的并被认为与所提交的项目类似的其他归档项目320来分析所提交的控制项目306。这种分析对于标识所提交的控制项目306的偏离其他设计者使用的更常见的方法的部分(例如,用于对特定类型的工业机器或过程进行编程的代码)可能有用。知识库328还可以存储可以针对其检查所提交的控制项目306的多个特定于工业的标准定义。如将在本文中描述的,其他类型的信息可以由储存库系统以各种存储指定来存储和管理,并且可以用于分析和优化所提交的控制项目数据。
如上所述,控制项目306可以作为关于给定的工业控制项目的一个或更多个完成的项目文件被提交以被存储和分析,或者如果储存库系统的本地项目开发工具正在被用于创建新项目,则控制项目306可以在项目的开发期间作为设计输入被提交。图4是示出根据一个或更多个实施方式的与使用储存库系统202设计的自动化系统的新控制项目306的创建相关联的示例数据流的图。在该示例中,客户端设备302访问储存库系统的项目开发工具,并利用这些工具为正在开发的自动化系统创建控制项目306。控制项目306可以包括以下项中的一个或更多个:工业控制器代码(例如,控制逻辑、结构化文本、顺序功能图等)、设备配置文件或参数设置、定义HMI屏幕的HMI应用或用于使自动化系统的操作可视化的AR/VR可视化、或控制项目的其他这样的方面。
因此,为了促进项目开发,用户接口组件204可以为客户端设备302提供开发接口显示,所述开发接口显示允许用户以各种支持的格式向储存库系统202提交设计输入404,包括但不限于:在工业控制器上执行的控制编程、将被下载到相应的工业设备(例如,马达驱动器、传感器、工业控制器等)以促进那些设备的配置的设备配置设置、HMI屏幕开发数据或其他这样的设计输入404。基于该设计输入404,项目生成组件206生成控制项目306,该控制项目306包括以下项中的一个或更多个:已编译的控制器代码、设备配置数据、HMI应用文件或可以在适当的工业设备上部署和执行以执行已编程的控制功能的其他这样的可执行控制项目数据。
在一些实施方式中,储存库系统202可以协助开发者设计混合项目开发方法,使得设计功能在本地工作站与基于云的设计服务之间被划分。在这方面,储存库系统202可以协助设计者描绘在本地执行项目开发的哪些部分以及在云平台上执行哪些部分。
此外,在控制项目306的开发期间,项目生成组件206可以生成旨在在开发和优化控制项目306方面协助开发者的设计反馈406,并且该设计反馈406可以由用户接口组件204作为实时反馈呈现给设计者。可以基于对设计输入404本身的分析以及存储在客户储存库324、供应商储存库326和知识库328中的信息来生成该设计反馈406。
例如,当设计者正在输入要在工业控制器上编译和执行的控制代码作为设计输入404时,项目生成组件206可以对代码执行代码分析并基于与各种代码或项目质量度量相关的分析提供推荐、通知或预测。该分析可以包括:确定控制代码是否符合正在为其开发代码的工厂设施处使用的工程标准和实践。为了帮助进行此分析,工厂设施处的工程师可以提交控制代码标准定义,所述控制代码标准定义定义期望所有控制代码在被允许在工厂设施内执行之前遵守的编码标准。这些编码标准可以作为工厂标准314被存储在客户的储存库324中,并且可以在设计者提交设计输入404时由项目生成组件206参考以确定所提交的控制代码是否符合工厂标准。
工厂标准314可以根据优选控制行为(例如,要使用的优选控制序列或在执行特定类型的控制动作时必须识别的互锁、特定机器操作的优选最大或最小控制设定点等)以及根据优选代码格式来定义编码标准。工厂标准314还可以为特定类型的设备(例如,马达驱动器、网络基础设施设备等)定义优选参数或配置,并且项目生成组件206可以在开发期间监测所提交的设计输入404以确保设计者提交的任何设备配置符合定义的标准。在基于该评估确定设计者已经输入了不合规的设备配置之后,项目生成组件206可以生成设计反馈,该设计反馈将偏离通知给用户并指示可允许的配置参数。
工厂标准314还可以包括特定于项目的标准,包括功能规范或安全验证要求。项目生成组件206可以参考由工厂标准314定义的功能项目要求来监测设计输入404,并且在确定所提交的设计输入404的任何部分偏离所定义的功能规范或安全验证要求后生成设计反馈,该设计反馈将偏离通知给用户并提供有关如何可以使控制项目的偏离部分符合要求的推荐。工厂标准314可以根据要执行的制造功能、优选的装备供应商、要使用的装备、产品输出要求、能耗要求、网络利用要求或其他这样的规范来定义功能规范。根据由工厂标准314阐述的功能规范,项目生成组件206可以基于设计输入404推断控制项目的相关属性,并且如果项目的任何方面偏离这些标准则通知用户。例如,如果功能规范指示仅来自指示的优选的供应商的马达驱动器将用于新安装,则项目生成组件206可以根据设计输入404(例如,从工业控制器的I/O配置、或从设计输入404中包括的设备配置数据)推断来自未批准供应商的设备正被包括在控制项目设计中,并通知用户必须替换来自批准供应商的其他设备。
在一些实施方式中,项目生成组件206还可以将作为设计输入404的一部分提交的控制代码与在针对相同控制项目或由相同客户开发的不同控制项目的归档项目版本310中包括的先前提交的控制代码进行比较。基于对由客户提交并归档在客户储存库324中的其他控制代码的分析,项目生成组件206可以学习或推断由该客户使用的典型编码样式或设计方法。例如,这可以包括代码缩进偏好、有关调用语句的使用的偏好、梯级注释标准、变量或I/O命名标准或其他这样的优选编程特性。除了控制编码标准之外,项目生成组件206还可以标识客户对某些控制操作进行编程的优选方式。例如,项目生成组件206可以基于对归档项目版本310的分析来标识客户使用特定的控制序列以便将材料从源容器移动到罐,或者客户通常将特定的控制操作与在可以执行控制操作之前必须满足的互锁的集合相关联。
基于这些学习到的客户编程偏好,项目生成组件206可以基于与项目版本310的比较来标识作为设计输入404的一部分提交的控制编程是否偏离工厂的优选编码实践或工厂的控制某些工业操作的优选方式,并生成设计反馈406,该设计反馈406通知这些偏离并建议将使当前项目符合先前设计策略的替选控制编码。该反馈406可以包括例如针对特定控制操作向控制编程添加一个或更多个互锁的推荐、对操作的序列进行重新排序以控制特定类型的机器的推荐、对对变量或I/O点进行重命名以符合工厂的优选命名法的推荐、对添加或修改梯级注释的推荐、对更改控制代码的部分的缩进的推荐、对用CALL语句替换重复代码实例的推荐或其他这样的反馈。
项目生成组件206还可以参考一个或更多个供应商储存库326中的特定于供应商的装备或设备数据,以预测用户提交的设计输入404是否将引起装备集成或兼容性问题。该确定可以例如基于由装备供应商提交以供项目生成组件206访问的设备简档316。每个设备简档316可以包括用于给定设备的数字规范数据,并且还可以记录针对该设备的已知兼容性问题。使用该信息,项目生成组件206可以鉴于一个或更多个设备的已知限制来评估所提交的设计输入404,以确定所提交的控制编程或设备配置的任何部分是否将导致性能或集成问题。该评估还可以考虑用户正在设计用于协同操作的几组设备之间的推断的交互。例如,如果设计输入404建议设计者打算配置两个不兼容的设备以进行协同操作(基于设备简档316中记录的已知兼容性问题确定),则项目生成组件206可以生成指示两个不兼容的设备的设计反馈406。
由项目生成组件206应用的分析还可以标识所提交的控制代码内的不正确或非最佳的编码实践。该确定可以部分地基于在储存库系统的知识库328中维护的标准定义322中定义的优选编码实践。可以由项目生成组件206标识的编码问题可以包括但不限于过多的嵌套层次、过多的重复代码、不正确的代码缩进等。响应于在用户提交的代码内检测到这样的编码问题,项目生成组件206可以提供设计反馈,该设计反馈推荐将使控制代码符合优选编码标准的替选编程方法(例如,推荐采用case语句来消除过多梯形逻辑)。
项目生成组件206还可以标识可以在控制项目306内进行的修改或替换,这些修改或替换可以改进与控制项目306的执行相关联的存储器或网络利用率。这可以包括例如标识替选的控制代码编程——或对控制项目306进行其他修改,这可以在不更改预期的控制功能的情况下减少工业控制器上的处理负荷。在另一示例中,项目生成组件206可以确定利用设备的当前未使用的功能(例如,操作模式或配置参数设置)或者用不同的设备模型替换在控制项目306中当前使用的设备,可以减少能耗或网络带宽利用率。
为了支持增强的开发能力,IDH储存库系统202的一些实施方式可以根据基于对象的数据模型而不是基于标签的架构来支持控制编程。自动化对象可以用作此基于对象的开发架构的构建块。图5是示出可以由储存库系统202利用的与构建、部署和执行控制项目306相关的几个示例自动化对象属性的图。自动化对象504可以在设计期间被创建和扩增,被集成到较大的数据模型中,并在运行期间被消耗。这些自动化对象504在储存库系统202上提供公共数据结构,并且可以被存储在对象库(例如,存储器228的一部分)中以供重复使用。对象库可以存储表示现实世界工业资产502的各种分类的预定义自动化对象504,包括但不限于泵、罐、值、马达、马达驱动器(例如,变频驱动器)、工业机器人、致动器(例如,气动致动器或液压致动器)或其他这样的资产。自动化对象504可以表示工业企业的几乎任何级别处的要素,包括单个设备、由许多工业设备和组件组成的机器(其中一些可以与它们自己的自动化对象504相关联)以及整个生产线或处理控制系统。
给定类型的工业资产的自动化对象504可以对如2D或3D可视化、警报、控制编码(例如,逻辑或其他类型的控制编程)、分析、启动过程、测试协议和脚本、验证过程和报告、模拟、示意图、安全协议以及与对象504表示的工业资产502相关联的其他这样的属性的这样的方面进行编码。也可以利用标识相关联的资产的位置的位置信息对自动化对象504进行地理标记。在控制项目306的运行期间,与给定的现实世界资产502相对应的自动化对象504也可以记录该资产的状态或操作历史数据。通常,自动化对象504用作其相应的工业资产502的程序表示,并且可以作为控制代码、2D或3D可视化、工业资产的知识库或维护指导系统、或其他这样的方面的元素被并入到控制项目306中。
项目分析组件210的一些实施方式还可以基于从对控制项目306的分析获得的设备配置信息来预测网络流量或负载统计,并基于这些预测来生成网络配置推荐。该分析可以基于客户的网络配置与已知或推荐的网络配置的比较。项目分析组件210还可以生成网络风险报告,该网络风险报告指示由于实现提议的控制设计而导致的网络故障的风险。
完成的控制项目306——使用储存库系统的项目编辑工具(如上面结合图4描述的)开发的或使用单独的控制项目开发平台(例如,梯形逻辑开发平台、HMI应用开发平台、设备配置应用等)开发的——可以被提交给储存库系统202以用于分析、归档或升级目的,如图3中所描绘的。在这方面,IDH储存库系统202用作向任何数量的参与的工业客户开放的安全且智能的工业控制项目储存库,其既提供了控制项目306的安全归档,又提供了对这些项目306的分析以用于生成项目推荐308的目的,项目推荐308旨在优化控制设计或将设计者引导至先前未知和未使用的设备特征,如果使用先前未知和未使用的设备特征,则可以改进控制项目的性能。
为了促进对提交的控制项目306的智能分析,IDH储存库系统202可以包括项目遥测组件208,该项目遥测组件208为提交的控制项目306生成项目遥测数据,该项目遥测数据可以提供对控制项目本身以及针对其正在设计控制项目306的自动化系统的装备和设备拓扑二者的洞察。图6是示出从提交给储存库系统202的控制项目306中提取项目遥测数据602的图。基于对控制项目306的分析,项目遥测组件208可以确定或推断控制项目本身的特性、关于构成要由控制项目306监测和控制的自动化系统的设备或装备的信息、关于受控系统的性能或资源利用率的预测、控制设计对一个或更多个设备的设备生命周期的估计影响或其他这样的项目度量。
例如,基于对工业控制器程序文件的分析——工业控制器程序文件可以包括工业控制器的控制代码、I/O配置数据和联网配置数据——项目遥测组件208可以标识连接至工业控制器的输入设备或输出设备(例如,基于对I/O配置或控制代码本身的检查),并将这些设备的清单记录在项目遥测数据602中。类似的分析可以用于确定被配置成供使用的I/O或控制模块以及关于如何利用控制器的I/O的信息。项目遥测组件208还可以记录被标识为自动化系统的一部分的设备或装备中的任何两个或更多个之间的推断的功能或拓扑关系。项目遥测组件208还可以估计自动化系统预期消耗的网络带宽或能量的总量。为了产生对构成控制系统的设备正如何被使用的进一步洞察,项目遥测数据602还可以记录设备的可用特征的哪个子集当前正由控制项目306使用。
除了用于要控制的自动化系统的度量之外,项目遥测组件208还可以估计用于控制代码本身的性能度量,例如执行控制项目306的各方面所需的估计的存储器量或处理能力。
在一些情况下,项目遥测组件208可以通过参考在供应商储存库326上的设备简档316中存储的特定于供应商的设备信息来增强针对控制项目306生成的项目遥测数据602。例如,项目遥测组件208可以基于对控制项目306的分析来标识特定设备模型(例如,I/O模块、网络基础设施设备、马达驱动器、伺服器、致动器等)正在被用作自动化系统的组件。基于该设备的标识,项目遥测组件208可以访问与该设备的供应商相对应的供应商储存库326,确定对该设备而言设备简档是否可用,并且如果对该设备而言设备简档可用,则从设备简档316中检索设备的功能规范数据以包括在项目遥测数据602中。取决于设备类型的该功能规范数据可以包括如设备的可用I/O、可用配置参数或功能、可用存储器或处理能力、生命周期信息、响应时间、物理尺寸、额定功率、联网能力、操作限制(例如,环境要求,例如设备所额定的环境温度)的这样的信息或其他这样的补充设备信息。
一旦已经针对控制项目306提取了项目遥测数据602,则储存库系统的项目分析组件210可以基于对该项目遥测的分析以及编码的工业专业知识来生成与项目设计相关的推荐或通知。图7是示出基于对提取的项目遥测数据602的分析来生成项目推荐702的图。通过分析项目遥测数据602,项目分析组件210可以确定如何使用客户的工业硬件和软件资产并基于该评估生成推荐或通知。这可以包括确定提议的控制项目——由于控制编程定义的控制序列或针对一个或更多个工业设备设置的配置参数——是否将使控制项目中使用的硬件或软件接近或高于其额定操作阈值而操作。例如,基于如在项目遥测数据602中记录的控制项目的I/O利用率以及在控制项目中使用的设备的I/O容量的知识(其可以基于如设备简档316中记录的关于那些设备的规范数据被确定),项目分析组件210可以生成以下通知:提议的控制设计将使一个或更多个控制设备(例如,工业控制器或I/O模块)接近或超过其最大I/O容量。基于该评估,项目分析组件210还可以推荐具有比控制项目中当前提议的I/O容量更高的I/O容量的替选控制设备,以便增加备用I/O点的数量以用于将来的扩展。
项目分析组件210还可以基于对项目遥测数据602的分析来估计随着时间的设备利用程度,使该信息与记录在设备简档316中的关于设备的生命周期信息相互参照,并生成指示在如控制项目中所提议的那样来使用的情况下关于设备的预期生命周期或故障时间的通知。如果具有较长预期生命周期的等同设备可用,则项目分析组件210还可以生成用等同设备替换当前提议的设备的推荐。可替选地,项目分析组件210可以推荐对控制项目的修改,该修改可以延长设备的寿命(例如,通过在不以其他方式影响控制结果的情况下降低设备的工作频率)。
在一些实施方式中,项目分析组件210还可以标识设备的未使用特征,如果利用设备的未使用特征,则可以改善控制项目的一个或更多个操作度量。这些特征可以是设备的可用的但对设计者而言未知的特征(例如,配置参数、默认情况下不活动但可以被激活或被调用的潜在功能等)。在示例场景中,项目分析组件210可以基于记录在设备的简档316中的功能规范来发现设备的可用特征,并且确定任何未使用的特征是否可能与控制项目306的方面相关或者是否可以改善控制项目306的性能度量。例如,项目分析组件210可以确定调用设备的当前未使用的操作模式可以减少设备的存储器占用空间或网络带宽使用,可以改善自动化系统的产品吞吐量,可以减少整个项目的能耗或材料消耗,可以减少产品浪费,或者可以解锁项目的操作中的另一个无法预料的改善。如果标识出这种可能的设计改进,则用户接口组件204可以向设计者(或与客户相关联的另一个用户实体)发送推荐设计修改的通知。在示例场景中,基于作为控制项目306的一部分的提交的设备配置文件,项目分析组件210可以确定驱动器的未使用的特征(例如,再生制动)可以减少总体功耗,并生成标识驱动器并指示未使用的特征的通知。该通知还可以提供关于在控制序列期间何时应该调用该特征以获得预计的益处的推荐。
项目分析组件210还可以确定控制项目306的任何方面是否偏离工业标准或工厂标准。这可以基于项目遥测602与标准定义322(存储在知识库328中)中定义的工业标准或客户储存库324中存储的工厂标准314中定义的内部标准之间的比较。在工业标准的情况下,与控制项目306相比较的特定的标准集合可以是控制项目306将在其中运行的工业垂直行业(例如,汽车、制药、食品和药品、石油和天然气等)的功能,因为一些类型的工业可能需要遵守特定于垂直行业的控制标准或要求的集合。因此,知识库328可以根据工业垂直行业对标准定义322进行分类,从而允许项目分析组件210选择适当的标准集合以应用于控制项目306。标准定义322可以将这样的工业标准定义为必须被保留为备用容量的所需量的未使用的I/O、排放或能耗要求、安全完整性等级(SIL)要求、应与给定类型的控制操作相关联的互锁或许可(例如,将“阀打开”命令与罐的填充物位联系起来,在满足指定的安全互锁之前阻止机器启动命令)或其他这样的标准。
可以被记录在客户的工厂标准314中并应用于控制项目306的示例内部标准可以包括但不限于控制编码标准(如上面结合图4所描述的)、其设备被批准在工厂内使用的优选供应商、要与某些控制功能相关联的安全互锁或许可、或其他这样的标准。
项目分析组件210还可以执行任何项目分析,并生成任何设计反馈406,以上如由项目生成组件206执行所描述的。一些项目分析结果还可能触发专家支持检查,使得项目分析组件210发起项目的远程检查,这视设计者的许可而定,由技术支持实体进行。
由于由项目遥测组件208和项目分析组件210执行的控制项目分析可以标识或推断将由控制项目306使用的设备和网络,因此项目分析组件210还可以生成由客户的项目所使用的工业资产或设备的清单。储存库系统202可以将该资产清单存储在与控制项目306的所有者相关联的客户储存库324中。此外,如果发现的设备或工业资产中的任何一个具有通过资产的供应商可获得并存储在供应商储存库326上的相关联的数字设备简档316,则储存库系统202可以从供应商储存库326中检索这些设备简档316并将简档316存储在客户储存库中作为与设备相对应的资产模型312。在这方面,设备简档316可以表示其表示的资产的通用数字表示,并且项目分析组件210可以基于项目遥测数据602将这些通用设备简档316转换为表示客户的唯一配置的资产的定制资产模型312。给定工业设备(例如,工业控制器、马达驱动器、安全设备等)的设备简档316可以被定制,例如,通过将设计者针对该设备的特定配置参数(如从项目遥测数据602中获得的)应用于设备简档316以产生设备的定制资产模型312。这些资产模型312可以用作自动化系统的数字孪生的基础,该数字孪生可以用于模拟和测试控制项目306,如将在本文中更详细地描述的。
对项目遥测数据602执行的分析的结果还可以被格式化和过滤,以供参与储存库系统生态系统的装备提供商(例如,装备供应商、OEM等)使用,并且该信息对于装备提供商而言可以作为装备使用情况统计704来使用。例如,对于在控制项目306中使用其装备的每个装备供应商,项目分析组件210可以向供应商提供指示其哪些设备正在被使用以及这些设备的哪些特征正在被使用的数据。可以以如下方式将该数据提供给供应商:对最终客户匿名并防止供应商能够查看客户的专有信息(例如,配方数据、生产统计等)。通常,储存库系统202在提供足够的访问以提供服务的同时保护客户的专有数据。用户接口组件204可以允许用户容易地控制如何向也参与IDH平台的外部实体暴露或隐藏专有数据。
对于给定的装备提供商,用户接口组件204可以对来自由多个不同客户提交的多个控制项目306的这些设备或装备统计进行编译,并且以任何合适的演示格式来展现该聚合的装备使用情况和特征利用信息。例如,关于装备提供商的哪些设备或资产正在被使用的信息可以被展现为客户站点处正在使用的每种资产的数量、指示在何处使用资产的地理明细、指示供应商的产品线的相对流行的图表等。类似的演示可以用来传达供应商的产品中的每一个的哪些特征(例如,操作模式、配置参数等)正在被使用,或者其被使用的产品与其功能能力的接近程度,如根据从使用供应商的产品的多个最终客户收集的聚合项目遥测数据602确定的。装备提供商可以使用这些统计704来作出关于是否由于缺乏流行而停止产品的决定;标识他们的客户未充分利用并因此应予以大力推广的潜在有用的产品特征;基于客户使用这些资源的程度来决定是增加还是减少某些产品的存储器、处理或I/O资源;或者关于产品设计和推广作出其他明智的决定。
虽然可以以对最终客户匿名的方式(例如,出于全球产品使用情况分析的目的)向装备提供商展现一些装备使用情况统计704,但是可以基于装备提供商与其客户之间的服务或许可协议在每个客户的基础上展现所选择的其他这样的统计704。例如,一些装备提供商(例如OEM)可以提供其设备的使用情况作为订阅服务,在订阅服务中,客户购买针对装备的使用情况的指定程度(例如,每月指定数量的操作周期、可用装备特征的有限子集等)的许可。在这样的情况下,项目分析组件210可以基于对项目遥测数据602的分析来确定提供商的装备的估计的使用频率,并且出于许可执行的目的使该信息对于装备提供商可用。
根据可以应用于项目遥测数据602的另一种类型的分析,项目分析组件210可以将控制项目306或其提取的项目遥测数据602与由其他最终客户提交的类似的归档项目320进行比较,并且标识所提交的控制项目306的明显偏离类似的归档项目320的相应方面的方面。然后,用户接口组件204可以将指示控制项目306的偏离方面并推荐项目修改的通知作为项目推荐702进行呈现,项目修改将使控制项目306与通用实践保持一致。以这种方式,储存库系统202可以利用集体的工业专业知识或通用实践来提供关于相对于所提交的控制项目的最佳实践的推荐。可以以这种方式进行比较的提交的控制项目306的各方面可以包括但不限于给定类型的控制操作的互锁设计、设备配置参数(例如,马达驱动器设置、网络基础设施设备设置、安全设备设置等)、控制设定点、给定类型的控制操作或序列的操作顺序或时序、或其他这样的项目方面。
储存库系统202的一些实施方式还可以模拟所提交的控制项目306的一个或更多个方面,以预测控制项目306相对于一个或更多个受控机器是否将产生期望的结果。这允许在物理机器上执行之前对控制项目306进行预测试。图8是示出由IDH储存库系统202模拟控制项目306的图。在该示例中,储存库系统的仿真组件216用作工业控制器仿真器,以针对数字孪生810或正在开发和测试控制项目306的自动化系统的其他类型的虚拟化来执行被定义为控制项目306的一部分的控制编程。在一些实施方式中,构建和模拟数字孪生810的模拟组件218可以部分地基于表示构成自动化系统的工业设备或资产的资产模型312来创建数字孪生810。如上所述,这些资产模型312可以在客户储存库324上被维护,并且可以包括从供应商储存库326获得并基于从项目分析获得的配置数据而定制的设备简档316。使用这些资产模型312以及如根据控制项目306的分析推断出的资产模型312所表示的工业资产之间的功能和/或拓扑关系,模拟组件218可以生成可以针对其模拟和测试控制项目306的自动化系统的数字孪生810。
模拟组件218可以利用由数字孪生810建模的自动化和机械特性来模拟要由控制项目306监测和调节的物理自动化系统的各方面。为此,模拟组件218可以使控制项目306与数字孪生810虚拟地对接,以促进模拟I/O数据在控制项目306(例如,控制项目306中包括的控制代码)与数字孪生810之间的交换,从而模拟现实世界控制。模拟组件218基于由数字孪生810建模的物理系统的静态和动态特性来生成数字和模拟I/O值,这些值表示例如传感器输出、计量输出或与期望由物理系统生成的数据类似的其他工厂数据。该模拟的输出数据804被提供给仿真组件216,仿真组件216接收该数据804作为一个或更多个虚拟物理输入。控制项目306根据项目306中定义的用户定义的控制代码来处理这些输入,并基于该处理来生成数字和/或模拟控制器输出数据802。该输出数据802表示将由工业控制器或执行控制代码的其他类型的控制设备生成并传输至包括自动化系统的硬连线现场设备的物理输出(例如,PID回路控制输出、螺线管励磁输出、马达控制输出、致动器控制输出、机器人控制输出等)。控制器输出数据802被提供给数字孪生810的适当的输入点,其相应地更新模拟的输出数据804。
除了生成模拟的输出数据804之外,模拟组件218还可以响应于模拟的控制器输出数据802基于对模拟的数据交换的分析以及建模的工业资产的预期行为来生成资产响应数据806。例如,基于在数字孪生810中建模的工业资产的自动化和机械特性,模拟组件218可以响应于控制器输出数据802来预测建模的工业资产的预期行为以及由资产制造的产品的行为,并将此预测的行为作为资产响应数据806进行传达。资产响应数据806表示的示例行为可以包括但不限于:产品通过工业资产的移动(包括速度、加速度、位置、滞后等)、流体通过资产的流速、资产的预期能耗、资产的机械组件的预期退化率(部分基于资产模型312中定义的摩擦系数信息)、在操作期间应用于资产的各个组件的预期力或其他这样的行为。
用户接口组件204可以基于模拟的执行结果在客户端设备上生成并呈现模拟结果808。这些模拟结果808可以包括自动化系统的模拟的操作统计(例如,产品吞吐率、预期的机器停机频率、能耗、网络流量、预期的机器或设备生命周期等)。在一些实施方式中,可以将资产响应数据806提供给项目分析组件210,该项目分析组件210可以确定任何模拟的资产响应是否偏离可接受或预期的范围,所述范围可以在存储在客户储存库324上的功能规范中被定义。基于该评估的结果,用户接口组件204可以将任何预计的与预期操作范围的偏离通知给用户,并且呈现关于对控制项目306的修改的推荐,所述推荐可以使一个或更多个预测的性能度量处于可接受的公差或范围内(例如,如由项目的设计规范定义的)。
在新的设计周期结束时,储存库系统202还可以针对新的控制项目生成项目移交和验证文档。图9是示出由IDH储存库系统202生成移交文档902的图。基于对完成的控制项目306的分析,储存库系统的项目文档组件212可以生成各种项目文档902,包括但不限于批准文档、安全验证清单、I/O检验文档和审计跟踪。可以基于存储在客户储存库324中的信息来生成该文档902中的至少一些。例如,项目文档组件212可以基于与控制系统I/O连接的设备的知识(如从控制项目306确定的)以及从与这些设备相对应的资产模型312获得的关于这些设备的信息来生成用于控制项目的I/O检验文档。类似地,可以基于在资产模型312中定义的特定于资产的安全要求来生成安全验证清单。也可以基于在工厂标准314中定义的内部批准要求来生成一些文档902。这些批准要求可以指定例如必须对控制项目的各个方面签核其批准的人员。
还可以基于在知识库328的标准定义322中定义的特定于垂直行业的安全或审计标准来生成一些文档212。在这一方面,一些工业垂直行业可能需要遵守规则,所述规则规定如何收集和存储与自动化系统的工程和操作相关的电子记录、如何针对自动化系统获得电子签名、出于审计目的必须收集哪些类型的文档等。例如,食品和药品工业内运行的工厂设施需要维护符合标题21CFR第11部分的记录。因此,项目文档组件212可以基于针对其设计项目306的工业垂直行业和针对该垂直行业定义文档要求的标准定义322来标识控制项目306所需的项目文档的类型。
在一些实施方式中,IDH储存库系统202还可以管理与由项目文档组件212生成的验证清单联系的数字或电子签名。图10是示出根据一个或更多个实施方式的由储存库系统202收集数字签名的图。在该示例中,数字验证清单1008已经被递送到与需要关于控制项目306的各方面签核的人员相关联的客户端设备1006。验证清单是交互式的,使得每个用户可以经由与清单的交互针对验证清单1008上的相应项提交数字签名1004。在储存库系统202处,从客户端设备接收数字签名1004,并且项目文档组件212将接收到的签名1004的记录保持为签核跟踪数据1002,该签核跟踪数据1002跟踪已经针对验证清单上的每个项接收了哪些签名1004以及从谁那里接收了签名1004。随后可以参考该签核跟踪数据1002以用于审计目的。在一些实施方式中,储存库系统可以被配置成:仅在已经接收到指示那些组件的批准的所有必要签名1004之后,才将控制项目306的组件(例如,控制代码、HMI可视化应用、设备配置等)部署到它们相应的现场设备。
IDH储存库系统202还可以用于归档控制项目306的过去版本和当前版本,并执行相关的版本控制和分析功能。图11是示出提交控制项目306的新版本以与较旧项目版本310一起归档的图。在该示例中,客户储存库324将控制项目306的过去版本和当前版本归档为项目版本310。控制项目306的新版本可能是对控制代码的修改、设备固件升级、对控制项目306的添加以容纳新装备或者对控制项目进行其他这样的更改的结果。归档控制项目306的当前版本和过去版本允许项目开发被记录在储存库系统内,并且还允许控制项目306的任何版本被选择并被部署到自动化系统作为灾难恢复过程的一部分(如果在工厂车间执行的控制项目的部分丢失并且必须被重新安装,或者如果控制项目306的新版本不按所需执行而必须重新部署先前的版本)。这些功能可以由储存库系统的资产恢复组件214管理。
在一些实施方式中,当控制项目306的新版本被提交给IDH储存库系统202时,资产恢复组件214可以利用存储在客户储存库324中的一个或更多个先前版本310来分析控制项目306的新版本,并标识相对于先前版本在新版本中引入的任何潜在的新问题。资产恢复组件214还可以将工厂标准中定义的客户定义的项目分析查询以及被定义为存储在储存库系统的知识库328中的标准定义322的一部分的通用项目分析查询应用于控制项目306的新版本。这些通用查询和定制查询可以被配置成标识控制项目306内的可能导致非最佳的控制性能的特定设计场景。资产恢复组件214可以将这些项目分析的结果呈现为推荐1102。
在一些实施方式中,如果可获得对控制项目306所使用的软件应用的升级,则客户可以提交其控制项目的当前版本(例如,v.X)以升级到最新版本(例如,v.Y)。资产恢复组件214还可以被配置成管理这些升级。当客户将要升级的控制项目306加载到储存库系统202时,资产恢复组件214可以分析控制项目306并执行升级,从而进行执行v.X到v.Y升级所需的任何文件转换。作为该升级的一部分,资产恢复组件214还可以将上面讨论的任何项目分析(例如,与项目分析组件210所应用的分析类似的分析)应用于所加载的控制项目306。在完成升级后,资产恢复组件214可以提供已升级的控制项目文件连同推荐(例如,上述项目推荐702),以改进控制系统的操作或优化控制项目306本身的资源利用率。
通过允许将控制项目的多个版本归档在客户储存库324中并按需部署到工厂车间设备,储存库系统的存储和部署特征可以允许用户在不同的工业设施处部署同一控制项目的不同版本。此功能对于为拥有将在其上执行控制项目306的不同组的工业资产的多个客户提供服务的系统集成商或其他控制解决方案提供商很有用,因为可能需要在不同的客户地点处执行控制项目306的不同版本。
资产恢复组件214还可以实现网络安全特征,所述网络安全特征验证所提交的控制项目306的真实性以确保项目306由可靠源开发和提交。该认证可以部分地基于程序代码相似性。例如,当提交控制项目306的新版本时,资产恢复组件214可以将该新版本与先前提交给储存库系统202并由储存库系统202归档的一个或更多个先前项目版本310进行比较。如果该比较产生新版本与同一客户实体加载的先前版本310完全不同的确认,则资产恢复组件214可以标记新提交的控制项目306,并发起向与客户相关联的可信人员递送安全通知,以请求对新版本进行检查并授权。在一些实施方式中,资产恢复组件214还可以防止控制项目的新版本的部署,除非接收到来自可信人员的授权。资产恢复组件214还可以基于遵守或偏离客户已知的编码样式和标准来认证新的控制项目306,这可以作为工厂标准314的一部分被记录在客户储存库324中。
IDH储存库系统202的一些实施方式还可以为工业资产配置文件或项目文件提供“备份即服务”。图12是示出将设备配置数据1206智能备份到IDH储存库系统202的图。在一些实施方式中,客户设施处的软件代理内部部署(on-premise)可以寻找受支持的工业设备或资产(例如,安装在控制柜1204中的资产),并发起这些设备上安装的设备配置数据1206的备份。设备配置数据1206可以包括控制代码、配置参数设置、HMI应用或其他这样的控制项目数据。在一些实施方式中,这些软件代理可以由智能网关设备1202部署和管理,智能网关设备1202驻留在工厂网络116上并且用作将工厂车间的工业资产与IDH储存库系统202相连接的网关或边缘设备。在这样的实施方式中,智能网关设备1202可以将设备配置数据1206的副本递送到IDH储存库系统202,并且资产恢复组件214可以将设备配置数据1206的备份存储在客户储存库324中作为该客户的所存储的项目版本310的一部分。
项目备份还可以被配置成是版本驱动的,使得资产恢复组件214响应于检测到对工厂车间的项目的修改而将更改加载并归档到控制项目(例如,当工厂工程师经由与控制器的直接连接来修改工业控制器上的梯形逻辑时)。在又一场景中,可以调度资产配置文件的备份,使得资产恢复组件214在定义的时间或根据定义的备份频率来检索和归档当前设备配置。
通过将控制项目的备份归档在客户储存库324中,如果发生灾难将从最近的已知备份中恢复设备配置。图13是示出可以通过IDH储存库系统202发起的示例恢复过程的图。在该示例中,工业环境包括一个或更多个工业控制器118、HMI 114、马达驱动器1306、运行更高级别应用的服务器(例如,ERP、MES等)以及其他这样的工业资产。这些工业资产连接至工厂网络116(例如,公共工业协议网络、以太网/IP网络等),该工厂网络116促进工厂车间的工业设备之间的数据交换。工厂网络116可以是有线网络或无线网络。
当在恢复操作期间要部署控制项目306时,可以经由智能网关设备1202与储存库系统202所驻留的云平台之间的安全连接将项目306委派给工厂设施。资产恢复组件214可以将归档的控制项目306转换为一个或更多个适当的可执行文件(控制程序文件1302、可视化应用1304、设备配置文件1308、系统配置文件等)并将这些文件部署到工厂设施中的适当设备,以促进控制项目的部署或恢复。
此备份和恢复架构还可以用于从一个设施加载系统配置并将系统配置部署到另一设施或从OEM加载配置并将配置部署到客户站点。作为部署过程的一部分,资产恢复组件214可以首先轮询工厂车间的目标设备,以验证那些设备能够支持和执行正在部署的控制项目文件。
通过提供多个客户可以在其上加载和评估他们的控制解决方案的公共的存储和分析平台,IDH储存库系统202可以通过创建开放的生态系统以供工程师共享和重用来自私有储存库和公共储存库的代码来加速现代自动化开发,从而允许他们轻松地管理他们自己的内容和他们信任的其他人的内容并与之协作以加速核心控制开发。
除了以上讨论的特征之外,IDH储存库系统202的实施方式可以支持各种数字工程工具,所述数字工程工具降低了获取、配置和维护客户的OT环境的数字孪生的成本和复杂性,从而允许模拟通过可扩展的按需云工作空间。在一些实施方式中,可以使用存储在客户储存库324上的资产模型312来构建企业自动化系统的数字孪生或工业环境的较大部分的数字孪生。如上所述,这些资产模型312是工厂设施处使用的工业设备或资产的数字表示。与给定工业资产相对应的资产模型312可以定义该资产的功能规范,包括例如定义资产要执行的功能、可用的I/O、存储器或处理能力、支持的功能、操作约束等;资产的物理尺寸;资产的视觉表示;确定虚拟化资产在模拟环境中的行为方式(包括摩擦、惯性、移动程度等)的物理、运动学或机电特性;资产的三维动画属性或其他这样的资产信息。由于一些工业资产的行为随用户定义的配置参数或控制例程而变,因此一些类型的工业资产的资产模型312还可以记录系统设计者为物理资产定义的专用设备配置参数或控制例程。
可以基于使得在一个或更多个供应商储存库326上可获得的特定于供应商的设备简档316来创建针对给定客户的存储在客户储存库中的资产模型312中的至少一些。图14是示出基于装备供应商提交给储存库系统202的设备简档316来创建和存储资产模型312的图。如上所述,项目分析组件210可以标识在客户的控制项目306中使用或涉及的工业设备、资产或装备。这可以包括控制项目306的部分将在其上执行的设备或资产(例如,工业控制器、马达驱动器、安全继电器等)以及被推断为与这些主要控制资产连接或以其他方式与这些主要控制资产具有关系的资产。例如,项目分析组件210可以检查对工业控制器的配置和编程文件的分析,以不仅确定控制器本身如何被配置和编程,而且标识连接至控制器的I/O的设备或资产(例如,基于对作为控制器的配置和编程文件的一部分而包括的I/O模块配置数据或在文件的标签数据库中定义的数据标签的分析)。在另一示例中,还可以基于对控制项目306中包括的HMI应用的分析(例如,基于HMI应用中定义的数据标签、或工业资产的图形表示的定义)来推断构成受控自动化系统的一些工业资产。以这种方式,对控制项目306的分析可以产生除主要监测和控制设备之外的较大的自动化系统拓扑的信息。可以通过对控制项目306的分析发现的示例工业资产可以包括但不限于工业控制器、连接至工业控制器的I/O的输入设备和输出设备、传感器、遥测设备、机器、控制面板、HMI终端、安全继电器或其他安全设备、工业机器人或其他这样的工业资产。
利用组成自动化系统的工业资产的该知识,项目分析组件210可以针对每个发现的工业资产来确定在与资产的提供商或卖方相对应的适当的供应商储存库326上对于该资产是否可获得数字设备简档316。产品供应商可以将设备简档316提交给储存库系统202以支持他们的产品,并且系统202使这些设备简档316对于资产所有者而言可获得,以用于数字工程、模拟和测试。项目分析组件210可以检索与在控制项目306中使用或涉及的工业资产相对应的设备简档316,并将简档316作为资产模型312存储在客户储存库324中。
由于一些设备简档316可以表示其相应物理资产的通用数字表示——即,不考虑资产所有者应用于物理资产的专用配置参数或编程的表示——项目分析组件210可以将这些通用设备简档316转换为表示客户的唯一配置资产的定制资产模型312。该定制可以基于从控制项目306本身或从针对项目306生成的项目遥测数据602获得的配置参数或编程。
所得到的资产模型312可以用作自动化系统的数字孪生810的基础,该数字孪生810可以用于模拟和测试控制项目306,如上面结合图8所讨论的。图15是示出基于控制项目306和相应的资产模型312生成自动化系统或工业环境的数字孪生810的图。在一些实施方式中,模拟组件218可以基于由资产模型312表示的相应物理资产之间的学习或定义的关系将资产模型312聚合成数字孪生810。数字孪生810的范围可以涵盖单个自动化系统、生产线、工业设施内包括多个自动化系统的区域、或包括多个生产区域和自动化系统的整个工业设施。在一些情况下,数字孪生810可以由模拟组件218基于控制项目306和资产模型312自动地部分生成,并且由模拟组件218提供的数字设计工具可以允许用户修改或扩展数字孪生810,以根据需要改进数字孪生的保真度。在一些实施方式中,可以使用专用的数字孪生定义语言来定义用于控制模拟的数字孪生810。
如上面结合图8所描述的,数字孪生810可以用于对与控制器仿真器的交互进行建模以预测由控制项目306定义的控制编程将如何与虚拟工厂进行交互。随着设计项目在调试、优化、迁移和操作员培训阶段的进展,数字孪生810也可以得到改进。
图16是示出利用包括多个数字孪生810的虚拟化工厂1602的模拟场景的图。虚拟化工厂1602可以表示具有每个由数字孪生810表示的多个组件的单个自动化系统,或者可以表示其中工厂内的不同自动化系统或工业资产由相应的数字孪生810表示的较大的工厂环境。虚拟化工厂1602(由模拟组件218模拟)与仿真的控制项目306之间的数据交换与上面结合图8描述的那些类似。一般而言,模拟组件218支持使用数字孪生810来创建虚拟化工厂1602,所述数字孪生810根据模拟的需求而具有不同程度的保真度或复杂度,其中数字孪生810的保真度取决于期望的结果或所需的准确度水平。例如,较高保真度的数字孪生810(例如,数字孪生810a)可以用于作为模拟的重点的自动化系统或工业资产,而较低保真度的数字孪生(例如,数字孪生810b)可以用于对处于重点系统外部但必须被建模以便准确地模拟主系统的运行的自动化系统或工业环境进行建模。在这样的配置的示例中,较高保真度的数字孪生810可以用于对针对其设计控制项目306的加工站进行建模,而较低保真度的数字孪生810可以用于对加工站上游并向加工站提供材料的系统进行建模。该聚合虚拟工厂1602可以产生加工站的准确模拟(考虑到材料进给率),同时相对于使用高保真度的数字孪生810对整个系统进行建模,减少了为了对整个系统进行建模而将以其他方式必须施加的建模工作量。在另一示例中,较高保真度的数字孪生810也可以用于对实际的自动化系统进行建模,而较低保真度的数字孪生810可以用于较简单的功能,例如状态跟踪分析。
在控制项目的调试之后(如上面结合图13所述的),可以基于实际性能数据随着时间提高虚拟工厂1602的保真度。图17是示出使用由自动化系统设备生成并由IDH储存库系统202收集的现场数据1704来对虚拟工厂1602进行细化的图。在该示例中,储存库系统的设备接口组件220经由智能网关设备1202与工业系统对接,智能网关设备1202与构成自动化系统的工业设备一起驻留在公用网络上。在自动化系统操作期间,智能网关设备1202从构成自动化系统的设备收集状态数据和操作数据,包括从一个或更多个工业控制器上的数据标签读取的数据。在一些实施方式中,智能网关设备1202可以在将数据递送到储存库系统202之前对收集到的数据进行情境化(contextualize),并且将处理后的数据作为情境化的数据1704递送到储存库系统202。这种情境化可以包括对该数据加时间戳以及对收集的数据进行归一化或以其他方式格式化以供模拟组件218相对于虚拟工厂1602进行分析。模拟组件218可以将虚拟工厂1602的模拟的预期行为与从情境化的数据1704确定的实际行为进行比较,并且鉴于自动化系统的实际监测的行为来更新虚拟化工厂1602——包括根据需要修改任何数字孪生810——以增加虚拟化工厂1602的保真度。
IDH储存库系统202还可以支持多用户模拟环境,在该多用户模拟环境中,多个用户可以在部署控制项目306之前的设计阶段期间或者在项目306已经被调试之后与虚拟工厂1602进行交互。图18是示出多用户与虚拟化工厂1602交互的图。在该示例中,多个用户能够使用向仪器1802的穿戴者呈现AR/VR演示的穿戴式仪器1802经由用户接口组件204与储存库系统202对接。在一些实施方式中,用户接口组件204可以被配置成:在允许将VR演示递送到可穿戴仪器1802之前,验证可穿戴仪器1802访问IDH储存库系统202——以及尤其是访问虚拟化工厂1602或存储在穿戴者的客户储存库324上的其他信息——的授权。用户接口组件204可以通过以下操作来认证可穿戴仪器1802或其所有者:使用密码验证、生物特征识别(例如,可穿戴仪器1802从用户收集并提交给用户接口组件204的视网膜扫描信息),使可穿戴仪器1802的标识符与被允许访问客户储存库324的一组已知授权设备相互参照或其他这样的验证技术。尽管图18示出了使用可穿戴AR/VR仪器1802对客户储存库的访问和对虚拟化工厂1602的查看,但是其他类型的客户端设备(包括手持设备)也可以用于访问虚拟模拟。
用户接口组件204具有相关联的虚拟呈现组件,该虚拟呈现组件被配置成:在仿真控制项目306的控制下基于虚拟化工厂1602的模拟来生成虚拟现实演示数据,以递送到已授权的可穿戴仪器1802并在该可穿戴仪器1802上执行。演示数据在由可穿戴仪器1802接收并执行时,在可穿戴仪器的显示器上呈现虚拟化工厂1602的交互式三维(3D)虚拟现实演示。通常,虚拟化工厂1602——包括如上所讨论的一个或更多个数字孪生810——可以定义由虚拟化工厂1602表示的工业设施或区域的物理布局的视觉表示。例如,虚拟化工厂1602可以定义位于工厂内的工业资产——包括机器、传送器、控制柜和/或工业设备——的图形表示以及这些工业资产之间的物理关系。对于每个工业资产,虚拟化工厂1602(例如,表示工业资产的数字孪生810)可以定义资产的物理尺寸和颜色以及图形表示所支持的任何动画(例如,变色动画、反映资产的移动的位置动画等)。虚拟化工厂1602还定义工业资产之间的物理关系,包括工厂车间的资产的相对位置和取向、在资产之间延伸的导管或管道以及其他物理定义。
使用可穿戴仪器1802,用户可以向用户接口组件204提交表示用户与虚拟化工厂1602的虚拟交互的交互数据。这些虚拟交互可以包括例如更改用户在虚拟工厂内的观察角度、虚拟选择虚拟工厂内的工业资产或设备或与虚拟工厂内的工业资产或设备进行交互、或其他这样的交互。基于该交互数据,用户接口组件204可以更新穿戴者对虚拟化工厂1602的视角,以反映用户当前的虚拟观察角度,以呈现在用户当前的虚拟视场内工业资产的模拟行为,以呈现与穿戴者的视场内的当前观察的资产相关的模拟数据(例如,状态或操作统计)等。
该架构可以允许多个用户检查在项目306将在其中运行的物理环境的虚拟版本内操作中的控制项目306的各方面。可以在调试控制项目306之前执行该检查。在示例场景中,可以由项目批准链内的指定人员检查和批准被定义为控制项目306的一部分的控制代码。该虚拟代码检查过程可以与内部代码验证要求联系在一起,其中多个指定的检查者必须在现场部署代码之前检查并签核新的控制代码。这种虚拟代码检查的实现可以由在客户储存库324上定义和存储的用户定义的检查策略来驱动。
在一些实施方式中,IDH储存库系统202可以阻止控制项目306的部署,直到由代码检查策略定义的所有指定检查者都收到了所有适当的批准。例如,针对给定的工业企业已定义的检查策略可以限定:工厂的安全管理者和工厂主管工程师必须在新的代码在工厂车间投入使用之前批准新的控制代码。因此,模拟组件218和仿真组件216可以在该新的控制代码的控制下模拟工业资产(如由虚拟化工厂1602定义的)的操作,如上面结合图8和图18所描述的,并且用户接口组件204可以允许检查者单独或同时观察该模拟的操作。如果对新的控制代码的操作感到满意,则每个检查者可以经由用户接口组件204向系统202提交对新代码的批准(例如,以数字签名的形式,如上面结合图10所描述的),并且这些批准与控制项目306相关联地存储在分配给工厂的客户储存库324上。IDH储存库系统202可以阻止控制项目306的调试(例如,上面结合图13描述的调试过程),直到已经接收到由内部代码检查策略定义的所有所需批准。
在另一示例中,多用户模拟环境可以用于执行由OEM正在为客户提议的所提议的自动化系统设计(例如,机械系统和相关联的控制系统)的虚拟预排(walk-through)。在这种场景下,OEM可以使用储存库系统202支持的设计工具来生成表示所提议的自动化系统的虚拟化工厂1602和用于监测和控制自动化系统的相应控制项目306。在开始构建自动化系统之前,OEM和正在为其构建系统的工厂的人员可以同时与虚拟化工厂1602对接,并在虚拟环境内观察所提议的自动化系统的模拟操作,从而为客户提供在自动化系统的构建开始之前提供反馈或提出设计更改的机会。
多用户模拟也可以与操作员训练结合使用。例如,受训操作员可以与训练员一起与虚拟化环境对接,并且可以通过虚拟化工厂环境内的储存库系统202来模拟不同的操作员训练场景。在这样的实施方式中,可以在客户储存库324中定义各种训练场景(例如,需要操作员干预的警报或停机情况),并且模拟组件218可以被配置成在模拟VR环境内虚拟地制定这些场景。同时进行的多用户模拟可以允许训练员在虚拟化环境内提供指导和反馈。
虚拟环境还可以用于执行维护或升级动作的虚拟确认。例如,维护人员可以提交提议的对控制器代码的更改(例如,如上面结合图11所讨论的,作为新的项目版本),并且其他人可以在允许将修改后的代码委派给工业控制器进行执行之前访问储存库系统202以验证提议的更改。在一些实施方式中,模拟组件218还可以被配置成相对于虚拟化工厂1602对修改后的代码执行预测(或“假设”)分析,以预测将由于调试修改后的代码而引起的自动化系统的操作变化,并基于这些预测的结果来生成对进一步的代码修改的推荐。可以基于用于评估新控制项目的类似标准来生成这些推荐(例如,推荐702),包括与已定义的项目标准的偏离、不正确的控制代码格式化、代码修改对设备的生命周期的影响、可以改进或简化正在实现的控制修改的未使用设备特征的识别或其他这样的标准。
模拟组件218的一些实施方式还可以被配置成:通过模拟针对项目的各种压力测试场景来测试新的或修改的控制项目306。这可以包括模拟如组件故障(例如,预测系统对阀故障的响应)、不正确或不足的操作员工作流程(例如,预测如果操作员对关键事件的反应太慢的结果)的这样的场景或其他这样的场景。基于对系统对这样的压力测试场景的响应的推断,模拟组件218可以生成用于以更好地预见故障场景并缓解响应于这样的场景的不良结果的方式修改控制项目306的推荐。
在部署完成的项目修改之后,模拟组件218可以执行集中在对项目的修改上的后续模拟,使得模拟将实际机器响应与先前预期的因代码更改而产生的响应进行比较。用户接口组件204可以突出显示在递送给可穿戴仪器1802的VR或AR演示中的任何这样的偏离。如果项目或代码修改仅影响工厂的有限部分(例如,单个机器),则模拟组件218在这种场景下可以仅执行对虚拟化工厂1602的部分模拟,从而仅将模拟集中在工厂的受影响部分以及与受影响部分有关的任何必要情境上。模拟组件218可以基于对控制项目修改的范围的确定来确定该后续模拟的范围。
在一些实施方式中,IDH储存库系统202还可以使用虚拟化工厂1602作为与物理系统进行远程交互的平台。图19是示出其中可以经由IDH储存库系统202远程查看和控制在工厂环境内操作的工业资产1902的架构的图。在部署控制项目306之后,设备接口组件220可以获得由工业资产1902在运行期间生成的情境化数据1704。该情境化数据1704可以表示工业资产1902随时间的操作数据或状态数据,并且可以由智能网关设备1202收集、情境化并流式传输至储存库系统202,如上面结合图17所描述的。基于该接收到的情境化数据和虚拟化工厂1602(包括一个或更多个数字孪生810),用户接口组件204可以将工业资产的操作的基本上实时的可视化1910递送给被授权访问工厂数据的被授权的客户端设备1904。这些可视化可以包括例如递送给可穿戴仪器并包括由虚拟化工厂1602定义并根据现场情境化数据1704进行动画处理的动画三维虚拟环境的VR演示。可以通过表示这些资产并包括在虚拟化工厂1602中的数字孪生810来定义与情境化数据1704的它们的相应子集同步的各种工业资产1902的动画行为。可视化1910还可以在这些VR环境内将情境化数据1704的选定子集叠加在相关资产表示(例如,表示速度、流量、压力、产品吞吐量等的值)以及由模拟组件218生成的计算或预测的性能度量上或附近。在一些实施方式中,作为字母数字或图标信息覆盖的替选方案,可视化1910可以使用聊天机器人来在模拟期间提供口头音频反馈。
如果用户位于工厂设施内并且正在通过用作客户端设备1904的可穿戴仪器查看工业资产,则可视化1910可以包括AR演示,该AR演示在用户的视场内叠加相关状态信息和性能统计,使得将信息在视场内定位在相关工业资产上或附近。作为VR或AR演示的替选方案,可视化1910可以包括在另一类型的客户端设备1904的显示器上呈现的二维演示。
除了允许远程查看工业资产1902的操作或性能统计之外,储存库系统202还可以允许从客户端设备1904向自动化系统的远程命令1912的受管制发布。可以经由储存库系统202从客户端设备1904发起的远程命令1912可以包括但不限于:控制设定点修改、启动或停止机器的指令、改变机器的当前操作模式的指令或其他这样的命令。在基于VR的可视化的情况下,可以经由用户与相关工业资产或其相应控制面板的虚拟化表示的交互(例如,与虚拟控制面板I/O设备或HMI的交互)来发出这些远程命令1912。响应于接收到这样的远程命令1912,模拟组件218可以基于对接收到的命令是否被允许在给定当前情况下被远程发布的确定来允许或拒绝向相关工厂车间设备发布控制命令1908。在决定是否发布所请求的控制命令1908时储存库系统202可以考虑的因素可以包括例如发布远程命令1912的人的授权凭证、对目标机器是否处于允许安全地发布控制命令1908的状态的确定、关于允许远程发布哪些类型的控制命令1908的定义的规定(其可以作为工厂标准314或其他这样的标准的一部分被存储在客户储存库324上)。
此外,对于一些类型的远程交互(例如,远程命令1912的发布或控制项目更改的远程部署),安全考虑可能需要储存库系统202确认试图经由云平台执行远程交互的人员在工厂内的如下位置:在发起所请求的操作之前为受影响的工业资产1902提供清晰的视线可见性。例如,如果用户正试图经由储存库系统202来升级工业设备上的固件、实现对控制编程的更改或发布某种类型的远程命令1912,则设备接口可以首先将用户的地理位置信息与有关受影响的工业资产的已知位置信息进行关联,并且将拒绝发布用户当前位置的所请求的交互不在相对于该资产的定义区域内,所述相对于该资产的定义区域是已知的以允许对资产的清晰可见性。哪些类型的远程交互需要对资产的清晰视线的定义可以被存储为工厂标准314的一部分,并且可以包括在被实现时具有引起机器损坏或损害的一定程度的风险的远程操作,因此在执行交互时用户应该直接在视觉上对其进行监测。
在一些实现方式中,上述IDH储存库系统202及其相关联的数字设计工具和储存库可以与用作装备所有者、装备供应商和服务提供商的多参与者生态系统以交换信息和服务的基于云的工业信息中心(IIH)系统结合操作。IIH系统由安全云平台上的工业资产的数字表示驱动,并且可以利用IDH储存库系统202提供的资产模型312和其他工具。虽然工业资产数字化具有相当大的潜在价值,但从数字模型中获得最大收益将需要多个合作伙伴的参与,所述多个合作伙伴包括工业客户、OEM、装备供应商、系统集成商等。
若干挑战可能是阻止客户或服务提供商采用大规模数字部署。例如,现有的工业资产需要自组织开发工作来组织和收集数据。此外,将来自多个资产和数据源的数据情境化为可操作的数据可能困难且昂贵。安全和数据所有权问题也会限制OEM与其客户之间的协作,特别是考虑到工业客户通常需要包含来自多个OEM的内容的完整解决方案。此外,大多数OEM和系统集成商在创建数字内容方面具有有限的领域专业知识,并且装备所有者也同样缺乏维护基于此数字内容的解决方案的部分的专业知识。运营技术(OT)用例需要在边缘和云架构上被解决,具有围绕不同连接级别的灵活性。对于OT和IT技术的分离也有强烈的信念,包括将OT与IT网络和云进行物理分离的感知需求。
为了解决这些问题和其他问题,本文描述的IIH系统——连同IDH支持的工具和储存库——可以用作单个的工业生态系统平台,在该平台中,多个参与者可以递送与其核心竞争力相关的可重复和标准化的服务。IIH系统的核心围绕生态系统的开发,该生态系统通过聚合数字内容和领域专业知识来为用户(包括工业企业、OEM、系统集成商、供应商等)创建和传递价值。IIH系统可以用作生态系统与工厂设施的OT环境之间的可信信息代理,并且提供用于连接资产、情境化资产数据并提供对生态系统的安全访问的平台。此外,IIH系统可以为OEM和其他主题专家提供工具和支持,从而允许这些专家能够将他们的数字资产用于生态系统。IIH系统可以降低工业资产的数字建模的成本和风险,使得供应商、OEM和最终用户可以协作以提高运营效率和资产性能。
图20是根据本公开内容的一个或更多个实施方式的示例工业信息中心(IIH)系统2002的框图。在本公开内容中说明的系统、装置或处理的方面可以构成实施在(一个或多个)机器内例如实施在与一个或更多个机器相关联的一个或更多个计算机可读介质(或介质)中的机器可执行组件。这样的组件在由一个或更多个机器(例如(一个或多个)计算机、(一个或多个)计算设备、(一个或多个)自动化设备、(一个或多个)虚拟机等)执行时,可以使(一个或多个)机器执行描述的操作。
IIH系统2002可以包括用户接口组件2004、建模组件2006、模拟组件2008、设备接口组件2010、分析组件2012、访问管理组件2014、一个或更多个处理器2020和存储器2022。在各种实施方式中,用户接口组件2004、建模组件2006、模拟组件2008、设备接口组件2010、分析组件2012、访问管理组件2014、一个或更多个处理器2020和存储器2022中的一个或更多个可以彼此电气和/或通信上耦接以执行IIH系统2002的功能中的一个或更多个。在一些实施方式中,组件2004、2006、2008、2010、2012和2014可以包括存储在存储器2022上并由处理器2020执行的软件指令。IIH系统2002还可以与图20中未描绘的其他硬件组件和/或软件组件进行交互。例如,处理器2020可以与一个或更多个外部用户接口设备诸如键盘、鼠标、显示监视器、触摸屏或其他这样的接口设备进行交互。
与IDH储存库系统202一样,IIH系统2002可以在云平台上被实现为基于云的服务的集合,以促进具有业务或技术关系的各种各样的用户的访问,所述用户包括工业装备所有者(例如,工业企业实体或工厂所有者)、装备供应商、原始装备制造商(OEM)、系统集成商或其他这样的用户实体。系统2002在其上执行的云平台可以是允许具有云能力的设备访问和利用共享的计算服务的任何基础设施。云平台可以是由具有因特网连接性并具有使用IIH服务的适当授权的设备经由因特网可访问的公共云。在一些场景下,云平台可以由云提供商作为平台即服务(PaaS)而提供,并且IIH系统2002可以作为基于云的服务驻留在云平台上并在云平台上执行。在一些这样的配置中,IIH系统2002的所有者可以将对云平台和相关联的IIH服务的访问作为订阅服务提供给客户。可替选地,云平台可以是由工业企业(工厂设施的所有者)在内部操作的私有云。示例私有云平台可以包括代管IIH系统2002并驻留在受防火墙保护的公司网络上的服务器的集合。
用户接口组件2004可以被配置成接收用户输入并以任何合适的格式(例如,视觉、音频、触觉等)将输出呈现给用户。在一些实施方式中,用户接口组件2004可以被配置成与客户端设备(例如,膝上型计算机、平板计算机、智能电话等)通信上对接,客户端设备(例如,经由硬连线连接或无线连接)通信上连接至IIH系统2002。然后,用户接口组件2004可以为客户端设备提供IIH接口环境,系统2002通过该IIH接口环境接收用户输入数据并呈现输出数据。在其他实施方式中,用户接口组件2004可以被配置成:生成适当的接口屏幕并将其提供给客户端设备(例如,程序开发屏幕、项目提交屏幕、分析结果屏幕等),并经由这些接口屏幕交换数据。
建模组件2006可以被配置成:基于用户经由用户接口提交的建模输入来生成数字资产模型或设备模型,或者将多个数字资产模型聚合成表示最终用户的工业系统或环境的较大的数字孪生或虚拟化工厂。模拟组件2008可以被配置成模拟基于资产模型、数字孪生或虚拟化工厂的工业自动化系统的虚拟化模型的操作。模拟组件2008可以与IDH储存库系统202的模拟组件218类似地起作用。
设备接口组件2010可以被配置成直接或经由智能网关设备1202与工厂车间的工业设备或资产进行对接,并从这些资产接收实时操作和状态数据以用于分析,模拟或可视化的目的。作为安全供应资产模型的过程的一部分,设备接口组件2010还可以从智能网关设备1202检索设备标识信息或凭证信息。分析组件2012可以被配置成:鉴于相应的资产模型或数字孪生,对收集的工业资产数据执行各种类型的分析。访问管理组件2014可以被配置成:从远程位置将客户端设备安全地连接至工厂设施内的工业资产,而无需打开工厂的公司防火墙上的入站端口。
一个或更多个处理器2020可以执行参考所公开的系统和/或方法而在本文中描述的功能中的一个或更多个。存储器2022可以是计算机可读存储介质,该计算机可读存储介质存储用于执行参考所公开的系统和/或方法而在本文中描述的功能的计算机可执行指令和/或信息。
图21是根据本公开内容的一个或更多个实施方式的示例智能网关设备1202的框图。智能网关设备1202可以包括设备接口组件2104、IIH接口组件2106、网关分析组件2108、用户接口组件2110、分析缩放组件2112、一个或更多个处理器2120和存储器2122。在各种实施方式中,设备接口组件2104、IIH接口组件2106、网关分析组件2108、用户接口组件2110、分析缩放组件2112、一个或更多个处理器2120和存储器2122中的一个或更多个可以彼此电气和/或通信上耦接以执行智能网关设备1202的功能中的一个或更多个。在一些实施方式中,组件2104、2106、2108、2110和2112可以包括存储在存储器2122上并由处理器2120执行的软件指令。智能网关设备1202还可以与图21中未描绘的其他硬件和/或软件组件进行交互。例如,处理器2120可以与一个或更多个外部用户接口设备诸如键盘、鼠标、显示监视器、触摸屏或其他这样的接口设备进行交互。
设备接口组件2104可以被配置成与工厂设施内的工业设备和资产进行通信上对接并与之交换数据。IIH接口组件2106可以被配置成经由云平台与IIH系统2002进行通信上对接。网关分析组件2108可以被配置成将边缘级分析应用于从工业设备和资产收集的数据。在一些场景中,这些分析可以基于存储在智能网关设备1202上的资产模型312或机器学习模型。用户接口组件2110可以被配置成经由一个或更多个公共网络或专用网络向客户端设备发送数据以及从客户端设备接收数据。分析缩放组件2112可以被配置成将所选择的分析处理缩放到云平台上的IIH系统2002并且协调IIH系统2002与智能网关设备1202之间的分布式分析。
一个或更多个处理器2120可以执行参考所公开的系统和/或方法而在本文中描述的功能中的一个或更多个。存储器2122可以是计算机可读存储介质,该计算机可读存储介质存储用于执行参考所公开的系统和/或方法而在本文中描述的功能的计算机可执行指令和/或信息。
图22是由IIH系统2002促进的生态系统的一般概念图。一般而言,IIH系统2002支持基于云的环境和相关联工具,其允许供应商、OEM、系统集成商或其他工业服务提供商创建和部署数字服务,以供工厂设施处的工业资产2202的所有者使用。IIH系统2002可以提供多种功能,包括将信息从工厂资产2202移动到云平台的标准化简易连接解决方案;构建和维护来自多个源的情境并缩短实现价值的时间的通用数据模型(资产模型、数据模型、数字孪生、资产机器学习模型等);通过预先构建的数字孪生、机器学习模型、分析和混合现实体验,支持来自OEM的信息就绪资产;允许最终用户提供对其OT资产2202和信息的安全访问并利用生态系统的领域专业知识和内容的安全架构;以及使得生态系统合作伙伴能够传递价值并将服务货币化并让他们的客户轻松消费这种价值的技术平台。
每个生态系统合作伙伴都可以通过参与IIH生态系统从关键成果中受益。例如,工业资产2202的所有者将通过利用数据和洞察看到改善的运营效率和资产性能,以及通过标准化部署看到更高的设备投资回报和更快的分析部署(rollout)。OEM将通过远程监测、预测性维护、性能合同和“机器即服务”产品在其资产的整个生命周期中看到新的收入来源。系统集成商和独立软件供应商(ISV)将从系统模拟和验证中看到快速的应用开发和更低的集成成本。
为了支持大量不同的参与者,IIH系统2002可以利用可信信息连接源来提供核心资产到云的连接、数据治理以及最终用户与生态系统之间的访问管理,包括安全且经过验证的架构。这些服务可以涵盖广泛的连接用例,从完全内部部署和断开连接到间歇性和始终连接。解决断开连接或间歇性连接用例,同时证明连接的价值可以加速数字成熟度并消除云采用的障碍。
在其上构建IIH系统2002的云基础设施可以提供使生态系统能够快速开发标准化和可重复解决方案的组件,包括本地连接器、用于情境化的通用数据模型、数据储存库或数据湖、数字孪生配置文件构建器、以及针对关键用例的预构建的机器学习参考解决方案。这些组件可以使生态系统能够提供预测性维护、远程监测、专家协助和数字劳动力生产力(包括AR和VR)。
IIH系统2002还可以提供从边缘到云的可扩展计算产品,其与包括简单网关、边缘计算(例如,智能网关设备1202)、数据中心和提供最佳的近机(near machine)、内部部署和云计算能力的云计算能力的硬件产品的组合一起操作。
IIH平台可以允许资产模型312由客户、OEM或生态系统的另一参与者创建、注册和绑定到资产。图23是示出由OEM为正在构建以交付给客户的机器2304创建和注册资产模型的图。资产模型312可以使用IIH系统的数据建模服务来构建,并且可用于从云到边缘或到工厂车间设备(例如,智能网关设备1202或工业控制器)的部署。为此,IIH系统的建模组件2006可以生成包括建模工具2308的模型开发接口并将其(经由用户接口组件2004)提供给与OEM相关联的客户端设备2302,并且设计者可以经由与这些工具2308的交互来提交建模输入2310。这些建模工具2308允许OEM设计者定义一个或更多个数字资产模型312以与正在构建的机器2304相关联,机器2304的购买者可以将其用于云级或边缘级分析(例如,性能评估或预测性分析)、机器2304的虚拟模拟、VR/AR可视化或其他这样的数字工程功能的目的。
资产模型312可以对其对应的机器2304的各个方面进行建模。例如,资产模型312可以定义构成机器2304的设备和组件(例如,工业控制器、驱动器、马达、传送器等),包括每个设备的功能规格和配置参数。在一些情况下,资产模型312可以分层定义这些机器设备和组件,或者以其他方式定义设备之间的功能关系。资产模型312还可以定义机器2304的视觉特性和三维动画属性,它们可以用于在模拟或VR演示内使机器可视化。对于能够支持机器2304的模拟的资产模型312,资产模型312还可以定义确定机器2304在模拟环境中如何表现的物理、运动学或机电特性(例如,摩擦、惯性、移动程度等)。资产模型312还可以包括分析模型,所述分析模型被设计成处理机器2304产生的运行时数据以产生关于机器操作的洞察或预测。
可以根据使用自动化对象504作为构建块的基于对象的架构来构建资产模型312的一些方面。图24是示出结合自动化对象504的示例资产模型312的图。在该示例中,表示机器2304的类似工业设备、组件或资产(例如,过程、罐、阀、泵等)的各种自动化对象504已被并入资产模型312中。资产模型312还定义了这些自动化对象504之间的层次关系。根据示例关系,表示批处理过程的过程自动化对象可以被定义为表示执行过程的设备和装备的多个子对象的父对象,例如罐、泵和阀。每个自动化对象504具有与其相关联的特定于其对应的工业资产的对象特性或属性(例如,上面结合图5讨论的那些),包括分析模型、性能评估模型、预测模型、可视化属性或其他这样的属性。资产模型312中引用的自动化对象504中的至少一些可以对应于在用于监测和控制机器2304的一个或更多个工业控制程序中定义的自动化对象504。
每个自动化对象504的属性中的至少一些是基于与对象504表示的资产相关的已编码的工业专业知识或与机器2304整体相关的OEM专业知识的默认属性。可以根据需要(经由设计输入512)修改或添加其他属性,以针对正在构建的特定机器2304定制对象504。这可以包括例如将定制的控制代码、可视化、AR/VR演示或与所选自动化对象504相关联的帮助文件相关联。以这种方式,自动化对象504可以被创建和扩充以供被设计成向机器操作增加价值的应用消耗或执行。使用自动化对象504来创建资产模型312可以允许使用公共数据命名法来创建共享的资产模型312,从而允许容易地集成不同的供应商和协议。
在一些实施方式中,建模组件2006可以允许设计者选择预定义的标准化模型2306并将其并入到资产模型312中。这些标准化模型2306可以被存储在知识库328上并且可以对以上关于各个类型的工业资产所讨论的任何资产属性或分析模型进行编码。在标准化模型2306中定义的模型属性可以基于关于其对应工业资产的工业专业知识。这些可以包括例如被设计成计算和评估相应工业资产的关键性能指标(KPI)的分析算法、被设计成预测资产的未来运营结果或异常状况的预测算法、或其他这样的特定于资产的模型或属性。
资产模型312还可以定义哪些对应资产的可用数据项(例如,控制器数据标签值、设备配置参数等)与数据收集和分析目的以及这些选定的数据项之间的功能或数学关系(例如相关性和因果关系)相关。一些资产模型312还可以将机器的业务视图模型(例如,序列号、财务数据、样板数据等)与机器的自动化表示相结合,以产生复合模型312。
一旦OEM针对正在构建的机器2304开发了资产模型312,模型312就可以向IIH系统2002注册并被存储在指定给OEM的供应商储存库326上。OEM还可以向IIH系统2002注册智能网关设备1202。智能网关设备1202存储允许访问和使用资产模型312的数字凭证。然后可以将机器2304与智能网关设备1202一起运送到客户设施进行安装。
图25是示出在客户设施处调试机器2304和将机器注册到IIH系统2002的图。一旦安装在客户的工厂网络116上,工厂设施处的人员可以选择利用可用于机器2304以及通过资产模型312成为可能的信息服务。因此,智能网关设备1202的IIH接口组件2106可以通信地连接至云平台并将存储在智能网关设备1202上的凭证2502发送至IIH系统2002。在验证凭证2502后,IIH系统2002的设备接口组件2010向系统2002注册智能网关设备1202并将资产模型312提供给客户。提供资产模型312的方式可能取决于模型312的预期目的地。例如,资产模型312可以被设计成在智能网关设备1202上内部部署地执行。因此,IIH系统2002可以向网关设备1202提供资产模型312,如图26所示。可替选地,资产模型312可以被设计成在云平台上执行。在这样的场景中,响应于验证数字凭证2502,IIH系统2002可以将资产模型312提供给分配给客户的客户储存库324以用于基于云的执行,如图26所示。提供资产模型312的这种方式还可以涉及将机器2304的资产模型312集成到表示客户设施的现有虚拟化工厂1602中。在这方面,资产模型312可以用作机器2304的数字孪生,其可以与其他数字孪生体810或其他资产模型聚合以产生虚拟化工厂1602。
通过提供用于创建资产模型312的数字资产建模工具以及用于安全分发这些模型的平台,IIH系统2002可以使OEM或其他装备提供商能够构建其资产或机器类型的数字表示并将这些表示添加到基于云的库。以这种方式,OEM可以逐步增加可以用于支持其装备的新安装或现有安装的数字内容。IIH系统2002可以为多个OEM、供应商、系统集成商或服务提供商管理这个数字库,根据工业垂直行业(例如,汽车、食品和药品、石油和天然气、采矿等)、工业应用、装备分类或类型、或其他类别来组织模型。
虽然图23至图26示出了资产模型312由OEM创建并向IIH系统2002注册以供其装备的购买者使用的场景,但是在一些实施方式中,最终用户还可以以其他方式获得和利用资产模型312。图27是示出基于机器身份选择和集成资产模型312的图。在该示例中,机器2708包括表示可以由用户的客户端设备2702扫描的唯一机器标识符的光学代码(例如,二维条形码,例如QR码)。客户端设备2702然后可以(经由用户接口组件2004)与IIH系统2002对接并提交扫描的机器标识符2704以及将客户端设备2702的用户标识为被许可修改虚拟化工厂1602的被授权人的合适的凭证2706。响应于接收到机器标识符2704和凭证2706,建模组件2006可以从适当的库(例如,从与机器的制造商对应的供应商储存库326)检索与机器标识符2704对应的资产模型312,并将检索到的模型312集成到客户的较大的虚拟化工厂1602中。
在一些实施方式中,建模组件2006还可以提示用户关于他们收集的工业资产的附加信息,以便填补虚拟化工厂1602的拓扑中的空白。例如,建模组件2006可以(经由用户接口组件2004)发送对关于机器2304在工厂设施内位于何处的信息的请求或者对关于什么其他未记载的设备和资产连接至机器2304的信息的请求。建模组件2006可以将该信息并入客户的虚拟化工厂1602中,以产生他们的工厂环境的更准确的数字表示。
图28是示出IIH系统2002为工厂环境内的工业资产2802的集合提供工业信息服务的架构的图。由设备接口组件2010实现的连接服务可用于将机器或其他工业资产连接至基于云的IIH系统2002。这些连接服务可以提供在工业企业内操作、聚合来自多个智能网关设备1202的情境化数据2806并从OEM或客户的角度对该收集到的数据2806进行操作的多个自动化系统的企业视图。在图28所描绘的示例中,三个智能网关设备1202a至1202c在工厂车间执行,每个网关设备1202用作使一组工业资产2802与IIH系统2002对接的边缘设备。建模组件2006可以将所有三个网关设备1202映射到由云平台上的虚拟化工厂1602表示的单个虚拟资产,并且用户接口组件2004可以基于虚拟化工厂1602和情境化数据2806在最终用户的客户端设备上创建和呈现数据演示2810。该连接服务可以集成来自不同的供应商或合作伙伴(例如,为他们的机器人提供他们自己的网关设备的机器人制造商)的智能网关设备1202。
一旦这些多个网关被集成,IIH系统2002就可以经由数据演示2810提供整个工厂的单个视图。在示例实施方式中,用户接口组件2004可以将定制的仪表板递送至授权的客户端设备,所述授权的客户端设备使虚拟化工厂1602的选定部分可视化并经由仪表板呈现情境化数据2806的选定子集——或针对该数据2806执行的分析的结果。在一些实施方式中,用户接口组件2004可以向可穿戴仪器或其他类型的客户端设备递送描绘工业资产2802的基本上实时操作的三维VR演示。可以基于构成虚拟化工厂1602并使用情境化数据2806动画化的资产模型312和数字孪生810来生成这些VR演示。IIH系统2002可以允许用户通过经由演示选择感兴趣的资产来调用工厂的特定于资产的视图。
类似于上面结合图19描述的架构,IIH系统2002可以促进远程监测以及与工业资产2802的交互。也就是说,除了提供可视化之外,IIH系统2002可以经由与针对选定工业资产2802的这些可视化的交互来接收来自用户的远程命令,并且设备接口组件2010可以将所请求的命令递送至资产2802,视对远程命令发布的特定于资产的限制而定。
对于资产模型312被部署在智能网关设备1202上的实现方式,网关设备1202可以使用模型312将情境化元数据添加到由它们的相应工业资产2802生成的操作数据项以产生情境化数据2806。添加到给定数据项的情境化元数据可以包括例如指示从其获得数据的机器的机器或资产标识符、与由资产模型312定义的数据项有关系的其他数据项的值(由模型312中定义的相关性和因果关系确定)、同步的时间戳或其他这样的元数据。这种数据情境化可以帮助IIH系统的分析组件2012通过基于资产模型312中编码的工业专业知识以有意义的方式在网关级别处对数据进行预建模来更快地集中在对工业资产2802的性能的有价值洞察上。
IIH系统的分析组件2012可以基于虚拟化工厂1602的数字孪生810和资产模型312对情境化数据2806执行分析,并且基于该分析的结果来生成通知或推荐。例如,该分析可以标识工业资产2802的操作方面(例如,速度、压力、流量、产品吞吐量、发生停机等)何时超出(例如,由OEM或其他工业专家)在资产模型312中定义的可接受范围。基于这些结果,分析组件2012还可以生成用于修改工业资产2802的控制以使操作在定义的范围内的推荐;例如,通过修改设定点、改变控制序列等。除了生成通知之外或作为生成通知的替选方案,IIH系统2002可以向工业资产2802发送控制命令(经由设备接口组件2010),其以被预测会使性能度量恢复合规的方式改变资产2802的操作。
分析组件2012的一些实施方式可以被配置成:对收集的情境化数据2806执行预测分析,并且响应于基于该分析的结果来预测未来的操作问题,生成用于修改操作以减轻问题的通知或推荐。该预测分析可以由模拟组件2008辅助,该模拟组件2008可以基于虚拟化工厂1602和根据情境化数据2806确定的资产2802的历史性能来执行资产性能的模拟。还可以基于专门针对相应资产2802设计并从供应商储存库326或知识库328获得的机器学习模型2804来执行对情境化数据2806的分析。在这方面,IIH系统2002可以维护由装备供应商设计的机器学习模型2804的库以获得对他们的装备的操作的洞察。供应商可以以与资产模型312类似的方式注册这些机器学习模型2804,或者可以将这些机器学习模型2804作为其对应资产模型312的一部分包括在内。
使用资产模型312调试的智能网关设备1202还可以被配置成对从资产2802收集的数据执行本地工厂级分析。为此,每个网关设备1202可以包括能够执行与IIH系统2002的分析组件2012的分析功能类似的分析功能的网关分析组件2108(参见图21)。网关设备1202可以将这些分析应用于从连接至该网关设备1202的工业资产的子集收集的数据。基于这些本地分析的结果,网关设备1202可以将控制反馈发送至它们相关联的资产2802中的一个或更多个,而无需等待来自云平台的分析结果。可替选地,网关设备1202可以选择性地将工厂级分析结果发送至IIH系统2002,以用于附加处理、存储或通知目的。
在一些实施方式中,IIH系统2002和智能网关设备1202可以协作以管理计算资源在云平台与工厂车间之间的划分。例如,如果智能网关设备1202在工厂车间检测到需要额外计算能力的资产相关事件,则网关的分析缩放组件2112可以打包该数据并将该数据发送至IIH系统2002以进行更高级别的处理。这可以包括收集分析所需的相关数据项,并将这些数据项流式传输至云平台,同时继续生产(分散式计算)。以这种方式,复杂计算可以自动地被推送到IIH系统2002,在IIH系统2002处,可以通过分析组件2012应用更鲁棒的分析。类似地,IIH系统2002的分析组件2012可以确定:通过IIH系统2002获得的分析结果或模拟结果与由智能网关设备1202管理的工业资产2802的操作相关。响应于该确定,设备接口组件2010可以将该分析结果发送至相关网关设备1202以进行进一步的工厂级处理。网关设备1202的网关分析组件2108可以基于在网关设备1202上维护的边缘级资产模型312来执行这个附加处理。基于这个进一步处理的结果,网关设备1202可以向工业资产递送控制信令以改变资产的操作。IIH系统2002的分析组件2012和智能网关设备1202的网关分析组件2108也可以协作以在IIH系统2002与网关设备1202之间划分分析任务的处理。对分析任务或分析任务的部分何时应该被缩放到IIH系统2002或网关设备1202的确定可以基于对分析的结果将在哪里被消耗的确定(例如,由工业资产以控制反馈的形式,或者由基于云的系统出于报告或可视化目的)。
云级或网关级资产模型312也可以用于对针对自动化系统的提议的修改进行建模,并预测由于实施提议的修改的操作结果。该预测分析的结果可以以预测的操作统计或更可能产生修改的预期结果的对提议修改的推荐更改的形式被递送给客户端设备。
在了解客户的资产库存的情况下,IIH系统2002还可以发送产品公告或产品通知,所述产品公告或产品通知针对目标客户将使用的已知装备而定制。这可以包括基于产品生命周期发送推荐(例如,当现有设备被确定接近其生命周期结束时推荐更换设备,如基于由设备生成的数据与设备的资产模型中记录的生命周期信息的相关性而确定的)。IIH系统2002还可以提供上传设备配置并在云平台上运行模拟以预测对设备的固件进行升级的结果(或其他类型的系统修改的影响)。与特定类型的工业设备相关的通知可以包括客户企业的渲染地图,所述渲染地图上面覆盖有热点,所述热点指示当前正在哪里使用相关设备。IIH系统2002可以使用该信息来通知那些位置处的本地维护人员应该执行升级。
IIH系统2002的实施方式与IDH储存库系统202一起工作,可以创建基于云的生态系统,该生态系统为工业装备的提供商和所有者创建和传递价值。IIH系统2002可以在生态系统与客户的OT环境之间扮演可信信息代理的角色,并提供用于连接资产、对数据进行情境化以及提供对生态系统的安全访问的平台。此外,IIH系统2002可以为OEM和其他主题专家提供工具和支持,从而允许那些用户能够将他们的数字资产用于生态系统。IIH系统2002可以降低工业数字建模的成本和风险,使得供应商、OEM和最终用户可以协作以提高运营效率和资产性能。
为了促进对客户的工厂车间资产的安全远程访问,IIH系统2002可以包括一个或更多个访问管理组件2014(参见图20),其为用户提供从远程位置安全连接至他们的工厂内的资产而无需打开工厂的公司防火墙上的入站端口的能力。图29是示出用于提供对客户的工业资产2202的安全远程访问的通用架构2900的高级图。如在前面的示例中,智能网关设备1202驻留在工厂网络116上并用作网关设备或边缘设备。智能网关设备1202可以执行允许授权设备经由IIH系统2002的基于云的基础设施远程访问工业资产2202上的数据的运行时组件(例如,作为网关设备的IIH接口组件2106的一部分)。在智能网关设备1202已经被部署在工厂网络116上并通过网络116与其他工业资产2202对接之后,网关设备1202可以将其凭证信息发送至IIH系统2002,IIH系统2002注册网关设备1202及其相关联资产2202和数据(例如,将可用于远程访问的工业资产2202上的数据标签)。
为了经由网关设备1202访问工业资产2202上的数据,IIH系统2002可以将门户2902作为基于云的服务(由用户接口组件2004实现)来执行。门户2902可以向请求从其远程位置访问资产2202的远程客户端设备1904提供前端接口。该前端接口允许远程客户端设备1904处的用户输入唯一地标识用户并建立用户的凭证的凭证信息,从而验证用户被允许经由智能网关设备1202访问与IIH系统2002对接的一个或更多个工业设施处的一组特定工业资产2202。
基于云的IIH系统2002可以包括服务器基础设施2904,该服务器基础设施2904协同用作IIH系统的访问管理组件2014并管理经由相应的智能网关设备1202对不同位置处的工业资产2202的安全远程访问。服务器基础设施2904可以包括访问服务器(其可以用作系统的访问管理组件222,或者可以执行一个或更多个访问管理组件222),该访问服务器负责管理经由网关设备1202对已注册资源例如已经注册的工业资产2202的访问。服务器基础设施2904还可以包括向IIH系统客户端公开API的API服务器以及执行用于确定一组工业资产2202与请求访问那些资产2202的客户端设备1904之间的最佳或最快连接路径的算法的分布式中继服务器集合。服务器基础设施2904还可以包括一个或更多个数据库服务器,所述一个或更多个数据库服务器用作访问服务器和API服务器的后备数据存储。
在示例场景中,属于隶属于工业企业的用户的客户端设备1904可以连接至门户2902,门户2902向客户端设备1904递送公共前端接口显示,其允许用户将标识和凭证数据提交到系统2002。在确定用户的凭证数据有效后,门户2902基于用户的身份和/或工业企业隶属关系来确定允许用户访问注册的工业资产2202(即,经由智能网关设备1202已向IIH系统2002注册并连接至IIH系统2002的资产2202)的哪个子集。门户2902然后可以向客户端设备1904递送特定于企业的接口,该特定于企业的接口列出了允许用户访问的可用资产,并且门户2902允许用户从这些可用资产中进行选择。基于该选择,服务器基础设施2904经由网关设备1202在远程客户端设备1904与所选资产2202之间建立虚拟专用网络(VPN)连接,由在网关设备1202上执行的安全远程访问运行时服务促进。用户接口组件2004然后可以向客户端设备1904递送合适的数据演示,该数据演示呈现经由VPN连接从资产2202检索的实时或历史数据(例如,状态数据、操作数据、性能数据、健康数据或诊断数据、生产统计数据等)。服务器基础设施2904无需通过工厂的公司防火墙打开入站端口即可建立该VPN连接。
需要远程访问工业资产2202的任何上述IIH系统功能可以使用图29中描绘的连接架构2900来管理客户对他们的工业资产和相关联数据的远程访问。例如,架构2900可以用作用于检索情境化数据2806并将其作为数据演示2810递送给远程用户的远程连接主干,如上面结合图28所描述的。因此,VPN连接用作将来自资产2202的实时数据馈送到客户端设备1904处的数据演示2810的数据通道。VPN连接还可以用作用于递送除了经由网关设备1202从工业资产检索的原始数据或情境化数据之外的由分析组件2012生成的分析结果的数据通道。
安全远程连接架构2900还可以与建模组件2006结合操作,建模组件2006可以将来自多个网关设备1202的情境化数据映射到单个虚拟化工厂1602中,如以上所讨论的。然后可以经由安全远程VPN连接在客户端设备1904上将该虚拟化工厂1602可视化为统一数据演示2810。
由IIH系统2002的安全远程访问特征建立的VPN连接还可以允许用户经由服务器基础设施2904向选定的工业资产2202提交控制命令。这可以包括例如经由与如上面结合图28所描述的在其上呈现数据演示2810的仪表板的交互而发布命令。
虽然图29描绘了在工业项目的操作阶段期间使用以在远程用户的客户端设备与他们运行的工业资产2202之间建立VPN连接的安全远程访问技术,但是实现安全远程访问技术的服务也可以用于提供在项目开发期间与由IDH储存库系统202实例化的特定于客户的虚拟机的安全连接。图30是示出IDH储存库系统202的示例架构的图,该示例架构支持在云平台上将虚拟机实例实例化为系统的数字工程服务的一部分并使用安全远程访问特征来连接至这些虚拟机实例的能力。在该示例中,IDH储存库系统202与IIH系统2002共享门户2902和服务器基础设施2904,包括上面结合图29讨论的安全远程访问特征。IDH储存库系统202支持基于云的数字工程服务,包括上面结合图2至图19描述的那些。这些数字工程服务还包括允许用户在云平台上创建虚拟机3020的实例的特征,这些虚拟机3020的实例可以用于执行供应商提供的数字工程应用,用户根据他们与那些供应商的订阅合同有权使用这些数字工程应用。
在图30的示例架构中,基于云的系统202可由被授权访问由系统202实现的数字工程服务的远程客户(客户端设备1904的所有者)访问。系统202也可由提供并维护数字工程服务的一个或更多个服务提供商3004访问。为了支持虚拟机3020的实例化和执行,系统202可以维护镜像注册表3006(其可以是存储器228的一部分)上的各种虚拟机镜像3002。虚拟机镜像3002可以是特定于供应商的,因此每个供应商储存库326可以包括其自己的专用镜像注册表3006,以用于存储特定于给定供应商的虚拟机镜像3002。系统202允许软件供应商提交和注册他们自己的虚拟机镜像,以供他们的客户在系统的数字工程环境中使用。
镜像注册表3006用作要在IDH储存库系统202上托管的虚拟机镜像3002的初始存储位置。虚拟机镜像3002可以由希望将他们的设计软件作为远程设计服务提供给授权客户的服务提供商3004(例如,控制软件供应商)创建、注册和管理。图31是描绘根据一个或更多个实施方式的将虚拟机镜像3002注册到镜像注册表3006的图。每个虚拟机镜像3002可以包括基本镜像3110和相关联的镜像元数据3112(例如,库存单位、版本信息、镜像3002被提交的日期、材料清单等)。服务提供商3004(例如,提供数字工程软件的软件供应商)可以将虚拟机镜像作为基础镜像3110和相关联的镜像元数据3112提交给API服务3102,其促进上传镜像和相关联的元数据。API服务3102将基础镜像3110上传到镜像存储3106(例如,blob存储)。API服务3102还将镜像元数据3112上传到用于存储与每个镜像相关联的元数据的文档数据库3104。从镜像存储3106,基础镜像3110被提升到共享库3108,并且利用来自文档数据库3104的元数据3112对被提升的镜像进行标记,以产生准备好部署为虚拟机的共享虚拟机镜像3002。
现在返回图30,已经在镜像注册表3006中注册的虚拟机镜像3002暴露于IDH储存库系统的数字工程服务,从而允许客户远程访问和部署选定的虚拟机3020以远程执行自动化设计软件和服务。远程用户可以通过经由客户端设备1904向门户2902提交他们的身份和凭证(如上面结合图29所述)来访问数字工程服务。在一些实施方式中,用户可以经由他们的web浏览器访问门户2902和IDH储存库系统的服务。一旦用户的身份和凭证信息已经被系统的认证服务3018认证,门户2902就可以在用户的客户端设备1904上呈现定制的前端接口,其包括用户被允许访问的可用数字工程服务的列表。前端接口可以是特定于用户或特定于企业的,使得对给定用户可用的服务可以取决于用户的身份或用户隶属的工业企业。
API应用3012提供用于管理对数字工程服务的访问的框架,从而允许经认证的用户浏览、选择和部署虚拟机镜像3002作为运行的虚拟机3020,其可以用于将允许用户访问和使用的设计软件远程地可视化并操作该设计软件。在这方面,每个虚拟机镜像3002可以由其供应商设计以远程执行由供应商提供的工业设计应用或服务。这些设计应用和服务可以包括但不限于控制逻辑开发软件或平台、HMI开发软件、工业控制器仿真器、工业资产或工厂模拟器、项目分析软件、工程制图应用或其他这样的设计应用。
一旦用户已经被系统的认证服务3018认证,用户就可以与经由前端接口呈现的可用服务列表进行交互,以选择一个或更多个虚拟机镜像3002以在用户的专用数字工程空间中被部署和执行。系统202为每个参与的客户实体指定远程数字工程空间,隶属于该客户实体的用户可以在远程数字工程空间中部署和运行虚拟机3020,以用于设计和测试他们的控制系统项目和相关联软件(控制程序、HMI、数字孪生、分析、数据收集、控制模拟等)的目的。当用户从镜像注册表3006中选择虚拟机镜像3002时,供应服务3008(例如,由一个或更多个供应组件224实现的服务)在用户指定的数字工程空间内将虚拟机镜像3002的实例部署为可执行虚拟机3020。一旦被部署,用户就可以经由客户端设备1904远程访问虚拟机3020并使用所选虚拟机3020支持的数字工程功能。这可以例如包括:使用用作开发平台的虚拟机3020来创建和测试工业控制代码或HMI应用;使用虚拟机3020来仿真由用户上传到数字工程空间的控制程序的执行;在支持工厂模拟的虚拟机3020上构建和运行一个或更多个工业资产的数字孪生(这可能涉及将数字孪生与在仿真虚拟机3020上执行的仿真的工业控制程序对接);测试工业设备配置参数;开发工程制图或其他这样的工程功能。一些虚拟机镜像3002可以预先配置有那些镜像被设计成支持的设计软件,使得部署的虚拟机3020预先安装有期望的设计软件。
安全远程访问服务3014可以用于将远程客户端设备1904连接至供应服务3008和部署的虚拟机3020。这些远程访问服务3014可以使用上面结合图29讨论的安全远程访问架构(例如,服务器基础设施2904及其相关联的服务器)来实现,并且可以在由IDH储存库系统202托管的虚拟机3020与远程客户端设备1904之间提供安全连接。在示例实现方式中,可以向虚拟机3020供应与在智能网关设备1202上执行的运行时服务类似的运行时服务,智能网关设备1202管理与工厂车间的物理资产的安全远程连接。这允许使用安全远程访问服务器基础设施2904来创建与托管在客户的数字工程空间上的虚拟机3020的类似安全远程连接。
如上所述,被注册以访问和使用由IDH储存库系统202支持的数字工程服务的客户实体可以在系统的云架构内被分配相应的数字工程空间。图32是示出虚拟机3020在IDH储存库系统202上的多租户执行的图。多个客户可以在指定给客户的各个隔离的、特定于客户的数字工程空间3202上部署、执行和访问他们自己的一组虚拟机3020。这些数字工程空间3202可以是每个客户储存库324的一部分。该架构允许每个客户登入系统202并在他们自己的设计空间内按需执行选定的工业设计功能,而无需在他们自己的机器上安装和配置所需的设计软件。该架构允许用户使用安全远程访问服务3014经由他们的客户端设备1904远程地将这些虚拟化设计功能可视化并与这些虚拟化设计功能进行交互,执行期望的工程任务,并在完成后停止使用实例化的虚拟机3020。
当用户远程请求将虚拟机3020供应到他们的数字工程空间3202时,供应服务3008根据对应的虚拟机镜像3002创建虚拟机3020的实例并且利用将虚拟机与用户的数字工程空间3202相关联的租户标识符来标记虚拟机3020。供应服务3008还可以利用与用户所隶属的客户实体(例如,工业企业)相关联的库存单位(SKU)、相关联SKU的版本号以及用户的用户身份来标记虚拟机3020。虚拟机3020也被注册到安全远程访问架构,使得用户可以从他们的远程客户端设备1904安全地连接至虚拟机3020。如果尚未创建虚拟机3020的域,则在数字工程空间3202内创建虚拟机3020的域,并且请求虚拟机3020的用户被添加到域并被授予域管理权限。供应服务3008然后完成虚拟机的运行时服务与安全远程访问服务之间的注册过程,使得用户的客户端设备1904可以安全地访问和执行针对虚拟机3020及其预先安装的设计软件的命令。用户可以从远程客户端设备1904远程启动、停止、销毁或重新镜像虚拟机3020。在示例实施方式中,门户2902(由用户接口组件204实现)可以通过由安全远程访问架构3014建立的VPN连接在用户的客户端设备上将在虚拟机3020上执行的数字工程软件或应用远程地可视化。该连接允许用户从他们的客户端设备1904远程使用工程软件,从而提供与在客户端设备1904上本地执行工程软件类似的用户体验。
该方法允许用户在虚拟机3020完成任务后停止使用之前对执行各种数字工程功能的虚拟机3020的库进行实例化,并与这些虚拟机3020远程对接以执行远程数字工程任务。每个虚拟机镜像3002表示虚拟机类别,并对已经配置有与该镜像类别相对应的设计软件的虚拟机3020进行实例化。系统202还为软件供应商提供了生态系统,以在镜像注册表3006中创建和注册其内容的虚拟机镜像3002,使得他们的客户可以使用系统的供应服务3008,以从注册表3006部署相应的虚拟机实例并使用安全的远程访问架构连接至这些实例。
在一些场景中,用户可以在他们的数字工程空间3202内部署和执行多个虚拟机3020并且配置这些虚拟机3020中的两个或更多个以彼此交互以执行数字工程任务。例如,配备有工业模拟平台的第一虚拟机3020可以被配置成与配备有控制器仿真器的第二虚拟机3020对接。用户可以配置这两个虚拟机3020以交换模拟的I/O信令,从而在控制器仿真器仿真的工业控制程序的控制下(使用工厂的数字孪生)模拟工厂的操作。用户可以远程控制该模拟(其结果被呈现在用户的客户端设备上),根据需要修改控制程序,直到正确的控制操作被确认,然后在完成控制程序测试后停止使用虚拟机3020。
出于审计目的,IDH储存库系统202还可以维护数据库3016(参见图30),该数据库3016记录通过API应用3012生成的所有事务。可以记录在数据库3016中的信息可以例如包括:被实例化的虚拟机3020的记录;指示虚拟机3020被实例化的时间的时间戳;实例化每个虚拟机3020的用户的身份;每个虚拟机3020何时启动、停止、重新镜像或销毁的记录;或其他这样的信息。
在一些实施方式中,虚拟机镜像3002中的一些可以预先配置有项目转换服务,该项目转换服务被设计成将控制编程文件从第一版本升级和转换到第二版本。图33是IDH储存库系统202的示例实施方式的图,IDH储存库系统202可以提供具有预先安装的项目转换服务的虚拟机3020。类似于上面结合图30至图32描述的示例场景,客户端设备1904的远程用户可以远程访问系统的供应服务3008,以从存储在镜像注册表3006上的虚拟机镜像3002中选择性地在他们指定的设计空间3202上部署和运行虚拟机3020。可用虚拟机镜像3002中包括的是预先配置有项目转换服务3302的镜像,项目转换服务3302被设计成将工业控制程序文件或控制项目306的其他方面从第一版本升级或转换到第二版本。
图34是示出使用运行项目转换服务的部署的虚拟机3020来转换控制程序文件的图。在该示例场景中,用户已经在其隶属的客户实体的客户储存库324的专用数字工程空间内实例化了具有预先配置的项目转换服务3302的虚拟机3020。用户可以将虚拟机3020部署为预先配置有转换服务3302的相应虚拟机镜像3002的实例。一旦被实例化,虚拟机3020可以将其项目转换服务3302应用于存储在客户储存库324中的控制程序文件3402a(例如,梯形逻辑文件或其他类型的控制程序文件),以将文件从第一版本(v.X)升级或转换到第二版本(v.Y),从而产生新的、升级的控制程序文件3402b。所得到的转换后的控制程序文件3402b可以被存储在用户的客户储存库324上,被下载到用户的客户端设备1904,或者被部署到工厂车间控制器以供执行。原始程序文件3402a可以作为归档的项目版本310被保存在客户储存库上。
在一些实施方式中,由虚拟机3020执行的项目转换服务3302可以以类似于上面结合图11描述的资产恢复组件214的项目转换功能的方式起作用。一些项目转换服务3302还可以被配置成:将上面讨论的任何项目分析(例如,类似于项目分析组件210应用的那些)应用于控制程序文件3402a,并且在完成转换后,提供升级的控制程序文件3402b连同用于改进控制程序的操作或优化控制程序本身的资源利用的推荐(例如,上述的项目推荐702)。
在一些场景中,作为控制程序文件3402a的转换的一部分,项目转换服务3302可以用等同的自动化对象504替换文件3402a中定义的控制程序的部分以产生升级的程序文件3402b。
尽管图34描绘了驻留在客户储存库324上的初始程序文件3402a,但在一些场景中,用户还可以将程序文件直接上传到虚拟机3020以供转换服务3302进行转换。此外,一些虚拟机3020可以配置有项目转换服务3302,项目转换服务3302被设计成转换系统项目306的除了控制代码之外的其他方面,包括但不限于HMI应用、工业AR/VR可视化应用、工业设备固件或其他这样的控制项目方面。
图35至图36b示出了根据本申请的一个或更多个实施方式的各种方法。尽管出于简化说明的目的,本文中示出的一个或更多个方法被示出和描述为一系列动作,但是应该理解和意识到,本发明不受动作顺序的限制,因为一些动作可以据此以与本文中示出和描述的顺序不同的顺序和/或与其他动作同时发生。例如,本领域技术人员将理解并认识到,方法可以可替选地例如在状态图中被表示为一系列相互关联的状态或事件。此外,可能不是需要所有示出的动作来实现根据本发明的方法。此外,当不同的实体制定方法的不同部分时,交互图可以表示根据本公开内容的方法学或方法。此外,可以彼此组合地实现所公开的示例方法中的两个或更多个,以实现本文中所述的一个或更多个特征或优点。
图35示出了用于建立对关于在工厂设施中操作的工业资产的数据的安全远程访问的示例方法3500。最初,在3502处,在基于云的工业信息中心(IIH)系统处接收工业设施处的一组工业资产的注册数据。注册数据是从安装在工业设施处并在通信上连接至工业资产(例如,通过工厂网络)的网关设备接收的。在3504处,将工业资产与拥有工业资产的工业企业相关联地注册在IIH系统中。
在3506处,前端接口被递送至连接至基于云的IIH系统的客户端设备。前端接口可以包括用于标识或认证数据的提示,所述标识或认证数据将用于确定提供给客户端设备的用户的安全远程访问的范围。在3508处,经由与前端接口的交互从客户端设备接收凭证信息。凭证信息可以是例如用户名和密码、生物特征信息、扫描的光学代码的输出或其他这样的数据。在3510处,进行关于凭证数据是否被认证的确定。如果凭证数据没有被认证(在步骤3510处为“否”),则该方法返回到步骤3506。可替选地,如果凭证数据被认证(在步骤3510处为“是”),则该方法继续进行到步骤3512,在步骤3512中,经由网关设备在客户端设备与工业资产之间建立虚拟专用网络(VPN)连接。VPN连接允许远程查看有关工业资产的数据(例如,操作数据、状态数据或健康数据),并且在一些情况下,VPN连接允许将控制命令从客户端设备远程递送至资产中的一个或更多个。VPN连接可以基于IIH系统与在网关设备上执行的安全远程访问运行时服务之间的交互而建立。
图36a示出了用于远程部署和安全访问预先安装有用于设计和测试工业项目的数字设计应用的虚拟机的示例方法的第一部分3600a。最初,在3602处,虚拟机镜像被注册在基于云的工业开发中心(IDH)系统上。虚拟机镜像可以由开发工业数字工程应用(例如,工业控制代码开发平台、HMI开发应用、工业设备配置软件、工业控制器仿真器、工业模拟平台等)的供应商注册,并且可以预先配置有安全远程访问运行时服务。每个虚拟机镜像也可以预先配置有工业设计应用。
在3604处,从客户端设备接收访问IDH系统上可用的数字工程服务的请求。可以经由与由IDH系统提供给客户端设备的前端接口的交互来接收该请求。在3606处,进行关于作为请求的一部分从客户端设备接收的凭证信息是否被认证的确定。如果凭证数据没有被认证(在步骤3606处为“否”),则该方法返回到步骤3604。可替选地,如果凭证数据被认证(在步骤3606处为“是”),则该方法继续进行到步骤3608,在步骤3608中,特定于客户的IDH接口被递送至客户端设备。特定于客户的IDH接口基于用户的身份或客户隶属关系列出了对于客户端设备的用户可用的可用远程数字工程服务。
该方法进行到图36b所示的第二部分3600b。在3610处,从客户端设备接收调用安装在虚拟机镜像上的工业设计应用作为可用远程数字工程服务中的选定远程数字工程服务的请求。在3612处,响应于该请求,在分配给用户隶属的客户的基于云的数字工程空间上部署和执行虚拟机。虚拟机包括虚拟机镜像的实例化并且能够执行安装在其父虚拟机镜像上的工业设计应用。
在3614处,使用在虚拟机上执行的安全远程访问运行时服务来在客户端设备与虚拟机之间建立安全VPN连接。在3616处,经由安全VPN连接允许远程使用在虚拟机上执行的工业设计应用。
在一些场景中,在虚拟机上执行的工业设计应用可以是被设计成将提交的工业项目文件(例如,控制器程序文件、HMI应用文件等)从第一版本升级或转换到第二版本的项目转换应用。
本文中描述的实施方式、系统和组件以及其中可以执行本说明书中阐述的各个方面的控制系统和自动化环境可以包括能够跨网络进行交互的计算机或网络组件,例如服务器、客户端、可编程逻辑控制器(PLC)、自动化控制器、通信模块、移动计算机、用于移动车辆的车载计算机、无线组件、控制组件等。计算机和服务器包括被配置成执行存储在介质中的指令的一个或更多个处理器,所述一个或更多个处理器为采用电信号执行逻辑操作的电子集成电路,介质例如为随机存取存储器(RAM)、只读存储器(ROM)、硬盘驱动器以及可移除存储器设备,可移除存储器设备可以包括记忆棒、存储卡、闪存驱动器、外部硬盘驱动器等。
类似地,本文中所使用的术语PLC或自动化控制器可以包括可以跨多个组件、系统和/或网络共享的功能。作为示例,一个或更多个PLC或自动化控制器可以跨网络与各种网络设备进行通信和协作。这基本上可以包括经由网络进行通信的任何类型的控制装置、通信模块、计算机、输入/输出(I/O)设备、传感器、致动器和人机接口(HMI),所述网络包括控制网络、自动化网络和/或公共网络。PLC或自动化控制器还可以与各种其他设备进行通信并且控制各种其他设备,所述各种其他设备例如是标准或安全等级的I/O模块,包括模拟模块、数字模块、编程/智能I/O模块、其他可编程控制器、通信模块、传感器、致动器、输出设备等。
网络可以包括诸如因特网的公共网络、内联网以及诸如控制和信息协议(CIP)网络的自动化网络,所述控制和信息协议(CIP)网络包括设备网(DeviceNet)、控制网(ControlNet)、安全网络以及以太网/IP。其他网络包括以太网、DH/DH+、远程I/O、现场总线、Modbus、过程现场总线(Profibus)、CAN、无线网络、串行协议、开放平台通信统一架构(OPC-UA)等。另外,网络设备可以包括各种可能性(硬件组件和/或软件组件)。这些包括诸如具有虚拟局域网(VLAN)能力的交换机、LAN、WAN、代理、网关、路由器、防火墙、虚拟专用网(VPN)设备、服务器、客户端、计算机、配置工具、监测工具和/或其他设备的组件。
为了提供所公开主题的各个方面的情境,图37和图38以及以下讨论旨在提供对可以实现所公开主题的各方面的适当环境的简要的一般性描述。尽管以上在可以在一个或更多个计算机上运行的计算机可执行指令的一般情境中描述了实施方式,但是本领域技术人员将认识到,也可以结合其他程序模块和/或作为软件和硬件的组合来实现实施方式。
通常,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、组件、数据结构等。此外,本领域技术人员将理解,可以利用其他计算机系统配置来实践本发明的方法,其他计算机系统配置包括单处理器或多处理器计算机系统、小型计算机、大型计算机、物联网(IoT)设备、分布式计算系统、以及个人计算机、手持计算设备、基于微处理器的或可编程的消费性电子产品等,上述中的每一个均可以可操作地耦接至一个或更多个相关联的设备。
本文中示出的实施方式也可以在分布式计算环境中被实践,其中某些任务由通过通信网络链接的远程处理设备执行。在分布式计算环境中,程序模块可以位于本地和远程存储器存储设备二者中。
计算设备通常包括各种介质,各种介质可以包括计算机可读存储介质、机器可读存储介质和/或通信介质,这两个术语在本文中如下彼此不同地被使用。计算机可读存储介质或者机器可读存储介质可以是能够由计算机访问的任何可用存储介质,并且包括易失性介质和非易失性介质、可移除介质和不可移除介质。作为示例而非限制,可以结合用于存储诸如计算机可读指令或机器可读指令、程序模块、结构化数据或非结构化数据的信息的任何方法或技术来实现计算机可读存储介质或机器可读存储介质。
计算机可读存储介质可以包括但不限于:随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、闪存或其他存储器技术、光盘只读存储器(CD-ROM)、数字多功能盘(DVD)、蓝光盘(BD)或其他光盘存储装置、磁带盒、磁带、磁盘存储设备或其他磁存储设备、固态驱动器或其他固态存储设备、或可以用于存储所需信息的其他有形和/或非暂态介质。在这一方面,应当将本文中应用于存储装置、存储器或计算机可读介质的术语“有形”或“非暂态”理解为作为修饰语仅排除传播暂态信号本身,并且不放弃不是仅传播暂态信号本身的所有标准存储装置、存储器或计算机可读介质的权利。
计算机可读存储介质可以由一个或更多个本地计算设备或远程计算设备例如经由访问请求、查询或其他数据检索协议被访问,以针对通过介质存储的信息进行多种操作。
通信介质通常以数据信号例如经调制的数据信号例如载波或其他传输机制来体现计算机可读指令、数据结构、程序模块或其他结构化或非结构化的数据,并且包括任何信息递送或传输介质。术语“经调制的数据信号”或信号是指以在一个或更多个信号中对信息进行编码的方式设置或改变其特性中的一个或更多个特性的信号。作为示例而非限制,通信介质包括诸如有线网络或直接有线连接的有线介质以及诸如声学、RF、红外的无线介质和其他无线介质。
再次参照图37,用于实现本文中描述的方面的各种实施方式的示例环境3700包括计算机3702,计算机3702包括处理单元3704、系统存储器3706以及系统总线3708。系统总线3708将系统组件耦接至处理单元3704,系统组件包括但不限于系统存储器3706。处理单元3704可以是各种商业可用处理器中的任何处理器。双微处理器架构和其他多处理器架构也可以用作处理单元3704。
系统总线3708可以是以下若干类型总线结构中的任一种:其还可以使用多种商业可用总线架构中的任一种互连至存储器总线(具有或不具有存储器控制器)、外围总线以及本地总线。系统存储器3706包括ROM 3710和RAM 3712。基本输入/输出系统(BIOS)可以存储在非易失性存储器例如ROM、可擦除可编程只读存储器(EPROM)、EEPROM中,该BIOS包含例如在启动期间帮助在计算机3702内的元件之间传输信息的基本例程。RAM 3712还可以包括高速RAM,例如用于缓存数据的静态RAM。
计算机3702还包括内部硬盘驱动器(HDD)3714(例如,EIDE、SATA)、一个或更多个外部存储设备3716(例如,磁软盘驱动器(FDD)3716、存储棒或闪存驱动器读取器、存储卡读取器等)以及光盘驱动器3720(例如,其可以从CD-ROM盘、DVD、BD等进行读取或写入)。虽然内部HDD 3714被示出为位于计算机3702内,但是内部HDD 3714也可以被配置用于在合适的机箱(未示出)的外部使用。另外,虽然在环境3700中未示出,但除了HDD 3714之外还可以使用固态驱动器(SSD)或者代替HDD 3714使用固态驱动器(SSD)。HDD 3714、外部存储设备3716以及光盘驱动器3720可以分别通过HDD接口3724、外部存储接口3726和光盘驱动器接口3728连接至系统总线3708。用于外部驱动实现方式的接口3724可以包括通用串行总线(USB)和电气与电子工程师协会(IEEE)1394接口技术中的至少一个或两个。其他外部驱动连接技术在本文中描述的实施方式的考虑之内。
驱动器及其关联的计算机可读存储介质提供数据、数据结构、计算机可执行指令等的非易失性存储。对于计算机3702,驱动和存储介质以适当的数字格式适应任何数据的存储。尽管上面对计算机可读存储介质的描述是指各类型的存储设备,但是本领域技术人员应当理解,计算机可读的其他类型的存储介质,无论是当前存在的还是将来开发的,也可以在示例操作环境中被使用,并且此外,任何这样的存储介质可以包含用于执行本文中描述的方法的计算机可执行指令。
在驱动器和RAM 3712中可以存储多个程序模块,包括操作系统3730、一个或更多个应用程序3732、其他程序模块3734以及程序数据3736。操作系统、应用、模块和/或数据中的全部或部分也可以缓存在RAM 3712中。可以使用各种商业上可用的操作系统或操作系统的组合来实现本文中描述的系统和方法。
计算机3702可以可选地包括仿真技术。例如,管理程序(未示出)或其他中间物可以仿真用于操作系统3730的硬件环境,并且仿真的硬件可以可选地不同于图37中所示的硬件。在这样的实施方式中,操作系统3730可以包括在计算机3702处托管的多个虚拟机(VM)中的一个VM。此外,操作系统3730可以为应用程序3732提供诸如Java运行时环境或.NET框架的运行时环境。运行时环境是一致的执行环境,其允许应用程序3732在包括运行时环境的任何操作系统上运行。类似地,操作系统3730可以支持容器,并且应用程序3732可以呈容器的形式,其是轻量级的、独立的、可执行的软件包,所述软件包包括例如代码、运行时间、系统工具、系统库以及应用的设置。
此外,可以利用诸如可信处理模块(TPM)的安全模块来启用计算机3702。例如,利用TPM,引导组件在时间上散列(hash)接下来的引导组件,并且在加载接下来的引导组件之前等待结果与安全值的匹配。该处理可以发生在计算机3702的代码执行栈中的任何层处,例如在应用执行级处或在操作系统(OS)内核级处被应用,从而使实现代码执行的任何级处的安全性。
用户可以通过一个或更多个有线/无线输入设备(例如,键盘3738、触摸屏3740和诸如鼠标3742的定点设备)将命令和信息输入到计算机3702中。其他输入设备(未示出)可以包括麦克风、红外(IR)遥控器、射频(RF)遥控器或其他遥控器、操纵杆、虚拟现实控制器和/或虚拟现实耳机、游戏手柄、触控笔、诸如摄像装置的图像输入设备、姿势传感器输入设备、视觉移动传感器输入设备、情绪或面部检测设备、诸如指纹或虹膜扫描仪的生物特征输入设备等。这些和其他输入设备通常通过可以耦接至系统总线3708的输入设备接口3744连接至处理单元3704,但是也可以通过其他接口被连接,所述其他接口例如为并行端口、IEEE1394串行端口、游戏端口、USB端口、IR接口、
Figure BDA0003746288240000591
接口等。
监测器3744或其他类型的显示设备也可以经由诸如视频适配器3746的接口连接至系统总线3708。除了监视器3744之外,计算机通常还包括其他外围输出设备(未示出),例如扬声器、打印机等。
计算机3702可以经由至诸如远程计算机3748的一个或更多个远程计算机的有线和/或无线通信、使用逻辑连接在联网环境中进行操作。远程计算机3748可以是工作站、服务器计算机、路由器、个人计算机、便携式计算机、基于微处理器的娱乐仪器、对等设备或其他常见网络节点,并且通常包括关于计算机3702所描述的许多或所有元件,然而为了简洁起见,仅示出了存储器/存储设备3750。所描绘的逻辑连接包括与局域网(LAN)3752和/或更大的网络例如广域网(WAN)3754的有线/无线连接。这样的LAN和WAN联网环境在办公室以及公司中很常见,并且促进诸如内部网的企业范围的计算机网络,所有这些都可以连接至全球通信网络,例如因特网。
当在LAN联网环境中被使用时,计算机3702可以通过有线和/或无线通信网络接口或适配器3756连接至本地网络3752。适配器3756可以促进与LAN 3752的有线或无线通信,LAN 3752还可以包括布置在其上的用于以无线模式与适配器3756进行通信的无线接入点(AP)。
当在WAN联网环境中被使用时,计算机3702可以包括调制解调器3758,或者可以经由用于通过WAN 3754建立通信的其他手段(例如通过因特网)连接至WAN 3754上的通信服务器。可以是内部或外部以及有线或无线设备的调制解调器3758可以经由输入设备接口3742连接至系统总线3708。在联网环境中,相对于计算机3702或其部分描绘的程序模块可以被存储在远程存储器/存储设备3750中。将理解的是,所示的网络连接是示例,并且可以使用在计算机之间建立通信链接的其他手段。
当在LAN或WAN联网环境中被使用时,除了上述外部存储设备3716之外,计算机3702还可以访问云存储系统或其他基于网络的存储系统,或者代替上述外部存储设备3716来访问云存储系统或其他基于网络的存储系统。通常,可以例如分别通过适配器3756或调制解调器3758来通过LAN 3752或WAN 3754建立计算机3702与云存储系统之间的连接。在将计算机3702连接至相关联的云存储系统时,外部存储接口3726可以在适配器3756和/或调制解调器3758的帮助下,如管理其他类型的外部存储一样管理由云存储系统提供的存储。例如,外部存储接口3726可以被配置成提供对云存储源的访问,就好像那些源物理地连接至计算机3702一样。
计算机3702可以可操作成与操作上以无线通信布置的任何无线设备或实体进行通信,所述任何无线设备或实体例如为打印机、扫描仪、台式计算机和/或便携式计算机、便携式数据助理、通信卫星、与可无线检测的标签相关联的任何装备或位置(例如亭、报摊、商店货架等)以及电话。这可以包括无线保真(Wi-Fi)和
Figure BDA0003746288240000601
无线技术。因此,通信可以是如常规网络的预定义结构或者仅仅是至少两个设备之间的自组织通信。
图38是可以与所公开的主题交互的样本计算环境3800的示意性框图。样本计算环境3800包括一个或更多个客户端3802。客户端3802可以是硬件和/或软件(例如线程、进程、计算设备)。样本计算环境3800还包括一个或更多个服务器3804。服务器3804也可以是硬件和/或软件(例如,线程、进程、计算设备)。例如,服务器3804可以容纳线程,以通过采用本文中所述的一个或更多个实施方式来执行转换。客户端3802与服务器3804之间的一种可能的通信可以是适于在两个或更多个计算机进程之间传输的数据分组的形式。样本计算环境3800包括通信框架3806,通信框架3806可以被用来促进客户端3802与服务器3804之间的通信。客户端3802可操作地连接至一个或更多个客户端数据存储装置3808,所述一个或更多个客户端数据存储装置3808可以用于将信息本地存储至客户端3802。类似地,服务器3804可操作地连接至一个或更多个服务器数据存储装置3810,所述一个或更多个服务器数据存储装置3810可以用于将信息本地存储至服务器3804。
上面已经描述的内容包括主题创新的示例。出于描述所公开的主题的目的,当然不可能描述每种都能想到的组件或方法的组合,但本领域普通技术人员可以认识到,本发明的许多另外的组合和排列也是可以的。因此,所公开的主题旨在包含落在所附权利要求的精神和范围内的所有这样的改变、修改和变型。
特别地以及关于由上述组件、设备、电路、系统等执行的各种功能,除非另有说明,否则用于描述这样的组件的术语(包括对“手段”的提及)旨在对应于执行所描述的组件的特定功能的任何组件(例如,功能上等同的组件),即使在结构上不等同于所公开的结构,该组件仍然执行本文示出的所公开主题的示例性方面中的功能。在这方面,还将认识到,所公开的主题包括系统以及具有用于执行所公开的主题的各种方法的动作和/或事件的计算机可执行指令的计算机可读介质。
此外,虽然可能仅针对若干实现方式中的一种公开了所公开的主题的特定特征,但是这样的特征可以与其他实现方式的一个或更多个其他特征进行组合,这对于任何给定应用或特定应用而言可能是期望且有利的。此外,就在具体实施方式或权利要求书中使用术语“包括(includes)”和“包括(including)”及其变型而言,这些术语旨在以与术语“包括(comprising)”类似的方式包括在内。
在本申请中,词语“示例性”用于表示用作示例、实例或说明。在本文中被描述为“示例性”的任何方面或设计不一定被解释为比其他方面或设计优选或有利。相反地,使用词语“示例性”旨在以具体的方式来呈现概念。
可以使用标准编程和/或工程技术将本文中所描述的各个方面或特征实现为方法、设备或制品。本文中所使用的术语“制品”旨在涵盖能够从任何计算机可读设备、载体或介质访问的计算机程序。例如,计算机可读介质可以包括但不限于:磁存储设备(例如,硬盘、软盘、磁条等)、光盘(例如,致密盘(CD)、数字多功能盘(DVD)等)、智能卡和闪存设备(例如,卡、棒、密钥驱动器等)。

Claims (20)

1.一种用于提供对工业资产的安全远程访问的系统,包括:
存储器,所述存储器存储可执行组件;以及
处理器,所述处理器可操作地耦接至所述存储器,所述处理器执行所述可执行组件,所述可执行组件包括:
设备接口组件,所述设备接口组件被配置成经由云平台通信地连接至部署在一个或更多个工业设施处的网关设备,其中,所述网关设备通信地连接至在所述一个或更多个工业设施处操作的工业资产,以及所述网关设备分别执行安全远程访问运行时服务;
用户接口组件,所述用户接口组件被配置成经由所述云平台向客户端设备提供前端接口,并经由与所述前端接口的交互来接收包括用户身份和凭证信息的请求数据;以及
访问管理组件,所述访问管理组件被配置成:响应于确定所述用户身份和所述凭证信息允许访问所述工业资产的子集,经由所述网关设备中的通信地连接至所述工业资产的子集的网关设备在所述客户端设备与所述工业资产的子集之间建立虚拟专用网络连接。
2.根据权利要求1所述的系统,其中,所述访问管理组件被配置成:在没有通过所述网关设备所驻留的工业设施处的防火墙来打开入站端口的情况下,建立所述虚拟专用网络连接。
3.根据权利要求1所述的系统,其中,所述用户接口组件还被配置成:经由所述虚拟专用网络连接在所述客户端设备上呈现存储在所述工业资产的子集上的数据。
4.根据权利要求3所述的系统,其中,所述数据是以下中的至少一个:资产状态数据、资产操作数据、资产性能数据、资产诊断数据或生产统计。
5.根据权利要求1所述的系统,其中,所述用户接口组件被配置成:
响应于确定所述用户身份和所述凭证信息允许访问所述工业资产的子集,呈现所述工业资产的子集的列表以供选择,以及
响应于从所述列表中选择工业资产,将从该工业资产检索到的数据的演示递送给所述客户端设备。
6.根据权利要求1所述的系统,其中,所述用户接口组件还被配置成从所述客户端设备接收针对所述工业资产的子集中的工业资产的远程控制指令,并且所述访问管理组件被配置成经由所述虚拟专用网络连接向该工业资产发送所述远程控制指令。
7.根据权利要求1所述的系统,其中,所述访问管理组件被配置成执行一种或更多种算法,所述一种或更多种算法确定从所述客户端设备到所述网关设备的最佳连接路径以用于建立所述虚拟专用网络连接。
8.根据权利要求1所述的系统,还包括分析组件,所述分析组件被配置成:基于在所述云平台上执行并且包括所述工业资产的子集的数字资产模型的虚拟化工厂,对从所述工业资产的子集获得的工业数据进行分析,
其中,所述用户接口组件被配置成:基于所述工业数据经由所述虚拟专用网络连接在所述客户端设备上呈现所述工业资产的子集的统一演示,并且经由所述统一演示来呈现所述分析的结果。
9.根据权利要求8所述的系统,其中,
所述设备接口组件被配置成接收所述工业数据作为情境化数据,所述情境化数据包括所述工业数据和由所述网关设备添加到所述工业数据的情境元数据,以及
所述分析组件被配置成:基于所述情境元数据,对所述工业数据进行分析。
10.根据权利要求9所述的系统,其中,所述情境元数据中的至少一个定义所述工业数据的两个或更多个项之间的相关性,标识生成所述工业数据的机器,或者将同步的时间戳应用于所述工业数据。
11.根据权利要求8所述的系统,其中,所述资产模型针对所述资产模型对应的工业资产来定义视觉表示和功能规范数据。
12.一种方法,包括:
由包括处理器的系统经由云平台通信地连接至安装在一个或更多个工业设施处的网关设备,其中,所述网关设备通信地连接至在所述一个或更多个工业设施处操作的工业资产,以及所述网关设备分别执行安全远程访问运行时服务;
由所述系统经由所述云平台向客户端设备提供前端接口;
由所述系统经由与所述前端接口的交互来接收包括用户身份和凭证信息的请求数据;以及
由所述系统响应于确定所述用户身份和所述凭证信息允许访问所述工业资产的子集,经由所述网关设备中的通信地连接至所述工业资产的子集的网关设备在所述客户端设备与所述工业资产的子集之间建立虚拟专用网络连接。
13.根据权利要求12所述的方法,其中,所述建立包括:在没有通过所述网关设备所驻留的工业设施处的防火墙来打开入站端口的情况下,建立所述虚拟专用网络连接。
14.根据权利要求12所述的方法,还包括:经由所述虚拟专用网络连接在所述客户端设备上呈现存储在所述工业资产的子集上的数据。
15.根据权利要求14所述的方法,其中,呈现数据包括:呈现资产状态数据、资产操作数据、资产性能数据、资产诊断数据或生产统计中的至少一个。
16.根据权利要求12所述的方法,还包括:
由所述系统响应于确定所述用户身份和所述凭证信息允许访问所述工业资产的子集,在所述客户端设备上呈现所述工业资产的子集的列表以供选择,以及
由所述系统响应于从所述客户端设备接收到从所述列表中选择工业资产的指示,将从该工业资产检索到的数据的演示递送给所述客户端设备。
17.根据权利要求12所述的方法,还包括:
由所述系统从所述客户端设备接收针对所述工业资产的子集中的工业资产的远程控制指令;以及
由所述系统经由所述虚拟专用网络连接向该工业资产发送所述远程控制指令。
18.根据权利要求12所述的方法,其中,所述建立包括执行一种或更多种算法,所述一种或更多种算法确定从所述客户端设备到所述网关设备的最佳连接路径以用于建立所述虚拟专用网络连接。
19.一种非暂态计算机可读介质,所述非暂态计算机可读介质上存储有指令,所述指令响应于执行而使在云平台上执行并且包括处理器的系统执行操作,所述操作包括:
经由所述云平台通信地连接至安装在一个或更多个工业设施处的网关设备,其中,所述网关设备通信地连接至在所述一个或更多个工业设施处操作的工业资产,以及所述网关设备分别执行安全远程访问运行时服务;
经由所述云平台向客户端设备提供前端接口;
经由与所述前端接口的交互来接收包括用户身份和凭证信息的请求数据;以及
响应于确定所述用户身份和所述凭证信息允许访问所述工业资产的子集,经由所述网关设备中的通信地连接至所述工业资产的子集的网关设备在所述客户端设备与所述工业资产的子集之间建立虚拟专用网络连接。
20.根据权利要求19所述的非暂态计算机可读介质,其中,所述建立包括:在没有通过所述网关设备所驻留的工业设施处的防火墙来打开入站端口的情况下,建立所述虚拟专用网络连接。
CN202210825325.8A 2021-07-15 2022-07-14 工业自动化安全远程访问 Pending CN115622727A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/376,909 2021-07-15
US17/376,909 US11863560B2 (en) 2021-07-15 2021-07-15 Industrial automation secure remote access

Publications (1)

Publication Number Publication Date
CN115622727A true CN115622727A (zh) 2023-01-17

Family

ID=82838931

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210825325.8A Pending CN115622727A (zh) 2021-07-15 2022-07-14 工业自动化安全远程访问

Country Status (3)

Country Link
US (2) US11863560B2 (zh)
EP (1) EP4120627A1 (zh)
CN (1) CN115622727A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116405393A (zh) * 2023-06-09 2023-07-07 广东致盛技术有限公司 一种用于数据孪生的边缘智能网关优化方法及装置
TWI827508B (zh) * 2023-04-24 2023-12-21 財團法人工業技術研究院 製程管理系統及製程管理方法

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110046754A1 (en) * 2003-09-25 2011-02-24 Rockwell Software, Inc. Industrial hmi automatically customized based upon inference
US7587251B2 (en) * 2005-12-21 2009-09-08 Rockwell Automation Technologies, Inc. Remote monitoring and control of an I/O module
US20180262388A1 (en) * 2006-09-25 2018-09-13 Weaved, Inc. Remote device deployment
US9094400B2 (en) 2011-04-27 2015-07-28 International Business Machines Corporation Authentication in virtual private networks
US20150074749A1 (en) 2013-09-10 2015-03-12 Rockwell Automation Technologies, Inc. Remote asset management services for industrial assets
WO2015048811A2 (en) 2013-09-30 2015-04-02 Schneider Electric Industries Sas Cloud-authenticated site resource management devices, apparatuses, methods and systems
US9148408B1 (en) * 2014-10-06 2015-09-29 Cryptzone North America, Inc. Systems and methods for protecting network devices
US10496061B2 (en) * 2015-03-16 2019-12-03 Rockwell Automation Technologies, Inc. Modeling of an industrial automation environment in the cloud
US11222551B2 (en) 2015-07-23 2022-01-11 Rockwell Automation Technologies, Inc. Snapshot management architecture for process control operator training system lifecycle
RU2747966C2 (ru) 2015-10-13 2021-05-18 Шнейдер Электрик Эндюстри Сас Централизованное управление программно-определяемой автоматизированной системой
US10156841B2 (en) 2015-12-31 2018-12-18 General Electric Company Identity management and device enrollment in a cloud service
EP3270560B1 (de) * 2016-07-12 2020-03-25 Siemens Aktiengesellschaft Verfahren zum aufbau gesicherter kommunikationsverbindungen zu einem industriellen automatisierungssystem und firewall-system
US10757103B2 (en) * 2017-04-11 2020-08-25 Xage Security, Inc. Single authentication portal for diverse industrial network protocols across multiple OSI layers
WO2019099111A1 (en) 2017-11-16 2019-05-23 Intel Corporation Distributed software-defined industrial systems
US10700924B2 (en) 2017-12-08 2020-06-30 Rockwell Automation, Inc. Remote line integration
US10732960B2 (en) 2018-10-19 2020-08-04 Oracle Internatonal Corporation Systems and methods for implementing gold image as a service (GIaaS)
US11190489B2 (en) * 2019-06-04 2021-11-30 OPSWAT, Inc. Methods and systems for establishing a connection between a first device and a second device across a software-defined perimeter
US20210377018A1 (en) * 2020-05-29 2021-12-02 Electric Power Research Institute, Inc. Secure remote access to industrial control systems using hardware based authentication

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI827508B (zh) * 2023-04-24 2023-12-21 財團法人工業技術研究院 製程管理系統及製程管理方法
CN116405393A (zh) * 2023-06-09 2023-07-07 广东致盛技术有限公司 一种用于数据孪生的边缘智能网关优化方法及装置
CN116405393B (zh) * 2023-06-09 2023-09-22 广东致盛技术有限公司 一种用于数据孪生的边缘智能网关优化方法及装置

Also Published As

Publication number Publication date
EP4120627A1 (en) 2023-01-18
US20230300140A1 (en) 2023-09-21
US11863560B2 (en) 2024-01-02
US20230275897A1 (en) 2023-08-31

Similar Documents

Publication Publication Date Title
US11796983B2 (en) Data modeling and asset management using an industrial information hub
US11899434B2 (en) Industrial automation project code development guidance and analysis
US20230017142A1 (en) Digital engineering secure remote access
US11703827B2 (en) Industrial automation asset and control project analysis
CN114257609B (zh) 用于提供工业信息服务的系统、方法和计算机可读介质
US20230300140A1 (en) Industrial automation secure remote access
EP4120067A1 (en) Industrial automation control project conversion
EP4120033A1 (en) Digital engineering virtual machine infrastructure
EP3968110A1 (en) Digital engineering on an industrial development hub
US11899412B2 (en) Industrial development hub vault and design tools

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