(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-09-12
(54)【発明の名称】製造ツールの遠隔制御のための帯域幅調整
(51)【国際特許分類】
H04N 21/2662 20110101AFI20240905BHJP
H04N 21/24 20110101ALI20240905BHJP
H04N 7/15 20060101ALI20240905BHJP
【FI】
H04N21/2662
H04N21/24
H04N7/15
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2023575675
(86)(22)【出願日】2022-09-28
(85)【翻訳文提出日】2023-12-07
(86)【国際出願番号】 US2022044955
(87)【国際公開番号】W WO2023055757
(87)【国際公開日】2023-04-06
(32)【優先日】2021-09-29
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2022-07-18
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】500049141
【氏名又は名称】ケーエルエー コーポレイション
(74)【代理人】
【識別番号】110001210
【氏名又は名称】弁理士法人YKI国際特許事務所
(72)【発明者】
【氏名】ブレイン マイケル ディー
【テーマコード(参考)】
5C164
【Fターム(参考)】
5C164FA07
5C164FA10
5C164SB24S
5C164SB41P
5C164SC03P
5C164VA11S
5C164VA23P
5C164YA11
5C164YA24
(57)【要約】
方法は、製造設備内の製造ツールのコンピュータシステムで実行される。方法は、製造ツールのデータを示す一連のフレームを、クライアントデバイスに表示のために送信することを含む。クライアントデバイスは製造設備から遠隔にある。本方法はさらに、クライアントデバイスから、クライアントデバイスとのユーザインタラクションの指示を受信することと、指示に応答して、一連のフレームの1つ以上のフレームの帯域幅を調整することとを含む。一連のフレームの送信は、指示の受信後、表示のために1つ以上のフレームをクライアントデバイスに伝送することを含む。1つ以上のフレームは、調整済み帯域幅で伝送される。
【特許請求の範囲】
【請求項1】
製造ツールのコンピュータシステムの1つ以上のプロセッサが実行するための1つ以上のプログラムを記憶した非一時的コンピュータ可読記憶媒体であって、前記1つ以上のプログラムが、
前記製造ツール用のデータを示す一連のフレームを、前記製造ツールが配置されることになっている製造設備から遠隔にあるクライアントデバイスに、表示のために送信するための命令と、
前記クライアントデバイスから、前記クライアントデバイスとのユーザインタラクションの指示を受信したことに応答して、前記一連のフレームの1つ以上のフレームの帯域幅を調整するための命令とを含み、
前記一連のフレームを送信するための前記命令が、前記指示の受信後に、前記調整済みの帯域幅の前記1つ以上のフレームを、前記クライアントデバイスに表示のために伝送するための命令を含む、非一時的コンピュータ可読記憶媒体。
【請求項2】
前記一連のフレームの前記1つ以上のフレームの前記帯域幅を調整するための前記命令は、前記指示に応答して、前記1つ以上のフレームの少なくとも一部の解像度を調整するための命令を含む、請求項1に記載のコンピュータ可読記憶媒体。
【請求項3】
前記一連のフレームの前記1つ以上のフレームの前記帯域幅を調整するための前記命令は、前記指示に応答して、前記1つ以上のフレームのフレームレートを調整するための命令を含む、請求項1に記載のコンピュータ可読記憶媒体。
【請求項4】
前記製造ツールは、装置サプライヤーに関連し、
前記クライアントデバイスは、前記装置サプライヤーのクライアントデバイスである、請求項1に記載のコンピュータ可読記憶媒体。
【請求項5】
前記一連のフレームを送信するための前記命令は、前記指示を受信する前に、第1の解像度で第1のフレームのセットを送信するための命令を含み、
前記指示は、前記クライアントデバイスにユーザ入力として提供される文字を含み、
前記帯域幅を調整するための前記命令は、フレームの第2のセットの各フレームの少なくとも一部について、第2の解像度を選択するための命令を含み、
前記第2のセットは前記1つ以上のフレームを含み、
前記第2の解像度は前記第1の解像度よりも低く、
前記指示を受信したことに応答して、前記文字が前記第2のセットに含まれ、
前記1つ以上のフレームを伝送するための前記命令は、前記指示を受信した後で、前記第2の解像度を使用して表示するために前記第2のセットを前記クライアントデバイスに送信するための命令を含む、請求項1に記載のコンピュータ可読記憶媒体。
【請求項6】
前記第2の解像度は最低可用解像度である、請求項5に記載のコンピュータ可読記憶媒体。
【請求項7】
前記第1のセットの各フレームについて、前記フレーム全体が前記第1の解像度を有し、
前記第2のセットの各フレームについて、前記フレーム全体が前記第2の解像度を有する、
請求項5に記載のコンピュータ可読記憶媒体。
【請求項8】
前記文字は前記製造ツールのコマンドの一部であり、
前記第2のセットの各フレームが前記文字を含む、
請求項5に記載のコンピュータ可読記憶媒体。
【請求項9】
前記第2のセットの各フレームは、前記製造ツールのユーザインターフェースのコマンドラインに前記文字を含む、請求項8に記載のコンピュータ可読記憶媒体。
【請求項10】
前記帯域幅を調整するための前記命令が、前記第2のセットの各フレームについて、
前記コマンドラインに対して前記第1の解像度を維持する命令と、
前記コマンドライン外の前記フレームの残りの部分に対して前記第2の解像度を選択する命令と、を含む、請求項9に記載のコンピュータ可読記憶媒体。
【請求項11】
前記第2の解像度は、最低可用解像度である、請求項10に記載のコンピュータ可読記憶媒体。
【請求項12】
前記1つ以上のプログラムは、前記第2のセットに続く第3のセットのフレームに対して前記第1の解像度を選択する命令をさらに含み、
前記一連のフレームを送信するための前記命令は、前記第2のセットを送信した後に、前記第1の解像度を使用して表示するために前記第3のセットのフレームを前記クライアントデバイスに送信するための命令をさらに含む、請求項5に記載のコンピュータ可読記憶媒体。
【請求項13】
前記一連のフレームを送信するための前記命令は、前記指示を受信する前に、前記製造ツール用のビデオフィードから、表示のために前記クライアントデバイスに第1の解像度のビデオを送信するための命令を含み、
前記帯域幅を調整するための前記命令は、単一のフレームに対して第2の解像度を選択するための命令を含み、
前記単一のフレームは前記ビデオフィードからの静止画像を含み、
前記第2の解像度は前記第1の解像度よりも高く、
前記1つ以上のフレームを伝送するための前記命令は、前記指示の受信に応答して、
前記クライアントデバイスへのビデオの送信を停止させる命令と、
前記第2の解像度を使用した静的表示のために前記クライアントデバイスに前記単一のフレームを送信する命令と、
を含む、請求項1に記載のコンピュータ可読記憶媒体。
【請求項14】
前記ビデオおよび前記単一のフレームは、動作中の前記製造ツールの少なくとも一部を示す、請求項13に記載のコンピュータ可読記憶媒体。
【請求項15】
前記第2の解像度は最高可用解像度である、請求項13に記載のコンピュータ可読記憶媒体。
【請求項16】
前記指示は、前記クライアントデバイスにおける第1のユーザ入力の指示であり、
前記一連のフレームを送信するための前記命令は、前記クライアントデバイスにおける第2のユーザ入力の指示を受信したことに応答して、前記単一のフレームを前記クライアントデバイスに送信した後で、前記第1の解像度の前記ビデオを表示のために前記クライアントデバイスに送信することを再開するための命令をさらに含む、請求項13に記載のコンピュータ可読記憶媒体。
【請求項17】
前記指示は、前記クライアントデバイスのユーザにとって関心対象の前記一連のフレーム内の領域の指定を含み、
前記帯域幅を調整するための前記命令は、前記1つ以上のフレーム内の前記領域の解像度を増加させ、前記1つ以上のフレーム内の前記領域外の解像度を増加させないための命令を含み、
伝送するための前記命令は、前記領域に対して前記増加した解像度を使用して表示するために、前記1つ以上のフレームを前記クライアントデバイスに伝送するための命令を含む、請求項1に記載のコンピュータ可読記憶媒体。
【請求項18】
前記増加された解像度は、最高可用解像度である、請求項17に記載のコンピュータ可読記憶媒体。
【請求項19】
前記領域は、前記クライアントデバイスの前記ユーザからのユーザ入力によって定義される、請求項17に記載のコンピュータ可読記憶媒体。
【請求項20】
前記領域は、前記クライアントデバイスのアイトラッキングを用いて定義される、請求項17に記載のコンピュータ可読記憶媒体。
【請求項21】
前記指示は、ユーザインターフェース画面の指定を含み、
前記帯域幅を調整するための前記命令は、前記ユーザインターフェース画面内の領域の解像度を増加させるための命令を含み、前記領域は複数のユーザ入力から集約された情報によって定義され、また、前記1つ以上のフレーム内の前記領域外の解像度を増加させないための命令を含み、
伝送するための前記命令は、前記領域に対して前記増加した解像度を使用して表示するために、前記1つ以上のフレームを前記クライアントデバイスに伝送するための命令を含む、請求項1に記載のコンピュータ可読記憶媒体。
【請求項22】
前記製造ツールの前記コンピュータシステムは、前記製造設備に関連するサーバに通信可能に結合され、
前記一連のフレームを送信するための前記命令は、前記クライアントデバイスに転送するために前記一連のフレームを前記サーバに提供するための命令を含む、請求項1に記載のコンピュータ可読記憶媒体。
【請求項23】
製造ツールであって、
製造されている製品を加工または検査するためのハードウェアと、
前記ハードウェアを制御するコンピュータシステムとを備え、前記コンピュータシステムが、1つ以上のプロセッサと、前記1つ以上のプロセッサが実行するための1つ以上のプログラムを記憶するメモリとを備え、前記1つ以上のプログラムは、
前記製造ツールのデータを示す一連のフレームを、前記製造ツールが配置されることになっている製造設備から遠隔にあるクライアントデバイスに、表示のために送信させる命令と、
前記クライアントデバイスから、前記クライアントデバイスとのユーザインタラクションの指示を受信したことに応答して、前記一連のフレームの1つ以上のフレームの帯域幅を調整する命令と、を含み、
前記一連のフレームを送信するための前記命令が、前記指示の受信後に、前記調整済みの帯域幅の前記1つ以上のフレームを、表示のために前記クライアントデバイスに伝送するための命令を含む、製造ツール。
【請求項24】
製造設備内の製造ツールのコンピュータシステムの1つ以上のプロセッサが実行するための1つ以上のプログラムを記憶した非一時的コンピュータ可読記憶媒体であって、前記コンピュータシステムは、前記製造設備に関連するサーバに通信可能に結合されており、前記1つ以上のプログラムは、
前記製造ツールのデータを示す一連のフレームに記述子を割り当てる命令と、
前記記述子を前記サーバに提供する命令と、
前記一連のフレームを、前記製造設備から遠隔のクライアントデバイスに転送するために、前記サーバに提供する命令と、を含み、
前記サーバは、前記記述子に少なくとも部分的に基づいた、前記クライアントデバイスが前記一連のフレームを受信することを認可されているという判定に従って、前記一連のフレームを前記クライアントデバイスに転送することになっている、非一時的コンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、製造設備内の製造ツールからリモートクライアントデバイスにデータを伝送することに関し、より具体的には、帯域幅(例えば、解像度および/またはフレームレート)を調整し、そのような伝送にセキュリティを提供することに関する。
【背景技術】
【0002】
(関連出願)
本出願は、2021年9月29日に出願された米国仮特許出願第63/249,599号の優先権を主張するものであり、この仮特許出願は、全ての目的のために参照によりその全体が組み込まれる。
【0003】
製造設備は、装置サプライヤーから供給される装置(すなわち、製造ツール)を含む。製造設備は、製造ツールに関して専門家の助力を得るために、装置サプライヤーの専門家と協働することを望む場合がある。この協働は、専門家が製造設備に出向く必要がないように、遠隔であることが望ましい。しかし、遠隔協働は、ネットワークの遅延のために困難である。専門家が製造設備から遠く離れている(例えば、地球の反対側)ことが多いという事実だけで、避けられない遅延が最低限発生する。ネットワーク帯域幅の制限により、さらなる遅延が発生し、遠隔協働が実用的でなくなる可能性がある(例えば、ビデオ圧縮を使用したとしても)。遠隔協働にはセキュリティリスクもある。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】米国特許出願公開第2015/0074749号
【特許文献2】米国特許出願公開第2013/0219012号
【発明の概要】
【発明が解決しようとする課題】
【0005】
製造設備では、製造されている製品および製品を製造するために使用される製造工程に関する高度に極秘の情報を所有している故に、コンピュータのセキュリティは製造設備にとって特に要注意問題である。
【課題を解決するための手段】
【0006】
いくつかの実施形態では、製造設備内の製造ツールのコンピュータシステムで方法が実行される。この方法は、製造ツールのデータを示す一連のフレームを、クライアントデバイスに表示するために送信することを含む。クライアントデバイスは製造設備から遠隔にある。本方法はさらに、クライアントデバイスから、クライアントデバイスとのユーザインタラクションの指示を受信することと、この指示に応答して、一連のフレームの1つ以上のフレームの帯域幅を調整することを含む。一連のフレームを送信することは、指示を受信した後で、表示のために調整済み帯域幅で1つ以上のフレームをクライアントデバイスに伝送することを含む。
【0007】
いくつかの実施形態では、非一時的コンピュータ可読記憶媒体は、製造ツールのコンピュータシステムの1つ以上のプロセッサが実行するための1つ以上のプログラムを記憶する。1つ以上のプログラムは、製造ツールのデータを示す一連のフレームを、クライアントデバイスに表示するために送信するための命令を含む。クライアントデバイスは、製造ツールが配置されることになっている製造設備から遠隔にある。1つ以上のプログラムは、クライアントデバイスとのユーザインタラクションの指示をクライアントデバイスから受信したことに応答して、一連のフレームの1つ以上のフレームの帯域幅を調整するための命令をさらに含む。一連のフレームを送信するための命令は、指示の受信後に、調整済みの帯域幅の1つ以上のフレームを、クライアントデバイスに表示するために伝送するための命令を含む。
【0008】
いくつかの実施形態では、製造ツールは、製造される製品を加工または検査するハードウェアと、ハードウェアを制御するコンピュータシステムとを含む。コンピュータシステムは、1つ以上のプロセッサと、1つ以上のプロセッサが実行するための1つ以上のプログラムを記憶するメモリとを含む。1つ以上のプログラムは、製造ツールのデータを示す一連のフレームを、クライアントデバイスに表示するために送信するための命令を含む。クライアントデバイスは、製造ツールが配置されることになっている製造設備から遠隔にある。1つ以上のプログラムは、クライアントデバイスとのユーザインタラクションの指示をクライアントデバイスから受信したことに応答して、一連のフレームの1つ以上のフレームの帯域幅を調整するための命令をさらに含む。一連のフレームを送信するための命令は、指示の受信後に、調整済みの帯域幅の1つ以上のフレームをクライアントデバイスに表示するために伝送するための命令を含む。
【0009】
いくつかの実施形態では、方法は、製造設備内の製造ツールのコンピュータシステムで実行される。コンピュータシステムは、製造設備に関連するサーバに通信可能に結合されている。方法は、製造ツールのデータを示す一連のフレームに記述子を割り当てることと、記述子をサーバに提供することと、一連のフレームを、製造設備から遠隔にあるクライアントデバイスに転送するためにサーバに提供することとを含む。サーバは、少なくとも部分的に記述子に基づいて、クライアントデバイスが一連のフレームを受信することを認可されているという判定に従って、一連のフレームをクライアントデバイスに転送する。
【0010】
いくつかの実施形態では、非一時的コンピュータ可読記憶媒体は、製造設備内の製造ツールのコンピュータシステムの1つ以上のプロセッサが実行するための1つ以上のプログラムを記憶する。コンピュータシステムは、製造設備に関連するサーバに通信可能に結合されている。1つ以上のプログラムは、記述子を、製造ツール用のデータを示す一連のフレームに割り当てる命令、記述子をサーバに提供する命令、および製造設備から遠隔のクライアントデバイスに転送するためにサーバに一連のフレームを提供する命令を含む。サーバは、少なくとも部分的に記述子に基づいて、クライアントデバイスが一連のフレームを受信することを認可されているという判定に従って、一連のフレームをクライアントデバイスに転送することになっている。
【0011】
いくつかの実施形態では、製造ツールは、製造される製品を加工または検査するハードウェアと、ハードウェアを制御するコンピュータシステムとを含む。コンピュータシステムは、製造ツールが配置される製造設備に関連するサーバに通信可能に結合されることになっている。コンピュータシステムは、1つ以上のプロセッサと、1つ以上のプロセッサが実行するための1つ以上のプログラムを記憶するメモリとを含む。1つ以上のプログラムは、製造ツールのデータを示す一連のフレームに記述子を割り当てるための命令と、記述子をサーバに提供するための命令と、製造設備から遠隔のクライアントデバイスに転送するために一連のフレームをサーバに提供するための命令とを含む。サーバは、記述子に少なくとも部分的に基づいた、クライアントデバイスが一連のフレームの受信を許可されているという判定に従って、一連のフレームをクライアントデバイスに転送することになっている。
【0012】
説明される様々な実施形態をより良く理解するために、以下の図面と併せて、以下の詳細な説明を参照されたい。
【図面の簡単な説明】
【0013】
【
図1】いくつかの実施形態による、製造設備内の製造ツールと装置サプライヤーのクライアントデバイスとの間の電子通信のためのネットワークアーキテクチャを示す図である。
【
図2A】いくつかの実施形態による、遠隔協働のために製造ツールのコンピュータシステムと通信可能に結合され、また、製造ツールのためのグラフィカルユーザインターフェースを表示するクライアントデバイスの例を示す図である。
【
図2B】いくつかの実施形態による、遠隔協働のために製造ツールのコンピュータシステムと通信可能に結合され、また、製造ツールのためのグラフィカルユーザインターフェースを表示するクライアントデバイスの例を示す図である。
【
図2C】いくつかの実施形態による、遠隔協働のために製造ツールのコンピュータシステムと通信可能に結合され、また、製造ツールのためのグラフィカルユーザインターフェースを表示するクライアントデバイスの例を示す図である。
【
図3】いくつかの実施形態による、製造ツールからクライアントデバイスへの通信のための帯域幅調整を実行する方法を示すフローチャートである。
【
図4】いくつかの実施形態による、
図3の方法のそれぞれの例である方法を示すフローチャートである。
【
図5】いくつかの実施形態による、
図3の方法のそれぞれの例である方法を示すフローチャートである。
【
図6】いくつかの実施形態による、
図3の方法のそれぞれの例である方法を示すフローチャートである。
【
図7】いくつかの実施形態による、製造ツールからクライアントデバイスへの通信にセキュリティを提供するための方法を示すフローチャートである。
【
図8】いくつかの実施形態による製造ツールのブロック図である。
【
図9】いくつかの実施形態による、製造設備サーバのブロック図である。
【
図10】いくつかの実施形態による、クライアントデバイスのブロック図である。
【発明を実施するための形態】
【0014】
同様の参照数字は、図面および明細書全体を通して対応する部分を指す。
【0015】
次に、添付の図面に例示されている様々な実施形態について詳細に言及する。以下の詳細な説明では、説明される様々な実施形態の完全な理解を提供するために、多数の具体的な詳細が記載される。しかしながら、当業者であれば、これらの具体的な詳細がなくても、説明された様々な実施形態を実施できることは明らかであろう。他の例では、実施形態の態様を不必要に不明瞭にしないように、周知の方法、手順、構成要素、回路、およびネットワークは詳細に説明されていない。
【0016】
図1は、いくつかの実施形態による、製造設備112内の製造ツール124と装置サプライヤー102のクライアントデバイス104との間の電子通信のためのネットワークアーキテクチャ100を示す。製造ツール124は、製造設備112内の1つ以上の製造プロセスに使用される製造設備(すなわち、資本設備)のアイテムである。いくつかの実施形態において、製造設備112は、半導体製造設備(すなわち、「半導体ファブ」または単に「ファブ」)であり、製造ツール124は、半導体ウェハを製造および検査するために使用される半導体製造装置および半導体検査装置を含む。例えば、それぞれの製造ツール124は、半導体製造ツールまたは半導体検査ツールであってもよい。他の実施形態では、製造設備112は、工場で製造された製品を製造および/または検査するための他の製造ツール124を有する別のタイプの工場である。装置サプライヤー102は、製造ツール124の少なくとも一部を供給(例えば、設計、製造、販売、および/またはサポート)する。
【0017】
製造設備112内の製造ツール124は、製造設備112に関連するサーバ114(例えば、製造設備サーバ900、
図9)の背後に位置する。いくつかの実施形態では、サーバ114は製造設備112内に位置する。あるいは、サーバ114は、(例えば、依然として製造設備112を運営する組織の管理下にありながら)別の位置にあってもよい。サーバ114は、製造設備112のコンピュータセキュリティを提供するゲートウェイとして機能する。製造ツール124は、製造設備112の内部であるネットワーク119を介してサーバ114と通信可能に結合されている。例えば、それぞれの製造ツール124(例えば、製造ツール800、
図8)は、それぞれの製造ツール124の動作を制御し、それぞれの製造ツール124の状態を報告するそれぞれのコンピュータシステム(例えば、コンピュータシステム801、
図8)を含む。これらのそれぞれのコンピュータシステムは、ネットワーク119を介してサーバ114と通信可能に結合されている。製造設備112はまた、ネットワーク119を介してサーバ114と通信可能に結合される他の電子デバイス120(例えば、コンピュータ、モバイル電子デバイスなど)を含む。ネットワーク119を介してネットワーク化された製造ツール124および電子デバイス120は、製造設備112の内部であるサブネット126を構成する。
【0018】
製造設備112は、装置サプライヤー102と遠隔で協働することを望む場合がある。例えば、製造設備112のエンジニア、技術者、またはオペレータは、装置サプライヤー102によって供給された1つ以上の製造ツール124の設置、操作、サービス、および/または修理に関して、装置サプライヤー102の専門家の助力を求めてもよい。専門家は、装置サプライヤー102または製造設備112から遠隔の別の場所(例えば、専門家の自宅)にあるクライアントデバイス104(例えば、コンピュータ)からこの助力を提供してもよい。専門家は、クライアントデバイス104を使用して、製造設備112の製造ツール124および/または電子デバイス120のコンピュータシステムにアクセスする。(したがって、専門家はクライアントデバイス104のユーザである)。例えば、専門家は、製造ツール124のコンピュータシステムにアクセスして、製造ツール124の状態をチェックしてもよく、製造ツール124からのデータをレビューしてもよく、製造ツール124の動作を制御してもよく、製造ツール124のレシピを書き込みまたは修正してもよく、製造ツール124の一部を示す画像またはビデオフィード(例えば、カメラ832からの、
図8)を見てもよく(例えば、製造ツール124の動作を見るため、または製造ツール124の機械的な問題をチェックするため)、および/または処理もしくは試験中の製品の画像を見てもよい(例えば、製品の状態を見て製造ツール124の性能を評価するために)。電子デバイス120は、専門家が製造設備112の誰かとビデオ会議をするため、および/または製造ツール124を見るためにアクセスしようとするカメラ122を含んでもよい。カメラ122は、専門家が見るための画像またはビデオフィードを提供してもよい。いくつかの実施形態において、電子デバイス120は、製造ツール124を遠隔で見るためのライブストリーミングを提供することが可能なカメラヘッドセットであってもよい。
【0019】
クライアントデバイス104は、装置サプライヤー102のゲートウェイ108の背後(または別の遠隔地)に位置してもよい。例えば、クライアントデバイス104は、装置サプライヤー102の内部であるネットワーク106を介してゲートウェイ108に通信可能に結合されている、装置サプライヤー102の複数のクライアントデバイス104のうちの1つである。ゲートウェイ108は、インターネット110を介してサーバ114と電子的に通信する。クライアントデバイス104は、いくつかの実施形態では、ネットワーク106、ゲートウェイ108、インターネット110、サーバ114、およびネットワーク119を介して、製造ツール124と電子的に通信する。
【0020】
遠隔協働を可能にするために、製造ツール124のコンピュータシステムは、製造ツール124のデータを示すフレームを遠隔のクライアントデバイス104に送信してもよい。フレームは、製造ツール124のためのユーザインターフェース(またはユーザインターフェース画面などの、その一部)を示し得る。フレームを遠隔のクライアントデバイス104に送信することで、製造ツール124のデータ(例えば、ユーザインターフェースまたはその一部)をクライアントデバイス104に表示することを可能にする。クライアントデバイス104での専門家は、ユーザインターフェースを使用して、製造ツール124にコマンドを送信することができる(例えば、
図2Aおよび
図2Bについて後述するように)。製造ツール124のコンピュータシステムは、方法300~600(
図3~6)について後述するように、フレームの帯域幅(すなわち、フレームの伝送に使用される帯域幅)を調整してもよい。例えば、製造ツール124のコンピュータシステムは、フレームおよび/またはフレームの一部に使用される解像度を調整してもよく、および/またはフレームレート(例えば、1秒当たりのフレーム)を調整してもよい。フレームの帯域幅を調整することにより、製造ツール124のコンピュータシステムからクライアントデバイス104へのフレームのタイムリーな伝送が可能になり(例えば、解像度および/またはフレームレートを低下させることにより)、その結果、専門家のユーザ体験を向上させる応答性が得られる。専門家が望む場合には、フレームレートを上げてビデオ品質を向上させてもよい。専門家が望む場合には、フレームおよび/またはフレームの一部に使用される解像度を調整して、より高い解像度を提供してもよい。ゲートウェイ108による後処理で、フレームレートを下げたことから生じ得るチョッピーを低減できる。
【0021】
製造設備112は、製造設備112が保有する機密事項(例えば、知的財産)を保護するために、装置サプライヤー102との遠隔協働を可能にしながら、セキュリティを維持しようとする。このような機密事項は、例えば、製造設備112で製造される製品の設計に関する情報や、製品の製造に使用される製造プロセスに関する情報を含む。装置サプライヤー102は、設備サポートを提供しながらセキュリティを維持するように努めて、装置サプライヤー102が保有する機密事項(例えば、知的財産)を保護する。このような機密事項は、例えば、装置サプライヤー102が提供する製造ツール124の設計に関する情報や、装置サプライヤー102が提供する製造ツール124の独自のサービス手順を含む。セキュリティを提供し、これらの機密事項を保護するために、サーバ114は、特定のクライアントデバイス104が特定の製造ツール124から特定のフレームを受信することを許可されているか否かを判定してもよい。サーバ114は、方法700(
図7)について後述するように、製造ツール124から受信した情報(例えば、フレームの記述子、フレームの分類子、ソース識別子、日付、および/または時刻)に少なくとも部分的に基づいてこの判定を行ってもよい。
【0022】
図2A~2Cは、いくつかの実施形態に従って、遠隔協働のために製造ツール124のコンピュータシステムと通信可能に結合されるクライアントデバイス104の例を示す。クライアントデバイス104の表示画面200は、製造ツール124のグラフィカルユーザインターフェース(GUI)202を表示する。GUI202は、製造ツール124のコンピュータシステムからクライアントデバイス104に送信されるフレームで提供される。
図2A~2Cの例では、GUI202は表示画面200全体を占める。あるいは、GUI202は、表示画面200の一部を占めるウィンドウ内に表示されてもよい。
【0023】
いくつかの実施形態では、GUI202は、専門家が製造ツール124のコンピュータシステムにコマンドを送信するために使用し得るコマンドライン204を含む。
図2Aでは、専門家は、(例えば、キーボード206を使用して)テキスト「Com」を既に入力している。このテキストは、クライアントデバイス104から製造ツール124のコンピュータシステムに送信されたものである。これに応答して、製造ツール124のコンピュータシステムは、コマンドライン204の「Com」を示すフレームをクライアントデバイス104に送信した。次に、専門家は、(例えば、キーボード206を使用して)第2の「m」を入力する。クライアントデバイス104は、第2の「m」を製造ツール124のコンピュータシステムに送信する。これに応答して、製造ツール124のコンピュータシステムは、新たなフレームをクライアントデバイス104に送信する。新たなフレームは、第2の「m」の入力を反映して、コマンドライン204に「Comm」を表示している。クライアントデバイス104は、新たなフレームを表示画面200に表示し、こうしてGUI202を更新する。専門家は、コマンドライン204にテキストを入力し続けてもよく(例えば、キーボード206を使用して)、GUI202はそれに応じて更新され、新たなテキストを表示し、クライアントデバイス104は、新たなテキストを製造ツール124のコンピュータシステムに伝送し、製造ツール124のコンピュータシステムは、コマンドライン204に、新たなテキストを示す新たなフレームで応答する。代替的に、または付加的に、ユーザ入力は、異なる方法(例えば、コマンドライン204とは異なるテキスト入力フィールドにおいて、および/またはGUI202において1つ以上のアフォーダンスを選択することによって)で提供されてもよく、GUI202は、ユーザ入力に応答して適宜更新され、クライアントデバイス104は、ユーザ入力の指示を製造ツール124のコンピュータシステムに伝送し、製造ツール124のコンピュータシステムは、ユーザ入力および/またはユーザ入力の結果を示す新たなフレームで応答する。GUI202がユーザ入力に応答して迅速に更新されることを可能にするために、ユーザ入力の指示の受信に応答して製造ツール124のコンピュータシステムによって送信されるフレームの解像度(例えば、予め定義されたフレーム数)は、低減(すなわち、劣化)され得る。フレームの解像度を劣化させると、フレームのサイズが小さくなるため、フレームの帯域幅が減少し、製造ツール124のコンピュータシステムからクライアントデバイス104へのフレームの伝送が高速化する。クライアントデバイス104へのフレームの伝送を高速化することにより、GUI202は、ユーザ入力の結果を速やかに反映し(例えば、新たに入力されたテキストを速やかに表示する)、その結果、専門家にとって応答性の良い感覚となる。一方、ユーザ入力に対する応答がタイムリーでない場合、専門家にとってフラストレーションの溜まるユーザ体験となり、遠隔協働が実用的でなくなる可能性がある。
【0024】
より一般的には、クライアントデバイス104は、クライアントデバイス104とのユーザインタラクション(すなわち、専門家のインタラクション)を検出してもよい。ユーザインタラクションは、(例えば、キーボード206および/またはGUI202におけるアフォーダンスの選択を通じて)明示的なユーザ入力を提供し得る。または、ユーザインタラクションは、専門家がGUI202を見ている間に、明示的なユーザ入力に相当しない専門家の挙動を検出してもよい。クライアントデバイス104は、この挙動の指示を製造ツール124のコンピュータシステムに送信してもよく、また、これに応答して製造ツール124のコンピュータシステムからGUI202を更新する(例えば、GUI202の全部または一部の解像度を調整する)1つ以上のフレームを受信してもよい。例えば、表示画面200上のGUI202の特定の領域208(
図2C)を見ることは、クライアントデバイス104とのユーザインタラクションである。クライアントデバイス104は、カメラ122を使用してアイトラッキングを実行して、専門家がGUI202内の領域208を見ていることを判定してもよい。領域208は、フレームがGUI202を提供するので、製造ツール124のコンピュータシステムからクライアントデバイス104に送信されたフレーム内の領域である。クライアントデバイス104は、領域208を指定する指示を製造ツール124のコンピュータシステムに送信し、それに応答して製造ツール124のコンピュータシステムから、GUI202を更新する(例えば、領域208の解像度を上げるが、GUI202の残りの部分の解像度は上げない)1つ以上のフレームを受信する。代替的に、領域208は、明示的なユーザ入力(例えば、マウスまたは他のユーザ入力デバイスを使用したクリックアンドドラッグ操作)によって規定されてもよい。いくつかの実施形態では、領域208は、以前に受信したユーザ入力も含めた複数のユーザ入力からの集約情報によって規定される。
図2Cでは領域208を長方形として示しているが、代わりに領域208は異なる形状(例えば、円形または楕円形)を有していてもよい。
【0025】
図3は、いくつかの実施形態による、製造ツール124からクライアントデバイス104への通信の解像度調整を実行するための方法300を示すフローチャートである。方法300は、製造設備112内の製造ツール124(例えば、装置サプライヤー102に関連する製造ツール124)のコンピュータシステムで実行される(302)。例えば、方法300は、製造ツール800(
図8)のコンピュータシステム801によって実行される。方法300は、通信の帯域幅管理を可能にし、クライアントデバイス104のユーザ(例えば、遠隔協働を提供する専門家)のユーザ体験を向上させる。
【0026】
方法300では、製造ツール124のデータを示す一連のフレームが、表示のためにクライアントデバイス104に送信される(304)。データの例は、限定しないが、製造ツール124の状態、製造ツール124の現在の動作(例えば、1つ以上の物理パラメータを含む)、製造ツール124の動作履歴(例えば、1つ以上の物理パラメータを含む)、および/または製造ツール124の結果に関するデータを含む。データは、製造ツール124の一部(例えば、休止中および/または動作中)、および/または製造ツール124を使用して処理もしくは試験(例えば、検査)されている製品を示す静止画像および/またはビデオを含み得る。クライアントデバイス104は、製造設備112から遠隔にある。クライアントデバイス104は、製造ツール124の装置サプライヤー102のクライアントデバイス104であってもよい。いくつかの実施形態では、一連のフレームは、クライアントデバイス104に転送するために、製造設備112に関連する(例えば、製造設備112内の)サーバ114に提供される(306)。
【0027】
クライアントデバイス104とのユーザインタラクションの指示が、クライアントデバイス104から受信される(308)。ユーザインタラクションの指示は、ユーザ入力の指示(例えば、
図2Aおよび
図2Bの例のように)または他のユーザ挙動の指示(例えば、
図2Cのアイトラッキングの例のように)であり得る。指示に応じて、一連のフレームの1つ以上のフレームの帯域幅が調整される(310)。いくつかの実施形態では、1つ以上のフレームの少なくとも一部の解像度が調整され(312)、および/または1つ以上のフレームのフレームレートが調整される(314)。1つ以上のフレームは、予め定義されたフレーム数であってもよい。帯域幅を調整する例を、方法400(
図4)、500(
図5)、600(
図6)について以下に示す。
【0028】
1つ以上のフレーム(すなわち、調整済み解像度のフレーム(複数可))は、表示のためにクライアントデバイス104に伝送される(316)。1つ以上のフレームは、調整済み帯域幅で伝送される(すなわち、1つ以上のフレームを伝送するために使用される帯域幅は、調整済み帯域幅である)。いくつかの実施形態では、1つ以上のフレームは、クライアントデバイス104に転送するために、製造設備112に関連する(例えば、製造設備112内の)サーバ114に提供される(318)。クライアントデバイス104は、1つ以上のフレームを、例えばGUI202(
図2A~2C)として表示してもよい。フレーム(複数可)全体の解像度が調整された場合、クライアントデバイス104は、調整済み解像度でフレーム(複数可)全体を表示する。フレーム(複数可)の一部のみの解像度が調整された場合、クライアントデバイス104は、フレーム(複数可)のその部分を調整済み解像度で表示し、フレーム(複数可)の残りの部分を未調整の解像度で表示する。フレームレートが調整された場合、クライアントデバイス104は、調整済みフレームレートで1つ以上のフレームを表示してもよい。
【0029】
1つ以上のフレームをクライアントデバイス104に伝送すること(316)は、一連のフレームをクライアントデバイス104に送信すること(304)とは別個に示されているが、ステップ316の伝送は、ステップ304の送信の一部と見なしてもよく、一連のフレームを送信すること(304)は、1つ以上のフレームを伝送すること(316)を含む。このように、ステップ316において伝送される1つ以上のフレームは、ステップ304において送信される一連のフレームの一部であり得る。一連のフレームのうち、クライアントデバイス104とのユーザインタラクションの指示を受信する前にクライアントデバイス104に送信される(304)フレームもあれば、クライアントデバイス104とのユーザインタラクションの指示を受信した後でクライアントデバイス104に送信される(304)(ステップ316の1つ以上のフレームも含めて)フレームもある。
【0030】
図4は、いくつかの実施形態による、方法300(
図3)の一例である方法400を示すフローチャートである。方法400において、一連のフレームを送信すること(304)(例えば、クライアントデバイス104に転送するために一連のフレームをサーバ114に提供すること(306))は、表示のためにクライアントデバイス104に第1の解像度のフレームの第1のセットを送信する(402)ことを含む。フレームの第1のセットは、ユーザインタラクションを受信する(308)前に送信される。
【0031】
ユーザインタラクションの受信(308)は、クライアントデバイス104へのユーザ入力として提供される文字の受信(404)を含む。例えば、
図2Aおよび
図2Bは、コマンドの一部である文字(第2の「m」)を受信することを示している。
【0032】
1つ以上のフレームの少なくとも一部の帯域幅を調整する(310)ことは、フレームの第2のセットの各フレームの少なくとも一部に第2の解像度を選択(406)することによって、1つ以上のフレームの解像度を調整することを含む。第2のセットは1つ以上のフレームを含む。第2の解像度は第1の解像度よりも低い。文字は、指示の受信に応答して、フレームの第2のセットに含まれる。いくつかの実施形態では、第2の解像度は、(408)最低可用解像度である。
【0033】
いくつかの実施形態では、第1のセットの各フレームのフレーム全体が第1の解像度を有し、第2のセットの各フレームのフレーム全体が第2の解像度を有する。例えば、GUI202全体が、
図2Aでは第1の解像度を有し、
図2Bでは第2の解像度を有してもよい。
【0034】
いくつかの実施形態では、文字は、製造ツール124に対するコマンドの一部である。第2のセットの各フレームは文字を含む。例えば、第2のセットの各フレームにおいて、文字は、製造ツール124のためのユーザインターフェースのコマンドライン(例えば、コマンドライン204、
図2A~2C)に位置している。1つ以上のフレームの帯域幅を調整すること(310)は、1つ以上のフレームの少なくとも一部の解像度を調整することを含み、これは、第2のセットの各フレームについて、コマンドラインについては第1の解像度を維持し、コマンドライン外のフレームの残りの部分については第2の解像度(例えば、最低可用解像度)を選択することを含み得る。例えば、
図2Bでは、コマンドライン204は第1の解像度を有し、コマンドライン外のGUI202の残りの部分は第2の解像度を有し得る。このようなフレームは、コマンドライン外で第2の解像度を使用することによりフレームサイズが小さくなるため、ユーザインタラクションに応答して(例えば、ユーザが
図2Bの第2の「m」を入力したことに応答して)迅速に伝送され得る。この応答性と、コマンドを入力する専門家にとって関心対象領域であり得るコマンドラインの高解像度とを組み合わせることにより、専門家にとって好ましいユーザ体験が得られる。
【0035】
1つ以上のフレームをクライアントデバイス104に送信する(316)(例えば、クライアントデバイス104に転送するために、1つ以上のフレームをサーバ114に提供する(318))ことは、フレームの第2のセットを、第2の解像度を用いて、表示のためにクライアントデバイス104に送信する(410)ことを含み、クライアントデバイス104は、第2の解像度を用いて第2のセットの1つ以上のフレームを、フレーム(複数可)全体または特定の部分(例えば、コマンドライン外の領域)に関して表示する。第2のセットは、ユーザインタラクションを受信(308)した後でクライアントデバイス104に送信される。
【0036】
いくつかの実施形態では、方法400は、第2のセットに続く第3のセットのフレームに第1の解像度を選択することをさらに含む。一連のフレームを送信する(400)こと(例えば、一連のフレームをクライアントデバイス104に転送するためにサーバ114に提供する(306))は、第1の解像度を使用して表示するために(例えば、第2のセットをクライアントデバイス104に送信した後に)、第3のセットのフレームをクライアントデバイス104に送信することをさらに含む。
【0037】
図5は、いくつかの実施形態による、方法300(
図3)の別の例である方法500を示すフローチャートである。方法500において、一連のフレームを送信する(304)こと(例えば、クライアントデバイス104に転送するために一連のフレームをサーバ114に提供する(306))は、製造ツール124のためのビデオフィードから第1の解像度でビデオを表示のためにクライアントデバイス104に送信する(502)ことを含む。いくつかの実施形態において、製造ツール124は製造ツール800の一例であり、ビデオフィードはカメラ832(
図8)によって提供される。ビデオは、フルモーションビデオであってもよいし、フルモーションビデオよりも低いフレームレートを有してもよい。ビデオは、クライアントデバイス104とのユーザインタラクションの指示を受信する(308)前に、クライアントデバイス104に送信される。
【0038】
いくつかの実施形態では、ユーザインタラクションの指示は、ユーザがキーボード206(
図2A~2C)上のキー(例えば、ホットキー)を打ったこと、またはGUI202(
図2A~2C)内のアフォーダンスを選択して、静止画像を示すことを選んでビデオを一時停止したことを示す。
【0039】
1つ以上のフレームの帯域幅を調整する(310)ことは、1つ以上のフレームの少なくとも一部の解像度を調整することを含み、これは、単一のフレームに対して第2の解像度を選択する(506)ことを含む。1つ以上のフレームの帯域幅を調整する(310)ことは、フレームレートをゼロに下げてビデオを一時停止することも含む。単一のフレームは、ビデオフィードからの静止画像を含む。第2の解像度は第1の解像度よりも高い。例えば、第2の解像度は(508)最高可用解像度である。静止画像は、ステップ502のビデオが記録された後に撮影されることもあれば、ステップ502のビデオのフレーム(例えば、最後のフレーム)に対応することもある。
【0040】
いくつかの実施形態では、ビデオおよび単一のフレームは、動作中の製造ツール124の少なくとも一部を示す。
【0041】
1つ以上のフレームをクライアントデバイス104に送信する(316)こと(例えば、クライアントデバイス104に転送するために1つ以上のフレームをサーバ114に提供する(318))は、指示を受信したことに応答して、クライアントデバイス104へのビデオの送信を中止する(510)こと、および第2の解像度を使用して静的に表示するために単一のフレームをクライアントデバイス104に送信する(512)ことを含む。このようにして、方法500は、専門家がビデオをほぼリアルタイムで見ること、また、関心対象画像を高解像度で見ることを可能にする。クライアントデバイス104では、第2の解像度で単一のフレームを生成し送信するのにかかる時間のため、ビデオが停止してから単一のフレームが表示されるまでの間に遅延があり得る。
【0042】
方法500は、静的表示のためにクライアントデバイス104に単一のフレームを送信(512)した後で、クライアントデバイス104との別のユーザインタラクションの指示(すなわち、ステップ308のユーザインタラクションが第1のユーザインタラクションであるのに対し、第2のユーザインタラクションの指示)をクライアントデバイス104から受信(514)することをさらに含み得る。例えば、ステップ308の指示は、クライアントデバイス104における第1のユーザ入力の指示であり、ステップ514の指示は、クライアントデバイス104における第2のユーザ入力の指示である。第2のユーザ入力は、ビデオを再開するために、キーボード206(
図2A~2C)のキー(例えば、ホットキー)を押すこと、またはGUI202(
図2A~2C)のアフォーダンスを選択することであり得る。これに応答して、製造ツール124のコンピュータシステムは、第1の解像度でのビデオフィードから、表示のためにクライアントデバイス104へのビデオの送信を再開する(516)。第2の解像度は、クライアントデバイス104でのビデオのスムーズな再生を可能にするには高すぎる場合があり(例えば、帯域幅および/またはメモリの制限によるフレームのドロップなしに)、したがって、いくつかの実施形態ではビデオに使用されない。
【0043】
図6は、いくつかの実施形態による、方法300(
図3)のさらに別の例である方法600を示すフローチャートである。方法600では、ステップ308で受信されたクライアントデバイス104とのユーザインタラクションの指示は、クライアントデバイス104のユーザにとって関心対象の一連のフレーム内の領域(例えば、領域208、
図2C)の指定を含む(602)。いくつかの実施形態では、領域は、クライアントデバイス104を使用する専門家からのユーザ入力(例えば、クリックアンドドラッグ操作)によって定義される(604)。他のいくつかの実施形態では、領域は、クライアントデバイス104のアイトラッキングを使用して定義される(606)。あるいは、領域は、製造ツール124のコンピュータシステムによって記憶された(例えば、複数のユーザ入力から集約された情報によって定義された)ユーザインターフェース画面の予め定義された領域であり、指示は、ユーザインターフェース画面を指定する(例えば、専門家が表示のためにユーザインターフェース画面をアクティブにしたことを示す)。
【0044】
1つ以上のフレームの帯域幅を調整すること(310)は、1つ以上のフレームの少なくとも一部の解像度を上げることを含み、これは、1つ以上のフレーム内の関心対象領域の解像度を上げること(608)を含む。例えば、領域の解像度は、最高可用解像度まで上げられる(610)。1つ以上のフレームにおける領域外の解像度(例えば、領域208の外側のGUI202の残りの部分、
図2C)は上げない(例えば、以前のフレームと同じままか、または下げられる)。
【0045】
1つ以上のフレームをクライアントデバイス104に伝送する(316)こと(例えば、1つ以上のフレームを、クライアントデバイス104に転送するためにサーバ114に提供する(318))は、指示を受信した後で、1つ以上のフレームを、クライアントデバイス104に、表示するためにその領域に関して解像度を上げて伝送する(612)ことを含む。
【0046】
方法400(
図4)、500(
図5)、および600(
図6)は組み合わせてもよい。例えば、特定の製造ツール124のコンピュータシステムは、方法400の1つ以上のインスタンス、方法500の1つ以上のインスタンス、および方法600の1つ以上のインスタンスを、任意の順序で実行してもよい。
【0047】
図7は、いくつかの実施形態による、製造ツール124からクライアントデバイス104への通信にセキュリティを提供するための方法700を示すフローチャートである。方法700は、製造設備112内の製造ツール124(例えば、装置サプライヤー102に関連する製造ツール124)のコンピュータシステムで実行される(702)。例えば、方法700は、製造ツール800(
図8)のコンピュータシステム801によって実行される。このコンピュータシステムは、製造設備112に関連する(例えば、製造設備112内の)サーバ114に通信可能に結合されている。
【0048】
方法700では、製造ツール124のデータを示す一連のフレームに記述子が割り当てられる(704)。記述子は、一連のフレーム内のデータのタイプを指定する。
【0049】
いくつかの実施形態では、一連のフレームは、製造ツール124のコンピュータシステムのためのユーザインターフェース(例えば、GUI202、
図2A~2C)を示す(706)。記述子はユーザインターフェースを指定する。ユーザインターフェースは、(例えば、ユーザがタブ、リンク、または他のアフォーダンスを使用して間をナビゲートし得る)いくつかの異なるユーザインターフェース画面を含んでもよく、一連のフレームは異なるユーザインターフェース画面を示す。それぞれの記述子は、それぞれのユーザインターフェース画面を指定し得る。
【0050】
いくつかの実施形態では、一連のフレームは、製造ツール124の物理パラメータの1つ以上の値を示す(708)。記述子は物理パラメータを指定する。物理パラメータの例は、限定はしないが、製造ツール124内の温度または光強度を含む。
【0051】
いくつかの実施形態では、一連のフレームに(例えば、記述子とともに)セキュリティ分類が割り当てられる(710)。セキュリティ分類は、一連のフレームの秘匿レベル(複数の秘匿レベルから選択される)を指定する。加えて、または代替的に、日付、時刻、および/またはソース識別子が、一連のフレームに関連付けられ(712)てもよい。ソース識別子は、製造ツール124を識別する。
【0052】
記述子はサーバ114に提供される(714)。一連のフレームにセキュリティ分類が割り当てられた場合(710)、セキュリティ分類はサーバ114に提供されてもよい(716)。日付、時刻、および/またはソース識別子が一連のフレームに関連付けられた(712)場合、日付、時刻、および/またはソース識別子がサーバ114に提供され(718)てもよい。
【0053】
一連のフレームは、製造設備から遠隔にあるクライアントデバイス104に転送するために、サーバ114に提供される(720)。サーバ114は、クライアントデバイス104が一連のフレームの受信を許可されているという、記述子に少なくとも部分的に基づく判定に従って、一連のフレームをクライアントデバイス104に転送する。セキュリティ分類がサーバ114に提供された(716)場合、判定は、少なくとも部分的に、セキュリティ分類にさらに基づいて(722)いてもよい。日付、時刻、および/またはソース識別子がサーバ114に提供された(718)場合、判定は、少なくとも部分的に、日付、時刻、およびソース識別子にさらに基づいて(724)いてもよい。いくつかの実施形態において、判定は、記述子、セキュリティ分類、日付、時刻、ソース識別子、装置サプライヤー、クライアントデバイス、および/または他の変数の関数として許可を記憶するルックアップテーブル(例えば、セキュリティモジュール914、
図9)においてルックアップを実行することによって行われる。
【0054】
いくつかの実施形態では、フレーム、記述子、セキュリティ分類、日付、時刻、および/またはソース識別子は、自己記述形式のデータパッケージでサーバ114に提供される。例えば、データパッケージは、JavaScript Object Notation(JSON)フォーマットまたはHyperText Markup Languageフォーマットを使用してもよい。
【0055】
製造ツール124のコンピュータシステムの代わりにサーバ114に、クライアントデバイス104がフレームを受信することを許可されているかどうかを判定させることにより、製造ツール124のコンピュータシステムの計算負荷が低減される(例えば、製造ツール124が軽くなることを可能にする)。製造ツール124のコンピュータシステムからの情報を使用して判定を行うことは、エンドツーエンドのセキュリティを可能にする。
【0056】
方法300(
図3)(例えば、
図4の方法400、
図5の方法500、または
図6の方法600)は、方法700(
図7)と組み合わされてもよい。例えば、1つ以上のフレームをサーバ114に提供すること(318、
図3~
図6)を含む、一連のフレームをサーバ114に提供すること(306、
図3~
図6)は、ステップ720(
図7)に従って実行され、サーバ114は、クライアントデバイス104が一連のフレームを受信することが許可されているという判定に従って、一連のフレームをクライアントデバイス104に転送する。
【0057】
図8は、いくつかの実施形態による製造ツール800のブロック図である。製造設備112(
図1)における製造ツール124の一例である製造ツール800は、ハードウェア830およびコンピュータシステム801を含む。ハードウェア830は、製造設備112において製造される製品(例えば、半導体ウェハ)を処理または検査する。コンピュータシステム801は、ハードウェア830を制御し、ハードウェア830の状態を報告する。ハードウェア830は、ハードウェア830の一部の画像(例えば、ビデオフィード)を提供するように配置されたカメラ832を含んでもよい。
【0058】
コンピュータシステム801は、1つ以上のプロセッサ802(例えば、CPU)、ユーザインターフェース806、メモリ810、1つ以上のネットワークインターフェース803、およびこれらのコンポーネントを相互接続する通信バス(複数可)804を含む。ネットワークインターフェース803は、ネットワーク119(
図1)を介して通信するために使用される。ユーザインターフェース806は、ディスプレイ807と、1つ以上の入力デバイス808(例えば、キーボード、マウス、ディスプレイ807のタッチセンシティブ表面など)とを含んでもよい。ディスプレイ807は、製造ツール800のグラフィカルユーザインターフェースを表示してもよい。
【0059】
メモリ810は、揮発性メモリおよび/または不揮発性メモリを含む。メモリ810(例えば、メモリ810内の不揮発性メモリ)は、非一時的コンピュータ可読記憶媒体を含む。メモリ810は、任意選択で、プロセッサ802から遠隔に位置する1つ以上の記憶装置、および/またはコンピュータシステム801に取り外し可能に挿入される非一時的コンピュータ可読記憶媒体を含む。いくつかの実施形態では、メモリ810(例えば、メモリ810の非一時的コンピュータ可読記憶媒体)は、オペレーティングシステム812、ハードウェア830を制御するためのハードウェア制御モジュール814、ユーザインターフェース(例えば、GUI202、
図2A~2C)および対応するフレームを生成するためのユーザインターフェースモジュール818、ならびにフレームを送信するための伝送モジュール824等のモジュールおよびデータを記憶する。ハードウェア制御モジュール814は、クライアントデバイス104から受信したコマンドを処理するためのコマンド処理モジュール816を含む。ユーザインターフェースモジュール818は、フレームを生成するためのフレーム生成モジュール820と、フレームの帯域幅を調整するための(例えば、フレームまたはその一部の解像度を設定するため、および/またはフレームレートを設定するための)帯域幅調整モジュール822を含む。フレーム生成モジュール820は、フレームに記述子を割り当て、フレームにセキュリティ分類子を割り当て、および/またはフレームに日付、時刻、および/またはソース識別子を関連付けてもよい。
【0060】
メモリ810(例えば、非一時的コンピュータ可読記憶媒体)は、方法300(
図3)(例えば、
図4の方法400、
図5の方法500、および/または
図6の方法600)および/または方法700(
図7)を実行するための命令を記憶する。メモリ810に記憶されたモジュールの各々は、本明細書に記載された1つ以上の機能を実行するための命令のセットに対応する。別個のモジュールは、別個のソフトウェアプログラムとして実装される必要はない。モジュールと、モジュールの様々なサブセットは、組み合わされてもよいし、そうでなければ再配置されてもよい。いくつかの実施形態では、メモリ810は、上記で特定したモジュールおよび/またはデータ構造のサブセットまたはスーパーセットを記憶する。
【0061】
図8は、構造概略図としてよりも、製造ツールおよびそのコンピュータシステムに存在し得る様々な特徴の機能的説明として意図されている。例えば、コンピュータシステム801の機能は、複数の装置間で分割されてもよい。メモリ810に記憶されたモジュールの一部は、代替的に、1つ以上のネットワークを介してコンピュータシステム801と通信可能に結合された1つ以上の他のコンピュータシステムに記憶されてもよい。
【0062】
図9は、いくつかの実施形態による、製造設備サーバ900のブロック図である。サーバ900は、製造設備112(
図1)に関連する(例えば、製造設備112内の)サーバ114の一例である。サーバ900は、1つ以上のプロセッサ902(例えば、CPU)、ユーザインターフェース906、メモリ910、1つ以上のネットワークインターフェース903、およびこれらのコンポーネントを相互接続する通信バス(複数可)904を含む。1つ以上のネットワークインターフェース903は、インターネット110および/またはネットワーク119(
図1)を介して通信するために使用される。ユーザインターフェース906は、ディスプレイ907と、1つ以上の入力デバイス908(例えば、キーボード、マウス、ディスプレイ907のタッチセンシティブ表面など)とを含み得る。ディスプレイ907は、遠隔サポート活動ならびに対応する要求、接続、および送信に関するグラフィカルユーザインターフェースを表示してもよい。
【0063】
メモリ910は、揮発性メモリおよび/または不揮発性メモリを含む。メモリ910(例えば、メモリ910内の不揮発性メモリ)は、非一時的コンピュータ可読記憶媒体を含む。メモリ910は、任意選択で、プロセッサ902から遠隔に位置する1つ以上の記憶装置、および/またはサーバ900に取り外し可能に挿入される非一時的コンピュータ可読記憶媒体を含む。メモリ910(例えば、メモリ910の非一時的コンピュータ可読記憶媒体)は、方法300(
図3)の全部または一部を実行するための命令を含む。いくつかの実施形態において、メモリ910(例えば、メモリ910の非一時的コンピュータ可読記憶媒体)は、オペレーティングシステム912、製造ツール124と遠隔のクライアントデバイス104との間の通信を認可するためのセキュリティモジュール914、および(例えば、製造ツール124およびクライアントデバイス104のための)通信を送受信するための通信モジュール916等のモジュールおよびデータを記憶する。メモリ910(例えば、セキュリティモジュール914)は、方法700(
図7)におけるステップ720(例えば、ステップ722および/または724を含む)の判定を行うための命令を(例えば、非一時的コンピュータ可読記憶媒体に)記憶する。
【0064】
メモリ910に記憶されたモジュールの各々は、本明細書に記載された1つ以上の機能を実行するための命令のセットに対応する。別々のモジュールを別々のソフトウェアプログラムとして実装する必要はない。モジュールと、モジュールの様々なサブセットは、組み合わされてもよいし、そうでなければ再配置されてもよい。いくつかの実施形態では、メモリ910は、上記で特定したモジュールおよび/またはデータ構造のサブセットまたはスーパーセットを記憶する。
【0065】
図9は、構造概略図というよりも、サーバに存在し得る様々な特徴の機能的説明として意図されている。例えば、サーバ900の機能は、複数のデバイス間で分割されてもよい。メモリ910に記憶されたモジュールの一部は、代替的に、1つ以上のネットワークを介してサーバ900と通信可能に結合された1つ以上の他のコンピュータシステムに記憶されてもよい。
【0066】
図10は、いくつかの実施形態によるクライアントデバイス1000のブロック図である。クライアントデバイス1000は、装置サプライヤー102のクライアントデバイス104の一例であってよい。クライアントデバイス1000は、1つ以上のプロセッサ1002(例えば、CPU)、ユーザインターフェース1006、メモリ1010、1つ以上のネットワークインターフェース1003、およびこれらのコンポーネントを相互接続する通信バス(複数可)1004を含む。1つ以上のネットワークインターフェース1003は、1つ以上のネットワーク(例えば、インターネット110および/またはネットワーク106、
図1)を介して通信するために使用される。クライアントデバイスはまた、通信バス(複数可)1004によって他のコンポーネントと相互接続されたカメラ1001(例えば、カメラ122、
図1~2C)を含んでもよい。ユーザインターフェース1006は、ディスプレイ1007(例えば、表示画面200、
図2A~2C)と、1つ以上の入力デバイス1008(例えば、
図2A~2Cのキーボード206、マウス、ディスプレイ1007のタッチセンシティブ表面等)とを含んでもよい。ディスプレイ1007は、遠隔サポート活動に関するグラフィカルユーザインターフェース(例えば、
図2A~2CのGUI202)を表示してもよい。
【0067】
メモリ1010は、揮発性メモリおよび/または不揮発性メモリを含む。メモリ1010(例えば、メモリ1010内の不揮発性メモリ)は、非一時的コンピュータ可読記憶媒体を含む。メモリ1010は、任意選択で、プロセッサ1002から遠隔に位置する1つ以上の記憶装置、および/またはクライアントデバイス1000に取り外し可能に挿入される非一時的コンピュータ可読記憶媒体を含む。いくつかの実施形態では、メモリ1010(例えば、メモリ1010の非一時的コンピュータ可読記憶媒体)は、オペレーティングシステム1012、遠隔製造ツール124とインタラクションするための製造ツール遠隔制御モジュール1014、およびユーザが見るディスプレイ1007上の領域(例えば、領域208、
図2C)を決定するためのアイトラッキングモジュール1020等のモジュールおよびデータを記憶する。製造ツール遠隔制御モジュール1014は、ユーザインターフェース(例えば、製造ツール124のコンピュータシステムからフレームで受信されるGUI202、
図2A~
図2C)を表示するためのユーザインターフェースモジュール1016と、ユーザ(すなわち、専門家)からのコマンドを受信し、製造ツール124のコンピュータシステムにコマンドを送信するためのコマンドモジュール1018とを含み得る。
【0068】
メモリ1010に記憶されたモジュールの各々は、本明細書に記載された1つ以上の機能を実行するための命令のセットに対応する。別々のモジュールを別々のソフトウェアプログラムとして実装する必要はない。モジュールおよびモジュールの様々なサブセットは、組み合わされてもよいし、そうでなければ再配置されてもよい。いくつかの実施形態では、メモリ1010は、上記で特定したモジュールおよび/またはデータ構造のサブセットまたはスーパーセットを記憶する。
【0069】
図10は、構造概略図としてよりも、クライアントデバイスに存在し得る様々な特徴の機能的説明として意図されている。例えば、クライアントデバイス1000の機能は、複数のデバイス間で分割されてもよい。メモリ1010に記憶されたモジュールの一部は、代替的に、1つ以上のネットワークを介してクライアントデバイス1000と通信可能に結合された1つ以上の他のコンピュータシステムに記憶されてもよい。
【0070】
前述の説明は、説明の目的で、特定の実施形態を参照して説明した。しかしながら、上記の例示的な説明は、網羅的であること、または特許請求の範囲を開示された正確な形態に限定することを意図するものではない。上記の教示に鑑みて、多くの修正および変形が可能である。実施形態は、特許請求の範囲の基礎となる原理およびその実際的な応用を最もよく説明するために選択され、それにより、当業者が、企図される特定の用途に適するように様々な変更を伴って実施形態を最もよく使用できるようにする。
【国際調査報告】