CN111149133A - 过程控制环境中的虚拟x射线视觉 - Google Patents
过程控制环境中的虚拟x射线视觉 Download PDFInfo
- Publication number
- CN111149133A CN111149133A CN201880063431.9A CN201880063431A CN111149133A CN 111149133 A CN111149133 A CN 111149133A CN 201880063431 A CN201880063431 A CN 201880063431A CN 111149133 A CN111149133 A CN 111149133A
- Authority
- CN
- China
- Prior art keywords
- node
- real
- mobile device
- user
- determining
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000004886 process control Methods 0.000 title claims abstract description 85
- 238000000034 method Methods 0.000 claims abstract description 100
- 230000003190 augmentative effect Effects 0.000 claims abstract description 26
- 230000015654 memory Effects 0.000 claims abstract description 23
- 230000004044 response Effects 0.000 claims abstract description 16
- 238000005259 measurement Methods 0.000 claims description 9
- 230000008569 process Effects 0.000 description 49
- 238000004891 communication Methods 0.000 description 40
- 230000000007 visual effect Effects 0.000 description 35
- 230000006870 function Effects 0.000 description 16
- 238000013507 mapping Methods 0.000 description 16
- 238000005516 engineering process Methods 0.000 description 11
- 239000007787 solid Substances 0.000 description 9
- 238000012423 maintenance Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 239000003550 marker Substances 0.000 description 7
- 230000009471 action Effects 0.000 description 6
- 230000003416 augmentation Effects 0.000 description 5
- 231100001261 hazardous Toxicity 0.000 description 5
- 230000003993 interaction Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 238000013500 data storage Methods 0.000 description 4
- 238000012544 monitoring process Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 230000002085 persistent effect Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 239000004984 smart glass Substances 0.000 description 3
- 238000012800 visualization Methods 0.000 description 3
- 238000012369 In process control Methods 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 238000011217 control strategy Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000004927 fusion Effects 0.000 description 2
- 238000010965 in-process control Methods 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 238000012015 optical character recognition Methods 0.000 description 2
- 230000003863 physical function Effects 0.000 description 2
- 230000001953 sensory effect Effects 0.000 description 2
- 238000003860 storage Methods 0.000 description 2
- 231100000331 toxic Toxicity 0.000 description 2
- 230000002588 toxic effect Effects 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000004888 barrier function Effects 0.000 description 1
- 238000010923 batch production Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000036772 blood pressure Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000010924 continuous production Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000013479 data entry Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000002405 diagnostic procedure Methods 0.000 description 1
- 229910003460 diamond Inorganic materials 0.000 description 1
- 239000010432 diamond Substances 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000012905 input function Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- -1 smartphone Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/20—Instruments for performing navigational calculations
- G01C21/206—Instruments for performing navigational calculations specially adapted for indoor navigation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/006—Mixed reality
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/10—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration
- G01C21/12—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning
- G01C21/16—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation
-
- 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], 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], computer integrated manufacturing [CIM] characterised by the network communication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/16—Constructional details or arrangements
- G06F1/1613—Constructional details or arrangements for portable computers
- G06F1/163—Wearable computers, e.g. on a belt
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/16—Constructional details or arrangements
- G06F1/1613—Constructional details or arrangements for portable computers
- G06F1/1633—Constructional details or arrangements of portable computers not specific to the type of enclosures covered by groups G06F1/1615 - G06F1/1626
- G06F1/1684—Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675
- G06F1/1694—Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675 the I/O peripheral being a single or a set of motion sensors for pointer control or gesture input obtained by sensing movements of the portable computer
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
- G06F3/012—Head tracking input arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/16—Sound input; Sound output
- G06F3/167—Audio in a user interface, e.g. using voice commands for navigating, audio feedback
Abstract
在向增强现实(AR)移动设备的用户提供虚拟增强视觉的方法中,确定与过程控制环境的地图相关联的第一节点对应于当前在AR移动设备的相机的视场内的第一现实世界对象。确定第一节点与一个或多个其他节点之间的关系,该关系指示与一个或多个其他节点相对应的一个或多个其他对象至少部分地被第一对象遮挡。至少部分地响应于确定该关系,从存储器获取描述一个或多个其他对象的一个或多个数字模型或图像。当第一对象在相机的视场中时,使AR移动设备的显示器向用户呈现所获取的数字模型或图像。
Description
相关申请的交叉索引
本申请要求于2017年9月27日提交的、名称为“Augmented Reality Platform”的美国临时专利申请No.62/564,074的权益,该美国临时申请的全部公开内容通过引用合并于本文。
技术领域
本公开内容总体上涉及增强现实技术,更具体地,涉及可以在过程控制或其他环境中使用的增强现实平台。
背景技术
随着探索对该技术的新应用,提供将数字信息(例如,文本、图像、动画等)叠加在现实世界环境上的增强现实(AR)系统变得越来越普遍。AR系统通常提供特定于用户的当前现实世界周围情境的信息。对于此类系统,通常需要现实世界的知识,例如当前在用户视图中的物理事物的知识,以及用户的当前位置及其周围的物理布局。为了使这种信息可用于AR系统,通常创建表示用户环境及其中对象的三维(3D)数字模型。然后,可以利用与环境中的特定位置和/或特定对象有关的特定类型的数据(例如,描述)、图形(例如,图标)等来增强3D模型。当配备有适当AR装备的用户移动通过映射的环境时,可以通过将数字信息叠加在用户的现实世界视图(例如,实时相机视图或作为用户通过其观察环境的头戴式显示器)上,而无需呈现/显示3D模型的其余部分。
常规地,这种3D模型是由人类设计师手动构建的,和/或使用3D扫描器构建的。然而,对于涉及具有复杂布局和/或大量对象的环境的应用,这两种方法都可能非常耗时且费力。此外,对环境的任何改变(例如,当在环境内移动或替换/更新对象时)可能需要重复整个建模过程,或者其他耗时费力的过程。
当前的AR系统还可能面临其他缺点。例如,当用于相对密集的环境(例如,具有多个对象的环境,该多个对象紧密邻近和/或具有大量信息要显示在AR视图中)中时,AR系统可能会使用户遭受可能容易导致感官超载的大量信息,和/或用户可能不容易觉察所有信息的情境(context)。此外,某些对象可能在AR视图中被遮挡。例如,对象可以位于封装体内,或者可以驻留在难以接近或不方便(例如,远距离)的位置。
发明内容
本文公开了用于提供增强现实体验的技术、系统、装置和方法。所述技术、系统、装置和方法可以适用于例如工业过程控制系统、环境和/或工厂(其在本文中可互换地称为“过程控制”或“过程”系统、环境和/或工厂)。通常,此类系统和工厂以分布的方式提供对一个或多个过程的控制,这些过程进行操作以制造、精炼或以其他方式转化原始物理材料以生成或生产产品。然而,在一些实施例中,本文描述的技术、系统、装置和方法可以用于其他类型的环境中,和/或用于除了增强现实之外的情境中(例如,在虚拟现实(VR)情境中)。
通常,过程控制环境会引起以上在“背景技术”部分中讨论的许多各种困难,这些困难与生成和使用常规的增强现实(AR)系统或平台相关联。例如,此类环境通常包含大量不同的对象(例如,罐、泵、阀、马达、变送器等),这些对象紧密邻近和/或与大量信息(例如,传感器读数、诊断状态等)相关联。此外,这些对象可能经常移动或替换。
本文描述的AR平台可以克服或改善这些困难中的一些或全部,并且因此可以非常适合在过程控制环境中使用。利用AR平台,由使用AR移动设备的用户生成三维(3D)模型。AR移动设备可以是AR头盔、AR耳机、AR护目镜、智能眼镜、智能手机、平板电脑、或能够支持位置跟踪(如下文所述)并且可以向用户呈现AR体验的任何其他合适类型的移动设备。
3D模型指示过程控制环境内感兴趣点的3D地点/位置,这些3D地点/位置对应于不同的现实世界对象(例如,现场设备、罐、传送器、控制器、开关等)。添加到3D模型的对象在本文中称为AR平台或系统的“节点”。如本文中使用的术语,“对象”(也称为“现实世界对象”)可以是任何物理事物(例如,设备、部件、装备、结构等)、事物的部分(例如,设备或部件的元件等)、或事物的组合(例如,一组相关的设备或部件等)。在过程控制环境中,例如,对象可以是现场设备(例如,阀、泵、传感器等)、装备件(例如,传送器、罐等)、过程控制器、开关等。
在一些实现方式中,当在AR移动设备上启动AR应用时(例如,当由用户特别激活时,或者在设备上电时),用户在某个参考或“地标”地点“登记”或注册AR移动设备。例如,用户可以使用AR移动设备的相机在地标地点扫描QR码或代码/标识符的另一视觉表示。扫描代码的动作可以为用户/设备建立起始地点(例如,{x,y,z}空间中的坐标{0,0,0})。
在注册之后,用户可以开始随同AR移动设备物理移动通过过程控制环境。合适的定位技术(例如,由用户的AR移动设备提供)可用于跟踪用户通过过程工厂的移动。由于GPS或GNSS单元在许多过程工厂环境中可能无法很好地起作用,并且无法提供定向数据或准确的海拔数据(尤其是室内的过程控制环境),因此可以使用其他定位和/或定向技术。例如,可以使用惯性测量单位(IMU)数据(例如,由加速度计、陀螺仪等生成)和相机图像数据的融合来跟踪AR移动设备相对于地标地点的位置,以及AR移动设备的定向(例如,AR移动设备的相机的视场的方向,其可以对应于用户面对的方向)。在一种实现方式中,例如,采用由开发的视觉惯性里程计(VIO)技术来跟踪位置和定向。
当到达将要添加为节点的真实对象或其附近时,并且面对对象的方向(例如,如果戴有AR头盔或护目镜)或将设备相机指向对象(例如,如果设备是平板电脑或智能手机),用户可以选择添加新节点的选项。例如,AR移动设备可以在用户说出语音命令“添加节点”时识别该语音命令,或者(例如,如果该设备是平板电脑或智能手机)AR移动设备可以允许用户在AR移动设备显示器的图形用户界面(GUI)上选择“添加节点”或类似的选项/控件。然后,AR移动设备可以捕获对象的图像,并且对该图像进行处理以估计AR移动设备与对象之间的距离。替代地,可以使用其他传感器(例如,lidar、雷达等)来确定AR移动设备与对象之间的距离。然后,AR移动设备可以基于AR移动设备的当前位置和定向以及AR移动设备与对象之间的距离来确定对象相对于地标地点的位置。替代地,远程服务器或其他计算设备/系统可以处理由AR移动设备捕获的图像数据以确定相对于地标地点的对象位置。
用户还可以指定新节点的名称或类型(例如,阀、泵等)和/或其他信息(例如,对象的型号或其他标识符、对象的简短描述等)。然后,可以将指定的信息与AR系统的后端数据库中的新节点相关联。后端数据库可以包含由用户(以及也可能其他用户)添加的节点库,带有相对于地标地点的相关联3D地点,以共同地建立过程控制环境中的对象/资产的虚拟3D“地图”。数据库还可以例如存储其他节点信息,诸如相关和/或连接的节点的列表。
在特定过程控制环境中的至少一个感兴趣的对象已被映射(即,使用AR移动设备添加到节点库)之后,在地标地点注册其AR移动设备的任何用户(包括映射用户)可以对过程控制环境进行增强的巡视。当具有注册的AR移动设备的用户将AR移动设备的相机的视场指向包括特定现实世界对象的区域时(例如,如果用户在戴着AR头盔或护目镜时注视着该区域),并且如果对象已经与节点库中的节点相关联,则AR移动设备可以使用节点“标记”(例如,文本、图标、图形等)来增强用户观察到的现实世界场景,对于用户看起来,就像它位于用户的现实世界视图中的对象坐标处或附近。
如果用户选择特定节点(例如,通过聚焦于节点标记或发出语音命令等),则AR移动设备使用户可获得一个或多个“节点体验”。例如,一个节点体验可以将文本(节点名称、描述等)、表格和/或图形/图标叠加在用户的现实世界视图上。例如,其他节点体验可以叠加来自特定URL的web内容(例如,指导性或“帮助”视频),或者可以叠加与其他对象/节点的物理或逻辑连接和/或与其他对象/节点的关系的可视化。另外的节点体验可以包括获取与对象/节点相关联的工单(work order),在用户与远程地点的适当专家之间建立通信链路等。在一些实现方式中,至少一个节点体验在用户正在观察的对象的特定情境中启动(或链接到)一个或多个其他软件应用或系统。例如,AR移动设备可以在视场中为选定的对象/节点(例如,现场设备)叠加传感器数据、状态和/或虚拟控件,其中数据是接收自(以及对控件的用户输入被传输到)不同的应用。
对于给定节点而言用户可获得的体验,在特定节点体验中呈现的内容的类型,和/或在某些实现方式中,对于给定节点而言特定用户是否可获得完全任何增强信息,可以至少部分地基于用户的“角色”来确定。例如,特定用户可以使用AR移动设备来选择“操作员”角色、“维护员”角色或“工程师”角色,或者可以被预先分配这样的角色。
也可以向用户提供若干其他特征。在一些实现方式中,例如,可以通过创建超逼真或伪逼真的3D模型可视化来向用户提供虚拟的“X射线视觉”,当被叠加在用户的现实世界视图上时,其看起来就像用户正在看到隐藏在封装体内(例如,机柜内)或隐藏在障碍物后面的对象。AR移动设备还可以向用户呈现(和/或使用户能够选择)与隐藏对象相关联的某些节点体验,诸如查看状态数据或与隐藏对象相关联的警报、发出语音命令以控制隐藏对象的操作等等。
作为另一个示例,AR移动设备可以在用户的现实世界视图上叠加受限访问和/或远距离对象/节点的“化身(avatar)”。该对象可以例如位于高塔的顶部,或者位于有毒或高电压区域等中。与隐藏的对象一样,可以为用户提供某些节点体验,这些节点体验可以提供与受限访问和/或远距离对象的各种交互。在隐藏对象(“X射线视觉”)和访问受限/远距离对象的实现/场景中,都可以向用户提供总体体验,其非常类似于使对象/节点恰好位于对象的前方,并在用户与对象交互时,用户可以清楚看到。
AR平台也可以支持其他类型的功能。例如,用户的当前位置可以触发各种警报(例如,警告用户处于危险区域中)和/或其他信息显示。作为另一个示例,可以出于各种目的跟踪/记录过程工厂内用户的当前和/或历史3D位置,诸如确保紧急情况下的员工撤离,确保员工没有受伤或需要医疗帮助,或监控某些员工的培训。
取决于特定实现方式,以上以及以下进一步描述的AR平台可以提供许多优点。例如,通过仅映射某些对象的相对3D位置,可以比通过常规手段(例如,使用3D扫描器来映射环境)更容易和有效地生成3D模型。同样,可以更快和容易地执行过程控制环境中对象的更新或重新配置。此外,通过使用本文描述的映射过程,并且如本文所述通过跟踪AR移动设备/用户的移动,AR平台可以确定何时向用户提供增强信息而不需要改造或者配备对象具有短距离通信技术(例如,蓝牙或近场通信(NFC)单元)的费用和/或时间,并且不需要用户导航环境(例如,扫描对象上的QR码、对象标识符的手动数据输入、物理连接到对象等)的耗时行动。因此,可以减少或移除AR系统的部署的传统障碍(特别是在过程控制环境中)。
作为另一示例,AR平台通常可以提供第三方在其中可以提供新的、定制的类型或类别的“节点体验”(该“节点体验”对应于与对象/节点的不同用户交互)的市场和/或可以提供用于现有节点体验的新的内容。仪器供应商或其他实体可以提供对“帮助”信息或特定对象的基于AR或视频的工作指导的订阅。在一些实施例中,虚拟的“app商店”可以允许客户许可各种应用,和/或订阅客户的移动员工所需的特定类型的内容。
此外,促进针对被遮挡的、远距离和/或受限访问节点的增强信息的显示/查看的特征可以节省用户的时间(并因此节省成本),并且在一些实现方式和/或场景中,可以通过避免拜访危险区域的需要来提高工作者安全性。
此外,AR平台架构可以是高度灵活的。AR平台可以促进在各种不同平台(诸如智能头盔、智能护目镜、智能电话、平板电脑等)上向用户显示相关信息。AR平台还可以促进与许多其他软件应用(例如,能够获取指示控制逻辑、设备读数等的数据的过程控制软件)的交互性,和/或允许轻松提供新的体验、内容或其他功能。
如上所述,本文描述的某些实现方式和/或特征不一定用于AR系统中,和/或不一定用于过程控制环境中。例如,可以基于工厂内对象的映射3D位置以及用户的当前位置和定向来为具有智能手机、平板电脑或其他移动设备的用户提供“节点体验”,而不必将这些体验作为AR显示来提供(例如,使用虚拟现实显示或简单地GUI)。作为另一示例,本文描述的技术可以应用于除过程控制环境之外的环境中,诸如办公空间、仓库、医院等。
附图说明
图1是描绘示例性增强现实(AR)系统的框图,该示例性AR系统提供了可以支持本文所述的各种方法、技术、功能和/或特征的AR平台。
图2是描绘其中可以使用图1的AR系统的示例性过程控制环境的部件的框图。
图3描绘了过程控制环境中节点的示例性三维(3D)映射。
图4A至4H描绘了可以叠加在AR移动设备提供的视场上的示例性用户界面。
图5A和5B描绘了可以在AR平台中使用的数据库的示例性元素。
图6描绘了其中向AR移动设备的用户提供虚拟X射线视觉的示例性实施例和场景。
图7A和7B描绘了示例性用户界面,这些示例性用户界面可以叠加在AR移动设备提供的视场上,以在用户与远离用户或难以访问的对象之间提供虚拟接近。
图8是用于使用移动设备映射现实世界的过程控制环境的示例性方法的流程图。
图9是用于在现实世界的过程控制环境中向AR移动设备的用户提供虚拟增强视觉的示例性方法的流程图。
图10是用于促进AR移动设备的用户与现实世界对象之间的交互的示例性方法的流程图,该现实世界对象可位于过程控制环境的远距离或受限访问区域中。
具体实施方式
示例性增强现实系统
图1描绘了示例性增强现实(AR)系统10,其通常可以提供用于在环境(例如,过程控制环境)中提供AR体验的AR平台。AR系统10包括用户的AR移动设备12,以及可以经由网络16通信地耦合到AR移动设备12的后端服务器14。AR移动设备12可以是具有适当处理和感测能力以及能够被用户佩戴或携带的任何计算设备。例如,AR移动设备12可以是专门配置用于AR的设备,诸如AR头盔(例如,由开发的Smart )或AR护目镜。替代地,AR移动设备12可以是还具有非AR应用(例如,平板电脑、智能手机、智能眼镜、智能手表等),但是执行将设备12配置为具有AR功能的软件应用的设备。尽管图1描绘了仅一个AR移动设备12,但是应当理解,可以以类似的方式在AR系统10中使用与AR移动设备12相同或不同的大量AR移动设备。
AR移动设备12通常被配置为通过利用情境信息(例如,文本、图形、动画等)增强用户的现实世界视图来向用户提供AR体验。后端服务器14通常通过管理指定在特定情况下应该如何增强用户的现实世界视图的数据、通过从AR移动设备接收指示AR设备和/或用户的当前状态和/或环境的数据、以及通过根据需要向AR移动设备提供数据来支持用户以及其他AR移动设备的用户的AR体验。
网络16包括一个或多个无线网络,并且可能还包括一个或多个有线网络。在图1的示例性实施例中,AR系统10的AR平台使用基于云的架构,并且网络16包括互联网。如果AR系统10在室内使用,则网络16还可包括不需要与远程塔或基站进行任何直接通信的无线网络,例如IEEE 802.11或“WiFi”网络。然而,在其他实施例中,网络16包括蜂窝网络(例如,LTE、GSM等)。如下文进一步讨论的,AR系统10还可以包括一个或多个其他服务器18,其通信地耦合到后端服务器14和/或AR移动设备12,并共同存储和执行一个或多个应用19。
如图1的示例性实施例所示,AR移动设备12可以包括网络接口20、显示器22、相机24、惯性测量单元(IMU)26和存储AR应用32的存储器30。网络接口20被配置为使用网络16(例如,WiFi或蜂窝网络)的至少一部分的无线通信协议来实现与包括后端服务器14的远程计算设备和系统的通信。
显示器22可以包括根据任何适当类型的数字显示技术配置的硬件以及相关联的固件和/或软件。例如,显示器22可以使用液晶显示器(LCD)技术、发光二极管(LED)技术、有机发光二极管(OLED)技术等等。显示器22可以是大体上透明或半透明的,或者可以是不透明的。显示器22的结构或形状因素,以及显示器是透明的/半透明的还是不透明的,通常取决于AR移动设备12的类型。例如,如果AR移动设备12是头盔,则显示器22可以具有遮阳板(visor)的形式,并且可以是半透明的,使得由显示器22显示的任何信息被叠加在用户的直接现实世界视图上(即,“平视显示器”或“HUD”)。相反,如果AR移动设备12是平板电脑或智能电话,则显示器22可以具有常规的矩形形状因素,并且可以仅允许现实世界的间接视图(例如,如由相机24所捕获的)。
相机24可以是任何合适类型的光学传感器,例如,诸如电荷耦合器件(CCD)图像传感器。在替代实施例中,相机24替代地或还包括不同类型的成像设备,例如,诸如光检测和测距(lidar)传感器或雷达传感器。IMU26可以包括一个或多个传感器(例如,加速度计和/或陀螺仪),其生成指示AR移动设备12在三个维度上的移动的数据。尽管未在图1中显示,AR移动设备还可以具有其他部件,诸如麦克风和/或扬声器。
存储AR应用32的存储器30可以是任何合适类型的持久性存储器,例如,诸如固态或硬盘驱动器形式的只读存储器(ROM)。AR应用32通常例如通过在显示器22上生成适当的增强信息并根据需要与后端服务器14通信来协调AR移动设备12的用户的AR体验。图1描绘了与可以由AR应用32执行或提供的示例性功能或特征相对应的一组模块,包括角色标识模块40、注册模块42、定位和定向模块44、节点体验模块46、节点创建模块48、视觉增强模块50和基于位置的警报模块52。下文将结合AR系统10的操作来进一步讨论模块40-52中的每一个模块。在一些实施例中,AR应用32包括与图1所示的模块相比更少、更多和/或不同的模块。例如,AR应用32可以包括用于识别用户语音命令的语音识别模块。
此外在图1的示例性实施例中,后端服务器14包括web服务接口60、体验提供单元62、3D模型生成单元64、视觉增强单元66、警报生成单元68、以及用户监控单元70。通常,web服务接口60可以向AR数据库72提供面向对象的基于web的接口,AR数据库72耦合到后端服务器14(或包括在后端服务器14内)。在一些实施例中,web服务接口60向诸如AR移动设备12之类的远程设备提供应用编程接口(API)。
AR数据库72通常存储定义特定环境的3D地图的信息(例如,通过存储节点标识符,3D地图内的节点相对于地标的位置以及可能地与该节点相关联的其他信息),并且下文结合图5A和5B进一步详细讨论(根据一个特定实施例)。AR数据库72可以是单个数据库或数据库的集合,并且可以存储在单个物理存储器中,或分布跨越一个或多个地理位置处的多个存储器。元件/单元60至70中的一些或全部可以被实现为存储在持久性存储器(例如,ROM)上的软件指令。在其他实施例中,后端服务器14包括与图1所示的元件/单元相比更少、更多和/或不同的元件/单元。
在操作中,佩戴或以其他方式携带AR移动设备12的用户可以使AR移动设备12启动AR应用32。例如,可以通过手动选择显示器22上的图标、发出语音命令或简单地给AR移动设备12上电来启动AR应用32。
在一些实施例中,AR应用32的角色标识模块40最初(例如,在启动时)提示用户指示特定的“角色”,其可以对应于用户的工作位置,和/或可以对应于例如用户试图通过使用AR系统10来完成的一个或多个特定任务。在其他实施例中,首先提示用户在以后的时间指示他或她的角色(例如,在地标处注册之后,如下所述)。以下结合图4A讨论了角色标识模块40可以叠加到在显示器22上或通过显示器22看到的现实世界视图上(例如,在相机24捕获的图像帧之上,或者在用户的直接现实世界视图之上)的一个示例性用户界面。在替代实施例中,角色标识模块40不提示用户选择角色,而是基于AR移动设备12的标识符和/或由用户输入或说出的标识(例如,名称、员工编号等)来确定用户的预先分配的角色。
选定或分配的用户角色可以调节提供给用户的AR体验的各个方面,如下文进一步讨论的。取决于实施例,用户角色一旦被选择或分配就可以是固定的,或者可以由用户随着其移动通过环境而即时改变。在一些实施例中,角色标识模块40不包括在AR应用32中,并且在AR系统10内没有选择或分配用户角色。
在映射环境之前,或者在更新或探索先前映射的环境之前,在一些实施例中,用户可能需要在“地标”处注册AR移动设备12,然后“地标”的地点被用作AR移动设备12(以及等效地,用户)的未来移动的参考点。相同的地标地点也用作环境中已被建立(或将被建立)作为3D地图节点的任何对象的位置的参考点,从而使得能够确定AR移动设备12相对于任何映射对象的位置。地标地点可以例如以{x,y,z}坐标系表示{0,0,0},或者可以使用其他坐标系(例如,极坐标)。
为了注册AR移动设备12,注册模块42可以处理由相机24捕获的一个或多个图像/帧。例如,地标可以是QR码,或者是在地标地点处(例如,在过程控制工厂内某个区域的入口附近的墙壁或门上)物理打印的任何其他合适类型的图像或文本。在一些实施例中,注册模块42或AR应用32的另一部分可以在提供给用户的现实世界视图内叠加标线(reticle)(例如,如下文结合图4E所讨论的),以帮助用户聚焦于QR码、图像等。在一些实施例中,使用不同的技术来识别地标,诸如AR移动设备12和固定在地标位置处的另一设备的互补蓝牙或NFC通信单元。
在一些实施例中,当用户在特定地标处注册AR移动设备24时,注册模块42经由网络16和web服务接口60将指示该地标的标识符的数据转发(例如,通过发送QR码的二进制表示或在解码图像之前发送QR码的图像)到后端服务器14。然后,后端服务器14可以将地标标识符与存储在AR数据库72中的地标标识符(如果有的话)进行比较。如果尚未存储标识符,则后端服务器14可以经由web服务接口60和网络16将失败消息返回到注册模块,或者在一些实施例中,可以使AR数据库创建与新的3D地图相关联的新地标标识符条目。相反,如果地标标识符已经存在于AR数据库72中,则后端服务器14可以使对应的3D地图(和关联的数据)中的一些或全部可用于AR移动设备12,并经由网络服务接口60和网络16将指示成功注册的消息返回到注册模块42。
AR数据库72可以存储多个不同的地标标识符,每个地标标识符与不同的3D地图相关联,其中每个地图与不同的节点库相关联。多个地图可以与相同环境相关联(例如,通过在单个环境中添加不同的对象作为不同地图的节点),和/或不同地图可以与不同环境相关联(例如,一个地图用于过程控制工厂的第一区域,另一个地图用于工厂的第二区域等)。
在一些实施例中,AR移动设备12在地标处的成功注册使得定位和定向模块44将AR移动设备12的位置设置为等于地标地点(例如,{0,0,0})。然而,为了更高的精度,注册模块42可以使用深度感测技术来处理由相机24捕获的地标的图像,以确定AR移动设备12与地标之间的距离。然后,定位和定向模块44可以基于所确定的距地标的距离和AR移动设备12相对于地标的定向,来将AR移动设备12的起始位置从地标的已知/参考位置偏移。如果地标是QR码或其他视觉标识符,则可以基于地标面对的方向来假设AR移动设备12的相对定向。替代地,可以根据捕获的图像确定相对定向(例如,通过确定相机视图相对于地标的入射角等)。
一旦注册,AR移动设备12的用户就可以开始移动通过环境,带有通常由数字文本、表格、图形、动画和/或与对应于地标的3D地图相关联的其他类型的信息增强的现实世界视图(经由显示器22提供)。为了跟踪用户(即,AR移动设备12)的位置和定向,定位和定向模块44可以访问IMU26、相机24和/或图1中未示出的AR移动设备12的一个或多个其他传感器。在一些实施例中,定位和定向模块44使用所收集的传感器数据来确定位置和定向,而不依赖于GPS、GNSS、WiFi定位(例如,三边测量)或任何需要AR移动设备12与其他设备或系统之间的通信链路的其他定位技术。“位置”或“地点”可以指的是3D坐标系统中的一组特定坐标(例如,笛卡尔或极坐标),“定向”可以指的是特定方向(例如,在360度水平/方位范围内,加上海拔或高度)。在一些实施例中,“定向”还可以指AR移动设备12的倾斜,而与设备12面向的方向无关。因为仅跟踪相对位置(例如,以“航位推算(dead reckoning)”的意义),所以定位和定向模块44确定AR移动设备/用户相对于发生注册的地标的地点的位置。
在一些实施例中,定位和定向模块44处理来自至少相机24和IMU 26的数据的融合,以帮助克服当单独使用时与任一类型的传感器相关联的缺陷。例如,定位和定向模块44可以利用由开发的视觉惯性里程计(VIO)技术来跟踪AR移动设备12的位置和定向。此类技术可以帮助提高准确性,减少所确定的位置的“漂移”和/或具有其他优势。
因为相机24相对于AR移动设备12本身的位置和定向是已知的,所以对于由定位和定向模块44确定的任何给定位置和定向,AR应用32可以确定AR移动设备12的视场(在一些实施例中,其也可以对应于用户的现实世界视图)。基于所确定的位置和定向,并使用存储在AR数据库72中针对3D地图的节点地点,AR应用32可以因此在任何给定时间确定哪些映射对象在视场内。在一些实施例中,如果对象在相机传感器的水平和垂直范围/限度内(例如,在某些方位和垂直/高度/仰角内),则该对象可以被认为位于相机的“视场内”,而不管对象与捕获图像的AR移动设备之间的距离如何,以及不管对象是否碰巧被环境中的障碍物阻挡。例如,即使直接在相机24前方的对象被封装体、屏障、其他对象等遮蔽,该对象也被视为“在视场内”。在其他实施例中,如果对象没有被遮挡,即当相机能够捕获该对象的图像时,则该对象仅被视为在相机的“视场内”。
为了确定映射对象的位置,AR应用32可以经由网络16和web服务接口60周期性地访问AR数据库中的节点地点。例如,AR应用32可以周期性地请求后端服务器14提供在AR移动设备12的阈值距离内(和/或在设备12的视场内等)的节点的地点数据,其中该请求指示AR移动设备12的当前位置(和/或定向)。替代地,AR应用32可以请求后端服务器14发送与用于注册的地标相关联的3D地图的所有节点地点(以及可能地其他信息,诸如节点描述等),例如在注册时。在其他实施例中,当AR移动设备12成功在地标处注册时,后端服务器14可以自动发送所有相关的节点地点。
AR应用32可以确定应该为用户当前视场中的一个、一个以上、或者没有一个映射对象/节点提供增强。为了做出这一确定,节点体验模块46可以应用一个或多个标准。在一些实施例中,例如,节点体验模块46可以确定要为用户的当前视场中的所有映射对象提供增强,而不管对象与用户之间的距离如何,以及不管对象是否从用户视图被障碍物阻挡。替代地,节点体验模块46可以确定不为在视场内但是离开用户大于阈值距离的映射对象提供增强(例如,如根据由定位和定向模块44确定的当前用户位置和根据AR数据库72中存储的对应节点地点所确定的)。
节点体验模块46还可以或者替代地确定不为在AR移动设备12的视场中但是被阻挡视线的映射对象提供增强。取决于实施例,可以以不同的方式确定映射对象是否被遮挡。例如,AR数据库72中的字段可以指示特定节点是否对应于通常将被遮挡的对象。例如,对于封闭在机柜中的部件,相应的节点具有指示该部件与机柜之间的关系的字段。在其他实施例中,AR应用32和/或后端服务器14可以对节点配置、节点类型和/或节点大小执行更复杂的分析,以从用户当前的角度确定特定的映射对象是否可能是可见的。
在一些实施例中,为了减少用户感官过载的危险,除非用户采取某些特定动作(除了简单地移动和/或重新定向AR移动设备12之外),否则不为某些类型的映射对象提供增强。例如,除非用户选择机柜的图标或其他图形表示,和/或选择显示机柜内容的选项等,否则节点体验模块46可能不为机柜内的大量相对较小的部件提供增强,每个部件对应于不同的映射对象。
此外,在一些实施例中,节点体验模块46可以基于如由角色标识模块40确定的用户角色,确定是否要为用户的视场中的特定映射对象提供增强。节点体验模块46可以专门为与地标和所选定或所分配的角色相关联的节点查询web服务接口60。例如,在过程控制环境中,可以为具有“维护员”角色的用户但不为具有“操作员”角色的用户增强电源开关。
对于要增强的对象,节点体验模块46可以最初在显示器22的某个区域上叠加节点“标记”,诸如文本(例如,设备标识符、状态和/或描述)和/或图标或其他图形等,其对于用户看起来就像是位于用户的现实世界视图中的对象的坐标处(或附近)。例如,标记可能看起来通过在显示器22上呈现的线连接到现实世界视图中的映射对象。在其他实施例中,标记是在对象上呈现的圆形或其他形状,大致包围对象的矩形轮廓,或某种其他类型的指示符。
如果用户选择特定节点(例如,通过将虚拟标线聚焦在节点标记上,或通过发出语音命令等),则节点体验模块46可以使一个或多个“节点体验”可用于用户。与移动通过映射环境的适当装备的用户的更一般的“AR体验”相对照,“节点体验”是指与对象/节点的特定类型的用户交互。节点体验模块46可以通过例如在现实世界视图上叠加菜单或其他交互式显示,和/或通过被配置为识别来自用户的语音命令,来向用户提供选择特定节点体验的选项。用户可以以类似于选择节点标记的方式(例如,将虚拟标线聚焦于选项、语音命令等)或以另一种合适的方式来选择菜单选项。
当选择了特定的节点体验时,节点体验模块46可以经由网络16将选择转发到web服务接口60。作为响应,体验提供单元62可以从AR数据库72(和/或其他位置,例如服务器18)获取与所选节点和所选体验相关联的数据(例如,文本、图形等),并经由web服务接口60将获取到的数据发送回AR移动设备12以使节点体验模块46能够相应地增强用户的现实世界视图。
节点体验可以相对简单或复杂。例如,节点标记本身可以被视为默认的“节点体验”。作为其他示例,节点体验模块46可以将其他文本和/或表格(即,与对应对象相关联的信息)叠加在用户的现实世界视图(经由显示器22),对象的简单图形或图标,对象的超逼真或伪逼真的3D模型,对象的图像,包括对象的动画(例如,对象的旋转3D模型)等。
节点体验还可以或者替代地包括其他类型的交互性。例如,节点体验模块46可以叠加链接(例如,URL),其指向提供关于对象和/或其在环境中(例如,在特定过程控制例程中)的操作的教程的视频,指向涉及对象的工单,或指向远程专家。替代地,或另外,用户可以针对这些节点体验中的一些或全部发出语音命令。在选择或调用诸如视频或工单之类的内容的实施例中,节点体验模块46可以将内容叠加在用户的现实世界视图上。如果选择或呼叫远程专家或其他人,则节点体验模块46可以使网络接口20或另一合适的网络接口与该人建立通信链路(例如,经由网络16),并且在一些实施例中,可以叠加该人的静止图像或视频,直到通信结束。
其他节点经验可以列出和/或以图形方式描绘所选对象/节点与其他对象/节点之间的特定类型的关系。例如,对于一个节点体验,节点体验模块46可以在用户的现实世界视图上叠加与所选对象/节点(例如,父和/或子对象/节点)有关的对象/节点的列表。“关系”可以以任何期望的方式定义,并且可以由用户在添加新节点时手动设置,或者以另一合适的方式设置。例如,一些关系可以指对象是否是另一对象的部件,和/或本身是否包括多个部件。例如,阀可以对应于作为一组节点的父亲的节点,每个节点对应于阀的部件。
节点体验模块46可以通过经由web服务接口60查询体验提供单元62来确定关系,体验提供单元62从AR数据库72中获取相关节点的标识符,并且向节点体验模块46提供这些节点的指示。默认情况下,通过不显示所有各个阀部件的节点标记和/或节点体验(例如,除非用户特别选择了节点或特定选项),用户可以免于一次接收大量的视觉信息。
可以以图形方式向用户描绘某些类型的关系。例如,节点体验模块46可以提供对应于所选节点的对象与对应于其他节点的一个或多个其他对象之间的物理或逻辑连接的图形描绘。节点体验模块46可以通过经由web服务接口60查询体验提供单元62来确定连接,体验提供单元62从AR数据库72中获取所连接的节点的标识符,并将这些节点的指示提供给节点体验模块46。节点体验模块46然后可以生成描绘连接适当对象的线的显示,并将这些线叠加在用户的现实世界视图上。在下文讨论的图4H中提供了这种节点体验的一个示例。
显示的连接和/或其他关系也可以基于用户的所选择或所分配的角色而变化。在过程控制环境中,例如,“操作员”可以被显示从传感器/变送器设备到罐的线路,其中该线路指示传感器/变送器测量罐中的压力。相反,“工程师”可以替代地(或另外地)被显示从传感器/变送器到接收传感器传输的另一设备的线路,并且“维护员”可以替代地(或另外地)被显示从传感器/变送器到用于设备的电源的线路(例如,因此维护员可以在维护、修理或更换设备之前容易地找到要关闭电源的地方)。
在一些实施例中,体验提供单元62使用来自其他服务器18和/或应用19的数据和/或功能,以便提供一个或多个节点体验,和/或可以响应于从经验提供单元62发送的数据来启动一个或多个应用19。在下文结合图2讨论在过程控制环境中的此类实施例的一些示例。
如上所述,节点体验模块46可以基于用户所选择或所分配的角色(例如,操作员、维护员等)确定是否增强特定映射对象的用户现实世界视图。另外地或替代地,节点体验的类型和/或由特定体验提供的内容或交互性可以基于用户角色而变化。例如,可以向具有“维护员”角色并在他的或她的现实世界视图中拥有泵的用户呈现显示该泵的计划维护提醒的节点体验,而可以替代地在过程控制例程中向具有“操作员”或“工程师”角色的用户呈现与泵的逻辑连接有关的信息。如果计划的维护已过期,则可以向维护员显示警报,而仅在其他情况下(例如,如果泵出现故障),可以向操作员或工程师显示警报。
节点创建模块48支持添加对应于用于注册AR移动设备12的地标的3D地图内的新节点。在一些实施例中,任何用户都可以向3D地图添加新节点。在其他实施例中,仅某些用户角色和/或仅某些AR设备可用于添加新节点。为了添加新节点,用户可以将AR移动设备12的视场(例如,在视场内居中的标线)指向要被映射的现实世界对象,并选择添加对象作为新节点的选项。
取决于实施例,这可以以不同的方式来实现。例如,用户可以选择叠加的菜单项(例如,虚拟的“添加节点”按钮),或者发出语音命令,并且节点创建模块48可以作为响应将标线叠加在用户的现实世界视图上。当将标线对准对象时,用户可以激活另一个控件(例如,虚拟的“确认”按钮)或发出第二语音命令。作为响应,节点创建模块48可以确定对象的位置,并提示用户输入节点名称和/或描述。节点创建模块48然后可以经由网络16将位置、输入或说出的名称等发送到web服务接口60,并且3D模型生成单元64可以将至少位置和节点标识符(例如,由用户输入或说出的节点名称)添加到AR数据库72。
为了确定被映射的对象的位置,节点创建模块48可以使用AR移动设备12的当前位置(由位置和方向模块44确定),并且基于AR移动设备12与对象之间的距离以及AR移动设备12的定向来偏移该位置。如上所述,这可以通过与在地标处注册时确定AR移动设备12的初始3D位置类似的方式来实现。例如,节点创建模块48可以使用深度感测技术来处理由相机24捕获的对象的图像,以确定AR移动设备12与对象之间的距离。然后,定位和定向模块44可以基于所确定的距离和AR移动设备12的定向(例如,当捕获对象的图像时基于距离和AR移动设备12的视场面对的方向)将对象位置从AR移动设备12的位置偏移。
在一些实施例中,节点创建模块48还可以用于更新/修改现有节点。例如,由节点体验模块46提供的菜单可以包括用于更新节点信息的选项。如果被选择,则节点创建模块48可以在用户的现实世界视图上叠加一个或多个菜单或其他用户界面,以使用户能够更改与该节点有关的信息(例如,节点名称、节点描述等)。可以经由网络16将任何更改发送到网络服务接口60,并且3D模型生成单元64可以相应地更新AR数据库72。
在一些实施例中,除了上述增强特征之外,AR应用32将AR移动设备12配置为增强用户的虚拟视觉。例如,对于某些类型的节点,视觉增强模块50可以确定映射的对象何时在由用户的当前视场捕获的区域内(例如,如以上针对节点体验模块46所讨论的),但被一个或多个其他对象所遮挡,并向用户提供虚拟的“X射线视觉”。仅当建立一个或多个其他标准时(例如,如果视觉增强模块50确定隐藏的对象在AR移动设备12的阈值距离内),才可以提供虚拟X射线视觉,或者可以不考虑其他任何条件而提供虚拟X射线视觉。
在一个此类实施例中,对于至少一些节点条目中的每一个节点条目,AR数据库72包括标志或其他可见性指示符,该标志或其他可见性指示符指示该节点可能从任何用户的视图中隐藏。该可见性指示符可能已经基于对象的已知关系自动生成(例如,如果3D模型生成单元64访问控制系统以获知与该节点相对应的对象位于机柜内),或者可能已经由用户手动设置(例如,当添加节点时,经由节点创建模块48叠加在用户的现实世界视图上的用户界面)。当特定的映射对象在用户的视场内时,视觉增强模块50可以经由网络16和web服务接口60来查询后端服务器14的视觉增强单元66,并且视觉增强单元66可以转而访问AR数据库72以获取相关的可见性指示符。视觉增强单元66然后可以使用web服务接口60来将可见性指示符或指示对象是否被遮挡的其他数据发送到视觉增强模块50。
替代地,视觉增强模块50和/或视觉增强单元66可以以其他方式做出可见性确定。例如,特定的映射对象或对象集合可以位于标有型号、QR码或其他可视指示符的机柜内部。视觉增强模块50可以处理由相机24捕获的视觉指示符的图像,以确定机柜的标识符(例如,节点标识符),并且经由网络服务接口60将标识符发送给视觉增强单元66。视觉增强单元66然后可以使用标识符来确定哪些映射对象(例如,现场设备、I/O卡等)在机柜内,并且发送回指示机柜内的对象被遮挡的数据。
为了提供给定对象的虚拟X射线视觉效果,视觉增强模块50可以获取该对象的超逼真或伪逼真2D或3D模型、或该对象的数字图像或视频,并将该模型、图像或视频叠加到用户的视场中的对象上(或对象附近)。默认情况下,或者响应于对2D或3D模型的用户选择、或语音命令等,节点体验模块46还可以提供可视菜单选项或语音命令识别,以使用户能够为节点选择各种体验,如上所述。因此,用户可以以与现实世界对象直接在他或她的视场中时进行交互看起来和“感觉”非常相似的方式与隐藏对象进行交互。
视觉增强模块50还可以或者替代地以其他方式增强用户的虚拟视觉。例如,如果对象位于受限访问和/或危险区域(例如,在非常高的地点、路障地点、高电压或有毒区域等)和/或远离用户,视觉增强模块50可以使用户能够获取表示进入他或她的视场中的对象的“化身”。化身可以与以上针对X射线视觉示例描述的2D或3D模型、图像、视频等相同,或者在某些方面可以不同。实际上,在一些实施例中,虚拟X射线视觉仅仅是用于召唤现实世界对象的化身的多个用例之一。
取决于实施例和/或场景,化身可以以不同的方式被召唤。在一些实施例中,如果满足某些标准,则视觉增强模块50首先将视觉指示符叠加在用户的现实世界视图上,其中视觉指示符给出相对于用户的现实世界视图的对应对象地点的某种指示。例如,如果(1)AR移动设备12在对象的某个阈值距离内并且(2)节点被标记为受限访问对象,则可以呈现视觉指示符。例如,AR数据库72可以存储指示此类状态的数据(例如,基于当用户添加节点时的手动用户输入)),或者可以推断出状态(例如,如果视觉增强单元66确定该对象位于后端服务器14已标记为“危险”区域的区域中,或者如果视觉增强模块50或视觉增强单元66确定该对象的位置在Z方向上并因此在非常不同海拔处与AR移动设备12之间相距至少阈值距离,等等)。视觉指示符可以包括指向对象方向的箭头、通向对象的线、或位置的其他指示。下文结合图7A讨论视觉指示符的一个示例。如果用户选择指示符或采取另一种适当的动作(例如,在一些实施例中,如果用户改变他或她的视场以包括对象),则视觉增强模块50可以将化身叠加在用户的现实世界视图上。
在其他实施例中,对象地点的指示符包括化身本身(例如,在化身之上或附近的指向对象地点的箭头/指针)。在其他实施例和/或场景中,视觉增强模块50将化身叠加在用户的视场上,而不呈现对象地点的任何视觉指示符。例如,视觉增强模块50可以响应于用户请求或搜索对应对象(例如,通过发出语音命令或手动输入数据),或者响应于用户为相对较远的对象(例如,超过某个阈值距离)选择节点标记等,来向用户呈现化身。在一个此类实施例中,化身并不立即以全尺寸出现。例如,视觉增强模块50可以创建视觉效果,其中化身对于用户看起来就好像化身从对象地点(例如,在用户前方很远)移动到用户正前方的位置一样。例如,化身可以扩大尺寸以模拟拉近至用户的效果。
节点体验模块46可以自动地向用户提供对象的特定节点体验(除了显示对象的化身之外),和/或可以使用户能够在化身首先被呈现之后选择一个或多个节点体验(例如,通过发出语音命令或选择菜单选项)。例如,可以提供以上讨论的任何一种或多种节点体验。下文结合图7B讨论可以与化身相关联的体验的一个示例。
在一些实施例中,AR应用32将AR移动设备12配置为基于用户的当前位置和/或基于特定区域中的当前状况(例如,过程工厂的某些区域与警告相关联)来生成警报。警报生成单元68可以例如通过比较定位和定向模块44所报告的位置(经由网络服务接口60)与一个或多个地理围栏的边界来周期性地或连续地确定AR移动设备12的当前位置是否处于遭受警报或警告的区域中。如果用户/设备在与警报相关联的区域中,则警报生成单元68可以经由网络服务接口60将警报的指示符发送到基于位置的警报模块52,并且基于位置的警报模块52可以将警报的指示(例如,文本和/或图形)叠加在用户的现实世界视图上,引起某种其他视觉效果(例如,闪烁的红灯或包围整个现实世界视图的色调)和/或提供向用户发出音频警报(经由AR移动设备12的扬声器,未在图1中显示)。替代地或另外地,警报生成单元68可以基于AR移动设备12到特定映射对象的接近度来发送警报指示符(例如,如果该对象正在发生故障并且需要维护,或者应该被避免等等)。警报生成单元68还可以根据用户所选或所分配的角色来调节警报的传递。
在一些实施例中,后端服务器14可以监控所映射环境中的AR移动设备(以及因此,用户)的3D地点。为此,用户监控单元70可以基于经由web服务接口60从定位和定向模块44接收的数据来记录已经在地标处注册了其AR移动设备的用户的当前和/或历史位置。
取决于实施例和/或需要,用户地点监控可以用于各种目的。例如,用户监控单元70可以在耦合到后端服务器14(并且未在图1中示出)的显示器或终端上描绘用户地点,并且显示器或终端的操作员可以在紧急情况下说明员工的地点,或者简单地在更典型的情况下监控用户,以确定是否有任何员工需要医疗救助。员工健康也可以使用其他数据来监控,例如由AR移动设备12的一个或多个传感器收集的生物统计数据(例如,以检测脉搏、血压、温度等)。作为进一步的示例,可以将员工/用户地点添加到员工培训日志中,由经理或人力资源人员用于监控对协议的遵从性,等等。在其他实施例和/或场景中,可以在映射的环境内跟踪某些非人类移动资产的3D地点。例如,后端服务器14的单元可以出于各种目的监控移动反应器、手推车、现场服务车和/或其他对象的3D地点。
应当理解,图1和以上描述仅代表一些潜在的实施例,并且其他实施例也是可能的。例如,AR平台可以不使用基于云的架构或基于web的服务。作为另一示例,后端服务器14的单元62至68中的一些或全部单元的功能和/或AR数据库72本身可以替代地部分或全部地结合到AR移动设备12中。作为又一示例,可以在非AR情境中,例如在虚拟现实(VR)情境中,或者结合非AR、非VR图形用户界面(GUI)来提供节点标记和/或节点体验。
此外,AR平台可以提供以上未讨论的其他特征。例如,AR移动设备的用户可以添加与AR数据库72中的各种节点/对象相关联地存储的现场记录(例如,使用语音命令),和/或可以发起与各种节点/对象相关联的新的工单,等等。
示例性过程控制环境
图2是其中可以使用图1的AR系统10的示例性过程控制环境100的框图。过程控制环境100(在本文中也可互换地称为过程控制系统100或过程工厂100)包括一个或多个过程控制器,过程控制器接收指示由现场设备进行的过程测量的信号,处理该信息以实施控制例程,并生成通过有线和/或无线过程控制通信链路或网络发送到其他现场设备的控制信号,以控制工厂100中过程的操作。通常,至少一个现场设备执行物理功能(例如,打开或关闭阀,使传送器移动材料,升高或降低温度,进行测量,感测状况等),以控制过程的操作。某些类型的现场设备通过使用I/O设备与控制器进行通信。过程控制器、现场设备和I/O设备可以是有线或无线的,并且过程工厂环境或系统100中可以包括有线和无线的过程控制器、现场设备和I/O设备的任意数量和组合。
例如,图2例示了经由输入/输出(I/O)卡126和128通信连接到有线现场设备115-122的过程控制器111。过程控制器111包括下文将进一步详细讨论的处理器130、存储器132、以及一个或多个过程控制例程138。控制器111还经由过程控制通信网络或主干110和无线网关135通信地连接到无线现场设备140-146。主干110可以包括一个或多个有线和/或无线通信链路,并且可以使用任何合适的通信协议(例如以太网协议)来实现。在一些配置中(图2中未示出),控制器111可以使用除主干110之外的一个或多个通信网络通信地连接到无线网关135,例如通过使用支持一个或多个通信协议(例如,符合IEEE 802.11的无线局域网协议、移动通信协议(例如,WiMAX、LTE等)、Profibus、Fieldbus等)的任何数量的其他有线或无线通信链路。
控制器111(例如,可以是由艾默生过程管理公司出售的DeltaVTM控制器)可以操作以使用现场设备115-122和140-146中的至少一些现场设备来实现批量过程或连续过程。在一实施例中,除了通信连接到主干110之外,控制器111还使用与例如标准4-20mA设备、I/O卡126、128和/或任何合适的智能通信协议(诸如Fieldbus协议、协议、协议等)相关联的任何期望的硬件和软件来通信连接到现场设备115-122和140-146中的至少一些现场设备。在图2中,控制器111、现场设备115-122和I/O卡126、128是有线设备,现场设备140-146是无线现场设备。当然,有线现场设备115-122和无线现场设备140-146可以符合任何其他期望的标准或协议,诸如任何合适的有线或无线协议,并且包括将来开发的任何合适的标准或协议。
过程控制器111的处理器130实现或监督可以存储在存储器132中的一个或多个过程控制例程或模块138。为此,处理器130被配置为与现场设备115-122和140-146通信,以及与通信地连接到控制器111的其他节点通信。应当注意,如果需要,本文描述的任何控制例程或模块可以使得其部分由不同的控制器或其他设备实现或执行。同样,要在过程控制系统100内实现的控制模块138可以采用任何形式,包括软件、固件、硬件等。控制例程可以以任何期望的软件格式实现,例如使用面向对象编程、梯形逻辑、顺序功能图、功能框图或使用任何其他软件编程语言或设计范例。可以在其上存储一些或所有控制模块138的存储器132可以是任何合适类型的一个或多个存储器,例如随机存取存储器(RAM)和/或只读存储器(ROM)。此外,控制模块138可以被硬编码到例如一个或多个EPROM、EEPROM、专用集成电路(ASIC)或任何其他硬件或固件元件。因此,可以以任何期望的方式来配置控制器111以实现控制策略或控制例程/模块。
控制器111使用通常所称为的功能块来实现控制策略,其中每个功能块是整体控制例程的对象或其他部分(例如,子例程),并与其他功能块结合操作(经由成为链路的通信)以在过程控制系统100内实现过程控制回路。基于控制的功能块通常执行输入功能(诸如与变送器、传感器或其他过程参数测量设备相关联的输入功能)、控制功能(诸如与执行PID、模糊逻辑等控制的控制例程相关联的控制功能)或输出功能(其控制某些设备(诸如阀或传送器马达)的操作)中的一个,以在过程控制系统100内执行某些物理功能。当然,存在混合和其他类型的功能块。功能块可以存储在控制器111中并由其执行,这通常是这些功能块用于标准4-20mA设备和某些类型的智能现场设备(例如,设备)或与之相关联的情况,或者功能块可以存储在现场设备本身中并由其实现,Fieldbus设备是这种情况。控制器111中的一个或多个控制模块138可以实现一个或多个控制回路,控制回路通过执行一个或多个功能块来执行。
有线现场设备115-122可以是任何类型的设备,诸如传感器、阀、传送器马达、变送器、定位器等,而I/O卡126和128可以是符合合适的通信或控制器协议的任何类型的I/O设备。例如,现场设备115-118可以是标准4-20mA设备或通过模拟线路(或组合的模拟和数字线路)与I/O卡126通信的设备,而现场设备119-122可以是诸如Fieldbus现场设备的智能设备,其使用Fieldbus通信协议通过数字总线与I/O卡128通信。然而,在一些实施例中,有线现场设备115-122中的至少一些和/或I/O卡126、128中的至少一个另外地或替代地使用主干110和合适的控制系统协议(例如Profibus、DeviceNet、Foundation Fieldbus、ControlNet、Modbus、HART等)与控制器111通信。
在图2中,无线现场设备140-146使用诸如协议的无线协议经由无线过程控制通信网络170进行通信。此类无线现场设备140-146可以直接与无线网络170的一个或多个其他设备或节点通信,这些设备或节点也被配置为进行无线通信。为了与未配置为进行无线通信的其他节点通信,无线现场设备140-146可以利用连接到主干110或另一个过程控制通信网络的无线网关135。无线网关135提供从骨干110到无线通信网络170的各种无线设备140-158的访问。具体地,无线网关135提供无线设备140-158、有线设备115-122和/或过程控制工厂100的其他节点或设备之间的通信耦合。
与有线现场设备115-122类似,无线网络170的无线现场设备140-146执行过程工厂100内的物理控制功能,例如,打开或关闭阀,进行过程参数的测量等。然而,无线现场设备140-146被配置为使用网络170的无线协议进行通信。这样,无线现场设备140-146、无线网关135和无线网络170的其他无线节点152-158可以是无线通信分组的生产者和消费者。
在过程工厂100的某些配置中,无线网络170包括非无线设备。例如,在图2中,现场设备148可以是传统的4-20mA设备,并且现场设备150可以是有线设备。为了在网络170内通信,现场设备148和150经由无线适配器152A、152B中的相应一个无线适配器连接至无线通信网络170。无线适配器152A、152B支持无线协议(诸如WirelessHART)并且还可以支持一个或多个其他通信协议(诸如Fieldbus、PROFIBUS、DeviceNet等)。另外,在一些配置中,无线网络170包括一个或多个网络接入点155A、155B,其可以是与无线网关135进行有线通信的单独物理设备,或者可以集成在无线网关135内。无线网络170还可以包括一个或多个路由器158,以转发来自无线通信网络170内的无线设备之间的分组。无线设备140-146和152-158可以通过无线通信网络170的无线链路160和/或通过主干110彼此通信,并与无线网关135通信。
在图2中,过程控制系统100包括通信连接到主干110的一个或多个操作员工作站171。经由操作员工作站171,人类操作员可以监控过程工厂100的运行时操作,以及采取可能需要的任何诊断、纠正、维护和/或其他措施。至少一些操作员工作站171可以位于工厂100中或附近的各种受保护区域中,例如,在工厂100的后端环境中,并且在某些情况下,至少一些操作员工作站171可以位于远程(但仍然与工厂100通信连接)。操作员工作站171可以是有线或无线计算设备。
示例性过程控制系统100在图2中进一步例示为包括一个或多个配置应用172A和一个或多个配置数据库172B,每个配置数据库也都通信连接到主干网110。配置应用172A的各种实例可以在一个或多个计算设备(图2中未显示)上执行,以使用户能够创建或更改过程控制模块,并通过主干110将这些模块下载到过程控制器111和/或其他过程控制器,以及使用户能够创建或更改操作员界面,操作员能够通过该操作员界面查看数据并更改过程控制例程中的数据设置。配置数据库172B存储配置的模块和/或操作员界面。通常,一个或多个配置应用172A和一个或多个配置数据库172B可以被集中并且对于过程控制系统100具有统一的逻辑外观(尽管配置应用172A的多个实例可以在过程控制系统100内同时执行),并且配置数据库172B可以存储在单个物理数据存储设备中,或跨多个数据存储设备而存储。配置应用172A、配置数据库172B及其用户界面(图2中未示出)共同形成用于创建/配置控制和/或显示模块的配置或开发系统172。通常,但并不一定,配置系统172的用户界面不同于操作员工作站171,其中配置系统172的用户界面由配置和开发工程师使用,而与工厂100是否实时运行无关,并且操作员工作站171由操作员在过程工厂100的实时(或“运行时”)操作期间使用。
示例性过程控制系统100还包括一个或多个数据历史库应用173A和一个或多个数据历史库数据库173B,其中的每一个都通信地连接到主干110。数据历史库应用173A操作以收集跨主干110提供的一些或全部数据,并将数据存储在数据历史库数据库173B中以进行长期存储。类似于配置应用172A和配置数据库172B,数据历史库应用173A和数据历史库数据库173B可以被集中并且对于过程控制系统100具有统一的逻辑外观(尽管数据历史库应用173A的多个实例可以在过程控制系统100内同时执行),并且数据历史库数据库173B可以存储在单个物理数据存储设备中,或跨多个数据存储设备而存储。数据历史库应用173A、数据历史库数据库173B及其用户界面(图2中未示出)共同形成数据历史库系统173。
在某些配置中,过程控制系统100包括一个或多个其他无线接入点174,无线接入点174使用其他无线协议与其他设备进行通信,诸如符合IEEE 802.11的无线局域网协议、移动通信协议(诸如WiMAX(全球微波互操作性)、LTE(长期演进)或其他ITU-R(国际电信联盟无线电通信部门)兼容协议)、短波无线电通信(诸如近场通信(NFC)或蓝牙)和/或其他无线通信协议。通常,此类无线接入点174允许手持式或其他便携式计算设备(例如,用户接口设备175)通过与无线网络170不同并且支持与无线网络170不同的无线协议的相应无线过程控制通信网络进行通信。例如,无线或便携式用户接口设备175可以是过程工厂100内的操作员使用的移动工作站或诊断测试装备(例如,操作员工作站171之一的实例)。在一些情况下,除了便携式计算设备之外,一个或多个过程控制设备(例如,控制器111、现场设备115-122、无线设备135、140-158等)也使用无线接入点174支持的无线协议进行通信。
注意,尽管图2仅例示了在示例性过程工厂100中包括的单个过程控制器111和特定数量的现场设备115-122和140-146、无线网关35、无线适配器152、接入点155、路由器1158和无线过程控制通信网络170,但是这仅是说明性和非限制性的实施例。例如,过程控制工厂或系统100中可以包括任意数量的控制器111,并且任何控制器111可以与任意数量的有线或无线设备和网络115-122、140-146、135、152、155、158和170进行通信来控制工厂100中的过程。
现在回到图1,使用AR移动设备(例如,AR移动设备12)映射的对象可以包括控制器111、设备115-122和140-158、I/O卡126、128、无线网关135和/或工厂100中的其他设备和/或装备件中的一些或全部,使得它们在工厂100内的3D位置(以及可能彼此之间的关系、其化身等)存储在AR数据库72中。在一些实施例中,后端服务器14可以通信地耦合到主干110,并且其他服务器18可以包括或耦合到操作员工作站171、配置系统172、数据历史库系统173和/或过程控制环境100的其他计算设备或系统。
由服务器18运行的应用19可以包括一个或多个DeltaVTM应用、诊断和维护应用和/或其他应用或基于软件的系统。因此,应用19可以支持节点体验,该节点体验显示现场设备的运行时状态和/或测量数据,提供现场设备的运行时控制,显示机器的诊断/维护信息等等。仅作为一个示例,与各种设备相关联的和/或Fieldbus信息可以被呈现给AR移动设备12的用户。体验提供单元62可以启动应用19和/或与适当的应用19(例如,经由主干110)连接以收集所需的显示数据,显示数据然后被转发给节点体验模块46。体验提供单元62还可以或者替代地将从节点体验模块46接收到的任何用户输入转发给控制器111以使适当的现场设备受到相应的控制,等等。
示例性3D地图
从以上图1的描述中应理解,AR系统10的3D“地图”不必是环境的完整模型,可以仅包括该环境内节点的3D地点。在图3中显示了仅包含四个对象/节点的高度简化的示例性3D地图200。在图3中,z轴对应于海拔(例如,高于地平面)。如上所述,地标地点202可以为环境内的所有其他地点(例如,节点和用户/AR设备地点)提供参考点。
在示例性地图200中,第一对象/节点的第一地点204在偏移量{x1,y1,z1}处比地标地点202稍高(高程),第二和第三对象/节点的第二和第三地点206、208分别在偏移量{x2,y2,z2}和{x3,y3,z3}处更高,第三对象/节点的第三地点210在偏移量{x4,y4,z4}处更高。当然,在某些情况下,对于某些对象/节点,x、y和/或z方向的偏移量可能为负。
在地图200中,{x5,y5,z5}处的地点220对应于AR移动设备(例如,图1的AR移动设备12)的当前地点。图3还以虚线描绘与设备的特定定向相对应的、AR移动设备的视场222。视场222可以由图1的定位和定向模块44确定,例如,使用来自IMU 26的传感器数据(以及可能地来自相机26的图像数据,例如,利用VIO技术)和已知的相机的方位范围/角度。尽管在图3中未例示,定位和定向模块44也可以知道在z轴方向上的视场222的限度,例如,使得视场222具有圆锥形形状,而不是假设在z方向上的无限覆盖。
在该示例性场景中,地点206和208处的对象在设备/用户的当前视场222内,而地点204和210处的对象未在设备/用户的当前视场222内。图1的体验提供单元62可以例如基于节点位置(如存储在AR数据库72中)、AR移动设备的地点220和定向(如由定位和定向模块44确定并经由网络服务接口60转发)以及相机24的视场的已知或估计特性来进行该确定。基于确定哪些对象/节点在视场222内,体验提供单元62可以将指示仅针对地点206和208处的对象要呈现节点标记(和/或特定节点体验)的数据发送到AR移动设备12。节点体验模块46可以处理该数据,并作为响应,在显示器22上与地点206和208相对应的点处或附近叠加节点标记和/或其他信息。
示例性AR用户界面
现在将结合图4A至4H描述可以叠加在AR显示器(例如,图1的AR移动设备12的显示器22)上的一组示例性用户界面。为了易于解释,还将参考图1的AR系统10,尽管所示的用户界面可以替代地用于其他系统中。对于可以进行用户选择的用户界面,可以通过用户直接查看特定菜单选项来进行选择(例如,如果用户界面相对于环境具有固定位置,而不是相对于显示器22的中心具有固定位置)。在其他实施例中,可以通过用户发出适当的语音命令,在键盘或触摸屏上输入数据或以其他适当的方式来进行选择。
首先参考图4A,如上文结合图1所讨论的,用户界面200使用户能够选择特定的“角色”。可以在启动AR应用32时或在其他合适的时间向用户显示用户界面200。AR应用32可以先验地知道可用角色,或者可以通过经由web服务接口60查询后端服务器14来被通知可用角色。一旦选择了角色,角色标识模块40就可以经由web服务接口60将指示角色的数据发送到后端服务器14。然后,体验提供单元62、警报生成单元68和/或后端服务器14的其他部件可以利用所选角色来确定适当的节点以增强用于为特定节点提供的适当类型的体验和/或内容等等,如上所述。
图4B描绘了用户界面220,该用户界面220可以用作用户当前视场内的某些或所有对象中的每一个对象的节点标记(遵守任何其他标准,例如接近度或用户角色)。示例性用户界面220包括图标(圆圈“X”)和描述符(“状态字”),该图标和描述符指示对象/节点的状态、节点名称(例如,过程控制工厂内的设备标识符,诸如“ESD-3”等)、节点的简短说明(例如“紧急关闭开关”等)以及从这些信息引到用户界面220底部的实心圆圈的垂直线。实心圆圈(或其他指示符)可以放置在用户的现实世界视图内对应对象的{x,y,z}地点上,例如,在将节点添加到3D地图时用户(或另一个用户)聚焦的现实世界{x,y,z}地点处。例如,文本和线条可以根据需要旋转以保持与AR移动设备12和用户的垂直轴对齐,或者可以始终与z轴对齐。
状态图标和描述符可以指示是否应该关于该对象采取某些动作,和/或是否关于该对象存在某种危险。例如,图4B中带圆圈的“X”可以对应于“危急”的状态,三角形中的“!”可以对应于“警告”的状态,菱形中的“i”可以对应于“咨询”的状态,并且无图标可以对应于“正常”的状态。尽管图4B示出了一系列可能的状态图标,但是应当理解,对于该特定实施例和/或场景,用户界面220仅包括带圆圈的“X”图标。针对特定对象/节点描述的状态以及该状态的含义可能会根据用户的角色而有所不同。
用户界面220的节点标记(即,在图4B中,文本、线条和实心圆)可以随着距AR移动设备12的距离而按比例缩放,使得较近的对象具有较大的节点标记并且较远处的对象具有较小的节点标记。在一些实施例中,用户界面220通过附加文本、附加图形和/或颜色编码的方式包括更多信息(例如,红色文本和线条用于“危急”状态,绿色文本和线条用于“正常”状态,等等)。
图4C描绘了用户界面240,该用户界面240可能在用户界面200处选择用户角色之后或在另一个合适的时间显现。用户界面240中的“+”图标可以由用户选择以向3D地图添加新节点,如以上结合图1所讨论的。头盔图标可以由用户选择以选择不同的角色,用户可以选择第三个图标来管理某些设置,如下所述。用户界面240中的矩形框可以向用户显示系统消息。例如,消息框可以用于显示由警报生成单元68和/或基于位置的警报模块52生成的警报。
图4D描绘了如果用户选择用户界面240中的设置图标可显现的用户界面260。如图4D所示,用户界面260使用户能够更改AR移动设备的名称或标识符、地标标识符以及后端服务器14的名称或IP地址。例如,当对web服务接口60进行web服务调用时,AR移动设备12可以使用这些值中的某些或全部。
图4E描绘了一个简单的用户界面280,如果用户在用户界面240中选择“+”(添加节点)图标,则该用户界面280可显现。在此示例中,用户界面280只是标线(例如,在用户显示器22的中心),用户可以简单地通过环顾四周(例如,如果AR移动设备12是AR头盔、护目镜或智能眼镜)或以其他方式瞄准AR移动设备12(例如,如果是平板电脑或智能手机)的相机24而将用户置于现实世界环境中任何地点的中心。AR应用32的节点创建模块48可以要求用户确认标线何时被适当地放置(例如,通过发出语音命令),或者如果相机24的视场在某个阈值时间段基本上不改变等,则可以假设适当的放置。
图4F描绘了用户界面300,该用户界面300可在用户已定位用户界面280的标线之后并且在定位和定向模块44已经确定了用于放置新对象/节点的必要位置和/或定向信息(例如,AR移动设备12的位置、设备12的定向以及从设备12到对象的距离)之后显现。示例性用户界面300包括供用户输入节点名称和/或节点描述的文本框。替代地,可以通过语音命令(例如,如果用户选择了麦克风图标)来提供该信息的一些或全部。在其他实施例中,可以通过使用光学字符识别(OCR)技术处理对象的一部分的图像来确定节点名称和/或描述。例如,用户可以将相机24指向附于该对象并且包括序列号、型号或其他标识符的标签或标贴。然后可以经由网络服务接口60将标识符发送到后端服务器14,并与存储在后端服务器14上的信息进行交叉引用,或者将其存储在另一系统或数据库(例如,一个或多个其他服务器18中的一个),以确定节点名称和/或描述。
图4G描绘了当用户已经选择了特定对象/节点(例如,通过选择用户界面220的节点标记)时对于特定对象/节点可显现的用户界面320。例如,可以由节点体验模块46基于由后端服务器14的体验提供单元62提供的指示节点的可用体验的数据来生成用户界面320。示例性用户界面320包括在用户界面220中的节点标记上示出的节点名称和描述,以及两个矩形区域。用户界面320底部的实心圆圈可以保留在对象上(在现实世界视图内)与用户界面220中的位置相同的位置。第一“工作”区域,如图4中的空白矩形所示,可显示与所选对象/节点有关的附加信息,诸如对象的状态信息、对象的详细警报信息等等(例如,取决于所提供的节点体验的类型和/或用户的角色)。
用户可以从第二区域中选择所期望的节点体验类型,列出可用于该节点(并且可能用于用户角色)的体验。如图4G所示,在此示例中,可用的节点体验包括“更多信息”(例如,用于在工作区域中提供其他类型的基于文本的信息)、“连接”(例如,用于显示与其他对象/节点的物理或逻辑连接,如下文结合图4H所述)、“信息链接”(例如,用于在工作区域中显示来自“帮助”文档、指导视频或在特定URL的其他网页的信息)、“子对象”(例如,用于在工作区域中显示与其他对象/节点的关系,这些对象/节点作为所选对象/节点的“子女”而相关)、“过程值”(例如,用于在工作区域中显示从其他服务器18和应用19中的一个获得的控制过程值)和“工单”(例如,用于在工作区域中显示与所选对象/节点相关联的工单的文本)。
图4H描绘了当用户在用户界面320中选择“连接”图标时可显现的用户界面340。对于用户界面340,节点体验模块46呈现当前选择的对象/节点的{x,y,z}位置与当前选择的对象/节点在物理上和/或逻辑上连接到的对象/节点的{x,y,z}位置之间的线(例如,如上结合图1所讨论的)。用户界面340底部的实心圆圈可以在前一个位置,而用户界面340顶部的实心圆圈可以在后一个位置。当然,实心圆圈的相对位置可以根据场景而改变(例如,在现实世界视图中,所选对象/节点的圆圈看起来可能比所连接的对象/节点的圆圈更高)。
在图4H的实施例中,节点体验模块46以三段呈现连接线:指示沿着y轴的距离和方向的第一段(从当前选择的对象/节点开始)、指示沿x轴的距离和方向的第二段(从第一部分的末尾开始)和指示沿z轴的距离和方向并结束于所连接的对象/节点的第三段(从第二段的末尾开始)。线段可以被颜色编码,以线条格式(虚线、实线等)编码,和/或以其他方式编码以提供附加信息(例如,红线用于指示当前不起作用的通信连接)。在其他实施例中,可以以不同的方式来描绘连接,诸如对象/节点之间的单个线段(例如,线变得更宽或更窄以描绘与用户的距离)。在各种不同的实施例中,可以在用户界面340中示出到多个不同的对象/节点的连接,或者用户可能需要选择期望对其进行可视化的每个单独的连接。
示例性AR数据库
图5A和5B共同描绘了可由图1的AR数据库72使用的数据库结构400(例如,当在图2的过程控制环境100中使用时)。在数据库结构400中,每个框表示可以存储在AR数据库72中的表格,其中每个框的顶行是表格名称(例如,“节点”、“节点状态”等)。这些表格使用主关键字来链接,每个主关键字在图5A和5B中用关键字图标和字母“PK”表示。
数据库结构400使得能够有效地交叉引用数据项,并允许用户和系统更新而不会破坏现有链接或需要大量更新。例如,使用“节点ID”主关键字允许用户更改现有节点的“节点名称”,而无需更新其他相关表格。图5B中的“GetOPCDA”表可以对应于以上结合图4G描述的“过程值”节点体验。
示例性增强的虚拟视觉
图6和图7涉及其中AR平台(例如,由图1的AR系统10提供)提供增强用户的“虚拟视觉”的特征的实施例。图6描绘了特定场景,其中“虚拟X射线视觉”特征(以上结合图1讨论的)用于在过程控制环境内(例如,在图2的过程控制环境100内)“看到”封闭的机构,尽管图7A和7B描绘了特定场景,其中为在过程控制环境的受限访问(例如,难以到达或者危险)区域中和/或远离用户的当前地点的传感器/变送器设备提供了“化身”(也在上文结合图1进行了讨论)。
首先参考图6的示例,封闭的(并且可能是上锁的)机柜500可以包含多个内部部件(在图6中看不到),诸如I/O卡、断路器等。当满足以上结合图1讨论的任何标准时(例如,内部部件在AR移动设备12的视场内并且在阈值距离之内,和/或用户选择了机柜500等),并且如果确定机柜500包含被遮挡的对象/节点(也如上所述,例如,基于机柜与内部部件之间的已知关系,和/或通过扫描QR码等),则图1的视觉增强模块50可以将用户界面520叠加在用户的现实世界视图上。
用户界面520包括内部部件的描绘522。描绘522可以是机柜500内的实际部件的图像,处于它们相对于彼此的实际布置中。在其他实施例中,描绘522包括部件的单独或以描绘它们在机柜500内的相对布置的方式的超逼真或伪逼真的图形表示(例如3D模型、2D模型等)。在任一种情况下,描绘522可以向用户提供类似于他或她在查看实际内部部件时将具有的体验的AR体验。
用户界面520可以在用户的现实世界视图中被直接叠加在机柜500上,并且可以适当地缩放以使描绘522与隐藏的内部部件的实际位置对齐。替代地,用户界面520可以在用户的现实世界视图中偏离机柜500,可能通过线或某些其他方式连接。
描绘522可以包括或可以不包括用于内部部件中的各个内部部件的节点标记(例如,类似于图4B的用户界面220),以达到这些部件先前已经被映射的程度。此外,用户界面520可以使用户能够通过选择这样的节点标记,通过选择描绘522本身或者通过发布适当的语音命令来选择各种节点体验。描绘522或用户界面520还可以包括控件(例如,在一个拐角处的“X”),用户可以选择该控件以从他或她的视野中消除描绘522,或者可以使用适当的语音命令。
现在参考图7A,方向指示符550包括特定对象(此处是传感器/变送器设备)的描绘以及示出了该对象相对于用户的现实世界视图的大致方向的箭头。图1的视觉增强模块50可以例如响应于上述关于远距离和/或受限访问的对象的化身所描述的任何状况,将方向指示符550叠加在用户的现实世界视图上。在示例性方向指示符550中的设备的描绘是现实模型或图像,尽管当然其他格式也是可能的(例如,轮廓、动画、视频等)。
如果用户选择方向指示符550,则视觉增强模块50可以将“化身”560叠加在用户的现实世界视图上,如图7B所示。尽管图7B中所示的化身560与方向指示符550中的对象的描绘相同,但是在其他实施例中,化身560比方向指示符550中的描绘(如果有的话)更详细和/或更真实。类似于图6的描绘522,化身560可以向用户提供类似于他或她在紧密邻近地查看实际对象(此处是传感器/变送器设备)时将具有的体验的AR体验。实际上,如上所述,图6的虚拟X射线视觉特征可能只是图7B所示视觉增强的一种特殊情况,图6的描绘522是封装在机柜510内的各种部件的化身的集合。
如果用户选择化身560或发出适当的语音命令,则视觉增强模块50可以在用户的现实世界视图内将用户界面570叠加在化身560附近。替代地,默认情况下可以向用户界面570呈现化身560,而不需要对化身560的任何用户选择或任何语音命令。图7B的示例性用户界面570对应于节点体验,该节点体验提供过程值(此处为传感器读数),并允许对设备的用户控制(此处,通过发起校准过程)。为了实现该节点体验,图1的体验提供单元62可以与由其他服务器18运行的一个或多个应用19进行通信,如上所述。例如,经验提供单元62可以使过程控制应用启动,或者使用API与正在执行的过程控制应用连接,等等。
示例性3D映射方法
图8描绘了用于使用移动设备来映射现实世界的过程控制环境(例如,图2的过程控制环境100)的示例性方法600。可以使用例如图1的AR移动设备12或另一合适的移动设备来执行方法600。在一些实施例中,可以使用不具有AR能力的移动设备。
在框602处,在过程控制环境中的参考或“地标”地点处注册移动设备。该注册可以包括使用移动设备的相机(例如,图1的相机24)来扫描位于参考地点处的代码(例如,QR代码或其他图像)的视觉表示。该代码可以例如在墙壁上(例如在板或海报上)。
在框604处,当用户将移动设备移动通过过程控制环境时,使用至少移动设备的IMU(例如,图1的IMU 26)来跟踪移动设备相对于参考地点的3D位置,并跟踪移动设备的定向。框604可以无限期地继续(例如,与框606至610同时),直到用户结束AR体验(例如,通过关闭移动设备的电源,或关闭在移动设备上运行的应用等)。在框604处的跟踪还可以使用移动设备相机。例如,VIO技术可以用于跟踪移动设备的位置和定向。
在框606处,在移动设备处检测用户输入,该用户输入指示新节点将被添加到过程控制环境的3D地图。用户输入可以是例如用户语音命令(例如,“添加节点”),或者菜单选项的用户选择(例如,通过将移动设备相机聚焦在特定地点,或在键盘或触摸屏上输入数据)。
在框608处,至少基于移动设备的跟踪的3D位置和移动设备的跟踪的定向,确定或促使确定现实世界对象的3D位置(相对于参考地点)。在一个实施例中,框608包括使用移动设备的相机(例如,在输入用户输入时或之后不久)来捕获现实世界对象的图像。然后,可以至少通过使用深度感测技术处理相机图像来从图像确定移动设备与对象之间的距离。然后,可以基于所跟踪的移动设备的3D位置和定向以及所确定的距离来确定或促使确定3D位置。
在一些实施例中,在框608处,由执行方法600的设备、系统等直接确定对象的3D位置。在其他实施例中,执行方法600的设备、系统等例如通过经由web服务接口(例如,图1的web服务接口60)进行请求来使另一设备、系统等确定对象的3D位置。
在框610处,至少通过使对象的3D位置与新节点相关联地存储,来使节点数据库或库将新节点添加到3D地图。例如,框610可以包括使用web服务接口来使远程服务器(例如,图1的后端服务器14)在节点数据库(例如,图1的AR数据库72)中存储至少新节点的3D位置。
方法600可以包括图8中未示出的一个或多个框。例如,方法600可以包括其中在移动设备处接收另一用户输入(例如,语音命令、键盘输入等)的框,其中,用户输入指示新节点的标识符(例如,名称)和/或描述。在此类实施例中,框610可以进一步包括使新节点的标识符和/或描述与新节点相关联地被存储在节点数据库内。
作为另一个示例,方法600可以包括与不同移动设备的稍后操作相对应的附加框(或者由执行框602到610的同一移动设备的稍后操作),其在新节点已添加到3D地图后导航过程控制环境的区域。在第一框中,例如,可以在参考地点处注册第二移动设备(例如,AR移动设备12或类似设备)。此后,可以使用至少第二移动设备的IMU(例如,使用VIO技术)来跟踪第二移动设备的3D位置(相对于参考地点)和第二移动设备的定向。然后,可以例如通过确定(例如,基于第二移动设备的跟踪的定向)对象在第二移动设备的相机的视场内的区域内,和/或确定(例如,基于第二移动设备的跟踪的位置)物理对象接近第二移动设备,来检测触发条件。响应于检测到触发条件,与新节点相关联的数字信息可以被叠加到在第二移动设备的显示器上或通过第二移动设备的显示器看到的现实视图上(例如,节点标记、或者根据以上所讨论的任何节点体验)。
用于提供虚拟X射线视觉的示例性方法
图9描绘了用于在现实世界的过程控制环境(例如,过程控制环境100)中向AR移动设备的用户提供虚拟增强视觉(例如,虚拟“X射线视觉”)的示例性方法620。例如,方法620可以由计算系统或设备(例如,图1的后端服务器14)和/或AR移动设备(例如,图1的AR移动设备12)的一个或多个处理器执行。
在框622处,确定与过程控制环境的地图相关联的特定节点(“第一节点”)对应于当前在AR移动设备的相机(例如,图1的相机24)的视场内的特定现实世界对象(“第一对象”)。第一对象可以是例如结合图2示出或描述的任何设备,或者是至少部分不透明的任何其他物理事物。在一些实施例中,第一对象是封装体,诸如被配置为包含多个较小的设备或部件的机柜。
在一些实施例中,框622包括:检测AR移动设备的当前定向,以及基于AR移动设备的当前定向,并且进一步基于由地图指示的第一节点的位置,来确定第一对象当前在相机的视场内。框622还可以包括:基于AR移动设备的当前位置和第一节点位置来确定第一对象在AR移动设备的某个阈值距离内(例如,10米、50米等)。
在框624处,确定第一节点和也与地图相关联的一个或多个其他节点之间的特定关系。该关系指示(显式地或隐式地)对应于一个或多个其他节点的一个或多个其他现实世界对象被第一对象至少部分地遮挡。例如,节点数据库(例如,AR数据库72或其部分)可以存储指示第一节点对应于包含与其他节点(例如,控制器、I/O卡、开关等)相对应的对象的机柜或其他封装体的数据。框624可以包括:直接地(例如,在本地存储器中)或经由另一计算系统访问节点数据库。在一些实施例中,第一对象被标记有QR码或其他视觉码,并且框624包括:扫描该代码以确定节点标识符,以及使用该节点标识符来确定关系(例如,通过使用该标识符作为数据库的关键字)。
在框626处,从存储器(例如,本地或远程持久性存储器)获取一个或多个数字模型或数字图像,其中模型或图像描述被第一对象至少部分地遮挡的一个或多个对象。例如,可以从存储器获取对象的一个或多个超逼真或伪逼真3D模型、2D模型、动画模型、数字图像或数字视频。
在框628处,使AR移动设备的显示器(例如,图1的显示器22)在第一对象仍在相机的视场中时向用户呈现所获取到的模型或图像。例如,模型或图像可以被叠加到在显示器上呈现给用户或者由用户通过显示器看到的现实世界视图上。框628可以例如包括:例如,向AR移动设备发送至少一些显示内容和/或发送显示指令(例如,经由图1的web服务接口60)。
方法620可以包括图9中未示出的一个或多个框。例如,方法620可以包括其中针对被遮挡的对象向用户呈现一个或多个节点体验的框(例如,最初具有模型或图像,或响应于进一步的动作,诸如对特定被遮挡的对象的模型或图像的用户选择)。
用于可视化受限访问对象的示例性方法
图10描绘了用于促进AR移动设备的用户与可处于过程控制环境(例如,图2的过程控制环境100)的受限访问(例如,危险、受阻等)区域中的现实世界对象(“第一对象”)之间的交互的示例性方法640。例如,方法640可以由计算系统或设备(例如,图1的后端服务器14)和/或AR移动设备(例如,图1的AR移动设备12)的一个或多个处理器执行。
在框642处,当用户移动通过过程控制环境时,使AR移动设备的显示器(例如,图1的显示器22)将数字信息叠加在位于AR移动设备的相机(例如,图1的相机24)的视场内的环境的各部分上。所叠加的信息与过程控制环境的地图(例如,3D地图)中的节点相关联,其中节点与环境中的其他现实世界对象相对应。框642例如可以包括:例如,向AR移动设备发送至少一些显示内容和/或发送显示指令(例如,经由图1的web服务接口60)。
在框644处,当第一对象未位于相机的视场内时,使AR移动设备的显示器指示到第一对象的方向。该指示例如可以包括文本、箭头、线条和/或动画。类似于框642,框644例如可以包括:例如,向AR移动设备发送至少一些显示内容和/或发送显示指令(例如,经由图1的web服务接口60)。
在框646处,在检测到经由AR移动设备进行的并且指示第一对象的选择的用户输入(例如,请求针对第一对象的用户界面的语音命令)之后,使显示器在当前位于视场内但不包括第一对象的过程控制环境的部分上叠加第一对象的数字模型或图像(即,第一对象的“化身”)以及第一对象的用户界面。化身例如可以是对象的超逼真或伪逼真的3D模型、2D模型、动画模型、数字图像或数字视频。用户界面可以包括一个或多个虚拟控件和/或一个或多个显示,该一个或多个虚拟控件实现对第一对象的用户控制(例如,用于校准第一对象,设置第一对象的操作参数等),该一个或多个显示呈现与第一对象的状态(例如,诊断状态、维护状态、操作状态等)、设置和/或输出(例如,传感器读数等)相关联的信息。在一些实施例中,用户界面没有与化身同时呈现,而是响应于化身或语音命令的用户选择而显现(与化身一起)。
在一些实施例中,在框644处的对方向的指示发生在检测到指示对第一对象的选择的用户输入(即,图10中所示的顺序)之前。在一些此类实施例中,可以响应于检测到(1)第一对象在AR移动设备的阈值距离内以及(2)第一对象当前未在相机的视场内而生成并显示方向指示符(例如,指向包含第一对象的显示区域之外的箭头)。方向指示符的其他合适的触发或标准也是可能的。例如,可以仅将指示符提供给具有与第一对象有关的特定用户角色的用户。
在其他实施例中,对方向的指示替代地发生在检测到已指示对第一对象的选择的用户输入之后。例如,用户可以发出请求为第一个对象获取用户界面(例如,针对第一对象的用户“搜索”)的语音命令,然后将方向指示符(以及可能地化身)叠加在用户的现实世界视图上。
数字模型或图像,无论是否与方向指示符一起显示和/或在随后的阶段显示,可以使用web服务接口从数据库中获取(例如,使用web服务接口60从图1的AR数据库72中获取)。
一般考虑
当以软件实现时,本文描述的任何应用和功能可以作为指令存储在任何有形的、非暂时性的计算机可读存储器(诸如在磁盘、激光盘、固态存储器设备、分子存储器存储设备或其他存储介质)中,在计算机或处理器的RAM或ROM中,等等。尽管本文公开的示例性系统被公开为包括在硬件上执行的软件和/或固件以及其他部件,但是应当注意的是,这些系统仅仅是说明性的,不应被认为是限制性的。例如,可以预期的是,这些硬件、软件和固件部件中的任何一个或全部可以仅以硬件,仅以软件或以硬件和软件的任意组合来体现。因此,尽管本文描述的示例性系统被描述为以在一个或多个计算机设备的处理器上执行的软件来实现,但是本领域普通技术人员将容易理解,所提供的示例不是实现这些系统的唯一方式。
虽然已经参照特定示例描述了本发明,但是这些特定示例仅是示例性的,而并不限制本发明,对于本领域普通技术人员而言显而易见的是,在不背离本发明的精神和范围的情况下,可以对所公开的实施例进行改变、增加或删除。
Claims (20)
1.一种在现实世界的过程控制环境中向增强现实(AR)移动设备的用户提供虚拟增强视觉的方法,所述方法包括:
通过AR系统的一个或多个处理器,确定与所述过程控制环境的地图相关联的第一节点对应于当前位于所述AR移动设备的相机的视场内的第一现实世界对象;
通过所述一个或多个处理器,确定所述第一节点和与所述地图相关联的一个或多个其他节点之间的关系,所述关系指示与所述一个或多个其他节点相对应的一个或多个其他现实世界对象至少部分地被所述第一现实世界对象遮挡;
至少部分地响应于确定所述第一节点和所述其他节点之间的关系,通过所述一个或多个处理器从存储器获取描述所述一个或多个其他现实世界对象的一个或多个数字模型或数字图像;以及
通过所述一个或多个处理器,使所述AR移动设备的显示器在所述第一现实世界对象位于所述相机的所述视场中时向所述用户呈现所获取的数字模型或数字图像。
2.根据权利要求1所述的方法,其中,确定所述第一节点对应于当前位于所述相机的视场内的第一现实世界对象包括:
检测至少所述AR移动设备的当前定向;以及
至少基于所述当前定向和由所述地图指示的所述第一节点的位置,确定所述第一现实世界对象当前位于所述相机的所述视场内。
3.根据权利要求1所述的方法,其中,确定所述第一节点对应于当前位于所述相机的视场内的第一现实世界对象包括:
确定所述第一节点对应于(i)当前位于所述相机的视场内并且(ii)当前位于所述AR移动设备的阈值距离内的第一现实世界对象。
4.根据权利要求1所述的方法,其中,确定所述第一节点和所述一个或多个其他节点之间的关系包括:
访问指定所述关系的节点数据库。
5.根据权利要求1所述的方法,其中,确定所述第一节点和所述一个或多个其他节点之间的关系包括:
确定通过所述AR移动设备从所述第一现实世界对象获得的节点标识符;以及
使用所述节点标识符来确定所述关系。
6.根据权利要求5所述的方法,其中,确定节点标识符包括:
确定通过所述AR移动设备扫描所述第一现实世界对象上的QR码获得的节点标识符。
7.根据权利要求1所述的方法,其中,从存储器获取描述所述一个或多个其他现实世界对象的一个或多个数字模型或数字图像包括:
从所述存储器获取描述所述一个或多个现实世界对象的一个或多个三维(3D)数字模型。
8.根据权利要求1所述的方法,其中,从存储器获取描述所述一个或多个现实世界对象的一个或多个数字模型或数字图像包括:
获取描述所述一个或多个现实世界对象的所述一个或多个数字图像。
9.根据权利要求1所述的方法,其中,确定所述第一节点和与所述地图相关联的一个或多个其他节点之间的关系包括:
确定所述第一现实世界对象是机柜,其中,所述一个或多个其他现实世界对象位于所述机柜中。
10.一种用于在现实世界的过程控制环境中向增强现实(AR)移动设备的用户提供虚拟增强视觉的服务器,所述服务器被配置为:
确定与所述过程控制环境的地图相关联的第一节点对应于当前位于所述AR移动设备的相机的视场内的第一现实世界对象;
确定所述第一节点和与所述地图相关联的一个或多个其他节点之间的关系,所述关系指示与所述一个或多个其他节点相对应的一个或多个其他现实世界对象至少部分地被所述第一现实世界对象遮挡;
至少部分地响应于确定所述第一节点和所述其他节点之间的关系,从存储器获取描述所述一个或多个其他现实世界对象的一个或多个数字模型或数字图像;以及
使所述AR移动设备的显示器在所述第一现实世界对象位于所述相机的所述视场中时向所述用户呈现所获取的数字模型或数字图像。
11.根据权利要求10所述的服务器,其中,所述服务器被配置为至少通过以下方式来确定所述第一节点对应于当前位于所述相机的视场内的第一现实世界对象:
至少基于所述AR移动设备的当前定向和由所述地图指示的所述第一节点的位置,确定所述第一现实世界对象当前位于所述相机的所述视场内。
12.根据权利要求10所述的服务器,其中,所述服务器被配置为至少通过以下方式来确定所述第一节点对应于当前位于所述相机的视场内的第一现实世界对象:
确定所述第一节点对应于(i)当前位于所述相机的视场内并且(ii)当前位于所述AR移动设备的阈值距离内的第一现实世界对象。
13.根据权利要求10所述的服务器,其中,所述服务器被配置为至少通过以下方式来确定所述第一节点和所述一个或多个其他节点之间的关系:
确定通过所述AR移动设备从所述第一现实世界对象获得的节点标识符;以及
使用所述节点标识符来确定所述关系。
14.根据权利要求10所述的服务器,其中,所述服务器被配置为至少通过以下方式来确定所述第一节点和与所述地图相关联的一个或多个其他节点之间的关系:
确定所述第一现实世界对象是机柜,其中,所述一个或多个其他现实世界对象位于所述机柜中。
15.一种用于在现实世界的过程控制环境中向用户提供虚拟增强视觉的增强现实(AR)移动设备,所述AR移动设备包括相机和显示器,并且所述AR移动设备被配置为:
确定与所述过程控制环境的地图相关联的第一节点对应于当前位于所述相机的视场内的第一现实世界对象;
确定所述第一节点和与所述地图相关联的一个或多个其他节点之间的关系,所述关系指示与所述一个或多个其他节点相对应的一个或多个其他现实世界对象至少部分地被所述第一现实世界对象遮挡;
至少部分地响应于确定所述第一节点和所述其他节点之间的关系,从存储器获取描述所述一个或多个其他现实世界对象的一个或多个数字模型或数字图像;以及
当所述第一现实世界对象位于所述相机的所述视场中时,经由所述显示器向所述用户呈现所获取的数字模型或数字图像。
16.根据权利要求15所述的AR移动设备,其中,所述AR移动设备还包括惯性测量单元,并且其中,所述AR移动设备被配置为至少通过以下方式来确定所述第一节点对应于当前位于所述相机的视场内的第一现实世界对象:
使用所述惯性测量单元来检测至少所述AR移动设备的当前定向;以及
至少基于所述AR移动设备的所述当前定向和由所述地图指示的所述第一节点的位置,确定所述第一现实世界对象当前位于所述相机的所述视场内。
17.根据权利要求15所述的AR移动设备,其中,所述AR移动设备被配置为至少通过以下方式来确定所述第一节点对应于当前位于所述相机的视场内的第一现实世界对象:
确定所述第一节点对应于(i)当前位于所述相机的视场内并且(ii)当前位于所述AR移动设备的阈值距离内的第一现实世界对象。
18.根据权利要求15所述的AR移动设备,其中,所述AR移动设备被配置为至少通过以下方式来确定所述第一节点和所述一个或多个其他节点之间的关系:
确定由所述AR移动设备从所述第一现实世界对象获得的节点标识符;以及
使用所述节点标识符来确定所述关系。
19.根据权利要求18所述的AR移动设备,其中,所述AR移动设备被配置为通过使用所述相机扫描所述第一现实世界对象上的QR码来确定所述节点标识符。
20.根据权利要求15所述的AR移动设备,其中,所述AR移动设备被配置为至少通过以下方式来确定所述第一节点和与所述地图相关联的一个或多个其他节点之间的关系:
确定所述第一现实世界对象是机柜,其中,所述一个或多个其他现实世界对象位于所述机柜中。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201762564074P | 2017-09-27 | 2017-09-27 | |
US62/564,074 | 2017-09-27 | ||
US16/036,379 | 2018-07-16 | ||
US16/036,379 US11080931B2 (en) | 2017-09-27 | 2018-07-16 | Virtual x-ray vision in a process control environment |
PCT/US2018/052894 WO2019067570A1 (en) | 2017-09-27 | 2018-09-26 | VIRTUAL X-RAY VISION IN A PROCESS CONTROL ENVIRONMENT |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111149133A true CN111149133A (zh) | 2020-05-12 |
CN111149133B CN111149133B (zh) | 2023-12-15 |
Family
ID=65807773
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811124251.5A Pending CN109559380A (zh) | 2017-09-27 | 2018-09-26 | 过程控制环境的3d映射 |
CN201880063431.9A Active CN111149133B (zh) | 2017-09-27 | 2018-09-26 | 过程控制环境中的虚拟x射线视觉 |
CN201880063496.3A Pending CN111149134A (zh) | 2017-09-27 | 2018-09-26 | 对受限访问对象的虚拟访问 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811124251.5A Pending CN109559380A (zh) | 2017-09-27 | 2018-09-26 | 过程控制环境的3d映射 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880063496.3A Pending CN111149134A (zh) | 2017-09-27 | 2018-09-26 | 对受限访问对象的虚拟访问 |
Country Status (6)
Country | Link |
---|---|
US (4) | US11080931B2 (zh) |
JP (4) | JP7315313B2 (zh) |
CN (3) | CN109559380A (zh) |
DE (2) | DE112018004347T5 (zh) |
GB (3) | GB2607819B (zh) |
WO (2) | WO2019067570A1 (zh) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10650597B2 (en) * | 2018-02-06 | 2020-05-12 | Servicenow, Inc. | Augmented reality assistant |
US10977867B2 (en) * | 2018-08-14 | 2021-04-13 | Goodrich Corporation | Augmented reality-based aircraft cargo monitoring and control system |
US11244509B2 (en) | 2018-08-20 | 2022-02-08 | Fisher-Rosemount Systems, Inc. | Drift correction for industrial augmented reality applications |
US10547974B1 (en) * | 2019-03-19 | 2020-01-28 | Microsoft Technology Licensing, Llc | Relative spatial localization of mobile devices |
JP2020197836A (ja) * | 2019-05-31 | 2020-12-10 | ファナック株式会社 | 産業用機械のデータ収集確認装置 |
US11307647B2 (en) * | 2019-09-11 | 2022-04-19 | Facebook Technologies, Llc | Artificial reality triggered by physical object |
CN110718043B (zh) * | 2019-10-17 | 2021-07-30 | 辽宁中航信诺科技有限公司 | 基于ar人工智能设备的危险区域的检查报警方法 |
US11250624B2 (en) * | 2020-04-24 | 2022-02-15 | Trimble Inc. | Methods of displaying an augmented reality model on an augmented reality device |
US20230230374A1 (en) * | 2020-05-15 | 2023-07-20 | Beijing Xiaomi Mobile Software Co., Ltd. | Method and device for positioning internet of things devices |
US11120093B1 (en) | 2020-06-02 | 2021-09-14 | Capital One Services, Llc | System and method for providing a content item based on computer vision processing of images |
US11816887B2 (en) | 2020-08-04 | 2023-11-14 | Fisher-Rosemount Systems, Inc. | Quick activation techniques for industrial augmented reality applications |
WO2022035910A1 (en) * | 2020-08-10 | 2022-02-17 | Orcana Inc. | Method and platform for portable remote support during medical device implantation using augmented reality devices |
CN112287928A (zh) * | 2020-10-20 | 2021-01-29 | 深圳市慧鲤科技有限公司 | 一种提示方法、装置、电子设备及存储介质 |
CN116917847A (zh) | 2021-03-01 | 2023-10-20 | 昕诺飞控股有限公司 | 根据图像中到最近设备的距离显示数据的聚合 |
WO2023009864A2 (en) * | 2021-07-30 | 2023-02-02 | Vuzix Corporation | Interactive reticle |
TWI808669B (zh) * | 2022-03-04 | 2023-07-11 | 國眾電腦股份有限公司 | 多點同步指導偕同作業系統及其方法 |
CN115468560B (zh) * | 2022-11-03 | 2023-03-24 | 国网浙江省电力有限公司宁波供电公司 | 基于多传感信息融合的质检方法、机器人、设备及介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130301875A1 (en) * | 2012-05-11 | 2013-11-14 | Service Solutions U.S. Llc | Augmented reality virtual automotive x-ray having service information |
US20160313902A1 (en) * | 2015-04-27 | 2016-10-27 | David M. Hill | Mixed environment display of attached control elements |
Family Cites Families (61)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE50003377D1 (de) * | 1999-03-02 | 2003-09-25 | Siemens Ag | Augmented-reality-system zur situationsgerechten unterstützung der interaktion zwischen einem anwender und einer technischen vorrichtung |
US7079990B2 (en) | 2001-02-08 | 2006-07-18 | Solidworks Corporation | Automated connections of computer-aided design components |
US7092974B2 (en) | 2003-03-12 | 2006-08-15 | Right Hemisphere Limited | Digital asset server and asset management system |
DE102005061211B4 (de) * | 2004-12-22 | 2023-04-06 | Abb Schweiz Ag | Verfahren zum Erzeugen einer Mensch-Maschine-Benutzer-Oberfläche |
US7920071B2 (en) | 2006-05-26 | 2011-04-05 | Itt Manufacturing Enterprises, Inc. | Augmented reality-based system and method providing status and control of unmanned vehicles |
US20090322671A1 (en) * | 2008-06-04 | 2009-12-31 | Cybernet Systems Corporation | Touch screen augmented reality system and method |
US8397181B2 (en) * | 2008-11-17 | 2013-03-12 | Honeywell International Inc. | Method and apparatus for marking a position of a real world object in a see-through display |
US8839121B2 (en) * | 2009-05-06 | 2014-09-16 | Joseph Bertolami | Systems and methods for unifying coordinate systems in augmented reality applications |
US20140063055A1 (en) * | 2010-02-28 | 2014-03-06 | Osterhout Group, Inc. | Ar glasses specific user interface and control interface based on a connected external device type |
US9710554B2 (en) * | 2010-09-23 | 2017-07-18 | Nokia Technologies Oy | Methods, apparatuses and computer program products for grouping content in augmented reality |
US9424371B2 (en) * | 2010-11-05 | 2016-08-23 | Autodesk, Inc. | Click to accept as built modeling |
US9865125B2 (en) * | 2010-11-15 | 2018-01-09 | Bally Gaming, Inc. | System and method for augmented reality gaming |
US8509483B2 (en) | 2011-01-31 | 2013-08-13 | Qualcomm Incorporated | Context aware augmentation interactions |
KR101199290B1 (ko) | 2011-03-31 | 2012-11-09 | 전자부품연구원 | 증강현실을 이용한 플랜트 관리 방법 및 시스템 |
US20120306850A1 (en) | 2011-06-02 | 2012-12-06 | Microsoft Corporation | Distributed asynchronous localization and mapping for augmented reality |
US20150153181A1 (en) | 2011-07-27 | 2015-06-04 | Google Inc. | System and method for providing indoor navigation services |
CA2754225A1 (en) * | 2011-08-29 | 2013-02-28 | Clover Point Cartographics Ltd. | Geographic asset management system and method |
US9268406B2 (en) * | 2011-09-30 | 2016-02-23 | Microsoft Technology Licensing, Llc | Virtual spectator experience with a personal audio/visual apparatus |
JP5999679B2 (ja) | 2012-01-18 | 2016-09-28 | 株式会社日立製作所 | 設備保守管理システム |
US9147221B2 (en) | 2012-05-23 | 2015-09-29 | Qualcomm Incorporated | Image-driven view management for annotations |
US9420275B2 (en) | 2012-11-01 | 2016-08-16 | Hexagon Technology Center Gmbh | Visual positioning system that utilizes images of a working environment to determine position |
CN102981616B (zh) * | 2012-11-06 | 2017-09-22 | 中兴通讯股份有限公司 | 增强现实中对象的识别方法及系统和计算机 |
US9730029B2 (en) | 2012-11-08 | 2017-08-08 | Duke University | Unsupervised indoor localization and heading directions estimation |
JP6016268B2 (ja) | 2012-12-20 | 2016-10-26 | Kddi株式会社 | フィールド作業支援装置、方法及びプログラム |
US9336629B2 (en) * | 2013-01-30 | 2016-05-10 | F3 & Associates, Inc. | Coordinate geometry augmented reality process |
US9959674B2 (en) * | 2013-02-26 | 2018-05-01 | Qualcomm Incorporated | Directional and X-ray view techniques for navigation using a mobile device |
US20140267234A1 (en) | 2013-03-15 | 2014-09-18 | Anselm Hook | Generation and Sharing Coordinate System Between Users on Mobile |
US10139623B2 (en) * | 2013-06-18 | 2018-11-27 | Microsoft Technology Licensing, Llc | Virtual object orientation and visualization |
US9129430B2 (en) | 2013-06-25 | 2015-09-08 | Microsoft Technology Licensing, Llc | Indicating out-of-view augmented reality images |
US20150062123A1 (en) | 2013-08-30 | 2015-03-05 | Ngrain (Canada) Corporation | Augmented reality (ar) annotation computer system and computer-readable medium and method for creating an annotated 3d graphics model |
US9383816B2 (en) * | 2013-11-15 | 2016-07-05 | Kopin Corporation | Text selection using HMD head-tracker and voice-command |
US10209955B2 (en) * | 2013-11-15 | 2019-02-19 | Kopin Corporation | Automatic speech recognition (ASR) feedback for head mounted displays (HMD) |
US9530250B2 (en) * | 2013-12-10 | 2016-12-27 | Dassault Systemes | Augmented reality updating of 3D CAD models |
US20150169597A1 (en) | 2013-12-17 | 2015-06-18 | Qualcomm Incorporated | Methods and Systems for Locating Items and Determining Item Locations |
US9629774B2 (en) | 2014-01-14 | 2017-04-25 | Toyota Motor Engineering & Manufacturing North America, Inc. | Smart necklace with stereo vision and onboard processing |
FR3019333B1 (fr) | 2014-03-26 | 2016-03-11 | Schneider Electric Ind Sas | Procede de generation d'un contenu en realite augmentee |
EP3132390A1 (en) * | 2014-04-16 | 2017-02-22 | Exxonmobil Upstream Research Company | Methods and systems for providing procedures in real-time |
US9754167B1 (en) * | 2014-04-17 | 2017-09-05 | Leap Motion, Inc. | Safety for wearable virtual reality devices via object detection and tracking |
US9723109B2 (en) | 2014-05-28 | 2017-08-01 | Alexander Hertel | Platform for constructing and consuming realm and object feature clouds |
FR3023948B1 (fr) * | 2014-07-21 | 2017-12-22 | Airbus Operations Sas | Procede d'aide a la maintenance d'un aeronef par realite augmentee. |
US9865089B2 (en) * | 2014-07-25 | 2018-01-09 | Microsoft Technology Licensing, Llc | Virtual reality environment with real world objects |
US10416760B2 (en) * | 2014-07-25 | 2019-09-17 | Microsoft Technology Licensing, Llc | Gaze-based object placement within a virtual reality environment |
US20160140868A1 (en) * | 2014-11-13 | 2016-05-19 | Netapp, Inc. | Techniques for using augmented reality for computer systems maintenance |
JP6540108B2 (ja) * | 2015-03-09 | 2019-07-10 | 富士通株式会社 | 画像生成方法、システム、装置、及び端末 |
US10950051B2 (en) | 2015-03-27 | 2021-03-16 | Rockwell Automation Technologies, Inc. | Systems and methods for presenting an augmented reality |
US20180073889A1 (en) | 2015-04-01 | 2018-03-15 | Snapback S.R.L. | Methods and systems foe electronic device interactions |
US10360729B2 (en) * | 2015-04-06 | 2019-07-23 | Scope Technologies Us Inc. | Methods and apparatus for augmented reality applications |
US10083544B2 (en) * | 2015-07-07 | 2018-09-25 | Google Llc | System for tracking a handheld device in virtual reality |
US10206068B2 (en) | 2015-07-09 | 2019-02-12 | OneMarket Network LLC | Systems and methods to determine a location of a mobile device |
US10037627B2 (en) | 2015-08-14 | 2018-07-31 | Argis Technologies Llc | Augmented visualization system for hidden structures |
US20170053042A1 (en) * | 2015-08-19 | 2017-02-23 | Benjamin John Sugden | Holographic building information update |
US10395116B2 (en) | 2015-10-29 | 2019-08-27 | Hand Held Products, Inc. | Dynamically created and updated indoor positioning map |
EP3171302A1 (en) | 2015-11-18 | 2017-05-24 | F. Hoffmann-La Roche AG | A method for generating an entry for an electronic laboratory journal |
US10489981B2 (en) | 2015-12-10 | 2019-11-26 | Sony Corporation | Information processing device, information processing method, and program for controlling display of a virtual object |
JP6687835B2 (ja) | 2016-02-10 | 2020-04-28 | 株式会社Jvcケンウッド | 移動端末装置およびプログラム |
US10176641B2 (en) | 2016-03-21 | 2019-01-08 | Microsoft Technology Licensing, Llc | Displaying three-dimensional virtual objects based on field of view |
US10198874B2 (en) | 2016-05-13 | 2019-02-05 | Google Llc | Methods and apparatus to align components in virtual reality environments |
US10802147B2 (en) | 2016-05-18 | 2020-10-13 | Google Llc | System and method for concurrent odometry and mapping |
WO2018012206A1 (ja) * | 2016-07-12 | 2018-01-18 | 富士フイルム株式会社 | 画像表示システム、並びにヘッドマウントディスプレイの制御装置とその作動方法および作動プログラム |
US10685489B2 (en) * | 2017-03-02 | 2020-06-16 | Daqri, Llc | System and method for authoring and sharing content in augmented reality |
US10878240B2 (en) | 2017-06-19 | 2020-12-29 | Honeywell International Inc. | Augmented reality user interface on mobile device for presentation of information related to industrial process, control and automation system, or other system |
-
2018
- 2018-07-16 US US16/036,379 patent/US11080931B2/en active Active
- 2018-07-16 US US16/036,358 patent/US10796487B2/en active Active
- 2018-07-16 US US16/036,384 patent/US11062517B2/en active Active
- 2018-08-31 GB GB2212775.7A patent/GB2607819B/en active Active
- 2018-09-25 JP JP2018179420A patent/JP7315313B2/ja active Active
- 2018-09-26 JP JP2020517557A patent/JP7198276B2/ja active Active
- 2018-09-26 DE DE112018004347.9T patent/DE112018004347T5/de active Pending
- 2018-09-26 DE DE112018004395.9T patent/DE112018004395T5/de active Pending
- 2018-09-26 WO PCT/US2018/052894 patent/WO2019067570A1/en active Application Filing
- 2018-09-26 GB GB2004547.2A patent/GB2580825B/en active Active
- 2018-09-26 CN CN201811124251.5A patent/CN109559380A/zh active Pending
- 2018-09-26 CN CN201880063431.9A patent/CN111149133B/zh active Active
- 2018-09-26 WO PCT/US2018/052897 patent/WO2019067573A1/en active Application Filing
- 2018-09-26 GB GB2004546.4A patent/GB2580824B/en active Active
- 2018-09-26 JP JP2020517566A patent/JP7209704B2/ja active Active
- 2018-09-26 CN CN201880063496.3A patent/CN111149134A/zh active Pending
-
2020
- 2020-09-08 US US17/014,294 patent/US11244515B2/en active Active
-
2023
- 2023-07-13 JP JP2023115085A patent/JP2023153815A/ja active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130301875A1 (en) * | 2012-05-11 | 2013-11-14 | Service Solutions U.S. Llc | Augmented reality virtual automotive x-ray having service information |
US20160313902A1 (en) * | 2015-04-27 | 2016-10-27 | David M. Hill | Mixed environment display of attached control elements |
Also Published As
Publication number | Publication date |
---|---|
CN111149133B (zh) | 2023-12-15 |
WO2019067573A1 (en) | 2019-04-04 |
US20190096131A1 (en) | 2019-03-28 |
GB202004546D0 (en) | 2020-05-13 |
JP2019067383A (ja) | 2019-04-25 |
DE112018004347T5 (de) | 2020-05-07 |
CN109559380A (zh) | 2019-04-02 |
US11062517B2 (en) | 2021-07-13 |
GB2607819A (en) | 2022-12-14 |
US11244515B2 (en) | 2022-02-08 |
US11080931B2 (en) | 2021-08-03 |
US20200402320A1 (en) | 2020-12-24 |
GB2580824B (en) | 2022-08-17 |
JP2020535534A (ja) | 2020-12-03 |
GB202212775D0 (en) | 2022-10-19 |
US20190096132A1 (en) | 2019-03-28 |
CN111149134A (zh) | 2020-05-12 |
JP7198276B2 (ja) | 2022-12-28 |
DE112018004395T5 (de) | 2020-05-14 |
WO2019067570A1 (en) | 2019-04-04 |
GB2580824A (en) | 2020-07-29 |
JP7315313B2 (ja) | 2023-07-26 |
GB2580825A (en) | 2020-07-29 |
US20190096133A1 (en) | 2019-03-28 |
JP2020535536A (ja) | 2020-12-03 |
GB2580825B (en) | 2022-09-28 |
JP7209704B2 (ja) | 2023-01-20 |
GB2607819B (en) | 2023-04-12 |
GB202004547D0 (en) | 2020-05-13 |
US10796487B2 (en) | 2020-10-06 |
JP2023153815A (ja) | 2023-10-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111149133B (zh) | 过程控制环境中的虚拟x射线视觉 | |
US11783553B2 (en) | Systems and methods for facilitating creation of a map of a real-world, process control environment | |
US11816887B2 (en) | Quick activation techniques for industrial augmented reality applications | |
JP6307273B2 (ja) | 改良された位置認識機能を有する手持ち式フィールドメンテナンス装置 | |
US11609345B2 (en) | System and method to determine positioning in a virtual coordinate system | |
GB2568138A (en) | 3D Mapping of a process control environment | |
GB2606650A (en) | Drift correction for industrial augmented reality applications | |
KR20170089575A (ko) | 증강 현실을 이용한 물류 관리 시스템 |
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 |