CN112558928B - 用于开发工业应用的系统和方法及非暂态计算机可读介质 - Google Patents

用于开发工业应用的系统和方法及非暂态计算机可读介质 Download PDF

Info

Publication number
CN112558928B
CN112558928B CN202010237332.7A CN202010237332A CN112558928B CN 112558928 B CN112558928 B CN 112558928B CN 202010237332 A CN202010237332 A CN 202010237332A CN 112558928 B CN112558928 B CN 112558928B
Authority
CN
China
Prior art keywords
industrial
data
project
presentation
design
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.)
Active
Application number
CN202010237332.7A
Other languages
English (en)
Other versions
CN112558928A (zh
Inventor
安德鲁·R·斯顿普
安东尼·卡拉拉
埃什沃·斯里尼瓦桑
克里斯托弗·W·科莫
沙伦·M·比利-杜兰
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 CN112558928A publication Critical patent/CN112558928A/zh
Application granted granted Critical
Publication of CN112558928B publication Critical patent/CN112558928B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/4185Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the network communication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/017Head mounted
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B15/00Systems controlled by a computer
    • G05B15/02Systems controlled by a computer electric
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0426Programming the control sequence
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/41885Total 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/33Intelligent editors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/35Creation or generation of source code model driven
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/36Software reuse
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/32Operator till task planning
    • G05B2219/32014Augmented reality assists operator in maintenance, repair, programming, assembly, use of head mounted display with 2-D 3-D display and voice feedback, voice and gesture command
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40131Virtual reality control, programming of manipulator
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/80Management or planning

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Business, Economics & Management (AREA)
  • Quality & Reliability (AREA)
  • Manufacturing & Machinery (AREA)
  • Human Computer Interaction (AREA)
  • Strategic Management (AREA)
  • Human Resources & Organizations (AREA)
  • Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Educational Administration (AREA)
  • General Business, Economics & Management (AREA)
  • Development Economics (AREA)
  • Computer Hardware Design (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Tourism & Hospitality (AREA)
  • Game Theory and Decision Science (AREA)
  • Computer Graphics (AREA)
  • Optics & Photonics (AREA)
  • Computer Security & Cryptography (AREA)
  • Programmable Controllers (AREA)
  • User Interface Of Digital Computer (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

提供了一种用于开发工业应用的系统和方法及非暂态计算机可读介质。工业集成开发环境(IDE)支持虚拟设计环境,该虚拟设计环境使得自动化系统设计人员能够经由与工厂设施的虚拟现实呈现进行交互来执行项目开发。工业设计环境可以基于开发人员与虚拟现实呈现的手动交互生成自动化项目的系统项目数据——包括但不限于设备选择、工业控制编程、设备配置、可视化、工程图等。这些交互可以包括例如使用手动手势或其他这样的交互输入来在虚拟化环境内放置和移动机器或其他工业资产、限定运动设备或机器人的轨迹。IDE系统将开发人员的交互解释为正在设计的自动化系统的设计规范,并将这些交互转换成控制代码、可视化、设备配置以及满足设计规范的其他系统方面。

Description

用于开发工业应用的系统和方法及非暂态计算机可读介质
技术领域
本发明涉及一种用于开发工业应用的系统、方法以及非暂态计算机可读介质。
背景技术
本文公开的主题整体涉及工业自动化系统,并且例如,涉及工业编程开发平台。
发明内容
为了提供对本文中描述的一些方面的基本理解,下面给出了简化的概述。该概述既不是广泛综述也不旨在识别关键/重要要素或者描述本文中描述的各方面的范围。该概述的唯一目的是以简要的形式给出一些概念作为随后要给出的更详细的描述的序言。
在一个或更多个实施方式中,提供了一种用于开发工业应用的系统,该系统包括:虚拟渲染部件,其被配置成在可穿戴器具上渲染工业设施的交互式三维虚拟现实(VR)表示;用户接口部件,其被配置成接收表示可穿戴器具的穿戴者与工业设施的VR表示的手动交互的VR交互数据,其中,该手动交互指示限定工业自动化系统的各方面的设计输入;以及项目生成部件,其被配置成将VR交互数据转换成满足由手动交互表示的设计输入的可执行系统项目数据,其中,系统项目数据至少包括被配置成执行对工业自动化系统的控制的可执行工业控制程序和被配置成对工业自动化系统的至少一部分可视化的工业可视化应用。
此外,一个或更多个实施方式提供了一种用于开发工业应用的方法,该方法包括:通过包括处理器的工业集成开发环境(IDE)系统在可穿戴客户端设备上渲染工业区域的交互式三维虚拟现实(VR)呈现;通过工业IDE系统接收表示可穿戴客户端设备的穿戴者与工业区域的VR呈现的手动交互的VR交互数据,其中,手动交互指示工业自动化系统的设计规范;以及通过工业IDE系统将VR交互数据转换成满足由手动交互表示的设计规范的可执行系统项目数据,其中,转换包括将VR交互数据转换成至少可执行工业控制程序和可视化应用,该可执行工业控制程序被配置成执行对工业自动化系统的控制,该可视化应用被配置成使工业自动化系统的至少一部分可视化。
此外,根据一个或更多个实施方式,提供了一种其上存储有指令的非暂态计算机可读介质,所述指令响应于执行使系统执行操作,操作包括:在可穿戴器具上渲染工业设施的交互式三维虚拟现实(VR)呈现;接收表示可穿戴器具的穿戴者与工业设施的VR呈现的手动交互的VR交互数据,其中,手动交互指示工业自动化系统的设计规范;以及将VR交互数据转换成满足由手动交互表示的设计规范的系统项目数据,其中,转换包括将VR交互数据转换成至少可执行工业控制程序和可视化应用,该可执行工业控制程序被配置成执行对工业自动化系统的控制,该可视化应用被配置成使工业自动化系统的至少一部分可视化。
为了实现上述及有关目的,在本文中结合以下描述和附图对某些说明性方面进行了描述。这些方面表示可以实践的各种方式,本文旨在涵盖所有这些方式。根据下面结合附图考虑时的具体实施方式,其他优点和新型特征可以变得明显。
附图说明
图1是示例工业控制环境的框图。
图2是示例集成开发环境(IDE)系统的框图。
图3是示出工业IDE系统的通用架构的图。
图4是示出可以由IDE系统与构建、部署和执行系统项目结合使用的若干示例自动化对象属性的图。
图5是示出与使用工业IDE系统创建正在设计的自动化系统的系统项目相关联的示例数据流的图。
图6是示出与通过工业IDE系统从视频或图像数据提取设计数据相关联的示例数据流的图。
图7是示出将自动化对象合并到项目模型中的示例系统项目的图。
图8是示出系统项目的调试的图。
图9是示出基于云的IDE服务用于开发工业应用并将工业应用部署到工厂环境的示例架构的图。
图10是示出与基于用户与工厂的虚拟现实呈现的交互创建自动化系统的系统项目相关联的示例数据流的图。
图11a是可以由工业IDE系统的虚拟渲染部件生成的描绘工业区域的第一人称视角的示例虚拟现实呈现的部分再现。
图11b是可以由工业IDE系统的虚拟渲染部件生成的描绘工业区域的外部视角的另一示例虚拟现实呈现的再现。
图12是示出在设计的自动化系统调试之后由工业IDE系统使用以生成增强现实(AR)呈现的数据输入的图。
图13是示出正在测试的控制程序与工厂模型之间的交互的通用框图。
图14是用于经由与虚拟工业设计环境的交互来生成可执行的工业自动化项目部件的示例方法的流程图。
图15是示例计算环境。
图16是示例联网环境。
具体实施方式
现在参照附图描述本公开内容,其中,贯穿附图使用相似的附图标记指代相似的元件。在下面的描述中,出于说明的目的,阐述了大量的具体细节以便提供其透彻的理解。然而,明显的是,可以在没有这些具体细节的情况下实践本公开内容。在其他实例中,以框图形式示出了公知的结构和设备以便于对其进行描述。
如在本申请中所使用的,术语“部件”、“系统”、“平台”、“层”、“控制器”、“终端”、“站”、“节点”、“接口”旨在指代计算机相关实体或与具有一个或更多个特定功能的操作装置相关的或作为该操作装置的一部分的实体,其中,这样的实体可以是硬件、硬件和软件的组合、软件或执行中的软件。例如,部件可以是但不限于:在处理器上运行的处理、处理器、硬盘驱动器、包括附缀的(例如螺丝拧紧或螺栓固定的)固态存储驱动器或者可移除式附缀的固态存储驱动器的(光存储介质或磁存储介质的)多个存储驱动器;对象;可执行体;执行线程;计算机可执行程序和/或计算机。作为说明,运行在服务器上的应用和服务器二者均可以是部件。一个或更多个部件可以驻留在执行的进程和/或线程内,并且部件可以位于一个计算机上和/或分布在两个或更多个计算机之间。此外,本文所描述的部件可以从其上存储有各种数据结构的各种计算机可读存储介质来执行。部件可以经由本地和/或远程进程例如根据具有一个或更多个数据分组的信号(例如来自一个部件与本地系统、分布式系统中的另一部件进行交互的数据和/或经由信号跨网络诸如因特网与其他系统交互的数据)进行通信。作为另一示例,部件可以是具有由电气或电子电路操作的机械零件所提供的特定功能的装置,所述电气或电子电路通过由处理器执行的软件或固件应用来操作,其中处理器可以在装置内部或外部并且执行软件或固件应用的至少一部分。作为又一个示例,部件可以是如下装置:其在没有机械零件的情况下通过电子部件提供特定功能,电子部件可以在其中包括处理器以执行提供电子部件的至少部分功能的软件或固件。作为再一示例,接口可以包括输入/输出(I/O)部件以及相关联的处理器、应用或应用编程接口(API)部件。虽然前述示例涉及部件的各个方面,但是所例示的方面或特征也适用于系统、平台、接口、层、控制器、终端等。
如本文中所使用的,术语“推断(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读取的输入信号以及控制由工业控制器118生成的输出信号的任何类型的代码,包括但不限于梯形逻辑、顺序功能图表、功能框图或结构化文本。
工业设备120可以包括输入设备和输出设备两者,输入设备将与受控工业系统有关的数据提供给工业控制器118,输出设备响应于由工业控制器118生成的控制信号来控制工业系统的各个方面。示例输入设备可以包括遥测设备(例如,温度传感器、流量计、物位传感器、压力传感器等)、手动操作者控制设备(例如,按钮、选择器开关等)、安全监测设备(例如,安全垫、安全拉绳、光幕等)以及其他这样的设备。输出设备可以包括马达驱动器、气动致动器、发信号设备、机器人控制输入设备、阀、泵等。
工业控制器118可以通过硬连线连接或联网连接与工业设备120通信地接口。例如,工业控制器118可以配备有与工业设备120通信的本地硬连线输入和输出以实现对这些设备的控制。本地控制器I/O可以包括:向现场设备发送离散电压信号以及从现场设备接收离散电压信号的数字I/O,或者向设备发送模拟电压或电流信号以及从设备接收模拟电压或电流信号的模拟I/O。控制器I/O可以通过背板与控制器的处理器进行通信,使得数字和模拟信号可以被读入控制程序并且被控制程序控制。工业控制器118还可以使用例如通信模块或集成联网端口通过网络与工业设备120通信。示例性网络可以包括因特网、内联网、以太网、设备网、控制网、数据高速公路和数据高速公路加(DH/DH+)、远程I/O、现场总线、Modbus、过程现场总线(Profibus)、无线网络、串行协议等。工业控制器118还可以存储可以由与永久数据值相关联的控制程序引用并且用于控制决策的永久数据值,包括但不限于:表示受控机器或过程的操作状态(例如,罐内物位、位置、警报等)的测量值或计算值或者在自动化系统的操作期间收集的捕获时间序列数据(例如,多个时间点的状态信息、诊断事件等)。类似地,一些智能设备——包括但不限于马达驱动器、仪器或状况监测模块——可以存储用于控制操作状态和/或使操作状态可视化的数据值。这样的设备还可以在日志上捕获时间序列数据或事件以供后续检索和查看。
工业自动化系统通常包括一个或更多个人机接口(HMI)114,其使得工厂人员能够查看与自动化系统相关联的遥测数据和状态数据并且控制系统操作的某些方面。HMI 114可以通过工厂网络116与一个或更多个工业控制器118通信并且与工业控制器交换数据,以便于在一个或更多个预先开发的操作者接口屏幕上使与受控工业过程有关的信息可视化。HMI 114还可以被配置成使得操作者能够向工业控制器118的指定数据标签或存储器地址提交数据,由此给操作者提供向受控系统发出命令(例如,循环开始命令、设备致动命令等)的手段以修改设定点值等。HMI 114可以生成一个或更多个显示画面,操作者通过一个或更多个显示画面与工业控制器118交互,并且由此与受控过程和/或系统交互。示例显示画面可以使用过程的图形表示使工业系统或其相关联设备的当前状态可视化,这些过程的图形表示显示测量值或计算值、采用基于状态的颜色或位置动画、渲染警报通知、或采用向操作者呈现相关数据的其他这样的技术。以这种方式呈现的数据通过HMI 114从工业控制器118读取,并且根据由HMI开发人员选择的显示格式来呈现在一个或更多个显示画面上。HMI可以包括具有用户安装或预先安装的操作系统以及用户安装或预先安装的图形应用软件的固定位置设备或移动设备。
一些工业环境还可以包括与受控工业系统的特定方面有关的其他系统或设备。这些可以包括例如聚合并存储从工业控制器118或其他数据源收集的生产信息的数据历史记录器110、包含构成受控工业系统的各种工业设备的电子文档的设备文档存储装置、库存跟踪系统、工作订单管理系统、机器或过程图以及文档的存储库、供应商产品文档存储装置、供应商知识库、内部知识库、工作安排应用或其他这样的系统,其中一些或全部可能驻留在工业环境的办公网络108上。
较高级别系统126可以执行以下功能:与工厂车间上的工业自动化系统的控制较不直接相关,而是针对长期规划、高级别监督控制、分析、报告或其他这样的高级别功能。这些系统126可以驻留在相对于工厂设施在外部位置处的办公室网络108上,或者驻留在可访问办公室和/或工厂网络的云平台上。较高级别系统126可以包括但不限于云存储和分析系统、大数据分析系统、制造执行系统、数据湖、报告系统等。在某些情况下,在企业的这些较高级别处运行的应用可以被配置成分析控制系统操作数据,并且该分析的结果可以被反馈至控制系统处的操作员,或者直接反馈至控制系统中的控制器118或设备120。
构成工业环境的各种控制、监测和分析设备必须使用特定于每个设备的相应配置应用进行编程或配置。例如,工业控制器118通常使用控制编程开发应用诸如梯形逻辑编辑器(例如,在客户端设备124上执行)来进行配置和编程。使用这样的开发平台,设计人员可以编写控制编程(例如梯形逻辑、结构化文本、功能框图等),以执行所需的工业序列或过程,并将得到的程序文件下载到控制器118。分别地,开发人员使用HMI开发平台(例如,在客户端设备122上执行)为HMI 114设计可视化画面和相关联的导航结构,并将得到的可视化文件下载到HMI 114。一些工业设备120——诸如马达驱动器、遥测设备、安全输入设备等——还可能需要使用特定于要配置的设备的单独的设备配置工具(例如,在客户端设备128上执行)进行配置。这样的设备配置工具可以用于设置设备参数或操作模式(例如,高/低限制、输出信号格式、比例因子、能耗模式等)。
使用单独的配置工具来对工业自动化系统的不同方面进行编程和配置的必要性导致了零碎的设计方法,由此在不同的开发环境上分别设计、配置和编程了自动化系统的不同但相关或交叠的方面。例如,运动控制系统可能需要使用控制逻辑编程平台对工业控制器进行编程并调整控制回路,使用其他配置平台对马达驱动器进行配置,并使用可视化开发平台对相关联的HMI进行编程。相关的外围系统——例如视觉系统、安全系统等——也可能需要使用单独的编程或开发应用进行配置。
这种分离式开发方法还可能需要进行大量的测试和调试工作,以确保单独配置的系统方面的正确集成。在这方面,由于未能正确地协调不同的编程工作,因此在不同系统方面之间的预期数据接口或协调动作可能需要大量的调试。
此外,典型的工业开发平台通常要求用户使用由开发工作空间驱动的非直观工作流和由开发平台提供的编辑工具来开发工业控制编程和配置,以及要求必须使用常规光标和键盘驱动的接口与这些工具进行交互。
为了解决这些或其他问题中的至少一些,本文描述的一个或更多个实施方式提供了一种工业IDE系统,其支持虚拟设计环境,该虚拟设计环境使得自动化系统设计人员能够经由与工厂设施的虚拟现实呈现的交互来执行项目开发。工业设计环境可以基于开发人员与虚拟现实呈现的手动交互生成自动化项目的系统项目数据——包括但不限于设备选择、工业控制编程、设备配置、可视化、工程图等。这些交互可以包括例如使用手动手势或其他这样的交互输入来在虚拟化环境内放置和移动机器或其他工业资产、限定运动设备或机器人的轨迹。IDE系统将开发人员的交互解释为正在设计的自动化系统的设计规范,并将这些交互转换成控制代码、可视化、设备配置以及满足设计规范的其他可执行系统部件。
在一些实施方式中,虚拟设计环境可以是工业集成开发环境(IDE)的集成平台,用于使用通用设计环境和数据模型来对工业自动化系统的多个方面进行设计、编程和配置。工业IDE的实施方式可以用于以通用方式配置和管理自动化系统设备,以促进对控制系统的控制、可视化和其他方面的集成、多学科编程。
通常,工业IDE支持跨越整个自动化生命周期的特征,包括设计(例如,设备选择和大小调整、控制器编程、可视化开发、设备配置、测试等);安装、配置和调试;运行、改进和管理;以及故障排除、扩展和升级。
工业IDE的实施方式可以包括模块代码和可视化的库,模块代码和可视化特定于工业垂直领域和那些垂直领域内的常见工业应用。这些代码和可视化模块可以简化开发并缩短开发周期,同时还支持整个工业企业的一致性和可重用性。在某些情况下,可以基于用户与虚拟设计环境的交互来选择代码模块和可视化对象以包括在自动化系统项目中。
图2是根据本公开内容的一个或更多个实施方式的示例工业集成开发环境(IDE)系统202的框图。本公开内容中说明的系统、装置或者过程的方面可以构成包含在机器内例如包含在与一台或更多台机器相关联的一个或更多个计算机可读介质(或一个介质)中的机器可执行部件。这样的部件当由一个或更多个机器(例如计算机、计算设备、自动化设备、虚拟机等)执行时可以使机器执行所描述的操作。
IDE系统202可以包括用户接口部件204、项目生成部件206、项目部署部件208、虚拟渲染部件210、模拟部件212、图像分析部件214、一个或更多个处理器218和存储器220,用户接口部件204包括IDE编辑器224。在各个实施方式中,用户接口部件204、项目生成部件206、项目部署部件208、虚拟渲染部件210、模拟部件212、图像分析部件214、一个或更多个处理器218和存储器220中的一个或更多个可以彼此电耦接和/或通信地耦接以执行IDE系统202的一个或更多个功能。在一些实施方式中,部件204、206、208、210、212和214可以包括存储在存储器220上并且由处理器218执行的软件指令。IDE系统202还可以与图2中未描绘的其他硬件和/或软件部件交互。例如,处理器218可以与一个或更多个外部用户接口设备诸如键盘、鼠标、显示监测器、触摸屏或者其他这样的接口设备进行交互。
用户接口部件204可以被配置成以任何合适的形式(例如,视觉、音频、触觉等)接收用户输入并向用户渲染输出。在一些实施方式中,用户接口部件204可以被配置成与IDE客户端通信地接口,该IDE客户端在(例如,经由硬连线或无线连接)通信地连接至IDE系统202的客户端设备上(例如,可穿戴AR/VR设备、膝上型计算机、平板计算机、智能电话等)执行。然后,用户接口部件204可以经由IDE客户端接收用户输入数据并渲染输出数据。在其他实施方式中,用户接口部件314可以被配置成生成适当的接口画面或环境并将其提供给客户端设备,并经由这些接口环境交换数据。可以经由用户接口部件204的各种实施方式接收的输入数据可以包括但不限于编程代码、工业设计规范或目标、工程图、交互式增强现实或虚拟现实(AR/VR)输入、领域特定语言(DSL)定义、视频或图像数据或其他这样的输入。由用户接口部件204的各种实施方式渲染的输出数据可以包括交互式VR呈现、程序代码、编程反馈(例如,错误和突出显示、编码建议等)、编程和可视化开发画面等。
项目生成部件206可以被配置成基于经由用户接口部件204接收的设计输入以及工业知识、预定义的代码模块和可视化以及由IDE系统202维护的自动化对象222来创建包括一个或更多个项目文件的系统项目。项目部署部件208可以被配置成将由项目生成部件206创建的系统项目调试到适当的工业设备(例如,控制器、HMI终端、马达驱动器、AR/VR系统等)用于执行。为此,项目部署部件208可以识别应该向其发送系统项目的相应部分以用于执行的适当的目标设备,将这些相应部分转换为目标设备可理解的格式,以及将经转换的项目部件部署到其相应的设备。
虚拟渲染部件210可以被配置成经由用户接口部件204在用户可穿戴器具上渲染工业设施或安装区域的虚拟现实(VR)呈现,并转换用户与该VR呈现的交互。可以基于存储在IDE系统202上的数字工厂模型来生成VR呈现。用户与VR呈现的交互可以解释为新自动化系统的设计规范或用于修改现有自动化系统的设计或操作的规范,并由项目生成部件206转换为满足设计规范的项目数据。该项目数据可以包括例如控制器代码;可视化对象、仪表板或插件;设备配置;物料清单;装备推荐;工程图;或其他这样的项目部件。
模拟部件212可以被配置成使用系统项目数据和数字工厂模型来模拟多个控制设备——包括但不限于工业控制器、马达驱动器和其他这样的控制设备——的执行。图像分析部件214可以被配置成从提交给IDE系统202的图像或视频数据中提取工业系统设计数据,并将该提取的设计数据提供给项目生成部件206以转换成系统项目数据。
一个或更多个处理器218可以参考所公开的系统和/或方法执行本文描述的一个或更多个功能。存储器220可以是存储用于参考所公开的系统和/或方法执行本文描述的功能的计算机可执行指令和/或信息的计算机可读存储介质。
图3是示出根据一个或更多个实施方式的可以支持虚拟设计环境的工业IDE系统202的通用架构的图。工业IDE系统202可以实现不仅跨越设计而且还跨越调试、操作和维护的服务和工作流的共同集合。在设计方面,IDE系统202不仅可以支持工业控制器编程和HMI开发,而且还可以支持系统部件的大小调整和选择、设备/系统配置、AR/VR可视化以及其他特征。IDE系统202还可以包括如下工具,该工具可以简化和自动化所得到的项目的调试,并在运行时间期间协助对部署的系统的后续管理。
在云平台上实现的IDE系统202的实施方式还便于协作式项目开发,由此多个开发人员304将设计和编程输入贡献给公共自动化系统项目302。由IDE系统支持的协作工具可以管理来自多个贡献者的设计贡献,并对聚合系统项目302执行版本控制,以确保项目一致性。
基于来自一个或更多个开发人员304的设计和编程输入,IDE系统202生成包括一个或更多个项目文件的系统项目302。系统项目302对以下中的一个或更多个进行编码:控制编程;HMI、AR和/或VR可视化;设备或子系统配置数据(例如,驱动器参数、视觉系统配置、遥测设备参数、安全区限定等);或正在设计的工业自动化系统的其他这样的方面。IDE系统202可以识别应该在其上执行系统项目302的各个方面的适当的目标设备306(例如,工业控制器、HMI终端、变频驱动器、安全设备等),将系统项目302转换为可以在相应的目标设备上执行的可执行文件,并将可执行文件部署到其相应的目标设备306上用于执行,从而将系统项目302调试到工厂车间以实现自动化项目。
为了支持增强的开发能力,IDE系统202的一些实施方式可以建立在基于对象的数据模型而不是基于标签的架构上。自动化对象222用作此基于对象的开发架构的构件。图4是示出可以由IDE系统202与构建、部署和执行系统项目302结合使用的若干示例自动化对象属性的图。自动化对象222可以在设计期间创建和增强,集成到更大的数据模型中,并在运行时期间消耗。这些自动化对象222跨IDE系统202提供公共数据结构,并且可以被存储在对象库(例如,存储器220的一部分)中以供重新使用。对象库可以存储表示现实世界工业资产402的各种分类的预定义自动化对象222,现实世界工业资产402包括但不限于泵、罐、值、马达、马达驱动器(例如变频驱动器)、工业机器人、致动器(例如,气动或液压致动器)或其他这样的资产。自动化对象222可以表示工业企业在基本上任何级别处的元素,包括单个设备、由许多工业设备和部件构成的机器(其中一些可能与它们自己的自动化对象222相关联)以及整个生产线或过程控制系统。
给定类型的工业资产的自动化对象222可以对如下方面进行编码,所述方面诸如2D或3D可视化、警报、控制编码(例如,逻辑或其他类型的控制编程)、分析、启动过程、测试协议、验证报告、模拟、示意图、安全协议以及与由对象222表示的工业资产402相关联的其他这样的属性。也可以利用识别相关联的资产的位置的位置信息对自动化对象222进行地理标记。在系统项目302的运行期间,与给定的现实世界资产402相对应的自动化对象222也可以记录该资产的状态或操作历史数据。通常,自动化对象222用作其相应的工业资产402的程序化表示,并且可以合并到系统项目302中作为控制代码、2D或3D可视化、工业资产的知识库或维护指导系统或其他这样的方面的元素。
图5是示出根据一个或更多个实施方式的与使用IDE系统202创建正在设计的自动化系统的系统项目302相关联的示例数据流的图。执行IDE客户端应用514的客户端设备504(例如,可穿戴AR/VR器具、膝上型计算机、平板计算机、台式计算机、移动设备等)可以访问IDE系统的项目开发工具并利用这些工具来创建正在开发的自动化系统的综合系统项目302。通过与系统的用户接口部件204进行交互,开发人员可以以各种支持的格式将设计输入512提交给IDE系统202,各种支持的格式包括行业特定的控制编程(例如,控制逻辑、结构化文本、顺序功能图表等)和HMI画面配置输入。如将在本文中更详细描述的,设计输入512也可以经由用户与由虚拟渲染部件210生成的虚拟设计环境的交互来提交。基于此设计输入512和存储在工业知识库520中的信息(预定义代码模块508和可视化510、护栏模板506、基于物理的规则516等),用户接口部件204渲染设计反馈518,设计反馈518被设计成与开发系统项目302相结合地协助开发人员进行工业自动化系统的配置、控制和可视化。
除了控制编程和可视化定义之外,IDE系统202的一些实施方式可以被配置成接收数字工程图(例如,计算机辅助设计(CAD)文件)作为设计输入512。在这样的实施方式中,项目生成部件206可以基于对现有设计图的分析例如通过自动生成控制和/或可视化代码来生成系统项目302的部分。可以作为设计输入512提交的图可以包括但不限于P&ID图、机械图、流程图或其他这样的文档。例如,可以将P&ID图导入到IDE系统202中,并且项目生成部件206可以识别由图所传达的元素(例如,罐、泵等)及其之间的关系。项目生成部件206可以将在图中识别的元素与对应于这些元素(例如,罐、泵等)的适当的自动化对象222相关联或映射,并将这些自动化对象222添加到系统项目302。设备特定的和资产特定的自动化对象222包括要与图中识别的元素相关联的合适的代码和可视化。通常,IDE系统202可以检查一个或更多个不同类型的图(机械的、电气的、管道的图等)以确定设备、机器和/或资产之间的关系(包括识别不同图中的公共元素)并将这些元素与适当的自动化对象222、代码模块508和/或可视化510智能地关联。IDE系统202可以根据需要与生成系统项目302的代码或项目数据相结合地来利用基于物理的规则516以及预定义的代码模块508和可视化510。
IDE系统202还可以确定预定义的可视化内容是否可用于图中发现的任何对象,并基于这些预定义的可视化为所发现的对象生成适当的HMI画面或AR/VR内容。为此,IDE系统202可以存储可以由项目生成部件206根据需要访问的行业特定的、资产特定的和/或应用特定的可视化510。这些可视化510可以根据工业或工业垂直领域(例如,机动车、食品和药品、石油和天然气、制药等)、工业资产的类型(例如,机器或工业设备的类型)、工业应用的类型(例如,批处理、流量控制、幅材张力控制、钣材冲压、水处理等)或其他这样的类别进行分类。预定义的可视化510可以包括多种格式的可视化,多种格式包括但不限于HMI画面或窗口、仪表板、聚合来自多个预先指定源的数据的混搭、AR叠加、表示相关联的工业资产的3D虚拟化的VR对象或其他这样的可视化格式。IDE系统202可以基于对象类型与可视化内容之间的预定义关联针对给定对象选择合适的可视化。
在另一示例中,项目生成部件206的一些实施方式可以理解用户施加到工程图的标记,以传达特定的设计意图或参数。例如,红笔标记可以理解为指示安全区域,用虚线连接的两个圆圈可以解释为齿轮传动关系,并且粗线可以指示凸轮传动关系。以这种方式,设计人员可以以IDE系统202可以理解和利用的方式在现有图上草绘设计目标,以生成代码和可视化。在另一示例中,项目生成部件206可以基于对用户的CAD图的分析来获知用作启动机器的必要前提的许可和互锁(例如,阀及其相关联的状态)。项目生成部件206可以基于对这些图和标记的分析来生成任何合适的代码(梯形逻辑、功能块等)、设备配置和可视化,以合并到系统项目302中。在一些实施方式中,用户接口部件204可以包括用于在IDE平台本身内部开发工程图的设计工具,并且当用户针对新项目创建图时,项目生成部件206可以生成此代码作为后台处理。在一些实施方式中,项目生成部件206还可以将状态机器图转换为相应的编程序列,从而至少产生可以由开发人员根据需要利用附加的编程细节来增强的骨架代码。
此外或另外,IDE系统202的一些实施方式可以支持基于目标的自动化编程。例如,用户接口部件204可以使得用户能够指定正在设计的自动化系统的生产目标(例如,指定正在设计的灌装工厂必须能够在正常操作期间每秒生产至少5000瓶)和任何其他适用于设计项目的相关设计约束(例如,预算限制、可用的车间空间、可用的控制柜空间等)。基于该信息,项目生成部件206将生成系统项目302的部分以满足指定的设计目标和约束。可以以这种方式生成的系统项目302的部分可以包括但不限于设备和装备选择(例如,需要多少个泵、控制器、工位、输送机、驱动器或其他资产以满足指定目标的定义)、相关联的设备配置(例如,调整参数、网络设置、驱动器参数等)、控制代码或适于对正在设计的自动化系统可视化的HMI画面。
项目生成部件206的一些实施方式还可以基于已经针对正在开发的项目订购的零件的知识来生成系统项目302的至少一些项目代码。这可能涉及访问由装备供应商维护的客户帐户信息,以识别已经针对该项目购买的设备。基于该信息,项目生成部件206可以添加适当的自动化对象222和与所购买的资产相对应的相关联的代码模块508,从而为项目开发提供起点。
项目生成部件206的一些实施方式还可以针对通用编程功能(例如,泵送应用、批处理、码垛操作等)监测客户特定的设计方法,并基于对设计人员的目标的推论和用于实现目标的学习方法为用户可能希望结合到当前设计项目中的设计模块(例如代码模块508、可视化510等)生成推荐。为此,项目生成部件206的一些实施方式可以被配置成监测随时间的设计输入512,并且基于该监测学习某些设计动作(例如,向设计项目添加某些代码模块或代码片段、某些可视化的选择等)与正在设计的工业资产类型、工业序列或工业过程之间的相关性。项目生成部件206可以记录这些所学习的相关性,并基于这些相关性在随后的项目开发会话期间生成推荐。例如,如果项目生成部件206基于对设计输入512的分析确定设计人员当前正在开发涉及已经在过去以重复、可预测的方式编程和/或可视化的类型的工业装备的控制项目,则项目生成部件206可以基于该装备在过去如何被配置和/或编程来指示用户接口部件204渲染设计人员可能希望合并到系统项目302中的推荐的开发步骤或代码模块508。
在一些实施方式中,IDE系统202还可以存储和实现护栏模板506,护栏模板506限定旨在确保项目符合内部或外部设计标准的设计护栏。基于由一个或更多个选定的护栏模板506限定的设计参数,用户接口部件204可以提供动态推荐或其他类型的反馈作为设计反馈518的子集,其他类型的反馈被设计成以确保系统项目302符合内部或外部要求或标准(例如认证诸如TUV认证、内部设计标准、行业特定的或垂直领域特定的设计标准等)的方式来指导开发人员。该反馈518可以采取以下形式:基于文本的推荐(例如,重写控制代码的所指示部分以符合限定的编程标准的推荐)、语法突出显示、错误突出显示、代码段的自动完成或其他这样的格式。以这种方式,IDE系统202可以根据正在开发的工业系统的类型和任何适用的内部设计标准来定制设计反馈518,设计反馈518包括编程推荐、预定义代码模块508或可视化510的推荐、错误和语法突出显示等。
护栏模板506也可以被设计成维护符合适用于控制编程或项目开发的其他方面的全局最佳实践。例如,如果如由一个或更多个护栏模板506指定的标准所限定的,开发人员的控制编程被认为过于复杂,则用户接口部件204可以生成并渲染警报。由于不同的垂直领域(例如,机动车、制药、石油和天然气、食品和药品、海运等)必须遵守不同的标准和认证,因此IDE系统202可以维护针对不同内部和外部标准和认证的护栏模板506——包括定制的用户特定的护栏模板506——的库。这些护栏模板506可以根据工业垂直领域、工业应用的类型、工厂设施(在定制的内部护栏模板506的情况下)或其他这样的类别进行分类。在开发期间,项目生成部件206可以基于对诸如与项目相关的工业垂直领域、正在编程的工业应用的类型(例如,流量控制、幅材张力控制、某些批处理等)的方面或其他这样的方面的确定,来选择并应用被确定为与当前正在开发的项目相关的护栏模板506的子集。项目生成部件206可以利用护栏模板506来实现基于规则的编程,从而基于编码行业的专业知识和最佳实践来渲染编程反馈(设计反馈518的子集)诸如动态智能自动校正、预先键入或编码建议(例如,识别正在开发的代码中的低效率并推荐适当的校正)。
用户还可以针对外部供应商(例如OEM)提供的代码运行其自己的内部护栏模板506,以确保该代码符合内部编程标准。在这样的情况下,可以将供应商提供的代码提交给IDE系统202,并且项目生成部件206可以根据由一个或更多个定制的护栏模板506指定的内部编码标准来分析此代码。基于该分析的结果,用户接口部件204可以指示供应商提供的代码的不符合由护栏模板506阐述的编程标准的部分(例如,使用突出显示、覆盖的文本等),并且显示用于修改代码的建议,以使代码符合要求。作为推荐这些修改的替选或除了推荐这些修改之外,项目生成部件206的一些实施方式可以被配置成根据推荐自动修改代码以使代码符合要求。
在使编码建议作为设计反馈518的一部分时,项目生成部件206可以调用存储在代码模块数据库(例如,在存储器220上)中的选定代码模块508。这些代码模块508包括用于控制常见的工业任务或应用(例如,码垛、流量控制、幅材张力控制、拾取和放置应用、输送机控制等)的标准化编码段。在一些实施方式中,代码模块508可以根据代码模块508适用的工业垂直领域(例如,机动车、食品和药品、石油和天然气、纺织业、海运、制药等)、工业应用或者机器或设备的类型中的一个或更多个进行分类。在一些实施方式中,项目生成部件206可以基于由程序员提供的编程输入(作为设计输入512的子集)来推断程序员的当前编程任务或设计目标,并且基于该任务或目标来确定预定义代码模块508之一是否可以适当地添加到正在开发的控制程序以实现推断的任务或目标。例如,项目生成部件206可以基于对设计输入512的分析来推断程序员当前正在开发用于将物料从第一罐运输至另一罐的控制代码,并且作为响应,推荐包括预定义的代码模块508,预定义的代码模块508包括用于控制阀、泵或实现物料运输所需的其他资产的标准化或常用代码。
还可以限定定制的护栏模板506捕获在项目设计中应该考虑的客户场所的细微差别。例如,护栏模板506可以记录以下事实:正在设计的自动化系统将被安装在停电很常见的区域中,并且当生成设计反馈518时通过以下来将该考虑作为因素:例如,通过推荐备用不间断电源的实现方式并建议应该如何合并这些备用电源,以及推荐考虑这些断电的相关联的编程或控制策略。
IDE系统202还可以基于以下使用护栏模板506来指导用户针对给定设计目标选择装备或设备:例如,基于工业垂直领域、控制应用的类型(例如,钣材冲压、压铸、码垛、输送机控制、幅材张力控制、批处理等)、项目预算约束、安装场所的物理约束(例如可用的地板、壁或橱柜空间;安装空间的尺寸等)、现场已经存在的装备等。可以提供这些参数和约束中的一些或全部作为设计输入512,并且用户接口部件204可以将装备推荐渲染为设计反馈518的子集。在一些实施方式中,项目生成部件206还可以确定是否可以将一些或所有现有装备重新用于正在设计的新控制系统。例如,如果要将新的灌装线添加到生产区域,则可能存在利用现有装备的机会,因为一些灌装线已经存在。关于哪些设备和装备可以重复使用的决定将影响新控制系统的设计。因此,提供给IDE系统202的设计输入512中的一些可以包括安装场所内或附近的客户现有系统的细节。在一些实施方式中,项目生成部件206可以将人工智能(AI)或常规分析方法应用于该信息,以确定在设计输入512中指定的现有装备是否可以重新使用或利用。基于该分析的结果,项目生成部件206可以基于这些决定生成可能需要购买的任何新装备的列表,作为设计反馈518。
在一些实施方式中,IDE系统202可以基于对将要在其内安装正在设计的自动化系统的物理环境的理解来提供设计推荐。为此,关于物理环境的信息可以以工厂环境的2D或3D图像或视频的形式提交给IDE系统202(作为设计输入512的一部分)。图6是示出根据一个或更多个实施方式的与通过IDE系统202从视频或图像数据提取设计数据相关联的示例数据流的图。在该示例中,表示要在其中安装新的自动化系统或修改现有自动化系统的工厂设施区域的视频或图像数据604经由用户接口部件204提交给IDE系统202。在某些情况下,视频或图像数据604可以从安装在工厂内或通过工厂承载的一个或更多个摄像机记录。在某些情况下,视频或图像数据604还可以包括在安装区域处记录的三维立体视频。在另一示例中,当用户横穿要在其处安装新的自动化系统的工厂区域时,视频或图像数据604可以由用户穿戴的可穿戴AR/VR器具记录。在一些实施方式中,作为视频或图像数据604的替选,还可以从工厂的现有数字孪生模型或其他类型的数字模型获得环境信息。
图像分析部件214可以分析该图像、视频或数字孪生数据,以识别记录的安装区域内的物理元素或障碍(例如,壁、大梁、安全栅栏、现有机器和设备等)以及这些元素之间的物理关系。这可以包括确定机器之间的距离、管道延伸的长度、线束或线缆托架的位置和距离等。图像分析部件214然后将这些分析结果602提供给项目生成部件206,项目生成部件206基于由结果602报告的环境信息来生成系统项目302的至少一部分。这可以包括,例如,将背景添加到作为系统项目302的一部分生成的示意图中,生成关于设备或机器的最佳位置的推荐(例如,推荐电力与数据线缆之间的最小间隔),或对系统项目302进行其他改进。
项目生成部件206可以将从分析结果602获得的一些环境信息转换为可以添加到系统项目302的自动化对象222。例如,如果图像分析部件214识别出记录在视频或图像数据604中的马达驱动器或其他类型的工业资产,则项目生成部件206可以确定自动化对象222是否可用于识别的资产,并且如果可以,则将自动化对象222添加到系统项目320。类似地,如果在视频或图像数据604中发现了具有相应的代码模块508或可视化510的工业资产,则项目生成部件206可以检索这些项目元素并将这些项目元素添加到系统项目302。
可以根据基于物理的规则516生成根据视频或图像数据604生成的设计数据中的至少一些,项目生成部件206可以参考基于物理的规则516以确定物理设计规范诸如距危险装备的最小安全距离(在由基于物理的规则516限定预期人或车辆反应时间的情况下,这也可能作为确定相对于此装备安装安全设备的合适位置中的因素)、能够承受预期负载的物料选择、用于特定流量控制应用的管道配置和调整、适合于预期电气负载的线规、信号线与电磁场(EMF)源之间的确保对数据信号的电干扰可忽略的最小距离,或者取决于物理规则的其他这样的设计特征。
在示例用例中,可以由项目生成部件206使用由例如作为视频或图像数据提交给IDE系统202的物理环境信息所指定的机器和设备的相对位置来生成工业安全系统的设计数据。例如,项目生成部件206可以分析安全装备与危险机器之间的测量距离或推断距离,并基于这些测量结果来确定安全设备和相关联的安全控制器的合适放置和配置,这确保机器将在足够的安全反应时间内停机以防止伤害(例如,在人穿过光幕的情况下)。这些安全设备安装规范可以被记录在系统项目302中(例如,记录在工程示意图中、物料清单中、设备配置文件中等)。
在一些实施方式中,项目生成部件206还可以分析现有机器的视频或图像数据604,以确定内联机械性能诸如齿轮传动或凸轮传动。项目生成部件205可以将该信息作为一个或更多个护栏模板506或设计推荐中的因素。
如上所述,可以在使用自动化对象222作为构件的基于对象的架构上构建由IDE系统202针对正在设计的给定自动化系统生成的系统项目302。图7是示出将自动化对象222合并到项目模型中的示例系统项目302的图。在该示例中,表示自动化系统的类似工业设备、系统或资产的各种自动化对象222(例如,过程、罐、阀、泵等)已经作为较大项目数据模型702的元素合并到系统项目302中。项目数据模型702还限定了这些自动化对象222之间的层次关系。根据示例关系,可以将表示批处理的过程自动化对象限定为多个子对象的父对象,这些多个子对象表示执行处理的设备和装备例如罐、泵和阀。每个自动化对象222与特定于其相应的工业资产的对象属性或特性(例如,以上结合图4讨论的对象属性)相关联,对象属性或特性包括用于控制资产(或用于协调资产与其他工业资产的动作)的可执行控制编程和可以用于在运行期间渲染关于资产的相关信息的可视化。
每个自动化对象222的至少一些特性是由IDE系统202基于与由对象表示的资产有关的编码行业专业知识而限定的默认属性。其他属性可以由开发人员根据需要(经由设计输入512)修改或添加,以为正在针对其开发系统项目302的特定资产和/或工业应用定制对象222。这可以包括例如将与选定的自动化对象222相关联的定制的控制代码、HMI画面、AR呈现或帮助文件相关联。以这种方式,可以在设计期间根据需要创建和增强自动化对象222,以在运行时期间由目标控制设备消耗或执行。
一旦完成了对系统项目302的开发,由IDE系统202支持的调试工具可以简化现场调试项目的过程。当给定自动化系统的系统项目302已经完成时,系统项目302可以部署到一个或更多个目标控制设备以用于执行。图8是示出系统项目302的调试的图。项目部署部件208可以将完成的系统项目302编译或以其他方式转换成一个或更多个可执行文件或配置文件,这些可执行文件或配置文件可以在自动化系统的相应目标工业设备(例如,工业控制器118、HMI终端114或其他类型的可视化系统、马达驱动器810、遥测设备、视觉系统、安全继电器等)上存储和执行。
常规的控制程序开发平台要求开发人员在开发之前指定要在其上运行控制程序的工业控制器的类型(例如,控制器的型号),从而将控制编程绑定到指定的控制器。然后,在程序开发期间强制执行特定于控制器的护栏,这会限制在给定选定控制器的能力的情况下如何开发程序。相比之下,IDE系统202的一些实施方式可以从特定的控制器类型中提取项目开发,从而使得设计人员能够以与系统项目302的各种控制方面将在何处以及如何运行无关的方式开发系统项目302作为自动化系统的逻辑表示。一旦项目开发完成并且系统项目302准备好调试,用户可以(经由用户接口部件204)指定要在其上执行系统项目302的各个方面的目标设备。作为响应,项目部署部件208的分配引擎将系统项目302的各方面转换成格式化为在其相应的目标设备上存储和执行的相应可执行文件。
例如,系统项目302除其他项目方面外还可以包括控制代码、可视化画面限定和马达驱动器参数限定。项目开发完成后,用户可以识别哪些目标设备——包括工业控制器118、HMI终端114和马达驱动器810——将执行或接收系统项目302的这些相应方面。然后项目部署部件208可以将由系统项目302限定的控制器代码转换为格式化以在指定的工业控制器118上执行的控制程序文件802,并将此控制程序文件802发送至控制器118(例如,经由工厂网络116)。类似地,项目部署部件208可以将可视化限定和马达驱动器参数限定分别转换为可视化应用804和设备配置文件808,并将这些文件部署到其相应的目标设备用于执行和/或设备配置。
通常,项目部署部件208执行使得系统项目302的各个方面能够在指定的设备上执行所需要的任何转换。无论系统项目302的各个元素如何分布,都将保持在系统项目302中限定的任何固有关系、握手或数据共享。以这种方式,IDE系统202的实施方式可以将项目与如何以及在何处运行项目解耦。这还使得能够在具有不同的控制装备集合的不同工厂设施处调试同一系统项目302。也就是说,IDE系统202的一些实施方式可以根据在现场发现的特定设备将项目代码分配给不同的目标设备。IDE系统202还可以使得项目文件的某些部分能够作为模拟器或在基于云的控制器上调试。
作为使用户指定要部署系统项目302的目标控制设备的替选方案,IDE系统202的一些实施方式可以主动连接至工厂网络116并发现可用设备,确定在工厂车间中呈现的控制硬件架构,针对系统项目302的各个可执行方面推断适当的目标设备,并将系统项目302部署到这些选定的目标设备。作为该调试过程的一部分,IDE系统202还可以连接至远程知识库(例如,基于web或基于云的知识库),以确定哪些发现的设备已过期或需要固件升级以正确执行系统项目302。以这种方式,IDE系统202可以经由云中的可信连接用作设备供应商与客户的工厂生态系统之间的链接。
系统项目302的副本可以使用智能传播被传播至具有不同的装备配置的多个工厂设施,由此即使现场装备没有完全匹配限定的目标(例如,如果在不同的场所找到不同的泵类型),则项目部署部件208也将项目部件与正确的工业资产或控制设备智能地关联。对于与预期资产不完全匹配的目标设备,项目部署部件208可以计算运行系统项目302对非最佳目标装备的估计影响,并生成用于减轻与最佳项目执行的预期偏差的警告或推荐。
如上所述,IDE系统202的一些实施方式可以在云平台上实施。图9是示出基于云的IDE服务902用于开发工业应用并将工业应用部署到工厂环境的示例架构的图。在该示例中,工业环境包括一个或更多个工业控制器118、HMI终端114、马达驱动器810、运行更高级别的应用(例如,ERP,MES等)的服务器901以及其他这样的工业资产。这些工业资产连接至促进工厂车间中的工业设备之间的数据交换的工厂网络116(例如,通用工业协议网络、以太网/IP网络等)。工厂网络116可以是有线或无线网络。在所示的示例中,高级服务器910驻留在(例如,通过路由器908或其他网络基础设施设备)连接至工厂网络116的单独的办公网络108上。
在该示例中,IDE系统202驻留在云平台906上,并执行可被授权的远程客户端设备504访问的一组基于云的IDE服务902。云平台906可以是使得能够由具有云功能的设备访问和使用共享计算服务(例如IDE服务902)的任何基础设施。云平台906可以是可由设备504经由因特网访问的公共云,设备504具有因特网连接性和适当授权以利用IDE服务902。在一些情况下,云平台906可以被云供应方设置为平台即服务(PaaS),并且IDE服务902可以作为基于云的服务驻留在云平台906上并且在云平台906上执行。在一些这样的配置中,可以由IDE服务902的拥有者向客户提供对云平台906和相关联的IDE服务902的访问作为订阅服务。可替选地,云平台906可以是由工业企业(工厂设施的所有者)在内部操作的私有云。示例私有云平台可以包括托管IDE服务902并且驻留在由防火墙保护的公司网络上的一组服务器。
IDE系统202的基于云的实现可以促进被授权访问IDE服务902的多个远程开发人员的协作开发。当系统项目302准备好部署时,可以经由办公网络108或工厂网络116与云平台906之间的安全连接将项目302调试到工厂设施。如上所述,工业IDE服务902可以将系统项目302转换为一个或更多个适当的可执行文件——控制程序文件802、可视化应用804、设备配置文件808、系统配置文件912——并将这些文件部署到工厂设施中的适当设备,以促进自动化项目的实现。
如上所述,工业IDE系统202的一些实施方式可以基于作为用户与工业设施或安装区域的虚拟表示的交互而接收的设计输入512来生成系统项目302的部分。图10是示出与基于用户与工厂的VR呈现的交互创建自动化系统的系统项目302相关联的示例数据流的图。在该示例中,可穿戴AR/VR器具1010可以经由用户接口部件204与工业IDE系统202接口,用户接口部件204可以包括有线或无线网络接口、近场通信接口或适合于在其上实现IDE系统202的特定平台的其他这样的设备接口。在一些实施方式中,用户接口部件204可以被配置成:在使得VR呈现能够被传送至可穿戴器具1010之前,验证对可穿戴器具1010访问IDE系统202的授权。用户接口部件204可以通过如下来认证可穿戴器具1010或其所有者:使用密码验证、生物特征标识(例如,由可穿戴器具1010从用户收集并提交至用户接口部件204的视网膜扫描信息),将可穿戴器具1010的标识符与已知的授权设备的集合相互参照,或其他这样的验证技术。
用户接口部件204具有相关联的虚拟渲染部件210,虚拟渲染部件210被配置成生成虚拟现实呈现数据1004以便由用户接口部件204传送到可穿戴器具1010。呈现数据1004在由可穿戴器具1010接收和执行时将工业区域的交互式三维(3D)虚拟现实呈现渲染在可穿戴器具的显示器上。为了便于生成工业区域(例如,要在其中安装或修改正在设计的自动化系统的工业设施的一部分)的虚拟表示,IDE系统202可以维护一个或更多个工厂模型1002,一个或更多个工厂模型1002限定由VR呈现数据1004表示的区域的物理布局的视觉表示。例如,给定工业区域(例如,生产区域、工作单元、装配线等)的工厂模型1002可以限定位于该区域内的工业资产——包括机器、输送机、控制柜和/或工业设备——的图形表示以及这些工业资产之间的物理关系。对于每个工业资产,工厂模型1002可以限定资产的物理尺寸和颜色以及由图形表示支持的任何动画(例如,反映资产的移动的颜色变化动画、位置动画等)。工厂模型1002还限定了工业资产之间的物理关系,包括工厂车间中的资产的相对位置和定向、资产之间延伸的导管或管道以及其他物理限定。
在一些实施方式中,工厂模型1002可以是现有工厂的数字孪生,或者可以部分地基于这样的数字孪生来生成。此外,在一些实施方式中,可以基于从视频或图像数据604(参见图6)提取的安装区域的环境特性来生成工厂模型1002的至少一部分。在这样的实施方式中,可以将由图像分析部件214基于对视频或图像数据的分析发现的关于工业资产、物理障碍、距离、位置或其他环境特征的信息馈送至工厂模型1002,以便在模型1002中表示这些环境特征。
由虚拟渲染部件210支持的渲染引擎被配置成基于工厂模型1002中指定的工业资产渲染限定来生成工业区域的交互式VR呈现。用户接口部件204将所得到的VR呈现传送至可穿戴器具1010作为VR呈现数据1004。
图11a是描绘可以由虚拟渲染部件210生成的工业区域的第一人称视角的示例虚拟现实呈现1102的部分再现。图11b是描绘也可以由虚拟渲染部件210生成的工业区域的外部透视图的另一示例虚拟现实呈现1104的再现。应当理解,由于经由二维图呈现虚拟现实呈现固有的约束,图11a至图11b中示出的示例VR呈现不能完全描绘在合适的可穿戴器具上渲染的VR呈现。通常,由可穿戴器具1010渲染的VR呈现提供包围用户的整个视场的环绕的虚拟渲染,并且随着用户的位置和定向的改变而转换它们的视线或视角。本文中的部分演示和相关联的描述旨在:在考虑到二维图示的限制的情况下传达可能程度的虚拟现实渲染和交互。
在一些实施方式中,虚拟渲染部件210可以支持从区域外部的人的视角的工业区域的外部VR视图(如在示例呈现1104中)以及通过渲染区域的全尺寸视图来模拟用户在工业区域内的存在的区域的第一人称视图(如在示例呈现1102中)两者。用户可以选择性地在这两种类型的视图之间切换,并通过与两种视图中的任何一种手动交互来提供设计输入。虚拟渲染部件210可以将最新的VR呈现数据1004流传输至可穿戴器具1010,以确保视图——包括用户的视角——维持当前状态。虚拟渲染部件210根据由工厂模型1002限定的渲染指令将工业资产渲染为VR呈现。可以渲染为VR呈现内的虚拟对象的工业资产可以包括但不限于罐1106、输送机1108、机器1110、工业机器人、安全门、发电机、工业控制器或设备或其他这样的资产。
由虚拟渲染部件210生成的VR呈现的观看视角基于由IDE系统202从可穿戴器具1010接收到的位置和定向数据1008。在这方面,可穿戴器具1010的位置和定向部件可以被配置成确定器具1010的当前地理位置、定向和视线。在一些实施方式中,器具1010可以利用全球定位系统(GPS)技术来确定用户的绝对位置,或者可以被配置成与定位传感器交换数据,以便确定用户的相对位置。可穿戴器具1010还可以包括定向感测部件,其根据器具的视线方向、器具1010相对于水平线的角度等来测量可穿戴器具的当前定向。其他类型的传感器或算法可以通过用于确定穿戴者的当前位置和定向的可穿戴器具1010的实施方式来支持,包括但不限于惯性测量单元(IMU)或视觉惯性里程表(VIO)。可穿戴器具1010可以将位置和定向信息报告给IDE系统202作为位置和定向数据1008。
虚拟渲染部件210使用位置和定向数据1008来控制VR呈现的视点。例如,用户可能正在经由用户的可穿戴器具1010查看工业领域的VR呈现(例如,图11a中描绘的第一人称呈现或图11b中描绘的外部呈现)。虚拟渲染部件210接收由用户的可穿戴器具1010生成的位置和定向数据1008,并根据用户的当前位置和定向渲染呈现。特别地,VR呈现的观看视角的方向和角度是根据用户的位置和定向。
与第一人称视图(例如,图11a的呈现1102)相比,由IDE系统202生成的外部视图(例如,图11b的呈现1104)将工业区域渲染为区域的虚拟缩小模型,并使得用户能够围绕区域的该缩放版本移动并与区域的该缩放版本交互。随着用户围绕、朝向或远离虚拟缩放的工业区域移动,可穿戴器具1010将更新的位置和定向数据1008流传输至IDE系统202,IDE系统202基本上连续地更新VR呈现数据1004,以模拟围绕生产区域的比例模型行走的效果。
返回到图10,IDE系统202可以基于由可穿戴器具1010生成的表示用户与由虚拟渲染部件210生成的第一人称VR呈现或外部VR呈现中的一者或两者的手动交互的VR交互数据1006,来生成系统项目302的至少一部分——包括程序代码、可视化、设备配置、设备配置、工程图、物料清单等。例如,一旦在可穿戴器具1010上渲染了生产区域的VR呈现,器具1010的穿戴者(例如,系统设计人员)可以与渲染的VR环境手动交互,以选择并在虚拟环境内放置新的工业设备、机器、装备或其他工业资产(例如,泵、阀、导管、安全防护装置等)。为此,用户接口部件204的一些实施方式可以将可以从其选择各种类型的工业资产(例如,控制器、马达驱动器、桶、泵、阀、工业机器人、输送机、加工站、模壳炉等)的菜单渲染为VR呈现内的覆盖图。器具1010的穿戴者可以在VR呈现内使用手势来与这些菜单手动交互,以选择期望资产的数字表示并将资产放置在VR环境内的选定位置(例如,通过执行手动保持和放置动作)。可以使用相对于虚拟资产的适当手势(例如,通过执行模拟在环境内手动操纵虚拟资产的手势)将表示工业资产的虚拟图标定向、从一个位置移动到另一位置或从虚拟环境移除。VR环境内用户的交互由可穿戴器具1010监测,并作为VR交互数据1006发送至IDE系统202。
在IDE环境内,以这种方式添加或移动的工业资产可以由与那些资产相对应的自动化对象222(例如,罐自动化对象、阀自动化对象等)来表示。当用户将新的工业资产添加到VR环境时,项目生成部件206可以识别新添加的资产,并将与该资产相对应的适当的自动化对象222添加到系统项目302。如在以上描述的其他示例中,自动化对象222可以选自由IDE系统202维护的标准自动化对象的库502。当在虚拟设计环境内添加这些资产并将其链接在一起时,项目生成部件206还可以针对这些资产生成排序的控制代码,其中,该排序的代码可以部分地基于与资产相对应的相应预定义代码模块508或者与自动化对象222本身相关联的控制代码。
在其他示例交互中,用户可以以手势来执行新机器人或其他类型的运动设备要执行的运动。例如,用户可以执行手动跟踪要由机器人执行以便于将零件从第一位置拾取并移动到第二位置的轨迹或运动的手势,或者可以执行指示要在工作循环期间由运动设备横穿的运动路径的手势。在另一示例中,用户可以执行指示将水从一个指定的罐泵送到另一罐的手动手势。响应于设计人员的这样的动作——由可穿戴器具1010报告为VR交互数据1006——项目生成部件206将通过生成支持这些设计目标和规范的合适代码、设备配置、图和可视化来更新系统项目302。
与VR环境的设计交互可以在第一人称视角视图(例如,图11a)或外部视图(例如,图11b)内执行。通常,第一人称视图可以例如通过添加输送机、机器、泵、值等使得设计人员能够更轻松地执行针对特定生产线或机器的设计交互。使用外部视图可以更轻松地执行针对大规模设计方面的交互输入。可以使用外部视图适当执行的设计交互可以包括:例如,将工业机器人或其他工业资产的复制实例添加到相应的多个生产区域(例如,生产区域1114a至1114d中的复制机器1112a至1112d,如图11b所示),在生产区域之间移动工业资产或其他这样的设计动作。为了在生产区域之间添加或移动资产,器具1010的穿戴者可以相对于生产区域的外部缩小视图执行手动手势,以在工厂设施的较小虚拟模型内模拟抓取、移动和放置资产。
由于设计工作流是在虚拟工厂环境内执行的,所以IDE系统202的一些实施方式可以执行提议的控制序列的图形模拟,并在VR呈现内渲染这些模拟的控制序列。这使得设计人员能够观看演示提议的控制序列在现实世界中预期如何操作的虚拟操作。可以基于由工厂模型1002表示的建模物理关系来执行这些模拟。
除了项目数据(例如,代码、可视化和系统项目302中包括的其他项目部件)之外,项目生成部件206的一些实施方式还可以与安装或编程新装备相结合地生成关于要在现场执行的物理行为的指令(例如,拆卸指令、重新布线指令、用于安装新导管的安装等)。这些指令可以部分地基于对工厂模型1002的分析和系统项目302中记录的新自动化系统的详细信息而生成,工厂模型1002记录安装现场处现有物理环境的详细信息,包括现有机器、控制系统、物理屏障等。
以上描述的沉浸式VR设计方法还可以用于自动生成用于修改现有生产线的系统项目数据。例如,在虚拟化设计环境内,设计人员可以执行模拟抓取泵并将泵从一个位置移动到另一位置的手势。作为响应,项目生成部件206将生成新的控制代码,修改现有的控制代码以基于新的位置来更新对泵(以及其他泵)的控制,生成用于要在现场执行以便将泵从其原始位置卸载并将泵安装在指示的新位置的物理动作(例如拆除、安装、重新布置管道或线等)的指令,生成对应该考虑的系统的可能不可预见的影响的通知(例如,水压或负载的意外变化、电力的重新分配等),更新工程图和可视化以反映泵的重新布置,或生成系统项目302的其他这样的方面。
在一些实施方式中,项目生成部件206可以利用基于物理的规则516和基于标准的设计考虑因素来识别应当对现有工业资产的控制代码进行的修改,以适应由设计人员经由虚拟化设计环境提交的提议增加或修改。例如,响应于提议向现有的自动化系统添加新的泵和阀的VR交互数据1006的接收,项目生成部件206可以认识到必须改变某些现有的进料阀的控制定时以确保提供了正确量的流体。因此,项目生成部件206将根据需要更新这些进料阀的控制代码,以适应设计人员打算安装的新装备。项目生成部件206还可以识别可能还需要更改哪些其他配置例如时间常数,并将这些报告给设计人员或将更改合并到系统项目302中。
如上所述,虚拟设计环境可以使得器具1010的穿戴者能够例如经由模拟在虚拟设计环境内抓取装备并将装备从第一位置移动到第二位置的手动手势,在虚拟工厂呈现内的位置之间移动虚拟化的工业资产或其他设计部件。由于IDE系统202例如基于工厂模型1002和系统项目302了解生产区域内的现有控制系统和物理环境,因此项目生成部件206也可以识别:如设计人员指示的移动工业装备是否需要更新控制器I/O布线,或者在装备被移动的情况下是否应该将其接线到新的物理位置处的不同的控制器。基于这样的确定,项目生成部件206可以对系统项目302进行任何适当的更新,包括但不限于更新I/O图,更新布线安排,更新控制面板布局图和相应的物料清单,更新控制器编程(例如,通过取消用于控制移动资产的控制代码与其原始控制器的关联,并将控制代码与新控制器相关联)或对项目进行的其他这样的更改。项目生成部件206还可以识别与如由设计人员提议的移动装备或添加新装备相关联的电气影响,例如电力下降、电源线过载等。基于这些识别的电气问题,项目生成部件206可以对系统项目320实现适当的更新(例如,更新布线安排、在电源之间重新分配电气装备等)。
可以在虚拟环境内进行的设计更改还可以包括对用于运输物料的现有管道的修改。例如,使用VR呈现内的适当交互手势,设计人员可以指示要移除一段长度的管道。作为响应,项目生成部件206可以确定用于重新配置和重新调整控制系统(例如,重新调整控制通过管道的流量的控制回路)的设计策略,以确保在如指示的移除管道之后的适当的流量。确定适当的重新配置和调整可能涉及参考基于物理的规则516,以便估计流量和压力,这对于模拟通过新管道方案的物料运输并基于模拟结果估计控制回路的适当的重新调整可能是必需的。
在一些实施方式中,IDE系统的虚拟设计环境还可以协助工业安全系统的设计和初步测试。例如,数字工厂模型1002可以包括现有或提议的安全设备和防护的模型,该安全设备或防护是基于区域的安全系统的一部分。该安全装备可以包括但不限于防护门开关、操作员访问点、安全栅栏或门控、光幕、安全垫、安全拉线或紧急停止按钮等。IDE系统的模拟部件212可以模拟零件和操作员在工厂或生产区域的数字化表示内的移动——包括安全系统行为的模拟——以确认将安全地执行生产序列。在一些实施方式中,当设计人员正在虚拟设计环境内布置和配置所提议的安全装备时,模拟部件212可以在后台执行该模拟,并且经由VR呈现来呈现指示开发人员提议的安全解决方案是否将可靠地工作的动态反馈。这可以包括估计提议系统的安全完整性等级(SIL)评级,以及指示系统是否满足垂直领域特定的安全要求。在一些实施方式中,该方法也可以应用于运动系统的设计。例如,设计人员可以经由VR交互数据1006提交将两个轴一起凸轮传动的设计输入,并且模拟部件212可以动态地确认将实现期望的运动轮廓。通常,IDE系统的动态模拟特征可以使得能够以这种方式并行执行设计和测试。
在一些实施方式中,项目生成部件206还可以分析工厂模型1002和由开发人员提交的设计数据(例如,设计输入512和/或VR交互数据1006),并基于该分析来确定操作和/或维护新的或修改的自动化系统所需的操作员或其他角色的工人的数量。项目生成部件206可以在工厂模型1002内创建表示这些预期工人的对象,并且虚拟渲染部件210可以在VR呈现内渲染表示这些工人的人物图标1116。用户接口部件204还可以将该劳动力推荐报告给设计人员进行考虑。
可以通过多种方式生成用作虚拟设计环境的基础的数字工厂模型1002。根据将现有工厂导入到工业IDE系统202中以升级或扩展现有机器或生产线的一种方法,可以部署对现有工厂进行建模并将发现的元素添加到虚拟设计环境的搜寻器。搜寻器可以横穿工厂以识别数据、装备和其他资产,并将数字模型构建为现有系统的拓扑视图。根据另一方法,可以通过利用可穿戴AR/VR器具(例如器具1010)在工厂中走动来执行用户现有系统的审核,该可穿戴的AR/VR器具收集用于构建数字模型1002的视觉和扫描信息。数据不仅可以包括机器和其他工业资产,还可以包括环境内的管道、导管、线缆馈送链路和其他物理实体。可以由器具1010的穿戴者使用语音或手势将标签或补充信息动态地添加到模型1002。这可以至少产生工厂模型1002的骨架结构,该骨架结构可以利用历史或实时数据进一步增强。
工厂模型1002还可以基于对电缆馈送及其计算的距离、变速箱、安装方式等的识别来估计和记录工厂环境的电气和机械特性。这些估计的特性可以包括在审核期间检测到的线缆两端的阻抗、齿轮传动比(例如,通过对变速箱的图像或视频中的齿进行计数而获得)、应力、电压降、干扰、机械负载等。可以基于对机械联动装置的识别和分析(例如,通过基于原动机正在通过变速箱还是由皮带驱动的系统来估计负载)来确定对机械负载的估计。还可以由IDE系统202识别和利用电力与数据线缆——现有的和计划的或设计的线缆——之间的物理关系以生成设计推荐;例如,在适当的地方推荐屏蔽线缆,指示合适的接线盒位置,建议将数据线缆托架移离附近的电力线缆等。通常,工业IDE系统202不仅捕获工厂模型1002的尺寸,还应用行业专门知识来生成关于现有或提议的工厂设计的推荐。
在一些实施方式中,图像分析部件214可以将来自2D或3D相机的图像(例如,视频或图像数据604)转换为可以添加到工厂模型1002的自动化对象222。在这样的实施方式中,图像分析部件214可以分析图像数据604以识别记录在图像数据604中的对象、空间和距离,并且该环境信息可以合并到工厂模型1002中。工厂模型1002的部分还可以通过将工程图(例如,CAD文件)转换成自动化对象222及其关联的联接来构建。数字工厂模型1002中的元素可以链接至自动化对象222,自动化对象222本身可以链接至以下项或与以下项相关联:3D或2D可视化、警报、控制编码、启动过程、验证报告、模拟、文档以及与由对象表示的工业资产相关联的其他这样的属性(例如,以上结合图4描述的属性)。也可以利用识别相关联的资产的位置的位置信息对自动化对象进行地理标记。
在完成新的或改进的工业控制系统的设计之后,可以如上面结合图8和图9所描述的部署得到的系统项目302,该系统项目302至少部分地基于经由设计人员与安装场所的VR呈现的交互提交的设计输入而生成。
在一些实施方式中,在新系统已经调试之后,可以利用构成数字工厂模型1002的自动化对象222,在使用IDE系统202设计的新自动化系统的运行时间期间向用户呈现定制的增强现实(AR)呈现。可以基于由虚拟渲染部件210接收和处理的不同信息的组合来生成AR呈现。图12是示出在调试设计的自动化系统之后由IDE系统202利用以生成AR呈现的数据输入的图。IDE系统202可以从整个工厂环境中的工业设备或系统1212收集工厂数据1210。IDE系统202还维护用于生成虚拟设计环境的工厂模型1002,在该虚拟设计环境内设计人员生成系统项目302的至少一部分。
由虚拟渲染部件210支持的渲染引擎被配置成基于工厂模型中指定的渲染限定来生成工业区域的交互式AR呈现。虚拟渲染部件210利用收集的工厂数据1210的选定子集(以及基于工厂数据1210的子集计算的生产或运营统计信息)填充该增强现实呈现,并且IDE系统的用户接口部件204将所得到的聚合AR呈现传送至可穿戴器具206作为AR呈现数据1204。虚拟渲染部件210可以生成呈现,使得工厂数据1210的项目被覆盖在用户视野内的位置处,这些位置使得将数据项目放置在与数据项目相关的工业资产的图形表示上或附近。
被选择用于在给定时间在器具1010上渲染的工厂数据的子集以及数据被渲染的位置是根据指示器具的当前位置、定向和视线的位置和定向数据1008。呈现的数据还可以根据穿戴者的身份或角色(如从可穿戴器具1010接收到的用户身份或角色数据1202所指示的)。该身份或角色数据1202可以与用户简档1222交叉引用,用户简档1222限定了允许各个用户或用户角色查看的信息的类型或集合。可以为其限定定制视图的角色可以包括但不限于操作员、工程师、维护人员、工厂管理人员、会计人员等。
自动化对象222的一些实施方式可以包括AR属性,该AR属性定义了相关联的资产的合适的AR呈现。例如,罐自动化对象222可以具有相关联的代码、小部件、文档、示意图等以及充当资产的数字表示以用于可视化的相关联的AR对象。该AR对象可以链接至其对应的物理资产(例如,使用自动化对象的经地理标记的位置属性),使得即使资产改变位置,其AR表示也跟随该资产。
利用包括自动化对象222——自动化对象222表示在模型内虚拟化的资产——的虚拟工厂模型1002,可穿戴器具1010的穿戴者可以启动根据穿戴者希望在横穿工厂期间看到的信息的类型来对器具1010上呈现的可用AR数据进行过滤的模式。例如,穿戴者可以请求在穿戴者横穿工厂车间时,仅将与现有警报或性能问题相关的数据显示在器具1010上作为AR呈现的一部分。其他示例数据过滤模式可以包括渲染与维护问题相关的信息的预测性维护模式、渲染各个资产的能量利用信息的能耗模式、清洁模式或其他这样的过滤模式。该AR数据可以被渲染在可穿戴器具1010上,作为用户视野内的以下视野内位置处的覆盖,所述位置使得AR数据项放置在相关工业资产上或附近。经由可穿戴器具1010呈现的AR数据也可以根据用户角色(操作员、工程师、工厂管理人员等)。
在一些实施方式中,IDE系统的模拟部件212可以在运行时期间使用在设计阶段期间构建或更新的工厂模型1002来执行对物理自动化系统的虚拟模拟。该模拟可以与现实世界的工业资产并行运行,并且可以利用由物理系统生成和从物理系统收集的历史或实时数据进行连续更新。模拟部件212可以监测物理系统并将性能与模型驱动的模拟的结果进行比较,以识别可能的性能下降,可能的性能下降包括但不限于装备劣化、与预期性能或优选性能的偏差(例如,与指示可接受的性能的关键性能指标的偏差)或其他这样的性能问题。在一些实施方式中,构成工厂模型1002的自动化对象222可以包括促进这样的模拟的模拟属性。
模拟部件212还可以在部署之前执行模拟以测试提议的控制编程并验证控制编程将按预期执行。为此,工厂模型1002的一些实施方式不仅可以对工业资产的物理外观、尺寸和位置进行建模,还可以对这些资产的某些行为(例如,对关于移动、速度、温度、流量、填充水平等的控制输入的响应)进行建模。这可以使得数字工厂模型1002能够充当用于测试控制程序或设备配置的模拟环境。图13是示出被测试的控制程序1302与工厂模型1002之间的交互的通用框图。控制程序1302可以是提交给IDE系统202用于测试的程序,或者可以是由项目生成部件206生成作为系统项目302的一部分的控制程序。在该示例中,工业IDE系统202的模拟部件212充当工业控制器模拟器,以对工厂模型1002执行控制程序1302。
工厂模型1002可以模拟要由控制程序1302监测和调节的物理工业自动化系统的各个方面。模拟部件212可以虚拟地将控制程序1302与工厂模型1002接口以交换虚拟I/O数据,以便模拟现实世界控制。控制程序1302可以包括用于处理读入到控制器中的输入信号以及控制来自控制器的输出信号的任何可想到类型的代码,包括但不限于梯形逻辑、顺序功能图表、功能框图或结构化文本。控制程序1302被设计成调节通过工厂模型1002建模的自动化系统。工厂模型1002通过生成数字和模拟I/O值来在数学上对要调节的系统进行建模,数字和模拟I/O值表示例如传感器输出、计量输出或与预期由正在建模的物理系统生成的数据类似的其他工厂数据。可以通过工厂模型1002并且在某些情况下通过表示资产的自动化对象222针对每个工业资产限定这些输入和输出。
模拟部件212将该模拟输出数据1808提供给控制程序1302,控制程序1302接收该数据作为一个或更多个虚拟物理输入。控制程序1302根据用户限定的算法处理这些输入,并且基于该处理生成数字和/或模拟控制器输出数据1306。该输出数据1306表示将由执行控制程序1302的控制器生成并且被传送至包括自动化系统的硬连线现场设备的物理输出(例如,PID回路控制输出、螺线管激励输出、马达控制输出等)。控制器输出数据1306被提供至相应地更新模拟输出数据1308的工厂模型1002的适当输入点。该模拟技术可以用于在不会将现场装备和机器置于危险中的情况下测试和调试控制程序,以模拟对工厂或机器操作的修改并且估计这样的修改如何影响某些性能或财务度量,或者执行其他分析。
模拟部件212可以被配置成模拟多个控制设备的执行,多个控制设备包括但不限于工业控制器、马达驱动器和其他这样的控制设备。随着更多的模拟控制设备与工厂模型1002集成,可以实现物理自动化系统的数字孪生。该数字孪生可以用于测试与其现实世界对应物相似的虚拟化装备上的新控制程序,执行预测分析以估计资产维护或更换安排或其他这样的功能。
相对于与IDE系统交互以进行工业控制应用的开发的常规方法,本文描述的支持VR设计环境的工业IDE系统的实施方式可以提供更直观的设计接口,使得开发人员能够在安装区域的三维VR呈现内使用自然手势提交设计输入,自然手势然后由IDE系统转换成可执行的控制代码、可视化、设备配置或自动化系统项目的其他软件方面。
图14示出了根据本申请的一个或更多个实施方式的方法。虽然出于简化说明的目的而将本文中示出的方法示出和描述为一系列动作,但是应当理解和认识到,本发明不受这些动作的顺序的限制,因为一些动作可以据此按照与本文示出和描述的顺序不同的顺序发生以及/或者与其他动作同时发生。例如,本领域技术人员将理解和认识到,方法可以可替选地例如以状态图表示为一系列相互关联的状态或事件。此外,实现根据本发明的方法不需要所示出的动作中的全部。此外,当不同实体实现方法的不同部分时,交互图可以表示根据本公开的方法或方法。此外,所公开的示例方法中的两种或更多种方法可以彼此组合地实现,以实现本文所描述的一个或更多个特征或优点。
图14示出了用于经由与虚拟工业设计环境的交互来生成可执行的工业自动化项目部件的示例性方法1400。首先,在1402处,在可穿戴器具上渲染工业区域的虚拟现实(VR)呈现。VR呈现可以包括工厂设施内的安装区域的3D虚拟化,在该安装区域中要安装新的自动化系统或者要对现有的自动化系统进行升级或修改。在一些实施方式中,可以在模拟穿戴者在安装区域内的存在的第一人称视角与将安装区域渲染为用户可以与之虚拟交互的虚拟缩小模型的外部视角之间切换VR呈现。
在1404处,接收表示可穿戴器具的穿戴者与VR呈现的手动交互或手势的交互数据。由交互数据表示的手动交互可以指示穿戴者针对正在安装或修改的工业自动化系统的设计目标。可以由交互数据表示的交互可以包括,例如,模拟将工业设备、机器或其他资产放置在虚拟安装环境内的选定位置处的手势;模拟从安装环境中移除这样的资产的手势;模拟将工业资产从第一位置移动到第二位置(例如,使用抓握和移动手势)的手势;指示在两个指示位置之间放置管道或导管的手势;或其他这样的VR交互。在这方面,穿戴者与安装场所的VR表示的交互被识别并处理为指定正在设计或修改的自动化系统的结构和操作要求的设计输入。
在1406处,将在步骤1404接收到的交互数据转换成正在设计的工业自动化设备的系统项目的可执行部件。系统项目的可执行部件可以包括,例如,可以在工业控制设备、HMI终端、AR/VR可视化系统或其他这样的目标设备中的至少一个上部署和执行的一个或更多个可执行文件。根据由交互数据表示的结构和操作要求设计可执行部件。在1408处,确定项目开发是否完成。一旦完成了对系统项目的开发,在1410处,将系统项目数据部署到一个或更多个工业控制设备、工业可视化系统或另一类型的可配置工业设备以用于执行。
本文描述的实施方式、系统和部件以及在其中可以执行本说明书中阐述的各个方面的控制系统和自动化环境可以包括计算机或网络部件,例如能够跨网络进行交互的服务器、客户端、可编程逻辑控制器(PLC)、自动化控制器、通信模块、移动计算机、移动车辆的车载计算机、无线部件、控制部件等。计算机和服务器包括一个或更多个处理器——采用电信号执行逻辑运算的电子集成电路——一个或更多个处理器被配置成执行存储在介质中的指令,所述介质例如随机存取存储器(RAM)、只读存储器(ROM)、硬盘驱动器以及可以包括记忆棒、存储卡、闪存驱动器、外部硬盘驱动器等的可移除存储设备。
类似地,本文中所使用的术语PLC或自动化控制器可以包括可以跨多个部件、系统和/或网络共享的功能。例如,一个或更多个PLC或自动化控制器可以跨网络与各种网络设备进行通信和协作。这基本上可以包括经由网络进行通信的任何类型的控件、通信模块、计算机、输入/输出(I/O)设备、传感器、致动器和人机接口(HMI),该网络包括控制网络、自动化网络和/或公共网络。PLC或自动化控制器还可以与各种其他设备进行通信并控制各种其他设备,各种其他设备例如标准或安全级I/O模块,包括模拟、数字、编程/智能I/O模块、其他可编程控制器、通信模块、传感器、致动器、输出设备等。
网络可以包括公共网络,例如因特网、内联网以及自动化网络,例如包括设备网、控制网、安全网络和以太网/IP的控制和信息协议(CIP)网络。其他网络包括以太网、DH/DH+、远程I/O、现场总线、Modbus、Profibus、CAN、无线网络、串行协议等。此外,网络设备可以包括各种可能性(硬件和/或软件部件)。这些包括诸如以下的部件:具有虚拟局域网(VLAN)能力的交换机、LAN、WAN、代理、网关、路由器、防火墙、虚拟专用网络(VPN)设备、服务器、客户端、计算机、配置工具、监测工具和/或其他设备。
为了提供所公开主题的各个方面的上下文,图15和图16以及以下讨论旨在提供对在其中可以实现所公开主题的各个方面的合适环境的简要的总体描述。尽管以上已经在可以在一个或更多个计算机上运行的计算机可执行指令的一般上下文中描述了实施方式,但是本领域技术人员将认识到,也可以结合其他程序模块和/或作为硬件和软件的组合实现实施方式。
通常,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、部件、数据结构等。此外,本领域技术人员将理解,可以利用其他计算机系统配置来实践本发明的方法,计算机系统配置包括单处理器或多处理器计算机系统、小型计算机、大型计算机、物联网(IoT)设备、分布式计算系统以及个人计算机、手持计算设备、基于微处理器的或可编程的消费类电子产品等,每个可以可操作地耦接至一个或更多个相关联的设备。
也可以在分布式计算环境中实践本文示出的实施方式,在分布式计算环境中某些任务由通过通信网络链接的远程处理设备来执行。在分布式计算环境中,程序模块可以位于本地存储器存储设备和远程存储器存储设备二者中。
计算设备通常包括各种介质,各种介质可以包括计算机可读存储介质、机器可读存储介质和/或通信介质,机器可读存储介质和通信介质两个术语在本文中如下彼此不同地使用。计算机可读存储介质或者机器可读存储介质可以是能够由计算机访问的任何可用存储介质,并且包括易失性介质和非易失性介质、可移除介质和非可移除介质两者。作为示例而非限制,计算机可读存储介质或机器可读存储介质可以结合任何方法或技术来实现,以存储信息诸如计算机可读或机器可读指令、程序模块、结构化数据或非结构化数据。
计算机可读存储介质可以包括但不限于随机存取存储器(RAM)、只读存储器(ROM)、电可擦可编程只读存储器(EEPROM)、闪存或其他存储技术、致密盘只读存储器(CD-ROM)、数字多功能盘(DVD)、蓝光光盘(BD)或其他光盘存储装置、磁带盒、磁带、磁盘存储装置或其他磁性存储设备、固态驱动器或其他固态存储设备或者其他可以用于存储所需信息的有形和/或非暂态介质。在这方面,应将本文中应用于存储装置、存储器或计算机可读介质的术语“有形的”或“非暂态的”理解为作为修饰仅排除传播的暂态信号本身,而不放弃所有本身不仅是传播的暂态信号的标准存储装置、存储器或计算机可读介质的权利。
可以通过一个或更多个本地或远程计算设备例如针对关于由媒介存储的信息的多种操作经由访问请求、查询或其他数据检索协议来访问计算机可读存储介质。
通信介质通常体现为数据信号例如调制数据信号中的计算机可读指令、数据结构、程序模块或其他结构化或非结构化数据,调制数据信号例如载波或其他传输机制,并且包括任何信息传送或传输介质。术语“一个或多个调制数据信号”指具有以将信息编码在一个或更多个信号中的方式进行设置或改变的一个或更多个特征的信号。作为示例而非限制,通信介质包括有线介质例如有线网络或直接有线连接,以及无线介质例如声音、RF、红外以及其他无线介质。
再次参照图15,用于实现本文描述的各方面的各种实施方式的示例环境1500包括计算机1502,计算机1502包括处理单元1504、系统存储器1506和系统总线1508。系统总线1508将包括但不限于系统存储器1506的系统部件耦接至处理单元1504。处理单元1504可以是各种商业可用处理器中的任一种。双微处理器以及其他多处理器架构也可以用作处理单元1504。
系统总线1508可以是以下若干类型总线结构中的任一种:还可以互连至存储器总线(具有或不具有存储器控制器)、外围总线以及使用多种商业可用总线架构中的任一种的本地总线。系统存储器1506包括ROM 1510和RAM 1512。基本输入/输出系统(BIOS)可以存储在非易失性存储器诸如ROM、可擦除可编程只读存储器(EPROM)、EEPROM中,其中,BIOS包含有助于在例如启动期间在计算机1502内的元件之间传输信息的基本例程。RAM 1512还可以包括高速RAM例如用于缓存数据的静态RAM。
计算机1502还包括内部硬盘驱动器(HDD)1514(例如,EIDE、SATA)、一个或更多个外部存储设备1516(例如,磁性软盘驱动器(FDD)1516、存储棒或闪存驱动器读取器、存储卡读取器等)和光盘驱动器1520(例如,其可以从CD-ROM盘、DVD、BD等进行读写)。虽然内部HDD1514被示为位于计算机1502内,但是内部HDD 1514也可以被配置成在合适的机箱(未示出)中供外部使用。另外,虽然在环境1500中未示出,但是除了HDD 1514以外可以使用固态驱动器(SSD)或者使用固态驱动器(SSD)来代替HDD 1514。HDD 1514、外部存储设备1516和光盘驱动器1520可以分别通过HDD接口1524、外部存储接口1526和光盘驱动器接口1528连接至系统总线1508。用于外部驱动器实现方式的接口1524可以包括通用串行总线(USB)和电气与电子工程师协会(IEEE)1394接口技术中的至少一者或两者。其他外部驱动连接技术在本文描述的实施方式的构思之内。
驱动器以及其关联的计算机可读存储介质提供数据、数据结构、计算机可执行指令等的非易失性存储。针对计算机1502,驱动器以及存储介质以合适的数字格式提供任何数据的存储。尽管上面对计算机可读存储介质的描述是指各种类型的存储设备,但是本领域技术人员应该理解,计算机可读的其他类型的存储介质——无论是当前存在的还是将来开发的——也可以在示例操作环境中使用,并且此外,任何这样的存储介质可以包含用于执行本文描述的方法的计算机可执行指令。
在驱动器和RAM 1512中可以存储多个程序模块,包括操作系统1530、一个或更多个应用程序1532、其他程序模块1534以及程序数据1536。操作系统、应用、模块和/或数据的全部或部分也可以缓存在RAM 1512中。可以使用各种商业上可用的操作系统或操作系统的组合来实现本文描述的系统和方法。
计算机1502可以可选地包括模拟技术。例如,管理程序(未示出)或其他中间设备可以模拟用于操作系统1530的硬件环境,并且模拟的硬件可以可选地不同于图15中所示的硬件。在这样的实施方式中,操作系统1530可以包括在计算机1502上托管的多个虚拟机(VM)的一个VM。此外,操作系统1530可以为应用程序1532提供运行时环境诸如Java运行时环境或.NET框架。运行时环境是一致的执行环境,其使得应用程序1532能够在包括运行时环境的任何操作系统上运行。类似地,操作系统1530可以支持容器,并且应用程序1532可以是容器的形式,容器是重量轻、独立、可执行的软件包,软件包括例如代码、运行时间、系统工具、系统库和应用的设置。
此外,可以利用安全模块诸如可信处理模块(TPM)来启用计算机1502。例如,利用TPM,启动部件及时使下一启动部件散列,并且等待结果与安全值的匹配,然后再加载下一启动部件。该过程可以发生在计算机1502的代码执行栈中的任何层上,例如应用在应用执行级或操作系统(OS)内核级处,从而在任何代码执行级处实现安全性。
用户可以通过一个或更多个有线/无线输入设备例如键盘1540、触摸屏1540以及定点设备诸如鼠标1542将命令和信息输入至计算机1502中。其他输入设备(未示出)可以包括麦克风、红外(IR)遥控器、射频(RF)遥控器或其他遥控器、操纵杆、虚拟现实控制器和/或虚拟现实耳机、游戏手柄、触控笔、图像输入设备例如相机、手势传感器输入设备、视觉运动传感器输入设备、情绪或面部检测设备、生物特征输入设备例如指纹或虹膜扫描仪等。这些以及其他输入设备通常通过可以耦接至系统总线1508的输入设备接口1544连接至处理单元1504,但是也可以通过其他接口例如并行端口、IEEE 1394串行端口、游戏端口、USB端口、IR接口、接口等连接。
监测器1544或其他类型的显示设备也可以经由接口诸如视频适配器1548连接至系统总线1508。除了监测器1544之外,计算机通常还包括其他外围输出设备(未示出),例如扬声器、打印机等。
计算机1502可以使用逻辑连接经由与一个或更多个远程计算机诸如远程计算机1548的有线和/或无线通信在联网环境中操作。远程计算机1548可以是工作站、服务器计算机、路由器、个人计算机、便携式计算机、基于微处理器的娱乐器具、对等设备或其他常见网络节点,并且通常包括关于计算机1502所描述的许多或所有元件,但是为了简洁起见,仅示出了存储器/存储设备1550。所描述的逻辑连接包括与局域网(LAN)1552和/或更大的网络例如广域网(WAN)1554的有线/无线连接。这样的LAN和WAN联网环境在办公室以及公司很常见,并且促进企业内计算机网络诸如内部网,所述网络均可以连接至全球通信网络例如因特网。
当在LAN联网环境中使用时,计算机1502可以通过有线和/或无线通信网络接口或适配器1556连接至本地网络1552。适配器1556可以促进与LAN 1552的有线或无线通信,LAN1552还可以包括布置在其上用于以无线模式与适配器1556进行通信的无线接入点(AP)。
当在WAN联网环境中使用时,计算机1502可以包括调制解调器1558或可以经由用于通过WAN 1554建立通信的其他方式例如借助因特网连接至WAN 1554上的通信服务器。可以是内部或外部以及有线或无线设备的调制解调器1558经由输入设备接口1542连接至系统总线1508。在联网环境中,关于计算机1502描述的程序模块或程序模块的部分可以存储在远程存储器/存储设备1550中。将理解的是,所示的网络连接是示例,并且可以使用在计算机之间建立通信链接的其他方式。
当在LAN或WAN联网环境中使用时,计算机1502可以访问云存储系统或者除以上描述的外部存储设备1516以外的其他基于网络的存储系统或代替外部存储设备1516的其他基于网络的存储系统。通常,计算机1502与云存储系统之间的连接可以分别通过LAN 1552或WAN 1554例如通过适配器1556或调制解调器1558来建立。在将计算机1502连接至关联的云存储系统时,外部存储接口1526可以在适配器1556和/或调制解调器1558的帮助下如在其他类型的外部存储装置情况下一样管理由云存储系统提供的存储装置。例如,外部存储接口1526可以被配置成提供对云存储源的访问,就好像这些源物理上连接至计算机1502。
计算机1502可以进行操作来以无线通信方式与可操作地布置的任何无线设备或实体进行通信,例如打印机、扫描仪、台式计算机和/或便携式计算机、便携式数据助理装置、通信卫星、与无线可检测标签关联的任何装备或位置(例如信息亭、报摊、商店货架等)以及电话。这可以包括无线保真(Wi-Fi)和无线技术。因此,通信可以是如常规网络情况下的预定义结构或仅是至少两个设备之间的自组织通信。
图16是可以与所公开的主题交互的样本计算环境1600的示意性框图。样本计算环境1600包括一个或更多个客户端1602。客户端1602可以是硬件和/或软件(例如线程、进程、计算设备)。样本计算环境1600还包括一个或更多个服务器1604。服务器1604也可以是硬件和/或软件(例如线程、进程、计算设备)。服务器1604可以容纳通过采用例如本文中所描述的一个或更多个实施方式来执行变换的线程。客户端1602与服务器1604之间的一种可能的通信可以是适于在两个或更多个计算机进程之间传输的数据包形式。样本计算环境1600包括可以用于促进客户端1602与服务器1604之间的通信的通信框架1606。客户端1602可操作地连接至可以用于将信息本地存储至客户端1602的一个或更多个客户端数据存储装置1608。类似地,服务器1604可操作地连接至可以用于将信息本地存储至服务器1604的一个或更多个服务器数据存储装置1610。
上面已经描述的内容包括本发明的示例。当然不可能出于描述所公开的主题的目的而描述部件或方法的每种能想到的组合,但本领域普通技术人员可以认识到,本新发明的许多其他组合和排列也是可以的。因此,所公开的主题旨在包含落在所附权利要求的精神和范围内的所有这样的改变、修改和变型。
特别地以及关于由以上描述的部件、设备、电路、系统等执行的各种功能,用于描述这样的部件的术语(包括对“装置”的引用)旨在对应于执行所描述的部件的特定功能的任何部件(例如,功能等同),即使部件在结构上不等同于在本文中所示的所公开主题的示例性方面中执行功能的结构,也仍然如此,除非另有说明。在这方面,还将认识到,所公开的主题包括系统以及具有用于执行所公开主题的各种方法的动作和/或事件的计算机可执行指令的计算机可读介质。
此外,虽然所公开的主题的特定特征可能仅针对若干实现方式中的一种被公开,但是这样的特征可以与其他实现方式的一个或更多个其他特征组合,这可能对于任何给定或特定应用是期望的和有利的。此外,在具体实施方式或权利要求书中使用术语“包括(includes)”和“包含(including)”及其变型方面而言,这些术语旨在以与术语“包括(comprising)”类似的方式是包括性的。
在本申请中,词语“示例性”用于表示用作示例、实例或说明。在本文中被描述为“示例性”的任何方面或设计未必被解释为比其他方面或设计优选或有利。而是,使用词语示例性旨在以具体的方式来呈现概念。
本文中所描述的各个方面或特征可以使用标准编程和/或工程技术来实现为方法、装置或物品。本文中所使用的术语“制品”旨在包含能够从任何计算机可读设备、载体或介质访问的计算机程序。例如,计算机可读介质可以包括但不限于磁存储设备(例如,硬盘、软盘、磁条......)、光盘(例如,致密盘(CD)、数字通用盘(DVD)......)、智能卡和闪速存储设备(例如,卡、棒、键驱动器......)。

Claims (17)

1.一种用于开发工业应用的系统,包括:
存储器,其存储可执行部件;以及
操作上耦接至所述存储器的处理器,所述处理器执行所述可执行部件,所述可执行部件包括:
虚拟渲染部件,其被配置成在可穿戴器具上渲染工业设施的交互式三维虚拟现实VR表示;
用户接口部件,其被配置成接收表示所述可穿戴器具的穿戴者与所述工业设施的所述VR表示的手动交互的VR交互数据,其中,所述手动交互指示限定工业自动化系统的各方面的设计输入并且包括以下中的至少之一:指示将工业资产放置在所述VR表示内的指定位置处的手势、指示将工业资产从所述VR表示内的第一位置移动到所述VR表示内的第二位置的手势、指示跨所述VR表示内的多个位置复制工业资产的手势、指示要由运动设备实行的轨迹的手势、或者指示物料要运输通过的路径的手势;以及
项目生成部件,其被配置成将所述VR交互数据转换成满足由所述手动交互表示的所述设计输入的可执行系统项目数据,其中,所述系统项目数据至少包括被配置成执行对所述工业自动化系统的控制的可执行工业控制程序和被配置成对所述工业自动化系统的至少一部分可视化的工业可视化应用。
2.根据权利要求1所述的系统,其中,所述系统项目数据还包括被配置成设置工业设备的配置参数的工业设备配置数据、工程图、布线安排或物料清单中的至少之一。
3.根据权利要求1所述的系统,其中,所述用户接口部件被配置成在第一人称视图与外部视图之间选择性地切换所述VR表示,所述第一人称视图模拟所述穿戴者在所述工业设施内的存在,所述外部视图渲染所述工业设施的缩小的模型视图。
4.根据权利要求1所述的系统,其中,所述项目生成部件被配置成响应于确定所述VR交互数据表示指示将工业资产放置在所述VR表示内的手动交互,将表示所放置的工业资产的自动化对象添加到所述系统项目数据。
5.根据权利要求4所述的系统,其中,所述自动化对象与所放置的工业资产的输入、输出、分析例程、警报、安全特征或图形表示中的至少之一相关联。
6.根据权利要求1所述的系统,所述可执行部件还包括图像分析部件,所述图像分析部件被配置成转换提交给所述用户接口部件的视频或图像数据,以识别在所述视频或图像数据内表示的一个或更多个工业资产以及所述一个或更多个工业资产的相对位置,
其中,所述项目生成部件还被配置成基于所述一个或更多个工业资产和所述相对位置来生成所述系统项目数据的至少一部分。
7.根据权利要求1所述的系统,其中,
所述虚拟渲染部件被配置成基于对所述工业设施进行建模的数字工厂模型和所述工业设施内的现有自动化系统来渲染所述VR表示,并且
所述项目生成部件还被配置成响应于确定由所述手动交互指示的所述设计输入的至少一部分需要对所述现有自动化系统进行设计修改,来生成反映所述设计修改的系统项目数据。
8.根据权利要求7所述的系统,其中,所述设计修改包括对与所述现有自动化系统相关联的控制程序的修改、与所述现有自动化系统相关联的控制信号或电力线的重新布线或对与所述现有自动化系统相关联的控制回路的重新调整中的至少之一。
9.根据权利要求1所述的系统,其中,
所述虚拟渲染部件被配置成基于对所述工业设施进行建模的数字工厂模型来渲染所述VR表示,并且
所述可执行部件还包括模拟部件,所述模拟部件被配置成执行针对所述数字工厂模型来测试所述系统项目数据的至少一部分以确定所述系统项目数据的所述部分是否满足所述设计输入的模拟。
10.一种用于开发工业应用的方法,包括:
通过包括处理器的工业集成开发环境IDE系统在可穿戴客户端设备上渲染工业区域的交互式三维虚拟现实VR呈现;
通过工业IDE系统接收表示所述可穿戴客户端设备的穿戴者与所述工业区域的所述VR呈现的手动交互的VR交互数据,其中,所述手动交互指示工业自动化系统的设计规范并且包括以下中的至少之一:指示将工业资产放置在所述VR呈现内的指定位置处的手势、指示将工业资产从所述VR呈现内的第一位置移动到所述VR呈现内的第二位置的手势、指示跨所述VR呈现内的多个位置复制工业资产的手势、指示要由运动设备实行的轨迹的手势、或者指示物料要运输通过的路径的手势;以及
通过所述工业IDE系统将所述VR交互数据转换成满足由所述手动交互表示的所述设计规范的可执行系统项目数据,其中,所述转换包括将所述VR交互数据转换成至少可执行工业控制程序和可视化应用,所述可执行工业控制程序被配置成执行对所述工业自动化系统的控制,所述可视化应用被配置成对所述工业自动化系统的至少一部分可视化。
11.根据权利要求10所述的方法,其中,所述转换还包括将所述VR交互数据转换成被配置成设置工业设备的配置参数的工业设备配置数据、工程图、布线安排或物料清单中的至少之一。
12.根据权利要求10所述的方法,其中,所述渲染包括将所述VR呈现选择性地渲染为第一人称视图和外部视图中的任一者,所述第一人称视图模拟所述穿戴者在所述工业区域内的存在,所述外部视图渲染所述工业区域的缩小的模型视图。
13.根据权利要求10所述的方法,其中,所述转换包括响应于确定所述VR交互数据表示指示将工业资产放置在所述VR呈现内的手动交互,将表示所放置的工业资产的自动化对象添加到所述系统项目数据。
14.根据权利要求13所述的方法,其中,所述添加包括添加与所放置的工业资产的输入、输出、分析例程、警报、安全特征或图形表示中的至少之一相关联的所述自动化对象。
15.根据权利要求10所述的方法,还包括:
通过所述工业IDE系统接收表示所述工业区域的至少一部分的视频或图像数据;
通过所述工业IDE系统转换所述视频或图像数据,以识别在所述视频或图像数据内表示的一个或更多个工业资产以及所述一个或更多个工业资产的相对位置;以及
通过所述工业IDE系统基于所述一个或更多个工业资产和所述相对位置来生成所述系统项目数据的至少一部分。
16.一种非暂态计算机可读介质,其上存储有指令,所述指令响应于执行而使包括处理器的系统执行操作,所述操作包括:
在可穿戴器具上渲染工业设施的交互式三维虚拟现实VR呈现;
接收表示所述可穿戴器具的穿戴者与所述工业设施的所述VR呈现的手动交互的VR交互数据,其中,所述手动交互指示工业自动化系统的设计规范并且包括以下中的至少之一:指示将工业资产放置在所述VR呈现内的指定位置处的手势、指示工业资产从所述VR呈现内的第一位置移动到所述VR呈现内的第二位置的手势、指示跨所述VR呈现内的多个位置复制工业资产的手势、指示要由运动设备实行的轨迹的手势、或者指示物料要运输通过的路径的手势;以及
将所述VR交互数据转换成满足由所述手动交互表示的所述设计规范的系统项目数据,其中,所述转换包括将所述VR交互数据转换成至少可执行工业控制程序和可视化应用,所述可执行工业控制程序被配置成执行对所述工业自动化系统的控制,所述可视化应用被配置成对所述工业自动化系统的至少一部分可视化。
17.根据权利要求16所述的非暂态计算机可读介质,其中,所述渲染包括将所述VR呈现选择性地渲染为第一人称视图和外部视图中的任一者,所述第一人称视图模拟所述穿戴者在所述工业设施内的存在,所述外部视图渲染所述工业设施的缩小的模型视图。
CN202010237332.7A 2019-09-26 2020-03-30 用于开发工业应用的系统和方法及非暂态计算机可读介质 Active CN112558928B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/584,210 2019-09-26
US16/584,210 US11392112B2 (en) 2019-09-26 2019-09-26 Virtual design environment

Publications (2)

Publication Number Publication Date
CN112558928A CN112558928A (zh) 2021-03-26
CN112558928B true CN112558928B (zh) 2024-04-05

Family

ID=70058256

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010237332.7A Active CN112558928B (zh) 2019-09-26 2020-03-30 用于开发工业应用的系统和方法及非暂态计算机可读介质

Country Status (3)

Country Link
US (2) US11392112B2 (zh)
EP (1) EP3798775A1 (zh)
CN (1) CN112558928B (zh)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11318616B2 (en) 2019-11-11 2022-05-03 Rockwell Automation Technologies, Inc. Robotic digital twin control with industrial context simulation
US11526159B2 (en) 2020-02-14 2022-12-13 Rockwell Automation Technologies, Inc. Augmented reality human machine interface testing
JP7331738B2 (ja) * 2020-03-06 2023-08-23 横河電機株式会社 図面管理装置、図面管理システム、図面管理方法、及びプログラム
JP7276203B2 (ja) * 2020-03-06 2023-05-18 横河電機株式会社 情報処理装置、情報処理方法、及びプログラム
US11983825B2 (en) * 2020-05-22 2024-05-14 Ohio State Innovation Foundation Method and system for generating data-enriching augmented reality applications from a domain-specific language
US11487918B2 (en) * 2020-09-11 2022-11-01 International Business Machines Corporation Resultant digital replica
US11675936B2 (en) 2020-09-28 2023-06-13 Rockwell Automation Technologies, Inc. Unifying multiple simulation models
US20220171898A1 (en) * 2020-12-01 2022-06-02 International Business Machines Corporation Digital twin simulation of an article
US11846929B2 (en) * 2020-12-04 2023-12-19 Rockwell Automation Technologies, Inc. Automation visualization content delivery via container orchestration systems
US20220309753A1 (en) * 2021-03-25 2022-09-29 B/E Aerospace, Inc. Virtual reality to assign operation sequencing on an assembly line
DE112022002843A5 (de) * 2021-05-28 2024-03-21 Chemspeed Technologies Ag Verfahren zur Durchführung eines chemischen Arbeitsablaufs
CN113569328B (zh) * 2021-08-31 2024-02-23 重庆允丰科技有限公司 一种工厂三维模型搭建方法
WO2023033792A1 (en) * 2021-08-31 2023-03-09 Siemens Corporation Just-in-time safety systems
US20230066871A1 (en) * 2021-09-01 2023-03-02 Johnson Controls Tyco IP Holdings LLP User-interactive tools and methods for configuring building equipment systems
US11962470B2 (en) * 2021-09-24 2024-04-16 Schneider Electric USA, Inc. Method to commission a distributed system
CN114141079B (zh) * 2021-11-15 2023-12-15 中船舰客教育科技(北京)有限公司 智能产线mr虚拟训练系统、方法、电子设备及存储介质
EP4220316A1 (en) * 2022-02-01 2023-08-02 Abb Schweiz Ag System engineering tools and methods for industrial automation
US20230273588A1 (en) * 2022-02-28 2023-08-31 Rockwell Automation Technologies, Inc. Manufacturing process data conversion and structuring
US11853311B2 (en) * 2022-02-28 2023-12-26 Rockwell Automation Technologies, Inc. Manufacturing process data orchestration
US11880668B2 (en) * 2022-06-13 2024-01-23 International Business Machines Corporation Dynamically altering a code execution workflow during development using augmented reality
CN115277744B (zh) * 2022-06-23 2023-05-26 重庆长安汽车股份有限公司 一种对车辆远控功能进行功能定义和交互设计的方法
CN115033216B (zh) * 2022-08-10 2022-11-01 深圳市微克科技有限公司 基于智能穿戴设备的diy表盘设计互动系统
EP4345702A1 (en) * 2022-09-28 2024-04-03 Siemens Industry Software NV Method for generating a model, computer product, system
EP4345547A1 (de) * 2022-09-30 2024-04-03 Murrelektronik GmbH Verfahren für eine computer-gestützte installation von räumlich dezentral angeordneten, elektrischen komponenten einer maschine
EP4345554A1 (de) * 2022-09-30 2024-04-03 Murrelektronik GmbH Verfahren für eine computer-gestützte installation von räumlich dezentral angeordneten, elektrischen komponenten einer maschine

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108628595A (zh) * 2017-03-16 2018-10-09 西门子股份公司 增强现实环境下的控制应用程序的开发

Family Cites Families (138)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04280320A (ja) 1991-03-08 1992-10-06 Nec Corp プログラム自動生成装置
US7058617B1 (en) 1996-05-06 2006-06-06 Pavilion Technologies, Inc. Method and apparatus for training a system model with gain constraints
US6993456B2 (en) 1999-09-30 2006-01-31 Rockwell Automation Technologies, Inc. Mechanical-electrical template based method and apparatus
US6993745B1 (en) 2000-03-09 2006-01-31 Electronic Data Systems Corporation Method and system for modeling a legacy computer system
AU2001247743A1 (en) 2000-03-24 2001-10-08 Siemens Energy & Automation, Inc. Industrial automation system graphical programming language storage and transmission
US7917863B2 (en) 2000-06-13 2011-03-29 National Instruments Corporation System and method for graphically creating a sequence of motion control operations
US6516451B1 (en) 2000-07-05 2003-02-04 Clarence Wayne Patin Standards-integrated design software
US7313609B1 (en) 2000-08-09 2007-12-25 Schneider Automation Inc. Method and apparatus for programming an automation device
US8131827B2 (en) 2001-05-09 2012-03-06 Rockwell Automation Technologies, Inc. PLC with web-accessible program development software
WO2003001376A1 (en) 2001-06-22 2003-01-03 Wonderware Corporation A customizable system for creating supervisory process control and manufacturing information applications
US6799718B2 (en) 2001-07-10 2004-10-05 Borland Software Corp. Development assistance for mixed-language sources
US6819960B1 (en) 2001-08-13 2004-11-16 Rockwell Software Inc. Industrial controller automation interface
US8086664B2 (en) 2001-09-24 2011-12-27 Siemens Industry, Inc. Method and apparatus for programming programmable controllers and generating configuration data from a centralized server
US7500224B2 (en) 2002-11-01 2009-03-03 Microsoft Corporation Code blueprints
US20050187643A1 (en) 2004-02-19 2005-08-25 Pavilion Technologies, Inc. Parametric universal nonlinear dynamics approximator and use
US7650574B2 (en) 2004-05-11 2010-01-19 National Instruments Corporation Visually indicating problems found during programmatic analysis of a graphical program
US7650594B2 (en) 2004-05-27 2010-01-19 National Instruments Corporation Graphical program analyzer with framework for adding user-defined tests
US20060041440A1 (en) 2004-08-20 2006-02-23 International Business Machines Corporation Method, system and program product for managing a project
US20070209038A1 (en) 2006-02-13 2007-09-06 Carsten Fuchs Conflict avoidance and resolution in a distributed computing system
US7839416B2 (en) * 2006-03-10 2010-11-23 University Of Northern Iowa Research Foundation Virtual coatings application system
US7599897B2 (en) 2006-05-05 2009-10-06 Rockwell Automation Technologies, Inc. Training a support vector machine with process constraints
US7975233B2 (en) 2006-07-24 2011-07-05 National Instruments Corporation Automatic conversion of a textual language into a graphical program representation
US8812684B1 (en) 2006-09-28 2014-08-19 Rockwell Automation Technologies, Inc. Messaging configuration system
US20080092131A1 (en) 2006-10-16 2008-04-17 Invensys Systems, Inc. Centralized management of human machine interface applications in an object-based supervisory process control and manufacturing information system environment
US7934201B2 (en) 2006-10-17 2011-04-26 Artoftest, Inc. System, method, and computer readable medium for universal software testing
TW200828043A (en) * 2006-12-29 2008-07-01 Cheng-Hsien Yang Terminal try-on simulation system and operating and applying method thereof
US8464209B2 (en) 2007-03-19 2013-06-11 Microsoft Corporation Using collaborative development information in a team environment
US8312417B2 (en) 2007-05-18 2012-11-13 International Business Machines Corporation Using dynamic call graphs for creating state machines
US20090064103A1 (en) 2007-09-04 2009-03-05 Shih Hsueh-Fu Method for editing programmer logic controller (plc) program
US7930639B2 (en) 2007-09-26 2011-04-19 Rockwell Automation Technologies, Inc. Contextualization for historians in industrial systems
US7676294B2 (en) * 2007-09-27 2010-03-09 Rockwell Automation Technologies, Inc. Visualization of workflow in an industrial automation environment
US7899777B2 (en) * 2007-09-27 2011-03-01 Rockwell Automation Technologies, Inc. Web-based visualization mash-ups for industrial automation
US20090089234A1 (en) 2007-09-28 2009-04-02 Rockwell Automation Technologies, Inc. Automated code generation for simulators
WO2009062527A1 (en) 2007-11-13 2009-05-22 Telefonaktiebogalet Lm Ericsson (Publ) Technique for automatically generating software in a software development environment
US20090276752A1 (en) 2008-04-30 2009-11-05 International Business Machines Corporation Method for communicating collaborative software development information
US20100082133A1 (en) 2008-09-30 2010-04-01 Ics Triplex Isagraf Inc. Application builder for industrial automation
CN101788791B (zh) 2008-09-30 2014-07-30 Ics三重自动化软件有限公司 用于工业自动化的应用构建器
US8516312B2 (en) 2009-03-16 2013-08-20 Peter Beasley Behavior-based invention for predicting and avoiding network downtime
US8397215B2 (en) 2009-05-18 2013-03-12 National Instruments Corporation Executing a physical model with multiple physical domains in a web browser
US20120212484A1 (en) * 2010-02-28 2012-08-23 Osterhout Group, Inc. System and method for display content placement using distance and location information
US8818769B2 (en) 2010-10-28 2014-08-26 Parametric Technology Corporation Methods and systems for managing synchronization of a plurality of information items of a computer-aided design data model
US8667456B1 (en) 2011-04-20 2014-03-04 Google Inc. Cloud-based indexing for integrated development environments
US9389606B2 (en) 2011-11-11 2016-07-12 Rockwell Automation Technologies, Inc. Agile control model system and method
US9477936B2 (en) 2012-02-09 2016-10-25 Rockwell Automation Technologies, Inc. Cloud-based operator interface for industrial automation
US9223567B2 (en) 2012-02-17 2015-12-29 International Business Machines Corporation Integrated exchange of search results in an integrated software development environment
US20130332212A1 (en) 2012-06-06 2013-12-12 Alon Cohen Methods and systems for developing an optimised operational system in a network
US20140013313A1 (en) 2012-07-03 2014-01-09 Johan Eker Editor/Development Tool for Dataflow Programs
CN104380276A (zh) 2012-07-03 2015-02-25 惠普发展公司,有限责任合伙企业 管理云服务
US20140047413A1 (en) 2012-08-09 2014-02-13 Modit, Inc. Developing, Modifying, and Using Applications
US9032376B2 (en) 2012-09-28 2015-05-12 Synopsys, Inc. Static analysis of computer code to determine impact of change to a code component upon a dependent code component
WO2014092694A1 (en) 2012-12-11 2014-06-19 Hewlett-Packard Development Company, L.P. Provisioning tools for application development
US20140229389A1 (en) 2013-02-14 2014-08-14 Rockwell Automation Technologies, Inc. Industrial automation social media paradigms
US9786197B2 (en) 2013-05-09 2017-10-10 Rockwell Automation Technologies, Inc. Using cloud-based data to facilitate enhancing performance in connection with an industrial automation system
US20140337277A1 (en) 2013-05-09 2014-11-13 Rockwell Automation Technologies, Inc. Industrial device and system attestation in a cloud platform
US9880820B2 (en) 2013-06-02 2018-01-30 Microsoft Technology Licensing, Llc Programming language with extensions using dynamic keywords
US20150186119A1 (en) 2013-12-31 2015-07-02 Rockwell Automation Technologies, Inc. Industrial automation device with editor and graphical object mobile visualization
US20150248845A1 (en) * 2014-02-28 2015-09-03 Lincoln Global, Inc. Portable virtual welding system
CN105159656A (zh) 2014-06-16 2015-12-16 上海宝信软件股份有限公司 Plc软件编程辅助设计方法
RU2678356C2 (ru) 2014-10-02 2019-01-29 Сименс Акциенгезелльшафт Программирование автоматизации в 3d графическом редакторе с тесно связанной логикой и физическим моделированием
US10372107B2 (en) 2014-10-15 2019-08-06 Rockwell Automation Technologies, Inc. Custom properties in an application environment
US9804257B2 (en) * 2014-11-13 2017-10-31 WorldViz LLC Methods and systems for an immersive virtual reality system using multiple active markers
US11513477B2 (en) 2015-03-16 2022-11-29 Rockwell Automation Technologies, Inc. Cloud-based industrial controller
US11461936B2 (en) * 2015-03-17 2022-10-04 Raytrx, Llc Wearable image manipulation and control system with micro-displays and augmentation of vision and sensing in augmented reality glasses
US10950051B2 (en) * 2015-03-27 2021-03-16 Rockwell Automation Technologies, Inc. Systems and methods for presenting an augmented reality
US9898001B2 (en) * 2015-03-27 2018-02-20 Rockwell Automation Technologies, Inc. Systems and methods for enhancing monitoring of an industrial automation system
US10025287B2 (en) 2015-03-30 2018-07-17 Rockwell Automation Germany Gmbh & Co. Kg Method for assignment of verification numbers
US10387011B2 (en) 2015-05-08 2019-08-20 Rockwell Automation Technologies, Inc. System and method to capture and document cross-product compatibility status information for industrial devices
US9762454B2 (en) 2015-05-08 2017-09-12 Rockwell Automation Technologies, Inc. System and method to capture and document cross-product compatibility status information for industrial devices
EP3101565A1 (en) 2015-06-01 2016-12-07 Airbus Operations GmbH Aircraft assembly system
CN107708819A (zh) * 2015-06-01 2018-02-16 汤姆逊许可公司 用于虚拟现实的回应式动画
US10606562B2 (en) 2015-06-04 2020-03-31 Siemens Aktiengesellschaft Method and system for generating PLC code with a connectivity model
AU2016203818A1 (en) 2015-06-12 2017-01-05 Accenture Global Services Limited Data processor for project data
US10531127B2 (en) * 2015-06-19 2020-01-07 Serious Simulations, Llc Processes systems and methods for improving virtual and augmented reality applications
US20170103440A1 (en) * 2015-08-01 2017-04-13 Zhou Tian Xing Wearable augmented reality eyeglass communication device including mobile phone and mobile computing via virtual touch screen gesture control and neuron command
US10372834B2 (en) 2016-01-15 2019-08-06 DISCUS Software Company Creating and using an integrated technical data package
JP6896759B2 (ja) 2016-03-23 2021-06-30 フォグホーン システムズ, インコーポレイテッドFoghorn Systems, Inc. リアルタイムデータフロープログラミングにおけるパターン駆動型反応の合成
JP2017199077A (ja) 2016-04-25 2017-11-02 ファナック株式会社 複数台の産業機械を有する生産システムの動作を最適化するセルコントローラ
US11774944B2 (en) * 2016-05-09 2023-10-03 Strong Force Iot Portfolio 2016, Llc Methods and systems for the industrial internet of things
CA3045439A1 (en) * 2016-05-09 2017-11-16 Charles Howard CELLA Methods and systems for the industrial internet of things
GB201608576D0 (en) 2016-05-16 2016-06-29 Pro Intex It Ltd Functional behaviour test system and method
US10331541B2 (en) 2016-06-14 2019-06-25 Open Invention Network Llc Collaborative data sharing and data modification application
US20180025286A1 (en) 2016-07-25 2018-01-25 International Business Machines Corporation Detecting trends in evolving analytics models
US20180039905A1 (en) 2016-08-03 2018-02-08 International Business Machines Corporation Large scale distributed training of data analytics models
US20180052451A1 (en) 2016-08-19 2018-02-22 Rockwell Automation Technologies, Inc. Remote industrial automation site operation in a cloud platform
US10764255B2 (en) 2016-09-21 2020-09-01 Rockwell Automation Technologies, Inc. Secure command execution from a cloud monitoring system to a remote cloud agent
US10559043B1 (en) 2016-10-25 2020-02-11 Flextronics Ap, Llc. Visualization tool for displaying and configuring routing paths and related attributes for tasks performed in manufacturing processes
US10735691B2 (en) * 2016-11-08 2020-08-04 Rockwell Automation Technologies, Inc. Virtual reality and augmented reality for industrial automation
US10388075B2 (en) * 2016-11-08 2019-08-20 Rockwell Automation Technologies, Inc. Virtual reality and augmented reality for industrial automation
US10866631B2 (en) * 2016-11-09 2020-12-15 Rockwell Automation Technologies, Inc. Methods, systems, apparatuses, and techniques for employing augmented reality and virtual reality
WO2018132622A1 (en) * 2017-01-11 2018-07-19 Taqtile Managing virtual reality objects
US20210327304A1 (en) * 2017-01-24 2021-10-21 Tienovix, Llc System and method for augmented reality guidance for use of equpment systems
US20210327303A1 (en) * 2017-01-24 2021-10-21 Tienovix, Llc System and method for augmented reality guidance for use of equipment systems
US20180246803A1 (en) 2017-02-28 2018-08-30 Ca, Inc. Targeted software testing
US11619924B2 (en) * 2017-04-13 2023-04-04 Rockwell Automation, Inc. Combined visualization thin client HMI system and method
US10712814B2 (en) * 2017-04-21 2020-07-14 Accenture Global Solutions Limited Multi-device virtual reality, augmented reality and mixed reality analytics
US10967255B2 (en) * 2017-05-26 2021-04-06 Brandon Rosado Virtual reality system for facilitating participation in events
US20180357922A1 (en) * 2017-06-08 2018-12-13 Honeywell International Inc. Apparatus and method for assessing and tracking user competency in augmented/virtual reality-based training in industrial automation systems and other systems
US10877464B2 (en) * 2017-06-08 2020-12-29 Rockwell Automation Technologies, Inc. Discovery of relationships in a scalable industrial analytics platform
US10521612B2 (en) 2017-06-21 2019-12-31 Ca, Inc. Hybrid on-premises/software-as-service applications
US11200031B2 (en) 2017-07-06 2021-12-14 Mastercontrol Inc. Interface for building and updating processing modules in a manufacturing environment
US20190057548A1 (en) * 2017-08-16 2019-02-21 General Electric Company Self-learning augmented reality for industrial operations
CN107463147A (zh) 2017-08-22 2017-12-12 北京天诚同创电气有限公司 Plc程序开发方法及装置
WO2019051492A1 (en) * 2017-09-11 2019-03-14 Cubic Corporation TOOLS AND ARCHITECTURE OF IMMERSIVE VIRTUAL ENVIRONMENT (IVE)
WO2019089811A1 (en) * 2017-11-01 2019-05-09 Vrgineers, Inc. Interactive augmented or virtual reality devices
US10684676B2 (en) * 2017-11-10 2020-06-16 Honeywell International Inc. Simulating and evaluating safe behaviors using virtual reality and augmented reality
US10445944B2 (en) * 2017-11-13 2019-10-15 Rockwell Automation Technologies, Inc. Augmented reality safety automation zone system and method
CN109840085A (zh) 2017-11-29 2019-06-04 德阳市福利叔网络开发有限责任公司 一种基于人工智能的软件设计方法
US11023349B2 (en) 2017-12-15 2021-06-01 Aveva Software, Llc Load test framework
US10564955B2 (en) 2018-01-03 2020-02-18 Huawei Technologies Co., Ltd. Method to manage multiple versions of parts of a software application and to retire older versions in a dynamically updatable software system
US10635409B2 (en) 2018-01-15 2020-04-28 Cognizant Technology Solutions India Pvt. Ltd. System and method for improving software code quality using artificial intelligence techniques
EP3511820A1 (en) 2018-01-15 2019-07-17 Siemens Aktiengesellschaft Cloud based artifact lifecycle management system and method thereof
CN109496294A (zh) 2018-01-15 2019-03-19 深圳鲲云信息科技有限公司 人工智能处理装置的编译方法及系统、存储介质及终端
US10657716B2 (en) * 2018-03-07 2020-05-19 California Institute Of Technology Collaborative augmented reality system
US11275481B2 (en) * 2018-03-07 2022-03-15 California Institute Of Technology Collaborative augmented reality system
US20190279132A1 (en) 2018-03-08 2019-09-12 General Electric Company Analytics core and aggregation
CN208314755U (zh) 2018-04-27 2019-01-01 李喜 一种人工智能开发平台和系统
CN108829024B (zh) 2018-05-30 2020-10-27 广州明珞软控信息技术有限公司 一种plc程序生成方法及系统
US10761810B2 (en) 2018-06-27 2020-09-01 Accenture Global Solutions Limited Automating testing and deployment of software code changes
US10705511B2 (en) 2018-07-11 2020-07-07 Siemens Aktiengesellschaft Abstraction layers for automation applications
US10503632B1 (en) 2018-09-28 2019-12-10 Amazon Technologies, Inc. Impact analysis for software testing
US10606576B1 (en) 2018-10-26 2020-03-31 Salesforce.Com, Inc. Developer experience for live applications in a cloud collaboration platform
US10739763B2 (en) 2018-11-13 2020-08-11 Rockwell Automation Technologies, Inc. Industrial control system with predictive machine learning module
US11526777B2 (en) 2018-12-04 2022-12-13 Accenture Global Solutions Limited Interactive design and support of a reference architecture
CN109765836A (zh) 2019-02-02 2019-05-17 宁波吉利汽车研究开发有限公司 Plc程序的自动生成方法、装置和实现装置
US11150893B2 (en) 2019-03-08 2021-10-19 International Business Machines Corporation Collaborative software development tool for resolving potential code-change conflicts in real time
US11107236B2 (en) * 2019-04-22 2021-08-31 Dag Michael Peter Hansson Projected augmented reality interface with pose tracking for directing manual processes
US11048500B2 (en) 2019-07-10 2021-06-29 International Business Machines Corporation User competency based change control
US10942710B1 (en) * 2019-09-24 2021-03-09 Rockwell Automation Technologies, Inc. Industrial automation domain-specific language programming paradigm
US11048483B2 (en) * 2019-09-24 2021-06-29 Rockwell Automation Technologies, Inc. Industrial programming development with an extensible integrated development environment (IDE) platform
US11733687B2 (en) 2019-09-26 2023-08-22 Rockwell Automation Technologies, Inc. Collaboration tools
US11042362B2 (en) * 2019-09-26 2021-06-22 Rockwell Automation Technologies, Inc. Industrial programming development with a trained analytic model
US11733669B2 (en) * 2019-09-27 2023-08-22 Rockwell Automation Technologies, Inc. Task based configuration presentation context
US20210096704A1 (en) * 2019-09-27 2021-04-01 Rockwell Automation Technologies, Inc. User interface logical and execution view navigation and shifting
US10936807B1 (en) 2019-10-16 2021-03-02 Capital One Services, Llc Systems and methods for displaying effects of code changes
US20210294307A1 (en) 2020-03-19 2021-09-23 Honeywell International Inc. Assisted engineering design and development management system
US11726459B2 (en) * 2020-06-18 2023-08-15 Rockwell Automation Technologies, Inc. Industrial automation control program generation from computer-aided design
US20210397171A1 (en) * 2020-06-22 2021-12-23 Rockwell Automation Technologies, Inc. Industrial automation hmi program file generation from computer-aided design
CN113868102A (zh) * 2020-06-30 2021-12-31 伊姆西Ip控股有限责任公司 用于信息显示的方法、电子设备和计算机程序产品

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108628595A (zh) * 2017-03-16 2018-10-09 西门子股份公司 增强现实环境下的控制应用程序的开发

Also Published As

Publication number Publication date
US20210096543A1 (en) 2021-04-01
US11829121B2 (en) 2023-11-28
CN112558928A (zh) 2021-03-26
US20220334562A1 (en) 2022-10-20
EP3798775A1 (en) 2021-03-31
US11392112B2 (en) 2022-07-19

Similar Documents

Publication Publication Date Title
CN112558928B (zh) 用于开发工业应用的系统和方法及非暂态计算机可读介质
US11733687B2 (en) Collaboration tools
US11663553B2 (en) Cloud-based collaborative industrial automation design environment
CN112631555B (zh) 用于开发工业应用的系统和方法
EP3798758A1 (en) System and method for generating system project data
US11625683B2 (en) System and method of industrial automation multi-developer control code change commits
US11880680B2 (en) Industrial automation distributed project control with milestone rollback
EP4137937A1 (en) Industrial automation project library cross sharing
US11900082B2 (en) Industrial automation multi-developer control code synchronization
US11994842B2 (en) Notifications from an industrial automation development environment
EP4155903A1 (en) Industrial automation project design telemetry
EP4134815A1 (en) Industrial automation smart object parent/child data collection propagation

Legal Events

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