(57)【要約】作業セル内の産業機械類の安全動作を確実にすることに対する種々のアプローチは、作業セルの近位に複数の画像センサを配置し、画像センサのうちの少なくともいくつかを用いて、作業セルの画像の第１のセットを入手するステップと、少なくとも部分的に、画像の第１のセットに基づいて、センサを相互に位置合わせし、少なくとも部分的に、位置合わせに基づいて、画像の第１のセットをセンサの共通基準フレームに変換するステップと、センサの共通基準フレームを作業セルのグローバルフレームに変換するための変換行列を決定するステップと、センサを産業機械類に位置合わせするステップと、産業機械類の動作の間に画像の第２のセットを入手するステップと、少なくとも部分的に、入手された第２の複数の画像、変換、および産業機械類へのセンサの位置合わせに基づいて、その動作の間に産業機械類を監視するステップとを含む。
2021534990.tif 000002
【特許請求の範囲】
【請求項１】
作業セル内の産業機械類の安全動作を確実にする方法であって、
ａ．前記作業セルの近位に複数の画像センサを配置し、前記画像センサのうちの少なくともいくつかを用いて、前記作業セルの第１の複数の画像を入手するステップと、
ｂ．少なくとも部分的に、前記第１の複数の画像に基づいて、前記センサを相互に位置合わせし、少なくとも部分的に、前記位置合わせに基づいて、前記第１の複数の画像を前記センサの共通基準フレームに変換するステップと、
ｃ．前記センサの共通基準フレームを前記作業セルのグローバルフレームに変換するための変換行列を決定するステップと、
ｄ．前記複数のセンサを前記産業機械類に位置合わせするステップと、
ｅ．前記産業機械類の動作の間に第２の複数の画像を入手するステップと、
ｆ．少なくとも部分的に、前記入手された第２の複数の画像、変換、および前記産業機械類への前記センサの位置合わせに基づいて、その動作の間に前記産業機械類を監視するステップと
を含む、方法。
【請求項２】
前記第１の複数の画像をコンピュータ的に分析し、その間に十分な重複および十分な区別が存在することを検証するステップをさらに含む、請求項１に記載の方法。
【請求項３】
前記産業機械類は、少なくともロボットアームを備える、請求項１に記載の方法。
【請求項４】
前記作業セル内に際立った３Ｄシグネチャを有する少なくとも１つの実体を提供するステップをさらに含み、前記第１の複数の画像は、前記少なくとも１つの実体の画像を備える、請求項１に記載の方法。
【請求項５】
前記センサのそれぞれを前記実体に別個に位置合わせするステップと、
少なくとも部分的に、前記実体への各センサの別個の位置合わせに基づいて、前記センサを相互に位置合わせするステップと
をさらに含む、請求項４に記載の方法。
【請求項６】
前記センサのうちの少なくとも１つは、前記実体に可視であり、前記方法はさらに、
前記少なくとも１つのセンサを前記実体に位置合わせするステップと、
少なくとも部分的に、前記可視センサの前記実体への位置合わせ、前記センサの相互への位置合わせ、および前記産業機械類に対する前記実体の関連する姿勢に基づいて、前記複数のセンサを前記産業機械類に位置合わせするステップと
を含む、請求項４に記載の方法。
【請求項７】
前記少なくとも１つの実体の状態を識別するための外部入力を受信するステップをさらに含む、請求項４に記載の方法。
【請求項８】
前記外部入力は、ユーザ入力または前記少なくとも１つの実体を制御するコントローラから伝送される入力のうちの少なくとも１つを備える、請求項７に記載の方法。
【請求項９】
前記作業セル内のシーンの画像を提供するステップと、
前記シーンの画像上の離散特徴の１つ以上の対を決定するステップと、
少なくとも部分的に、前記離散特徴の１つ以上の対に基づいて、前記複数のセンサを前記産業機械類に位置合わせするステップと
をさらに含む、請求項１に記載の方法。
【請求項１０】
前記シーンの画像は、前記第１の複数の画像のうちの少なくとも１つを備える、請求項９に記載の方法。
【請求項１１】
前記シーンの画像は、前記作業セルをマッピングする３Ｄ点群データを備える、請求項９に記載の方法。
【請求項１２】
前記シーンの画像は、前記産業機械類または前記作業セルのうちの少なくとも１つの２Ｄまたは３Ｄ  ＣＡＤモデルを備える、請求項９に記載の方法。
【請求項１３】
前記産業機械類または前記作業セルに対して２Ｄまたは３Ｄ走査を実施するステップをさらに含み、前記シーンの画像は、少なくとも部分的に、前記２Ｄまたは３Ｄ走査に基づいて構築される前記産業機械類または前記作業セルのモデルを備える、請求項９に記載の方法。
【請求項１４】
ステップ（ｄ）に先立って、それぞれ、少なくとも１つの構成パラメータと関連付けられる、前記産業機械類の複数の画像を備える、位置合わせライブラリを確立するステップと、
前記位置合わせライブラリ内の前記複数の画像内の前記産業機械類の状態に対して前記シーンの画像内の前記産業機械類の状態をコンピュータ的に比較するステップと、
前記シーンの画像内の前記産業機械類の状態に最良に合致する前記産業機械類の状態を提供する、前記位置合わせライブラリ内の前記複数の画像のうちの１つを識別するステップと、
少なくとも部分的に、前記位置合わせライブラリ内の前記識別された画像に対応する前記構成パラメータに基づいて、前記複数のセンサを前記産業機械類に位置合わせするステップと
をさらに含む、請求項９に記載の方法。
【請求項１５】
前記構成パラメータは、前記産業機械類への前記センサの位置合わせを微調整するための反復回数、メッシュあたりの３Ｄ点群データの数、または収束基準のうちの少なくとも１つを備える、請求項１４に記載の方法。
【請求項１６】
前記第１の複数の画像を分析し、前記センサの視野によって網羅される前記作業セル内の面積を決定するステップと、
前記分析に基づいて、前記決定された面積、前記センサの視野によって網羅されない面積、最適なシーン網羅範囲を達成するための前記センサのうちの少なくとも１つに関する姿勢、または付加的センサのための設置場所のうちの少なくとも１つを識別するステップと
をさらに含む、請求項１に記載の方法。
【請求項１７】
前記識別された姿勢に基づいて、前記対応するセンサの姿勢を調節させるステップをさらに含む、請求項１６に記載の方法。
【請求項１８】
前記センサの視野によって網羅される前記面積の輪郭を描く信号または１つ以上の光ビームを前記作業セルの中に投影するステップをさらに含む、請求項１６に記載の方法。
【請求項１９】
前記作業セルの画像および前記センサの視野によって網羅される前記面積の輪郭を拡張現実または仮想現実デバイス上に投影するステップをさらに含む、請求項１８に記載の方法。
【請求項２０】
ｇ．前記産業機械類への前記複数のセンサの位置合わせの正確度レベルを示す初期正確度メトリックを発生させるステップと、
ｈ．ステップ（ｇ）に続いて、前記産業機械類の動作の間、前記位置合わせの正確度レベルを示す後続正確度メトリックが、閾値量を上回って前記初期正確度メトリックから逸脱するかどうかを決定し、該当する場合、前記産業機械類の動作を改変するステップと
をさらに含む、請求項１に記載の方法。
【請求項２１】
ステップ（ｈ）は、前記産業機械類の動作の間に入手される前記第２の複数の画像を周期的に分析し、（ｉ）前記正確度メトリックを再発生させ、（ｉｉ）前記再発生された正確度メトリックを前記初期正確度メトリックと比較し、それらの間の逸脱を決定し、（ｉｉｉ）前記逸脱が、閾値を超える場合、前記機械類の動作を改変するステップを含む、請求項２０に記載の方法。
【請求項２２】
前記メトリックは、位置合わせ検証またはリアルタイムロボット追跡のうちの少なくとも１つを含む、請求項２０に記載の方法。
【請求項２３】
グローバル最適化アルゴリズムを実装し、（ｉ）前記複数のセンサを相互に位置合わせし、（ｉｉ）前記複数のセンサを前記産業機械類に位置合わせするステップをさらに含む、請求項１に記載の方法。
【請求項２４】
作業セル内の産業機械類の安全動作を確実にするための制御システムであって、
前記作業セルの近位の複数の画像センサと、
コントローラであって、
前記画像センサのうちの少なくともいくつかを用いて、前記作業セルの第１の複数の画像を入手することと、
少なくとも部分的に、前記第１の複数の画像に基づいて、前記センサを相互に位置合わせし、少なくとも部分的に、前記位置合わせに基づいて、前記第１の複数の画像を前記センサの共通基準フレームに変換することと、
前記センサの共通基準フレームを前記作業セルのグローバルフレームに変換するための変換行列を決定することと、
前記複数のセンサを前記産業機械類に位置合わせすることと、
前記産業機械類の動作の間に第２の複数の画像を入手することと、
少なくとも部分的に、前記入手された第２の複数の画像、変換、および前記産業機械類への前記センサの位置合わせに基づいて、その動作の間に前記産業機械類を監視することと
を行うように構成される、コントローラと
を備える、システム。
【請求項２５】
前記コントローラはさらに、前記第１の複数の画像をコンピュータ的に分析し、その間に十分な重複および十分な区別が存在することを検証するように構成される、請求項２４に記載の制御システム。
【請求項２６】
前記産業機械類は、少なくともロボットアームを備える、請求項２４に記載の制御システム。
【請求項２７】
前記作業セル内に際立った３Ｄシグネチャを有する少なくとも１つの実体をさらに備え、前記第１の複数の画像は、前記少なくとも１つの実体の画像を備える、請求項２４に記載の制御システム。
【請求項２８】
前記コントローラはさらに、
前記センサのそれぞれを前記実体に別個に位置合わせすることと、
少なくとも部分的に、前記実体への各センサの別個の位置合わせに基づいて、前記センサを相互に位置合わせすることと
を行うように構成される、請求項２７に記載の制御システム。
【請求項２９】
前記センサのうちの少なくとも１つは、前記実体に可視であり、前記コントローラはさらに、
前記少なくとも１つのセンサを前記実体に位置合わせすることと、
少なくとも部分的に、前記可視センサの前記実体への位置合わせ、前記センサの相互への位置合わせ、および前記産業機械類に対する前記実体の関連する姿勢に基づいて、前記複数のセンサを前記産業機械類に位置合わせすることと
を行うように構成される、請求項２７に記載の制御システム。
【請求項３０】
前記少なくとも１つの実体の状態を識別するための外部入力を受信するための入力モジュールをさらに備える、請求項２７に記載の制御システム。
【請求項３１】
前記少なくとも１つの実体を制御する第２のコントローラをさらに備え、前記外部入力は、ユーザ入力または前記第２のコントローラから伝送される入力のうちの少なくとも１つを備える、請求項２８に記載の制御システム。
【請求項３２】
コントローラはさらに、
前記作業セル内のシーンの画像を提供することと、
前記シーンの画像上の離散特徴の１つ以上の対を決定することと、
少なくとも部分的に、前記離散特徴の１つ以上の対に基づいて、前記複数のセンサを前記産業機械類に位置合わせすることと
を行うように構成される、請求項２４に記載の制御システム。
【請求項３３】
前記シーンの画像は、前記第１の複数の画像のうちの少なくとも１つを備える、請求項３２に記載の制御システム。
【請求項３４】
前記シーンの画像は、前記作業セルをマッピングする３Ｄ点群データを備える、請求項３２に記載の制御システム。
【請求項３５】
前記シーンの画像は、前記産業機械類または前記作業セルのうちの少なくとも１つの２Ｄまたは３Ｄ  ＣＡＤモデルを備える、請求項３２に記載の制御システム。
【請求項３６】
前記コントローラはさらに、前記産業機械類または前記作業セルに対する２Ｄまたは３Ｄ走査を引き起こすように構成され、前記シーンの画像は、少なくとも部分的に、前記２Ｄまたは３Ｄ走査に基づいて構築される前記産業機械類または前記作業セルのモデルを備える、請求項３２に記載の制御システム。
【請求項３７】
前記コントローラはさらに、
ステップ（ｄ）に先立って、それぞれ、少なくとも１つの構成パラメータと関連付けられる、前記産業機械類の複数の画像を備える、位置合わせライブラリを確立することと、
前記位置合わせライブラリ内の前記複数の画像内の前記産業機械類の状態に対して前記シーンの画像内の前記産業機械類の状態をコンピュータ的に比較することと、
前記シーンの画像内の前記産業機械類の状態に最良に合致する前記産業機械類の状態を提供する前記位置合わせライブラリ内の前記複数の画像のうちの１つを識別することと、
少なくとも部分的に、前記位置合わせライブラリ内の前記識別された画像に対応する前記構成パラメータに基づいて、前記複数のセンサを前記産業機械類に位置合わせすることと
を行うように構成される、請求項３２に記載の制御システム。
【請求項３８】
前記構成パラメータは、前記産業機械類への前記センサの位置合わせを微調整するための反復回数、メッシュあたりの３Ｄ点群データの数、または収束基準のうちの少なくとも１つを備える、請求項３７に記載の制御システム。
【請求項３９】
前記コントローラはさらに、
前記第１の複数の画像を分析し、前記センサの視野によって網羅される前記作業セル内の面積を決定することと、
前記分析に基づいて、前記決定された面積、前記センサの視野によって網羅されない面積、最適なシーン網羅範囲を達成するための前記センサのうちの少なくとも１つに関する姿勢、または付加的センサのための設置場所のうちの少なくとも１つを識別することと
を行うように構成される、請求項２４に記載の制御システム。
【請求項４０】
前記コントローラはさらに、前記識別された姿勢に基づいて、前記対応するセンサの姿勢を調節させるように構成される、請求項３９に記載の制御システム。
【請求項４１】
前記コントローラはさらに、前記センサの視野によって網羅される前記面積の輪郭を描く信号または１つ以上の光ビームを前記作業セルの中に投影するように構成される、請求項３９に記載の制御システム。
【請求項４２】
前記コントローラはさらに、前記作業セルの画像および前記センサの視野によって網羅される前記面積の輪郭を拡張現実または仮想現実デバイス上に投影するように構成される、請求項４１に記載の制御システム。
【請求項４３】
前記コントローラはさらに、
ｇ．前記産業機械類への前記複数のセンサの位置合わせの正確度レベルを示す初期正確度メトリックを発生させることと、
ｈ．ステップ（ｇ）に続いて、前記産業機械類の動作の間、前記位置合わせの正確度レベルを示す後続正確度メトリックが、閾値量を上回って前記初期正確度メトリックから逸脱するかどうかを決定し、該当する場合、前記産業機械類の動作を改変することと
を行うように構成される、請求項２４に記載の制御システム。
【請求項４４】
前記コントローラはさらに、前記産業機械類の動作の間に入手される前記第２の複数の画像を周期的に分析し、（ｉ）前記正確度メトリックを再発生させ、（ｉｉ）前記再発生された正確度メトリックを前記初期正確度メトリックと比較し、それらの間の逸脱を決定し、（ｉｉｉ）前記逸脱が、閾値を超える場合、前記機械類の動作を改変するように構成される、請求項４３に記載の制御システム。
【請求項４５】
前記メトリックは、位置合わせ検証またはリアルタイムロボット追跡のうちの少なくとも１つを含む、請求項４３に記載の制御システム。
【請求項４６】
前記コントローラはさらに、グローバル最適化アルゴリズムを実装し、（ｉ）前記複数のセンサを相互に位置合わせし、（ｉｉ）前記複数のセンサを前記産業機械類に位置合わせするように構成される、請求項２４に記載の制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願）
本願は、その全開示が、参照することによって本明細書に組み込まれる、２０１８年８月３０日に出願された、米国仮特許出願第６２／７２４，９４５号の利益および優先権を主張する。
【０００２】
本発明は、一般に、３次元（３Ｄ）空間内のセンサに関し、特に、３Ｄ空間内のセンサの位置および配向の自動的推定を実施するためのシステムおよび方法に関する。
【背景技術】
【０００３】
産業機械類は、多くの場合、人間にとって危険である。いくつかの機械類は、これが、完全に運転停止されるまで、危険である一方、他の機械類は、種々の動作状態を有し得、そのうちのいくつかは、危険であり、そのうちのいくつかは、危険ではない。ある場合には、危険度は、機械類に対する人間の場所または距離に依存し得る。その結果、種々のタイプの「防護対策」機器が、人間および機械を分離するために開発され、それによって、機械類が人間に危害を及ぼさないように防止している。１つの非常に単純かつ一般的なタイプの防護対策は、ケージの扉の開放が、電気回路に機械類を安全状態にさせる（例えば、機械類を運転停止させる）ように構成される、機械類を囲繞するケージである。これは、人間が、これが安全ではない状態で動作している間に機械類に決して接近し得ないことを確実にする。
【０００４】
より洗練されたタイプの防護対策は、例えば、光学センサを伴い得る。実施例は、任意の物体が、１つ以上の光エミッタおよび検出器によって監視される領域の中に侵入したかどうかを決定する光カーテンと、センサから発する一連の光線に沿った障害物までの最小距離を検出するためにアクティブ光学感知を使用する（したがって、事前構成された２Ｄ区域の中への近接または侵入のいずれかを検出するように構成され得る）２次元（２Ｄ）ＬＩＤＡＲセンサとを含む。加えて、３Ｄ深度センサが、最近では、防護対策改良を提供するために、種々の機械防護対策用途において採用されている。３Ｄ深度センサの実施例は、３Ｄ飛行時間カメラ、３Ｄ  ＬＩＤＡＲ、およびステレオビジョンカメラを含む。これらのセンサは、３Ｄ内の産業機械類を囲繞する面積の中への侵入を検出および位置特定する能力を提供し、これは、それらに２Ｄセンサに優るいくつかの利点を与える。例えば、産業ロボットの周囲の床面積を防護する２Ｄ  ＬＩＤＡＲシステムは、侵入が、人物の脚を表す場合、その人物の腕は、はるかに近接し得、２Ｄ  ＬＩＤＡＲによって検出不可能であろうため、侵入が、ロボットから離れて腕の長さの距離を優に超えて検出されるとき、ロボットを停止させる必要性があるであろう。しかしながら、３Ｄシステムは、人物が、実際にロボットに向かって自身の腕を伸ばすまで、ロボットが動作し続けることを可能にすることができる。これは、機械のアクションと人間のアクションとの間のはるかに緊密な結合を可能にし、これは、多くの用途において柔軟性を提供し、常に限られている工場の床上の空間を節約する。
【０００５】
人間の安全性が、危うくなるため、防護対策機器（特に、電子バージョン）は、ＩＥＣ  ６１５０８およびＩＳＯ  １３８４９等の機能的安全性に関する厳しい業界標準に準拠しなければならない。これらの標準は、ハードウェアコンポーネントに関する故障率およびハードウェアおよびソフトウェアコンポーネントの両方に関する厳密な開発実践を規定し、システムは、ハードウェアおよびソフトウェアコンポーネントが、標準に準拠するときのみ、産業環境における使用に関して安全であると見なされる。標準準拠システムは、危険な条件およびシステム故障が、非常に高い確率で検出され得、システムが、制御されている機器を安全状態に遷移させることによってそのような事象に応答することを確実にしなければならない。例えば、安全システムは、未検出からもたらされる危険な結果を回避するために、未検出よりも誤検出を優先するように調整され得る。
【０００６】
しかしながら、人間および機械の分離は、生産性のために常に最適であるわけではない。例えば、いくつかのタスクは、人間および機械が協働して作業することによって最良に実施され、機械は、典型的には、より高い強度、より速い速度、より高い精度、およびより高い再現性を提供する一方、人間は、最先端の機械の能力さえもはるかに超える柔軟性、器用さ、および判断力を提供し得る。潜在的協働用途の実施例は、自動車におけるダッシュボードの配設であり、ダッシュボードは、重く、人間にとって操縦することが困難であるが、機械にとって容易であり、これを取り付けることは、正しく取り扱うために人間の器用さおよび柔軟性を要求する種々のコネクタおよび締結具を要求する。しかしながら、従来の防護対策技術は、本タイプの協働を可能にするために十分に柔軟性および適合可能ではない。したがって、これらの状況は、典型的には、多くの場合、多大な費用および複雑性において、人間によって最良に実施されるタスクの側面を自動化するか、またはロボットによってより良好に行われるタスクの側面を実施するように人間作業者を使用し（おそらく、リフト支援デバイス等の付加的機器を使用する）、反復性のストレス傷害または人間作業者にとって危険な状況への暴露につながり得る、潜在的に遅く、誤りがちな、非効率的な実行を許容するかのいずれかによって解決される。
【０００７】
３Ｄ感知に基づく改良された防護対策は、産業技師が、タスクの各サブセットが人間作業者の安全性を犠牲にすることなく人間または機械に最適に割り当てられるプロセスを設計することを可能にし得るが、いくつかの課題が、本質的に、安全重視環境内で３Ｄセンサを使用する際に存在する。最初に、センサ自体が、機能的安全標準を満たさなければならない。加えて、３Ｄセンサの未加工出力は、これが、２Ｄセンサによって提供されるデータよりもはるかに豊富であり、分析することが困難であるため、殆どの用途において直接使用されることができない。３Ｄセンサデータは、したがって、産業機械類に関する効果的かつ信頼性のある制御出力を発生させるために、新規の方法における処理を要求する。３Ｄデータに基づくシステムに関する別の課題は、システムおよび３Ｄセンサを構成および位置合わせすることの困難である。実際には、２Ｄセンサを用いても、安全防護対策を構成することは、困難であり得る。最初に、具体的区域が、通常、機械類によってもたらされる具体的危険、作業空間内の人間の可能性として考えられるアクション、作業空間レイアウト、および各個々のセンサの場所および視野を考慮して、使用事例毎に設計および構成される。特に、利用可能な床空間およびシステム処理能力を最大限にしながら、安全性を保全しようとするとき、除外区域の最適な形状を計算することは、困難であり得る。
【０００８】
したがって、防護対策技術を構成することは、高度な技能セットまたはツールを要求する。構成における誤りは、重大な安全上の問題をもたらし、設計および試験において有意なオーバーヘッドを要求し得る。本作業は全て、任意の変更が、作業空間に行われる場合、完全にやり直されなければならない。３Ｄシステム／センサによって提示される追加の自由度は、可能性として考えられる構成および危険のはるかに大きいセットをもたらし、それによって、未加工３Ｄセンサデータから有用な信頼性のある制御出力を発生させるために、より高いレベルのデータ処理を要求する。故に、３Ｄセンサによって入手されるデータの要求される処理時間および複雑性を低減させながら、機械類の周囲で動作するための人間の安全性を提供するために、作業空間を確実に監視するアプローチの必要性が、存在する。
【発明の概要】
【課題を解決するための手段】
【０００９】
本発明の種々の実施形態は、相互に対して、かつ制御下の１つ以上の機械類に対して位置合わせされる３Ｄセンサを使用して、安全目的のために作業空間を監視するためのシステムおよび方法を提供する。本明細書に使用されるように、用語「〜を位置合わせする」は、１つ以上の他の物体（例えば、ロボット、床、他のセンサ等）に対する物体（例えば、センサ）の相対的姿勢を推定するプロセスを指す。「位置合わせ」の目標は、基準フレームに対する剛体変換の観点から本関係を規定することである。
【００１０】
センサ間の位置合わせは、入手された画像の間に十分な重複および／または区別が、存在するとき、センサによって入手された作業空間の１つ以上の３Ｄ画像に基づいて確立されてもよい。例えば、従来のコンピュータビジョン技法（例えば、グローバル位置合わせアルゴリズム）および微細位置合わせアプローチ（例えば、ＩＣＰアルゴリズム）が、センサ間の位置合わせを実施するために実装されてもよい。センサの視野の間に不十分な重複が、存在する、および／または作業空間内の不十分な詳細が、入手された画像において提供される場合、３Ｄ内の際立ったシグネチャを有する１つ以上の位置合わせ物体が、センサ位置合わせのために利用されてもよい。代替として、各センサは、作業空間内に立っている、またはある時間周期にわたって作業空間全体を通して通過する１人以上の人物、移動する機器、または他の位置合わせ物体の画像を記録してもよく、十分な数の少なくとも部分的に合致する画像が、入手されるとき、画像は、センサ位置合わせを確立するために、組み合わせられ、処理されてもよい。センサ位置合わせが、完了した後、センサの共通基準フレームが、次いで、センサによって入手されたデータが、グローバルフレーム内で処理され得るように、作業空間のグローバル基準フレームに変換されてもよい。
【００１１】
種々の実施形態では、センサが、それら自体の間で位置合わせされた後、センサは、作業空間内の機械類に位置合わせされる。位置合わせは、機械類および／または際立った３Ｄシグネチャおよび機械類に対する関連する姿勢を有する位置合わせ標的を使用して確立されることができる。例えば、センサは、最初に、位置合わせ標的に位置合わせしてもよく、次いで、本位置合わせおよび機械類への位置合わせ標的の関連する姿勢に基づいて、センサは、機械類に位置合わせしてもよい。いくつかの実施形態では、センサによって視認される作業空間内のシーンの画像が、ユーザインターフェース上に提供される。加えて、コンピュータ支援設計（ＣＡＤ）および／または実際の機械類および／または作業空間の走査を使用して作成された機械類および／または作業空間の２Ｄまたは３Ｄモデルが、シーンの画像上に表示されてもよい。シーンの画像内の離散特徴および／または制約の１つ以上の対が、次いで、センサと機械類との間の位置合わせを確立するために、オペレータによって手動で、または制御システムによって自動的に選択されてもよい。種々の実施形態では、機械類へのセンサの自動化位置合わせは、作業空間内のセンサおよび機械類の以前の設定において確立される１つ以上の構成パラメータ（例えば、位置合わせを微調整するための反復回数、３Ｄ点群密度、メッシュ密度、１つ以上の収束基準等）を含む、位置合わせライブラリの使用を伴う。一実施形態では、シーンの画像内のロボットおよび／または機械類の状態は、位置合わせライブラリ内のシーンの記憶された画像内のロボットおよび／または機械類のものに対して比較され、位置合わせライブラリ内の最良に合致する状態を提供する画像が、識別されることができる。続けて、シーンの画像内の最良に合致される状態と関連付けられる構成パラメータが、読み出されることができ、それに基づいて、機械類へのセンサの位置合わせが、確立されてもよい。
【００１２】
機械類の動作の間、センサ間およびセンサと機械類との間の位置合わせは、リアルタイムで連続的に監視されることができる。例えば、作業空間内の静的要素のモデルへの観察されるデータの適合正確度を捕捉するメトリックのセット（例えば、位置合わせ検証、リアルタイムロボット追跡等）が、位置合わせプロセスの間に作成されてもよい。位置合わせの完了に応じて、本システムが、動作する際、メトリックは、リアルタイムで連続的に監視および更新されてもよい。メトリックまたはその初期値（すなわち、初期位置合わせの間に取得される）からのその逸脱が、規定された閾値を超える場合、システム動作の間の位置合わせは、無効であると見なされてもよく、エラー条件が、トリガされてもよい。続けて、動作中の機械類は、運転停止される、または安全状態に遷移されてもよい。加えて、機械類の動作の間にセンサによって入手された信号は、連続的に分析されてもよい。センサが、定位置に留まるが、視野が、不明瞭にされる、または遮断される、および／または測定されたセンサ信号が、劣化する場合、機械類は、同様に安全状態に遷移されてもよい。故に、種々の実施形態は、機械類の周囲で動作するための人間の安全性を提供するために、作業空間を確実に監視するアプローチを提供する。
【００１３】
故に、一側面では、本発明は、作業セル内の産業機械類の安全動作を確実にする方法に関する。種々の実施形態では、本方法は、作業セルの近位に複数の画像センサを配置し、画像センサのうちの少なくともいくつかを用いて、作業セルの第１の複数の画像を入手するステップと、少なくとも部分的に、第１の複数の画像に基づいて、センサを相互に位置合わせし、少なくとも部分的に、位置合わせに基づいて、第１の複数の画像をセンサの共通基準フレームに変換するステップと、センサの共通基準フレームを作業セルのグローバルフレームに変換するための変換行列を決定するステップと、複数のセンサを産業機械類に位置合わせするステップと、産業機械類の動作の間に第２の複数の画像を入手するステップと、少なくとも部分的に、入手された第２の複数の画像、変換、および産業機械類へのセンサの位置合わせに基づいて、その動作の間に産業機械類を監視するステップとを含む。一実施形態では、本方法はさらに、グローバル最適化アルゴリズムを実装し、（ｉ）複数のセンサを相互に位置合わせし、（ｉｉ）複数のセンサを産業機械類に位置合わせするステップを含む。
【００１４】
第１の複数の画像は、その間に十分な重複および十分な区別が存在することを検証するために、コンピュータ的に分析されてもよい。いくつかの実施形態では、産業機械類は、少なくともロボットアームを備える。本方法はさらに、ある実施形態では、作業セル内に際立った３Ｄシグネチャを有する少なくとも１つの実体を提供するステップを含み、第１の複数の画像は、少なくとも１つの実体の画像を備えてもよい。
【００１５】
種々の実施形態では、本方法はさらに、センサのそれぞれを実体に別個に位置合わせするステップと、少なくとも部分的に、実体への各センサの別個の位置合わせに基づいて、センサを相互に位置合わせするステップとを含む。ある場合には、センサのうちの少なくとも１つは、実体に可視であり、その場合では、本方法はさらに、少なくとも１つのセンサを実体に位置合わせするステップと、少なくとも部分的に、可視センサの実体への位置合わせ、センサの相互への位置合わせ、および産業機械類に対する実体の関連する姿勢に基づいて、複数のセンサを産業機械類に位置合わせするステップとを含んでもよい。加えて、本方法はさらに、実体の状態（例えば、配向、位置等）を識別するための外部入力（例えば、ユーザ入力または実体を制御するコントローラから伝送される入力）を受信するステップを含んでもよい。
【００１６】
本方法はさらに、作業セル内のシーンの画像を提供するステップと、シーンの画像上の離散特徴の１つ以上の対を決定するステップと、少なくとも部分的に、離散特徴の１つ以上の対に基づいて、複数のセンサを産業機械類に位置合わせするステップとを含んでもよい。種々の実施形態では、シーンの画像は、第１の複数の画像のうちの少なくとも１つ、作業セルをマッピングする３Ｄ点群データ、および／または産業機械類または作業セルのうちの少なくとも１つの２Ｄまたは３Ｄ  ＣＡＤモデルを備える。
【００１７】
いくつかの実施形態では、本方法はさらに、産業機械類または作業セルに対して２Ｄまたは３Ｄ走査を実施するステップを含み、シーンの画像は、少なくとも部分的に、２Ｄまたは３Ｄ走査に基づいて構築される産業機械類または作業セルのモデルを備える。ある場合には、位置合わせステップに先立って、産業機械類の複数の画像を備える、位置合わせライブラリが、確立され、各画像は、少なくとも１つの構成パラメータと関連付けられる。シーンの画像内の産業機械類の状態が、位置合わせライブラリ内の複数の画像内の産業機械類の状態に対してコンピュータ的に比較されてもよく、シーンの画像内の産業機械類の状態に最良に合致する産業機械類の状態を提供する、位置合わせライブラリ内の画像が、識別される。複数のセンサは、次いで、少なくとも部分的に、位置合わせライブラリ内の識別された画像に対応する構成パラメータに基づいて、産業機械類に位置合わせされてもよい。構成パラメータは、例えば、産業機械類へのセンサの位置合わせを微調整するための反復回数、メッシュあたりの３Ｄ点群データの数、および／または収束基準を備えてもよい。
【００１８】
種々の実施形態では、本方法はさらに、第１の複数の画像を分析し、センサの視野によって網羅される作業セル内の面積を決定するステップと、分析に基づいて、決定された面積、センサの視野によって網羅されない面積、最適なシーン網羅範囲を達成するためのセンサのうちの少なくとも１つに関する姿勢、または付加的センサのための設置場所のうちの少なくとも１つを識別するステップとを含む。識別された姿勢に基づいて、対応するセンサの姿勢は、調節されてもよい。
【００１９】
本方法はさらに、センサの視野によって網羅される面積の輪郭を描く信号または１つ以上の光ビームを作業セルの中に投影するステップを含んでもよい。代替として、または加えて、本方法は、作業セルの画像およびセンサの視野によって網羅される面積の輪郭を拡張現実または仮想現実デバイス上に投影するステップを含んでもよい。
【００２０】
本方法はさらに、種々の実施形態では、産業機械類への複数のセンサの位置合わせの正確度レベルを示す初期正確度メトリックを発生させるステップと、次いで、産業機械類の動作の間、位置合わせの正確度レベルを示す後続正確度メトリックが、閾値量を上回って初期正確度メトリックから逸脱するかどうかを決定し、該当する場合、産業機械類の動作を改変するステップとを含んでもよい。後者のステップは、産業機械類の動作の間に入手される第２の複数の画像を周期的に分析し、（ｉ）正確度メトリックを再発生させ、（ｉｉ）再発生された正確度メトリックを初期正確度メトリックと比較し、それらの間の逸脱を決定し、（ｉｉｉ）逸脱が、閾値を超える場合、機械類の動作を改変するステップを含んでもよい。メトリックは、位置合わせ検証またはリアルタイムロボット追跡のうちの少なくとも１つを含んでもよい。
【００２１】
別の側面では、本発明は、作業セル内の産業機械類の安全動作を確実にするための制御システムに関する。種々の実施形態では、本システムは、作業セルの近位の複数の画像センサと、コントローラであって、画像センサのうちの少なくともいくつかを用いて、作業セルの第１の複数の画像を入手し、少なくとも部分的に、第１の複数の画像に基づいて、センサを相互に位置合わせし、少なくとも部分的に、位置合わせに基づいて、第１の複数の画像をセンサの共通基準フレームに変換し、センサの共通基準フレームを作業セルのグローバルフレームに変換するための変換行列を決定し、複数のセンサを産業機械類に位置合わせし、産業機械類の動作の間に第２の複数の画像を入手し、少なくとも部分的に、入手された第２の複数の画像、変換、および産業機械類へのセンサの位置合わせに基づいて、その動作の間に産業機械類を監視するように構成される、コントローラとを備える。一実施形態では、コントローラはさらに、グローバル最適化アルゴリズムを実装し、（ｉ）複数のセンサを相互に位置合わせし、（ｉｉ）複数のセンサを産業機械類に位置合わせするように構成される。
【００２２】
コントローラはさらに、第１の複数の画像をコンピュータ的に分析し、その間に十分な重複および十分な区別が存在することを検証するように構成されてもよい。いくつかの実施形態では、産業機械類は、少なくともロボットアームを含む。加えて、制御システムはさらに、作業セル内に際立った３Ｄシグネチャを有する１つ以上の実体を含んでもよく、第１の複数の画像は、実体／複数の実体の画像を含む。
【００２３】
種々の実施形態では、コントローラはさらに、センサのそれぞれを実体に別個に位置合わせし、少なくとも部分的に、実体への各センサの別個の位置合わせに基づいて、センサを相互に位置合わせするように構成される。ある場合には、１つ以上のセンサは、実体に可視であり、その場合では、コントローラはさらに、センサを実体に位置合わせし、少なくとも部分的に、可視センサの実体への位置合わせ、センサの相互への位置合わせ、および産業機械類に対する実体の関連する姿勢に基づいて、複数のセンサを産業機械類に位置合わせするように構成されてもよい。加えて、本システムはさらに、実体を制御するための第２のコントローラと、実体の状態（例えば、配向、位置等）を識別するための外部入力（例えば、ユーザ入力または第２のコントローラから伝送される入力）を受信するための入力モジュールとを含んでもよい。
【００２４】
コントローラはさらに、作業セル内のシーンの画像を提供し、シーンの画像上の離散特徴の１つ以上の対を決定し、少なくとも部分的に、離散特徴の１つ以上の対に基づいて、複数のセンサを産業機械類に位置合わせするように構成されてもよい。種々の実施形態では、シーンの画像は、第１の複数の画像のうちの少なくとも１つ、作業セルをマッピングする３Ｄ点群データ、および／または産業機械類および／または作業セルの２Ｄまたは３Ｄ  ＣＡＤモデルを含む。
【００２５】
いくつかの実施形態では、コントローラはさらに、産業機械類または作業セルに対する２Ｄまたは３Ｄ走査を引き起こすように構成され、シーンの画像は、少なくとも部分的に、２Ｄまたは３Ｄ走査に基づいて構築される産業機械類または作業セルのモデルを含む。ある場合には、コントローラはさらに、位置合わせステップに先立って、それぞれ、１つ以上の構成パラメータと関連付けられる、産業機械類の複数の画像を含む、位置合わせライブラリを確立し、位置合わせライブラリ内の複数の画像内の産業機械類の状態に対してシーンの画像内の産業機械類の状態をコンピュータ的に比較し、シーンの画像内の産業機械類の状態に最良に合致する産業機械類の状態を提供する、位置合わせライブラリ内の複数の画像のうちの１つを識別し、少なくとも部分的に、位置合わせライブラリ内の識別された画像に対応する構成パラメータに基づいて、複数のセンサを産業機械類に位置合わせするように構成される。構成パラメータは、例えば、産業機械類へのセンサの位置合わせを微調整するための反復回数、メッシュあたりの３Ｄ点群データの数、および／または収束基準を含んでもよい。
【００２６】
種々の実施形態では、コントローラはさらに、第１の複数の画像を分析し、センサの視野によって網羅される作業セル内の面積を決定し、分析に基づいて、決定された面積、センサの視野によって網羅されない面積、最適なシーン網羅範囲を達成するためのセンサのうちの少なくとも１つに関する姿勢、および／または付加的センサのための設置場所を識別するように構成される。加えて、コントローラはさらに、識別された姿勢に基づいて、対応するセンサの姿勢を調節させるように構成されてもよい。
【００２７】
コントローラはさらに、センサの視野によって網羅される面積の輪郭を描く信号または１つ以上の光ビームを作業セルの中に投影するように構成されてもよい。代替として、または加えて、コントローラはさらに、作業セルの画像およびセンサの視野によって網羅される面積の輪郭を拡張現実または仮想現実デバイス上に投影するように構成されてもよい。
【００２８】
コントローラはさらに、種々の実施形態では、産業機械類への複数のセンサの位置合わせの正確度レベルを示す初期正確度メトリックを発生させ、次いで、産業機械類の動作の間、位置合わせの正確度レベルを示す後続正確度メトリックが、閾値量を上回って初期正確度メトリックから逸脱するかどうかを決定し、該当する場合、産業機械類の動作を改変するように構成される。後のステップでは、コントローラはさらに、産業機械類の動作の間に入手される第２の複数の画像を周期的に分析し、（ｉ）正確度メトリックを再発生させ、（ｉｉ）再発生された正確度メトリックを初期正確度メトリックと比較し、それらの間の逸脱を決定し、（ｉｉｉ）逸脱が、閾値を超える場合、機械類の動作を改変するように構成されてもよい。メトリックは、位置合わせ検証および／またはリアルタイムロボット追跡を含んでもよい。
【００２９】
本明細書に使用されるように、用語「実質的に」は、±１０％を意味し、いくつかの実施形態では、±５％を意味する。本明細書全体を通した「一実施例」、「ある実施例」、「一実施形態」、または「ある実施形態」の言及は、実施例に関連して説明される特定の特徴、構造、または特性が、本技術の少なくとも１つの実施例に含まれることを意味する。したがって、本明細書全体を通した種々の場所における語句「一実施例では」、「ある実施例では」、「一実施形態」、または「ある実施形態」の出現は、必ずしも、全てが同一の実施例を指すわけではない。さらに、特定の特徴、構造、ルーチン、ステップ、または特性は、本技術の１つ以上の実施例において任意の好適な様式で組み合わせられてもよい。本明細書に提供される見出しは、便宜上のためだけのものであり、請求される技術の範囲または意味を限定または解釈することを意図していない。
【図面の簡単な説明】
【００３０】
図面では、同様の参照文字は、概して、異なる図全体を通して同一の部分を指す。また、図面は、必ずしも縮尺通りではなく、代わりに、概して、本発明の原理を図示することに重点が置かれている。以下の説明では、本発明の種々の実施形態が、以下の図面を参照して説明される。
【００３１】
【図１】図１は、本発明の種々の実施形態による、監視される作業空間の斜視図である。
【００３２】
【図２】図２は、本発明の種々の実施形態による、制御システムを図式的に図示する。
【００３３】
【図３】図３は、本発明の種々の実施形態による、それら自体の間でセンサを位置合わせするためのアプローチを図示する、フローチャートである。
【００３４】
【図４Ａ】図４Ａ−４Ｃは、本発明の種々の実施形態による、１つ以上のセンサを作業空間内の機械類に位置合わせするための例示的アプローチを図示する、フローチャートである。
【図４Ｂ】図４Ａ−４Ｃは、本発明の種々の実施形態による、１つ以上のセンサを作業空間内の機械類に位置合わせするための例示的アプローチを図示する、フローチャートである。
【図４Ｃ】図４Ａ−４Ｃは、本発明の種々の実施形態による、１つ以上のセンサを作業空間内の機械類に位置合わせするための例示的アプローチを図示する、フローチャートである。
【００３５】
【図５Ａ】図５Ａおよび５Ｂは、本発明の種々の実施形態による、作業空間内のシーンを適切に網羅するようにセンサを構成するための例示的アプローチを図示する、フローチャートである。
【図５Ｂ】図５Ａおよび５Ｂは、本発明の種々の実施形態による、作業空間内のシーンを適切に網羅するようにセンサを構成するための例示的アプローチを図示する、フローチャートである。
【００３６】
【図６】図６は、本発明の種々の実施形態による、機械類の動作の間にセンサ間およびセンサと機械類との間の位置合わせを検証するためのアプローチを図示する、フローチャートである。
【発明を実施するための形態】
【００３７】
Ａ．  作業空間
最初に、１０２１、１０２２、１０２３において代表的に示される１つ以上のセンサを含むセンサシステム１０１によって監視される、代表的３Ｄ作業空間１００を図示する、図１を参照する。センサ１０２１−３は、カメラ、例えば、理想的には、高フレームレート（例えば、３０Ｈｚ〜１００Ｈｚ）を伴う、３Ｄ飛行時間カメラ、ステレオビジョンカメラ、または３Ｄ  ＬＩＤＡＲセンサまたはレーダベースのセンサ等の従来の光学センサであってもよい。センサ１０２１−３の動作モードは、作業空間１００の３Ｄ表現が、センサ１０２１−３によって取得される画像または他のデータから取得可能である限り、重要ではない。図に示されるように、センサ１０２１−３は、集合的に網羅してもよく、従来のロボットコントローラ１０８によって制御されるロボット１０６を含む、作業空間１００を監視することができる。ロボット１０６は、種々のワークピースＷと相互作用し、作業空間１００内の人間オペレータＨが、タスクを実施するためにワークピースＷおよびロボット１０６と相互作用し得る。作業空間１００はまた、補助機器１１０の種々のアイテムを含有してもよい。本明細書に使用されるように、ロボット１０６および補助機器１１０は、作業空間１００内の機械類として表される。
【００３８】
種々の実施形態では、センサ１０２１−３のそれぞれによって取得されたデータは、制御システム１１２に伝送される。加えて、センサ１０２１−３は、センサ１０２１−３の構成（例えば、配向および／または位置）を変更するために種々のソフトウェアおよび／またはハードウェアコンポーネント１１４１−３によってサポートされてもよく、下記にさらに説明されるように、制御システム１１２は、作業空間１００内の監視される面積の最適な網羅範囲を提供するように、センサを調節するように構成されてもよい。典型的には、立体角錐台または立体円錐台である、各センサによって網羅される空間の体積は、任意の好適な方式で表されてもよく、例えば、空間は、小さい（例えば、５ｃｍ）立方体または「ボクセル」の３Ｄグリッドまたは他の好適な形態の体積表現に分割されてもよい。例えば、作業空間１００の３Ｄ表現は、２Ｄまたは３Ｄ光線追跡を使用して発生されてもよく、センサ１０２１−３から発する２Ｄまたは３Ｄ光線の交点が、作業空間１００の体積座標として使用される。本光線追跡は、動的に、または作業空間１００内の物体が、制御システム１１２によって以前に識別および捕捉される、事前算出された体積の使用を介して実施されることができる。便宜的な提示のために、続く議論は、ボクセル表現を仮定し、制御システム１１２は、ボクセルレベルにおいて作業空間１００の内部表現を維持する。
【００３９】
図２は、汎用コンピュータ上で実装され得る、制御システム１１２の代表的実施形態をより詳細に図示する。制御システム１１２は、中央処理ユニット（ＣＰＵ）２０５と、システムメモリ２１０と、１つ以上の不揮発性大容量記憶デバイス（１つ以上のハードディスクおよび／または光学記憶ユニット等）２１２とを含む。制御システム１１２はさらに、それを経由してＣＰＵ２０５、メモリ２１０内の機能モジュール、および記憶デバイス２１２が、相互に通信し、および、ディスプレイ２２０および周辺機器２２２（キーボードまたはマウス等の従来的入力デバイスを含み得る）等の内部または外部入力／出力（Ｉ／Ｏ）デバイスと通信する、双方向システムバス２１５を含む。制御システム１１２はまた、無線送受信機２２５と、１つ以上のＩ／Ｏポート２２７とを含む。送受信機２２５およびＩ／Ｏポート２２７は、ネットワークインターフェースを提供してもよい。用語「ネットワーク」は、コンピュータまたは電気通信デバイス（有線または無線電話、タブレット等）の有線または無線ネットワークを含意するように本明細書で広く使用される。例えば、コンピュータネットワークは、ローカルエリアネットワーク（ＬＡＮ）または広域ネットワーク（ＷＡＮ）であってもよい。ＬＡＮネットワーキング環境内で使用されるとき、コンピュータは、ネットワークインターフェースまたはアダプタを通してＬＡＮに接続されてもよく、例えば、管理者が、無線でネットワークに参加するタブレットを使用して、制御システム１１２との通信を確立してもよい。ＷＡＮネットワーキング環境内で使用されるとき、コンピュータは、典型的には、モデムまたは他の通信機構を含む。モデムは、内部または外部にあってもよく、ユーザ入力インターフェースまたは他の適切な機構を介してシステムバスに接続されてもよい。ネットワーク化されたコンピュータは、インターネット、イントラネット、エクストラネット、イーサネット（登録商標）、または通信を提供する任意の他のシステムを経由して接続されてもよい。いくつかの好適な通信プロトコルは、例えば、ＴＣＰ／ＩＰ、ＵＤＰ、またはＯＳＩを含む。無線通信に関して、通信プロトコルは、ＩＥＥＥ  ８０２．１１ｘ  （「Ｗｉ−Ｆｉ」）、Ｂｌｕｅｔｏｏｔｈ（登録商標）、ＺｉｇＢｅｅ、ＩｒＤａ、近距離無線通信（ＮＦＣ）、または他の好適なプロトコルを含んでもよい。さらに、本システムのコンポーネントは、有線または無線経路の組み合わせを通して通信してもよく、通信は、コンピュータおよび電気通信ネットワークの両方を伴ってもよい。
【００４０】
ＣＰＵ２０５は、典型的には、マイクロプロセッサであるが、種々の実施形態では、マイクロコントローラ、周辺集積回路要素、ＣＳＩＣ（特定顧客向け集積回路）、ＡＳＩＣ（特定用途向け集積回路）、論理回路、デジタル信号プロセッサ、ＦＰＧＡ（フィールドプログラマブルゲートアレイ）、ＰＬＤ（プログラマブル論理デバイス）、ＰＬＡ（プログラマブル論理アレイ）等のプログラマブル論理デバイス、ＲＦＩＤプロセッサ、グラフィックス処理ユニット（ＧＰＵ）、スマートチップ、または本発明のプロセスのステップを実装することが可能である任意の他のデバイスまたはデバイスの配列であってもよい。
【００４１】
システムメモリ２１０は、一連のフレームバッファ２３５、すなわち、デジタル形態において（例えば、ピクセルまたはボクセルとして、または深度マップとして）センサ１０２１−３によって取得された画像を記憶するパーティションを含有してもよく、データは、実際には、上記に議論されるようなＩ／Ｏポート２２７および／または送受信機２２５を介して到着してもよい。システムメモリ２１０は、ＣＰＵ２０５の動作および他のハードウェアコンポーネントとのその相互作用を制御する、モジュールの群として概念的に図示される命令を含有する。オペレーティングシステム２４０（例えば、Ｗｉｎｄｏｗｓ（登録商標）またはＬｉｎｕｘ（登録商標））は、メモリ割当、ファイル管理、および大容量記憶デバイス２１２の動作等の低レベル基本システム機能の実行を指図する。より高いレベルにおいて、下記により詳細に説明されるように、撮像モジュール２４２は、フレームバッファ２３５内にセンサによって入手された画像を登録してもよく、分析モジュール２３７は、センサ１０２１−３によって入手された画像を分析し、例えば、入手された画像および／またはセンサ１０２１−３によって監視される網羅面積の間に十分な重複および／または区別が、存在するかどうかを決定してもよく、位置合わせモジュール２３９は、下記にさらに説明されるように、フレームバッファ２３５内に登録された画像に基づいて、それら自体の間でセンサを位置合わせする、および／またはセンサ１０２１−３を作業空間内の機械類に位置合わせしてもよく、入力モジュール２４１は、下記にさらに説明されるように、ロボット１０６および／または１つ以上の位置合わせ物体の状態（例えば、配向、位置等）を識別するために、例えば、ディスプレイ２２０、周辺機器２２２、ロボットコントローラ１０８、および／または付加的センサ（例えば、センサ１０２１−３以外）から１つ以上の外部入力データを受信する。決定された網羅面積は、空間マップ２４５内に記憶されてもよく、これは、本明細書に説明されるように、空間マップ内に、各ボクセル（または他の表現単位）が標識化される、作業空間１００の体積表現を含有する。代替として、空間マップ２４５は、単純に、ボクセルの３Ｄアレイであり、ボクセル標識が、別個のデータベース内（メモリ２１０内または大容量記憶装置２１２内）に記憶されてもよい。
【００４２】
加えて、制御システム１１２は、２５０において集合的に示される従来の制御ルーチンを使用して、作業空間１００内の動作または機械類を制御するために、ロボットコントローラ１０８と通信してもよい。下記に解説されるように、作業空間の構成は、人物および／または機械が動き回るにつれて、経時的に明確に変化し得、制御ルーチン２５０は、高レベルの安全性を達成するために、機械類を動作させる際のこれらの変化に応答してもよい。システムメモリ２１０内のモジュールは全て、限定ではないが、ＴｅｎｓｏｒＦｌｏｗ、Ｋｅｒａｓ、ＰｙＴｏｒｃｈ、またはＴｈｅａｎｏ等の任意の好適なフレームワークおよびライブラリを利用して、限定ではないが、Ｃ、Ｃ＋＋、Ｃ＃、Ｊａｖａ（登録商標）、Ｐｙｔｈｏｎ、Ｒｕｂｙ、Ｓｃａｌａ、およびＬｕａ等の高レベル言語を含む、任意の好適なプログラミング言語でコーディングされてもよい。加えて、ソフトウェアは、標的デバイス上に常駐するマイクロプロセッサを対象とするアセンブリ言語および／または機械言語で実装されることができる。
【００４３】
Ｂ．  センサ位置合わせおよび監視
センサシステム１０１は、作業空間１００を監視するために実装され、防護対策機構は、概して、センサ１０２１−３と対照的に、危険な機械類（例えば、ロボット１０６）に対して構成される。マルチセンサシステムでは、各センサ１０２の精密な場所を全ての他のセンサに対して相関させる、センサ１０２１−３間の位置合わせは、典型的には、設定の間および／または機械類の動作の間に確立される。一実施形態では、センサ位置合わせは、手動で実施される。例えば、人間オペレータＨは、センサの焦点と３次元内で制御されている機械類との間の距離を測定し、作業空間１００内に最適な網羅面積を提供するように、それに基づいて、センサ１０２１−３の姿勢（例えば、位置および／または配向）を手動で操作してもよい。加えて、または代替として、ディスプレイ２２０に示されるユーザインターフェースが、例えば、センサ１０２１−３の整合点および信号品質および信頼性を最大限にするために最適なセンサ位置付けを示すための信号を提供し、位置合わせ信頼性および安全信号に関するメトリックを決定および表示し、ユーザフィードバックを提供してもよい。オペレータＨは、次いで、ユーザフィードバックに基づいて、センサ１０２１−３の姿勢を調節してもよい。センサ位置合わせは、手動で達成されることが可能であるが、これは、単一のセンサに関してでさえ負担となり、複数のセンサからの情報を組み合わせるために十分に正確な測定値を提供するために非現実的であり得る。したがって、種々の実施形態では、センサ位置合わせは、好適なコンピュータビジョン技法を使用して自動的に実施される。下記にさらに説明されるように、作業空間１００内の複数のセンサ１０２１−３を位置合わせするためのアプローチは、容易な設定および再構成を可能にするように、十分に単純である。
【００４４】
１）  センサ間の位置合わせ
単純にするために、各フレームバッファ２３５が、特定のセンサ１０２から（周期的にリフレッシュされ得る）画像を記憶すると仮定して、位置合わせモジュール２３９は、各センサからの画像の全てまたは一部をフレームバッファ２３５内の他のセンサからの画像と比較し、それらの画像における対応を識別するために従来のコンピュータビジョン技法（例えば、グローバル位置合わせアルゴリズム）を使用することによって、センサ１０２１−３間の位置合わせを実施してもよい。初期位置合わせ近似を要求しない、好適なグローバル位置合わせアルゴリズムは、概して、２つのカテゴリ、すなわち、特徴ベースの方法および強度ベースの方法に分類される。ランダムサンプルコンセンサス（ＲＡＮＳＡＣ）等の特徴ベースの方法は、画像内の特徴（例えば、エッジ）を抽出し、次いで、抽出された画像特徴に基づいて、対応を識別し得、強度ベースの方法は、画像内の画像強度を決定し、次いで、強度パターンを比較するために相関メトリックを使用し得る。いったん近似または大まかな位置合わせが、実施されると、微細位置合わせアプローチ（例えば、反復最近接点（ＩＣＰ）アルゴリズムまたはその好適な変形）が、位置合わせを微調整し、それら自体の間のセンサ位置合わせを完了するために実施されてもよい。その後、センサ１０２１−３によって入手されたデータは、位置合わせに基づいて、共通基準フレーム内（例えば、同一の座標系内）で処理されることができる。
【００４５】
種々の実施形態では、センサ１０２１−３の共通基準フレームは、作業空間１００の「グローバル」フレーム（例えば、座標系）に変換される。例えば、共通２Ｄフレーム内のセンサ１０２１−３によって入手された画像を作業空間１００のグローバルフレーム内の３Ｄデータに変換するために、フレームバッファ２３５内の２Ｄ範囲画像が、各範囲ピクセルの画像座標を歪み補正し、逆射影変換を歪み補正された画像座標および範囲測定値に適用することによって、センサローカル３Ｄ座標系に変換されてもよい。これは、センサローカル座標系内に構造化された点群を発生させ、これは、好適な剛体変換を使用して変換されてもよい。再び図１を参照すると、一実施形態では、変換は、３Ｄ内の際立った視覚的シグネチャを有する１つ以上の「位置合わせ物体」１２０を使用して決定される。例えば、位置合わせ物体は、これが、全てのセンサまたはその他に対して位置合わせされる少なくとも１つのセンサによって見られ得る作業空間内の場所に設置されてもよい。位置合わせされたセンサ１０２１−３を使用して、位置合わせ物体の既知のシグネチャおよび／または幾何学形状に基づいて、位置合わせ物体の画像を入手することによって、センサ１０２１−３の共通フレーム内のデータを作業空間１００のグローバルフレーム内のデータに変換する変換が、算出されてもよい。その後、センサ１０２１−３によって入手されたデータは、作業空間１００のグローバルフレーム内で処理されることができる。
【００４６】
センサ位置合わせのための上記に説明されるアプローチは、明確に異なるセンサ画像を提供するためのセンサ１０２１−３の視野の間の十分な重複および作業空間１００内の十分な視覚的詳細が、存在するとき、好適である。しかしながら、センサ１０２１−３の視野の間の不十分な重複および／または作業空間１００内の不十分な詳細が、存在する場合、３Ｄ内の際立ったシグネチャを有する１つ以上の位置合わせ物体１２０の使用が、センサ位置合わせを促進するために必要であり得る。例えば、各センサ１０２は、最初に、位置合わせ物体に別個に位置合わせされてもよく、センサ１０２１−３間の位置合わせが、次いで、各センサ１０２と位置合わせ物体１２０との間の位置合わせに基づいて確立されてもよい。本明細書に使用されるように、用語「際立った３Ｄシグネチャ」は、例えば、異なる角度から視認されるときに検出可能に異なる外形を提示する、一意に識別可能な位置および姿勢（したがって、回転または平行移動対称性がない）を指す。例えば、単一の立方体が、６つの潜在的配向を有するが、相互に対して既知の距離および非共線配向における２つの立方体は、際立った３Ｄシグネチャに関して十分な情報を提供し得る。より一般的に、位置合わせ物体は、例えば、基準または他の２Ｄまたは３Ｄ物体を含んでもよく、定常である、または防護された作業空間１００内で人間オペレータＨおよび／または機械類（例えば、ロボット上）によって携行されてもよい。
【００４７】
代替として、センサ１０２１−３間の位置合わせは、センサ１０２１−３のそれぞれに、作業空間内で立っている、またはある時間周期にわたって作業空間を通過する１人以上の人物、移動する機器（自動化誘導車両等）、または他の位置合わせ物体１２０の画像を記録させることによって達成されてもよく、十分な数の少なくとも部分的に合致する画像が、入手され、画像は、上記に説明されるアプローチを使用して正確なセンサ位置合わせを確立するために、組み合わせられ、処理されてもよい。
【００４８】
時折、センサ１０２１−３から収集されるデータは、雑音がある、または光学的に歪曲され得、したがって、いくつかの実施形態では、サブフレーム組み合わせ、雑音低減、メッシングおよび再サンプリング等の好適な技法が、センサ信号に内在する雑音を最小限にし（または少なくとも低減させる）、それによって、センサ位置合わせの正確度を改良するために実装されてもよい。加えて、検出されたセンサ信号は、センサ整合を維持するように、平均または分布推定に基づく従来のアプローチを使用して補正されてもよい。一実施形態では、雑音および歪み補正プロセスは、検出された信号および位置合わせプロセスに内在する誤差を境界する。誤差境界は、人間の安全性を確実にするために、ロボット１０６の動作の間に制御システム１１２への入力として使用されることができる。例えば、ロボット１０６の動作の間にセンサ１０２１−３によって検出された信号の雑音または歪みが、誤差境界を超える、および／またはロボットシステムが、動作の間に誤差境界外にドリフトする場合、制御システム１１２は、作業空間１００内の機械類を安全状態（例えば、低減された速度を有する、または非アクティブ化される）に切り替えるように、ロボットコントローラ１０８と自動的に通信してもよい。
【００４９】
種々の実施形態では、グローバル最適化アルゴリズムが、グローバル誤差メトリックを最小限にすることによって、作業空間１００の座標系における各センサの最適な構成または姿勢を推定するために実装される。グローバル最適化アルゴリズムの使用は、初期構成またはその推定値にかかわらず、最良のセンサ構成推定値を確実にする。例えば、対応のセットを前提として、１つの一般的なアプローチは、対毎の（典型的には、ユークリッド）距離の合計を最小限にすることである。そのような場合では、最適化目的のためのコストは、距離としてとられる。「ハウスドルフ」距離等の他の距離ベースのコストが、整合タスクに関して一般的である。いかなる対応も、識別されることができない場合、これらは、最近傍または深度画像への投影を使用して、良好な推測の精緻化を通して推定されてもよい。対応を伴わないグローバル姿勢推定は、より困難であり、費用関数は、より抽象的になり、例えば、ＲＡＮＳＡＣアルゴリズムまたは類似するアプローチを使用して、例えば、最小の機能する対応セットを見出すための分枝限定アルゴリズムまたは点セットのサンプリングを介した実行可能な姿勢の検索である。
【００５０】
図３は、それら自体の間でセンサを位置合わせするための例示的アプローチ３００を図示する、フローチャートである。第１のステップ３０２において、センサ１０２１−３はそれぞれ、作業空間の１つ以上の画像を入手してもよく、画像は、メモリ２１０内のフレームバッファ２３５内に記憶されてもよい。第２のステップ３０４において、好適な技法が、随意に、検出されるセンサ信号内の雑音を最小限にする（または少なくとも低減させる）、および／または歪みを補正するために実装されてもよい。第３のステップ３０６において、分析モジュール２３７は、入手された画像の間に十分な重複および／または区別が、存在するかどうかを決定するために、画像を分析してもよい。該当する場合、位置合わせモジュール２３９は、センサ１０２１−３間の位置合わせを確立するために、従来のコンピュータビジョン技法（例えば、グローバル位置合わせアルゴリズム）および微細位置合わせアプローチ（例えば、ＩＣＰアルゴリズム）を実装してもよい（ステップ３０８）。センサ１０２１−３の視野の間の不十分な重複および／または作業空間１００内の不十分な詳細が、存在する場合、３Ｄ内の際立ったシグネチャを有する１つ以上の位置合わせ物体１２０が、識別されてもよい（ステップ３１０）。各センサ１０２は、最初に、位置合わせ物体に別個に位置合わせされてもよい（ステップ３１２）。続けて、センサ１０２１−３間の位置合わせが、次いで、各センサ１０２と位置合わせ物体１２０との間の位置合わせに基づいて確立されてもよい（ステップ３１０）。代替として、各センサは、作業空間内に立っている、またはある時間周期にわたって作業空間全体を通して通過する１人以上の人物、移動する機器、または他の位置合わせ物体１２０の画像を記録してもよい（ステップ３１４）。十分な数の少なくとも部分的に合致する画像が、入手されるとき、画像は、正確なセンサ位置合わせを確立するために、組み合わせられ、処理されてもよい（ステップ３１６）。随意に、位置合わせ後、センサ１０２１−３の共通基準フレームが、作業空間１００のグローバルフレームに変換されてもよい（ステップ３１８）。
【００５１】
２）  機械類へのセンサの位置合わせ
作業空間１００内の制御下の機械類へのセンサ１０２１−３の位置合わせは、ある場合には、特に、機械類が、際立った３Ｄシグネチャ（例えば、ロボットアーム）を有するとき、および／または機械類が、上記に説明されるように他のセンサに対して位置合わせされる少なくとも１つのセンサ１０２に可視であるとき、いかなる付加的器具類も伴わずに達成されることができる。それに機械類が可視であるセンサ１０２は、最初に、機械類に位置合わせしてもよく、本位置合わせおよびセンサ１０２１−３間の位置合わせに基づいて、それに機械類が不可視である他のセンサが、次いで、機械類に位置合わせしてもよい。代替として、作業空間１００内の位置合わせ標的（例えば、際立った３Ｄシグネチャを有する位置合わせ物体１２０）が、センサ１０２１−３を機械類に位置合わせするために利用されてもよい。概して、位置合わせ標的は、これが、人間オペレータＨが機械類に対する位置合わせ標的の姿勢を決定するために簡単であるように、特別に設計される。再び、センサ１０２１−３は、次いで、位置合わせ標的へのセンサ１０２１−３の位置合わせおよび機械類に対する位置合わせ標的の姿勢を介して、機械類に位置合わせされてもよい。
【００５２】
種々の実施形態では、ディスプレイ２２０上に示されるユーザインターフェースは、人間オペレータＨが、制御下の機械類の重要な要素として画像のある部分を手動で指定することを可能にするために、作業空間１００内のシーンの画像を提供してもよい。機械類へのセンサ１０２１−３の位置合わせは、次いで、ユーザ指定された重要要素を使用して実施されてもよい。シーンの画像は、センサ１０２１−３または作業空間１００内に採用される１つ以上の付加的センサ（例えば、ＲＧＢカメラ）によって視認される実際のシーンを含んでもよい。加えて、シーンの画像は、作業空間１００をマッピングする可視３Ｄ点群データを含んでもよい。一実施形態では、シーンの画像は、位置合わせ標的の少なくとも一部の幾何学形状を含む。例えば、幾何学形状は、機械類（例えば、ロボット）および／または作業空間１００の２Ｄまたは３Ｄ  ＣＡＤモデルを含んでもよい。加えて、または代替として、幾何学形状は、作業空間１００内のセンサ１０２１−３（および／または他の類似するセンサ）、機械類、または他の機器によって捕捉される２Ｄおよび／または３Ｄ走査に基づいて構築される、実際の機械類および／または作業空間のモデルを含んでもよい。ロボットコントローラ１０８によって制御されるロボット１０６および／または他の機械類が、位置合わせ標的として使用される場合では、ロボットコントローラ１０８によって受信および決定される作業空間１００内のロボットおよび／または他の機械類の位置は、作業空間１００の状態に対応する完全に姿勢をとった幾何学形状を取得するために、そのＣＡＤモデルと組み合わせられてもよい。加えて、ロボットコントローラ１０８および／または制御システム１１２は、走査データが、入手および蓄積される間、いかなる望ましくない移動も、起こらないことを確実にするために、ロボットおよび／または他の機械類の位置を連続的に監視してもよい。
【００５３】
ＣＡＤモデルは、非精密であり得、したがって、いくつかの実施形態では、種々の好適な技法が、ＣＡＤモデルの適合および品質を改良するために実装されることができる。例えば、作業空間１００内の（例えば、制御下の機械類および人間オペレータＨを封入する）作業セルの外側の床および壁は、位置合わせ正確度を改良するために、シーンの画像および／またはＣＡＤモデルから除外されてもよい。一実施形態では、ＣＡＤモデルは、位置合わせに寄与しない無関係なモデルコンポーネントを取り除く、または削除することによって簡略化され、代替として、ＣＡＤモデルは、棒人間等のその最小のコンポーネントに簡略化されてもよい。いくつかの実施形態では、センサ１０２１−３によって入手されたデータは、例えば、モデルの一部としてロボットドレスパッケージおよび／またはエンドエフェクタを組み込むことによって、２Ｄまたは３Ｄ  ＣＡＤモデルの正確度を改良するために使用されることができる。一実施形態では、２Ｄまたは３Ｄ  ＣＡＤモデルはまた、整合支援としてディスプレイ２２０上に示されるユーザインターフェース上で、センサ１０２１−３によって入手された点群データまたは視覚画像の上にオーバーレイされることができる。
【００５４】
位置合わせのために使用される機械類の幾何学形状は、必ずしも、衝突回避のために使用されるものと同一ではないことに留意されたい。典型的には、衝突幾何学形状は、機械類と関連付けられる配線およびドレスパッケージを含み、安全性のために包含に対して偏っている。一方、位置合わせ幾何学形状は、不偏であり、異なる分解能および精度要件を伴い、非剛性領域を除外し、信頼性のない測定を提供する領域（例えば、暗いまたは過度に反射性の表面または薄く、測定が困難であるコンポーネント）を除外する必要性があり得る。上記に説明されるように、いくつかの実施形態では、位置合わせ標的および／または作業セルの位置合わせ幾何学形状は、（ＣＡＤモデルと対照的に）位置合わせを実施するために使用されるものと同一または類似するセンサを使用して、実際の位置合わせ標的および／または作業セルを走査することによって構築される。これは、意図的か偶発的かを問わず、ＣＡＤモデルとロボットの実際の製造部品との間の逸脱を受けない、より信頼性のある基準幾何学形状につながり得る。
【００５５】
機械類へのセンサシステム１０１の整合／位置合わせは、ユーザインターフェースを通して手動で実施されることができる。例えば、ユーザは、キーボード入力、マウス、ジョイスティック、または他の好適なツールを使用し、相互に対する、および／またはディスプレイ２２０上に示される機械類に対する既知の姿勢を伴う各センサ、センサの群の姿勢を規定してもよい。本プロセスは、自動化または半自動化されることができる。整合／位置合わせを実施するためのまた別の選択肢は、深度画像内およびディスプレイ２２０上のユーザインターフェース上に示されるロボット１０６上の離散特徴の対を選択することであり、自動化または半自動化精緻化ステップが続く。例えば、人間オペレータＨまたは位置合わせモジュール２３９は、特徴の単一の対を選ぶことによって制約を導入し、次いで、制約の存在下で機械類へのセンサシステム１０１の自動的位置合わせをトリガしてもよく（すなわち、制約が満たされることを確実にする）、制約は、位置合わせの信頼性を改良し得る。いくつかの実施形態では、２つの制約が、オペレータＨによって手動で、または位置合わせモジュール２３９によって自動的に追加され、これはさらに、検索空間を制限し、自動的位置合わせをさらによりロバストにし得る。特徴の３つの対を選択することは、大まかな特徴対応の検索を省略し、代わりに、（上記に議論されるＩＣＰアルゴリズムを使用する等）精緻化ステップに直接進み、それによって、信頼性のある正確な位置合わせを提供することを可能にし得る。
【００５６】
再び図２を参照すると、種々の実施形態では、機械類へのセンサ１０２１−３の自動化位置合わせは、位置合わせライブラリ２５５の使用を伴い、位置合わせライブラリ２５５は、作業空間１００内のセンサシステム１０１および機械類の以前の設定において確立される１つ以上の構成パラメータ（位置合わせを微調整するための反復回数、メッシュあたりの３Ｄ点群データの数、１つ以上の収束基準等）を含む。典型的には、位置合わせライブラリ２５５内の各構成パラメータは、作業空間１００内の１つ以上の具体的ロボット１０６、機械類、ハードウェア構成、および／またはセンサ１０２１−３の特定の空間配列のために構成され、メモリ２１０内にシーンの個別の画像とともに、それと関連付けて記憶される。一実施形態では、制御システム１１２（例えば、位置合わせモジュール２３９）は、位置合わせライブラリ２５５内のシーンの記憶された画像内のロボットおよび／または機械類のものに対してシーンの画像内のロボットおよび／または機械類の状態（例えば、配向、位置等）を自動的に比較し、次いで、最良に合致する状態を提供する記憶された画像を識別する。制御システム１１２（例えば、位置合わせモジュール２３９）は、次いで、シーンの画像内の最良に合致される状態と関連付けられる構成パラメータを読み出し、それに基づいて、機械類へのセンサ１０２１−３の自動化位置合わせを実施してもよい。
【００５７】
時折、作業空間１００内のロボットまたは他の機械類の単一の状態は、全ての自由度を適正に制約する位置合わせ標的を提供しない場合があり（例えば、全てのセンサ１０２１−３が、その現在の構成におけるロボット１０６を観察することができるわけではない、および／またはセンサ１０２１−３によって観察されるロボット特徴が、上記に説明されるように十分に際立っていないため）、種々の実施形態では、ロボット１０６および／または他の機械類は、手動でか、または所定のプログラムを実行するロボットコントローラ１０８および制御システム１１２によって自動的にかのいずれかで、１つ以上の付加的な既知の状態（例えば、位置合わせのために以前に正常に設定された状態）に再び姿勢をとることができる。ロボット１０６および／または他の機械類の状態に関連するデータおよび本手順の間にセンサ１０２１−３によって入手されたデータは、より信頼性のある精密な位置合わせを提供するより大きい位置合わせデータセットを提供するために組み合わせられることができる。一実施形態では、組み合わせられたデータは、上記に説明されるような機械類へのセンサ１０２１−３の自動化位置合わせを可能にするように、位置合わせライブラリ２５５内に記憶されたデータに対して比較されてもよい。加えて、ロボット１０６および／または他の機械類の付加的な既知の状態への再姿勢の間に入手されたデータは、さらなる比較のために位置合わせライブラリ２５５内に記憶されてもよい。
【００５８】
図４Ａ−４Ｃは、１つ以上のセンサを作業空間内の機械類に位置合わせするための例示的アプローチを図示する、フローチャートである。最初に図４Ａを参照すると、第１のステップ４０２において、作業空間内の制御下の機械類は、例えば、これが、際立った３Ｄシグネチャを有する、および／または他のセンサに対して位置合わせされる少なくとも１つのセンサに可視であるかどうかを決定するために、制御システム１１２によって分析される。例えば、センサ１０２１−３によって入手された画像が、機械類が、少なくとも１つの次元において回転または平行移動対称性を有していない（例えば、機械類の異なる外形が、異なる角度から視認されているときに提示される）ことを示す場合、機械類は、際立った３Ｄシグネチャを有していると決定される。該当する場合、位置合わせモジュール２３９は、最初に、それに機械類が可視であるセンサ１０２を機械類に位置合わせしてもよい（ステップ４０４）。ステップ４０４において実施された位置合わせおよびセンサ１０２１−３間の位置合わせに基づいて、位置合わせモジュール２３９は、次いで、それに機械類が不可視である他のセンサを機械類に位置合わせしてもよい（ステップ４０６）。機械類が、際立った３Ｄシグネチャを有していない、および／または他のセンサに対して位置合わせされる任意のセンサに不可視である場合、位置合わせモジュール２３９は、（例えば、センサによって入手された画像に基づいて）作業空間内の３Ｄ内の際立った３Ｄシグネチャを有する位置合わせ標的を識別し、機械類に対する位置合わせ標的の姿勢を決定してもよい（ステップ４０８）。続けて、位置合わせモジュール２３９は、センサ１０２１−３を位置合わせ標的に位置合わせし（ステップ４１０）、ステップ４１０における位置合わせおよび機械類への位置合わせ標的の関連する姿勢に基づいて、センサ１０２１−３を位置合わせ標的に位置合わせしてもよい（ステップ５１２）。
【００５９】
代替として、図４Ｂを参照すると、種々の実施形態では、センサ１０２１−３および／または付加的センサによって視認される作業空間１００内のシーンの画像が、ディスプレイ２２０上に示されるユーザインターフェース上に提供される（ステップ４２２）。随意に、分析モジュール２３７は、センサ画像を分析し、シーンの画像上に作業空間１００をマッピングする可視３Ｄ点群データを提供してもよい（ステップ４２４）。加えて、制御システム２１２は、機械類および／または作業空間１００の２Ｄまたは３Ｄ  ＣＡＤモデルを作成し、シーンの画像上にモデルを表示してもよい（ステップ４２６）。加えて、または代替として、作業空間１００内のセンサ１０２１−３（および／または他の類似するセンサ）、機械類、または他の機器は、実際の機械類および／または作業空間に対して２Ｄおよび／または３Ｄ走査を実施し、走査に基づいて、そのモデルを構築してもよい（ステップ４２８）。一実装では、ロボットコントローラ１０８によって受信および決定される作業空間１００内のロボットおよび／または他の機械類の位置は、作業空間１００の状態に対応するその完全に姿勢をとった幾何学形状を取得するために、ステップ４２６または４２８において作成されたモデルと組み合わせられてもよい（ステップ４３０）。種々の実施形態では、深度画像内およびユーザインターフェース上に示されるロボット１０６上の離散特徴の１つ以上の対が、オペレータによって手動で、または制御システム１１２によって自動的に選択される（ステップ４３２）。それに基づいて、位置合わせモジュール２３９は、例えば、上記に説明される精緻化ステップを使用して、位置合わせを実施してもよい（ステップ４３４）。加えて、または代替として、位置合わせモジュール２３９は、シーンの画像上の特徴の１つ以上の対を選ぶことによって１つ以上の制約を導入し（ステップ４３６）、次いで、制約の存在下で機械類へのセンサシステム１０１の自動的位置合わせを実施してもよい（ステップ４３８）。
【００６０】
図４Ｃを参照すると、種々の実施形態では、機械類へのセンサ１０２１−３の自動化位置合わせは、位置合わせライブラリ２５５の使用を伴う。ステップ４４２において、１つ以上の構成パラメータ（位置合わせを微調整するための反復回数、メッシュあたりの３Ｄ点群データの数、１つ以上の収束基準等）を含む、位置合わせライブラリ２５５が、作成される。第２のステップ４４４において、位置合わせモジュール２３９は、位置合わせライブラリ２５５内のシーンの記憶された画像内のロボットおよび／または機械類のものに対してシーンの画像内のロボットおよび／または機械類の状態を自動的に比較し、次いで、最良に合致する状態を提供する記憶された画像を識別する。位置合わせモジュール２３９は、次いで、シーンの画像内の最良に合致される状態と関連付けられる構成パラメータを読み出し（ステップ４４６）、それに基づいて、機械類へのセンサ１０２１−３の自動化位置合わせを実施してもよい（ステップ４４８）。随意に、制御システム１１２およびロボットコントローラ１０８は、ロボット１０６および／または他の機械類に、１つ以上の付加的な既知の状態（例えば、位置合わせのために以前に正常に採用された状態）に再び姿勢をとらせてもよい（ステップ４５０）。ロボット１０６および／または他の機械類の状態に関連するデータおよび本手順の間にセンサ１０２１−３によって入手されたデータは、より大きい位置合わせデータセットを提供するために組み合わせられることができる（ステップ４５２）。一実施形態では、組み合わせられたデータは、次いで、ステップ４４６において説明されるような最良に合致する状態を有する画像を識別するために、位置合わせライブラリ２５５内に記憶されたデータに対して比較されることができる（ステップ４５４）。続けて、位置合わせモジュール２３９は、シーンの画像内の最良に合致される状態と関連付けられる構成パラメータを読み出し（ステップ４４６）、それに基づいて、機械類へのセンサ１０２１−３の自動化位置合わせを実施することができる（ステップ４４８）。いくつかの実施形態では、ロボット１０６および／または他の機械類の付加的な既知の状態への再姿勢の間に入手されたデータは、位置合わせライブラリ２５５内に記憶される（ステップ４５６）。
【００６１】
３）  シーンを適切に網羅するためのセンサの構成
作業空間１００内の面積の網羅範囲を最良に提供するための３Ｄセンサ１０２１−３の適切な設定を決定するために、センサ１０２１−３に対して物体によって引き起こされるオクルージョン等の種々の考慮事項が、考慮されなければならない。種々の実施形態では、ディスプレイ２２０上に示されるユーザインターフェースは、構成を支援するために、全てのセンサ１０２１−３の網羅範囲を示す、双方向３Ｄディスプレイを提供する。本システムが、機械類の危険な部分または複数の部分の場所および停止時間および／または距離等の制御されている機械類についての十分な高レベル情報とともに構成される場合、制御システム１１２（例えば、分析モジュール２３７）は、センサ１０２１−３の構成が、十分な網羅範囲を提供する、および／または付加的センサに関する設置を示唆するかどうかに関して知的フィードバックを提供するように構成されてもよい。
【００６２】
いくつかの実施形態では、フィードバックはさらに、例えば、センサ１０２１−３の視野によって網羅されない面積の単純な列挙および／または最適なシーン網羅範囲を達成するための提案されるセンサ場所を含む。センサ１０２１−３の最適な設置を達成するために、種々の実施形態では、分析モジュール２３７は、フィードバックに基づいて、光源（図示せず）に、センサ１０２１−３の監視される網羅範囲および／またはセンサ毎の提案された場所の輪郭を描く信号または１つ以上の光ビームを作業空間１００上に投影させてもよい。人間オペレータＨは、次いで、提案されたセンサ場所および／または輪郭を描かれた網羅範囲に基づいて、センサ１０２１−３を設置または調節してもよい。加えて、制御システム１１２（例えば、分析モジュール２３７）は、ディスプレイ２２０（またはヘッドセット）上に作業空間１００の画像およびセンサ網羅範囲を投影する拡張現実または仮想現実デバイスを通して、センサ設置の際にオペレータＨを支援してもよい。オペレータＨは、ディスプレイ２２０上の画像上に示されるその場所に基づいて、センサを設置／調節してもよい。センサ１０２１−３の設置／調節は、自動化されてもよい。例えば、上記に説明されるように、センサ１０２１−３は、センサ１０２１−３の姿勢および位置を変更するように構成されるソフトウェア／ハードウェアコンポーネント１１４１−３によってサポートされてもよい。種々の実施形態では、分析モジュール２３７によって提供されるフィードバックに基づいて、制御システム１１２は、センサ１０２１−３の最適なシーン網羅範囲を達成するように、ソフトウェア／ハードウェアコンポーネント１１４１−３を調節するように構成されてもよい。一実装では、制御システム１１２はさらに、全ての（または少なくとも殆どの）センサ１０２１−３によって観察され得る場所に機械類を動作させ（例えば、コントローラ１０８を介してロボットを移動させ）、それによって、位置合わせの正確度を改良し、および、センサ１０２１−３によって観察されることができないオクルージョンまたは安全ではない空間を動的に決定し、これらは、作業空間１００内の安全ではない面積としてマーキングされる。
【００６３】
種々の実施形態では、制御システム１１２は、業界標準、ロボットまたは機械製造業者によって、または機械類の動的モデル（歩行速度および他の因子の保守的推定値を含む）を通して決定される保護分離距離を前提として、これが、人物がこれ（またはこれの周囲の安全区域）に到達する時間までに機械類を停止させるために、人物を検出しなければならない機械類からの最小距離を決定するようにプログラムされることができる。代替として、要求される検出距離は、ディスプレイ２２０を介して制御システム１１２に直接入力されることができる。制御システム１１２は、次いで、作業空間１００が、全ての接近を検出するために十分に網羅されているかどうかを決定するために、全てのセンサ１０２１−３の視野を分析することができる。センサ網羅範囲が、不十分である場合、制御システム１１２は、網羅範囲不足を是正し得る、既存のセンサ１０２１−３のための新しい場所および／または付加的センサのための場所を提案してもよい。そうでなければ、制御システム１１２は、デフォルトの安全状態になり、分析モジュール２３７が、全ての接近がセンサ１０２１−３によって効果的に監視され得ることを検証するまで、任意の機械類が動作することを可能にし得ない。
【００６４】
いくつかの事例では、センサ１０２１−３が、安全性を確実にするために十分に観察することができないが、ケージ等の他の手段によって防護される面積が、存在する。この場合では、ユーザインターフェースは、人間オペレータＨが、制御システム１１２に、これらの面積が、安全と見なされ得ることを示すことを可能にし、センサベースの安全分析および／または任意の内蔵固有安全分析をオーバーライドするように構成されることができる。
【００６５】
図５Ａおよび５Ｂは、作業空間内のシーンを適切に網羅するようにセンサを構成するための例示的アプローチを図示する、フローチャートである。最初に図５Ａを参照すると、第１のステップ５０２において、ディスプレイ２２０上に示されるユーザインターフェースは、全てのセンサ１０２１−３の網羅範囲を示す、双方向３Ｄディスプレイを提供してもよい。本システムが、制御されている機械類についての十分な高レベル情報とともに構成される場合、制御システム１１２は、例えば、センサ１０２１−３の視野によって網羅されない面積の単純な列挙、最適なシーン網羅範囲を達成するための提案されるセンサ場所、および／または付加的センサに関する示唆される設置として、センサ１０２１−３の構成によって提供される網羅面積に関する知的フィードバックを提供するであろう（ステップ５０４）。一実施形態では、分析モジュール２３７は、フィードバックに基づいて、光源に、センサ１０２１−３の監視される網羅範囲および／またはセンサ毎の提案された場所の輪郭を描く信号または１つ以上の光ビームを作業空間１００上に投影させてもよい（ステップ５０６）。加えて、または代替として、分析モジュール２３７は、拡張現実または仮想現実デバイスに、ディスプレイ２２０上に作業空間１００の画像およびセンサ網羅範囲を投影させてもよい（ステップ５０８）。分析モジュール２３７によって提供されるフィードバックおよび／または投影されたセンサ網羅範囲および／またはセンサの提案された場所に基づいて、制御システム１１２は、その姿勢を調節するように、センサと関連付けられるソフトウェア／ハードウェアコンポーネント１１４１−３を調節し、それによって、最適なシーン網羅範囲を達成するように構成されてもよい（ステップ５１０）。随意に、制御システム１１２はさらに、全ての（または少なくとも殆どの）センサ１０２１−３によって観察され得る場所に機械類を動作させ（例えば、ロボットを移動させ）（ステップ５１２）、それによって、位置合わせの正確度を改良し、および、センサ１０２１−３によって観察されることができないオクルージョンまたは安全ではない空間を動的に決定する（ステップ５１４）。
【００６６】
代替として、図５Ｂを参照すると、制御システム１１２は、これが、人物がこれに到達する時間までに機械類を停止させるために、人物を検出しなければならない機械類からの最小距離を決定するようにプログラムされることができる（ステップ５２２）。いくつかの実施形態では、要求される検出距離は、制御システム１１２に直接入力されることができる（ステップ５２４）。制御システム１１２は、次いで、作業空間１００が、全ての接近を検出するために十分に網羅されているかどうかを決定するために、全てのセンサ１０２１−３の視野を分析することができる（ステップ５２６）。センサ網羅範囲が、不十分である場合、制御システム１１２は、網羅範囲不足を是正し得る、既存のセンサ１０２１−３のための新しい場所および／または付加的センサのための場所を提案してもよい（ステップ５２８）。そうでなければ、制御システム１１２は、デフォルトの安全状態になり、分析モジュール２３７が、全ての接近がセンサ１０２１−３によって効果的に監視され得ることを検証するまで、任意の機械類が動作することを可能にし得ない（ステップ５３０）。
【００６７】
４）  システム動作の間の位置合わせ検証
いったんセンサ１０２１−３間およびセンサ１０２１−３と機械類との間の位置合わせが、達成されると、センサ１０２１−３が、作業空間１００内の機械類の動作の間、同一の場所および配向に留まることが重要である。一実施形態では、センサの初期位置合わせ状態は、本システムが、動作の間に位置合わせされない、および／または作業セルが、新しい物理的場所に移動される場合に、これが、後で読み出され得るように、メモリ２１０内に記憶されることができる。１つ以上のセンサ１０２１−３が、その位置合わせされた位置から偶発的に移動される、またはドリフトすると、センサは、相互および／または機械類に対して不整合され得、その結果、センサ１０２１−３の網羅面積は、所定の面積外に変動し得、制御出力は、無効になり、安全上の問題をもたらすであろう。種々の実施形態では、上記に説明されるセンサ１０２１−３間およびセンサ１０２１−３と機械類との間の初期位置合わせのために使用される同一のアプローチは、（ｉ）動作の間のセンサ１０２１−３間およびセンサ１０２１−３と機械類との間の位置合わせの継続的正確度および（ｉｉ）センサ１０２１−３の網羅面積を監視するために拡大されることができる。例えば、上記に説明される初期位置合わせの間、制御システム１１２（例えば、位置合わせモジュール２３９）は、位置合わせプロセスの間に作成される作業空間内の静的要素のモデルへの観察されるデータの適合正確度を捕捉するメトリックのセットを算出してもよい。これらのメトリックは、例えば、位置合わせ検証、リアルタイムロボット追跡等を含んでもよい。本システムが、動作する際、同一のメトリックは、リアルタイムで再計算される。メトリックまたは初期メトリック値（すなわち、初期位置合わせの間に取得される）からのメトリックの逸脱が、規定された閾値を超える場合、および／または網羅面積が、観察されることが予期されるものの境界外である場合、システム動作の間の位置合わせは、無効であると見なされてもよく、エラー条件が、トリガされてもよい。続けて、ロボット１０６および／または機械類は、ロボット／機械類が低減された速度で動作される、または非アクティブ化される、安全状態に遷移されてもよい。加えて、機械類の動作の間、センサ１０２１−３が、定位置に留まるが、視野が、不明瞭にされる、または遮断される、および／または測定されたセンサ信号が、（例えば、本システムのある故障を通して、または人間のアクションを通して）劣化する場合、制御システム１１２は、出力が無効であると決定し、次いで、機械類を安全状態に遷移させてもよい。
【００６８】
図６は、機械類の動作の間にセンサ間およびセンサと機械類との間の位置合わせを検証するための例示的アプローチを図示する、フローチャートである。第１のステップ６０２において、センサ１０２１−３間およびセンサ１０２１−３と機械類との間の初期位置合わせの間、位置合わせモジュール２３９は、位置合わせプロセスの間に作成される作業空間１００内の静的要素のモデルへの観察されるデータの適合正確度を捕捉するメトリックのセット（例えば、位置合わせ検証、リアルタイムロボット追跡等）を算出してもよい。位置合わせの完了に応じて、本システムが、動作する際、位置合わせモジュール２３９は、リアルタイムで同一のメトリックを連続的に更新してもよい（ステップ６０４）。メトリックまたは初期メトリック値（すなわち、初期位置合わせの間に取得される）からのメトリックの逸脱が、規定された閾値を超える場合、および／または網羅面積が、観察されることが予期されるものの境界外である場合、システム動作の間の位置合わせは、無効であると見なされてもよく、エラー条件が、トリガされてもよい（ステップ６０６）。続けて、ロボット１０６および／または機械類は、ロボット／機械類が低減された速度で動作される、または非アクティブ化される、安全状態に遷移されてもよい（ステップ６０８）。加えて、分析モジュール２３７は、機械類の動作の間、入手されたセンサ信号を連続的に分析してもよい（ステップ６１０）。センサ１０２１−３が、定位置に留まるが、視野が、不明瞭にされる、または遮断される、および／または測定されたセンサ信号が、（例えば、本システムのある故障を通して、または人間のアクションを通して）劣化する場合、制御システム１１２は、出力が無効であると決定し、次いで、機械類を安全状態に遷移させてもよい（ステップ６１２）。メトリックまたは初期メトリック値からのメトリックの逸脱が、規定された閾値を超えず、網羅面積が、予期される観察面積の境界内にあり、センサの視野が、不明瞭にされず、または遮断されず、測定されたセンサ信号が、劣化しない場合、制御システム１１２は、機械類に、指定されたタスクを連続的に実施させてもよい（ステップ６１４）。
【００６９】
本明細書に使用される用語「コントローラ」または「制御システム」は、上記に説明されるような任意の機能性を実施するために利用される全ての必要なハードウェアコンポーネントおよび／またはソフトウェアモジュールを広く含み、コントローラは、複数のハードウェアコンポーネントおよび／またはソフトウェアモジュールを含んでもよく、機能性は、異なるコンポーネントおよび／またはモジュール間に分散されることができる。機能が、１つ以上のソフトウェアプログラムとして提供される実施形態に関して、プログラムは、上記に記載されるような好適な言語でコーディングされてもよい。加えて、ソフトウェアは、標的コンピュータ上に常駐するマイクロプロセッサを対象とするアセンブリ言語で実装されることができ、例えば、ソフトウェアは、これが、ＩＢＭ  ＰＣまたはＰＣクローン上で実行するように構成される場合、Ｉｎｔｅｌ  ８０ｘ８６アセンブリ言語で実装されてもよい。ソフトウェアは、限定ではないが、フロッピー（登録商標）ディスク、ジャンプドライブ、ハードディスク、光学ディスク、磁気テープ、ＰＲＯＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭ、フィールドプログラマブルゲートアレイ、またはＣＤ−ＲＯＭを含む、製造品上で具現化されてもよい。ハードウェア回路を使用する実施形態は、例えば、１つ以上のＦＰＧＡ、ＣＰＬＤ、またはＡＳＩＣプロセッサを使用して実装されてもよい。
【００７０】
本明細書に採用される用語および表現は、限定ではなく、説明の用語および表現として使用され、そのような用語および表現の使用において、示され、説明される特徴またはその一部の任意の均等物を除外するいかなる意図も、存在しない。加えて、本発明のある実施形態を説明したが、本明細書に開示される概念を組み込む他の実施形態も、本発明の精神および範囲から逸脱することなく使用され得ることが、当業者に明白となるであろう。故に、説明される実施形態は、あらゆる点で、制限的ではなく、例証的にすぎないと見なされるものである。
【図１】
2021534990.tif 000003
【図２】
2021534990.tif 000004
【図３】
2021534990.tif 000005
【図４Ａ】
2021534990.tif 000006
【図４Ｂ】
2021534990.tif 000007
【図４Ｃ】
2021534990.tif 000008
【図５Ａ】
2021534990.tif 000009
【図５Ｂ】
2021534990.tif 000010
【図６】
2021534990.tif 000011
【手続補正書】
【提出日】令和3年4月23日(2021.4.23)
【手続補正１】
【補正対象書類名】図面
【補正対象項目名】全図
【補正方法】変更
【補正の内容】
【図１】
2021534990.tif 000012
【図２】
2021534990.tif 000013
【図３】
2021534990.tif 000014
【図４Ａ】
2021534990.tif 000015
【図４Ｂ】
2021534990.tif 000016
【図４Ｃ】
2021534990.tif 000017
【図５Ａ】
2021534990.tif 000018
【図５Ｂ】
2021534990.tif 000019
【図６】
2021534990.tif 000020
【国際調査報告】
2021534990.tif 000021
2021534990.tif 000022