(57)【要約】  拡張現実（ＡＲ）モバイルデバイスのユーザと第１の現実世界オブジェクトとの間の対話を容易にする方法では、ディスプレイデバイスが、デバイスのカメラの視野内のプロセス制御環境の部分上にデジタル情報を重ね合わせられる。重ね合わせられた情報は、環境のマップ内のノードに関連付けられており、ノードは、環境内の他のオブジェクトに対応している。ディスプレイは、第１のオブジェクトへの方向を示させられる。第１のオブジェクトの選択を示すユーザ入力を検出した後に、ディスプレイは、現在視野内にあるプロセス制御環境の一部分上に、第１のオブジェクトのデジタルモデルまたは画像を重ね合わさせられる。ユーザインターフェースは、第１のオブジェクトに関連付けられている１つ以上の仮想制御および／または１つ以上のディスプレイを提供させられる。【特許請求の範囲】
【請求項１】
拡張現実（ＡＲ）モバイルデバイスのユーザとプロセス制御環境内の第１の現実世界オブジェクトとの間の対話を容易にする方法であって、前記方法が、
ＡＲシステムの１つ以上のプロセッサによって、かつ前記ユーザが前記プロセス制御環境を通って移動するときに、前記ＡＲモバイルデバイスのディスプレイに、前記ＡＲモバイルデバイスのカメラの視野内にある前記プロセス制御環境の部分にデジタル情報を重ね合わせさせることであって、前記重ね合わされた情報が、前記プロセス制御環境のマップ内のノードに関連付けられており、前記ノードが、前記プロセス制御環境内の他の現実世界オブジェクトに対応している、重ね合わせさせることと、
前記１つ以上のプロセッサによって、前記ＡＲモバイルデバイスの前記ディスプレイに、前記第１の現実世界オブジェクトが前記カメラの前記視野内にない間に、前記第１の現実世界オブジェクトへの方向を示させることと、
前記ＡＲモバイルデバイスを介して行われ、前記第１の現実世界オブジェクトの選択を示す、ユーザ入力を検出した後に、前記１つ以上のプロセッサによって、前記ＡＲモバイルデバイスの前記ディスプレイに、現在前記カメラの前記視野内にあるが、前記第１の現実世界オブジェクトを含まない前記プロセス制御環境の一部分上に、
前記第１の現実世界オブジェクトのデジタルモデルまたはデジタル画像と、
少なくとも（ｉ）前記第１の現実世界オブジェクトのユーザ制御を提供する１つ以上の仮想制御、ならびに／または（ｉｉ）前記第１の現実世界オブジェクトのステータス、設定、および／もしくは出力に関連付けられている情報を提示する１つ以上のディスプレイを提供するユーザインターフェースと、を重ね合わせさせることと、を含む、方法。
【請求項２】
前記ＡＲモバイルデバイスの前記ディスプレイに、前記第１の現実世界オブジェクトへの前記方向を示させることが、前記第１の現実世界オブジェクトの選択を示す前記ユーザ入力を検出した後に行われる、請求項１に記載の方法。
【請求項３】
前記第１の現実世界オブジェクトの選択を示す前記ユーザ入力が、前記第１の現実世界オブジェクトに対するユーザインターフェースを要求する音声コマンドを含む、請求項２に記載の方法。
【請求項４】
前記ＡＲモバイルデバイスの前記ディスプレイに、前記第１の現実世界オブジェクトへの前記方向を示させることが、
前記プロセス制御環境の前記一部分上に、前記デジタルモデルまたはデジタル画像とともに、前記第１の現実世界オブジェクトの前記方向において指し示す矢印を重ね合わせさせることを含む、請求項２に記載の方法。
【請求項５】
前記ＡＲモバイルデバイスの前記ディスプレイに、前記第１の現実世界オブジェクトへの前記方向を示させることが、前記第１の現実世界オブジェクトの選択を示す前記ユーザ入力を検出する前に行われる、請求項１に記載の方法。
【請求項６】
前記ＡＲモバイルデバイスの前記ディスプレイに、前記第１の現実世界オブジェクトへの前記方向を示させることが、（ｉ）前記第１の現実世界オブジェクトが、前記ＡＲモバイルデバイスの閾値距離内にあること、および（ｉｉ）前記第１の現実世界オブジェクトが、現在前記カメラの前記視野内にないこと、を検出することに応答して行われる、請求項５に記載の方法。
【請求項７】
前記ＡＲモバイルデバイスの前記ディスプレイに、前記プロセス制御環境の前記一部分上に、前記デジタルモデルまたはデジタル画像を重ね合わせさせることが、
ウェブサービスインターフェースを使用して、データベースから前記デジタルモデルまたはデジタル画像を取得することを含む、請求項１に記載の方法。
【請求項８】
前記ＡＲモバイルデバイスの前記ディスプレイに、前記プロセス制御環境の前記一部分上に、前記デジタルモデルまたはデジタル画像および前記ユーザインターフェースを重ね合わせさせることが、
前記デジタルモデルまたはデジタル画像のユーザ選択を検出することに応答して、前記ディスプレイに、前記プロセス制御環境の前記一部分上に、前記ユーザインターフェースを重ね合わせさせることも含む、請求項１に記載の方法。
【請求項９】
拡張現実（ＡＲ）モバイルデバイスのユーザとプロセス制御環境内の第１の現実世界オブジェクトとの間の対話を容易にするためのサーバであって、前記サーバが、
前記ユーザが前記プロセス制御環境を通って移動するときに、前記ＡＲモバイルデバイスのディスプレイに、前記ＡＲモバイルデバイスのカメラの視野内にある前記プロセス制御環境の部分上に、デジタル情報を重ね合わせさせることであって、前記重ね合わされた情報が、前記プロセス制御環境のマップ内のノードに関連付けられており、前記ノードが、前記プロセス制御環境内の他の現実世界オブジェクトに対応している、重ね合わせさせることと、
前記ＡＲモバイルデバイスの前記ディスプレイに、前記第１の現実世界オブジェクトが前記カメラの前記視野内にない間に、前記第１の現実世界オブジェクトへの方向を示させることと、
前記ＡＲモバイルデバイスを介して行われ、前記第１の現実世界オブジェクトの選択を示すユーザ入力を検出した後に、前記ＡＲモバイルデバイスの前記ディスプレイに、現在前記カメラの前記視野内にあるが、前記第１の現実世界オブジェクトを含まない前記プロセス制御環境の一部分上に、
前記第１の現実世界オブジェクトのデジタルモデルまたはデジタル画像と、
少なくとも（ｉ）前記第１の現実世界オブジェクトのユーザ制御を提供する１つ以上の仮想制御、ならびに／または（ｉｉ）前記第１の現実世界オブジェクトのステータス、設定、および／もしくは出力に関連付けられている情報を提示する１つ以上のディスプレイを提供するユーザインターフェースと、を重ね合わせさせることと、を行うように構成されている、サーバ。
【請求項１０】
前記サーバが、前記第１の現実世界オブジェクトの選択を示す前記ユーザ入力を検出した後に、前記ＡＲモバイルデバイスの前記ディスプレイに、前記第１の現実世界オブジェクトへの前記方向を示させるように構成されている、請求項９に記載のサーバ。
【請求項１１】
前記第１の現実世界オブジェクトの選択を示す前記ユーザ入力が、前記第１の現実世界オブジェクトに対するユーザインターフェースを要求する音声コマンドを含む、請求項１０に記載のサーバ。
【請求項１２】
前記サーバが、少なくとも、
前記プロセス制御環境の前記一部分上に、前記デジタルモデルまたはデジタル画像とともに、前記第１の現実世界オブジェクトの前記方向において指し示す矢印を重ね合わせさせることによって、前記ＡＲモバイルデバイスの前記ディスプレイに、前記第１の現実世界オブジェクトへの前記方向を示させるように構成されている、請求項１０に記載のサーバ。
【請求項１３】
前記サーバが、前記第１の現実世界オブジェクトの選択を示す前記ユーザ入力を検出する前に、前記ＡＲモバイルデバイスの前記ディスプレイに、前記第１の現実世界オブジェクトへの前記方向を示させるように構成されている、請求項９に記載のサーバ。
【請求項１４】
前記サーバが、前記ＡＲモバイルデバイスの前記ディスプレイに、（ｉ）前記第１の現実世界オブジェクトが、前記ＡＲモバイルデバイスの閾値距離内にあること、および（ｉｉ）前記第１の現実世界オブジェクトが、現在前記カメラの前記視野内にないことを検出することに応答して、前記第１の現実世界オブジェクトへの前記方向を示させるように構成されている、請求項１３に記載のサーバ。
【請求項１５】
前記サーバが、少なくとも、
ウェブサービスインターフェースを使用して、データベースから前記デジタルモデルまたはデジタル画像を取得することによって、前記ＡＲモバイルデバイスの前記ディスプレイに、前記プロセス制御環境の前記一部分に、前記デジタルモデルまたはデジタル画像を重ね合わせさせるように構成されている、請求項９に記載のサーバ。
【請求項１６】
前記サーバが、少なくとも、
前記デジタルモデルまたはデジタル画像のユーザ選択を検出することに応答して、前記ディスプレイに、前記プロセス制御環境の前記一部分上に、前記ユーザインターフェースを重ね合わせさせることにもよって、前記ＡＲモバイルデバイスの前記ディスプレイに、前記プロセス制御環境の前記一部分上に、前記デジタルモデルまたはデジタル画像および前記ユーザインターフェースを重ね合わせさせるように構成されている、請求項９に記載のサーバ。
【請求項１７】
ユーザとプロセス制御環境内の第１の現実世界オブジェクトとの間の対話を容易にするための拡張現実（ＡＲ）モバイルデバイスであって、前記ＡＲモバイルデバイスが、カメラおよびディスプレイを含み、前記ＡＲモバイルデバイスが、
前記ユーザが前記プロセス制御環境を通って移動するときに、かつ前記ディスプレイを介して、前記カメラの視野内にある前記プロセス制御環境の部分上にデジタル情報を重ね合わせることであって、前記重ね合わされた情報が、前記プロセス制御環境のマップ内のノードに関連付けられており、前記ノードが、前記プロセス制御環境内の他の現実世界オブジェクトに対応している、重ね合わせることと、
前記ディスプレイを介して、前記第１の現実世界オブジェクトが前記カメラの前記視野内にない間に、前記第１の現実世界オブジェクトへの方向を示すことと、
前記ＡＲモバイルデバイスを介して行われ、前記第１の現実世界オブジェクトの選択を示すユーザ入力を検出した後に、現在前記カメラの前記視野内にあるが、前記第１の現実世界オブジェクトを含まない前記プロセス制御環境の一部分上に、かつ前記ディスプレイを介して、
前記第１の現実世界オブジェクトのデジタルモデルまたはデジタル画像と、
少なくとも（ｉ）前記第１の現実世界オブジェクトのユーザ制御を提供する１つ以上の仮想制御、ならびに／または（ｉｉ）前記第１の現実世界オブジェクトのステータス、設定、および／もしくは出力に関連付けられている情報を提示する１つ以上のディスプレイを提供するユーザインターフェースと、を重ね合わせさせることと、を行うように構成されている、サーバ。
【請求項１８】
前記ＡＲモバイルデバイスが、前記第１の現実世界オブジェクトの選択を示す前記ユーザ入力を検出した後に、前記ディスプレイを介して、前記第１の現実世界オブジェクトへの前記方向を示すように構成されている、請求項１７に記載のＡＲモバイルデバイス。
【請求項１９】
前記ＡＲモバイルデバイスが、少なくとも、
前記プロセス制御環境の前記部分上に、前記デジタルモデルまたはデジタル画像とともに、前記第１の現実世界オブジェクト内の前記方向において指し示す矢印を重ね合わせさせることによって、前記ディスプレイを介して、前記第１の現実世界オブジェクトへの前記方向を示すように構成されている、請求項１７に記載のＡＲモバイルデバイス。
【請求項２０】
前記ＡＲモバイルデバイスが、（ｉ）前記第１の現実世界オブジェクトが、前記ＡＲモバイルデバイスの閾値距離内にあること、および（ｉｉ）前記第１の現実世界オブジェクトが、現在前記カメラの前記視野内にないことを検出することに応答して、前記第１の現実世界オブジェクトへの前記方向を示すように構成されている、請求項１７に記載のＡＲモバイルデバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本明細書は、２０１７年９月２７日に出願され、「Ａｕｇｍｅｎｔｅｄ  Ｒｅａｌｉｔｙ  Ｐｌａｔｆｏｒｍ」と題された米国仮特許出願第６２／５６４，０７４号の利益を主張するものであり、その開示は、参照によりその全体が本明細書に組み込まれる。
【０００２】
本開示は、概して、拡張現実技術に関し、より詳細には、プロセス制御または他の環境で利用され得る拡張現実プラットフォームに関する。
【背景技術】
【０００３】
現実世界環境でのデジタル情報（例えば、テキスト、画像、アニメーションなど）のオーバーレイを提供する拡張現実（ＡＲ）システムは、この技術の新しい用途が検討されるにつれてますます一般的になりつつある。ＡＲシステムは、典型的に、ユーザの現在の現実世界環境のコンテキストに固有の情報を提供する。このようなシステムでは、現在ユーザのビューにある物理的な物の知識、およびユーザの現在位置およびその周辺の物理的なレイアウトなど、現実世界の知識が一般的に必要である。この種の情報をＡＲシステムに利用可能にするために、ユーザの環境およびその中のオブジェクトを表現する３次元（３Ｄ）デジタルモデルが、典型的に作成される。次いで、３Ｄモデルは、環境内の特定の位置および／または特定のオブジェクトに関連する特定の種類のデータ（例えば、記述）、グラフィック（例えば、アイコン）などを用いて拡張され得る。適切なＡＲギヤを装備したユーザがマッピングされた環境を通って移動するとき、拡張部分は、ユーザの現実世界ビュー（例えば、リアルタイムカメラビュー、またはユーザが環境を観察するヘッドアップディスプレイ（ＨＵＤ）など）にデジタル情報をオーバーレイすることによって、３Ｄモデルの残りの部分をレンダリング／表示することなく、ユーザにレンダリング／表示され得る。
【０００４】
従来、この種の３Ｄモデルは、人間の設計者によって、および／または３Ｄスキャナを使用して、手動で構築されている。しかしながら、これらのアプローチの両方は、複雑なレイアウトおよび／または多数のオブジェクトを有する環境を含むアプリケーションにとって多くの時間および労力を要し得る。さらに、環境へのなんらかの変更（例えば、オブジェクトが環境内で移動もしくは置換／更新されることなど）は、モデリングプロセス全体が繰り返されること、または他の時間および労力を要する手順を必要とし得る。
【０００５】
現在のＡＲシステムは、他の欠点も被ることがある。例えば、比較的密度の高い環境（例えば、近接している、および／またはＡＲビューに表示する多くの情報量を有する複数のオブジェクトを有する環境）で使用される場合、ＡＲシステムは、容易に知覚過負荷をもたらし得る膨大な量の情報をユーザに与えることがあり、かつ／またはユーザは全ての情報のコンテキストを容易に知覚できないことがある。さらに、いくつかのオブジェクトは、ＡＲビュー内で不明瞭になることがある。例えば、オブジェクトは囲い内に位置していることがあり、またはアクセス不能もしくは不都合な（例えば遠隔の）位置に存在していることがある。
【発明の概要】
【０００６】
拡張現実体験を提供するための技術、システム、装置、および方法が本明細書で開示される。当該技術、システム、装置、および方法は、例えば、工業プロセス制御システム、環境、および／またはプラントに適用してよく、これらは、本明細書では、同義で「プロセス制御」、または「プロセス」システム、環境、および／もしくはプラントと称され得る。典型的には、このようなシステムおよびプラントは、分散された方法で、未加工の物理的物質を製造、精製、または別の方法で変形するように動作して、生産物を生成または生産する１つ以上のプロセスの制御を提供する。しかしながら、いくつかの実施形態では、本明細書に記載される技術、システム、装置、および方法は、他の種類の環境で使用され、かつ／または拡張現実以外のコンテキスト（例えば、仮想現実（ＶＲ）コンテキスト）で使用され得る。
【０００７】
一般に、プロセス制御環境は、従来の拡張現実感（ＡＲ）システムまたはプラットフォームの生成および使用に関連付けられている「背景技術」のセクションで上述された、様々な多くの困難を引き起こす可能性がある。例えば、このような環境は、近接し、かつ／または大量の情報（例えば、センサの読み取り値、診断ステータスなど）に関連付けられている多数の多様なオブジェクト（例えば、タンク、ポンプ、バルブ、モータ、送信機など）を含む場合が多い。さらに、それらのオブジェクトは、頻繁に移動または置換され得る。
【０００８】
本明細書に記載されるＡＲプラットフォームは、これらの困難のいくつかまたは全てを克服または改善することができ、したがって、プロセス制御環境での使用によく適し得る。ＡＲプラットフォームでは、３次元（３Ｄ）モデルがＡＲモバイルデバイスを使用するユーザによって生成される。ＡＲモバイルデバイスは、ＡＲヘルメット、ＡＲヘッドセット、ＡＲゴーグル、スマートメガネ、スマートフォン、タブレット、または（以下に記載されるような）位置追跡をサポートすることができる任意の他の好適な種類のモバイルデバイスであってもよく、ユーザにＡＲ体験を提示することができる。
【０００９】
３Ｄモデルは、異なる現実世界オブジェクト（例えば、フィールドデバイス、タンク、コンベア、コントローラ、スイッチなど）に対応する、プロセス制御環境内の関心のあるポイントの３Ｄ位置（ｌｏｃａｔｉｏｎ）／位置（ｐｏｓｉｔｉｏｎ）を示す。３Ｄモデルに追加されるオブジェクトは、本明細書では、ＡＲプラットフォームまたはシステムの「ノード」と称される。本明細書で使用されるように、用語「オブジェクト」（「現実世界オブジェクト」とも称される）は、任意の物理的な物（例えば、デバイス、構成要素、設備、構造など）、物の一部分（例えば、デバイスもしくは構成要素の要素など）、または物の組み合わせ（例えば、関連するデバイスもしくは構成要素のグループなど）であってもよい。プロセス制御環境では、例えば、オブジェクトは、フィールドデバイス（例えば、バルブ、ポンプ、センサなど）、設備の一部（例えば、コンベヤ、タンクなど）、プロセスコントローラ、スイッチなどであってもよい。
【００１０】
いくつかの実装形態では、ＡＲアプリケーションがＡＲモバイルデバイス上で起動されると（例えば、ユーザによって具体的に起動されるときに、またはデバイスの電源投入時に）、ユーザは、「チェックイン」するか、またはいくつかの基準もしくは「ランドマーク」位置にＡＲモバイルデバイスを登録する。例えば、ユーザは、ＡＲモバイルデバイスのカメラを用いてランドマーク位置でＱＲコードまたはコード／識別子の別の視覚的表現をスキャンしてもよい。コードをスキャンする行為は、ユーザ／デバイスの開始位置（例えば、｛ｘ、ｙ、ｚ｝空間内の座標｛０、０、０｝）を確立し得る。
【００１１】
登録後、ユーザは、ＡＲモバイルデバイスを用いてプロセス制御環境を通って物理的に移動し始めてもよい。（例えば、ユーザのＡＲモバイルデバイスによって提供される）好適な位置決め技術を使用して、プロセスプラントを通るユーザの移動を追跡してもよい。ＧＰＳまたはＧＮＳＳユニットは、多くのプロセスプラント環境で機能しない可能性があり、配向データまたは正確な標高データを提供することができない（特に屋内にあるプロセス制御環境の場合）ため、他の位置決めおよび／または配向技術が使用されてもよい。例えば、ランドマークの位置に対するＡＲモバイルデバイスの位置、およびＡＲモバイルデバイスの配向（例えば、ユーザが向いている方向に対応し得る、ＡＲモバイルデバイスのカメラの視野の方向）は、慣性測定ユニット（ＩＭＵ）データ（例えば、加速度計、ジャイロスコープなどによって生成される）とカメラ画像データとの融合を使用して追跡されてもよい。一実装形態では、例えば、Ｑｕａｌｃｏｍｍ（登録商標）によって開発された視覚慣性オドメトリ（ＶＩＯ）技術を使用して、位置および配向を追跡してもよい。
【００１２】
ノードとして追加される現実世界オブジェクトに、またはその近くに到達するとき、およびオブジェクトの方向を向いている（例えば、ＡＲヘルメットもしくはゴーグルを装着している場合）か、または別の方法でオブジェクトにデバイスカメラを向けている（例えば、デバイスがタブレットもしくはスマートフォンである場合）間、ユーザは新しいノードを追加するためのオプションを選択してもよい。例えば、ＡＲモバイルデバイスは、ユーザによって発声されたときに「ノードを追加してください」という音声コマンドを認識してもよく、または（例えば、デバイスがタブレットもしくはスマートフォンである場合）ＡＲモバイルデバイスは、ユーザに「ノードを追加してください」もしくはＡＲモバイルデバイスディスプレイのグラフィックユーザインターフェース（ＧＵＩ）上の同様のオプション／制御を選択することを可能にし得る。次いで、ＡＲモバイルデバイスは、オブジェクトの画像を捕捉し、画像を処理して、ＡＲモバイルデバイスとオブジェクトとの間の距離を推定してもよい。あるいは、他のセンサ（例えば、ライダ、レーダなど）を使用して、ＡＲモバイルデバイスとオブジェクトとの間の距離を判定してもよい。次いで、ＡＲモバイルデバイスは、ＡＲモバイルデバイスの現在位置および配向、ならびにＡＲモバイルデバイスとオブジェクトとの間の距離に基づいて、ランドマーク位置に対するオブジェクトの位置を判定してもよい。あるいは、リモートサーバまたは他のコンピューティングデバイス／システムは、ＡＲモバイルデバイスによって捕捉された画像データを処理して、ランドマーク位置に対するオブジェクト位置を判定してもよい。
【００１３】
ユーザはまた、新しいノード（例えば、バルブ、ポンプなど）の名前もしくは種類、および／または他の情報（例えば、オブジェクトのモデル番号もしくは他の識別子、オブジェクトの短い記述など）も指定してもよい。次いで、指定された情報は、ＡＲシステムのバックエンドデータベースの新しいノードに関連付けられてもよい。バックエンドデータベースは、ランドマーク位置に対して関連する３Ｄ位置を有するユーザ（および場合によっては他のユーザ）によって追加されたノードのライブラリを含み、プロセス制御環境内でオブジェクト／アセットの仮想の３Ｄ「マップ」を集合的に確立してもよい。データベースはまた、例えば、関連するかつ／または接続されたノードのリストなどの他のノード情報も記憶してもよい。
【００１４】
特定のプロセス制御環境内の少なくとも１つの関心のあるオブジェクトがマッピングされた後（すなわち、ＡＲモバイルデバイスを使用してノードライブラリに追加された後）に、自身のＡＲモバイルデバイスをランドマーク位置に登録する任意のユーザ（マッピングユーザ（複数可）を含む）は、プロセス制御環境の拡張ツアーを行ってもよい。登録されたＡＲモバイルデバイスを有するユーザが、ＡＲモバイルデバイスのカメラの視野を特定の現実世界オブジェクトを含むエリアに向けて方向付けるときに（例えば、ユーザがＡＲヘルメットまたはゴーグルを着用しながらエリアを見る場合）、およびオブジェクトがすでにノードライブラリ内のノードに関連付けられている場合、ＡＲモバイルデバイスは、ユーザの現実世界ビュー内のオブジェクトの座標に、またはその近くに位置しているかのようにユーザに出現する、ノード「マーカ」（例えば、テキスト、アイコン、グラフィックなど）を用いてユーザによって観察される現実世界シーンを拡張することができる。
【００１５】
ユーザが（例えば、ノードマーカに集中すること、または音声コマンドを発することなどによって）特定のノードを選択した場合、ＡＲモバイルデバイスは、１つ以上の「ノード体験」をユーザに利用可能にし得る。例えば、１つのノード体験は、ユーザの現現実世界ビューにテキスト（ノード名、記述など）、表、および／またはグラフィック／アイコンを重ね合わせてもよい。他のノード体験は、特定のＵＲＬ（例えば、教示もしくは「ヘルプ」ビデオ）からのウェブコンテンツを重ね合わせてもよく、または、例えば、他のオブジェクト／ノードへの物理的もしくは論理的接続の視覚化および／もしくはそれらとの関係を重ね合わせてもよい。さらに他のノード体験は、オブジェクト／ノードに関連付けられている作業指示を取得すること、遠隔位置にあるユーザと適切な専門家との間の通信リンクを確立することなどを含み得る。いくつかの実装形態では、少なくとも１つのノード体験が、ユーザによって観察されているオブジェクトの特定のコンテキストにおいて、１つ以上の他のソフトウェアアプリケーションまたはシステムを起動（またはそれにリンク）する。例えば、ＡＲモバイルデバイスは、視野内の選択されたオブジェクト／ノード（例えば、フィールドデバイス）のセンサデータ、ステータス、および／または仮想制御を重ね合わせてもよく、データは、異なるアプリケーションから受信される（かつ制御へのユーザ入力は異なるアプリケーションに送信される）。
【００１６】
所与のノードについてユーザに利用可能な体験、特定のノード体験内に提示されるコンテンツの種類、および／またはいくつかの実装形態では、任意の拡張情報が所与のノードについて特定のユーザに利用可能かどうかが、ユーザの「役割」に少なくとも部分的に基づいて判定されてもよい。例えば、特定のユーザは、ＡＲモバイルデバイスを使用して、「オペレータ」役割、「保守者」役割もしくは「技術者」役割を選択してもよく、またはそのような役割に予め割り当てられてもよい。
【００１７】
ユーザに、他の多くの機能も提供され得る。いくつかの実装形態では、例えば、ユーザの現実世界ビューに重ね合わされたときに、あたかもユーザが囲い内（例えば、キャビネット内）に隠されたオブジェクトまたは障壁の背後にあるオブジェクトを見ているかのように出現し得、超現実的または疑似現実的な３Ｄモデルの視覚化を作成することによって、仮想「Ｘ線視覚」をユーザに提供し得る。ＡＲモバイルデバイスはまた、隠されたオブジェクトに関連付けられているステータスデータまたはアラートを視認すること、隠されたオブジェクトの動作を制御する音声コマンドを発することなどの、隠されたオブジェクトに関連付けられている特定のノード体験を用いてユーザに提示してもよい（かつ／またはユーザに選択することを可能にしてもよい）。
【００１８】
別の例として、ＡＲモバイルデバイスは、アクセス制限されたおよび／または遠隔のオブジェクト／ノードの「アバター」をユーザの現実世界ビューに重ね合わせてもよい。オブジェクトは、例えば、高いタワーの頂部、または有毒なもしくは高電圧のエリアなどに存在し得る。隠されたオブジェクトと同様に、ユーザには、アクセス制限されたおよび／または遠隔のオブジェクトとの様々な種類の対話を提供する、特定のノード体験が提供され得る。隠されたオブジェクト（「Ｘ線視覚」）とアクセス制限された／遠隔のオブジェクト実装／シナリオとの両方において、ユーザは、オブジェクト／ノードを正面に置くことに非常に類似している、かつユーザがオブジェクトと対話している間にユーザにはっきりと視認可能である全体的な体験を提供され得る。
【００１９】
他の種類の機能もまた、ＡＲプラットフォームによってサポートされ得る。例えば、ユーザの現在の位置は、様々なアラート（例えば、ユーザが危険なエリアにいるという警告）および／または他の情報の表示をトリガしてもよい。別の例として、プロセスプラント内のユーザの現在および／または過去の３Ｄ位置は、緊急事態における従業員の避難の確保、従業員が負傷していないか、あるいは医学的支援の必要がないことの確保、または特定の従業員の訓練を監視することなどの、様々な目的のために追跡／記録され得る。
【００２０】
上述されて以下でさらに説明されるＡＲプラットフォームは、特定の実装形態に応じていくつかの利点を提供し得る。例えば、特定のオブジェクトの相対的な３Ｄ位置のみをマッピングすることによって、３Ｄモデルは、従来の手段（例えば、３Ｄスキャナを使用して環境をマッピングすること）よりも容易かつ効率的に生成されてもよい。同様に、プロセス制御環境内のオブジェクトの更新または再構成は、より迅速かつ容易に実施されてもよい。さらに、本明細書に記載されるマッピングプロセスを使用することによって、かつ本明細書に記載されるようにＡＲモバイルデバイス／ユーザの移動を追跡することによって、ＡＲプラットフォームは、費用および／もしくはレトロフィットの時間を必要とせずに、または別の方法で短距離通信技術（例えば、Ｂｌｕｅｔｏｏｔｈもしくは近距離通信（ＮＦＣ）ユニット）を有するオブジェクトを装備することなく、かつ環境をナビゲートするユーザによる時間を要する行為（例えば、オブジェクト上のＱＲコードのスキャン、オブジェクト識別子の手動データ入力、物理的なオブジェクトへの接続など）を必要とすることなく、いつユーザに拡張情報を提供すべきかを判定することができる。したがって、特にプロセス制御環境におけるＡＲシステムの展開に対する従来の障壁は、軽減または除去され得る。
【００２１】
別の例として、ＡＲプラットフォームは一般に、第三者が、オブジェクト／ノードとの異なるユーザ対話に対応する新しい、カスタマイズされた種類もしくはクラスの「ノード体験」を提案することができ、かつ／または既存のノード体験の新しいコンテンツを提案することができる、マーケットプレースを提供し得る。計装ベンダーまたは他の団体は、例えば、特定のオブジェクトに対する「ヘルプ」情報、またはＡＲもしくはビデオベースの作業命令の購読を提案し得る。いくつかの実施形態では、仮想「アプリストア」により、顧客は様々なアプリケーションのライセンスを取得し、かつ／または顧客のモバイル作業力に望ましい特定の種類のコンテンツを購読することができる。
【００２２】
さらに、不明瞭で、遠隔かつ／またはアクセス制限されたノードに対する拡張情報の表示／視認を容易にする機能は、ユーザの時間（引いては費用）を節約することができ、いくつかの実装形態および／またはシナリオでは、危険なエリアを訪問する必要を回避することによって作業者の安全を向上させることができる。
【００２３】
またさらに、ＡＲプラットフォームアーキテクチャは、柔軟性が高くてもよい。ＡＲプラットフォームは、例えば、スマートヘルメット、スマートゴーグル、スマートフォン、タブレットなどの様々な異なるプラットフォーム上のユーザへの関連情報の表示を容易にし得る。ＡＲプラットフォームはまた、多数の他のソフトウェアアプリケーション（例えば、制御論理を示すデータ、デバイス読み取り値を取得することができるプロセス制御ソフトウェアなど）との対話性、および／または新しい体験、コンテンツ、もしくは簡単に提供されるべき他の機能を容易にし得る。
【００２４】
上述されたように、本明細書に記載される特定の実装形態および／もしくは特徴は、ＡＲシステムで使用される必要はなく、かつ／またはプロセス制御環境で使用される必要はない。例えば、スマートフォン、タブレットまたは他のモバイルデバイスを有するユーザには、プラント内のオブジェクトのマッピングされた３Ｄ位置ならびにユーザの現在の位置および配向に基づく「ノード体験」が、ＡＲ表示として必ずしも提供される必要なく、（例えば、バーチャルリアリティディスプレイまたは単にＧＵＩを使用して）表現され得る。別の例として、本明細書に記載される技術は、オフィス空間、倉庫、病院などのプロセス制御環境以外の環境に適用されてもよい。
【図面の簡単な説明】
【００２５】
【図１】本明細書に記載される様々な方法、技術、機能、および／または特徴をサポートし得るＡＲプラットフォームを提供する例示的な拡張現実（ＡＲ）システムを描画するブロック図である。
【図２】図１のＡＲシステムが利用され得る例示的なプロセス制御環境の構成要素を描画するブロック図である。
【図３】プロセス制御環境における例示的なノードの３次元（３Ｄ）マップを描画する。
【図４Ａ】ＡＲモバイルデバイスによって提供される視野の上に重ね合わされ得る例示的なユーザインターフェースを描画する。
【図４Ｂ】ＡＲモバイルデバイスによって提供される視野の上に重ね合わされ得る例示的なユーザインターフェースを描画する。
【図４Ｃ】ＡＲモバイルデバイスによって提供される視野の上に重ね合わされ得る例示的なユーザインターフェースを描画する。
【図４Ｄ】ＡＲモバイルデバイスによって提供される視野の上に重ね合わされ得る例示的なユーザインターフェースを描画する。
【図４Ｅ】ＡＲモバイルデバイスによって提供される視野の上に重ね合わされ得る例示的なユーザインターフェースを描画する。
【図４Ｆ】ＡＲモバイルデバイスによって提供される視野の上に重ね合わされ得る例示的なユーザインターフェースを描画する。
【図４Ｇ】ＡＲモバイルデバイスによって提供される視野の上に重ね合わされ得る例示的なユーザインターフェースを描画する。
【図４Ｈ】ＡＲモバイルデバイスによって提供される視野の上に重ね合わされ得る例示的なユーザインターフェースを描画する。
【図５Ａ】ＡＲプラットフォームで使用され得る例示的なデータベースの要素を描画する。
【図５Ｂ】ＡＲプラットフォームで使用され得る例示的なデータベースの要素を描画する。
【図６】ＡＲモバイルデバイスのユーザが仮想Ｘ線視覚を提供される例示的な実施形態およびシナリオを描画する。
【図７Ａ】ユーザと、ユーザから遠くにある、またはそうでなければアクセスすることが困難なオブジェクトとの間の仮想近接を提供するために、ＡＲモバイルデバイスによって提供される視野の上に重ね合わされ得る例示的なユーザインターフェースを描画する。
【図７Ｂ】ユーザと、ユーザから遠くにある、またはそうでなければアクセスすることが困難なオブジェクトとの間の仮想近接を提供するために、ＡＲモバイルデバイスによって提供される視野の上に重ね合わされ得る例示的なユーザインターフェースを描画する。
【図８】モバイルデバイスを使用して現実世界のプロセス制御環境をマッピングするための例示的な方法のフロー図である。
【図９】現実世界のプロセス制御環境において、ＡＲモバイルデバイスのユーザに仮想強化視覚を提供するための例示的な方法のフロー図である。
【図１０】ＡＲモバイルデバイスのユーザと、プロセス制御環境の遠隔またはアクセス制限されたエリアに存在し得る、現実世界オブジェクトとの間の対話を容易にするための例示的な方法のフロー図である。
【発明を実施するための形態】
【００２６】
拡張現実システムの例
図１は、環境（例えば、プロセス制御環境）においてＡＲ体験を提供するためのＡＲプラットフォームを一般に提供し得る拡張現実（ＡＲ）システム１０の例を描画する。ＡＲシステム１０は、ユーザのＡＲモバイルデバイス１２と、ネットワーク１６を介してＡＲモバイルデバイス１２に通信可能に結合され得るバックエンドサーバ１４と、を含む。ＡＲモバイルデバイス１２は、好適な処理および検知機能を有し、着用可能であるか、または別の方法でユーザが携帯することができる任意のコンピューティングデバイスであってもよい。例えば、ＡＲモバイルデバイス１２は、ＡＲヘルメット（例えば、ＤＡＱＲＩ（登録商標）によって開発されたＳｍａｒｔ  Ｈｅｌｍｅｔ（登録商標））またはＡＲゴーグルなど、ＡＲ専用に構成されたデバイスであってもよい。あるいは、ＡＲモバイルデバイス１２は、非ＡＲアプリケーション（例えば、タブレット、スマートフォン、スマートグラス、スマートウォッチなど）も有するが、デバイス１２をＡＲ機能を有するように構成するソフトウェアアプリケーションを実行するデバイスであってもよい。図１は、１つのＡＲモバイルデバイス１２のみを描画しているが、ＡＲモバイルデバイス１２と同一またはそれとは異なるより多数のＡＲモバイルデバイスがＡＲシステム１０において同様の方法で使用され得ることが理解される。
【００２７】
ＡＲモバイルデバイス１２は、一般に、コンテキスト情報（例えば、テキスト、グラフィック、アニメーションなど）でユーザの現実世界ビューを拡張することによって、ＡＲ体験をユーザに提供するように構成されている。バックエンドサーバ１４は、一般に、ユーザの現実世界ビューが特定の状況においてどのように拡張されるべきかを指定するデータを管理することによって、ＡＲデバイスおよび／またはユーザの現在の状態および／または環境を示すＡＲモバイルデバイスからデータを受信することによって、かつ必要に応じてＡＲモバイルデバイスにデータを提供することによって、ユーザおよび他のＡＲモバイルデバイスのユーザのためのＡＲ体験をサポートする。
【００２８】
ネットワーク１６は、１つ以上の無線ネットワーク、および場合によっては１つ以上の有線ネットワークも含む。図１の実施形態の例では、ＡＲシステム１０のＡＲプラットフォームは、クラウドベースのアーキテクチャを利用し、ネットワーク１６はインターネットを含む。ＡＲシステム１０が屋内で利用される場合、ネットワーク１６はまた、ＩＥＥＥ８０２．１１または「ＷｉＦｉ」ネットワークなどの遠隔のタワーまたは基地局との、いかなる直接通信をも必要としない無線ネットワークも含み得る。しかしながら、他の実施形態では、ネットワーク１６は、セルラーネットワーク（例えば、ＬＴＥ、ＧＳＭなど）を含む。以下でさらに説明されるように、ＡＲシステム１０はまた、バックエンドサーバ１４および／またはＡＲモバイルデバイス１２に通信可能に結合され、１つ以上のアプリケーション１９を集合的に記憶および実行する１つ以上の他のサーバ１８も含み得る。
【００２９】
図１の例示的な実施形態に見られるように、ＡＲモバイルデバイス１２は、ネットワークインターフェース２０と、ディスプレイ２２と、カメラ２４と、慣性測定ユニット（ＩＭＵ）２６と、ＡＲアプリケーション３２を記憶するメモリ３０と、を含み得る。ネットワークインターフェース２０は、ネットワーク１６の少なくとも一部分の無線通信プロトコル（例えば、ＷｉＦｉまたはセルラーネットワーク）を使用して、バックエンドサーバ１４を含むリモートコンピューティングデバイスおよびシステムとの通信を可能にするように構成されている。
【００３０】
ディスプレイ２２は、任意の好適な種類のデジタル表示技術に従って構成されたハードウェアならびに関連するファームウェアおよび／またはソフトウェアを含み得る。例えば、ディスプレイ２２は、液晶ディスプレイ（ＬＣＤ）技術、発光ダイオード（ＬＥＤ）技術、有機発光ダイオード（ＯＬＥＤ）技術などを使用してもよい。ディスプレイ２２は、一般に、透明もしくは半透明であってよく、または不透明であってもよい。ディスプレイ２２の構造またはフォームファクタ、およびディスプレイが透明／半透明または不透明であるかどうかは、一般に、ＡＲモバイルデバイス１２の種類によって異なる。例えば、ＡＲモバイルデバイス１２がヘルメットである場合、ディスプレイ２２はバイザーの形態を有してもよく、ディスプレイ２２によって表示される任意の情報が、ユーザの直接的な現実世界ビュー（すなわち、「ヘッドアップディスプレイ」または「ＨＵＤ」）に重ね合わされるように、半透明であってもよい。反対に、ＡＲモバイルデバイス１２がタブレットまたはスマートフォンである場合、ディスプレイ２２は、従来の矩形フォームファクタを有してもよく、現実世界の間接的なビュー（例えば、カメラ２４によって捕捉されたものなど）のみを可能にし得る。
【００３１】
カメラ２４は、例えば、電荷結合素子（ＣＣＤ）画像センサなどの任意の好適な種類の光学センサであってもよい。代替の実施形態では、カメラ２４は、例えば、光検出および測距（ライダ）センサもしくはレーダセンサなどの異なる種類の撮像デバイスの代わりであるか、またはそれらも含む。ＩＭＵ２６は、３次元でＡＲモバイルデバイス１２の移動を示すデータを生成する、１つ以上のセンサ（例えば、加速度計および／またはジャイロスコープ）を含み得る。図１には示されていないが、ＡＲモバイルデバイスはまた、マイクロフォンおよび／またはスピーカなどの他の構成要素を有してもよい。
【００３２】
ＡＲアプリケーション３２を記憶するメモリ３０は、例えば、ソリッドステートまたはハードドライブ形式の読み出し専用メモリ（ＲＯＭ）などの任意の好適な種類の永続メモリであってもよい。ＡＲアプリケーション３２は、一般に、例えば、ディスプレイ２２上に適切な拡張情報を生成し、必要に応じてバックエンドサーバ１４と通信することによって、ＡＲモバイルデバイス１２のユーザのためのＡＲ体験を調整する。図１は、役割識別モジュール４０と、登録モジュール４２と、位置決めおよび配向モジュール４４と、ノード体験モジュール４６と、ノード作成モジュール４８と、視覚強化モジュール５０と、位置ベースアラートモジュール５２と、を含む、ＡＲアプリケーション３２によって実施または提供され得る機能または特徴の例に対応するモジュールのセットを描画する。モジュール４０〜５２の各々は、ＡＲシステム１０の動作に関連して以下でさらに説明される。いくつかの実施形態では、ＡＲアプリケーション３２は、図１に示されたモジュールよりも少なく、より多く、および／またはそれらとは異なるモジュールを含む。例えば、ＡＲアプリケーション３２は、ユーザ音声コマンドを認識するための音声認識モジュールを含み得る。
【００３３】
図１の例示的な実施形態ではまた、バックエンドサーバ１４は、ウェブサービスインターフェース６０と、体験プロビジョニングユニット６２と、３Ｄモデル生成ユニット６４と、視覚強化ユニット６６と、アラート生成ユニット６８と、ユーザ監視ユニット７０と、を含む一般に、ウェブサービスインターフェース６０は、バックエンドサーバ１４に結合された（またはその内部に含まれる）ＡＲデータベース７２にオブジェクト指向のウェブベースインターフェースを提供し得る。いくつかの実施形態では、ウェブサービスインターフェース６０は、ＡＲモバイルデバイス１２などのリモートデバイスにアプリケーションプログラミングインターフェース（ＡＰＩ）を提供する。
【００３４】
ＡＲデータベース７２は、一般に、特定の環境の３Ｄマップを定義する情報を（例えば、ノード識別子、ランドマークに対する３Ｄマップ内のノードの位置、およびおそらくはノードに関連付けられている他の情報を記憶することによって）記憶し、図５Ａおよび図５Ｂに関連して（ある特定の実施形態により）以下にさらに詳細に説明される。ＡＲデータベース７２は、単一のデータベースまたはデータベースの集合であってもよく、単一の物理メモリに記憶されてよく、または１つ以上の地理的位置にある複数のメモリにわたって分散されてもよい。要素／ユニット６０〜７０のうちの１つ、いくつか、または全ては、永続メモリ（例えば、ＲＯＭ）に記憶されたソフトウェア命令として実装されてもよい。他の実施形態では、バックエンドサーバ１４は、図１に示されているものよりも少ない、より多い、および／またはそれらとは異なる要素／ユニットを含む。
【００３５】
動作中、ＡＲモバイルデバイス１２を着用しているか、または別の方法で携帯しているユーザは、ＡＲモバイルデバイス１２にＡＲアプリケーション３２を起動させてもよい。ＡＲアプリケーション３２は、例えば、ディスプレイ２２上のアイコンを手動で選択すること、音声コマンドを発すること、または単にＡＲモバイルデバイス１２を電源投入することによって起動されてもよい。
【００３６】
いくつかの実施形態では、ＡＲアプリケーション３２の役割識別モジュール４０は、最初に（例えば、起動時に）、ユーザのジョブ位置に対応し得る、かつ／または特定のタスク（複数可）もしくはユーザが、例えば、ＡＲシステム１０を使用することによって達成しようとしているタスクに対応し得る特定の「役割」を示すように促す。他の実施形態では、ユーザは、後の時点で（例えば、以下に記載されるようにランドマークに登録した後に）、自身の役割を示すように最初に促される。役割識別モジュール４０が、ディスプレイ２２上にまたはディスプレイ２２を通じて（例えば、カメラ２４によって捕捉された画像フレームの上で、またはユーザの直接的な現実世界ビューの上で）見られる現実世界ビューに重ね合わせることができるユーザインターフェースの一例が、図４Ａに関連して以下に説明される。代替の実施形態では、役割識別モジュール４０は、役割を選択するようにユーザに促すのではなく、代わりに、ユーザによって入力または発声されるＡＲモバイルデバイス１２の識別子および／または識別情報（例えば、名前、従業員番号など）に基づいて、ユーザの事前に割り当てられた役割を判定する。
【００３７】
選択されるかまたは割り当てられたユーザ役割は、以下でさらに説明されるように、ユーザに提供されるＡＲ体験の様々な側面を調整することができる。実施形態に応じて、ユーザ役割は、選択されるかもしくは割り当てられたときに固定されてもよく、またはユーザが環境を通って移動するときにユーザによってその場で変更されてもよい。いくつかの実施形態では、役割識別モジュール４０は、ＡＲアプリケーション３２に含まれず、ＡＲシステム１０内でユーザ役割が選択されないかまたは割り当てられない。
【００３８】
環境をマッピングする前に、または以前にマッピングされた環境を更新もしくは探索する前に、いくつかの実施形態では、ユーザは、その位置が、次いで将来のＡＲモバイルデバイス１２（および同等に、ユーザ）の移動のために基準点として使用される「ランドマーク」にＡＲモバイルデバイス１２を登録する必要があり得る。同じランドマーク位置はまた、３Ｄマップのノードとしてすでに確立されている（または確立されることになる）環境内の任意のオブジェクトの位置の基準点としても使用され、それによって、任意のマッピングされたオブジェクトに対するＡＲモバイルデバイス１２の位置の判定を可能にする。ランドマーク位置は、例えば、｛ｘ、ｙ、ｚ｝座標系の｛０、０、０｝を表現してもよく、または他の座標系（例えば、極座標）が使用されてもよい。
【００３９】
ＡＲモバイルデバイス１２を登録するために、登録モジュール４２は、カメラ２４によって捕捉された１つ以上の画像／フレームを処理してもよい。ランドマークは、例えば、ＱＲコード、またはランドマーク位置に物理的に印刷された任意の他の好適な種類の画像またはテキスト（例えば、プロセス制御プラント内のエリアの入口近くの壁または扉）であってもよい。いくつかの実施形態では、登録モジュール４２またはＡＲアプリケーション３２の別の部分は、（例えば、図４Ｅに関連して以下で説明されるように）ユーザに提供された現実世界ビュー内にレチクルを重ね合わせて、ユーザがＱＲコード、画像などに集中するのを支援することができる。いくつかの実施形態では、ＡＲモバイルデバイス１２の補完的なＢｌｕｅｔｏｏｔｈまたはＮＦＣ通信ユニット、およびランドマーク位置に固定された別のデバイスなどの、ランドマークを認識するために異なる技術が使用されてもよい。
【００４０】
いくつかの実施形態では、ユーザがＡＲモバイルデバイス２４を特定のランドマークに登録するときに、登録モジュール４２は、ランドマークの識別子を示すデータを、（例えば、ＱＲコードのバイナリ表現を送信すること、または画像を復号する前にＱＲコードの画像を送信することによって）ネットワーク１６およびウェブサービスインターフェース６０を介してバックエンドサーバ１４に転送する。次いで、バックエンドサーバ１４は、ランドマーク識別子を、ＡＲデータベース７２に記憶されているランドマーク識別子（存在する場合）と比較してもよい。識別子がまだ記憶されていない場合、バックエンドサーバ１４は、ウェブサービスインターフェース６０およびネットワーク１６を介して登録モジュールに障害メッセージを返してもよく、またはいくつかの実施形態では、ＡＲデータベースに、新しいランドマーク識別子入力を新しい３Ｄマップに関連付けて作成させてもよい。反対に、ランドマーク識別子がＡＲデータベース７２にすでに存在する場合、バックエンドサーバ１４は、対応する３Ｄマップ（および関連するデータ）のいくつかまたは全てをＡＲモバイルデバイス１２に利用可能にし、登録の成功を示すメッセージをウェブサービスインターフェース６０およびネットワーク１６を介して登録モジュール４２に返してもよい。
【００４１】
ＡＲデータベース７２は、各々が異なる３Ｄマップに関連付けられている多数の異なるランドマーク識別子を記憶してもよく、各マップは、異なるノードのライブラリに関連付けられている。複数のマップは、（例えば、単一の環境内の異なるオブジェクトを異なるマップのノードとして追加することによって）同じ環境に関連付けられてもよく、かつ／または異なるマップは、異なる環境に関連付けられてもよい（例えば、プロセス制御プラントの第１のエリアのマップ、プラントの第２のエリアの別のマップなど）。
【００４２】
いくつかの実施形態では、ランドマークにＡＲモバイルデバイス１２をうまく登録することは、位置決めおよび配向モジュール４４に、ＡＲモバイルデバイス１２の位置をランドマーク位置（例えば、｛０、０、０｝）に等しく設定させる。しかしながら、精度を高めるために、登録モジュール４２は、深度検知技術を使用して、カメラ２４によって捕捉されたランドマークの画像を処理して、ＡＲモバイルデバイス１２とランドマークとの間の距離を判定してもよい。次いで、位置決めおよび配向モジュール４４は、ランドマークからの判定された距離とランドマークに対するＡＲモバイルデバイス１２の配向との両方に基づいて、ＡＲモバイルデバイス１２の開始位置をランドマークの既知／基準位置からオフセットしてもよい。ランドマークがＱＲコードまたは他の視覚的識別子である場合、ＡＲモバイルデバイス１２の相対的な配向は、ランドマークが向いている方向に基づいて仮定されてもよい。あるいは、相対的な配向は、（例えば、ランドマークなどに対するカメラビューの入射角を判定することによって）捕捉された画像から判定されてもよい。
【００４３】
登録されると、ＡＲモバイルデバイス１２のユーザは、デジタルテキスト、表、グラフィック、アニメーション、および／またはランドマークに対応する３Ｄマップに関連付けられている他の種類の情報によって、一般に拡張される、（ディスプレイ２２を介して提供される）現実世界ビューを用いて、環境を通る移動を開始してもよい。ユーザ（すなわち、ＡＲモバイルデバイス１２）の位置および配向を追跡するために、位置決めおよび配向モジュール４４は、ＩＭＵ２６、カメラ２４、および／または図１には示されていないＡＲモバイルデバイス１２の１つ以上の他のセンサにアクセスしてもよい。いくつかの実施形態では、位置決めおよび配向モジュール４４は、集合したセンサデータを使用して、ＧＰＳ、ＧＮＳＳ、ＷｉＦｉ測位（例えば、三辺測量）、またはＡＲモバイルデバイス１２と他のデバイスもしくはシステムとの間の通信リンクを必要とする任意の他の測位技術に依存することなく、位置および配向を判定する。「位置（Ｐｏｓｉｔｉｏｎ）」または「位置（ｌｏｃａｔｉｏｎ）」は、３Ｄ座標系（例えば、デカルトまたは極座標）における特定の座標セットを指してもよく、「配向」は、特定の方向（例えば、３６０度水平／方位角範囲、および高度または標高）を指してもよい。いくつかの実施形態では、「配向」はさらに、デバイス１２が向いている方向とは無関係に、ＡＲモバイルデバイス１２の傾斜を指すことができる。相対位置のみが追跡される（例えば、「推測航法」の意味において）ため、位置決めおよび配向モジュール４４は、登録が行われたランドマークの位置に対するＡＲモバイルデバイス／ユーザ位置を判定する。
【００４４】
いくつかの実施形態では、位置決めおよび配向モジュール４４は、少なくともカメラ２４およびＩＭＵ２６からのデータの融合を処理して、単独で使用されるときに、センサのいずれかの種類に関連付けられている欠陥を克服するのに役立つ。例えば、位置決めおよび配向モジュール４４は、Ｑｕａｌｃｏｍｍ（登録商標）によって開発された視覚慣性測定法（ＶＩＯ）技術を利用して、ＡＲモバイルデバイス１２の位置および配向を追跡してもよい。そのような技術は、精度を向上させ、判定された位置における「ドリフト」を低減し、かつ／または他の利点を有するのに役立ち得る。
【００４５】
ＡＲモバイルデバイス１２自体に対するカメラ２４の位置および配向が既知であるため、ＡＲアプリケーション３２は、位置決めおよび配向モジュール４４によって判定された任意の所与の位置および配向について、ＡＲモバイルデバイス１２の視野（いくつかの実施形態ではまた、ユーザの現実世界ビューに対応し得る）を判定することができる。判定された位置および配向に基づいて、ＡＲデータベース７２に記憶されたノード位置を３Ｄマップに使用し、したがって、ＡＲアプリケーション３２は、マッピングされたどのオブジェクトが任意の所与の時間に視野内にあるかを判定してもよい。いくつかの実施形態では、オブジェクトがカメラセンサの水平および垂直の範囲／程度にある場合（例えば、特定の方位角および垂直／高度／仰角内にある場合）、オブジェクトと画像を捕捉するＡＲモバイルデバイスとの間の距離に関係なく、オブジェクトが環境内の障害物によって偶然遮断されたかどうかを問わず、オブジェクトは、カメラの「視野内にある」とみなすことができる。例えば、カメラ２４の直接的および間接的に前にあるオブジェクトは、たとえオブジェクトが囲い、障壁、他のオブジェクトなどによって遮蔽されたとしても、カメラ２４の「視野内」とみなすことができる。他の実施形態では、オブジェクトは、オブジェクトが不明瞭でない場合、すなわちカメラがオブジェクトの画像を捕捉することができる間に、カメラの「視野内にある」としかみなされない。
【００４６】
マッピングされたオブジェクトの位置を判定するために、ＡＲアプリケーション３２は、ネットワーク１６およびウェブサービスインターフェース６０を介してＡＲデータベース内のノード位置に定期的にアクセスしてもよい。例えば、ＡＲアプリケーション３２は、バックエンドサーバ１４がＡＲモバイルデバイス１２の閾値距離内（および／またはデバイス１２の視野内など）のノードの位置データを提供することを定期的に要求してもよく、要求は、ＡＲモバイルデバイス１２の現在の位置（および／または配向）を示す。あるいは、ＡＲアプリケーション３２は、バックエンドサーバ１４が、例えば登録時に登録のために使用されたランドマークに関連付けられている３Ｄマップについての全てのノード位置（および場合によっては、ノード記述などの他の情報）を送信するように要求してもよい。さらに他の実施形態では、バックエンドサーバ１４は、ＡＲモバイルデバイス１２がランドマークにうまく登録するときに、関連する全てのノード位置を自動的に送信してもよい。
【００４７】
ＡＲアプリケーション３２は、拡張がユーザの現在の視野内のマッピングされたオブジェクト／ノードのうちの１つ、２つ以上に提供されるべきであるか、またはいずれにも提供されるべきではないと判定してもよい。この判定を行うために、ノード体験モジュール４６は、１つ以上の基準を適用してもよい。いくつかの実施形態では、例えば、ノード体験モジュール４６は、オブジェクトとユーザとの間の距離を問わず、かつオブジェクトが任意の障害物によってユーザのビューから遮蔽されるかどうかを問わず、ユーザの現在の視野内の全てのマッピングされたオブジェクトに対して拡張が提供されるべきであることを判定してもよい。あるいは、ノード体験モジュール４６は、視野内にあるが、（例えば、位置決めおよび配向モジュール４４によって、ＡＲデータベース７２に記憶された対応するノード位置から判定された現在のユーザ位置から判定されるような）ユーザから離れた閾値距離よりも大きいマッピングされたオブジェクトに対して、拡張が提供されるべきでないことを判定してもよい。
【００４８】
ノード体験モジュール４６はまた、または代わりに、ＡＲモバイルデバイス１２の視野内にあるが視界から遮断されたマッピングされたオブジェクトに対して、拡張が提供されるべきでないことを判定してもよい。マッピングされたオブジェクトが不明瞭であるかどうかは、実施形態に応じて異なる方法で判定されてもよい。例えば、ＡＲデータベース７２内のフィールドは、特定のノードが一般に不明瞭なオブジェクトに対応するかどうかを示してもよい。例えば、キャビネット内に囲まれた構成要素の場合、対応するノードは、構成要素とキャビネットとの間の関係を示すフィールドを有する。他の実施形態では、ＡＲアプリケーション３２および／またはバックエンドサーバ１４は、ノード構成、ノード種類、および／またはノードサイズのより複雑な分析を実施して、ユーザの現在の視点から、特定のマッピングされたオブジェクトがおそらく視認可能であるだろうということを判定してもよい。
【００４９】
いくつかの実施形態では、ユーザの感覚過負荷の危険性を低減するために、ユーザが（ＡＲモバイルデバイス１２を単純に移動および／または再配向することを超えて）特定のアクションをとらない限り、拡張はいくつかの特定の種類のマッピングされたオブジェクトに提供されない。例えば、ノード体験モジュール４６は、ユーザがキャビネットのアイコンまたは他のグラフィック表現を選択すること、および／またはキャビネットの内容物を見せるオプションを選択することなどを行わない限り、異なるマッピングされたオブジェクトに各々対応する、キャビネット内の比較的小さい構成要素の多くに対して拡張を提供しなくてもよい。
【００５０】
さらに、いくつかの実施形態では、ノード体験モジュール４６は、役割識別モジュール４０によって判定されるように、ユーザの役割に基づいて、ユーザの視野内の特定のマッピングされたオブジェクトに対して拡張が提供されるべきかどうかを判定してもよい。したがって、ノード体験モジュール４６は、特にランドマークと選択されるかまたは割り当てられた役割との両方に関連付けられているノードについて、ウェブサービスインターフェース６０に照会することができる。プロセス制御環境では、例えば、電源スイッチは、「保守者」役割を有するユーザに対して拡張されてもよいが、「オペレータ」役割を有するユーザに対して拡張されなくてもよい。
【００５１】
拡張されるべきオブジェクトについて、ノード体験モジュール４６は、あたかもユーザの現実世界ビューにおけるオブジェクトの座標に（またはその近くに）位置しているかのように、ユーザに出現するディスプレイ２２のエリアに、テキスト（例えば、デバイス識別子、ステータスおよび／もしくは記述）ならびに／またはアイコンもしくは他のグラフィックなどのノード「マーカ」を最初に重ね合わせてもよい。マーカは、例えば、ディスプレイ２２上にレンダリングされた線によって現実世界ビュー内のマッピングされたオブジェクトに接続されているように出現してもよい。他の実施形態では、マーカは、オブジェクトの上にレンダリングされた円もしくは他の形状、オブジェクトを大まかに囲む長方形の輪郭、またはいくつかの他の種類のインジケータである。
【００５２】
ユーザが（例えば、ノードマーカ上に仮想レチクルを集中させることによって、または音声コマンドを発することなどによって）特定のノードを選択した場合、ノード体験モジュール４６は、ユーザに１つ以上の「ノード体験」を利用可能にしてもよい。マッピングされた環境を通って移動する適切に装備されたユーザのより一般的な「ＡＲ体験」とは対照的に、「ノード体験」は、オブジェクト／ノードとの特定の種類（複数可）のユーザ対話を指す。ノード体験モジュール４６は、例えば、現実世界ビューにメニューもしくは他の対話型ディスプレイを重ね合わせることによって、かつ／またはユーザからの音声コマンドを認識するように構成されることによって、特定のノード体験を選択するオプションをユーザに提供してもよい。ユーザは、ノードマーカを選択すること（例えば、オプション上の仮想レチクルの集中、音声コマンドなど）と同様の方法で、または別の好適な方法で、メニューオプションを選択してもよい。
【００５３】
特定のノード体験が選択されると、ノード体験モジュール４６は、その選択をネットワーク１６を介してウェブサービスインターフェース６０に転送してもよい。それに応答して、体験プロビジョニングユニット６２は、ＡＲデータベース７２（および／またはサーバ（複数可）１８などの他の位置）から、選択されたノードおよび選択された体験に関連付けられているデータ（例えば、テキスト、グラフィックなど）を取得し、取得されたデータをウェブサービスインターフェース６０を介してＡＲモバイルデバイス１２に送り返して、ノード体験モジュール４６がそれに応じてユーザの現実世界ビューを拡張することを可能にしてもよい。
【００５４】
ノード体験は、比較的単純であっても複雑であってよい。ノードマーカ自体は、例えば、デフォルトの「ノード体験」とみなすことができる。他の例として、ノード体験モジュール４６は、他のテキストおよび／またはテーブル（すなわち、対応するオブジェクトに関連付けられている情報）を、ユーザの現実世界ビューに（ディスプレイ２２を介して）、オブジェクトの単純なグラフィックまたはアイコン、オブジェクトの超現実的または擬似現実的な３Ｄモデル、オブジェクトの画像、オブジェクトを含むアニメーション（例えば、オブジェクトの回転する３Ｄモデル）などを重ね合わせてもよい。
【００５５】
ノード体験はまた、または代わりに、他の種類の対話性を含み得る。例えば、ノード体験モジュール４６は、環境内（例えば、特定のプロセス制御ルーチン内）のオブジェクトおよび／またはその動作に関するチュートリアルを提供するビデオに、オブジェクトを含む作業指示に、または遠隔の専門家に、リンク（例えば、ＵＲＬ）を重ね合わせてもよい。あるいは、またはそれに加えて、ユーザは、これらのノード体験のいくつかまたは全てについて音声コマンドを発してもよい。ビデオもしくは作業指示などのコンテンツが選択されるか、または呼び出される実施形態では、ノード体験モジュール４６は、コンテンツをユーザの現実世界ビューに重ね合わせてもよい。遠隔の専門家もしくは他の人物が選択されるか、または呼び出された場合、ノード体験モジュール４６は、ネットワークインターフェース２０または別の好適なネットワークインターフェースに（例えばネットワーク１６を介して）人物との通信リンクを確立させることを可能にしてもよく、いくつかの実施形態では、通信が終了するまで、人物の静止画像またはビデオを重ね合わせてもよい。
【００５６】
他のノード体験は、選択されたオブジェクト／ノードと他のオブジェクト／ノードとの間の特定の種類の関係を列挙し、かつ／または図形的に描画してもよい。例えば、１つのノード体験の場合、ノード体験モジュール４６は、選択されたオブジェクト／ノード（例えば、親および／または子オブジェクト／ノード）に関連するオブジェクト／ノードのリストを、ユーザの現実世界ビューに重ね合わせ得てもよい。「関係」は、任意の所望の方法で定義されてもよく、新しいノードを追加するときにユーザによって手動で設定されてもよく、または別の好適な方法で設定されてよい。例えば、いくつかの関係は、オブジェクトが別のオブジェクトの構成要素であるかどうか、および／またはそれ自体が多数の構成要素を含むかどうかを参照してもよい。バルブは、例えば、バルブの構成要素に各々対応するノードのグループの親であるノードに対応し得る。
【００５７】
ノード体験モジュール４６は、ウェブサービスインターフェース６０を介して体験プロビジョニングユニット６２に照会することによって関係を判定してもよく、体験プロビジョニングユニット６２が、ＡＲデータベース７２から関連するノードの識別子を取得し、それらのノードの指示をノード体験モジュール４６に提供する。デフォルトでは、（例えば、ノードまたは特定のオプションがユーザによって特に選択されない限り）個々のバルブ構成要素の全てについてノードマーカおよび／またはノード体験を示さないことによって、ユーザは圧倒的な量の視覚的情報を一度に受信することから免れることができる。
【００５８】
いくつかの種類の関係は、グラフィカルにユーザに描画されてもよい。例えば、ノード体験モジュール４６は、選択されたノードに対応するオブジェクトと、他のノードに対応する１つ以上の他のオブジェクトとの間の物理的または論理的接続のグラフィカルな描画を提供してもよい。ノード体験モジュール４６は、ウェブサービスインターフェース６０を介して体験プロビジョニングユニット６２に照会することによって接続を判定してもよく、体験プロビジョニングユニット６２は、ＡＲデータベース７２から接続されたノードの識別子を取得し、それらのノードの指示をノード体験モジュール４６に提供する。次いで、ノード体験モジュール４６は、適切なオブジェクトに接続された線を描画する表示を生成し、その線をユーザの現実世界ビューに重ね合わせてもよい。そのようなノード体験の一例が、以下に説明される図４Ｈに提供される。
【００５９】
示された接続および／または他の関係もまた、ユーザの選択されるかまたは割り当てられた役割に基づいて変化し得る。プロセス制御環境では、例えば、「オペレータ」は、センサ／送信機デバイスからタンクへの線を示されてもよく、線は、センサ／送信機がタンク内の圧力を測定することを示す。反対に、「技術者」は、その代わりに（またはそれに加えて）、センサ／送信機からセンサ送信を受信する別のデバイスへの線を示されてもよく、「保守者」は、その代わりに（またはそれに加えて）、（例えば、保守者がデバイスの保守、修理または交換を行う前に、電源を遮断する箇所を容易に見つけることができるように）センサ／送信機からデバイスの電源への線を示されてもよい。
【００６０】
いくつかの実施形態では、体験プロビジョニングユニット６２は、１つ以上のノード体験を提供するために、他のサーバ１８（複数可）および／またはアプリケーション（複数可）１９からのデータおよび／または機能を利用し、かつ／または１つ以上のアプリケーション（複数可）１９は、体験プロビジョニングユニット６２から送信されたデータに応答して起動され得る。このような実施形態のいくつかの例は、プロセス制御環境において、図２に関連して以下で説明される。
【００６１】
上述されたように、ノード体験モジュール４６は、ユーザの選択されるかまたは割り当てられた役割（例えば、オペレータ、保守者など）に基づいて、特定のマッピングされたオブジェクトのユーザの現実世界ビューを拡張するかどうかを判定してもよい。それに加えて、またはその代わりに、ノード体験の種類、および／または特定の体験によって提供されるコンテンツまたは対話性は、ユーザの役割に基づいて変化し得る。例えば、「保守者」の役割を有し、自身の現実世界ビューでポンプを有するユーザには、ポンプの予定された保守リマインダを示すノード体験が提示されてもよい一方で、「オペレータ」または「技術者」の役割を有するユーザには、代わりに、プロセス制御ルーチン内のポンプの論理的接続に関する情報が提示されてもよい。予定された保守が遅れた場合、保守者にアラートが示されてもよい一方で、オペレータまたは技術者は、他のシナリオで（例えば、ポンプに障害が発生した場合など）、アラートのみが示されてもよい。
【００６２】
ノード作成モジュール４８は、ＡＲモバイルデバイス１２を登録するために使用されるランドマークに対応する３Ｄマップ内の新しいノードの追加をサポートする。いくつかの実施形態では、任意のユーザは、新しいノードを３Ｄマップに追加することができる。他の実施形態では、特定のユーザ役割のみ、および／または特定のＡＲデバイスのみが、新しいノードを追加するために使用され得る。新しいノードを追加するために、ユーザは、ＡＲモバイルデバイス１２の視野（例えば、視野内の中心に位置するレチクル）をマッピングされるべき現実世界オブジェクトに方向付け、新しいノードとしてオブジェクト追加するオプションを選択してもよい。
【００６３】
これは、実施形態に応じて、異なる方法で達成され得る。例えば、ユーザは、重ね合わされたメニュー項目（例えば、仮想「ノードの追加」ボタン）を選択し、または音声コマンドを発してもよく、それに応答して、ノード作成モジュール４８は、レチクルをユーザの現実世界ビューに重ね合わせてもよい。オブジェクトにレチクルを向けている間、ユーザは別の制御（例えば、仮想「確認」ボタン）を起動するか、または第２の音声コマンドを発してもよい。それに応答して、ノード作成モジュール４８は、オブジェクトの位置を判定し、ノード名および／または記述を入力するようにユーザに促してもよい。次いで、ノード作成モジュール４８は、位置、入力されるかまたは発声された名前などをネットワーク１６を介してウェブサービスインターフェース６０に送信してもよく、３Ｄモデル生成ユニット６４は、少なくとも位置およびノード識別子（例えば、ユーザによって入力されるかまたは発声されたノード名）をＡＲデータベース７２に追加してもよい。
【００６４】
マッピングされているオブジェクトの位置を判定するために、ノード作成モジュール４８は、ＡＲモバイルデバイス１２の（位置決めおよび配向モジュール４４によって判定された）現在の位置を利用し、ＡＲモバイルデバイス１２とオブジェクトとの間の距離と、ＡＲモバイルデバイス１２の配向との両方に基づいて、その位置をオフセットしてもよい。これは、上述されたように、ランドマークに登録するときに、ＡＲモバイルデバイス１２の初期３Ｄ位置を判定するのと同様の方法で達成され得る。例えば、ノード作成モジュール４８は、ＡＲモバイルデバイス１２とオブジェクトとの間の距離を判定するために、深度検知技術を使用して、カメラ２４によって捕捉されたオブジェクトの画像を処理してもよい。次いで、位置決めおよび配向モジュール４４は、ＡＲモバイルデバイス１２の判定された距離および配向（例えば、オブジェクトの画像が捕捉されたときに、ＡＲモバイルデバイス１２の視野が向いていた距離および方向）の両方に基づいて、ＡＲモバイルデバイス１２の位置からオブジェクトの位置をオフセットしてもよい。
【００６５】
いくつかの実施形態では、ノード作成モジュール４８はまた、既存のノードを更新／修正するために使用されてもよい。例えば、ノード体験モジュール４６によって提供されるメニューは、ノード情報を更新するためのオプションを含み得る。選択された場合、ノード作成モジュール４８は、ユーザにノードに関する情報（例えば、ノード名、ノード記述など）を変更することを可能にするために、ユーザの現実世界ビューに１つ以上のメニューまたは他のユーザインターフェースを重ね合わせてもよい。任意の変更がネットワーク１６を介してウェブサービスインターフェース６０に送信されてもよく、３Ｄモデル生成ユニット６４は、それに応じてＡＲデータベース７２を更新してもよい。
【００６６】
いくつかの実施形態では、ＡＲアプリケーション３２は、上述された拡張機能を超えて、ユーザの仮想視覚を強化するようにＡＲモバイルデバイス１２を構成する。例えば、特定の種類のノードの場合、視覚強化モジュール５０は、マッピングされたオブジェクトが、（例えば、ノード体験モジュール４６について上述されたように）ユーザの現在の視野によって捕捉されたが、１つ以上の他のオブジェクトによって不明瞭であるエリア内にいつ存在するかを判定し、ユーザに仮想「Ｘ線視覚」を提供してもよい。仮想Ｘ線視覚は、１つ以上の他の基準が確立されている場合（例えば、視覚強化モジュール５０が、隠されたオブジェクト（複数可）がＡＲモバイルデバイス１２の閾値距離内にあると判定した場合）にのみ提供されてもよく、または任意の他の基準を問わず提供されてもよい。
【００６７】
このような実施形態の１つでは、ＡＲデータベース７２は、ノード入力のうちの少なくともいくつかの各々について、ノードが任意のユーザのビューから隠されている可能性があることを示すフラグまたは他の可視性インジケータを含む。この可視性インジケータは、（例えば、３Ｄモデル生成ユニット６４が、ノードに対応するオブジェクトがキャビネット内に位置決めされていることを知るために制御システムにアクセスする場合）オブジェクトの既知の関係に基づいて自動的に生成されてもよく、（例えば、ノードを追加するときに、ノード作成モジュール４８がユーザの現実世界ビューに重ね合わせるユーザインターフェースを介して）ユーザによって手動で設定されてもよい。特定のマッピングされたオブジェクトがユーザの視野内にあるときに、視覚強化モジュール５０は、ネットワーク１６およびウェブサービスインターフェース６０を介して、バックエンドサーバ１４の視覚強化ユニット６６に照会してもよく、視覚強化ユニット６６は、次に、ＡＲデータベース７２にアクセスして、関連する可視性インジケータを取得してもよい。次いで、視覚強化ユニット６６は、ウェブサービスインターフェース６０を使用して、可視性インジケータ、またはそのオブジェクトが不明瞭であるかどうかを示す他のデータを視覚強化モジュール５０に送信してもよい。
【００６８】
あるいは、視覚強化モジュール５０および／または視覚強化ユニット６６は、他の方法で可視性判定を行ってもよい。例えば、特定のマッピングされたオブジェクトまたはオブジェクトのセットは、モデル番号、ＱＲコード、または他の視覚的インジケータでマークされたキャビネット内にあってもよい。視覚強化モジュール５０は、カメラ２４によって捕捉された視覚的インジケータの画像を処理して、キャビネットの識別子（例えば、ノード識別子）を判定し、その識別子をウェブサービスインターフェース６０を介して視覚強化ユニット６６に送信してもよい。次いで、視覚強化ユニット６６は、識別子を使用して、マッピングされたどのオブジェクト（例えば、フィールドデバイス、Ｉ／Ｏカードなど）がキャビネット内にあるかを判定し、キャビネット内にあるオブジェクトが不明瞭であることを示すデータを送り返してもよい。
【００６９】
所与のオブジェクトに対する仮想Ｘ線視覚の効果を提供するために、視覚強化モジュール５０は、オブジェクトの超現実的または擬似現実的な２Ｄもしくは３Ｄモデル、またはオブジェクトのデジタル画像もしくはビデオを取得し、そのモデル、画像、またはビデオをユーザの視野でオブジェクトの上（またはオブジェクトの近く）に重ね合わせてもよい。デフォルト、または２Ｄもしくは３Ｄモデルまたは音声コマンドなどのユーザ選択に応答することのいずれかで、ノード体験モジュール４６はまた、上述されたように、視覚的メニューオプションまたは音声コマンド認識も提供して、ユーザがノードに対する様々な体験を選択することを可能にし得る。したがって、ユーザは、現実世界オブジェクトが自身の視野に直接存在する間に、現実世界オブジェクトと対話するのと非常によく似ているように出現し、「感じる」ような方法で、隠されたオブジェクトと対話することができる。
【００７０】
視覚強化モジュール５０はまた、または代わりに、他の方法でユーザの仮想視覚を強化してもよい。例えば、オブジェクトがアクセス制限されたおよび／もしくは危険なエリア（例えば、非常に高い位置、バリケードされた位置、高電圧または有毒エリアなど）にある場合、ならびに／またはユーザから遠く離れている場合、視覚強化モジュール５０は、ユーザがオブジェクトを自身の視野に表現する「アバター」を取得することを可能にし得る。アバターは、Ｘ線視覚の例について上述された２Ｄまたは３Ｄモデル、画像、ビデオなどと同じであってもよく、またはいくつかの点で異なっていてもよい。実際に、いくつかの実施形態では、仮想Ｘ線視覚は、現実世界オブジェクトのアバターを呼び出すための複数のユースケースのうちの１つに過ぎない。
【００７１】
アバターは、実施形態および／またはシナリオに応じて、異なる方法で呼び出されてもよい。いくつかの実施形態では、視覚強化モジュール５０は、まず視覚的インジケータがユーザの現実世界ビューに対して対応するオブジェクトの位置のいくつかの指示を与える特定の基準が満たされる場合に、視覚的インジケータをユーザの現実世界ビューに重ね合わせる。例えば、視覚的インジケータは、（１）ＡＲモバイルデバイス１２がオブジェクトのいくつかの閾値距離内にある場合、および（２）ノードがアクセス制限されたオブジェクトとしてフラグが立てられている場合の両方において提示されてもよい。ＡＲデータベース７２は、例えば、（例えば、ノードがユーザによって追加されたときの手動のユーザ入力に基づいて）そのような状態を示すデータを記憶してもよく、またはステータスは、（例えば、視覚強化ユニット６６が、オブジェクトがバックエンドサーバ１４が「危険」領域としてフラグを立てた領域にあることを判定する場合、または視覚強化モジュール５０もしくは視覚強化ユニット６６が、オブジェクトの位置が少なくともｚ方向のＡＲモバイルデバイス１２からの閾値距離であり、したがって非常に異なる仰角であることを判定する場合など）推論されてもよい。視覚的インジケータは、オブジェクトの方向で指し示す矢印、オブジェクトに通じる線、またはいくつかの他の位置の指示を含み得る。視覚的インジケータの一例が、図７Ａに関連して以下で説明される。ユーザがインジケータを選択するか、または別の好適なアクションをとる場合（例えば、いくつかの実施形態では、ユーザがオブジェクトを含めるように自身の視界を変える場合）に、視覚強化モジュール５０は、アバターをユーザの現実世界ビューに重ね合わせてもよい。
【００７２】
他の実施形態では、オブジェクトの位置のインジケータは、アバター自体（例えば、アバターの上または近くにあるオブジェクト位置への矢印／ポインタを有する）を含む。さらに他の実施形態および／またはシナリオでは、視覚強化モジュール５０は、オブジェクトの位置の任意の視覚的インジケータを提示することなく、ユーザの視野にアバターを重ね合わせる。例えば、視覚強化モジュール５０は、ユーザが対応するオブジェクトを要求することもしくは検索することに応答して（例えば、音声コマンドを発するか、もしくは手動でデータを入力することによって）、またはユーザが比較的遠く（例えば、いくつかの閾値距離を超えて離れている）のオブジェクトについてノードマーカを選択したことなどに応答して、アバターをユーザに提示してもよい。そのような一実施形態では、アバターは、即座にフルサイズで出現しない。例えば、視覚強化モジュール５０は、アバターがオブジェクト位置から（例えば、ユーザの前方から離れて）ユーザのちょうど前の位置に移動するかのように、アバターがユーザに出現する視覚的効果を作成してもよい。アバターは、例えば、ユーザにより近い描画効果をシミュレートするためにサイズが拡大されてもよい。
【００７３】
ノード体験モジュール４６は、（オブジェクトのアバターを示すことに加えて）ユーザに対するオブジェクトに特定のノード体験を自動的に提供してもよく、かつ／またはユーザがアバターが最初に提示された後に、（例えば、音声コマンドを発すること、またはメニューオプションを選択することによって）１つ以上のノード体験を選択することを可能にしてもよい。例えば、上述されたノード体験のうちのいずれか１つ以上が提供され得る。アバターに関連付けられ得る体験の一例が、図７Ｂに関連して以下で説明される。
【００７４】
いくつかの実施形態では、ＡＲアプリケーション３２は、ユーザの現在位置に基づいて、かつ／または特定のエリア（例えば、警告に関連付けられているプロセスプラントの特定の領域）における現在の状況に基づいてアラートを生成するように、ＡＲモバイルデバイス１２を構成する。アラート生成ユニット６８は、例えば、（例えば、ウェブサービスインターフェース６０を介して）位置決めおよび配向モジュール４４によって報告された位置を１つ以上の地理的に隔離されたエリアの境界と比較することによって、ＡＲモバイルデバイス１２の現在の位置がアラートまたは警告を受けるエリアにあるかどうかを定期的にまたは継続的に判定してもよい。ユーザ／デバイスがアラートに関連付けられているエリアにある場合、アラート生成ユニット６８は、ウェブサービスインターフェース６０を介してアラートのインジケータを位置ベースアラートモジュール５２に送信してもよく、位置ベースアラートモジュール５２は、ユーザの現実世界ビュー上のアラート（例えば、テキストおよび／またはグラフィック）の指示を重ね合わせ、いくつかの他の視覚的効果（例えば、現実世界ビュー全体を包含する点滅する赤い光または色合い）を引き起こし、かつ／またはユーザに（図１には示されていないが、ＡＲモバイルデバイス１２のスピーカを介して）音声アラートを提供してもよい。あるいは、またはそれに加えて、アラート生成ユニット６８は、ＡＲモバイルデバイス１２の近接度に基づくアラートインジケータを特定のマッピングされたオブジェクトに送信してもよい（例えば、オブジェクトが誤動作しており、保守が必要な場合、またはオブジェクトを避けるべき場合など）。アラート生成ユニット６８はまた、ユーザの選択されるかまたは割り当てられた役割に関するアラートの配信を条件付けてもよい。
【００７５】
いくつかの実施形態では、バックエンドサーバ１４は、マッピングされた環境内のＡＲモバイルデバイス（したがって、ユーザ）の３Ｄ位置を監視してもよい。この目的のために、ユーザ監視ユニット７０は、ウェブサービスインターフェース６０を介して位置決めおよび配向モジュール４４から受信したデータに基づいて、自身のＡＲモバイルデバイスをランドマークに登録したユーザの現在および／または過去の位置を記録してもよい。
【００７６】
ユーザ位置監視は、実施形態および／または必要性に応じて、様々な目的のために使用されてもよい。例えば、ユーザ監視ユニット７０は、バックエンドサーバ１４に結合された（かつ図１には示されていない）ディスプレイまたは端末上のユーザの位置を描画してもよく、ディスプレイまたは端末のオペレータは、緊急の事象にある従業員の位置を説明し、より一般的な条件で単にユーザを監視して、従業員が医療援助を必要としているかどうかを判定してもよい。従業員の健康状態はまた、（例えば、脈拍、血圧、温度などを検出するために）ＡＲモバイルデバイス１２の１つ以上のセンサによって収集されたバイオメトリックデータなどの他のデータを使用して監視されてもよい。さらなる例として、従業員／ユーザ位置が従業員のトレーニングログに追加され、管理者または人事担当者によって手順の遵守状況などを監視するために使用されてもよい。さらに他の実施形態および／またはシナリオでは、マッピングされた環境内で特定の非人為的モバイルアセットの３Ｄ位置が追跡されてもよい。例えば、バックエンドサーバ１４のユニットは、様々な目的のために、モバイルリアクタ、カート、フィールドサービストラック、および／または他のオブジェクトの３Ｄ位置を監視してもよい。
【００７７】
図１および上記の説明は、いくつかの潜在的な実施形態のみを表現しており、他の実施形態も可能であることが理解される。例えば、ＡＲプラットフォームは、クラウドベースのアーキテクチャまたはウェブベースのサービスを使用しなくてもよい。別の例として、バックエンドサーバ１４のユニット６２ないし６８および／またはＡＲデータベース７２自体のいくつかまたは全ての機能は、部分的または全体的にＡＲモバイルデバイス１２に組み込まれてもよい。さらに別の例として、ノードマーカおよび／またはノード体験は、非ＡＲコンテキスト、例えば仮想現実（ＶＲ）コンテキストにおいて、または非ＡＲ、非ＶＲグラフィカルユーザインターフェース（ＧＵＩ）に関連して提供され得る。
【００７８】
さらに、ＡＲプラットフォームは、上述されていないさらに他の特徴を提供することができる。例えば、ＡＲモバイルデバイスのユーザは、ＡＲデータベース７２内の様々なノード／オブジェクトに関連付けられて記憶されたフィールドノートを（例えば、音声コマンドを使用して）追加してもよく、かつ／または様々なノード／オブジェクトなどに関連付けられている新しい作業指示を開始してもよい。
【００７９】
例示的なプロセス制御環境
図２は、図１のＡＲシステム１０が利用され得る例示的なプロセス制御環境１００のブロック図である。プロセス制御環境１００（本明細書においては、同義でプロセス制御システム１００またはプロセスプラント１００とも称される）は、プラント１００内のプロセスの動作を制御するために、フィールドデバイスによって行われたプロセス測定値を示す信号を受信し、この情報を処理して制御ルーチンを実装し、有線および／もしくは無線プロセス制御通信リンクまたはネットワークによって他のフィールドデバイスへに送信される制御信号を生成する、１つ以上のプロセスコントローラを含む。典型的には、少なくとも１つのフィールドデバイスは、物理的機能（例えば、バルブの開閉、コンベアによる物質の移動、温度の上昇または減少、測定値の取得、状態の検知など）を実施して、プロセスの動作を制御する。フィールドデバイスのうちのいくつかのタイプは、Ｉ／Ｏデバイスを使用してコントローラと通信する。プロセスコントローラ、フィールドデバイス、およびＩ／Ｏデバイスは、有線または無線であってもよく、任意の数および組み合わせの有線および無線プロセスコントローラ、フィールドデバイス、およびＩ／Ｏデバイスが、プロセスプラント環境またはシステム１００内に含まれてもよい。
【００８０】
例えば、図２は、入力／出力（Ｉ／Ｏ）カード１２６および１２８を介して、有線フィールドデバイス１１５〜１２２と通信可能に接続されたプロセスコントローラ１１１を示す。プロセスコントローラ１１１は、プロセッサ１３０、メモリ１３２、および以下にさらに詳細に説明される１つ以上のプロセス制御ルーチン１３８を含む。コントローラ１１１はまた、プロセス制御通信ネットワークまたはバックボーン１１０、および無線ゲートウェイ１３５を介して、無線フィールドデバイス１４０〜１４６とも通信可能に接続される。バックボーン１１０は、１つ以上の有線および／または無線通信リンクを含んでもよく、例えばイーサネットプロトコルなどの任意の好適な通信プロトコルを使用して実装されてもよい。（図２に示されていない）いくつかの構成では、コントローラ１１１は、例えば、ＩＥＥＥ８０２．１１規格無線ローカルエリアネットワークプロトコル、モバイル通信プロトコル（例えば、ＷｉＭＡＸ、ＬＴＥなど）、Ｂｌｕｅｔｏｏｔｈ（登録商標）、ＨＡＲＴ（登録商標）、ＷｉｒｅｌｅｓｓＨＡＲＴ（登録商標）、プロフィバス、ＦＯＵＮＤＡＴＩＯＮ（登録商標）フィールドバスなどの１つ以上の通信プロトコルをサポートする、任意の数の他の有線または無線通信リンクを使用することによってなど、バックボーン１１０以外の１つ以上の通信ネットワークを使用して、無線ゲートウェイ１３５と通信可能に接続されてもよい。
【００８１】
コントローラ１１１（例としては、Ｅｍｅｒｓｏｎ  Ｐｒｏｃｅｓｓ  Ｍａｎａｇｅｍｅｎｔから販売されているＤｅｌｔａＶ商標コントローラであり得る）は、フィールドデバイス１１５〜１２２および１４０〜１４６のうちの少なくともいくつかを使用して、バッチプロセスまたは連続プロセスを実装するように動作してもよい。一実施形態では、バックボーン１１０と通信可能に接続されることに加えて、コントローラ１１１はまた、例えば、標準４〜２０ｍＡデバイス、Ｉ／Ｏカード１２６、１２８、および／またはＦＯＵＮＤＡＴＩＯＮ登録商標フィールドバスプロトコル、ＨＡＲＴ登録商標プロトコル、ＷｉｒｅｌｅｓｓＨＡＲＴ登録商標プロトコルなどの任意の好適なスマート通信プロトコルと関連付けられている、任意の所望のハードウェアおよびソフトウェアを使用して、フィールドデバイス１１５〜１２２および１４０〜１４６のうちの少なくともいくつかと通信可能に接続される。図２では、コントローラ１１１、フィールドデバイス１１５〜１２２、およびＩ／Ｏカード１２６、１２８は有線デバイスであり、フィールドデバイス１４０〜１４６は無線フィールドデバイスである。‘当然のことながら、有線フィールドデバイス１１５〜１２２および無線フィールドデバイス１４０〜１４６は、将来開発される任意の好適な標準またはプロトコルを含む、任意の好適な有線または無線プロトコルなどの任意の他の所望の標準（複数可）またはプロトコルに準拠することができる。
【００８２】
プロセスコントローラ１１１のプロセッサ１３０は、メモリ１３２内に記憶することができる１つ以上のプロセス制御ルーチンまたはモジュール１３８を実装または監督する。この目的のために、プロセッサ１３０は、フィールドデバイス１１５〜１２２および１４０〜１４６、ならびにコントローラ１１１と通信可能に接続された他のノードと通信するように構成されている。本明細書に記載される任意の制御ルーチンまたはモジュールは、そのように所望される場合は、その一部を異なるコントローラまたは他のデバイスによって実装または実行させてもよいことに留意されたい。同様に、プロセス制御システム１００内に実装される制御モジュール１３８は、ソフトウェア、ファームウェア、ハードウェアなどを含む任意の形態であってもよい。制御ルーチンは、オブジェクト指向プログラミング、ラダー論理、シーケンシャルファンクションチャート、機能ブロック図の使用、または任意の他のソフトウェアプログラミング言語または設計パラダイムの使用などの任意の所望のソフトウェアフォーマットで実装されてもよい。制御モジュール１３８のいくつかまたは全てが記憶され得るメモリ１３２は、ランダムアクセスメモリ（ＲＡＭ）および／またはリードオンリーメモリ（ＲＯＭ）などの任意の好適な種類のメモリ（複数可）であってもよい。さらに、制御モジュール１３８は、例えば、１つ以上のＥＰＲＯＭ、ＥＥＰＲＯＭ、特定用途向け集積回路（ＡＳＩＣ）、または任意の他のハードウェアまたはファームウェア要素にハードコーディングされてもよい。したがって、コントローラ１１１は、制御ストラテジまたは制御ルーチン／モジュールを実装するために、任意の所望の方法で構成されてもよい。
【００８３】
コントローラ１１１は、一般に機能ブロックと称されるものを使用して制御ストラテジを実装し、各機能ブロックは、全体の制御ルーチンのオブジェクトまたは他の部分（例えば、サブルーチン）であり、（リンクと呼ばれる通信を介して）他の機能ブロックとともに動作して、プロセス制御システム１００内にプロセス制御ループを実装する。制御系機能ブロックは、典型的に、送信機、センサ、または他のプロセスパラメータ測定デバイスに関連付けられているものなどの入力機能、ＰＩＤ、ファジィ論理などの制御を実施する制御ルーチンに関連付けられているものなどの制御機能、またはバルブもしくはコンベアモータなどのいくつかのデバイスの動作を制御する出力機能のうちの１つを実施し、プロセス制御システム１００内のいくつかの物理的機能を実施する。当然のことながら、ハイブリッドおよび他のタイプの機能ブロックが存在する。機能ブロックは、これらの機能ブロックが典型的に、標準４〜２０ｍＡデバイスおよびある種類のスマートフィールドデバイス（例えば、ＨＡＲＴ登録商標デバイス）に使用されるか、もしくは関連付けられている場合、コントローラ１１１に記憶され、これによって実行されてよく、またはＦＯＵＮＤＡＴＩＯＮ登録商標フィールドバスデバイスの場合であり得るフィールドデバイス自体に記憶され、これによって実装されてもよい。コントローラ１１１内の１つ以上の制御モジュール１３８は、機能ブロックのうちの１つ以上を実行することによって実施される１つ以上の制御ループを実装してもよい。
【００８４】
有線フィールドデバイス１１５〜１２２は、センサ、バルブ、コンベアモータ、送信機、ポジショナなどの任意の種類（複数可）のデバイスであってもよく、一方、Ｉ／Ｏカード１２６および１２８は、好適な通信またはコントローラプロトコルに準拠する、任意の種類のＩ／Ｏデバイスであってもよい。例えば、フィールドデバイス１１５〜１１８は、アナログ回線によって（またはアナログおよびデジタル回線を組み合わせて）Ｉ／Ｏカード１２６と通信する、標準４〜２０ｍＡデバイスまたはＨＡＲＴ登録商標デバイスであってもよく、一方、フィールドデバイス１１９〜１２２は、ＦＯＵＮＤＡＴＩＯＮ登録商標フィールドバス通信プロトコルを使用して、デジタルバスによってＩ／Ｏカード１２８と通信する、ＦＯＵＮＤＡＴＩＯＮ登録商標フィールドバスフィールドデバイスなどのスマートデバイスであってもよい。しかしながら、いくつかの実施形態では、有線フィールドデバイス１１５〜１２２のうちの少なくともいくつか、および／またはＩ／Ｏカード１２６、１２８のうちの少なくとも１つは、バックボーン１１０および好適な制御システムプロトコル（例えば、プロフィバス、ＤｅｖｉｃｅＮｅｔ、Ｆｏｕｎｄａｔｉｏｎフィールドバス、ＣｏｎｔｒｏｌＮｅｔ、Ｍｏｄｂｕｓ、ＨＡＲＴなど）を使用して、追加的にまたは代替的にコントローラ１１１と通信する。
【００８５】
図２では、無線フィールドデバイス１４０〜１４６は、ＷｉｒｅｌｅｓｓＨＡＲＴ登録商標プロトコルなどの無線プロトコルを使用して、無線プロセス制御通信ネットワーク１７０を介して通信する。このような無線フィールドデバイス１４０〜１４６は、無線で通信するようにも構成された無線ネットワーク１７０のうちの１つ以上の他のデバイスまたはノードと直接通信することができる。無線で通信するように構成されていない他のノードと通信するためには、無線フィールドデバイス１４０〜１４６は、バックボーン１１０または別のプロセス制御通信ネットワークへと接続された無線ゲートウェイ１３５を利用してもよい。無線ゲートウェイ１３５は、バックボーン１１０から無線通信ネットワーク１７０のうちの様々な無線デバイス１４０〜１５８へのアクセスを提供する。具体的には、無線ゲートウェイ１３５は、無線デバイス１４０〜１５８、有線デバイス１１５〜１２２、および／またはプロセス制御プラント１００の他のノードもしくはデバイスの間における通信連結を提供する。
【００８６】
有線フィールドデバイス１１５〜１２２と同様に、無線ネットワーク１７０の無線フィールドデバイス１４０〜１４６は、プロセスプラント１００内で、物理的制御機能、例えば、バルブの開閉、プロセスパラメータの測定値の取得などを実施する。しかしながら、無線フィールドデバイス１４０〜１４６は、ネットワーク１７０の無線プロトコルを使用して通信するように構成されている。したがって、無線フィールドデバイス１４０〜１４６、無線ゲートウェイ１３５、および無線ネットワーク１７０の他の無線ノード１５２〜１５８は、無線通信パケットの生産者および消費者であり得る。
【００８７】
プロセスプラント１００のいくつかの構成では、無線ネットワーク１７０は、非無線デバイスを含む。例えば、図２では、フィールドデバイス１４８は、古い４〜２０ｍＡデバイスであり得、フィールドデバイス１５０は、有線ＨＡＲＴ登録商標デバイスであり得る。ネットワーク１７０内で通信するために、フィールドデバイス１４８および１５０は、無線アダプタ１５２Ａ、１５２Ｂのうちのそれぞれ１つを介して、無線通信ネットワーク１７０と接続される。無線アダプタ１５２Ａ、１５２Ｂは、ＷｉｒｅｌｅｓｓＨＡＲＴなどの無線プロトコルをサポートし、かつＦｏｕｎｄａｔｉｏｎ登録商標フィールドバス、プロフィバス、ＤｅｖｉｃｅＮｅｔなどの１つ以上の他の通信プロトコルもサポートし得る。さらに、いくつかの構成では、無線ネットワーク１７０は、無線ゲートウェイ１３５と有線通信する独立した物理デバイスであり得るか、または無線ゲートウェイ１３５内に一体化され得る、１つ以上のネットワークアクセスポイント１５５Ａ、１５５Ｂを含む。無線ネットワーク１７０はまた、無線通信ネットワーク１７０内の無線デバイス間からパケットを転送する１つ以上のルータ１５８をも含み得る。無線デバイス１４０〜１４６および１５２〜１５８は、無線通信ネットワーク１７０の無線リンク１６０によって、および／またはバックボーン１１０を介して、互いに、および無線ゲートウェイ１３５と通信してもよい。
【００８８】
図２では、プロセス制御システム１００は、バックボーン１１０と通信可能に接続された１つ以上のオペレータワークステーション１７１を含む。オペレータワークステーション（複数可）１７１を介して、ヒューマンオペレータは、プロセスプラント１００のランタイム動作の監視に加えて、必要であり得る任意の診断、調整、保守、および／または他のアクションをとることができる。オペレータワークステーション１７１のうちの少なくともいくつかは、例えば、プラント１００のバックエンド環境など、プラント１００の内部または近くの、様々な保護されたエリアに位置していてもよく、場合によっては、オペレータワークステーション１７１のうちの少なくともいくつかは、遠隔地に位置していてもよい（しかし、それにもかかわらずプラント１００と通信接続する）。オペレータワークステーション（複数可）１７１は、有線または無線コンピューティングデバイスであってもよい。
【００８９】
例示的なプロセス制御システム１００は、１つ以上の構成アプリケーション１７２Ａおよび１つ以上の構成データベース１７２Ｂを含み、これらの各々もまた、バックボーン１１０と通信可能に接続されるものとして、図２にさらに示される。構成アプリケーション（複数可）１７２Ａの様々なインスタンスは、ユーザによるプロセス制御モジュールの作成または変更すること、およびこれらのモジュールを、バックボーン１１０を介して、プロセスコントローラ１１１および／または他のプロセスコントローラへダウンロードすることを可能にするため、ならびにオペレータがプロセス制御ルーチン内でデータを表示し、データ設定を変更できることを介して、ユーザによるオペレータインターフェースを作成または変することを可能にするために、１つ以上のコンピューティングデバイス（図２に図示せず）を実行してもよい。構成データベース（複数可）１７２Ｂは、構成されたモジュールおよび／またはオペレータインターフェースを記憶する。一般に、構成アプリケーション（複数可）１７２Ａおよび構成データベース（複数可）１７２Ｂは、集中化され、プロセス制御システム１００に対して単一の論理的外観を有してもよく（構成アプリケーション１７２Ａのうちの複数のインスタンスが、プロセス制御システム１００内で同時に実行され得るにも関わらず）、構成データベース（複数可）１７２Ｂは、単一の物理的データ記憶デバイス内か、または複数のデータ記憶デバイスにまたがって記憶されてもよい。構成アプリケーション（複数可）１７２Ａ、構成データベース（複数可）１７２Ｂ、およびそれらへのユーザインターフェース（図２に図示せず）は、制御および／または表示モジュールを作成／構成するための構成または開発システム１７２を集合的に形成する。典型的には、必ずしもそうではないが、構成システム１７２のユーザインターフェースは、オペレータワークステーション１７１とは異なり、プラント１００がリアルタイムで動作しているかに関係なく、構成および開発エンジニアによって代わりに利用される構成システム１７２のユーザインターフェースと、プロセスプラント１００のリアルタイム（または「ランタイム」）動作中にオペレータによって利用されるオペレータワークステーション１７１と、を有する。
【００９０】
例示的なプロセス制御システム１００はまた、１つ以上のデータヒストリアンアプリケーション（複数可）１７３Ａおよび１つ以上のデータヒストリアンデータベース（複数可）１７３Ｂも含み、これらの各々はバックボーン１１０と通信可能に接続される。データヒストリアンアプリケーション（複数可）１７３Ａは、バックボーン１１０を通じて提供されたデータのうちのいくつかまたは全てを収集し、そのデータを長期間記憶のためのデータヒストリアンデータベース（複数可）１７３Ｂに記憶するように動作する。構成アプリケーション（複数可）１７２Ａおよび構成データベース（複数可）１７２Ｂと同様に、データヒストリアンアプリケーション（複数可）１７３Ａおよびデータヒストリアンデータベース（複数可）１７３Ｂは、集中化され、プロセス制御システム１００に対して単一の論理的外観を有してよく（データヒストリアンアプリケーション１７３Ａのうちの複数のインスタンスが、プロセス制御システム１００内で同時に実行され得るにも関わらず）、データヒストリアンデータベース（複数可）１７３Ｂは、単一の物理的データ記憶デバイス内か、または複数のデータ記憶デバイスにまたがって記憶されてよい。データヒストリアンアプリケーション１７３Ａ、データヒストリアンデータベース（複数可）１７３Ｂ、およびそれらのユーザインターフェース（図２に図示せず）は、集合的にデータヒストリアンシステム１７３を形成する。
【００９１】
いくつかの構成では、プロセス制御システム１００は、ＩＥＥＥ８０２．１１規格無線ローカルエリアネットワークプロトコルなどの他の無線プロトコル、ＷｉＭＡＸ（Ｗｏｒｌｄｗｉｄｅ  Ｉｎｔｅｒｏｐｅｒａｂｉｌｉｔｙ  ｆｏｒ  Ｍｉｃｒｏｗａｖｅ  Ａｃｃｅｓｓ）、ＬＴＥ（Ｌｏｎｇ  Ｔｅｒｍ  Ｅｖｏｌｕｔｉｏｎ）、もしくは他のＩＴＵ−Ｒ（Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｔｅｌｅｃｏｍｍｕｎｉｃａｔｉｏｎ  Ｕｎｉｏｎ  Ｒａｄｉｏｃｏｍｍｕｎｉｃａｔｉｏｎ  Ｓｅｃｔｏｒ）互換プロトコルなどのモバイル通信プロトコル、近距離無線通信（ＮＦＣ）もしくはＢｌｕｅｔｏｏｔｈなどの短波長無線通信、および／または他の無線通信プロトコルを使用して、他のデバイスと通信する、１つ以上の他の無線アクセスポイント１７４を含む。典型的には、このような無線アクセスポイント（複数可）１７４は、手持ち式または他のポータブルコンピューティングデバイス（例えば、ユーザインターフェースデバイス１７５）を、無線ネットワーク１７０とは異なり、無線ネットワーク１７０以外の異なる無線プロトコルをサポートする、それぞれの無線プロセス制御通信ネットワークによって通信できるようにする。例えば、無線またはポータブルユーザインターフェースデバイス１７５は、プロセスプラント１００内のオペレータ（例えば、オペレータワークステーション１７１のうちの１つのインスタンス）によって利用される、モバイルワークステーションまたは診断試験機器であってもよい。いくつかのシナリオでは、ポータブルコンピューティングデバイスに加えて、１つ以上のプロセス制御デバイス（例えば、コントローラ１１１、フィールドデバイス１１５〜１２２、無線デバイス１３５、１４０〜１５８など）も、無線アクセスポイント（複数可）１７４によってサポートされる無線プロトコルを使用して通信する。
【００９２】
図２は、例示的なプロセスプラント１００に含まれる、単一のプロセスコントローラ１１１、特定の数のフィールドデバイス１１５〜１２２および１４０〜１４６、無線ゲートウェイ３５、無線アダプタ１５２、アクセスポイント１５５、ルータ１１５８、ならびに無線プロセス制御通信ネットワーク１７０のみを図示しているが、これは、例示的かつ非限定的な実施形態に過ぎない点に留意されたい。例えば、任意の数のコントローラ１１１が、プロセス制御プラントまたはシステム１００内に含まれてもよく、コントローラ１１１のいずれかが、任意の数の有線または無線デバイスおよびネットワーク１１５〜１２２、１４０〜１４６、１３５、１５２、１５５、１５８、および１７０と通信して、プラント１００内のプロセスを制御してもよい。
【００９３】
ここで図１に戻ると、ＡＲモバイルデバイス（例えば、ＡＲモバイルデバイス１２）を使用してマッピングされるオブジェクトは、コントローラ１１１、デバイス１１５〜１２２および１４０〜１５８、Ｉ／Ｏカード１２６、１２８、無線ゲートウェイ１３５、ならびに／またはプラント１００内の他のデバイスおよび／もしくは機器の一部分のいくつかまたは全てを含み、その結果、プラント１００内の３Ｄ位置（および場合によっては、それらの互いの関係、それらのアバターなど）がＡＲデータベース７２に記憶される。いくつかの実施形態では、バックエンドサーバ１４は、バックボーン１１０に通信可能に結合され、他のサーバ（複数可）１８は、オペレータワークステーション（複数可）１７１、構成システム１７２、データヒストリアンシステム１７３、および／またはプロセス制御環境１００の他のコンピューティングデバイスまたはシステムを含み、またはそれらに結合されてもよい。
【００９４】
サーバ（複数可）１８によって実行されるアプリケーション（複数可）１９は、１つ以上のＤｅｌｔａＶ商標アプリケーション、診断および保守アプリケーション、および／または他のアプリケーションもしくはソフトウェアベースのシステムを含み得る。したがって、アプリケーション（複数可）１９は、フィールドデバイスのランタイムステータスおよび／または測定データを表示し、フィールドデバイスのランタイム制御を提供し、機械の診断／保守情報を表示するノード体験をサポートすることができる。ほんの一例として、様々なデバイスに関連付けられているＨＡＲＴ（登録商標）および／またはフィールドバス情報は、ＡＲモバイルデバイス１２のユーザに提示されてもよい。体験プロビジョニングユニット６２は、（例えば、バックボーン１１０を介して）適切なアプリケーション（複数可）１９を起動し、かつ／またはそれとインターフェースして、必要な表示データを収集してもよく、これは次いで、ノード体験モジュール４６に転送される。体験プロビジョニングユニット６２はまた、または代わりに、ノード体験モジュール４６から受信された任意のユーザ入力をコントローラ１１１に転送して、適切なフィールドデバイスなどをそれに応じて制御させてもよい。
【００９５】
例示的な３Ｄマップ
上記の図１の説明から、ＡＲシステム１０の３Ｄ「マップ」は環境の完全なモデルである必要はなく、その環境内のノードの３Ｄ位置のみを含み得ることが理解されるべきである。４つのオブジェクト／ノードのみを含む非常に単純化された例示的な３Ｄマップ２００が図３に示される。図３において、ｚ軸は仰角（例えば、地上レベル）に対応する。上述されたように、ランドマーク位置２０２は、環境内の他の全ての位置（例えば、ノードおよびユーザ／ＡＲデバイスの位置）について基準点を提供し得る。
【００９６】
例示的なマップ２００において、第１のオブジェクト／ノードの第１の位置２０４は、オフセット｛ｘ１、ｙ１、ｚ１｝においてランドマーク位置２０２のわずかに上（仰角方向）であり、第２および第３のオブジェクト／ノードの第２および第３の位置２０６、２０８は、オフセット｛ｘ２、ｙ２、ｚ２｝および｛ｘ３、ｙ３、ｚ３｝において、それぞれまだ少し高いままであり、第３のオブジェクト／ノードの第３の位置２１０はオフセット｛ｘ４、ｙ４、ｚ４｝においてまだ高いままである。当然のことながら、いくつかのシナリオでは、ｘ、ｙおよび／またはｚ方向のオフセットは、特定のオブジェクト／ノードに対して負であり得る。
【００９７】
マップ２００内では、｛ｘ５、ｙ５、ｚ５｝の位置２２０は、図１のＡＲモバイルデバイス１２などのＡＲモバイルデバイスの現在の位置に対応する。図３はまた、破線で、ＡＲモバイルデバイスの視野２２２を描画し、デバイスの特定の配向に対応する。視野２２２は、例えば、ＩＭＵ２６からのセンサデータ（およびおそらく、例えばＶＩＯ技術を用いたカメラ２６からの画像データ）、ならびに既知の方位角範囲／角度のカメラ２６を使用して、図１の位置決めおよび配向モジュール４４によって判定されてもよい。図３には示されていないが、位置決めおよび配向モジュール４４はまた、例えば、視野２２２がｚ方向の無限のカバレッジを仮定するのではなく、円錐状の形状を有するように、ｚ方向の視野２２２の範囲を知り得る。
【００９８】
この例のシナリオでは、位置２０６および２０８のオブジェクトはデバイス／ユーザの現在の視野２２２内にあり、位置２０４および２１０のオブジェクトは存在しない。図１の体験プロビジョニングユニット６２は、例えば、ノード位置（ＡＲデータベース７２に記憶されている）、ＡＲモバイルデバイスの位置２２０および配向（位置決めおよび配向モジュール４４によって判定され、ウェブサービスインターフェース６０を介して転送される）、およびカメラ２４の視野の既知のまたは推定された特性に基づいて、判定を行ってもよい。どのオブジェクト／ノードが視野２２２内にあるかの判定に基づいて、体験プロビジョニングユニット６２は、ノードマーカ（および／または特定のノード体験）が位置２０６および２０８のオブジェクトについてのみ提示されるべきであることを示すデータをＡＲモバイルデバイス１２に送信してもよい。ノード体験モジュール４６は、そのデータを処理し、それに応答して、位置２０６および２０８に対応するノードマーカおよび／もしくはディスプレイ２２上の点またはその近くの他の情報を重ね合わせてもよい。
【００９９】
例示的なＡＲユーザインターフェース
ＡＲディスプレイ（例えば、図１のＡＲモバイルデバイス１２のディスプレイ２２）上に重ね合わされ得る１セットの例示的なユーザインターフェースが、図４Ａ〜図４Ｈに関連してここで説明される。説明を簡単にするために、図１のＡＲシステム１０についても参照するが、図示されるユーザインターフェースは代わりに他のシステムで使用されてもよい。ユーザの選択が行われ得るユーザインターフェースについて、選択は、特定のメニューオプションを直接見るユーザによって行われてもよい（例えば、ユーザインターフェースが、ディスプレイ２２の中心に対する固定位置ではなく、環境に対する固定位置を有する場合）。他の実施形態では、選択は、ユーザが適切な音声コマンドを発すること、キーボードまたはタッチスクリーン上にデータを入力すること、または別の好適な方法で行われてもよい。
【０１００】
まず、図４Ａを参照すると、ユーザインターフェース２００は、図１に関連して上述されたように、ユーザに特定の「役割」を選択することを可能にする。ユーザインターフェース２００は、ＡＲアプリケーション３２の起動時に、または別の好適なときユーザに表示されてもよい。ＡＲアプリケーション３２は、ウェブサービスインターフェース６０を介してバックエンドサーバ１４に照会することによって、利用可能な役割を先験的に知り得、または利用可能な役割について通知され得る。役割が選択されると、役割識別モジュール４０は、役割を示すデータをウェブサービスインターフェース６０を介してバックエンドサーバ１４に送信してもよい。体験プロビジョニングユニット６２、アラート生成ユニット６８、および／またはバックエンドサーバ１４の他の構成要素は、上述されたように、次いで、選択された役割を利用して、拡張する適切なノード、適切な種類の体験および／または特定のノードに対するコンテンツなどを判定してもよい。
【０１０１】
図４Ｂは、（近接度またはユーザ役割などの任意の他の基準を対象とする）ユーザの現在の視野内のいくつかまたは全てのオブジェクトのそれぞれのノードマーカとして機能し得るユーザインターフェース２２０を描画する。例示的なユーザインターフェース２２０は、オブジェクト／ノードのステータスを示すアイコン（丸で囲まれた「Ｘ」）および記述子（「ＳｔａｔｕｓＷｏｒｄ」）、ノード名（例えば、「ＥＳＤ−３」などのプロセス制御プラント内のデバイス識別子など）、ノードの短い記述（例えば、「非常停止スイッチ」など）、およびそれらの情報からユーザインターフェース２２０の底部の塗りつぶし円に至る垂直線を含む。塗りつぶし円（または他のインジケータ）は、ユーザの現実世界ビュー内の対応するオブジェクトの｛ｘ、ｙ、ｚ｝位置に、例えば、ユーザ（または別のユーザ）がノードを３Ｄマップに追加するときに集中した現実世界｛ｘ、ｙ、ｚ｝位置に配置されてもよい。テキストおよび線は、ＡＲモバイルデバイス１２およびユーザの垂直軸と位置合わせされたままにするために、必要に応じて回転してもよく、または例えば常にｚ軸に位置合わせされてもよい。
【０１０２】
ステータスアイコンおよび記述子は、オブジェクトに対して何らかのアクションが取られるべきか、および／またはオブジェクトに対して何らかの危険が存在するかどうかを示してもよい。例えば、図４Ｂに示される丸で囲まれた「Ｘ」は、「危険」のステータスに対応し、三角形の「！」は「警告」のステータスに対応し、菱形の「ｉ」は、「注意」のステータスに対応してもよく、「平常」のステータスにはどのアイコンも対応していなくてもよい。図４Ｂは、考えられるステータスアイコンの範囲を示しているが、ユーザインターフェース２２０は、この特定の実施形態および／またはシナリオに対して、丸で囲まれた「Ｘ」アイコンのみを含むことが理解される。特定のオブジェクト／ノードに描画されているステータスとそのステータスの意味は、ユーザの役割によって異なり得る。
【０１０３】
ユーザインターフェース２２０のノードマーカ（すなわち、図４Ｂのテキスト、線、および塗りつぶし円）は、ＡＲモバイルデバイス１２からの距離に応じてサイズが拡大され得、その結果、より近くのオブジェクトがより大きなノードマーカを有し、より遠くのオブジェクトは小さなノードマーカを有する。いくつかの実施形態では、例えば、ユーザインターフェース２２０は、追加のテキスト、追加のグラフィック、および／または色分け（例えば、「危険」ステータスの赤色テキストおよび線、「通常」ステータスの緑色テキストおよび線など）によるより多くの情報を含む。
【０１０４】
図４Ｃは、ユーザインターフェース２００でユーザ役割が選択された後、または別の好適なときに出現し得るユーザインターフェース２４０を描画する。ユーザインターフェース２４０の「＋」アイコンは、図１に関連して上述されたように、３Ｄマップに新しいノードの追加するためにユーザによって選択されてもよい。ヘルメットアイコンは、異なる役割を選択するためにユーザによって選択されてもよく、第３のアイコンは、以下で説明されるように、特定の設定を管理するためにユーザによって選択されてもよい。ユーザインターフェース２４０内の矩形のボックスは、システムメッセージをユーザに表示してもよい。例えば、メッセージボックスを使用して、アラート生成ユニット６８および／または位置ベースアラートモジュール５２によって生成されたアラートを表示してもよい。
【０１０５】
図４Ｄは、ユーザがユーザインターフェース２４０内の設定アイコンを選択した場合に出現し得るユーザインターフェース２６０を描画する。図４Ｄに示すように、ユーザインターフェース２６０は、ユーザにＡＲモバイルデバイス１２の名前または識別子、ランドマーク識別子、およびバックエンドサーバ１４の名前またはＩＰアドレスを変更することを可能にする。これらの値のいくつかまたは全ては、例えば、ウェブサービスインターフェース６０へのウェブサービスコールを行うときに、ＡＲモバイルデバイス１２によって使用されてもよい。
【０１０６】
図４Ｅは、ユーザがユーザインターフェース２４０内の「＋」（ノードの追加）アイコンを選択した場合に出現し得る単純なユーザインターフェース２８０を描画する。この例では、ユーザインターフェース２８０は、単に、ユーザが単に周囲を見回すことによって（例えば、ＡＲモバイルデバイス１２がＡＲヘルメットまたはゴーグル、またはスマートメガネである場合）、または別の方法でＡＲモバイルデバイス１２のカメラ２４を照準することによって（例えば、タブレットまたはスマートフォンの場合）、現実世界環境内の任意の位置に中心を置き得るレチクル（例えば、ユーザのディスプレイ２２の中央にある）である。ＡＲアプリケーション３２のノード作成モジュール４８は、（例えば、音声コマンドを発することによって）レチクルが適切に配置されたときに、ユーザが確認することを要求してもよく、またはカメラ２４の視野がいくつかの閾値期間に対して実質的に変化しない場合などに、適切な配置を仮定してもよい。
【０１０７】
図４Ｆは、ユーザがユーザインターフェース２８０のレチクルを位置決めした後に、および位置決めおよび配向モジュール４４が新しいオブジェクト／ノードを配置するために必要な位置および／または配向情報（例えば、ＡＲモバイルデバイス１２の位置、デバイス１２の配向、およびデバイス１２からオブジェクトまでの距離）を判定した後に、出現し得るユーザインターフェース３００を描画する。例示的なユーザインターフェース３００は、ユーザがノード名および／またはノード記述を入力するためのテキストボックスを含む。あるいは、この情報のいくつかまたは全ては、音声コマンド（例えば、ユーザがマイクアイコンを選択した場合）によって提供されてもよい。他の実施形態では、光学文字認識（ＯＣＲ）技術を使用してオブジェクトの一部分の画像を処理することによって、ノード名および／または記述が判定されてもよい。例えば、ユーザは、カメラ２４を、オブジェクトに貼付され、シリアル番号、モデル番号、または他の識別子を含む、タグまたはラベルに向けて方向付けてもよい。次いで、識別子は、ウェブサービスインターフェース６０を介してバックエンドサーバ１４に送信され、バックエンドサーバ１４に記憶された情報と相互参照されるか、または別のシステムもしくはデータベース（例えば、他のサーバ（複数可）１８のうちの１つ）に記憶されて、ノード名および／または記述を判定してもよい。
【０１０８】
図４Ｇは、ユーザが（例えば、ユーザインターフェース２２０のノードマーカを選択することによって）オブジェクト／ノードを選択したときに、その特定のオブジェクト／ノードに対して出現し得るユーザインターフェース３２０を描画する。ユーザインターフェース３２０は、例えば、バックエンドサーバ１４の体験プロビジョニングユニット６２によって提供されるノードの利用可能な体験を示すデータに基づいて、ノード体験モジュール４６によって生成されてもよい。例示的なユーザインターフェース３２０は、ユーザインターフェース２２０内のノードマーカ上に示されたノード名および記述、ならびに２つの矩形エリアを含む。ユーザインターフェース３２０の底部の塗りつぶし円は、ユーザインターフェース２２０内にあった（現実世界ビュー内の）オブジェクト上の同じ位置に留まり得る。図４Ｇのブランクの矩形で示される第１の「作業中」エリアは、（例えば、提供されているノード体験の種類および／またはユーザの役割に応じて）オブジェクトのステータス情報、オブジェクトの詳細なアラート情報など、選択されたオブジェクト／ノードに関する追加の情報を示してもよい。
【０１０９】
ユーザは、第２のエリアから所望の種類のノード体験を選択して、ノードに利用可能なもの（および場合によってはユーザの役割）を列挙してもよい。図４Ｇに見られるように、この例では、利用可能なノード体験は、「追加情報」（例えば、作業エリアに追加の種類のテキストベースの情報を提供するために）、「接続」（例えば、図４Ｈに関連し以下で説明されるように、他のオブジェクト／ノードへの物理的または論理的接続を示すために）、「情報リンク」（例えば、作業エリアにおいて、「ヘルプ」文書、インストラクションビデオ、または特定のＵＲＬにおける他のウェブページからの情報を表示するために）、「子オブジェクト」（例えば、作業エリアにおいて、選択されたオブジェクト／ノードの「子」として関連する他のオブジェクト／ノードとの関係を示すために）、「プロセス値」（例えば、作業エリアにおいて、他のサーバ（複数可）１８およびアプリケーション（複数可）１９のうちの１つから取得された制御プロセス値を示すために）、および「作業指示」（例えば、作業エリアにおいて、選択されたオブジェクト／ノード内で関連付けられている作業指示のテキストを示すために）を含む。
【０１１０】
図４Ｈは、ユーザがユーザインターフェース３２０内の「接続」アイコンを選択したときに出現し得るユーザインターフェース３４０を描画する。ユーザインターフェース３４０の場合、ノード体験モジュール４６は、現在選択されているオブジェクト／ノードの｛ｘ、ｙ、ｚ｝位置と、現在選択されているオブジェクト／ノードが物理的および／または論理的に接続されている（例えば、図１に関連して上述されたように）オブジェクト／ノードの｛ｘ、ｙ、ｚ｝位置との間の線をレンダリングする。ユーザインターフェース３４０の底部にある塗りつぶし円は前者の位置にあってもよい一方で、ユーザインターフェース３４０の上部の塗りつぶし円は後者の位置にあってもよい。当然のことながら、塗りつぶし円の相対位置は、シナリオに応じて変化してもよい（例えば、選択されたオブジェクト／ノードの円は、接続されたオブジェクト／ノードの円よりも現実世界ビューで高く出現し得る）。
【０１１１】
図４Ｈの実施形態では、ノード体験モジュール４６は、接続線を、ｙ軸に沿った距離および方向を示す第１のセグメント（現在選択されているオブジェクト／ノードで始まる）と、ｘ軸に沿った距離および方向を示す第２のセグメント（第１のセグメントの端部で始まる）と、ｚ軸に沿った距離と方向を示し、接続されたオブジェクト／ノードで終了する第３のセグメント（第２のセグメントの端部で始まる）と、の３つのセグメントにおいてレンダリングする。線セグメントは色分けされ、線フォーマット（破線、実線など）によって符号化され、および／または追加の情報（例えば、現在動作していない通信接続を示す赤い線）を提供する他の方法で符号化されてもよい。他の実施形態では、接続は、オブジェクト／ノード間の単一の線セグメント（例えば、ユーザからの距離を描くために線が広くなったり狭くなったりする）など、異なる方法で描画されてもよい。様々な異なる実施形態では、複数の異なるオブジェクト／ノードへの接続は、ユーザインターフェース３４０に示され得、またはユーザは、視覚化が望まれる各個々の接続をそれぞれ選択する必要があり得る。
【０１１２】
例示的なＡＲデータベース
図５Ａおよび図５Ｂは、（例えば、図２のプロセス制御環境１００で使用される場合の）図１のＡＲデータベース７２によって利用され得るデータベース構造４００を集合的に描画する。データベース構造４００において、各ボックスは、ＡＲデータベース７２に記憶され得るテーブルを表現し、各ボックスの最上部の行はテーブル名（例えば、「ノード」、「ノードステータス」など）である。テーブルは主キーを使用してリンクされ、各キーは図５Ａおよび５Ｂにキーアイコンおよび文字「ＰＫ」で示されている。
【０１１３】
データベース構造４００は、データ項目の効率的な相互参照を可能にし、既存のリンクを壊すことなくまたは広範な更新を必要とせずにユーザおよびシステムの更新を可能にする。例えば、「ノードＩＤ」主キーを使用すると、ユーザに、関連する他のテーブルを更新する必要なく、既存のノードに対する「ノード名」を変更することを可能にする。図５Ｂの「ＯＰＣＤＡの取得」テーブルは、図４Ｇに関連して上述された「プロセス値」ノード体験に対応し得る。
【０１１４】
例示的な強化仮想視角
図６および図７は、ＡＲプラットフォーム（例えば、図１のＡＲシステム１０によって提供される）が、ユーザの「仮想視覚」を強化する機能を提供する実施形態に関する。図６は、プロセス制御環境内（例えば、図２のプロセス制御環境１００内）の閉じたキャビネット内に「見る」ために使用される「仮想Ｘ線視覚」機能（図１に関連して上述された）を描画する一方で、図７Ａおよび図７Ｂは、プロセス制御環境のエリアのアクセス制限された（例えば、届きにくい、または危険な）エリアにあり、かつ／または、ユーザの現在の位置から離れている「アバター」（図１に関連しても上述された）がセンサ／送信機デバイスに対して提供される特定のシナリオを描画する。
【０１１５】
まず、図６の例を参照すると、閉じられた（および場合によってはロックされた）キャビネット５００は、Ｉ／Ｏカード、回路遮断器などのいくつかの内部構成要素（図６には示されていない）を含み得る。図１に関連して説明された基準のいずれかが満たされたときに（例えば、内部構成要素がＡＲモバイルデバイス１２の視野内にあり、閾値距離内にあり、かつ／またはキャビネット５００がユーザによって選択されているなど）、およびキャビネット５００が、不明瞭なオブジェクト／ノードを含むと判定された場合（また上述されたように、例えば、キャビネットと内部構成要素との間の既知の関係に基づいて、かつ／またはＱＲコードをスキャンすることなどによって）、図１の視覚強化モジュール５０は、ユーザインターフェース５２０をユーザの現実世界ビューに重ね合わせてもよい。
【０１１６】
ユーザインターフェース５２０は、内部構成要素の描画５２２を含む。描画５２２は、キャビネット５００内の実際の構成要素の、互いに対する実際の配置における画像であってもよい。他の実施形態では、描画５２２は、個別に、またはキャビネット５００内の相対的な配置を示すように、構成要素（例えば、３Ｄモデル、２Ｄモデルなど）の超現実的または擬似現実的なグラフィカル表現を含む。いずれの場合でも、描画５２２は、実際の内部構成要素を視認する場合のユーザの体験と同様のＡＲ体験をユーザに提供することができる。
【０１１７】
ユーザインターフェース５２０は、ユーザの現実世界ビューでキャビネット５００の上に直接重ね合わされ、隠された内部構成要素の実際の位置の上に描画５２２を位置合わせするように適切に拡大されてもよい。あるいは、ユーザインターフェース５２０は、おそらくは線またはいくつかの他の手段によって接続された、ユーザの現実世界ビューでキャビネット５００からオフセットされてもよい。
【０１１８】
描画５２２は、内部構成要素の個々のものに対するノードマーカ（例えば、図４Ｂのユーザインターフェース２２０に類似するもの）を、それらの構成要素が以前にマッピングされた程度まで含んでよく、または含まなくてよい。さらに、ユーザインターフェース５２０は、そのようなノードマーカを選択することによって、描画５２２自体を選択することによって、または適切な音声コマンドを発することによって、ユーザに様々なノード体験を選択することを可能にし得る。描画５２２またはユーザインターフェース５２０はまた、ユーザが描画５２２を自身のビューから却下するように選択することができる制御（例えば、１つの角部の「Ｘ」）を含んでもよく、または好適な音声コマンドが使用されてよい。
【０１１９】
ここで図７Ａを参照すると、方向インジケータ５５０は、特定のオブジェクト（ここでは、センサ／送信機デバイス）の描画、およびユーザの現実世界ビューに対するオブジェクトの一般的な方向を示す矢印を含む。図１の視覚強化モジュール５０は、例えば、リモートおよび／またはアクセス制限されたオブジェクトのアバターに関して、（図１に関連して）上述された条件のいずれかに応答して、ユーザの現実世界ビューの上に方向インジケータ５５０を重ね合わせてもよい。例示的な方向インジケータ５５０におけるデバイスの描画は、現実的なモデルまたは画像であるが、当然のことながら、他のフォーマット（例えば、アウトライン、アニメーション、ビデオなど）も可能である。
【０１２０】
ユーザが方向インジケータ５５０を選択した場合、視覚強化モジュール５０は、図７Ｂに示されるように、ユーザの現実世界ビューに「アバター」５６０を重ね合わせてもよい。図７Ｂに示されるアバター５６０は、方向インジケータ５５０におけるオブジェクトの描画と同一であるが、他の実施形態では、アバター５６０は、方向インジケータ５５０における描画（存在する場合）よりも詳細かつ／または現実的である。図６の描画５２２と同様に、アバター５６０は、実際のオブジェクト（ここではセンサ／送信機デバイス）を近接して視認する場合と似たＡＲ体験をユーザに提供し得る。実際に、上述されたように、図６の仮想Ｘ線視覚機能は、単に図７Ｂに示された視覚強化の特殊なケースであり得、図６の描画５２２は、キャビネット５１０内で囲まれた様々な構成要素のアバターの集合である。
【０１２１】
ユーザがアバター５６０を選択するか、または適切な音声コマンドを発する場合、視覚強化モジュール５０は、ユーザの現実世界ビュー内のアバター５６０の近くにユーザインターフェース５７０を重ね合わせてもよい。あるいは、ユーザインターフェース５７０には、アバター５６０または任意の音声コマンドの任意のユーザ選択を必要とすることなく、デフォルトで、アバター５６０が提示されてもよい。図７Ｂの例示的なユーザインターフェース５７０は、プロセス値（ここでは、センサ読み取り値）を提供し、（ここでは較正プロセスを開始することによって）デバイスのユーザ制御を可能にするノード体験に対応する。このノード体験を可能にするために、図１の体験プロビジョニングユニット６２は、上述されたように、他のサーバ（複数可）１８によって実行されるアプリケーション（複数可）１９のうちの１つ以上と通信してもよい。例えば、体験プロビジョニングユニット６２は、プロセス制御アプリケーションを起動させるか、またはＡＰＩなどを使用して実行中のプロセス制御アプリケーションと対話してもよい。
【０１２２】
例示的な３Ｄマッピング方法
図８は、モバイルデバイスを使用して現実世界のプロセス制御環境（例えば、図２のプロセス制御環境１００）をマッピングする例示的な方法６００を描画する。方法６００は、例えば、図１のＡＲモバイルデバイス１２または別の好適なモバイルデバイスを使用して実施され得る。いくつかの実施形態では、ＡＲ機能のないモバイルデバイスが使用されてもよい。
【０１２３】
ブロック６０２において、モバイルデバイスは、プロセス制御環境内の基準または「ランドマーク」位置に登録される。登録は、基準位置に位置しているコード（例えば、ＱＲコードまたは他の画像）の視覚的表現をスキャンするために、モバイルデバイスのカメラ（例えば、図１のカメラ２４）を使用することを含み得る。コードは、例えば、壁（例えば、プレートまたはポスター）上にあってよい。
【０１２４】
ブロック６０４において、モバイルデバイスがユーザによってプロセス制御環境を通って移動されると、モバイルデバイスの少なくとも１つのＩＭＵ（例えば、図１のＩＭＵ２６）を使用して、モバイルデバイスの基準位置に対する３Ｄ位置を追跡し、モバイルデバイスの配向を追跡する。ブロック６０４は、ユーザが（例えば、モバイルデバイスの電源を切ることによって、またはモバイルデバイス上で実行されるアプリケーションを閉じることなどによって）ＡＲ体験を終了するまで、無期限に（例えば、ブロック６０６ないし６１０まで同時に）継続してもよい。ブロック６０４における追跡はまた、モバイルデバイスカメラも使用してもよい。例えば、ＶＩＯ技術を使用して、モバイルデバイスの位置および配向を追跡してもよい。
【０１２５】
ブロック６０６において、新しいノードがプロセス制御環境の３Ｄマップに追加されるべきであることを示すユーザ入力が、モバイルデバイスにおいて検出される。ユーザ入力は、例えば、ユーザ音声コマンド（例えば、「ノードの追加」）、またはメニューオプションのユーザ選択（例えば、モバイルデバイスカメラを特定の位置に集中させることによる、またはキーボードまたはタッチスクリーンにデータを入力することによる）であってもよい。
【０１２６】
ブロック６０８において、追跡されたモバイルデバイスの３Ｄ位置および追跡されたモバイルデバイスの配向に少なくとも基づいて、（基準位置に対する）現実世界オブジェクトの３Ｄ位置が判定されるか、または判定させられ得る。一実施形態では、ブロック６０８は、モバイルデバイスのカメラを使用して（例えば、ユーザ入力が入力された時点で、またはその直後に）現実世界オブジェクトの画像を捕捉することを含む。次いで、モバイルデバイスとオブジェクトとの間の距離は、少なくとも、深度検知技術を使用してカメラ画像を処理することによって、画像から判定されてもよい。３Ｄ位置は、次いで、追跡された３Ｄ位置およびモバイルデバイスの配向ならびに判定された距離に基づいて、判定されるか、または判定させられ得る。
【０１２７】
いくつかの実施形態では、ブロック６０８において、オブジェクトの３Ｄ位置は、方法６００を実施するデバイス、システムなどによって、直接判定される。他の実施形態では、方法６００を実施するデバイス、システムなどは、例えば、ウェブサービスインターフェース（例えば、図１のウェブサービスインターフェース６０）を介して要求を行うことによって、別のデバイス、システムなどにオブジェクトの３Ｄ位置を判定させる。
【０１２８】
ブロック６１０において、少なくともオブジェクトの３Ｄ位置を新しいノードに関連させて記憶させることによって、ノードデータベースまたはライブラリが新しいノードを３Ｄマップに追加させられる。ブロック６１０は、例えば、ウェブサービスインターフェースを使用して、リモートサーバ（例えば、図１のバックエンドサーバ１４）に、少なくともノードデータベース内の新しいノードの３Ｄ位置（例えば、図１のＡＲデータベース７２）を記憶させることを含み得る。
【０１２９】
方法６００は、図８に示されていない１つ以上のブロックを含み得る。例えば、方法６００は、別のユーザ入力（例えば、音声コマンド、キーボード入力など）がモバイルデバイスにおいて受信され、ユーザ入力が新しいノードの識別子（例えば、名前）および／または記述を示すブロックを含み得る。そのような実施形態では、ブロック６１０は、新しいノードの識別子および／または記述をノードデータベース内の新しいノードに関連付けて記憶させることをさらに含み得る。
【０１３０】
別の例として、方法６００は、新しいノードが３Ｄマップに追加された後にプロセス制御環境のエリアをナビゲートする、異なるモバイルデバイスの後の動作（またはブロック６０２ないし６１０を実施する同じモバイルデバイスによる後の動作）に対応する追加のブロックを含み得る。第１のブロックでは、例えば、第２のモバイルデバイス（例えば、ＡＲモバイルデバイス１２または同様のデバイス）が、基準位置に登録されてもよい。その後、（基準位置に対する）第２のモバイルデバイスの３Ｄ位置および第２のモバイルデバイスの配向は、少なくとも第２のモバイルデバイスのＩＭＵを使用して（例えば、ＶＩＯ技術を使用して）、追跡されてもよい。次いで、トリガ条件は、例えば、（例えば、追跡された第２のモバイルデバイスの配向に基づいて）オブジェクトが第２のモバイルデバイスのカメラの視野内のエリア内にあることを判定すること、および／または（例えば、追跡された第２のモバイルデバイスの位置に基づいて）その物理的オブジェクトが第２のモバイルデバイスに近接していることを判定することによって検出されてもよい。トリガ条件の検出に応答して、新しいノードに関連付けられているデジタル情報は、第２のモバイルデバイスのディスプレイ上にまたはディスプレイを介して見られる現実世界ビューに重ね合わされ得てもよい（例えば、ノードマーカ、または上述された任意のノード体験に従って）。
【０１３１】
仮想Ｘ線視界を提供するための例示的な方法
図９は、現実世界のプロセス制御環境（例えば、図２のプロセス制御環境１００）において、ＡＲモバイルデバイスのユーザに仮想強化視覚（例えば仮想「Ｘ線視覚」）を提供するための例示的な方法６２０を描画する。方法６２０は、例えば、図１のバックエンドサーバ１４などのコンピューティングシステムまたはデバイスの１つ以上のプロセッサ、および／または図１のＡＲモバイルデバイス１２などのＡＲモバイルデバイスによって実施されてもよい。
【０１３２】
ブロック６２２において、プロセス制御環境のマップに関連付けられている特定のノード（「第１のノード」）が、現在、ＡＲモバイルデバイスのカメラ（例えば、図１のカメラ２４）の視野内にある特定の現実世界オブジェクト（「第１のオブジェクト」）に対応することが判定される。第１のオブジェクトは、例えば、図２に関連して図示または説明される任意のデバイス、または少なくとも部分的に不透明な任意の他の物理的オブジェクトであり得る。いくつかの実施形態では、第１のオブジェクトは、多数のより小さいデバイスまたは構成要素を含むように構成されたキャビネットなどの囲いである。
【０１３３】
いくつかの実施形態では、ブロック６２２は、ＡＲモバイルデバイスの現在の配向を検出すること、およびＡＲモバイルデバイスの現在の配向に基づいて、さらにマップによって示される第１のノードの位置に基づいて、第１のオブジェクトが、現在カメラの視野内にあることを判定することを含む。ブロック６２２はまた、ＡＲモバイルデバイスの現在の位置および第１のノード位置に基づいて、第１のオブジェクトがＡＲモバイルデバイスのいくつかの閾値距離（例えば、１０メートル、５０メートルなど）内にあることを判定することを含み得る。
【０１３４】
ブロック６２４において、第１のノードと、マップにも関連付けられている１つ以上の他のノードとの間の特定の関係が判定される。この関係は、１つ以上の他のノードに対応する１つ以上の他の現実世界オブジェクトが、第１のオブジェクトによって少なくとも部分的に不明瞭であることを（明示的または暗示的に）示す。例えば、ノードデータベース（例えば、ＡＲデータベース７２またはその一部分）は、第１のノードが、他のノード（複数可）（例えば、コントローラ、Ｉ／Ｏカード、スイッチなど）に対応するオブジェクト（複数可）を含むキャビネットまたは他の囲いに対応することを示すデータを記憶してもよく、ブロック６２４は、ノードデータベースに直接（例えば、ローカルメモリ内で）、または別のコンピューティングシステムを介してアクセスすることを含み得る。いくつかの実施形態では、第１のオブジェクトはＱＲコードまたは他の視覚的コードでマークされ、ブロック６２４は、コードをスキャンしてノード識別子を判定することと、（例えば、データベースに対するキーとして識別子を使用することによって）ノード識別子を使用して関係を判定することとの両方を含む。
【０１３５】
ブロック６２６において、１つ以上のデジタルモデルまたはデジタル画像は、メモリ（例えば、ローカルまたはリモートの永続メモリ）から取得され、モデル（複数可）または画像（複数可）が、少なくとも第１のオブジェクト（複数可）によって部分的に不明瞭であるオブジェクトを描画する。例えば、１つ以上の超現実的または擬似現実的な３Ｄモデル、２Ｄモデル、アニメーションモデル、デジタル画像、またはオブジェクト（複数可）のデジタルビデオは、メモリから取得されてもよい。
【０１３６】
ブロック６２８において、ＡＲモバイルデバイス（例えば、図１のディスプレイ２２）のディスプレイは、第１のオブジェクトが依然としてカメラの視野内にある間に、取得されたモデル（複数可）または画像（複数可）をユーザに提示させる。例えば、モデル（複数可）または画像（複数可）は、ディスプレイ上でユーザに提示されるか、またはディスプレイを通じてユーザによって見られる現実世界ビューに重ね合わせられてもよい。ブロック６２８は、例えば、ＡＲモバイルデバイスに、表示コンテンツの少なくともいくつかを送信すること、および／または表示命令を送信すること（例えば、図１のウェブサービスインターフェース６０を介して）を含み得る。
【０１３７】
方法６２０は、図９に示されていない１つ以上のブロックを含み得る。例えば、方法６２０は、１つ以上のノード体験が、不明瞭なオブジェクトについてユーザに提示される（例えば、最初にモデル（複数可）もしくは画像（複数可）とともに、またはさらなるアクション、特定の不明瞭なオブジェクトのモデルまたは画像のユーザ選択などに応答して）ブロックを含み得る。
【０１３８】
アクセス制限されたオブジェクトを視覚化するための例示的な方法
図１０は、ＡＲモバイルデバイスのユーザと、プロセス制御環境（例えば、図２のプロセス制御環境１００）のアクセス制限された（例えば、危険な、バリケードなど）エリアに存在し得る、現実世界オブジェクト（「第１のオブジェクト」）との間の対話を容易にする例示的な方法６４０を描画する。方法６４０は、例えば、図１のバックエンドサーバ１４などのコンピューティングシステムまたはデバイスの１つ以上のプロセッサ、および／または図１のＡＲモバイルデバイス１２などのＡＲモバイルデバイスによって実施されてもよい。
【０１３９】
ブロック６４２において、ユーザがプロセス制御環境を通って移動すると、ＡＲモバイルデバイスのディスプレイ（例えば、図１のディスプレイ２２）は、ＡＲモバイルデバイス（例えば、図１のカメラ２４）のカメラの視野内にある環境の部分にデジタル情報を重ね合わせる。重ね合わされた情報は、環境内の他の現実世界オブジェクトに対応するノードとともに、プロセス制御環境のマップ（例えば、３Ｄマップ）内のノードに関連付けられる。ブロック６４２は、例えば、ＡＲモバイルデバイスに、表示コンテンツの少なくともいくつかを送信すること、および／または（例えば、図１のウェブサービスインターフェース６０を介して）表示命令を送信することを含み得る。
【０１４０】
ブロック６４４において、第１のオブジェクトがカメラの視野内にない間に、ＡＲモバイルデバイスのディスプレイは、第１のオブジェクトへの方向を示す。指示は、例えば、テキスト、矢印、線、および／またはアニメーションを含み得る。ブロック６４２と同様に、ブロック６４４は、例えば、表示コンテンツのうちの少なくともいくつかを送信すること、および／または（例えば、図１のウェブサービスインターフェース６０を介して）表示命令をＡＲモバイルデバイスに送信することを含み得る。
【０１４１】
ブロック６４６において、ＡＲモバイルデバイスを介して行われ、第１のオブジェクトの選択を示すユーザ入力（例えば、第１のオブジェクトのユーザインターフェースを要求する音声コマンド）を検出した後、ディスプレイは、現在視野内にあるが第１のオブジェクトを含まないプロセス制御環境の一部分に、第１のオブジェクトのデジタルモデルまたは画像（すなわち、第１のオブジェクトの「アバター」）、および第１のオブジェクトのユーザインターフェースを重ね合わせる。アバターは、例えば、オブジェクトの超現実的または擬似現実的な３Ｄモデル、２Ｄモデル、アニメーションモデル、デジタル画像、またはデジタルビデオであってもよい。ユーザインターフェースは、第１のオブジェクトのユーザ制御（例えば、第１のオブジェクトを較正し、第１のオブジェクトの動作パラメータを設定するためのものなど）を可能にする１つ以上の仮想制御、および／またはステータス（例えば、診断テータス、保守テータス、動作テータスなど）に関連付けられている情報を表示する１つ以上の表示、第１のオブジェクトの設定、および／または出力（例えば、センサ読み取り値など）を含み得る。いくつかの実施形態では、ユーザインターフェースは、アバターと同時に提示されず、アバターまたは音声コマンドのユーザ選択に応答して（アバターとともに）出現する。
【０１４２】
いくつかの実施形態では、ブロック６４４における方向の指示は、第１のオブジェクトの選択を示すユーザ入力（すなわち、図１０に示されるシーケンス）を検出する前に発生する。そのようないくつかの実施形態では、方向インジケータ（例えば、第１のオブジェクトを含むオフ表示エリアに向けて指し示している矢印）は、（１）第１のオブジェクトがＡＲモバイルデバイスの閾値距離内にあること、および（２）第１のオブジェクトが現在カメラの視野内にないことを検出することに応答して、生成され、かつ表示されてもよい。方向インジケータのための他の好適なトリガまたは基準も可能である。例えば、インジケータは、第１のオブジェクトに関連する特定のユーザ役割を有するユーザにのみ提供されてもよい。
【０１４３】
他の実施形態では、第１のオブジェクトの選択を示したユーザ入力を検出した後に、方向の指示が代わりに発生する。例えば、ユーザは、第１のオブジェクト（例えば、第１のオブジェクトに対するユーザ「検索」）についてユーザインターフェースが取得されることを要求する音声コマンドを発してもよく、その後、方向インジケータ（および場合によってはアバター）が、ユーザの現実世界ビューに重ね合わせられる。
【０１４４】
デジタルモデルまたは画像は、方向インジケータおよび／または後段で表示されるかどうかを問わず、ウェブサービスインターフェースを使用してデータベースから（例えば、ウェブサービスインターフェース６０を使用して図１のＡＲデータベース７２から）取得されてもよい。
【０１４５】
一般的な考慮事項
ソフトウェアに実装する場合、本明細書に記載されるアプリケーションおよび機能のいずれかは、コンピュータまたはプロセッサのＲＡＭまたはＲＯＭ内で、磁気ディスク、レーザーディスク、半導体メモリデバイス、分子メモリ記憶デバイス、または他の記憶媒体などの任意の有形の非一過性のコンピュータ可読メモリ内に命令として、記憶されてもよい。本明細書で開示される例示的なシステムは、ハードウェア上で実行される他のコンポーネント、ソフトウェアおよび／またはファームウェアを含むものとして開示されるが、このようなシステムは、単なる例示であり、限定するものではないということに留意するべきである。例えば、これらのハードウェア、ソフトウェア、およびファームウェア構成要素のうちのいずれかまたは全てが、ハードウェアにのみ、ソフトウェアにのみ、あるいはハードウェアおよびソフトウェアの任意の組み合わせで、埋め込まれ得ることが企図される。したがって、本明細書に記載される例示的なシステムは、１つ以上のコンピュータデバイスのプロセッサで実行されるソフトウェアで実装されるものとして記載されているが、提供される例がかかるシステムを実装する唯一の方法ではないことを当業者は容易に理解するであろう。
【０１４６】
したがって、本発明は具体的な例に関して記載されてきたが、これらの例は例解的であるに過ぎず、本発明の限定であることを意図せず、変更、追加、または削除が、本発明の趣旨および範囲から逸脱することなく、開示される実施形態に対して行われ得ることが当業者には明らかであろう。
【図１】
2020535534.tif 000002
【図２】
2020535534.tif 000003
【図３】
2020535534.tif 000004
【図４Ａ】
2020535534.tif 000005
【図４Ｂ】
2020535534.tif 000006
【図４Ｃ】
2020535534.tif 000007
【図４Ｄ】
2020535534.tif 000008
【図４Ｅ】
2020535534.tif 000009
【図４Ｆ】
2020535534.tif 000010
【図４Ｇ】
2020535534.tif 000011
【図４Ｈ】
2020535534.tif 000012
【図５Ａ】
2020535534.tif 000013
【図５Ｂ】
2020535534.tif 000014
【図６】
2020535534.tif 000015
【図７Ａ】
2020535534.tif 000016
【図７Ｂ】
2020535534.tif 000017
【図８】
2020535534.tif 000018
【図９】
2020535534.tif 000019
【図１０】
2020535534.tif 000020
【国際調査報告】
2020535534.tif 000021
2020535534.tif 000022