CN114167814A - 工业开发中心的数字工程 - Google Patents
工业开发中心的数字工程 Download PDFInfo
- Publication number
- CN114167814A CN114167814A CN202110730406.5A CN202110730406A CN114167814A CN 114167814 A CN114167814 A CN 114167814A CN 202110730406 A CN202110730406 A CN 202110730406A CN 114167814 A CN114167814 A CN 114167814A
- Authority
- CN
- China
- Prior art keywords
- industrial
- control
- project
- digital
- item
- 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
Links
- 238000011161 development Methods 0.000 title abstract description 37
- 238000004088 simulation Methods 0.000 claims abstract description 79
- 238000012360 testing method Methods 0.000 claims abstract description 22
- 238000004458 analytical method Methods 0.000 claims description 114
- 238000000034 method Methods 0.000 claims description 95
- 230000015654 memory Effects 0.000 claims description 40
- 230000004044 response Effects 0.000 claims description 25
- 238000012986 modification Methods 0.000 claims description 23
- 230000004048 modification Effects 0.000 claims description 23
- 238000012544 monitoring process Methods 0.000 claims description 16
- 230000000007 visual effect Effects 0.000 claims description 6
- 238000011019 functional design specification Methods 0.000 claims 1
- 238000013461 design Methods 0.000 abstract description 84
- 238000003860 storage Methods 0.000 abstract description 59
- 238000010586 diagram Methods 0.000 description 51
- 230000018109 developmental process Effects 0.000 description 40
- 230000006870 function Effects 0.000 description 35
- 238000012545 processing Methods 0.000 description 29
- 238000011084 recovery Methods 0.000 description 26
- 238000004891 communication Methods 0.000 description 25
- 230000008569 process Effects 0.000 description 25
- 230000003993 interaction Effects 0.000 description 24
- 230000006399 behavior Effects 0.000 description 17
- 230000000875 corresponding effect Effects 0.000 description 17
- 238000012800 visualization Methods 0.000 description 15
- 238000004519 manufacturing process Methods 0.000 description 13
- 238000012795 verification Methods 0.000 description 12
- 238000005516 engineering process Methods 0.000 description 8
- 230000006855 networking Effects 0.000 description 8
- 230000009471 action Effects 0.000 description 6
- 230000001276 controlling effect Effects 0.000 description 6
- 238000005265 energy consumption Methods 0.000 description 6
- 230000033001 locomotion Effects 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 6
- 238000011156 evaluation Methods 0.000 description 5
- 239000000463 material Substances 0.000 description 5
- 239000007787 solid Substances 0.000 description 5
- 238000013475 authorization Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 4
- 238000007689 inspection Methods 0.000 description 4
- 238000012423 maintenance Methods 0.000 description 4
- 238000012549 training Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 230000001976 improved effect Effects 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 238000005457 optimization Methods 0.000 description 3
- 238000012384 transportation and delivery Methods 0.000 description 3
- 238000010200 validation analysis Methods 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 238000012550 audit Methods 0.000 description 2
- 238000013474 audit trail Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 2
- 230000006378 damage Effects 0.000 description 2
- 238000013499 data model Methods 0.000 description 2
- 230000001934 delay Effects 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000007373 indentation Methods 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 208000027418 Wounds and injury Diseases 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 238000003339 best practice Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 239000003814 drug Substances 0.000 description 1
- 229940079593 drug Drugs 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000008451 emotion Effects 0.000 description 1
- 230000005284 excitation Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 239000012530 fluid Substances 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 208000014674 injury Diseases 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 239000003607 modifier Substances 0.000 description 1
- 238000012806 monitoring device Methods 0.000 description 1
- 230000036961 partial effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000000704 physical effect Effects 0.000 description 1
- 238000013439 planning Methods 0.000 description 1
- 238000004886 process control Methods 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 238000013442 quality metrics Methods 0.000 description 1
- 230000002829 reductive effect Effects 0.000 description 1
- 230000001172 regenerating effect Effects 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 230000002207 retinal effect Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000000153 supplemental effect Effects 0.000 description 1
- 230000008093 supporting effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000033772 system development Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
- 230000001755 vocal effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
- G05B19/41865—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by job scheduling, process planning, material flow
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/067—Enterprise or organisation modelling
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B13/00—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
- G05B13/02—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
- G05B13/04—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
- G05B13/048—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators using a predictor
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
- G05B19/41885—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by modeling, simulation of the manufacturing system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0637—Strategic management or analysis, e.g. setting a goal or target of an organisation; Planning actions based on goals; Analysis or evaluation of effectiveness of goals
- G06Q10/06375—Prediction of business process outcome or impact based on a proposed change
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0639—Performance analysis of employees; Performance analysis of enterprise or organisation operations
- G06Q10/06395—Quality analysis or management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/101—Collaborative creation, e.g. joint development of products or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/103—Workflow collaboration or project management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/04—Manufacturing
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
- G05B19/4185—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the network communication
- G05B19/41855—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the network communication by local area network [LAN], network structure
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/32—Operator till task planning
- G05B2219/32252—Scheduling production, machining, job shop
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/32—Operator till task planning
- G05B2219/32339—Object oriented modeling, design, analysis, implementation, simulation language
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/32—Operator till task planning
- G05B2219/32342—Real time simulation
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/80—Management or planning
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Human Resources & Organizations (AREA)
- Strategic Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Economics (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Theoretical Computer Science (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Manufacturing & Machinery (AREA)
- Educational Administration (AREA)
- Operations Research (AREA)
- Development Economics (AREA)
- Game Theory and Decision Science (AREA)
- Automation & Control Theory (AREA)
- Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Primary Health Care (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Stored Programmes (AREA)
Abstract
本申请公开了工业开发中心的数字工程。工业开发中心(IDH)支持作为基于云的服务提供的工业开发和测试能力。IDH包括增强型存储平台和相关联的设计工具,设计工具用作存储库,客户可以在存储库上存储工业自动化项目的控制项目代码、设备配置和其他数字方面。IDH***可以便于发现和管理与控制***相关联的数字内容,并且可以用于***备份和恢复、代码转换和版本管理。IDH还支持基于模拟的设计和测试工具。
Description
技术领域
本文中公开的主题通常涉及工业自动化***,并且例如涉及工业控制***设计和测试。
背景技术
运营技术(OT)级***可以是分散且复杂的,并且可以与许多物理设备集成。这种具有挑战性的环境再加上特定于领域的编程和开发语言可能会使OT级上的控制***的开发变得困难,从而导致开发、测试和最终部署新的控制***设计的长开发周期。此外,鉴于普遍缺乏当前虚拟化和模拟能力,在实际测试或优化可以开始之前必须购买、编程和在物理操作环境中安装工业自动化***。该工作流程通常会导致项目延迟或成本超支。此外,已安装的工业监视和控制***固有的复杂性和自定义特性可能使工业资产的所有者(例如工厂所有者或工业企业实体)难以管理其OT级***并保护其专有知识产权免受灾难性故障或网络攻击。
发明内容
为了提供对本文中描述的一些方面的基本理解,下面给出了简化的概述。该概述不是广泛的综述,也不意在标识关键/重要元件或描绘本文所描述的各个方面的范围。其目的仅在于以简化形式给出一些概念作为后面给出的更详细的描述的前奏。
在一个或更多个实施方式中,提供了一种用于设计和测试工业控制项目的***,该***包括:用户接口部件,其被配置成经由云平台接收工业控制项目,所述工业控制项目至少包括控制编程和设备配置数据,所述控制编程和设备配置数据响应于在一个或更多个工业设备上的执行而便于工业自动化***的监视和控制;项目分析部件,其被配置成识别所述工业控制项目中定义的一个或更多个工业资产,并生成表示工业资产的相应的一个或更多个数字资产模型;以及模拟部件,其被配置成生成所述工业自动化***的数字孪生,其中,所述数字孪生包括所述一个或更多个数字资产模型。
此外,一个或更多个实施方式提供一种用于设计和测试工业控制项目的方法,该方法包括:由在云平台上执行的包括处理器的***接收工业控制项目,所述工业控制项目至少包括控制编程和设备配置数据,所述控制编程和设备配置数据响应于在一个或更多个工业设备上的执行而便于工业自动化***的监视和控制;由所述***基于对所述工业控制项目的分析来识别所述工业控制项目中定义的一个或更多个工业资产,并生成表示工业资产的相应的一个或更多个数字资产模型;以及由所述***基于所述一个或更多个数字资产模型生成所述工业自动化***的数字孪生。
此外,根据一个或更多个实施方式,提供了一种在其上存储有指令的非暂态计算机可读介质,所述指令响应于执行而使在云平台上执行并且包括处理器的***执行以下操作,所述操作包括:经由云平台接收工业控制项目,所述工业控制项目至少包括控制编程和设备配置数据,所述控制编程和设备配置数据响应于在一个或更多个工业设备上的执行而便于工业自动化***的监视和控制;基于对所述工业控制项目的分析来识别所述工业控制项目中定义的一个或更多个工业资产,并生成表示工业资产的相应的一个或更多个数字资产模型;以及基于所述一个或更多个数字资产模型生成所述工业自动化***的数字孪生。
为了实现上述及有关目的,在本文中结合以下描述和附图对某些示意性方面进行了描述。这些方面表示可以实现的各种方式,本文意在涵盖所有这些方式。在结合附图考虑的情况下,根据下面的详细描述,其他优点和新颖特征会变得明显。
附图说明
图1是示例工业控制环境的框图。
图2是示例工业开发中心(IDH)存储库***的框图。
图3是示出IDH存储库***的通用架构的图。
图4是示出与使用IDH存储库***设计的自动化***的新控制项目的创建相关联的示例数据流的图。
图5是示出关于构建、部署和执行控制项目可以由IDH存储库***利用的几个示例自动化对象属性的图。
图6是示出从提交给IDH存储库***的控制项目中提取项目遥测数据的图。
图7是示出基于对提取的项目遥测数据的分析来生成项目推荐的图。
图8是示出基于对提取的项目遥测数据的分析来生成项目推荐的图。
图9是示出由IDH存储库***生成交接文档的图。
图10是示出由IDH存储库***收集数字签名的图。
图11是示出提交控制项目的新版本以与较旧项目版本一起归档的图。
图12是示出将设备配置数据智能备份到IDH存储库***的图。
图13是示出可以通过IDH存储库***发起的示例恢复过程的图。
图14是用于使用基于云的IDH存储库***在开发期间为工业控制项目提供实时设计反馈的示例方法的流程图。
图15a是用于对加载的控制项目执行控制项目分析并基于分析的结果收集特定于供应商的设备使用情况统计的示例方法的第一部分的流程图。
图15b是用于对加载的控制项目执行控制项目分析并基于分析的结果收集特定于供应商的设备使用情况统计的示例方法的第二部分的流程图。
图16是示出基于由装备供应商提交给存储库***的设备简档来创建和存储资产模型的图。
图17是示出基于控制项目和相应资产模型生成自动化***或工业环境的数字孪生的图。
图18是示出利用包括多个数字孪生的虚拟化工厂的模拟场景的图。
图19是示出使用由自动化***设备生成并由IDH存储库***收集的实时数据来对虚拟工厂进行细化的图。
图20是示出多用户与虚拟化工厂交互的图。
图21是示出可以经由IDH存储库***远程查看和控制在工厂环境内操作的工业资产的架构的图。
图22a是用于生成和利用工业自动化***或环境的数字孪生的示例方法的第一部分的流程图。
图22b是用于生成和利用工业自动化***或环境的数字孪生的示例方法的第二部分的流程图。
图22c是用于生成和利用工业自动化***或环境的数字孪生的示例方法的第三部分的流程图。
图23是用于经由在云平台上模拟的虚拟化工厂来处理针对自动化***的远程发布的控制命令的示例方法的流程图。
图24是示例计算环境。
图25是示例联网环境。
具体实施方式
现在参照附图描述主题公开内容,其中,贯穿全文使用相同的附图标记指代相同的元件。在下面的描述中,出于说明的目的,阐述了大量的具体细节以便提供其透彻的理解。然而,会明显的是,可以在没有这些具体细节的情况下实践主题公开内容。在其他实例中,以框图形式示出了公知的结构和设备以便于对其描述。
如在本申请中使用的,术语“部件”、“***”、“平台”、“层”、“控制器”、“终端”、“站”、“节点”、“接口”意在指代计算机相关实体、或与具有一个或更多个特定功能的操作设备相关的或作为该操作设备的一部分的实体,其中,这样的实体可以是硬件、硬件和软件的组合、软件、或执行中的软件。例如,部件可以是但不限于:在处理器上运行的进程、处理器、硬盘驱动器、包括附加固态存储驱动器(螺丝拧紧或螺栓固定)或者可移除式附加固态存储驱动器的(光存储介质或磁存储介质的)多个存储驱动器;对象;可执行体;执行线程;计算机可执行程序、和/或计算机。通过例示,服务器上运行的应用以及服务器二者均可以为部件。一个或更多个部件可以驻留在进程和/或执行线程内,并且部件可以位于一个计算机上和/或分布在两个或更多个计算机之间。此外,本文所描述的部件可以根据存储有各种数据结构的各种计算机可读存储介质来执行。部件可以例如根据具有一个或更多个数据包(例如,来自与本地***、分布式***中的另一部件交互的一个部件的数据,以及/或者来自经由信号在网络例如因特网上与其他***交互的一个部件的数据)的信号经由本地和/或远程处理进行通信。作为另一个示例,部件可以是具有由电气或电子电路操作的机械部件所提供的特定功能的设备,其中所述电气或电子电路通过处理器执行的软件或固件应用进行操作,其中处理器可以位于设备内部或外部,并且执行软件或固件应用的至少一部分。作为又一个示例,部件可以是如下设备:其通过电子部件提供特定功能,而无需机械件,电子部件可以在其中包含处理器以执行提供电子部件的至少部分功能的软件或固件。作为再一个示例,接口可以包括输入/输出(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、一个或更多个处理器224和存储器226。在各种实施方式中,用户接口部件204、项目生成部件206、项目遥测部件208、项目分析部件210、项目文档部件212、资产恢复部件214、仿真部件216、模拟部件218、设备接口部件220、一个或更多个处理器224和存储器226中的一个或更多个可以彼此电气和/或通信上耦接以执行IDH存储库***202的功能中的一个或更多个。在一些实施方式中,部件204、206、208、210、212、214、216、218和220可以包括存储在存储器226上并由处理器224执行的软件指令。IDH存储库***202还可以与图2中未描绘的其他硬件和/或软件部件进行交互。例如,处理器224可以与一个或更多个外部用户接口设备诸如键盘、鼠标、显示监视器、触摸屏或其他这样的接口设备进行交互。
IDH存储库***202可以在云平台上被实现为基于云的服务的集合,以便于具有业务或技术关系的各种各样的用户的访问,所述用户包括工业设备所有者(例如,工业企业实体或工厂所有者)、装备供应商、原始设备制造商(OEM)、***集成商或其他这样的用户实体。***202在其上执行的云平台可以是允许具有云能力的设备访问和利用共享的计算服务的任何基础设施。云平台可以是由具有因特网连接性并具有使用IDH存储库服务的适当授权的设备经由因特网可访问的公共云。在一些场景下,云平台可以由云提供商作为平台即服务(PaaS)提供,并且IDH存储库***202可以作为基于云的服务驻留在云平台上并在云平台上执行。在一些这样的配置中,IDH存储库***202的所有者可以将对云平台和相关联的IDH存储库服务的访问作为订阅服务提供给客户。可替选地,云平台可以是由工业企业(工厂设施的所有者)在内部操作的私有云。示例私有云平台可以包括代管IDH存储库***202并驻留在受防火墙保护的公司网络上的服务器的集合。
用户接口部件204可以被配置成接收用户输入并以任何合适的格式(例如,视觉、音频、触觉等)将输出呈现给用户。在一些实施方式中,用户接口部件204可以被配置成与客户端设备(例如,膝上型计算机、平板计算机、智能电话等)通信上对接,客户端设备(例如,经由硬连线连接或无线连接)通信上连接至IDH存储库***202。然后,用户接口部件204可以为客户端设备提供IDH接口环境,***202通过该环境接收用户输入数据并呈现输出数据。在其他实施方式中,用户接口部件204可以被配置成生成适当的接口屏幕并将其提供给客户端设备(例如,程序开发屏幕、项目提交屏幕、分析结果屏幕等),并经由这些接口屏幕交换数据。可以经由用户接口部件204的各种实施方式接收的输入数据可以包括但不限于编程代码(包括工业控制编程,例如梯形逻辑编程)、设备配置数据、工程图、HMI应用或其他这样的输入。由用户接口部件204的各种实施方式呈现的输出数据可以包括程序代码、编程反馈(例如,错误和突出显示、编码建议等)、控制项目遥测和推荐、项目测试结果等。
项目生成部件206可以被配置成基于经由用户接口部件204接收的设计输入以及由IDH存储库***202维护的工业知识、预定义代码模块和资产模型来创建包括一个或更多个项目文件的控制***项目。控制***项目可以包括工业控制代码(例如,梯形逻辑、结构化文本、功能框图等)、包括一个或更多个HMI接口屏幕定义的HMI应用、设备配置文件或其他这样的项目文件中的一个或更多个。
项目遥测部件208可以被配置成分析用户提交的工业控制项目,并基于该分析为所提交的项目生成项目遥测或统计信息。可以由项目遥测部件208生成的示例项目遥测数据可以包括但不限于项目中使用的设备的清单、关于如何使用设备的信息、指示设备或相关联软件将在多大程度上接近硬件或软件容量限制运行的报告、预计项目在运行期间将消耗多少内存或能量或其他这样的统计。
项目分析部件210被配置成分析由项目遥测部件208生成的项目遥测数据,并基于该分析生成设计推荐或警告。项目分析部件210还可以生成从多个最终客户提交的多个项目推断出的设备或装备使用情况统计,以供装备供应商或OEM使用。
项目文档部件212可以被配置成基于对控制***项目的分析来生成各种项目交接文档或确认文档,包括但不限于批准文档、安全验证清单、I/O检验文档、审计文档或其他这样的文档。资产恢复部件214可以被配置成收集和归档控制项目文件和设备配置的备份,并根据灾难恢复或远程部署目的的需要部署这些归档的项目文件。仿真部件216可以被配置成在虚拟化(或仿真)工业控制器上仿真正在测试的工业控制项目的执行。模拟部件218可以被配置成在正在仿真的工业控制项目的控制下模拟工业自动化***的虚拟化模型的操作。设备接口部件220可以被配置成在运行期间从组成自动化***的工业设备接收实时操作和状态数据,并将控制命令部署到自动化***的选定设备。
一个或更多个处理器224可以执行参考所公开的***和/或方法而在本文中描述的功能中的一个或更多个。存储器226可以是计算机可读存储介质,其存储用于执行参考所公开的***和/或方法而在本文中描述的功能的计算机可执行指令和/或信息。
图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上提供公共数据结构,并且可以存储在对象库(例如,存储器226的一部分)中以供重复使用。对象库可以存储表示现实世界工业资产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旨在优化控制设计或将设计者引导至先前未知和未使用的设备特征,如果使用项目推荐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中定义的特定于资产的安全要求来生成安全验证清单。一些文档902也可以基于在工厂标准314中定义的内部批准要求来生成。这些批准要求可以指定例如必须对控制项目的各个方面签核其批准的人员。
还可以基于在知识库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可以通过创建开放的生态***以供工程师共享和重用来自私有存储库和公共存储库的代码来加速现代自动化开发,从而使他们能够轻松地管理自己的内容和他们信任的其他人的内容并与之协作以加速核心控制开发。
图14至图15b示出了根据本申请的一个或更多个实施方式的各种方法。尽管出于简化说明的目的,本文中示出的一个或更多个方法被示出和描述为一系列动作,但是应理解和意识到,本发明不受动作顺序的限制,因为一些动作可以据此以与本文中示出和描述的顺序不同的顺序和/或与其他动作同时发生。例如,本领域技术人员将理解并认识到,方法可以可替选地例如在状态图中表示为一系列相互关联的状态或事件。此外,可能不是需要所有示出的动作来实现根据本发明的方法。此外,当不同的实体制定方法的不同部分时,交互图可以表示根据本公开内容的方法或方法。此外,可以彼此组合地实现所公开的示例方法中的两个或更多个,以实现本文中所述的一个或更多个特征或优点。
图14示出了用于使用基于云的IDH存储库***来在开发期间为工业控制项目提供实时设计反馈的示例方法1400。最初,在1402处,经由与基于云的IDH存储库***的交互来接收设计数据。设计数据可以指定要用于监视和控制工业自动化***的控制***的控制方面,并且可以以工业控制编程(例如,梯形逻辑、顺序功能图、脚本控制代码例如工业DSL等)、HMI屏幕开发输入、工业设备或装备选择和配置数据(例如,设备配置参数值)或其他这样的设计输入的形式来接收。在一些实施方式中,设计数据可以经由与由存储库***服务于客户端设备的控制***开发平台的交互而提交给IDH存储库***,其中该开发平台包括用于对工业控制代码进行编程、设计HMI接口显示、设置设备参数或其他这样的设计动作的开发工具。
在1404处,在接收设计数据期间(即,当用户继续进行控制项目开发时)存储库***鉴于存储在存储库***上的定义的工厂标准或特定于工业的设计准则中的一个或更多个来监视设计数据。工厂标准可以由工厂设施处的工程师或管理员加载到存储库***,并存储在特定于客户的存储库中,并且可以定义如优选控制代码格式、执行某些控制序列的顺序、在可以执行某些控制动作之前必须处于适当位置的控制互锁、允许的控制设定点范围、优选设备操作范围或配置参数、优选网络设置的这样的工程标准或其他这样的工程标准和偏好。工厂标准还可以定义特定于正在开发的控制项目的标准,包括功能规范或安全验证要求。
特定于工业的准则还可以存储在存储库***上并在其上维护,并且可以根据相关的工业垂直行业进行分类。这些特定于工业的准则可以指定例如排放或能耗要求、所需的安全完整性等级、工业标准互锁或其他这样的标准。
在1406处,基于在步骤1404处执行的监视,确定在步骤1402处接收的部分设计数据是否偏离工厂标准或设计准则。这些偏离可以包括例如不符合批准的控制编码实践、与控制操作相关联的不足安全互锁、超出批准范围的设备配置设置或其他这样的偏离。如果没有检测到这样的偏离(步骤1406处为“否”),则该方法返回到步骤1402,并且重复步骤1402至1406。可替选地,如果检测到偏离(步骤1406处为“是”),则该方法进行到步骤1408,在该步骤1408中,IDH存储库***基于该偏离来呈现设计反馈。反馈可以向设计者通知偏离,并提供用于以使设计在特定于工厂的准则和特定于工业的准则内的方式修改设计的推荐。
图15a示出了用于对加载的控制项目执行控制项目分析并基于分析的结果收集特定于供应商的设备使用情况统计的示例方法1500a的第一部分。最初,在1502处,在基于云的IDH存储库***处接收控制项目。控制项目可以由客户(例如,控制项目所运行的工厂设施处的被授权人员)加载以进行归档或分析,或者可以作为备份和恢复过程的一部分自动归档到存储库***。控制项目包括用于对工厂设施处的工业控制***进行编程和配置的控制编程和设备配置数据。
在1504处,存储库***从控制项目中提取项目遥测数据。该项目遥测数据可以包括例如组成控制***的设备清单、设备的I/O使用率、控制***使用的网络资源(例如,通信带宽)、预测的设备生命周期信息、设备中的一个或更多个设备的预期的运行周期频率、由于执行控制项目而在设备中的一个或更多个设备上的预期处理负载、由于执行控制项目而消耗的预期设备存储器量、正在由控制项目使用的设备的可用特征的子集或其他这样的遥测技术。
在1506处,鉴于定义的工厂标准、特定于工业的设计准则、数字资产模型或存储在存储库***上的类似的归档控制项目中的至少一项,对在步骤1504处提取的项目遥测数据执行分析。例如,可以评估所提交的控制项目是否偏离特定于工厂的设计标准和准则或特定于工业的设计标准和准则,如方法1400中的步骤1406中所讨论的。存储库***还可以将控制项目与其他归档控制项目的子集进行比较,其他归档控制项目执行与所提交的项目的控制功能类似的控制功能(例如,被设计成控制类似工业内的类似机械或以其他方式执行类似控制功能的项目),以确定控制项目设计的部分是否偏离针对类似控制功能的更通用设计方法。
存储库***还可以访问表示在控制项目中使用(并在遥测数据中识别)的设备的数字资产模型,以便相对于设计规范和可用特征来确定如何使用这些设备。例如,基于在特定于设备的资产模型上维护的信息,存储库***可以确定控制项目中当前正在使用的设备可用I/O的百分比、控制项目将消耗设备可用存储器或处理能力的百分比(例如,作为执行提议的控制代码的结果)、控制项目并未使用设备的哪些可用特征或其他这样的统计。
在1508处,确定在步骤1506处执行的分析是否识别出改进控制项目的性能度量的机会。如果识别出这样的机会(步骤1508处为“是”),则该方法进行到步骤1510,在步骤1510中,存储库***基于分析的结果呈现关于控制项目的修改的推荐。这些推荐可以包括例如用于减少控制***的一个或更多个设备的存储器或处理利用率的推荐、用于以延长设备的预期生命周期(例如,通过降低设备的工作频率)的方式更改控制项目的推荐、如果使用的话则可能改进性能的未使用的设备特征的指示或其他这样的推荐。
然后,该方法进行至图15b中示出的第二部分1500b。在1512处,与由特定装备供应商提供的工业设备或资产有关的项目遥测数据(在步骤1504处提取的)的子集被存储在与该供应商相关联的供应商存储库中。遥测数据的该子集可以包括例如控制项目正在使用供应商的哪些设备、正在使用设备的哪些可用特征以及哪些可用特征未使用、设备运行与其最大运行限制的接近程度(例如,在存储器、处理能力、速度等方面)或其他这样的信息。在1514处,从多个提交的控制项目的项目遥测数据收集的特定于供应商的统计由存储库***聚合并存储在供应商存储库中。这些特定于供应商的统计与由供应商提供并在参与IDH存储库平台的多个客户设施处使用的工业资产有关。在1516处,存储库***向与供应商相关联的实体提供对聚合的特定于供应商的统计的访问权。这些统计可以包括例如在客户位置处部署的供应商产品中的每一个的数量、在现场如何使用这些产品、供应商产品的特征的使用程度、供应商的产品运行与其工程能力的接近程度、供应商各自产品的使用地理位置或其他这样的统计。
除了以上讨论的特征之外,IDH存储库***202的实施方式可以支持各种数字工程工具,所述数字工程工具降低了获取、配置和维护客户的OT环境的数字孪生的成本和复杂性,从而允许模拟通过可扩展的按需云工作空间。在一些实施方式中,可以使用存储在客户存储库324上的资产模型312来构建企业自动化***的数字孪生或工业环境的较大部分的数字孪生。如上所述,这些资产模型312是工厂设施处使用的工业设备或资产的数字表示。与给定工业资产相对应的资产模型312可以定义该资产的功能规范,包括例如定义资产要执行的功能、可用的I/O、存储器或处理能力、支持的功能、操作约束等;资产的物理尺寸;资产的视觉表示;确定虚拟化资产在模拟环境中的行为方式(包括摩擦、惯性、移动程度等)的物理、运动学或机电特性;资产的三维动画属性或其他这样的资产信息。由于一些工业资产的行为是用户定义的配置参数或控制例程的函数,因此一些类型的工业资产的资产模型312还可以记录***设计者为物理资产定义的专用设备配置参数或控制例程。
可以基于使得在一个或更多个供应商存储库326上可得到的特定于供应商的设备简档316来创建针对给定客户的存储在客户存储库中的资产模型312中的至少一些。图16是示出基于装备供应商提交给存储库***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中。
由于一些设备简档315可以表示其相应物理资产的通用数字表示(即,不考虑资产所有者应用于物理资产的专用配置参数或编程的表示),项目分析部件210可以将这些通用设备简档316转换为表示客户的唯一配置资产的定制资产模型312。该定制可以基于从控制项目306本身或从为项目306生成的项目遥测数据602获得的配置参数或编程。
所得资产模型312可以用作自动化***的数字孪生810的基础,该数字孪生810可以用于模拟和测试控制项目306,如上面结合图8所讨论的。图17是示出基于控制项目306和相应的资产模型312生成自动化***或工业环境的数字孪生810的图。在一些实施方式中,模拟部件218可以基于由资产模型312表示的相应物理资产之间的学习或定义的关系将资产模型312聚合成数字孪生810。数字孪生810的范围可以涵盖单个自动化***、生产线、工业设施内包括多个自动化***的区域、或包括多个生产区域和自动化***的整个工业设施。在一些情况下,数字孪生810可以由模拟部件218基于控制项目306和资产模型312自动地部分生成,并且由模拟部件218提供的数字设计工具可以允许用户修改或扩展数字孪生810,以根据需要改进数字孪生的保真度。在一些实施方式中,可以使用专用的数字孪生定义语言来定义用于控制模拟的数字孪生810。
如上面结合图8所描述的,数字孪生810可以用于对与控制器仿真器的交互进行建模以预测由控制项目306定义的控制编程将如何与虚拟工厂交互。随着设计项目在调试、优化、迁移和操作员培训阶段的进展,数字孪生810也可以得到改进。
图18是示出利用包括多个数字孪生810的虚拟化工厂1802的模拟场景的图。虚拟化工厂1802可以表示具有每个由数字孪生810表示的多个部件的单个自动化***,或者可以表示其中工厂内的不同自动化***或工业资产由相应的数字孪生810表示的较大的工厂环境。虚拟化工厂1802(由模拟部件218模拟)与仿真的控制项目306之间的数据交换与上面结合图8描述的那些类似。一般而言,模拟部件218支持使用数字孪生810来创建虚拟化工厂1802,所述数字孪生810取决于模拟的需求具有不同程度的保真度或复杂度,其中数字孪生810的保真度取决于期望的结果或所需的准确度水平。例如,较高保真度的数字孪生810(例如,数字孪生810a)可以用于作为模拟的重点的自动化***或工业资产,而较低保真度的数字孪生(例如,数字孪生810b)可以用于对处于重点***外部但必须被建模以便准确地模拟主***的运行的自动化***或工业环境进行建模。在这样的配置的示例中,较高保真度的数字孪生810可以用于对为其设计控制项目306的加工站进行建模,而较低保真度的数字孪生810可以用于对加工站上游并向加工站提供材料的***进行建模。该聚合虚拟工厂1802可以产生加工站的准确模拟(考虑到材料进给率),同时相对于使用高保真度的数字孪生810对整个***进行建模减少了为了对整个***进行建模而将以其他方式必须施加的建模工作量。在另一示例中,较高保真度的数字孪生810也可以用于对实际的自动化***进行建模,而较低保真度的数字孪生810可以用于较简单的功能,例如状态跟踪分析。
在控制项目的调试之后(如上面结合图13所述的),可以基于实际性能数据随时间提高虚拟工厂1802的保真度。图19是示出使用由自动化***设备生成并由IDH存储库***202收集的实时数据1904来对虚拟工厂1802进行细化的图。在该示例中,存储库***的设备接口部件220经由智能网关设备1202与工业***对接,智能网关设备1202驻留在与构成自动化***的工业设备的公用网络上。在自动化***操作期间,智能网关设备1202从构成自动化***的设备收集状态数据和操作数据,包括从一个或更多个工业控制器上的数据标签读取的数据。在一些实施方式中,智能网关设备1202可以在将数据递送到存储库***202之前对收集到的数据进行上下文处理,并且将处理后的数据作为上下文处理的数据1904递送到存储库***202。这种上下文处理可以包括对该数据加时间戳以及对收集的数据进行归一化或以其他方式格式化以供模拟部件218相对于虚拟工厂1802进行分析。模拟部件218可以将虚拟工厂1802的模拟的预期行为与从上下文处理的数据1904确定的实际行为进行比较,并且鉴于自动化***的实际监视行为更新虚拟化工厂1802——包括根据需要修改任何数字孪生810——以增加虚拟化工厂1802的保真度。
IDH存储库***202还可以支持多用户模拟环境,在该多用户模拟环境中,多个用户可以在部署控制项目306之前的设计阶段期间或者在项目306已经调试之后与虚拟工厂1802进行交互。图20是示出多用户与虚拟化工厂1802交互的图。在该示例中,多个用户能够使用向仪器2002的穿戴者呈现AR/VR演示的穿戴式仪器2002经由用户接口部件204与存储库***202对接。在一些实施方式中,用户接口部件204可以被配置成:在允许将VR演示递送到可穿戴仪器2002之前,验证可穿戴仪器2002访问IDH存储库***202——以及尤其是访问虚拟化工厂1802或存储在穿戴者的客户存储库324上的其他信息——的授权。用户接口部件204可以使用密码验证、生物识别(例如,可穿戴仪器2002从用户收集并提交给用户接口部件204的视网膜扫描信息)、将可穿戴仪器2002的标识符与被允许访问客户存储库324的一组已知授权设备交叉引用或其他这样的验证技术来认证可穿戴仪器2002或其所有者。尽管图20示出了使用可穿戴AR/VR仪器2002对客户存储库的访问和对虚拟化工厂1802的查看,但是其他类型的客户端设备(包括手持设备)也可以用于访问虚拟模拟。
用户接口部件204具有相关联的虚拟呈现部件,该虚拟呈现部件被配置成在仿真控制项目306的控制下基于虚拟化工厂1802的模拟生成虚拟现实演示数据,以递送到已授权的可穿戴仪器2002并在其上执行。演示数据在由可穿戴仪器2002接收并执行时呈现虚拟化工厂1802在可穿戴仪器的显示器上的交互式三维(3D)虚拟现实演示。通常,虚拟化工厂1802——包括如上所讨论的一个或更多个数字孪生810——可以定义由虚拟化工厂1802表示的工业设施或区域的物理布局的视觉表示。例如,虚拟化工厂1802可以定义位于工厂内的工业资产——包括机器、传送器、控制柜和/或工业设备——的图形表示以及这些工业资产之间的物理关系。对于每个工业资产,虚拟化工厂1802(例如,表示工业资产的数字孪生810)可以定义资产的物理尺寸和颜色以及图形表示所支持的任何动画(例如,变色动画、反映资产的移动的位置动画等)。虚拟化工厂1802还定义工业资产之间的物理关系,包括工厂车间上的资产的相对位置和取向、在资产之间延伸的导管或管道以及其他物理定义。
使用可穿戴仪器2002,用户可以向用户接口部件204提交表示用户与虚拟化工厂1802的虚拟交互的交互数据。这些虚拟交互可以包括例如更改用户在虚拟工厂内的观察角度、虚拟选择虚拟工厂内的工业资产或设备或与之交互、或其他这样的交互。基于该交互数据,用户接口部件204可以更新穿戴者对虚拟化工厂1802的视角,以反映用户当前的虚拟观察角度,以呈现在用户当前的虚拟视场内工业资产的模拟行为,以呈现与穿戴者的视场内的当前观察的资产相关的模拟数据(例如,状态或操作统计)等。
该架构可以允许多个用户检查在项目306将在其中运行的物理环境的虚拟版本内操作中的控制项目306的各方面。可以在控制项目306调试之前执行该检查。在示例场景中,可以由项目批准链内的指定人员检查和批准被定义为控制项目306的一部分的控制代码。该虚拟代码检查过程可以与内部代码验证要求联系在一起,其中多个指定的检查者必须在现场部署代码之前检查并签核新的控制代码。这种虚拟代码检查的实现可以由在客户存储库324上定义和存储的用户定义的检查策略来驱动。
在一些实施方式中,IDH存储库***202可以阻止控制项目306的部署,直到由代码检查策略定义的所有指定检查者都收到了所有适当的批准。例如,对于给定的工业企业已定义的检查策略可以定义工厂的安全管理者和工厂主管工程师必须在新的代码在工厂车间投入使用之前批准新的控制代码。因此,模拟部件218和仿真部件216可以在该新的控制代码的控制下模拟工业资产(如由虚拟化工厂1802定义的)的操作,如上面结合图8和图18所描述的,并且用户接口部件204可以允许检查者单独或同时观察该模拟的操作。如果对新的控制代码的操作感到满意,则每个检查者可以经由用户接口部件204向***202提交对新代码的批准(例如,以数字签名的形式,如上面结合图10所描述的),并且这些批准与控制项目306相关联地存储在分配给工厂的客户存储库324上。IDH存储库***202可以阻止控制项目306的调试(例如,上面结合图13描述的调试过程),直到已经接收到由内部代码检查策略定义的所有所需批准。
在另一示例中,多用户模拟环境可以用于执行由OEM正在为客户提议的所提议的自动化***设计(例如,机械***和相关联的控制***)的虚拟预排(walk-through)。在这种场景下,OEM可以使用存储库***202支持的设计工具来生成表示所提议的自动化***的虚拟化工厂1802和用于监视和控制自动化***的相应控制项目306。在开始构建自动化***之前,OEM和正在为其构建***的工厂的人员可以同时与虚拟化工厂1802交互,并在虚拟环境内观察所提议的自动化***的模拟操作,从而为客户提供在自动化***的构建开始之前提供反馈或提出设计更改的机会。
多用户模拟也可以与操作员训练结合使用。例如,受训操作员可以与训练员一起与虚拟化环境对接,并且可以通过虚拟化工厂环境内的存储库***202来模拟不同的操作员训练场景。在这样的实施方式中,可以在客户存储库324中定义各种训练场景(例如,需要操作员干预的警报或停工期情况),并且模拟部件218可以被配置成在模拟VR环境内虚拟地制定这些场景。同时进行的多用户模拟可以允许训练员在虚拟化环境内提供指导和反馈。
虚拟环境还可以用于执行维护或升级动作的虚拟确认。例如,维护人员可以向控制器代码提交提议的更改(例如,如上面结合图11所讨论的那样,作为新的项目版本),并且其他人可以在允许将修改后的代码委派给工业控制器进行执行之前访问存储库***202以验证提议的更改。在一些实施方式中,模拟部件218还可以被配置成相对于虚拟化工厂1802对修改后的代码执行预测(或“假设”)分析,以预测将由于调试修改后的代码而引起的自动化***的操作变化,并基于这些预测结果为进一步的代码修改生成推荐。可以基于用于评估新控制项目的类似标准生成这些推荐(例如,推荐702),包括与已定义的项目标准的偏离、不正确的控制代码格式化、代码修改对设备的生命周期的影响、可以改进或简化正在实现的控制修改的未使用设备特征的识别或其他这样的标准。
模拟部件218的一些实施方式还可以被配置成通过模拟针对项目的各种压力测试场景来测试新的或修改的控制项目306。这可以包括模拟如部件故障(例如,预测***对阀故障的响应)、不正确或不足的操作员工作流程(例如,如果操作员对关键事件的反应太慢而预测结果)的这样的场景或其他这样的场景。基于对***对这样的压力测试场景的响应的推断,模拟部件218可以生成用于以更好地预见故障场景并缓解响应于这样的场景的不良结果的方式修改控制项目306的推荐。
在部署完成的项目修改之后,模拟部件218可以执行集中在对项目的修改上的后续模拟,使得模拟将实际机器响应与先前预期的因代码更改而产生的响应进行比较。用户接口部件204可以突出显示在递送给可穿戴仪器2002的VR或AR演示中的任何这样的偏离。如果项目或代码修改仅影响工厂的有限部分(例如,单个机器),则模拟部件218在这种场景下可以仅执行对虚拟化工厂1802的部分模拟,从而仅将模拟集中在工厂的受影响部分以及与受影响部分有关的任何必要上下文上。模拟部件218可以基于对控制项目修改的范围的确定来确定该后续模拟的范围。
在一些实施方式中,IDH存储库***202还可以使用虚拟化工厂1802作为与物理***进行远程交互的平台。图21是示出其中可以经由IDH存储库***202远程查看和控制在工厂环境内操作的工业资产2102的架构的图。在部署控制项目306之后,设备接口部件220可以获得由工业资产2102在运行期间生成的上下文处理的数据1904。该上下文处理的数据1904可以表示工业资产2102随时间的操作数据或状态数据,并且可以由智能网关设备1202收集、上下文处理并流式传输至存储库***202,如上面结合图19所描述的。基于该接收到的上下文处理的数据和虚拟化工厂1802(包括一个或更多个数字孪生810),用户接口部件204可以将工业资产的操作的基本上实时的可视化2010递送给被授权访问工厂数据的被授权的客户端设备2004。这些可视化可以包括例如递送给可穿戴仪器并包括由虚拟化工厂1802定义并根据实时上下文处理的数据1904进行动画处理的动画三维虚拟环境的VR演示。可以通过表示这些资产并包括在虚拟化工厂1802中的数字孪生810来定义与上下文处理的数据1904的它们的相应子集同步的各种工业资产2102的动画行为。可视化2010还可以在这些VR环境内将上下文处理的数据1904的选定子集叠加在相关资产表示(例如,表示速度、流量、压力、产品吞吐量等的值)以及由模拟部件218生成的计算或预测的性能度量上或附近。在一些实施方式中,作为字母数字或图标信息覆盖的替选方案,可视化2010可以使用聊天机器人来在模拟期间提供口头音频反馈。
如果用户位于工厂设施内并且正在通过用作客户端设备2004的可穿戴仪器查看工业资产,则可视化2010可以包括AR演示,该AR演示在用户的视场内叠加相关状态信息和性能统计,使得将信息在视场内定位在相关工业资产上或附近。作为VR或AR演示的替选方案,可视化2010可以包括在另一类型的客户端设备2004的显示器上呈现的二维演示。
除了允许远程查看工业资产2102的操作或性能统计之外,存储库***202还可以允许从客户端设备2004向自动化***的远程命令2012的受管制发布。可以经由存储库***202从客户端设备2004发起的远程命令2012可以包括但不限于控制设定点修改、启动或停止机器的指令、改变机器的当前操作模式的指令或其他这样的命令。在基于VR的可视化的情况下,可以经由用户与相关工业资产或其相应控制面板的虚拟化表示的交互(例如,与虚拟控制面板I/O设备或HMI的交互)来发出这些远程命令2012。响应于接收到这样的远程命令2012,模拟部件218可以基于对接收到的命令是否被允许在给定当前情况下远程发布的确定来允许或拒绝向相关工厂车间设备发布控制命令2008。在决定是否发布所请求的控制命令2008时存储库***202可以考虑的因素可以包括例如发布远程命令2012的人的授权凭证、对目标机器是否处于允许安全地发布控制命令2008的状态的确定、关于允许远程发布哪些类型的控制命令2008的定义的规定(其可以作为工厂标准314或其他这样的标准的一部分存储在客户存储库324上)。
此外,对于一些类型的远程交互(例如,远程命令2012的发布或控制项目更改的远程部署),安全考虑可能需要存储库***202确认试图经由云平台执行远程交互的人员在工厂内的如下位置:在发起所请求的操作之前为受影响的工业资产2102提供清晰的视线可见性。例如,如果用户正试图经由存储库***202来升级工业设备上的固件、实现对控制编程的更改或发布某种类型的远程命令2012,则设备接口可以首先将用户的地理位置信息与有关受影响的工业资产的已知位置信息进行关联,并且将拒绝发布用户当前位置的所请求的交互不在相对于该资产的定义区域内,已知定义区域以允许对资产的清晰可见性。哪些类型的远程交互需要对资产的清晰视线的定义可以存储为工厂标准314的一部分,并且可以包括在实现时具有一定程度的引起机器损坏或伤害的风险的远程操作,并且因此在执行交互时用户应直接在视觉上对其进行监视。
图22a至图23示出了根据本申请的一个或更多个实施方式的各种方法。尽管出于简化说明的目的,本文中示出的一个或更多个方法被示出和描述为一系列动作,但是应理解和意识到,本发明不受动作顺序的限制,因为一些动作可以据此以与本文中示出和描述的顺序不同的顺序和/或与其他动作同时发生。例如,本领域技术人员将理解并认识到,方法可以可替选地例如在状态图中表示为一系列相互关联的状态或事件。此外,可能不是需要所有示出的动作来实现根据本发明的方法。此外,当不同的实体制定方法的不同部分时,交互图可以表示根据本公开内容的方法或方法。此外,可以彼此组合地实现所公开的示例方法中的两个或更多个,以实现本文中所述的一个或更多个特征或优点。
图22a示出了用于生成和利用工业自动化***或环境的数字孪生的示例方法2200a的第一部分。最初,在2202处,在基于云的工业开发中心(IDH)存储库***处接收控制项目。控制项目可以由客户(例如,控制项目在其处运行的工厂设施处的被授权人员)加载以进行归档或分析,或者可以作为备份和恢复过程的一部分自动归档到存储库***。控制项目包括用于对工厂设施处的工业控制***进行编程和配置的控制编程和设备配置数据。
在2204处,基于对在步骤2202处接收到的控制项目的分析,由存储库***识别构成将由工业控制***监视和控制的自动化***的工业资产。这些资产可以包括但不限于工业控制器、连接至工业控制器的I/O的输入设备和输出设备、传感器、遥测设备、马达、马达驱动器、机器、控制面板、安全继电器或其他安全设备、工业机器人或其他这样的工业资产。在2206处,由存储库***识别在步骤2204处发现的工业资产之间的物理和功能关系。
在2208处,确定在存储库***的特定于供应商的存储库中是否可得到与在步骤2204处发现的工业资产相对应的数字设备简档。每个设备简档可以包括给定工业资产的功能规范,包括但不限于资产的类型、设备的可用I/O、可用的配置参数或功能、可用的存储器或处理能力、电力要求、生命周期信息、响应时间、物理尺寸、联网能力、操作限制(例如,环境要求,例如设备额定的环境温度)或关于工业资产的其他这样的信息。
如果对于发现的工业资产中的一个或更多个可得到数字设备简档(步骤2208中为“是”),则方法进行到步骤2210,在步骤2210中,基于从控制项目获得的设备配置数据和设备简档生成表示工业资产的数字资产模型。可以基于设备简档以及从控制项目获得的关于相应工业资产的专用配置数据来生成这些资产模型。所得的资产模型定义其相应工业资产的外观、属性和行为。建模的属性和行为可以包括三维动画属性以及可以用于模拟资产在各种控制条件下的行为的物理属性(例如,摩擦、惯性、移动程度等)。在2212处,基于在步骤2210处生成的任何资产模型以及在步骤2206处识别的物理和功能关系来生成自动化***的数字孪生。
然后,该方法进行到图22b中示出的第二部分2200b。在2214处,基于数字孪生来模拟自动化***在控制项目的控制下的操作。如果由设计的控制项目控制,则模拟可以生成自动化***的预测性能度量。在2216处,基于模拟生成自动化***在控制项目的控制下的预测性能度量。在2218处,基于模拟,确定关于任何性能度量是否是非最优的并且是否可以通过修改控制项目的各方面来改进。如果识别出这样的非最优性能度量(步骤2218处为“是”),则该方法进行到步骤2220,在步骤2220中,由存储库***呈现对控制项目进行修改的推荐,其中对所推荐的修改进行预测以使性能度量在所需范围内。可以推荐的示例修改可以包括例如对一个或更多个控制设备的配置参数设置的修改、对控制序列的更改、利用工业资产之一的当前未使用的特征的推荐、用具有不同性能特征的类似设备替换工业设备的推荐或其他这样的推荐。如果没有识别出非最优性能度量(步骤2218处为“否”),则继续步骤2214至2218,直到模拟停止。
在在步骤2212处生成数字孪生之后,数字孪生还可以用于在工业设施中委托控制项目以进行执行之前,将自动化***的模拟操作展现给多个用户作为虚拟预排和批准过程的一部分。图22c中描绘的示例方法的第三部分2200c示出了该过程。在2222处,类似于步骤2214,基于数字孪生来模拟自动化***在控制项目的控制下的操作。在2224处,在一个或更多个客户端设备上呈现模拟的虚拟现实(VR)演示。在一些场景中,此VR演示可以作为自动化***的多用户虚拟预排的一部分呈现在多个客户端设备上,从而允许用户在三维虚拟环境中观察自动化***的模拟操作。VR演示还可以在虚拟化环境内呈现构成自动化***的机器、站或生产区域的操作统计或状态信息(例如,产品吞吐量、压力、温度、循环时间等)。该模拟还可以估计机器停工期的频率,预测一个或更多个工作站处零件拥塞的情况,或识别自动化***或控制项目设计的其他潜在问题,以及呈现关于这些问题的指示和信息。
在2226处,确定在允许委派控制项目之前是否需要批准控制项目。该确定可以基于管理员是否已经定义了对控制***的部署的约束,使得***的调试取决于从一个或更多个已定义的机构(例如,安全工程师、工厂工程师、工厂管理者、值班主管等)接收批准。如果需要这样的批准(步骤2226处为“是”),则方法进行到步骤2228,在步骤2228中,确定是否已接收到所有必要的批准。在一些实施方式中,可以经由VR演示内的交互在存储库***处接收批准。在这样的实施方式中,存储库***可以基于与用户的客户端设备相关联的凭证来确定提交批准的用户是否是指定的批准机构。此外,在一些实施方式中,用户可以在自动化***的各个方面(例如,各个机器)而不是整个自动化***上提交批准,并且一旦所有指定机构都批准了自动化***的所有各个方面,控制***将被视为已批准进行调试。
如果尚未接收到所有必要的批准(步骤2228处为“否”),则该方法继续等待,直到接收到所有批准。一旦已经接收到所有批准(步骤2228处为“是”),则方法进行到步骤2230,在步骤2230中,允许将控制项目部署到物理自动化***。如果不需要控制项目的批准(步骤2226处为“否”),则该方法直接进行到步骤2230,而无需等待接收批准。
图23示出了用于经由在云平台上模拟的虚拟化工厂来处理针对自动化***的远程发布的控制命令的示例方法2300。最初,在2302处,生成虚拟化工厂,该虚拟化工厂包括构成工业环境的相应的一个或更多个工业资产的一个或更多个数字孪生。在一些实施方式中,虚拟化工厂可以包括使用方法2200a生成的一个或更多个数字孪生。在2304处,基于在步骤2302处生成的虚拟工厂在云平台上执行工业环境的虚拟模拟。
在2306处,在与云平台通信连接的客户端设备(例如,可穿戴仪器或其他类型的客户端设备)上呈现虚拟模拟的VR演示。虚拟模拟可以由在云平台处从构成由虚拟化工厂建模的工业环境的物理工业资产接收的实时操作和状态数据驱动,使得VR演示基本上反映了工业资产的实时操作。
在2308处,确定是否经由用户与VR演示的交互从客户端设备接收到针对工业环境内的自动化***的远程命令。如果接收到这样的远程命令(步骤2308处为“是”),则方法进行到步骤2310,在步骤2310中,确定是否满足用于向自动化***发布远程命令的条件。部署远程命令的示例条件可以包括例如发布命令时对用户位置的限制(例如,确定用户是否在距自动化***的定义距离之内或者位于提供向自动化***的直接视线的位置)、自动化***的当前操作模式或状态、在发布命令时没有人员在距自动化***的定义距离内的要求或其他这样的条件。如果满足用于发布远程命令的条件(步骤2310处为“是”),则方法进行到步骤2312,在步骤2312中,经由云平台将该命令发布到自动化***。可替选地,如果不满足条件(步骤2310处为“否”),则不向物理***发布命令。
本文中描述的实施方式、***和部件以及其中可以执行本说明书中阐述的各个方面的控制***和自动化环境可以包括能够跨网络进行交互的计算机或网络部件,例如服务器、客户端、可编程逻辑控制器(PLC)、自动化控制器、通信模块、移动计算机、用于移动车辆的车载计算机、无线部件、控制部件等。计算机和服务器包括被配置成执行存储在介质中的指令的一个或更多个处理器,处理器为采用电信号执行逻辑操作的电子集成电路,介质诸如为随机存取存储器(RAM)、只读存储器(ROM)、硬盘驱动器以及可移除存储器设备,可移除存储器设备可以包括记忆棒、存储卡、闪存驱动器、外部硬盘驱动器等。
类似地,本文中所使用的术语PLC或自动化控制器可以包括可以跨多个部件、***和/或网络共享的功能。作为示例,一个或更多个PLC或自动化控制器可以跨网络与各种网络设备进行通信和协作。这基本上可以包括经由网络进行通信的任何类型的控制装置、通信模块、计算机、输入/输出(I/O)设备、传感器、致动器和人机接口(HMI),所述网络包括控制网络、自动化网络和/或公共网络。PLC或自动化控制器还可以与各种其他设备进行通信并且控制各种其他设备,所述各种其他设备例如标准或安全等级的I/O模块,包括模拟模块、数字模块、编程/智能I/O模块、其他可编程控制器、通信模块、传感器、致动器、输出设备等。
网络可以包括公共网络,例如因特网、内联网以及自动化网络,例如控制和信息协议(CIP)网络,包括设备网(DeviceNet)、控制网(ControlNet)、安全网络以及以太网/IP。其他网络包括以太网、DH/DH+、远程I/O、现场总线、Modbus、过程现场总线(Profibus)、CAN、无线网络、串行协议、开放平台通信统一架构(OPC-UA)等。另外,网络设备可以包括各种可能性(硬件和/或软件部件)。这些包括以下部件:诸如具有虚拟局域网(VLAN)能力的交换机、LAN、WAN、代理、网关、路由器、防火墙、虚拟专用网(VPN)设备、服务器、客户端、计算机、配置工具、监视工具和/或其他设备。
为了提供所公开主题的各个方面的情境,图24和图25以及以下讨论旨在提供对可以实现所公开主题的各方面的适当环境的简要的一般性描述。尽管以上在可以在一个或更多个计算机上运行的计算机可执行指令的一般情境中描述了实施方式,但是本领域技术人员将认识到,也可以组合其他程序模块和/或作为软件和硬件的组合来实现实施方式。
通常,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、部件、数据结构等。此外,本领域技术人员将理解,可以利用其他计算机***配置来实践本发明的方法,其他计算机***配置包括单处理器或多处理器计算机***、小型计算机、大型计算机、物联网(IoT)设备、分布式计算***、以及个人计算机、手持计算设备、基于微处理器的或可编程的消费性电子产品等,上述中的每个均可以可操作地耦接至一个或更多个相关联的设备。
本文中示出的实施方式也可以在分布式计算环境中实践,其中某些任务由通过通信网络链接的远程处理设备执行。在分布式计算环境中,程序模块可以位于本地和远程存储器存储设备二者中。
计算设备通常包括各种介质,各种介质可以包括计算机可读存储介质、机器可读存储介质和/或通信介质,这两个术语在本文中如下彼此不同地使用。计算机可读存储介质或者机器可读存储介质可以是能够由计算机访问的任何可用存储介质,并且包括易失性介质和非易失性介质、可移除介质和不可移除介质。作为示例而非限制,可以结合用于存储诸如计算机可读指令或机器可读指令、程序模块、结构化数据或非结构化数据的信息的任何方法或技术来实现计算机可读存储介质或机器可读存储介质。
计算机可读存储介质可以包括但不限于:随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、闪存或其他存储器技术、光盘只读存储器(CD-ROM)、数字通用光盘(DVD)、蓝光光盘(BD)或其他光盘存储装置、磁带盒、磁带、磁盘存储设备或其他磁存储设备、固态驱动器或其他固态存储设备、或其他可以用于存储所需信息的有形和/或非暂态介质。在这一方面,应当将本文中应用于存储装置、存储器或计算机可读介质的术语“有形”或“非暂态”理解为作为修饰语仅排除传播暂态信号本身,并且不放弃不是仅传播暂态信号本身的所有标准存储装置、存储器或计算机可读介质的权利。
可以通过一个或更多个本地或远程计算设备——例如,针对关于由介质存储的信息的多种操作,经由访问请求、查询或其他数据检索协议——来访问计算机可读存储介质。
通信介质通常在诸如调制数据信号例如载波或其他传输机制的数据信号中实施计算机可读指令、数据结构、程序模块或其他结构化或非结构化数据,并且包括任何信息递送或传输介质。术语“调制数据信号”或信号是指以将信息编码在一个或更多个信号中的方式设置或改变其特性中的一个或更多个特性的信号。作为示例而非进行限制,通信介质包括有线介质例如有线网络或直接有线连接以及无线介质例如声学、RF、红外以及其他无线介质。
再次参照图24,用于实现本文中描述的方面的各种实施方式的示例环境2400包括计算机2402,计算机2402包括处理单元2404、***存储器2406以及***总线2408。***总线2408将***部件耦接至处理单元2404,***部件包括但不限于***存储器2406。处理单元2404可以是各种商业可用处理器中的任何处理器。双微处理器和其他多处理器架构也可以用作处理单元2404。
***总线2408可以是以下若干类型总线结构中的任一种:其还可以使用多种商业可用总线架构中的任一种互连至存储器总线(具有或不具有存储器控制器)、***总线以及本地总线。***存储器2406包括ROM 2410和RAM 2412。基本输入/输出***(BIOS)可以存储在非易失性存储器,例如ROM、可擦除可编程只读存储器(EPROM)、EEPROM中,该BIOS包含例如在启动期间帮助在计算机2402内的元件之间传输信息的基本例程。RAM 2412还可以包括高速RAM,例如用于缓存数据的静态RAM。
计算机2402还包括内部硬盘驱动器(HDD)2414(例如,EIDE、SATA)、一个或更多个外部存储设备2416(例如,磁软盘驱动器(FDD)2416、存储棒或闪存驱动器读取器、存储卡读取器等)以及光盘驱动器2420(例如,其可以从CD-ROM盘、DVD、BD等进行读取或写入)。虽然内部HDD 2414被示出为位于计算机2402内,但是内部HDD 2414也可以被配置用于在合适的机箱(未示出)的外部使用。另外,虽然在环境2400中未示出,但除了HDD 2414之外还可以使用固态驱动(SSD)或者代替HDD2414使用固态驱动(SSD)。HDD 2414、外部存储设备2416以及光盘驱动器2420可以分别通过HDD接口2424、外部存储接口2426和光盘驱动器接口2428连接至***总线2408。用于外部驱动实现方式的接口2424可以包括通用串行总线(USB)和电气与电子工程师协会(IEEE)1394接口技术中的至少之一或两者。其他外部驱动连接技术在本文中描述的实施方式的考虑之内。
驱动器及其关联的计算机可读存储介质提供数据、数据结构、计算机可执行指令等的非易失性存储。对于计算机2402,驱动和存储介质以适当的数字格式适应任何数据的存储。尽管上面对计算机可读存储介质的描述是指各类型的存储设备,但是本领域技术人员应当理解,计算机可读的其他类型的存储介质,无论是当前存在的还是将来开发的,也可以在示例操作环境中使用,并且此外,任何这样的存储介质可以包含用于执行本文中描述的方法的计算机可执行指令。
在驱动器和RAM 2412中可以存储多个程序模块,包括操作***2430、一个或更多个应用程序2432、其他程序模块2434以及程序数据2436。操作***、应用、模块和/或数据中的全部或部分也可以缓存在RAM2412中。可以使用各种商业上可用的操作***或操作***的组合来实现本文中描述的***和方法。
计算机2402可以可选地包括仿真技术。例如,管理程序(未示出)或其他中间物可以仿真用于操作***2430的硬件环境,并且仿真的硬件可以可选地不同于图24中所示的硬件。在这样的实施方式中,操作***2430可以包括在计算机2402处托管的多个虚拟机(VM)中的一个VM。此外,操作***2430可以为应用程序2432提供诸如Java运行时间环境或.NET框架的运行时间环境。运行时间环境是一致的执行环境,其允许应用程序2432在包括运行时间环境的任何操作***上运行。类似地,操作***2430可以支持容器,并且应用程序2432可以呈容器的形式,其是轻量级的、独立的、可执行的软件包,该软件包包括例如代码、运行时间、***工具、***库以及应用的设置。
此外,可以利用诸如受信任处理模块(TPM)的安全模块来启用计算机2402。例如,利用TPM,引导部件在时间上散列(hash)接下来的引导部件,并且在加载接下来的引导部件之前等待结果与安全值的匹配。该处理可以发生在计算机2402的代码执行栈中的任何层处,例如在应用执行级或在操作***(OS)内核级处应用,从而实现代码执行的任何级处的安全性。
用户可以通过一个或更多个有线/无线输入设备(例如,键盘2438、触摸屏2440和诸如鼠标2442的定点设备)将命令和信息输入到计算机2402中。其他输入设备(未示出)可以包括麦克风、红外(IR)遥控器、射频(RF)遥控器或其他遥控器、操纵杆、虚拟现实控制器和/或虚拟现实耳机、游戏手柄、触控笔、诸如摄像装置的图像输入设备、姿势传感器输入设备、视觉移动传感器输入设备、情绪或面部检测设备、诸如指纹或虹膜扫描仪的生物特征输入设备等。这些和其他输入设备通常通过可以耦接至***总线2408的输入设备接口2444连接至处理单元2404,但是也可以通过其他接口连接,例如并行端口、IEEE 1394串行端口、游戏端口、USB端口、IR接口、接口等。
监视器2444或其他类型的显示设备也可以经由诸如视频适配器2446的接口连接至***总线2408。除了监视器2444之外,计算机通常还包括其他***输出设备(未示出),例如扬声器、打印机等。
计算机2402可以经由至诸如远程计算机2448的一个或更多个远程计算机的有线和/或无线通信、使用逻辑连接在联网环境中进行操作。远程计算机2448可以为工作站、服务器计算机、路由器、个人计算机、便携式计算机、基于微处理器的娱乐仪器、对等设备或其他常见网络节点,并且通常包括关于计算机2402所描述的许多或所有元件,然而为了简洁起见,仅示出了存储器/存储设备2450。所描绘的逻辑连接包括与局域网(LAN)2452和/或更大的网络例如广域网(WAN)2454的有线/无线连接。这样的LAN和WAN联网环境在办公室以及公司中很常见,并且促进诸如内部网的企业范围的计算机网络,所有这些都可以连接至全球通信网络,例如因特网。
当在LAN联网环境中使用时,计算机2402可以通过有线和/或无线通信网络接口或适配器2456连接至本地网络2452。适配器2456可以促进与LAN 2452的有线或无线通信,LAN2452还可以包括布置在其上的用于以无线模式与适配器2456进行通信的无线接入点(AP)。
当在WAN联网环境中使用时,计算机2402可以包括调制解调器2458,或者可以经由用于通过WAN 2454建立通信的其他手段(例如通过因特网)连接至WAN 2454上的通信服务器。可以是内部或外部以及有线或无线设备的调制解调器2458可以经由输入设备接口2442连接至***总线2408。在联网环境中,相对于计算机2402或其部分描绘的程序模块可以被存储在远程存储器/存储设备2450中。将理解的是,所示的网络连接是示例,并且可以使用在计算机之间建立通信链接的其他手段。
当在LAN或WAN联网环境中使用时,除了上述外部存储设备2416之外,计算机2402还可以访问云存储***或其他基于网络的存储***,或代替上述外部存储设备2416来访问云存储***或其他基于网络的存储***。通常,可以例如分别通过适配器2456或调制解调器2458来通过LAN 2452或WAN 2454建立计算机2402与云存储***之间的连接。在将计算机2402连接至相关联的云存储***时,外部存储接口2426可以在适配器2456和/或调制解调器2458的帮助下,如管理其他类型的外部存储一样管理由云存储***提供的存储。例如,外部存储接口2426可以被配置成提供对云存储源的访问,就好像这些源物理地连接至计算机2402一样。
计算机2402可以是可操作的以与操作上以无线通信布置的任何无线设备或实体进行通信,例如打印机、扫描仪、台式计算机和/或便携式计算机、便携式数据助理、通信卫星、与可无线检测的标签相关联的任何装备或位置(例如信息亭、报摊、商店货架等)以及电话。这可以包括无线保真(Wi-Fi)和无线技术。因此,通信可以是如常规网络的预定义结构或者仅是至少两个设备之间的自组织通信。
图25是可以与所公开的主题交互的样本计算环境2500的示意性框图。样本计算环境2500包括一个或更多个客户端2502。客户端2502可以是硬件和/或软件(例如线程、进程、计算设备)。样本计算环境2500还包括一个或更多个服务器2504。服务器2504也可以是硬件和/或软件(例如,线程、进程、计算设备)。例如,服务器2504可以容纳线程以通过采用本文中所述的一个或更多个实施方式来执行转换。客户端2502与服务器2504之间的一种可能的通信可以是适于在两个或更多个计算机进程之间传输的数据包的形式。样本计算环境2500包括通信框架2506,其可以用于便于客户端2502与服务器2504之间的通信。客户端2502可操作地连接至一个或更多个客户端数据存储器2508,客户端数据存储器2508可以用于将信息本地存储至客户端2502。类似地,服务器2504可操作地连接至一个或更多个服务器数据存储器2510,服务器数据存储器2510可以用于将信息本地存储至服务器2504。
上面已经描述的内容包括主题创新的示例。出于描述所公开的主题的目的,当然不可能描述每种都能想到的部件或方法的组合,但本领域普通技术人员可以认识到,本发明的许多更多组合和排列也是可以的。因此,所公开的主题旨在包含落在所附权利要求的精神和范围内的所有这样的改变、修改和变型。
特别地以及关于由上述部件、设备、电路、***等执行的各种功能,用于描述这样的部件的术语(包括对“手段”的提及)旨在:除非另有说明,否则即使在结构上不等同于在所公开主题的本文示出的示例方面中执行功能的所公开的结构,仍然对应于执行所描述的部件的特定功能的任何部件(例如,功能等同)。在这方面,还将认识到,所公开的主题包括***以及具有用于执行所公开主题的各种方法的动作和/或事件的计算机可执行指令的计算机可读介质。
此外,虽然所公开的主题的特定特征可能仅针对若干实现方式中的一种来公开,但是这样的特征可以如可以期望的并且对于任何给定或特定应用有利的那样与其他实现方式的一个或更多个其他特征组合。此外,在说明书或权利要求书使用术语“包括(includes)”和“包含(including)”及其变型方面而言,这些术语旨在以与术语“包括(comprising)”类似的方式包含在内。
在本申请中,词语“示例性”用于表示用作示例、实例或说明。在本文中被描述为“示例性”的任何方面或设计未必被解释为比其他方面或设计优选或有利。相反地,使用词语“示例性”旨在以具体的方式来呈现概念。
本文中所描述的各个方面或特征可以使用标准编程和/或工程技术来实现为方法、设备或制品。本文中所使用的术语“制品”旨在包含能够从任何计算机可读设备、载体或介质访问的计算机程序。例如,计算机可读介质可以包括但不限于磁存储设备(例如,硬盘、软盘、磁条等)、光盘(例如,致密盘(CD)、数字通用盘(DVD)等)、智能卡和闪速存储设备(例如,卡、棒、键驱动器等)。
Claims (20)
1.一种用于设计和测试工业控制项目的***,包括:
存储器,其存储可执行部件;以及
处理器,其操作上耦接至所述存储器,所述处理器执行所述可执行部件,所述可执行部件包括:
用户接口部件,其被配置成经由云平台接收工业控制项目,所述工业控制项目至少包括控制编程和设备配置数据,所述控制编程和设备配置数据响应于在一个或更多个工业设备上的执行而便于工业自动化***的监视和控制;
项目分析部件,其被配置成识别所述工业控制项目中定义的一个或更多个工业资产,并生成表示所述工业资产的相应的一个或更多个数字资产模型;以及
模拟部件,其被配置成生成所述工业自动化***的数字孪生,其中,所述数字孪生包括所述一个或更多个数字资产模型。
2.根据权利要求1所述的***,其中,所述模拟部件被配置成基于数字设备模型来生成所述一个或更多个数字资产模型,所述数字设备模型与所述一个或更多个工业资产相对应并从与所述一个或更多个工业资产的供应商相关联的供应商存储库中检索到。
3.根据权利要求2所述的***,其中,
数字资产模型为其相应的工业资产定义视觉表示和功能规范数据,以及
所述模拟部件被配置成使用从所述工业控制项目获得的设备配置数据来定制所述数字资产模型以产生所述数字资产模型。
4.根据权利要求1所述的***,其中,
所述模拟部件被配置成执行包括所述数字孪生的虚拟化工厂的模拟,以及
所述模拟模拟所述自动化***在所述工业控制项目的控制下的控制。
5.根据权利要求4所述的***,其中,
所述虚拟化工厂包括两个或更多个数字孪生,以及
所述两个或更多个数字孪生至少包括具有第一程度的保真度的第一数字孪生和具有高于所述第一程度的保真度的第二程度的保真度的第二数字孪生。
6.根据权利要求4所述的***,其中,所述模拟部件还被配置成:
基于所述模拟的结果生成所述工业控制项目的预测的性能度量,以及
生成对所述工业控制项目的修改的推荐,所述修改被预测将使所述性能度量之一的值处于定义的范围内。
7.根据权利要求6所述的***,其中,所述定义的范围由存储在所述云平台的客户存储库上的功能设计规范指定。
8.根据权利要求4所述的***,其中,所述用户接口部件还被配置成生成所述虚拟化工厂的虚拟现实演示,所述虚拟现实演示在三维虚拟现实环境内使所述模拟可视化,并且所述用户接口部件被配置成在客户端设备上呈现所述虚拟现实演示。
9.根据权利要求4所述的***,其中,所述用户接口部件被配置成经由所述云平台从所述***的一个或更多个授权用户接收对所述工业控制项目的批准的指示,并在所述云平台上与所述工业控制项目相关联地维护所述批准的记录。
10.根据权利要求9所述的***,还包括设备接口部件,所述设备接口部件被配置成将所述工业控制项目从所述云平台部署到所述一个或更多个工业设备以进行执行。
11.根据权利要求10所述的***,其中,所述设备接口部件被配置成:在从所述一个或更多个授权用户接收到对所述工业控制项目的批准之前,防止将所述工业控制项目从所述云平台部署到所述一个或更多个工业设备。
12.根据权利要求1所述的***,还包括设备接口部件,所述设备接口部件被配置成从构成所述工业自动化***的工业资产接收操作数据,并基于所述操作数据更新所述数字孪生。
13.一种用于设计和测试工业控制项目的方法,包括:
由在云平台上执行的包括处理器的***接收工业控制项目,所述工业控制项目至少包括控制编程和设备配置数据,所述控制编程和设备配置数据响应于在一个或更多个工业设备上的执行而便于工业自动化***的监视和控制;
由所述***基于对所述工业控制项目的分析来识别所述工业控制项目中定义的一个或更多个工业资产,并生成表示所述工业资产的相应的一个或更多个数字资产模型;以及
由所述***基于所述一个或更多个数字资产模型生成所述工业自动化***的数字孪生。
14.根据权利要求13所述的方法,其中,所述生成包括:
从与所述一个或更多个工业资产的供应商相关联的供应商存储库中检索与所述一个或更多个工业资产相对应的一个或更多个数字设备模型;以及
基于所述数字设备模型生成所述一个或更多个数字资产模型。
15.根据权利要求14所述的方法,其中,
所述数字资产模型为其相应的工业资产定义视觉表示和功能规范数据,以及
所述生成还包括使用从所述控制项目获得的设备配置数据来定制所述数字资产模型以产生所述数字资产模型。
16.根据权利要求13所述的方法,还包括由所述***执行对包括所述数字孪生的虚拟化工厂的模拟,其中,所述模拟模拟所述自动化***在所述控制项目的控制下的控制。
17.根据权利要求16所述的方法,还包括:
由所述***基于所述模拟的结果生成所述控制项目的预测的性能度量,以及
由所述***生成对所述控制项目的修改的推荐,所述修改被预测将使所述性能度量之一的值处于定义的范围内。
18.根据权利要求16所述的方法,还包括:
由所述***生成所述虚拟化工厂的虚拟现实演示,所述虚拟现实演示在三维虚拟现实环境内使所述模拟可视化;以及
由所述***在客户端设备上呈现所述虚拟现实演示。
19.一种非暂态计算机可读介质,其上存储有指令,所述指令响应于执行而使在云平台上执行并且包括处理器的***执行以下操作,所述操作包括:
经由云平台接收工业控制项目,所述工业控制项目至少包括控制编程和设备配置数据,所述控制编程和设备配置数据响应于在一个或更多个工业设备上的执行而便于工业自动化***的监视和控制;
基于对所述工业控制项目的分析来识别所述工业控制项目中定义的一个或更多个工业资产,并生成表示所述工业资产的相应的一个或更多个数字资产模型;以及
基于所述一个或更多个数字资产模型生成所述工业自动化***的数字孪生。
20.根据权利要求19所述的非暂态计算机可读介质,其中,所述生成包括:
从与所述一个或更多个工业资产的供应商相关联的供应商存储库中检索与所述一个或更多个工业资产相对应的一个或更多个数字设备模型;以及
基于所述数字设备模型生成所述一个或更多个数字资产模型。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/018,446 | 2020-09-11 | ||
US17/018,446 US20220083926A1 (en) | 2020-09-11 | 2020-09-11 | Digital engineering on an industrial development hub |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114167814A true CN114167814A (zh) | 2022-03-11 |
Family
ID=76584314
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110730406.5A Pending CN114167814A (zh) | 2020-09-11 | 2021-06-29 | 工业开发中心的数字工程 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20220083926A1 (zh) |
EP (1) | EP3968110A1 (zh) |
CN (1) | CN114167814A (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220309753A1 (en) * | 2021-03-25 | 2022-09-29 | B/E Aerospace, Inc. | Virtual reality to assign operation sequencing on an assembly line |
EP4254200A1 (en) * | 2022-03-31 | 2023-10-04 | Siemens Aktiengesellschaft | Method and system for eradicating programmatical errors from engineering programs in a technical installation |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090099832A1 (en) * | 2007-10-12 | 2009-04-16 | Edsa Micro Corporation | Systems and methods for automatically converting cad drawing files into intelligent objects with database connectivity for the design, analysis, and simulation of electrical power systems |
CN104144204A (zh) * | 2013-05-09 | 2014-11-12 | 洛克威尔自动控制技术股份有限公司 | 针对工业模拟使用基于云的数据 |
JP2017084224A (ja) * | 2015-10-30 | 2017-05-18 | 株式会社日立製作所 | 設計支援装置、プログラムおよび設計支援方法 |
US20170323274A1 (en) * | 2016-05-06 | 2017-11-09 | General Electric Company | Controlling aircraft operations and aircraft engine components assignment |
CN107832497A (zh) * | 2017-10-17 | 2018-03-23 | 广东工业大学 | 一种智能车间快速定制设计方法及*** |
US20180357334A1 (en) * | 2017-06-08 | 2018-12-13 | Rockwell Automation Technologies, Inc. | Discovery of relationships in a scalable industrial analytics platform |
US20190056715A1 (en) * | 2017-08-16 | 2019-02-21 | General Electric Company | Framework for rapid additive design with generative techniques |
US20190138667A1 (en) * | 2017-11-08 | 2019-05-09 | Veerum Inc. | Systems and methods for the digital verification of industrial construction execution |
US20190163215A1 (en) * | 2017-11-27 | 2019-05-30 | General Electric Company | Building energy modeling tool systems and methods |
EP3511824A1 (en) * | 2018-01-15 | 2019-07-17 | Siemens Aktiengesellschaft | Method and system of providing artifacts in a cloud computing environment |
CN110187686A (zh) * | 2019-06-03 | 2019-08-30 | 济南浪潮高新科技投资发展有限公司 | 一种基于数字孪生技术的物联网工业生产过程监控方法 |
EP3584751A1 (de) * | 2018-06-20 | 2019-12-25 | Siemens Aktiengesellschaft | Verfahren zum erstellen eines digitalen zwillings |
EP3663937A1 (en) * | 2018-12-03 | 2020-06-10 | Siemens Aktiengesellschaft | Cloud based information retrieval system for industrial automation environment |
CN111562769A (zh) * | 2019-02-14 | 2020-08-21 | 罗克韦尔自动化技术公司 | 用于工业数字孪生的ai扩展和智能模型验证 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10388075B2 (en) * | 2016-11-08 | 2019-08-20 | Rockwell Automation Technologies, Inc. | Virtual reality and augmented reality for industrial automation |
-
2020
- 2020-09-11 US US17/018,446 patent/US20220083926A1/en active Pending
-
2021
- 2021-06-17 EP EP21180071.9A patent/EP3968110A1/en active Pending
- 2021-06-29 CN CN202110730406.5A patent/CN114167814A/zh active Pending
Patent Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090099832A1 (en) * | 2007-10-12 | 2009-04-16 | Edsa Micro Corporation | Systems and methods for automatically converting cad drawing files into intelligent objects with database connectivity for the design, analysis, and simulation of electrical power systems |
CN104144204A (zh) * | 2013-05-09 | 2014-11-12 | 洛克威尔自动控制技术股份有限公司 | 针对工业模拟使用基于云的数据 |
CN108491626A (zh) * | 2013-05-09 | 2018-09-04 | 罗克韦尔自动化技术公司 | 进行工业自动化***的模拟的***、方法和存储介质 |
JP2017084224A (ja) * | 2015-10-30 | 2017-05-18 | 株式会社日立製作所 | 設計支援装置、プログラムおよび設計支援方法 |
US20170323274A1 (en) * | 2016-05-06 | 2017-11-09 | General Electric Company | Controlling aircraft operations and aircraft engine components assignment |
US20180357334A1 (en) * | 2017-06-08 | 2018-12-13 | Rockwell Automation Technologies, Inc. | Discovery of relationships in a scalable industrial analytics platform |
US20190056715A1 (en) * | 2017-08-16 | 2019-02-21 | General Electric Company | Framework for rapid additive design with generative techniques |
US20200249663A1 (en) * | 2017-10-17 | 2020-08-06 | Guangdong University Of Technology | Method and system for quick customized-design of intelligent workshop |
CN107832497A (zh) * | 2017-10-17 | 2018-03-23 | 广东工业大学 | 一种智能车间快速定制设计方法及*** |
US20190138667A1 (en) * | 2017-11-08 | 2019-05-09 | Veerum Inc. | Systems and methods for the digital verification of industrial construction execution |
US20190163215A1 (en) * | 2017-11-27 | 2019-05-30 | General Electric Company | Building energy modeling tool systems and methods |
EP3511824A1 (en) * | 2018-01-15 | 2019-07-17 | Siemens Aktiengesellschaft | Method and system of providing artifacts in a cloud computing environment |
EP3584751A1 (de) * | 2018-06-20 | 2019-12-25 | Siemens Aktiengesellschaft | Verfahren zum erstellen eines digitalen zwillings |
EP3663937A1 (en) * | 2018-12-03 | 2020-06-10 | Siemens Aktiengesellschaft | Cloud based information retrieval system for industrial automation environment |
CN111562769A (zh) * | 2019-02-14 | 2020-08-21 | 罗克韦尔自动化技术公司 | 用于工业数字孪生的ai扩展和智能模型验证 |
CN110187686A (zh) * | 2019-06-03 | 2019-08-30 | 济南浪潮高新科技投资发展有限公司 | 一种基于数字孪生技术的物联网工业生产过程监控方法 |
Also Published As
Publication number | Publication date |
---|---|
US20220083926A1 (en) | 2022-03-17 |
EP3968110A1 (en) | 2022-03-16 |
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 | |
CN114257609B (zh) | 用于提供工业信息服务的***、方法和计算机可读介质 | |
CN114137910B (zh) | 工业自动化资产和控制项目分析 | |
US12001874B2 (en) | Digital engineering secure remote access | |
US20230300140A1 (en) | Industrial automation secure remote access | |
EP4120067B1 (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 |