(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-01-20
(45)【発行日】2022-01-28
(54)【発明の名称】仮想モデルおよびグラフィックベースのシミュレーションを使用した、製造リソース用操作ゾーンのモデリング
(51)【国際特許分類】
G06F 30/10 20200101AFI20220121BHJP
G05B 19/418 20060101ALI20220121BHJP
G06T 11/20 20060101ALI20220121BHJP
【FI】
G06F30/10
G05B19/418 Z
G06F30/10 100
G06T11/20
(21)【出願番号】P 2020137060
(22)【出願日】2020-08-14
【審査請求日】2020-08-14
(32)【優先日】2019-08-15
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】514180812
【氏名又は名称】ダッソー システムズ アメリカス コーポレイション
(74)【代理人】
【識別番号】110001243
【氏名又は名称】特許業務法人 谷・阿部特許事務所
(72)【発明者】
【氏名】ゴウラヴ クマル シャルマ
(72)【発明者】
【氏名】アヌープ キショー
【審査官】合田 幸裕
(56)【参考文献】
【文献】特開2019-091374(JP,A)
【文献】特開2007-317079(JP,A)
【文献】米国特許出願公開第2017/0235853(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 30/10
G05B 19/418
G06T 11/20
IEEE Xplore
JSTPlus(JDreamIII)
(57)【特許請求の範囲】
【請求項1】
リソースレイアウトを自動的に決定するコンピュータ実施される方法であって、
複数のリソースの各リソースによって行われる、位置およびタスクを示すデータを取得することと、
前記複数の各リソースについて、前記リソースによって行われる前記位置および前記タスクを示す、前記取得されたデータを使用して、対象の平面上に前記リソースによって占有されるそれぞれのゾーンを自動的に決定することと、
基準に基づいて自動的に、前記複数のリソースのうちの2つ以上のリソースの決定ゾーンを、結合ゾーンに結合することと、
各決定されたそれぞれのゾーンおよび前記結合ゾーンに基づいて、前記対象の平面上にある前記複数のリソースのレイアウトを示すファイルを、自動的に作成することと、
を含むことを特徴とする方法。
【請求項2】
前記リソースについてそれぞれのゾーンを決定することは、
前記リソースについて
前記取得されたデータに示される前記タスクを行う、前記リソースをシミュレーションすることと、
経時的に前記リソースの構成要素を予測して、前記対象の平面上にある前記リソースの閉輪郭を生成することと、
正規化されたブール集合演算を使用して、前記輪郭を前記ゾーンに結合することと、
を含むことを特徴とする請求項1に記載の方法。
【請求項3】
レイアウトの中に安全ゾーンを示すことをさらに含むことを特徴とする請求項1に記載の方法。
【請求項4】
前記2つ以上のリソースの前記決定ゾーンを結合することは、
前記2つ以上のリソースの前記ゾーンを包含する、最適なサイズのゾーンを決定することであって、前記最適なサイズのゾーンが、前記結合ゾーンであることを含むことを特徴とする請求項1に記載の方法。
【請求項5】
前記最適なサイズのゾーンを決定することは、
前記最適なサイズのゾーンを形成するために、第1の係数および第2の係数を使用して、前記2つ以上のゾーンのうちの前記ゾーンを拡張および侵食することを含むことを特徴とする請求項4に記載の方法。
【請求項6】
前記第1の係数および前記第2の係数は各々、前記2つ以上のゾーン間の最小距離を含む集合からの最大値の関数であることを特徴とする請求項5に記載の方法。
【請求項7】
前記拡張および侵食することは、
拡張されたゾーンを形成するために、前記第1の係数を使用して、前記2つ以上のゾーンのうちの前記ゾーンを拡張することと、
前記拡張されたゾーンを結合して、スーパーゾーンを形成することと、
前記第2の係数を使用して前記スーパーゾーンを浸食して、前記最適なサイズのゾーンを形成することと、
を含むことを特徴とする請求項5に記載の方法。
【請求項8】
前記基準が、負のオフセット値を含み、前記方法がさらに、
複数の異なる負のオフセット値を使用して、前記2つ以上のリソースの前記決定ゾーンを結合することによって、複数のそれぞれの結合ゾーンを決定することと、
前記レイアウトを示す前記ファイルを作成するために、前記決定された複数の結合ゾーンから、安全係数に基づいて所与の結合ゾーンを選択することと、
を含むことを特徴とする請求項1に記載の方法。
【請求項9】
前記基準は、ゾーン間の距離、ユーザ定義の制限、および前記2つ以上のゾーンのリソースによって行われるタスクのうちの少なくとも1つであることを特徴とする請求項1に記載の方法。
【請求項10】
前記ゾーン間の距離が、結合されるゾーン間の距離に対する下限および上限を含むことを特徴とする請求項9に記載の方法。
【請求項11】
前記基準に基づいて前記結合することは、
前記決定ゾーンより、前記基準のうちの少なくとも1つに基づいて、結合するための前記2つ以上のリソースの候補ゾーンを選択することと、
前記基準を前記候補ゾーンに適用して、結合する前記2つ以上のゾーンのうちの前記決定ゾーンを識別することと、
前記2つ以上のゾーンのうちの前記識別されたゾーンを、前記結合ゾーンに結合することと、
を含むことを特徴とする請求項9に記載の方法。
【請求項12】
前記ユーザ定義の制限が、特定のゾーンを前記候補ゾーンに含めることを含むことを特徴とする請求項11に記載の方法。
【請求項13】
前記複数のリソースのうちの所与のリソースが、産業リソース、ロボット、ヒト、機械ツール、および設備のうち少なくとも1つであることを特徴とする請求項1に記載の方法。
【請求項14】
前記対象の平面が工場の床であることを特徴とする請求項1に記載の方法。
【請求項15】
リソースレイアウトを自動的に決定するためのシステムであって、前記システムは、
プロセッサと、
コンピュータコード命令が記憶されたメモリと、を備え、前記プロセッサおよび前記メモリは、前記コンピュータコード命令で、前記システムに、
複数のリソースの各リソースによって行われる位置およびタスクを示すデータを取得させ、
前記複数の各リソースについて、前記リソースによって行われる前記位置および前記タスクを示す、前記取得されたデータを使用して、対象の平面上に前記リソースによって占有されるそれぞれのゾーンを自動的に決定させ、
基準に基づいて自動的に、前記複数のリソースのうちの二つ以上のリソースの決定ゾーンを、結合ゾーンに結合させ、
各決定されたそれぞれのゾーンおよび前記結合ゾーンに基づいて、前記対象の平面上にある前記複数のリソースのレイアウトを示すファイルを、自動的に作成させるように構成されたことを特徴とするシステム。
【請求項16】
リソースレイアウトを自動的に決定するための、コンピュータプログラムであって、前記コンピュータプログラムは、1つまたは複数のクライアントとネットワークを介して通信するサーバによって実行され、
前記コンピュータプログラムは非一時的コンピュータ可読記録媒体に記憶され、前記コンピュータプログラムは、プロセッサによって実行されるとき、前記プロセッサに、
複数のリソースの各リソースによって行われる位置およびタスクを示すデータを取得させ、
前記複数の各リソースについて、前記リソースによって行われる前記位置および前記タスクを示す、前記取得されたデータを使用して、対象の平面上に前記リソースによって占有されるそれぞれのゾーンを自動的に決定させ、
基準に基づいて自動的に、前記複数のリソースのうちの2つ以上のリソースの決定ゾーンを、結合ゾーンに結合させ、
各決定されたそれぞれのゾーンおよび前記結合ゾーンに基づいて、前記対象の平面上にある前記複数のリソースのレイアウトを示すファイルを、自動的に作成させるプログラム命令を備えたことを特徴とするコンピュータプログラム。
【請求項17】
複数のリソースを包含する結合された産業作業ゾーンを決定する、コンピュータ実施される方法であって、
実世界の対象作業エリアのCADモデル表現とのユーザのやり取りに応答して、
前記実世界の対象作業エリアの中に複数のゾーンを示すデータを取得することであって、各ゾーンがリソースによって占有され、前記データを取得することが、デジタルプロセッサによって実施される、該取得することと、
前記プロセッサによって、前記複数のゾーンのうちの二つ以上のゾーンを結合するための、ユーザ定義の距離基準を受信することと、
前記複数のゾーンを示す前記取得されたデータを使用して、前記複数のゾーンの各ゾーン間の最小距離を自動的に決定することと、
各ゾーンと前記ユーザ定義の距離基準との間で前記決定された最小距離に基づいて、前記複数のゾーンからマージする候補ゾーンを自動的に識別することであって、前記自動的に決定および自動的に識別することは、前記ユーザ定義の距離基準のユーザ入力に応答して、前記プロセッサによって行われる、該識別することと、
前記プロセッサが第1の係数を使用して、前記候補ゾーンを広げることによって、前記識別された候補ゾーンを接続することと、
前記プロセッサが第2の係数を使用して、前記接続された候補ゾーンを収縮することによって、結合ゾーンを決定することであって、前記結合ゾーンを前記決定することは、前記プロセッサが、前記決定された結合ゾーンの出力表示を提供することを含む、該決定することと、
を含むことを特徴とする方法。
【請求項18】
前記第1の係数および第2の係数は各々、前記候補ゾーン間の決定された最小距離を含む集合からの最大値の関数であることを特徴とする請求項17に記載の方法。
【請求項19】
ユーザ定義の接続係数を受信することをさらに含み、
前記第1の係数は、前記候補ゾーンと前記受信されたユーザ定義の接続係数との間で決定された最小距離を含む集合からの最大値の関数であることを特徴とする請求項17に記載の方法。
【請求項20】
結合されるゾーンに関する、1つまたは複数のユーザ定義の制限を受信することと、
各ゾーンと、前記ユーザ定義の距離基準と、前記結合されるゾーンに関する受信された一つまたは複数のユーザ定義の制限との間で、前記決定された最小距離に基づいて、マージする前記候補ゾーンを識別することとをさらに含むことを特徴とする請求項17に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
実施形態は、三次元(3D)コンピュータグラフィックモデリングおよびシミュレーション、リソースのタスク定義、リソースのレイアウト、製造リソース計画、ならびにオフラインプログラミングの機能性改善に関する。
【背景技術】
【0002】
いくつかのシステムおよびプログラムが、部品の設計、部品組立品の設計、3Dコンピュータのグラフィックモデリングおよびシミュレーション、リソースのタスク定義、レイアウト、製造リソース計画、ならびにオフラインプログラミング用に市場で提供されている。これらのコンピュータ支援設計(CAD)システムによって、ユーザが、物体または物体の組立品の複雑な三次元モデルを構築し操作することが可能になる。したがって、CADシステムは、特定の場合には面を伴う、辺または線を使用したモデル化された物体の表現を提供する。線、辺、面、または多角形は、様々な方法、例えば、非一様有理Bスプライン(NURBS)で表現され得る。
【0003】
これらCADシステムは、主に幾何学的形状の仕様である、モデル化された物体の部品または部品の組立品を管理する。特に、CADファイルは、仕様を含み、そこから幾何学的形状が生成される。幾何学的形状から、表現が生成される。仕様、幾何学形状、および表現は、一つのCADファイルまたは複数のCADファイルに記憶できる。CADシステムは、モデル化された物体を設計者に示すためのグラフィックツールを含み、これらのツールは、複雑な物体の表示専用である。例えば、組立品は、数千個の部品を含み得る。CADシステムは、物体のモデルを管理するために使用することができ、それらは、電子ファイルに記憶されている。
【0004】
CADおよびCAEシステムによって、物体表現の可能性の幅を広げることができる。一つのかかる表現は、有限要素モデル(FEM)である。有限要素解析(FEA)モデル、FEM、有限要素メッシュ、およびメッシュという用語は、本明細書では互換的に使用されている。FEMは典型的にCADモデルを表現し、したがって、一つまたは複数の部品または組立品全体を表現し得る。FEMは、メッシュと呼ばれるグリッドを作るために相互接続された、ノードと呼ばれる点のシステムである。
【0005】
FEMが、表現する根底にある一つまたは複数の物体のプロパティを有するような方法で、FEMをプログラムしてもよい。FEM、または他のかかるCADもしくはCAEモデルは、かかる方法でプログラムされている場合、モデルが表現する物体のシミュレーションを行うために使用され得る。例えば、FEMは、車両の内部空洞、構造体を囲む音響流体、ならびにあらゆる数の実世界の物体(物理学ベースのシステム)および他のシステムを表現するために使用され得る。所与のモデルは、物体を表現し、そのとおりにプログラムされる場合には、実世界の物体自体をシミュレーションするために使用され得る。例えば、ステントを表現するFEMを使用して、実際の医療現場でのステントの使用をシミュレーションし得る。
【0006】
CAD、CAE、およびFEMモデルを使用して、モデルが表現する物体および環境の設計を改善し得る。設計の改善は、モデルの設計と、それによるモデルが表現する根底にある物体および/もしくは環境とへの変更を確認するために、シミュレーション、ならびに/または一連のシミュレーションを実行する最適化技術を使用することによって確認できる。
【0007】
3Dコンピュータグラフィックベースのシミュレーションは、製造プロセスをシミュレーションするのに広く使用されている。産業リソースの3Dコンピュータグラフィックモデル、およびそれらの挙動のシミュレーショによって、ユーザが工場で様々な製造プロセスをモデル化、最適化、および検証することが可能になる。FEMを使用して解決される、一般的な工学的問題のように、例えば、産業リソースのレイアウト設計といったプラント設計は非常に複雑であり、モデリングおよびシミュレーション技術は、これらの複雑な設計問題に対するソリューションを繰り返し得る方法を提供する。さらに、決定されたシミュレーションプログラムは、工場のリソースを駆動するために使用される、工場のコンピュータにダウンロードすることができる。
【0008】
グラフィックベースのシミュレーション機能性を備えた、かかるオフラインプログラミング(OLP)システムは、実際の試運転段階中の計算作業の低減による製造環境の変化に、迅速に適合する能力でも知られている。
【0009】
製造リソースのレイアウト設計の計画は、パフォーマンス、工場の床スペースの空間保全、人間工学的観点を最適化する重要な側面である。かかる計画には通常、製造リソースの操作ゾーンによって占有される実際の空間、および製造プロセスの状況におけるリソース間の関係を使用する代わりに、レイアウト設計者の従来の工学知識を使用する。結果として、工場の床の使用が非効率的となる。レイアウト設計をさらに複雑化するのは、製造環境(新しいリソース、プロセスなど)の変化によるレイアウトの変更が、非常に複雑だという事実である。
【0010】
リソースのグラフィックモデルおよびグラフィックベースのシミュレーションを備えたOLPシステムは、かかる制約を克服するための有望なアプローチである。かかるシステムにより、ユーザが図形モデルを使用して、様々な産業リソースを捕捉できるようになり、これらのリソースの様々な移動は、タスクベースのグラフィックシミュレーションを使用して捕捉される。この用途には、プロセスに関するこれらのリソース間の関係を把握し、トポロジーを変更することによってこれらの操作ゾーンを編集するために、所与である対象の平面、例えば、工場の床上のリソースの操作ゾーンを画定する、新しいソフトウェアツールが必要である。また、工場で使用されるリソース数が非常に大きくなり得るため、かかるツールにより、ユーザが高レベルのユーザ入力を使用して変更することが可能になるべきである。
【発明の概要】
【0011】
実施形態によって、リソースレイアウトおよび環境計画に機能性を提供する。一つのかかる実施形態では、所与の平面上のリソースに対する、所与のタスクのための操作ゾーンを画定する。一実施形態は、所与の平面上にあるリソースの各運動連鎖のソリッドモデルを予測し、タスクのシミュレーションの一部としてブール集合演算を適用することによって、二次元仮想表現を構築する。実施形態は、二次元でブール集合演算を行うことによって効率を改善する。
【0012】
一実施形態によれば、ユーザは、近接情報に基づいて結合できるリソースに対応する、ゾーンの集合を識別することができる。開発された新規の幾何学的演算子は、結合操作ゾーンを表すゾーンのトポロジーを変更するように、ゾーンのその後の拡張および浸食と併せて、ハウスドルフ距離(最小距離のうちの最大値)を使用し得る。
【0013】
対象の平面上の操作ゾーンの表現は、既存の3D掃引容積ベースの方法と比較して、より一層効率的でコンパクトかつ直感的で、すなわち使いやすい。有利なことに、この表現は、複雑で不規則な操作ゾーンを、個別ゾーンの元の形状から最小限の偏差で自動的に結合することを可能にする、幾何学的演算子を備える。既存の方法は、かかる機能性を提供しない。
【0014】
一実施形態は、リソースレイアウトを自動的に決定するためのコンピュータ実施される方法を対象とする。特に、方法は、複数のリソースの各リソースによって行われる位置およびタスクを示す、データを取得することから始まる。次に、複数の各リソースについて、リソースによって占有される対象の平面上のそれぞれのゾーンが、リソースによって行われる位置およびタスクを示す、取得されたデータを使用して、自動的に決定される。そして、複数のリソースのうちの二つ以上のリソースの決定ゾーンを、基準に基づいて結合ゾーンに自動的に結合する。次に、複数のリソースのレイアウトを示す作業または出力ファイル、例えば、CAD/CAMファイルを、決定ゾーンおよび結合ゾーンに基づいて自動的に作成する。一実施形態によれば、レイアウトは実世界の作業エリアの中である。例示的な一実施形態では、取得、決定、結合、および作成は、ユーザコマンドに応答して、プロセッサによって自動的に行われる。さらに、別の実施形態によれば、作業/出力ファイルを作成することには、プロセッサが、作成されたファイルを電子的に共有可能な様式で提供することを含むことができる。さらに、作業/出力ファイルは、ユーザに表示ビュー(図形またはモデル表現)を提供できるか、または関連する関係ソフトウェア(例えば、ロボットなど工場床の要素用のコントローラ)と共有可能なデータファイルとして機能することができる。かかる実施形態では、作成された作業/出力ファイルによって、決定されたレイアウトに従い移動および/または動作するように、工場リソースの制御を実施し得る。
【0015】
一実施形態によれば、リソースについてそれぞれのゾーンを決定することは、(1)リソースについて得られたデータに示されるタスクを行う、リソースをシミュレーションすることと、(2)経時的にリソースの構成要素を予測して、対象の平面上にあるリソースの閉輪郭を生成することと、(3)正規化されたブール集合演算を使用して、輪郭をゾーンに結合することとを含む。別の実施形態は、レイアウトの中に安全ゾーンを示すことをさらに含む。かかる実施形態では、安全ゾーンは作業/出力ファイルの中に示され得る。さらに、安全ゾーンは、ユーザが指定した安全マージン、ならびに/または決定ゾーンおよび結合ゾーンに基づいて決定され得る。
【0016】
さらに別の実施形態では、二つ以上のリソースの決定ゾーンを結合することは、二つ以上のリソースのゾーンを包含する、最適なサイズのゾーンを決定することを含み、最適なサイズのゾーンは結合ゾーンである。かかる実施形態では、最適なサイズのゾーンを決定することは、最適なサイズのゾーンを形成するために、第一の係数および第二の係数を使用して、二つ以上のゾーンのうちのゾーンを拡張および侵食することを含む。一実施形態によれば、拡張および侵食することは、(i)拡張されたゾーンを形成するために、第一の係数を使用して、二つ以上のゾーンのうちのゾーンを拡張することと、(ii)拡張されたゾーンを結合して、スーパーゾーンを形成することと、(iii)第二の係数を使用してスーパーゾーンを浸食して、最適なサイズのゾーンを形成することとを含む。一実施形態では、第一の係数および第二の係数は各々、二つ以上のゾーン間の最小距離を含む集合からの最大値の関数、例えば、距離関数である。
【0017】
コンピュータ実施される方法の別の実施形態では、基準は負のオフセット値を含む。かかる実施形態は、複数の異なる負のオフセット値を使用して、二つ以上のリソースの決定ゾーンを結合することによって、複数のそれぞれの結合ゾーンを決定することと、レイアウトを示すファイルを作成するために、決定された複数の結合ゾーンから、安全係数に基づいて所与の結合ゾーンを選択することとをさらに含んでもよい。
【0018】
実施形態では、ゾーンを結合する、任意の様々な基準および基準の任意の組み合わせを利用し得る。例示的な基準には、ゾーン間の距離、ユーザ定義の制限、および二つ以上のゾーンのリソースによって行われるタスクのうちの少なくとも一つが挙げられる。一実施形態では、ゾーン間の距離は、結合されるゾーン間の距離に対する下限および上限を含む。
【0019】
さらに別の実施形態では、基準に基づいて結合することは、基準のうちの少なくとも一つに基づいて結合するために、二つ以上のリソースの候補ゾーンを、決定ゾーンより選択することを含む。かかる特定の実施形態では、基準を候補ゾーンに適用して、結合する二つ以上のゾーンのうちの決定ゾーンを識別し、二つ以上のゾーンのうちの識別されたゾーンを、結合ゾーンに結合する。さらに、かかる実施形態では、ユーザ定義の制限は、特定のゾーンを候補ゾーンに含めることを含み得る。
【0020】
実施形態によって、当該技術分野で知られる任意の種類のリソースに対するレイアウトを決定することができ、当該技術分野で知られる任意の種類の対象の平面に対するレイアウトを決定することができる。一実施形態によれば、複数のリソースのうちの所与のリソースは、産業リソース、ロボット、ヒト、機械ツール、および設備のうち少なくとも一つである。別の実施形態では、対象の平面は工場の床である。
【0021】
別の実施形態は、リソースレイアウトを自動的に決定するためのシステム、例えば、コンピュータベースのシステムを対象とする。システムは、プロセッサと、コンピュータコード命令が記憶されたメモリとを含み、本明細書に記載されるように、それらによって、システムにリソースレイアウトを決定させる。システムは、本明細書に記載される、任意の実施形態または実施形態の組み合わせを実施するように構成されてもよい。
【0022】
例示的な一実施形態では、システムは、複数のリソースの各リソースによって行われる、位置およびタスクを示すデータを取得するように構成される。取得されたデータを使用して、システムは、複数の各リソースについて、対象の平面上にリソースによって占有されるそれぞれのゾーンを自動的に決定する。システムはさらに、基準に基づいて自動的に、複数のリソースのうちの二つ以上のリソースの決定ゾーンを、結合ゾーンに結合し、決定ゾーンおよび結合ゾーンに基づいて、対象の平面上にある複数のリソースのレイアウトを示す作業または出力ファイルを、自動的に作成するように構成される。さらに、一実施形態では、作業/出力ファイルを作成することは、作成されたファイルを電子的に共有可能な様式で提供することを含み得る。さらに、作業/出力ファイルは、ユーザに表示ビュー(図形またはモデル表現)を提供できるか、または関連する関係ソフトウェアもしくはハードウェア(例えば、ロボットなど工場床の要素用のコントローラ)と共有可能なデータファイルであり得る。かかる実施形態では、作業/出力ファイルによって、決定されたレイアウトに従い移動および/または動作するように、工場リソースの制御を実施し得る。
【0023】
本発明の別の実施形態は、リソースレイアウトを自動的に決定するための、クラウドコンピューティング実装を対象とする。かかる実施形態は、ネットワーク上で一つまたは複数のクライアントと通信しているサーバによって実行される、コンピュータプログラム製品を対象とし、コンピュータプログラム製品は、コンピュータ可読媒体を備える。かかる実施形態では、コンピュータ可読媒体は、プロセッサによって実行されるとき、プロセッサに、複数のリソースの各リソースによって行われる位置およびタスクを示すデータを取得させ、複数の各リソースについて、リソースによって行われる位置およびタスクを示す、取得されたデータを使用して、対象の平面上にリソースによって占有されるそれぞれのゾーンを自動的に決定させる、プログラム命令を含む。さらに、実行されるコンピュータプログラム製品(その上にプログラム命令)によって、プロセッサに、基準に基づいて自動的に、複数のリソースのうちの二つ以上のリソースの決定ゾーンを、結合ゾーンに結合させ、決定ゾーンおよび結合ゾーンに基づいて、対象の平面上にある複数のリソースのレイアウトを示す作業または出力ファイルを、自動的に作成させる。さらに、一実施形態では、作業/出力ファイルを作成することは、作成されたファイルを電子的に共有可能な様式で提供することを含み得る。さらに、作業/出力ファイルは、ユーザに表示ビュー(図形またはモデル表現)を提供できるか、または関連する関係ソフトウェアもしくはハードウェアと共有可能なデータファイルであり得る。かかる実施形態では、作業/出力ファイルによって、決定されたレイアウトに従い移動および/または動作するように、工場リソースの制御を実施し得る。
【0024】
方法、システム、およびクラウドコンピューティングの実施形態は、本明細書に記載される、任意の実施形態または実施形態の組み合わせを行い得ることに留意されたい。
【0025】
さらに別の実施形態は、複数のリソースを包含する結合された産業作業ゾーンを決定する、コンピュータ実施される方法を対象とする。かかる実施形態では、実世界の対象作業エリアのCADモデル表現とのユーザのやり取りに応答して、実世界の対象作業エリアの中に複数のゾーンを示すデータを取得する。かかる実施形態では、各ゾーンはリソースによって占有され、データの取得は、デジタルプロセッサによって実施される。方法は続き、プロセッサが、複数のゾーンのうちの二つ以上のゾーンを結合するための、ユーザ定義の距離基準を受信する。そして、複数のゾーンを示す取得されたデータを使用して、プロセッサは、複数のゾーンの各ゾーン間の最小距離を自動的に決定する。次に、複数のゾーンから、プロセッサは、各ゾーンとユーザ定義の距離基準との間で決定された最小距離に基づいて、マージする候補ゾーンを自動的に識別する。一実施形態では、自動的に決定および自動的に識別することは、ユーザ定義の距離基準のユーザ入力に応答して、プロセッサによって行われる。継続するために、プロセッサは、第一の係数を使用して候補ゾーンを広げ、第二の係数を使用して接続された候補ゾーンを収縮することによって、識別された候補ゾーンを接続する。このように、プロセッサは結合ゾーンを決定する。一実施形態によれば、結合ゾーンを決定することは、プロセッサが、決定された結合ゾーンの出力表示を提供することを含む。この出力表示は、ユーザへの表示ビュー(図形またはモデル表現)であり得るか、または関連する関係ソフトウェア(例えば、ロボットなど工場床の要素用のコントローラ)と共有可能なデータファイルであり得る。
【0026】
一実施形態によれば、第一の係数および第二の係数は各々、候補ゾーン間で決定された最小距離を含む集合からの最大値の関数、例えば、距離関数である。別の実施形態はさらに、ユーザ定義の接続係数を受信することを含み、かかる実施形態では、第一の係数は、候補ゾーンと受信されたユーザ定義の接続係数との間で決定された最小距離を含む集合からの最大値の関数である。例示的な一実施形態はさらに、結合されるゾーンに関する、一つまたは複数のユーザ定義の制限を受信することと、各ゾーンと、ユーザ定義の距離基準と、結合されるゾーンに関する受信された一つまたは複数のユーザ定義の制限との間で、決定された最小距離に基づいて、マージする候補ゾーンを識別することとを含む。
【図面の簡単な説明】
【0027】
前述は、類似の参照文字が、異なる図に渡って同じ部品を言及する添付図面に示すように、例示的な実施形態に関する、より具体的な以下の記載から明らかとなるであろう。図面は必ずしも正確な縮尺ではなく、実施形態を図示することに重点が置かれている。
【0028】
【
図1】
図1は、一実施形態による、リソースレイアウトを決定するための方法のフローチャートである。
【
図2】
図2は、リソース用レイアウトを決定するための、一実施形態のフロー図である。
【
図3】
図3は、実施形態を使用してレイアウトを決定し得る、平面上のリソースを描写する概略図である。
【
図4】
図4は、本明細書に記載されるように、レイアウトを決定するときに考慮され得る、
図3のリソース間の関係を示す簡略図である。
【
図5】
図5は、実施形態で決定され得る、リソース操作ゾーンを示す概略図である。
【
図6】
図6は、
図5に描写する操作ゾーンの簡略化された等角図である。
【
図7】
図7は、一実施形態の原理を使用して結合された、
図5に描写する操作ゾーンの平面図である。
【
図8】
図8は、実施形態の原理を使用して決定され得る、
図5の操作ゾーンの別の結合の図である。
【
図9】
図9は、実施形態によってリソースの操作ゾーンを結合する時に考慮され得る、
図3のリソース間の関係を示す図である。
【
図10】
図10は、
図9に描写した関係に基づいて、本発明の原理を使用して、
図5の操作ゾーンを結合した簡略化された平面図である
【
図12】
図12は、近接関係に基づいて結合された、
図5の操作ゾーンの平面図である。
【
図13】
図13は、一実施形態による、操作ゾーンまたはその仮想表現を作成するために使用される、輪郭の結合を図で描写する。
【
図14】
図14は、ゾーンの結合で使用され得る、ゾーン間の評価された距離を描写する。
【
図15】
図15は、リソースのレイアウトを決定する際に結合され得る、リソースの例示的な円形操作ゾーンを描写する。
【
図16】
図16は、結合ゾーンを決定するように、
図15の実施例のゾーンを拡張および侵食するプロセスを示す。
【
図17】
図17は、一実施形態によるゾーンを結合するプロセスを図で描写する。
【
図18】
図18A~Bは、実施形態によって結合され得るリソースゾーンを示す、概略図である。
【
図19】
図19A~Dは、実施形態の原理に従って、異なる基準に基づいて結合されるゾーンを示す。
【
図20】
図20は、結合ゾーンの複数のオプションを決定するために、ゾーンを膨張させるプロセスを示す。
【
図21】
図21は、一実施形態による、複数のリソースを包含する、結合される産業作業ゾーンを決定する方法のフロー図である。
【
図22】
図22は、一実施形態による、リソースレイアウトを決定するためのコンピュータシステムの簡略化されたブロック図である。
【
図23】
図23は、本発明の一実施形態が実施され得る、コンピュータネットワーク環境の簡略図である。
【発明を実施するための形態】
【0029】
例示的な実施形態についての記載は、以下の通りである。
【0030】
本明細書に引用されるすべての特許、公開された出願、および参考文献の教示は、その全体が参照により援用される。
【0031】
現在、製造ワークセルの三次元(3D)コンピュータグラフィックベースのシミュレーションが、タスク割り当てに基づいてリソースの挙動をモデル化、最適化、および検証するために広く使用されている。オフラインプログラミングシステムは、シミュレーションされたプログラムを、実際の製造システムを実行する、ロボットのネイティブコード、数値制御(NC)機械などに変換する。OLPシステム(グラフィックシミュレータを備えた)は、新しいプログラムの迅速な適合、デバッグの削減、および実際の試運転段階中での修正取り組みを提供することにより、より柔軟な製造システムをサポートする[Leeら、Survey on the virtual commissioning of manufacturing systems、Journal of Computational Design and Engineering、1(3)、213~222(2014)]。製作環境の変更をサポートする、新しく定義されたタスクに対するワークセルの新しい構成は、製品の品質もしくは数量の変化、または高度なツールもしくはプロセスの変更に対処するように適合できる。したがって、これら現代のシステムによって、リソースレイアウトの変更がサポートされるため、環境において最適化されたリソースレイアウトを決定するのが有益である。実施形態によって、このリソースレイアウト最適化の機能性を有利に提供する(床スペース、安全上の制限、および類似のものに基づく)。
【0032】
製造システムでは、リソースは、例えば、ロボット、ヒト、および機械ツールはアクティブ、または例えば、製品および設備はパッシブと分類できる。所与の平面、例えば、工場の床上の操作ゾーンをリソースに対して画定することは、レイアウト設計によってパフォーマンス、床スペースの空間保全、および安全係数を最適化するのに重要な一態様である[ISO 10218-1:2011、US20110264266A1、CN102239032B、WO2014036549A3、US9789610B1、US10081106B2]。
【0033】
リソース、例えば、ロボット用の操作ゾーンの計算は、より高次元の問題である[Todtら、Analysis and classification of multiple robot coordination methods、Robotics and Automation、2000.議事録、ICRA’00.IEEE International Conference(Vol.4、pp.3158~3163)、IEEE(2000)]。したがって、業界で採用されている方法のほとんどは、発見的方法[NgoiおよびTay、Int J Adv.Manuf.Technol.(1996)12:377.https://doi.org/10.1007/BF01179814]、またはこれらのゾーンを評価する従来の工学知識のいずれかを使用する。結果として、操作ゾーンは、リソースに割り当てられたタスク定義に関して正確ではない。これにより、床スペースの非効率的な使用をもたらす。
【0034】
さらに、操作ゾーンの定義はプロセスに依存し得る。例えば、噴霧用途に携わるロボットは、組立品に携わるロボットと比較して、より多くの床スペースを必要とする。場合によっては、操作ゾーンは、本質的に混成であるべきであり、二つ以上のリソースが相互に作用する。例えば、あるロボットがプレートを担持し、別のロボットがそのプレートの異なる場所を溶接している場合、これら二つのロボットは、同じプロセスを共有するために、単一のゾーン内にある必要がある。さらに、これらの操作ゾーンは、ステーション全体に渡る製品のアクセスおよび送達を受け入れる必要がある。したがって、レイアウト計画または安全ゾーン作成のため、対応する操作ゾーンを結合する際に、リソース間の関係を考慮することが重要である。これらの用途では、ユーザからの高レベルの入力を使用して、ゾーンのトポロジーまたは形態を変更することによって、ユーザが操作ゾーンの表現を定義できる新しいソフトウェアツールを必要とする。実施形態によって、この機能性を提供し、ひいてはゾーンを表すユーザ対話型の柔軟性を提供する。
【0035】
例えば、ロボット(または機構)といったリソース用の空間を構成する、または複数のリソース用の複合空間を構成するアイデアは、他にも例はあるが、衝突検出およびエネルギー消費量などの様々な用途に使用されている。構成空間は、より高次元の問題である[Todtら、Analysis and classification of multiple robot coordination methods、Robotics and Automation、2000.議事録、ICRA’00.IEEE International Conference(Vol.4、pp.3158~3163)、IEEE(2000)]。タスクを実行している間に、CADシステムでリソースによって仮定される様々な配置は、幾何学的およびソリッドモデリングツールを使用することによって、取り込むことができる。かかるツールによって、各運動連鎖を、移動する固体、すなわち掃引容積(移動する固体に起因する)としてモデル化することが可能になる[Wangら、Geometric modeling for swept volume of moving solids、IEEE Computer graphics and Applications、6(12)、8~17(1986);Leeら、Complete swept volume generation, Part I:Swept volume of a piecewise C1-continuous cutter at five-axis milling via Gauss map、Computer-Aided Design、43(4)、427~441(2011)]。
【0036】
掃引容積の生成は、所与のタスクに対してリソースの操作空間を捕捉する一般的な方法である。しかしながら、掃引容積の方法は、時間の関数として運動連鎖の三次元掃引を決定し、ブール集合演算を3D掃引個別要素に渡って適用するには、計算コストが高いため、有利ではない。また、結果として生じる表現のサイズが非常に大きいため、有界エリアの編集またはクエリなど、他の目的で使用することは難しい。また、ユーザには、掃引容積によって得られる3Dデータではなく、2Dデータで作業することが直感的であり容易である。さらに、3D掃引容積は、有用性を改善するために、操作ゾーンとしての使用について2D平面上で予測され得るものの、かかる方法には、計算コストの高い3D掃引容積の使用がいまだ必要であろう。
【0037】
リソースレイアウトを設計するとき、それぞれの操作ゾーンがリソースの各々に対して画定されると、レイアウトプランナーによって、他にも例はあるが、リソース間の関係(同じタスクを調整する)および近接情報など、様々な係数に基づいて最適にリソースを配置する。結果として、操作ゾーンのレイアウトは、複雑な不規則形状を有し得る。床スペースの使用を最大化するために、結合されているゾーンと結合済みゾーンとの間の偏差を最小化することが重要である。既存の方法では、安全ゾーンのトレースまたはワークセルのレイアウト設計に使用できる、近接情報(リソース間のユーザ定義の関係)に基づいて、ゾーンのトポロジーを変更することにより、複合操作ゾーンの画定を自動化するソフトウェアツールは提供されない。
【0038】
対象の平面上で運動連鎖の点を予測し、既存の再構成アルゴリズムを使用することによって、操作ゾーンを捕捉する可能性を考慮し得る[Liangら、Analytical shape computation of macromolecules:I.Molecular area and volume through alpha shape,Proteins: Structure,Function, and Bioinformatics、33(1)、1~17(1998);Amentaら、「Surface reconstruction by Voronoi filtering」、39~48ページ(1999)]。しかしながら、かかる再構成方法の精度は、実際には可能ではない場合がある、高サンプリング密度の点に依存する。さらに、点密度がまばらな空のスペース(非操作ゾーンを表す)を得るリスクが存在する。これは、ロボットのようなリソースを使用する間に、ピンチゾーンをもたらし得るが、これは人間工学および安全性の観点から有害である。
【0039】
実施形態によって、これらの問題を解決する。
図1は、一実施形態による、リソースレイアウトを自動的に決定するための、コンピュータ実施される方法100のフローチャートである。方法100は、コンピュータで実施され、当該技術分野で知られるハードウェアおよびソフトウェアの任意の組み合わせによって行われてもよい。例えば、方法100は、プロセッサに方法100のステップ101、102、103、104を実施させる、コンピュータコード命令を記憶する関連メモリを持つ、一つまたは複数のプロセッサによって実施されてもよい。
【0040】
方法100はステップ101から始まる。複数のリソースの中の各リソースについて、プロセッサ(ステップ101)は、リソースによって行われる位置およびタスクを示す、データを取得する。取得されたデータは、リソースの位置およびタスクを示す、いかなるコンピュータ可読形態であってもよい。例えば、リソースについて取得される仮想モデルは、境界表現[Christoph M. Hoffmann、Geometric and solid modeling: an introduction、Morgan Kaufmann Publishers Inc.、カリフォルニア州サンフランシスコ、1989]またはメッシュ表現[Shewchuk、Jonathan、Tamal K. Dey、およびSiu-Wing Cheng、Delaunay mesh generation、Chapman and Hall/CRC、2016]を使用して表されるCADモデルであり得る。この取得されるCADモデルは、リソースの位置の表示を含み得る。さらに、リソースと関連付けられたタスクは、リソースがどのようにターゲット位置へ移動するかを説明する、アクティビティの線形シーケンスとして定義できる。かかる実施形態では、仮想リソースを形成する運動連鎖は、以下によって得られる。
【0041】
【0042】
式中、Nは連鎖の合計数である。
【0043】
さらに、タスクは、ジョイントターゲットまたはデカルトターゲットとして表される、ターゲットの集合によって定義される。各ターゲットは、(x,y,z,α,β,γ)と記述され、x、y、zは位置を表し、α、β、γはロール、ピッチ、ヨーα、β、γを表す。したがって、各タスクはターゲットの集合として記述される。
【0044】
【0045】
式中、Mはターゲットの合計数であり、各ターゲットti=(x,y,z,α,β,γ)である。
【0046】
各連鎖qiに対応するCADモデルは、S(qi)として記述でき、これは頂点V、辺E、および面Fの集合として記述される、連鎖の幾何学情報を記憶する。
S(qi)=(V,E,F) (3)
【0047】
方法100はコンピュータで実施されるため、ステップ101で取得されるデータは、方法100を実施するコンピュータデバイスと通信できる任意の点(例えば、計算デバイスまたは記憶デバイス)から取得され得る。
【0048】
次に、ステップ102で、複数の各リソースについて、プロセッサは、リソースによって行われる位置およびタスクを示す、取得されたデータを使用し、対象の平面上にリソースによって占有されるそれぞれのゾーンを、自動的に決定する。一実施形態では、リソースのゾーンは、
図13に関連して本明細書の以下に記載されるように決定されてもよい。
【0049】
一実施形態によれば、ステップ102で各リソースについてそれぞれのゾーンを決定することは、(1)リソースについて得られたデータに示されるタスクを行う、リソースをシミュレーションすることと、(2)経時的にリソースの構成要素を予測して、対象の平面上にあるリソースの閉輪郭を生成することと、(3)正規化されたブール集合演算を使用して、輪郭をゾーンに結合することとを含む。一実施例では、ステップ102で、シミュレーション(1)の間に、各連鎖qiが、所与のターゲットに対応する新しい配置へ移動する。移動する連鎖qiが、時間の関数であるqi(t)として記述される場合、かかる移動する連鎖に対応するCADモデルは、方程式(3)に関して上述したように、S(qi(t))と記述され得る。所与の平面Pについて、そのときに連鎖のCADモデルが予測される。
Sp(qi)=Proj(S(qi),P) (4)
Sp(qi)は平面P上に予測される輪郭である。タスク実行の期間中、各連鎖についてかかる輪郭をすべて予測することで、ISpとして記述される交差する輪郭の集合をもたらす。
【0050】
【0051】
例解するために、一実施形態による、交差する輪郭1330の集合が、
図13に描写されている。一実施形態では、輪郭を結合するために、正規化されたブール和集合演算が、2D操作ゾーンOZを得るように、方程式5の中の集合ISpの要素すべてに適用される。
【0052】
【0053】
結果として生じる操作ゾーンOZは、頂点、辺、および面の集合である。注目すべきことに、この集合は、
図13の操作ゾーン1333によって示されるように、いかなる交差する辺または面も持たないであろう。そして、ステップ103で、プロセッサによって、複数のリソースのうちの二つ以上のリソースの決定ゾーンを、基準に基づいて結合ゾーンに結合する。さらに、別の実施形態では、複数の結合ゾーンが決定され得る。例解すると、リソースA、B、C、およびDがある場合、一実施形態では、一つの結合ゾーンは、リソースAおよびBに対応する操作ゾーンを含むことができ、第二の結合ゾーンは、リソースCおよびDに対応する操作ゾーンを含むことができる。一実施形態によれば、ステップ103で二つ以上のリソースの決定ゾーンを結合することは、二つ以上のリソースのゾーンを包含する最適なサイズのゾーンを決定することを含み、最適なサイズのゾーンは結合ゾーンである。かかる実施形態では、最適なサイズのゾーンを決定することは、最適なサイズのゾーンを形成するために、第一の係数および第二の係数を使用して、二つ以上のリソースのゾーンを拡張および侵食することを含む。かかる実施形態では、拡張および侵食することは、(i)第一の係数を使用して二つ以上のリソースのゾーンを拡張して、拡張されたゾーンを形成することと、(ii)拡張されたゾーンを結合して、スーパーゾーンを形成することと、(iii)第二の係数を使用してスーパーゾーンを浸食して、最適なサイズのゾーンを形成することとを含む。
【0054】
以下は、ステップ103で結合を行う実施例である。かかる実施例では、入力は結合されるリソースA、B、C、およびDの操作ゾーンであり、出力は単一の結合ゾーンである。リソースA、B、C、およびDの操作ゾーンに対応する操作ゾーンOZを、それぞれOA、OB、OB、OC、およびODとする。集合S1およびS2に、全四つの操作ゾーンを含める。集合S1とS2との間の最小距離の最大値を見つける。
dist(S1,S2)=max(dist(a,b)) (7)
式中、a∈S1,b∈S2,dist(a,b)は、集合S1およびS2それぞれに属する二つのゾーンa、b間の最小距離である。集合S1とS2との間の最小距離の最大値を見つける。例えば、
図14は、1441a~iと名付けられた、集合S1およびS2の各要素間の最小距離を示す。これらの最小値の最大値は、次のステップで使用される。さらに、一実施形態に用いられ得るオフセット操作についての詳細は、Rossignac、Jaroslaw R.およびAristides AG Requicha、「Offsetting operations in solid modelling」Computer Aided Geometric Design 3.2(1986):129~148に記載されている。
【0055】
ステップ103でゾーンを結合するこの実施例を続けるには、すべての操作ゾーンが、正規化された正のオフセットrを使用して全ゾーンに拡張される。
【0056】
【0057】
式中、r>dist(S1,S2)/2または
【0058】
【0059】
εは非常に小さい値を有し得る。ゾーンOZはOA、OB、OC、ODであり得る。方程式8におけるオフセットの結果は、OAexpanded、OBexpanded、OCexpanded、ODexpandedである。次に、方程式8を使用して得られた拡張されたゾーンは、正規化されたブール集合演算を使用して結合されて、スーパーゾーンSOZを形成する。
SOZ={OAexpanded∪*OBexpanded∪*OCexpanded∪*ODexpanded} (9)
【0060】
そして、方程式9のスーパーゾーンSOZは、ε値を考慮しないことによって正規化された負のオフセットrを適用することによって、侵食される。
【0061】
【0062】
c*は正規化された補集合
【0063】
【0064】
である。
【0065】
一実施形態によれば、第一の係数および第二の係数は各々、二つ以上のゾーン間の最小距離を含む集合からの最大値の関数、例えば、距離関数である。一実施形態では、第一の係数はDmaxmin/2+εであり、式中、εは、Dmaxminと比較して非常に小さく、例えば、(ε/Dmaxmin=0.0001)であり、Dmaxminは、結合されているゾーン間の最小距離の集合からの最大値である。さらに、一実施形態では、第二の係数はDmaxmin/2である。一実施形態によれば、εは、拡張中に二つ以上のゾーンを接続するために内部で使用される、接続係数を表す。さらに、実施形態では、第二の係数が第一の係数よりも小さい限りは、第二の係数はユーザによって選択され得る。さらに、実施形態では、第一の係数および第二の係数は、デフォルト値に設定され得る。
【0066】
方法100の別の実施形態では、ステップ103で、ゾーンを結合するために使用される基準を変化させることによって、複数のそれぞれの結合ゾーンが決定される。次に、かかる実施形態では、決定された複数の結合ゾーンから、所与の結合ゾーンが選択される。かかる実施形態では、結合ゾーンは、安全基準に基づいて選択され得る。例解するために、基準が負のオフセット値を含む実施例について考える。かかる実施形態では、複数の異なる負のオフセット値が使用され、各異なる負のオフセット値に対して、異なる結合ゾーンが決定される。次に、一つの結合ゾーンが、複数の異なる結合ゾーンの中から選択される。
【0067】
さらに別の実施形態では、ステップ103で基準に基づいて結合することは、結合するために二つ以上のリソースの候補ゾーンを、基準のうちの少なくとも一つに基づいて、決定ゾーンより選択することを含む。かかる特定の実施形態では、基準を候補ゾーンに適用して、結合する二つ以上のリソースの決定ゾーンを識別し、二つ以上のリソースの識別されたゾーンを結合して、結合ゾーンを形成する。さらに、かかる実施形態では、候補ゾーンを識別する基準は、特定のゾーンを候補ゾーンへ含めることなど、ユーザ定義の制限であり得る。次に、距離などの基準を使用して、ユーザが含めたゾーンを別のゾーンと結合するかどうかを決定し得る。
【0068】
図1に戻ると、方法100は、ステップ104で、プロセッサによって、決定ゾーンおよび結合ゾーンに基づいて、対象の平面上の複数のリソースのレイアウトを示す、作業または出力ファイルを自動的に作成して完了する。方法100の実施形態では、ステップ104で作成された作業/出力ファイルは、複数のリソースのレイアウトの表現を記憶する、またはそうでなければそのレイアウトを示す、任意のコンピュータ可読形態であってもよい。例えば、一実施形態では、結果として生じる出力は、頂点、辺、および面(V,E,F)の集合として表される、2DのCADモデルである。あるいは、結果として生じる出力はソリッドモデルであってもよい。一実施形態では、2DのCADモデルの境界が、レイアウトの構成のために抽出され、これは、閉じたポリラインの集合を生成することによって達成される。境界を形成するポリラインの方向性(例えば、時計回り)は、内部穴を形成するポリラインの方向性(例えば、反時計回り)と反対であろう。さらに、一実施形態では、抽出には適切なステップサイズを利用する[Lindgren、Terence、Juan Sanchez、およびJim Hall 「Curve tessellation criteria through sampling」 Graphics Gems III(IBM Version)、Morgan Kaufmann、1992、262~265]。作業/出力ファイルは、結合ゾーンと、結合ゾーンの一部ではない、いかなる他の操作ゾーンとの位置および設置面積を示す。
【0069】
さらに、一実施形態では、ステップ104でファイルを作成することは、作成されたファイルを電子的に共有可能な様式で提供することを含み得る。さらに、作業/出力ファイルは、ユーザに表示ビュー(図形またはモデル表現)を提供できるか、または関連する関係ソフトウェアもしくはハードウェア(例えば、ロボットなど工場床の要素用のコントローラ)と共有可能なデータファイルであり得る。かかる実施形態では、ファイルによって、決定されたレイアウトに従い移動および/または動作するように、工場リソースの制御を実施し得る。
【0070】
方法100の別の実施形態は、レイアウトの中に安全ゾーンを表示することをさらに含む。かかる実施形態では、安全ゾーンは、ステップ104で作成した作業/出力ファイルの中に示されるか、またはそうでなければ表され得る。
【0071】
方法100の実施形態では、ゾーンを結合する、任意の様々な基準および基準の任意の組み合わせを利用し得る。例示的な基準には、ゾーン間の距離、ユーザ定義の制限、および二つ以上のゾーンのリソースによって行われるタスクのうちの少なくとも一つが挙げられる。一実施形態では、ゾーン間の距離は、結合されるゾーン間の距離に対する下限および上限を含む。
【0072】
さらに、方法100によって、当該技術分野で知られる任意の種類のリソースに対するレイアウトを決定することができ、当該技術分野で知られる任意の種類の対象の平面に対するレイアウトを決定することができる。一実施形態によれば、複数のリソースのうちの所与のリソースは、産業リソース、ロボット、ヒト、機械ツール、および設備のうち少なくとも一つである。別の実施形態では、対象の平面は工場の床である。
【0073】
図2は、一実施形態による、リソースのレイアウトを決定するための、ユーザ対話型のプロセスまたは方法220のフローチャートである。方法220は221から開始し、ステップ222および223でユーザ入力を受信する。具体的には、リソースおよびその位置、リソースと関連付けられた一つまたは複数のタスク、ならびにリソース間の関係は、ステップ222で定義される。定義された情報は、当該技術分野で知られるいかなる形態であってもよい。例えば、例示的な一実施形態では、ステップ222での定義は、Virtual Plant Layoutでユーザのやり取りを介して実施されるが、Virtual Plant Layoutは、利用され得る複数のCAD/CAM/CAEシステムのうちの一例にすぎない。かかる実施形態では、Virtual Plant Layoutは、様々なCADモデルを使用して、コンピュータ内の実際のプラントレイアウトをモデル化する。ソフトウェアツールには、ユーザがプラントを設計および編集するのに役立つ、ユーザとやり取りする様々な機能が装備されている。Virtual Plant Layoutについて記載するものの、実施形態はそのようには限定されず、任意の様々なコンピュータベースのソフトウェアアプリケーションを使用し得ることに留意されたい。ステップ223で、操作ゾーンの平面が画定され、すなわち、平面の形状および寸法が、ユーザによってシステム220に提供される。リソースが工場のリソースである実施例では、ステップ223の画定によって、工場の床の平面を画定する。
【0074】
ステップ222および223からの入力データを使用して、方法ステップ224では、各リソースに対してそれぞれの操作ゾーンを生成する。一実施形態では、操作ゾーンは、ステップ222および223での入力に応答して、ステップ224で自動的に生成される。代替的な実施形態では、操作ゾーンは、「操作ゾーンの生成」オプションの選択など、ユーザコマンドに応答してステップ224で生成される。続いて、ステップ225では、ステップ224で生成された操作ゾーンを編集する。ステップ225は任意であり、編集が望ましい場合のみ実行されることに留意されたい。実施形態では、編集は、操作ゾーンを生成するか、または操作ゾーンの集合を結合するかのいずれかを行って、安全マージンを受け入れた後が望ましい場合がある。ステップ225での編集は局所的であってもよく、すなわち、リソースに対する個々の操作ゾーンは修正されてもよく、または大域的であってもよく、すなわち、変更が複数の操作ゾーンに対して行われてもよい。
【0075】
次に、ステップ226で、リソースの操作ゾーン結合についての関係が、ユーザ対話型で定義される。言い換えると、ステップ226で、操作ゾーンを結合するために、基準が定義される。例示的な基準としては、他にも例はあるが、ゾーン間の距離、ユーザ定義の制限、および操作ゾーンに対応するリソースによって行われるタスクが挙げられる。さらに、実施形態では、組み合わせて複数の基準を利用してもよく、したがって、ステップ226では、操作ゾーンを結合するための基準の組み合わせが定義され得ることに留意されたい。例えば、一実施形態では、ユーザは、結合するために使用される基準を、重要度順にランク付けしてもよい。例解すると、ユーザが、(a)同じ製造プロセスの共有、および(b)距離基準という二つの基準に基づいて、リソースの集合を結合したい場合、ユーザは、基準を使用する好ましい順、例えば、(b)より(a)を優先するなど、ランク付けできる。かかる実施例では、まず、プロセスを共有するリソース用に結合ゾーンが決定される。次に、距離基準を適用して、第一のステップから出力されたゾーンを結合する(プロセスを共有するリソースを結合する)。(a)から(b)または(b)から(a)にランク付けを変更することによって、異なる結果を得ることができることに留意されたい。
【0076】
一実施形態によれば、ステップ226での操作ゾーン間の関係の定義は、ユーザ入力に基づいて行われ得る。例えば、ユーザは、互いに1フィート以内の任意の操作ゾーンを結合するべきであると示してもよく、またはそうでなければ指示してもよい。一実施形態では、方程式(6)を使用して取得された各リソースに対応する操作ゾーンの集合は、頂点を使用してカプセル化され、他のリソースとの関係は、辺としてカプセル化されて、頂点および辺(v,e)のグラフ構造Gを形成する。
G=(v,e) (11)
例解すると、下記にさらに詳細に説明する
図4は、331a、331b、331c、331d、および331eとラベル付けされる頂点によって示される、リソースA、B、C、D、およびEを示し、対応する操作ゾーンOZの表現を含む。これらリソース間の関係は、辺441および442によって示される。
【0077】
続いて、ステップ227で、システム/方法220によって、ステップ226で定義された関係を満たす、リソースの操作ゾーンの集合を結合する。一実施形態によれば、ステップ227は、ユーザ定義の関係(方程式11で辺として捕捉)を満たす、リソースの集合およびそれらの対応するゾーン(方程式11の頂点として捕捉)のフィルタリングを含む。次に、これらのフィルタリングされたゾーンは、本明細書に記載するように結合され得る。さらに、一実施形態では、ステップ227の後に、方法は、ステップ225および/または226に戻って、操作ゾーンまたはリソース間の関係を編集することができることに留意されたい。
【0078】
そして、ステップ228で、方法/システム220によって、空のスペースと、ステップ227でゾーンを結合した後に残る予約された空間とに問い合わせる。例えば、一実施形態では、228で空間に問い合わせることによって、利用され得る対象の平面上に、結果として生じる空間を識別するか、またはゾーンの中に組み込まれるべき自由空間を識別する。かかる実施形態では、空のスペースを、在庫の保管など他の目的、またはいかなる他の目的で再使用することができる。
【0079】
次のステップ229では、リソース間の関係を編集すべきかどうかを決定する。ステップ229での決定は、ステップ228で行われる問い合わせによって通知され得る。例解するために、12インチ間隔のゾーンを結合する実施例を考える。かかる実施例では、ゾーンAおよびゾーンBは12.5インチ離れているため、この基準によって分離されたままである。ステップ228で自由空間に問い合わせると、方法/システム220によって、0.5インチのギャップを識別し、安全に関する考慮事項から、ゾーンAおよびBを結合するべきであると決定する。この決定に基づいて、ステップ229で、方法220はゾーン間の関係を編集することを決め、13インチ離れているすべてのゾーンを結合するために、関係を変更するステップ226に戻る。一実施形態では、かかる機能は、安全基準に基づいて自動的に行われてもよい。例えば、相互に特定の距離内にある任意のゾーンを、自動的に結合する安全基準を設定し得る。
【0080】
ステップ229で、方法がリソース間の関係を編集しない場合、方法220はステップ230へ続く。ステップ230で、方法/システム220によって、他にも例はあるが、例えば、リソースおよびその位置、リソースと関連付けられたタスク、ならびにリソース間の関係といった入力を再定義すべきかどうかを決定する。再定義すべき場合、方法はステップ222に戻り、すべきでない場合、方法は231で終了する。入力の再定義についての考慮事項には、リソースが異なるタスクを行う必要があること(例えば、ロボットを溶接に使用していたが、今は塗装および組立に使用する必要がある)、またはリソースが異なる入力を用いてタスクを行う必要があること(組立ロボットは、品目Aおよび品目Bではなく、品目Cおよび品目Dを組み立てる必要がある)を含む。
【0081】
方法220の実施形態では、ステップ222の入力は、工場で使用されるリソースの集合、これらリソースの床の位置、これらリソース間の関係(リソースAをリソースBに合わせるなど)、および各リソースと関連付けられたタスク定義である。さらに、一実施形態によって、ユーザがリソース間の関係に基づいて、リソースの集合についてレイアウトをトレースすることが可能になる。さらに、方法220の解決策、すなわち、ステップ227で決定されるゾーン、すなわち結合ゾーンの結合は、解決策が最適なものに収束するまで、リソース間の関係の編集(ステップ229で、ステップ226に戻る)、および/または入力の修正(ステップ230で、ステップ222に戻る)によって反復して精密化できることに留意されたい。一実施形態では、これは、タスクのプロセスおよび関係の定義を自動化することによって自動化され得る。
【0082】
本発明の一実施形態は、二つの部分を含む。第一の部分は、個々のリソースに対する操作ゾーンの生成を含み、第二の部分は、ユーザ定義の関係に基づいてリソース間でゾーンを結合することを含む。
【0083】
操作ゾーンの作成
一実施形態では、操作ゾーンは、リソースと関連付けられたタスクの仮想シミュレーションによって作成される。仮想シミュレーションプロセスは、リソースと関連付けられたタスクを選択することと、操作ゾーンを所与のリソース用に補足する必要がある、適切な平面を画定することと、機能「操作ゾーンの生成」のインスタンスを実行することを含み得る。一実施形態では、仮想シミュレーションプロセスによって、所与の平面上でリソースの周りに二次元閉輪郭を作成する結果をもたらす。
【0084】
操作ゾーンの編集
一実施形態では、生成された操作ゾーンは、リソースと関連付けられたタスク用のリソースが及ぶ、構成スペースを尊重する。しかしながら、ユーザは、大局的または局所的のいずれかで、操作ゾーンを編集することによって、リアルタイムの製造システムにおいて任意の偏差を補正するように、追加の空間を割り当てることができる。大局的編集の一実施例は、ユーザが、操作ゾーンを膨張させるように、操作ゾーンに関するオフセットパラメータを指示することである。局所的編集の一実施例は、ユーザが、操作ゾーンの対象領域を局所的に編集するように、操作ゾーンと関連付けられた制御点を動かすことである。
【0085】
様々な特性に関する操作ゾーンのクエリ
操作ゾーンの仮想表現を使用して、ユーザは、他にも例はあるが、操作ゾーンの面積、および操作ゾーンの周囲の長さなど、様々な幾何学的特性をクエリできる。ユーザはまた、同じ床を共有するリソースの集合を見つけること、類似したゾーンの集合を見つけること、および/または対称なゾーンを見つけることなど、様々なクエリに対する答えを見つけるためにゾーンを比較することができる。この情報は、他にも例はあるが、操作ゾーンへの編集を行うために使用できる。概して、他にも例はあるが、「リソースによって占有される面積はどのくらいか?」または「より小型のロボットが同じタスクを行うことができるか?」など、分析目的で操作ゾーンにクエリできる。さらに、クエリは、結合ゾーンが決定された後でも、行うことができることに留意されたい。かかるクエリからの結果を使用して、異なる結果を得るように入力を修正することができる。
【0086】
操作ゾーンの結合
各リソースに対して生成された操作ゾーンを結合して、共通レイアウトを画定するか、または安全ゾーンを特定することができる。一実施形態では、ユーザ、例えば、レイアウト設計者は、複数のリソース間の関係を定義する。例えば、ロボットAを、プロセスXを達成するためにロボットBに合わせる。次に、リソースAおよびBをプロセスXで結び付ける。
【0087】
実施形態では、これらの関係を使用して、操作ゾーンを結合することができる。例えば、レイアウト設計者は、プロセスXもしくはY用のレイアウト、またはプロセスXおよびY両方に対する共通レイアウトを抽出することができる。結合ゾーンは、操作ゾーンの機能性を編集することと、上述の操作ゾーンの機能性をクエリすることとを用いることによって、ユーザが編集できる。
【0088】
図3は、リソース331a~eおよび工場の床332を含む、環境330を描写する。リソース331a~cはロボットであり、リソース331dはサポートされる製品、例えば、製造されている実世界の物体であり、リソース331eはヒトである。実施形態を使用して、工場の床332上にあるリソース331a~eのレイアウトを決定し得る。
【0089】
一実施形態では、リソース331a~e間のレイアウトを決定する一部として、リソース331a~eの関係が定義される。
図4は、リソース331a~e間の定義された関係を示す簡略図である。
図4は、リソース331aおよび331bがプロセス441の一部であり、一方でリソース331c、331d、および331eはプロセス442の一部であることを示す。
【0090】
レイアウトを決定するために、実施形態によって各リソースの操作ゾーンを決定する。一実施形態では、ユーザは、各リソース331a~eについて、ボタンもしくはメニュー選択、または類似のものとして実装される「操作ゾーンの生成」機能を選択(クリック)する。それに応じて、本明細書に記載されるコンピュータ実施される方法100、220によって、各リソース331a~eの操作ゾーンを決定する。
図5は、リソース331a~eそれぞれに対して生成された、操作ゾーン550a~eを示す。代替的な実施形態では、必要なデータ、すなわち、各リソースの位置およびタスクが得られると、各リソースの操作ゾーンは、自動的に、すなわち、ユーザに「操作ゾーンの生成」機能または類似のユーザコマンドを選択(クリック)するように要求することなく決定される。
【0091】
【0092】
操作ゾーンとリソース間の定義された関係とを使用して、実施形態で、レイアウトを決定するために操作ゾーンを結合する。
図7は、
図4に描写するリソース331a~eの関係に基づいて結合された、操作ゾーン550a~eを示す。
図7は、共通プロセス441、442の一部である、操作ゾーンの結合を示す。したがって、操作ゾーン771は、操作ゾーン550aおよび550bの結合体であり(両方ともにプロセス441の一部であるリソース331および331bに対応)、操作ゾーン772は、操作ゾーン550c~eの結合体である(プロセス442の一部であるリソース331c~eに対応)。
【0093】
実施形態では、操作ゾーンを結合する基準もまた変更され得る。例えば、ユーザは結合基準を変更して、プロセス441および442の全リソースを結合し得る。
図8は、
図5の操作ゾーン550a~eの結合体である、結果として生じる操作ゾーン880を示す。
【0094】
一実施形態では、ユーザは、リソース間の関係を再定義することによって、ゾーンをどのように結合するかを修正することができる。ユーザは、
図9に示すように、操作ゾーンに渡って共通する重複の存在を考慮することにより、リソース間の関係を再定義することができる。例えば、ユーザが、共通の床スペースを共有するゾーンを、結合するべきであると示す場合、リソース331aおよび331bを関係990によって結び付け、リソース331cおよび331dを関係991によって結び付ける
図9に示すように、リソース間の関係を再定義することができる。
図9では、リソース331eは、他のリソース331a~bおよび331c~dのいずれとも関連しない。さらに、複数の関係をリソース間で定義することができることに留意されたい。
【0095】
図10は、
図9で定義された関係に基づいて、操作ゾーン550a~eを結合することによって生じる、ゾーン1010、1011、および550eを描写する。結合ゾーン1010は、
図9の関係990を有する、
図5の元の操作ゾーン550aおよび550bの結合体である。結合ゾーン1011は、
図9の関係991を有する、
図5のゾーン550cおよび550dの結合体である。元の操作ゾーン550eは、
図9に定義され描写されるように、いかなる他のゾーンとも床スペースを共有しないため、ゾーン550eは、いかなる他の操作ゾーンとも結合しない。
【0096】
実施形態では、リソース間の関係はまた、近接度にも基づくことができる。
図11は、リソース331a~e間の関係を示し、辺1100a~jが、リソース331a~e間の近接関係を示す。一実施形態では、各辺1100a~jは、リソース331a~eに対応する操作ゾーン間の最小距離でラベル付けされる。
【0097】
一実施形態では、リソースは、近接情報に基づいて結合することができる。例えば、リソース331a~eの実施例では、一実施形態によって、操作ゾーン550a~eを、例えば、リソース331bとリソース331eとの間の距離である、閾値(d
threshold)以下の近接度で結合してもよい。
図12は、リソース331bと331eとの間の距離以下の近接度で、操作ゾーン550a~eを結合することによって、結果として生じるゾーン1220を示す。
図12は、リソース331eに対応する操作ゾーン550eが、リソース331a~bに対応する動作ゾーン550a~bに直接接続されていないことを示す。
【0098】
計算論的アプローチ
以下の本明細書では、一実施形態の計算論的アプローチ(ステップ1~4)について説明する。
【0099】
1.操作ゾーンの作成
一実施形態では、ユーザがアクティブなリソース(例えば、ロボット、ヒト、および/または機械)を選択し、リソースに対して「操作ゾーンを生成」をクリックして、ユーザが対象の平面を選択すると、以下の内部計算が実行される。リソースと関連付けられたタスクは、Dassault Systemes 3DEXPERIENCEなどのソフトウェアでシミュレーションされ、タスクはリソースの運動連鎖の動きに関与する。各運動連鎖は、所与の平面上で時間の関数として予測される。この予測によって、所与の平面上に重ね合わされる、閉輪郭の集合を生成する。
図13は、対象の平面上のリソースの運動連鎖を時間の関数として予測した結果である、例えば、輪郭1331a、1331b、1331c、および1331nといった複数の輪郭を含む閉輪郭1330を示す。輪郭1330は、正規化されたブール集合演算1332を使用して結合される[Christoph M. Hoffmann、Geometric and solid modeling: an introduction、Morgan Kaufmann Publishers Inc.、カリフォルニア州サンフランシスコ、1989]。ブール演算1332によって生じるゾーン1333は、境界表現[Christoph M. Hoffmann、Geometric and solid modeling: an introduction、Morgan Kaufmann Publishers Inc.、カリフォルニア州サンフランシスコ、1989](仮想表現)を使用して表わされ、リソース用の操作ゾーンとして使用される。
【0100】
一実施形態によれば、在庫または製品のような非アクティブなリソースについては、これらの物体のCADモデルが所与の平面上に予測され、境界表現は予測から構築される。一実施形態では、境界表現に加えて、別の表現(パラメトリック表現)が、Bスプラインを使用して仮想表現の境界に近似することによって構築され[The NURBS Book (1996)、Computer-Aided Design、28(8)、665~666、doi:10.1016/0010-4485(96)86819-9]、操作ゾーンの形状に局所的変更を行うために使用される。
【0101】
2.操作ゾーンの編集
操作ゾーンおよび対応する仮想表現が生成された後、一実施形態は生成された操作ゾーンの編集を含む。操作ゾーンの編集には、ユーザが操作ゾーン上でオフセットパラメータを指示して、操作ゾーンを膨張させることができる大局的編集が含まれ得る。また編集には、操作ゾーンの形状の任意の局所的変化に対して、ゾーンのスプライン表現による制御点が、ユーザによって修正される、局所的編集も含まれ得る。この局所的編集で、Bスプラインの特性を小さくする変動を使用することによって、操作ゾーン上の点を内部で修正する。
【0102】
3.様々な特性に関する操作ゾーンのクエリ
一実施形態では、計算プロセスは、操作ゾーンの表現にクエリを続ける。かかる実施形態では、操作ゾーンの仮想表現には、他にも例はあるが、面積および周囲の長さの生成など、操作ゾーンに関するデータについてクエリすることができる。
【0103】
4.操作ゾーンの結合
計算プロセスは、操作ゾーンの結合を続ける。一実施形態では、ユーザが、リソースおよびリソース間の関係を定義すると、頂点および辺の集合で、グラフが構築される。頂点は、リソースについての情報、すなわち、リソースの操作ゾーンの位置および仮想表現を記憶し、辺はリソース間の関係を記憶する。次に、操作ゾーンが特定の関係に基づいて結合されると、一実施形態では、グラフをトラバースし、指定された関係を満たす有効な頂点および辺の集合を抽出して、サブグラフを形成する。
【0104】
一実施形態では、基準を使用してゾーンが評価され、結合されるゾーンが特定されると、一つのリソースと、結合される予定の特定された操作ゾーンに対応するリソース(前のステップで構築されたサブグラフの一部であるリソース)との間で、最小距離が評価される。例えば、
図14はN個のゾーン(1440a~n)を示し、一つのゾーンからすべての他のゾーン(1対多)間の距離は、矢印1441a~iによって示されている。同じゾーン間の距離はゼロであることに留意されたい。
【0105】
一実施形態では、これらすべての最小距離のうちの最大値(Dmaxmin)が、有効な操作ゾーン(結合に使用されている基準に基づいて、結合される操作ゾーン)を自動的に結合するように使用される。これは、正のオフセット値、Dmaxmin/2+ε、および負のオフセット値、Dmaxmin/2を使用することによって達成され、式中、εは、Dmaxminと比較すると非常に小さな接続係数である。例えば、ε/Dmaxmin=0.0001)を使用して、二つの境界を接続することができる。一実施形態では、角はオフセット操作中に丸められ、操作ゾーン上にある点の元の場所からの偏差を最小化する。オフセット操作によって、操作ゾーンの集合に正規化されたブール和集合演算を内部で適用する。結果として、二つの操作ゾーンがオフセット操作中に重なる場合、ゾーンは結合され単一のゾーンとなる。一実施形態によれば、結果として生じる操作ゾーンは、上述のように、局所的かつ大局的に編集することができる。
【0106】
操作ゾーンの結合を例解するために、
図15に示す操作ゾーン1550a~fを伴う、リソースの実施例を考える。操作ゾーン1550a~fを結合するために、正のオフセット値が操作ゾーン1550a~fに適用され、すなわち、操作ゾーン1550a~fが、D
maxmin/2+εである正のオフセット値を使用して広げられる。これにより、結合ゾーンが作成される。そして、負のオフセット値D
maxmin/2が結合ゾーンに適用され、すなわち、結合ゾーンは、負のオフセット値を使用して侵食される。
【0107】
この実施例では、正のオフセットが適用されると、操作ゾーン1550a~eの新しい境界が重なり合うであろう。これらの新しい境界は、ブール和集合演算を用いて結合されて、
図16に描写される単一の接続構成要素1660を形成する。負のオフセット値が、結合ゾーン1660に適用されて、最終結合ゾーン1661を形成する。かかる実施形態では、負のオフセットが正のオフセット値よりわずかに小さいため、かかる実施形態は元のトポロジーを保持する。
図16の実施例では、最小サイズの結合操作ゾーンが作成される。
【0108】
一実施形態では、レイアウト設計者は、残された空間(例えば、自由空間1662)を考慮し、空間を節約するために、他のリソース用に空のスペースを再使用するか、もしくは現在のリソースの空間的位置を変更するか、またはタスクを再定義することができる。
【0109】
一実施形態では、ユーザが、所与のリソースに対して「操作ゾーンの生成」をクリックすると、コンパクトな仮想表現(二次元表現)が操作ゾーンに対して生成され、これは表現を記憶するために低いメモリ容量を必要とする。生成プロセスは、操作ゾーンの境界を抽出するように、掃引容積を生成し、その後、掃引容積を予測する方法と比較すると、より効率的である。また、結果として生じるゾーンは、最小限の偏差を伴う、リソースの構成空間と一致する。一実施形態では、ゾーンの結合は自動であり、最小限の偏差(場合により凹状角)を伴う個々の操作ゾーンの境界と一致する。例えば、
図7は、
図5の操作(最初に生成された操作)ゾーンの元の頂点および辺の大部分を維持する、結合ゾーン771、772を示す。実施形態は、ロボットが移動する必要な床スペースを割り当てることによって、工場の床スペースを確保しておくように使用できる。
【0110】
図16に関係して記載した実施例では、最小サイズの結合操作ゾーンの生成を描写したものの、実施形態はそのようには限定されず、概して、実施形態によって、特定の場合には最小サイズのゾーンであってもよい、最適なサイズのゾーンを決定する一方で、他の場合には、最適なサイズのゾーンは最小サイズのゾーンよりも大きい場合があることに留意されたい。例えば、
図17は、ゾーン1770aおよび1770bを、結合ゾーン1771に結合することを図で示す。結合ゾーン1771は、ゾーンのサイズが優先傾向に基づいて変化し得る、結合ゾーンの実施例であり、したがって、最小サイズのゾーンを決定する必要がない。例えば、トラック1772の幅は、ゾーン1770aおよび1770bに対応するリソースの適用に応じて、より広くまたはより狭くなってもよく、さらにトラック1772の厚さは、一端と他方とで異なってもよい。
【0111】
図18Aは、ゾーン1881および1882が、その周囲に沿って共に結合されている、環境1880を示す。かかる実施例では、床スペースを節約するために、最小の結合ゾーンを決定するのが望ましい場合がある。対照的に、
図18Bは、操作ゾーン1884および1885の境界が、センサー1886の能力に基づいて調節される、環境1883を描写する。そのため、環境1883では、最小サイズのゾーンを決定することが望ましくない場合がある。
【0112】
実施形態では、操作ゾーンを結合するために、複数の異なる基準を使用し得る。
図19Aは、操作ゾーン1991a~d間の距離1992a~dを持つ、操作ゾーン1991a~dを含む環境1990を示す。
図19Bは、ゾーンを結合する基準が2単位未満の距離である、実施例を示す。かかる実施例では、組み合わされるゾーンはゾーン1991a~cである。
図19Cは、ゾーンを結合する基準が1単位未満の距離である、実施例を示す。かかる実施例では、組み合わされるゾーンはゾーン1991a~bである。
図19Dは、ゾーンを結合する基準が、1単位以下の距離だけでなくゾーン1991dでもある、実施例を示す。
図19Dの実施例では、ゾーン1991dを含むことは、実施形態に用いられ得るユーザ指定の制限の一例である。
【0113】
実施形態では、様々なレイアウト設計を、高レベルのユーザ入力、例えば、近接情報を使用して、自動的に生成することができる。例えば、一実施形態では、ユーザは、結合ゾーンを生成する最小距離(a≦最小距離≦b)の下限および上限を指示できる。かかる実施形態では、この基準を満たす候補ゾーンの集合が自動的に選択され、まとめて結合される。
【0114】
一実施形態によれば、複雑な形状の二つ以上のゾーン(例えば、複数の陥凹部または穴を持つゾーン)を自動的に結合して、スーパーゾーンを生成することができる。そして、スーパーゾーンは、0<S≦dminmax/2)である負のオフセット値Sに対して選択された値に基づいて、複数のレイアウトまたはゾーン(またはレイアウトの一群)を生成するように、侵食または収縮できる。かかる実施形態では、オフセット値S=dminmax/2が使用される場合、結合ゾーンは、結合されているゾーンの外部境界の特徴を維持する。これら複数のレイアウトから、最適な解決策が自動的に選択できる(基準に従って)か、またはユーザによって選択できる。一実施例では、レイアウトは、結果として生じるレイアウトが、ピンチなしであることを保証する、安全係数に基づいて選択される。
【0115】
図20は、一実施形態による、複数のレイアウトを生成するためのプロセス2020を示す。プロセス2020は、操作ゾーン2021および2022で始まる。次に、操作ゾーン2021および2022は、2023で膨張して、結合ゾーン2024を作成する。そして、結合ゾーン2024は、複数の異なるオフセット値を使用して、2025で浸食される。各異なるオフセット値は、異なるレイアウト2026a~cをもたらす。その後、最適なレイアウトがレイアウト2026a~cより選択できる。
【0116】
本発明の一実施形態は「幾何学的演算子」として機能する。かかる実施形態によって、高レベルのユーザ入力に基づいて、自動的に出力を生成する。
図21は、「幾何学的演算子」として機能する、かかる例示的な方法2100を示す。方法2100は、ステップ2101から始まり、実世界の対象作業エリアの中にある、複数のゾーンを示すデータを取得し、各ゾーンはリソースによって占有される。一実施形態によると、ステップ2101での取得は、デジタルプロセッサによって実施される。方法2100は、ステップ2102で、プロセッサによって、複数のゾーンのうちの二つ以上のゾーンを結合するための、ユーザ定義の距離基準を受信することによって続く。そして、ステップ2103で、複数のゾーンを示す取得されたデータを使用して、複数のゾーンの各ゾーン間の最小距離が自動的に決定される。次に、ステップ2104で、マージする候補ゾーンが、各ゾーンとユーザ定義の距離基準との間で決定された最小距離に基づいて、複数のゾーンから自動的に識別される。一実施形態によれば、ステップ2103で自動的に最小距離を決定し、ステップ2104で自動的に候補ゾーンを識別することは、ユーザ定義の距離基準のユーザ入力に応答して、プロセッサによって行われる。
【0117】
続いて、ステップ2105で、プロセッサが第一の係数を使用して、候補ゾーンを広げることによって、識別された候補ゾーンが接続される。次に、ステップ2106で、プロセッサが第二の係数を使用して、接続された候補ゾーンを収縮することによって、結合ゾーンを決定し、結合ゾーンの決定には、プロセッサが、決定された結合ゾーンの出力表示を提供することを含む。この出力表示は、ユーザへの表示ビュー(図形またはモデル表現)であり得るか、または関連する関係ソフトウェア(例えば、ロボットなど工場床の要素用のコントローラ)と共有可能なデータファイルであり得る。一実施形態では、出力表示によって、コントローラまたは類似のデバイスに、決定されたレイアウトに従って、工場の床、または例えば、ロボットといった、床上にあるリソースの動作を再構成させてもよい。
【0118】
方法2100の実施形態によれば、第一の係数および第二の係数は各々、候補ゾーン間で決定された最小距離を含む集合からの最大値の関数である。方法2100の別の実施形態はさらに、ユーザ定義の接続係数を受信することを含み、かかる実施形態では、第一の係数は、候補ゾーンと受信されたユーザ定義の接続係数との間で決定された最小距離を含む集合からの最大値の関数、例えば、距離関数である。方法2100の例示的な一実施形態はさらに、結合されるゾーンに関する、一つまたは複数のユーザ定義の制限を受信することと、各ゾーンと、ユーザ定義の距離基準と、結合されるゾーンに関する受信された一つまたは複数のユーザ定義の制限との間で決定された最小距離に基づいて、マージする候補ゾーンを識別することとを含む。
【0119】
図22は、本明細書に記載される本発明の任意の様々な実施形態による、リソースレイアウトを決定するためのコンピュータベースのシステムの簡略ブロック図である。システム2220は、バス2223を含む。バス2223は、システム2220の様々な構成要素間の相互接続として機能する。バス2223に接続されているのは、キーボード、マウス、ディスプレイ、スピーカなどの様々な入力および出力デバイスをシステム2220に接続するための、入力/出力デバイスインターフェース2226である。中央処理装置(CPU)2222は、バス2223に接続され、実施形態を行うコンピュータ命令の実行を提供する。メモリ2225は、
図1、2、および21に関して先に説明した方法100、220、2100など、本明細書に記載される実施形態を行うコンピュータ命令の実行に使用されるデータ用の揮発性記憶装置を提供する。記憶装置2224は、操作システム(図示せず)および実施形態の構成など、ソフトウェアのための不揮発性記憶装置を提供する。システム2220はまた、ワイドエリアネットワーク(WAN)およびローカルエリアネットワーク(LAN)を含む、当該技術分野で知られる任意の様々なネットワークに接続するためのネットワークインターフェース2221を備える。
【0120】
本明細書に記載の例示的な実施形態は、多くの異なる方法で実装され得ることを理解するべきである。いくつかの例では、本明細書に記載の様々な方法および機械は、各々、コンピュータシステム2220など、物理的、仮想的、もしくはハイブリッドな汎用コンピュータ、または
図23に関連して本明細書の以下に記載する、コンピュータ環境2030などのコンピュータネットワーク環境によって実装されてもよい。コンピュータシステム2220は、例えば、CPU2222による実行のために、メモリ2225または不揮発性記憶装置2224のいずれかにソフトウェア命令をロードすることによって、本明細書に記載の方法を実行する機械に変換されてもよい。当業者は、システム2220およびその様々な構成要素が、本明細書に記載される本発明の任意の実施形態または実施形態の組み合わせを実行するように構成されてもよいことをさらに理解するべきである。さらに、システム2220は、動作可能に内部的または外部的にシステム2220へ連結された、ハードウェア、ソフトウェア、およびファームウェアモジュールの任意の組み合わせを利用して、本明細書に記載の様々な実施形態を実装してもよい。さらに、システム2220は、本明細書に記載される原理を使用して決定されたレイアウトに従って動作もしくは移動するよう、デバイス、もしくはそこに接続されるデバイスを制御するために、デバイスに通信可能に接続されるか、またはデバイス内に埋め込まれてもよい。
【0121】
図23は、本発明の一実施形態を実施し得る、コンピュータネットワーク環境2030を示す。コンピュータネットワーク環境2030では、サーバ2031は、通信ネットワーク2032を介して、クライアント2033a~nにリンクされる。環境2030を使用して、クライアント2033a~nが、単独またはサーバ2031と組み合わせて、本明細書に記載される方法のいずれかを実行することが可能になり得る。非限定的な例では、コンピュータネットワーク環境2030によって、クラウドコンピューティング実施形態、サービスとしてのソフトウェア(SAAS)実施形態などを提供する。
【0122】
実施形態またはその態様は、ハードウェア、ファームウェア、またはソフトウェアの形態で実装することができる。ソフトウェアで実装された場合、ソフトウェアは、プロセッサが、ソフトウェアまたはその命令のサブセットをロードすることが可能になるように構成されている、任意の非一時的コンピュータ可読媒体に記憶されてもよい。次いで、プロセッサは、命令を実行して、本明細書に記載された方法で作動する、または装置を動作させるように構成される。
【0123】
さらに、ファームウェア、ソフトウェア、ルーチン、または命令は、データプロセッサの特定の動作および/または機能を実行するものとして、本明細書に記載され得る。しかしながら、本明細書に含まれるかかる記載は、単に便宜のためであり、かつ、実際には、かかる動作は、ファームウェア、ソフトウェア、ルーチン、命令などを実行する計算デバイス、プロセッサ、コントローラ、または他のデバイスから生じることを認識するべきである。
【0124】
フロー図、ブロック図、およびネットワーク図は、より多いもしくは少ない要素を含んでもよく、異なって配置されてもよく、または異なって表現されてもよいことを理解するべきである。しかし、実施形態の実行を例解する、ブロックおよびネットワーク図、ならびにブロックおよびネットワーク図の数が、特定の方法で実装されることを、特定の実装形態によって指示してもよいことを、さらに理解するべきである。
【0125】
それに応じて、さらなる実施形態はまた、様々なコンピュータアーキテクチャ、物理的、仮想的、クラウドコンピュータ、および/またはそれらのいくつかの組み合わせに実装されてもよく、したがって、本明細書に記載のデータプロセッサは、例解の目的で意図されているに過ぎず、実施形態の限定として意図されるものではない。
【0126】
例示的な実施形態を具体的に示し説明してきたが、形態および詳細の様々な変更が、添付の請求項によって網羅される実施形態の範囲から逸脱することなく、実施形態になされてもよいことは、当業者に理解されるであろう。