(57)【特許請求の範囲】
【請求項１】
組立作業計画に必要な部品間の接続情報、生成される半組立品、部品の組み付け順序、ロボット、治具等の情報を付加したＣＡＤデータを入力する手段と、前記ＣＡＤデータに基づいて製品の組立に必要な各部品について、部品単位の接続情報を各軸方向ごとのリエゾングラフにより記述する手段と、前記リエゾングラフと治具対象の部品、拘束条件に基づいて、組立順序ペトリネットを生成する手段と、前記組立順序ペトリネットの各組立順序において、組立時間、干渉、到着性からなる作業コストを算出し、該作業コストが最小となる組立順序を最適化アルゴリズムにより求める手段と、組立作業に使用するロボットのハンドツールをトークンとし、ハンドツールの空間上の移動をトークンのプレース上の移動に対応づけることでロボット動作ペトリネットモデルを作成する手段と、前記組立順序ペトリネットのトランジションに作業プレースと新たなトランジションを付加し、各トランジションを前記ロボット動作ペトリネットの資源要求プレースと、作業受理プレースとに対応づけることで、前記組立順序ペトリネットと前記ロボット動作ペトリネットとを合成する手段と、評価関数としてタクトタイムを用いて、合成されたペトリネットから組立作業計画を行う手段と、を有することを特徴とする自動組立装置。
【請求項２】
組立作業計画に必要な部品間の接続情報、生成される半組立品、部品の組み付け順序、ロボット、治具等の情報を付加したＣＡＤデータを入力する工程と、前記ＣＡＤデータに基づいて製品の組立に必要な各部品について、部品単位の接続情報を各軸方向ごとのリエゾングラフにより記述する工程と、前記リエゾングラフと治具対象の部品、拘束条件に基づいて、組立順序ペトリネットを生成する工程と、前記組立順序ペトリネットの各組立順序において、組立時間、干渉、到着性からなる作業コストを算出し、該作業コストが最小となる組立順序を最適化アルゴリズムにより求める工程と、組立作業に使用するロボットのハンドツールをトークンとし、ハンドツールの空間上の移動をトークンのプレース上の移動に対応づけることでロボット動作ペトリネットモデルを作成する工程と、前記組立順序ペトリネットのトランジションに作業プレースと新たなトランジションを付加し、各トランジションを前記ロボット動作ペトリネットの資源要求プレースと、作業受理プレースとに対応づけることで、前記組立順序ペトリネットと前記ロボット動作ペトリネットとを合成する工程と、評価関数としてタクトタイムを用いて、合成されたペトリネットから組立作業計画を行う工程と、を有することを特徴とする自動組立方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、自動組立装置及び自動組立方法、より詳細には、多品種少量生産にフレクシブルに対応できる組立装置の、設計情報を用いた自動プログラミングに関し、例えば、組立生産システム、産業用ロボット等に適用可能なものである。
【０００２】
【従来の技術】
従来、産業用ロボットに組立作業を行わせるためには、オペレータがその動作を手続き型のプログラムにより記述し、更に、各作業点を教示する必要があった。これは、多くの作業をロボットに行わせる場合、オペレータに多大な労力を要した。また、この方法は、ロボットに教示するために生産を停止させる必要があり、経済的に大きな問題があった。
【０００３】
上記問題を解決する方法として、オフラインで構成されたロボットシミュレータ上でロボットおよび作業環境の幾何形状モデルを構築し、これをグラフィックディスプレイ上に表示してこの仮想環境内でオペレータが前記プログラミングと教示を行い、ロボットの教示データを作成するオフライン教示方法がある。しかし、このオフライン教示方法を用いてもオペレータは前記ロボットの作業位置や経路を一つ一つ指定する必要があり、これも煩雑で時間のかかる大変な作業であった。
【０００４】
上記問題を解決する方法として、ＣＡＤ上に構築されたワークの幾何形状モデルから有用な特徴データや判別データを導出し、これをもとにロボットの教示位置、姿勢、軌跡、動作コマンド列を自動生成する方法が提案されている（特開平７−１６８６１７号公報）。
しかし、この方法では、
・作業目標指令段階において、オペレータが作業の最終目標を指示する手間がかかる、
・動作データ設定段階において、オペレータが予め幾何形状モデルから導出されたデータと動作データとのルール付けを設定しておく必要があり、事前に予想できる簡単な動作であれば可能だが、複雑な組立作業への応用は記述が煩雑になり、困難である、
等の問題があった。
【０００５】
上述のように、これまでのロボットは手続き的なプログラムを用いているが、これはセンサからの情報による条件分岐や複雑な作業を表現するには記述が煩雑になり、困難である。
【０００６】
この問題を解決する手段として、並列的な動作の記述が可能で、視覚化することで人間にとって直感的に理解しやすいネット型のプログラムがある。ネット型のプログラムとして、離散事象をモデル化することに有効な手法であるペトリネットが一般に知られている。
また、実際の作業環境は部品、ロボット、部品供給装置、治具等の間に位置誤差等のバラツキが存在し、シミュレータ内の仮想環境とはギャップがあるため、このオフライン教示方法によるプログラムをそのままロボットにダウンロードしただけでは組立作業を実現することはできない。
【０００７】
そこで、本出願人は、先に、ペトリネットを用いて、より複雑な組立作業を実現するためのロボットプログラムを自動生成し、ＨＥＳによりシミュレータ内の仮想環境とのギャップを補正するシステムを提案した（特願平８−２７２６５２号「組立装置」）。
【０００８】
【発明が解決しようとする課題】
しかし、本出願人が先に提案した組立方法では、部品数が増加した場合、組合せ爆発が起こり、最適組立順序探索に膨大な時間を要する。
【０００９】
本発明は、上述のごとき実情に鑑みてなされたもので、より複雑な組立作業を実現するためのロボットプログラムをオフラインで短時間に自動生成する組立装置を提供することを目的としてなされたものである。
【００１０】
【課題を解決するための手段】
請求項１の発明は、組立作業計画に必要な部品間の接続情報、生成される半組立品、部品の組み付け順序、ロボット、治具等の情報を付加したＣＡＤデータを入力する手段（工程）と、前記ＣＡＤデータに基づいて製品の組立に必要な各部品について、部品単位の接続情報を各軸方向ごとのリエゾングラフにより記述する手段（工程）と、前記リエゾングラフと治具対象の部品、拘束条件に基づいて、組立順序ペトリネットを生成する手段（工程）と、前記組立順序ペトリネットの各組立順序において、組立時間、干渉、到着性からなる作業コストを算出し、該作業コストが最小となる組立順序を最適化アルゴリズムにより求める手段（工程）と、組立作業に使用するロボットのハンドツールをトークンとし、ハンドツールの空間上の移動をトークンのプレース上の移動に対応づけることでロボット動作ペトリネットモデルを作成する手段（工程）と、前記組立順序ペトリネットのトランジションに作業プレースと新たなトランジションを付加し、各トランジションを前記ロボット動作ペトリネットの資源要求プレースと、作業受理プレースとに対応づけることで、前記組立順序ペトリネットと前記ロボット動作ペトリネットとを合成する手段（工程）と、評価関数としてタクトタイムを用いて、合成されたペトリネットから組立作業計画を行う手段（工程）と、を有することを特徴とし、もって、組立作業計画に必要な情報を付加した３次元ＣＡＤデータを入力とし、タスクプランナにより組立作業計画を行うことにより、組立ロボットのプログラムをオフラインで短時間に自動生成できるようにし、更には、人間が組立作業プログラムを生成する際に考慮する点を、概念別に分離したレベル毎に自動組立計画を行なうことで、階層的な組立作業計画が適用できるようにし、更には、ロボットシミュレータの作業コストを用いて最適経路を探索することにより、組立ロボットのプログラムをオフラインで短時間で自動生成できるようにし、更には、シミュレーションによって組立順序計画とロボット動作計画を同時に行うことにより、部品ベースのみで最適な組立順序を求めることができるようにしたものである。
【００１５】
【発明の実施の形態】
図１は、本発明の実施例を説明するための構成図で、図１でいうＣＡＤデータとは組立作業計画に必要な情報を付加した３次元ＣＡＤデータを意味する。本システムは３次元ＣＡＤデータを入力とし、タスクプランナにより組立作業計画を行う。組立作業はペトリネットによりモデル化し、最適経路を探索する。得られたプログラムをロボットにダウンロードし、実際の作業を行わせる。ここでシミュレータ内の仮想空間と現実空間の誤差はＬＲＦによって補正される。
【００１６】
組立作業計画を自動化するにあたって、まず、人間がロボットをプログラミングする際の知識の流れについて明確にする。ロボット言語の分類法に基づくと、ロボットのプログラムは、
（１）対象物状態レベル
（２）対象物移動レベル
（３）手先移動レベル
（４）軌道サーボレベル
という、４段階に分類することができる。これを図２に示す。
【００１７】
図２は、上記４段階の分類を示す図で、組立作業の階層化という観点から見ると、▲１▼は各部品の組立順序問題、▲２▼は組立性の評価と実現、▲３▼は障害物回避とタスクプランニング、▲４▼は正確な制御として考えることができる。この分類は、人間が組立作業プログラムを生成する際に考慮する点を、概念別に分類したものであるとみなすことができる。このレベル毎に自動組立計画を行なうことで、階層的な組立作業計画が適用できると考えられる。
【００１８】
そこで、図２のような組立計画モデルを提案し、階層的に組立計画を行なうものとした。ここで、各レベルにおける作業計画はそれぞれ３次元ＣＡＤデータを独立して参照し、必要なモデルやパラメータを作成して計画を行なう。
組立順序計画のモデルとして、リエゾングラフ、ＡＮＤ／ＯＲグラフ、ペトリネットモデルなどグラフ構造によってモデル化することにより、視覚的に理解しやすい形の表現法が確立されている。ここでは、ロボットモデル、生産システムモデルとの一貫性を考慮してペトリネットによる組立順序モデルが適当であると考えられる。
【００１９】
図３は組立順序ペトリネットの例を示す図で、図３（Ａ）に部品Ａ，Ｂ，Ｃを、図３（Ｂ）にこれら部品Ａ，Ｂ，Ｃの組立順序を示す。ペトリネットによる組立順序モデルは組立作業を網羅的に記述できるが、組立対象の構造を十分把握していなければ作成することができない。これに対して、部品単位の接続情報を各軸方向ごとのリエゾングラフにより記述し、組付け順序、組付け方向と例外組立の抽出を対話的に行う。
【００２０】
リエゾングラフは、干渉関係をすべて記述するには表現力が不足しており、効率的な組立順序の探索も行いにくい。そこで、まず、リエゾングラフを部品設計時に獲得して組立順序を生成し、最適化する時点で組立順序ペトリネットに変換する手法を提案する。従って、設計時点におけるリエゾングラフは必要な制限すべてを記述する必要はない。ペトリネットは、組立途中の状態であるサブアセンブリをモデル化しているため、シミュレータによる組立性の確認、不可能な組立の枝刈りがリエゾングラフに比べて容易に行えると考えられる。
【００２１】
図４に解析例として用いた対象（現像ユニット）の概観、図５に接続関係のリエゾングラフを示す。対象とした部品は９部品（Ａ〜Ｉ）により構成された機械部品のユニットを用いた。全探索を行った場合、組立順序は９！通りあり、確認することが困難である。リエゾングラフと治具対象の部品、拘束条件により、サブアセンブリ数は４６通り、組立順序の組み合わせ数は６７２通りに制限された。図６にリエゾングラフから生成された組立順序ペトリネットを示す。
【００２２】
前述のごとくして得られた組立順序ペトリネットのサブネットによる組立順序をロボットシミュレータに送り、シミュレータ内の仮想環境において組立作業を実現し、得られた作業コストの合計が最小になるように最適経路を探索する。作業コストとしては組立時間、干渉、到着性等がある。最適経路探索にはローカルサーチ、タブーサーチ、Ａ＊，ＧＡ等の探索アルゴリズムを用いることにより探索時間が短縮できる。
【００２３】
ペトリネットへの変換作業が終了したのちに、適当な探索空間にモデルを縮小する枝刈り作業を行う必要がある。不可能な組立は、大きく分けて干渉が発生して組立られない場合と、安定に定置することのできない場合の二つが考えられる。以下に処理フローを示す。
（１）各部品をＰｘ、部品の集合をＡとして、サブアセンブリを式（１）と定義する。
【００２４】
【数１】
0003705672.tif 000002
【００２５】
（２）シミュレータなどを用いて、式（１）に対して部品Ｐｉが干渉を発生し、組立不可能と判定されたとする。
（３）この時、Ｐｉと干渉した部品Ｐｊを求めることにより、リエゾングラフでは表現されていない条件ｉ←ｊが確認できる。
（４）この時点で確認したプレースを削除すると同時に、
【００２６】
【数２】
0003705672.tif 000003
【００２７】
を満たすサブアセンブリ式（１）をネット中で探索し、枝刈りは目標のプレースに入出力するトランジションも対象とする。
（５）また、式（１）に対して部品Ｐｊが安定に接続しなかった（Ｐｉの受ける拘束条件が、重力方向に対抗していない）場合、式（１）を表すプレースの出力に属するプレース、トランジションを消去する。
（６）組立タスクが予め決定される場合は、組立不可能判定を行い、不可能組立を枝刈りすることによって二度手間を防ぐこと同時に探索空間を十分に狭めることが期待できる。
【００２８】
図７にペトリネットの資源共有サブネットの表現を示す。中央に存在するトークンの数が資源の数であり、一方が資源を使用している場合、他方は待ち状態になる。ロボット動作ペトリネットを構築するために、ここでは、ハンドツールが交換可能の双腕マニピュレータを想定してモデル化を試みる。手先移動レベルのプログラムの概念に基づき、トークンをロボットのハンドツールとみなし、ハンドが空間を移動する状態をトークンがプレースを移動する状態に模してモデリングを行なった。図９の左面にロボットのモデル、表１にロボットモデル内におけるプレース、トランジションの意味を記述する。
【００２９】
【表１】
0003705672.tif 000004
【００３０】
図９に示したモデルでは、３つのハンドツールと作業スペースが共有資源としてモデル化されている。２つのトークンは２本のマニピュレータを意味する。ネット上の入力用のＰ２０〜Ｐ２２，出力用のＰ２３〜Ｐ２５のプレースを除いて、トークンの保存性が保証される。また、トークンが２個である場合、デッドロックは存在しない。入出力プレースは条件プレースとして働く。
【００３１】
本発明では解析の容易さから、プレース・トランジションネットによる表現を用いたが、カラーペトリネットなどの高水準ペトリネットによるモデル化を導入することで、よりコンパクトなネットモデルによる表現が可能である。
【００３２】
作業を行うロベットの状態によって、作業の評価は非決定的に変化する。このような例はロボットが汎用化するほど発生しやすくなり、部品ベースのみでは最適な組立順序を求めることが困難になる。そこで、本発明では、組立順序モデルとロボット動作モデルがペトリネットでモデル化されていることを利用して、これらを融合し、シミュレーションによって組立順序計画とロボット動作計画を同時に行うことを試みた。
【００３３】
組立順序ペトリネットにおけるトランジションは組立作業を意味しているため、これをロボット動作ペトリネットに置き換えて階層的なモデルを構築する手法が考えられる。そこで、組立順序ペトリネットのトランジションを、図８に示すように置換した後、作業に必要な資源に要求するプレースに出力接続する。ロボットに要求が受け入られた時点で作業受理プレースに出力する。組立順序モデルは、これにしたがって次に要求される組み付けを選択する。組立順序ペトリネットには、作業プレースとトランジションを各トランジション付加し、作業中の組立作業を識別する。
【００３４】
以上の手法を用いて、ロボット動作ペトリネットと組立順序ペトリネットを合成する。例として、図９に３部品の組立のモデルを示す。図４に示した部品に対して適応した例について説明する。図６の組立順序ペトリネットと図９の左側のロボット動作ペトリネットを合成して組立作業計画を行う。また、各組立作業についてはロボットシミュレータによって作業時間を計算し、時間ペトリネットによるシミュレーションを行う。評価関数としてタクトタイムを用いる。ロボットのモデルを合成することにより、最適な組立順序と作業割り当てを計画する。
【００３５】
図１０は、組立作業計画シミュレーションの一例を示す図で、同図は、ロボットによる作業の割り当てを示し、縦軸に各ハンドツール、横軸に時間を示す。図１０は組立作業にロボットが要した時間と必要とするハンドの情報を示している。
【００３６】
【発明の効果】
組立作業計画に必要な情報を付加した３次元ＣＡＤデータを入力とし、タスクプランナにより組立作業計画を行うことにより、組立ロボットのプログラムをオフラインで短時間に自動生成できる。
【００３７】
人間が組立作業プログラムを生成する際に考慮する点を、概念別に分離したレベル毎に自動組立計画を行なうことで、階層的な組立作業計画が適用できる。
ペトリネットによる組立順序モデルは組立作業を網羅的に記述できるが、組立対象の構造を十分把握していなければ作成することができない。これに対して、リエゾングラフは、干渉関係をすべて記述するには表現力が不足しており、効率的な組立順序の探索も行いにくい。
そこで、部品設計時に部品単位の接続情報を各軸方向毎のリエゾングラフとして獲得して組立順序を生成し、最適化する時点で組立順序ペトリネットに変換することにより、組合せ爆発を防ぐことができる。
また、設計時点におけるリエゾングラフは必要な制限すべてを記述する必要はない。
ペトリネットは、組立途中の状態であるサブアセンブリをモデル化しているため、シミュレータによる組立性の確認、不可能な組立の枝刈りがリエゾングラフに比べて容易に行える。
【００３８】
ロボットシミュレータの作業コストを用いて最適経路を探索することにより、組立ロボットのプログラムをオフラインで短時間で自動生成することができる。
ローカルサーチ、タブーサーチ、Ａ＊，ＧＡ等の探索アルゴリズムを最適経路探索に用いることにより、さらに探索時間が短縮できる。
【００４０】
ロボットが汎用化するほど、作業を行うロボットの状態によって作業の評価は非決定的に変化するが、このような場合でも組立順序モデルとロボット動作モデルがペトリネットでモデル化されていることを利用してこれらを融合し、シミュレーションによって組立順序計画とロボット動作計画を同時に行うことにより、部品ベースのみで最適な組立順序を求めることができる。
また、本発明では、解析の容易さからプレース・トランジションネットによる表現を用いているが、カラーペトリネットなどの高水準ペトリネットによるモデル化を導入することで、よりコンパクトなネットモデルによる表現が可能である。
【図面の簡単な説明】
【図１】  本発明による組立装置の一実施例を説明するための要部構成図である。
【図２】  組立作業計画のレベルを示す図である。
【図３】  組立順序ペトリネットの例を示す図である。
【図４】  組立対象を現像ユニットとした場合の例を示す図である。
【図５】  Ｚ軸，Ｙ軸方向のリエゾングラフによる接続関係を示す図である。
【図６】  リエゾングラフから生成された組立順序ペトリネットの例を示す図である。
【図７】  ペトリネットの資源共有サブネットを示す図である。
【図８】  組立順序ペトリネットのトランジョンの置換例を示す図である。
【図９】  ロボット動作ペトリネットと組立順序ペトリネットの合成（３部品組立）例を示す図である。
【図１０】  組立作業計画（ハンドの作業割り合て）シミュレーションを示す図である。
【図１】
0003705672.tif 000005
【図２】
0003705672.tif 000006
【図３】
0003705672.tif 000007
【図４】
0003705672.tif 000008
【図５】
0003705672.tif 000009
【図６】
0003705672.tif 000010
【図７】
0003705672.tif 000011
【図８】
0003705672.tif 000012
【図９】
0003705672.tif 000013
【図１０】
0003705672.tif 000014