移動装置の軌道情報生成装置
【課題】複数の軌道情報を独立して生成するにあたり、複数の軌道を結合した全体での移動時間が最短となるように各々の軌道情報を生成する新たな軌道情報生成装置を提供する。
【解決手段】所望の始点から終点まで移動装置を移動させるための軌道及び軌道上の速度に関する軌道情報を互いに異なる制約条件の下で生成する二つの軌道情報生成部を有し、これら軌道情報生成部で生成される二つの軌道情報のうち一方の軌道の終点と他方の軌道の始点とを一致させて結合点とし、結合点を介して両軌道を連結可能に各々の軌道情報を生成する装置である。結合点で取り得る複数の速度V0〜VMAX(移動に要する合計時間が最小となる速度Vsを含む)のうち、結合点における速度を制約条件の一つとして各々の軌道情報生成部で生成される各軌道情報に基づく移動に要する合計時間が最小となる速度Vsを繰り返し演算により算出する速度算出部を設けた。
【解決手段】所望の始点から終点まで移動装置を移動させるための軌道及び軌道上の速度に関する軌道情報を互いに異なる制約条件の下で生成する二つの軌道情報生成部を有し、これら軌道情報生成部で生成される二つの軌道情報のうち一方の軌道の終点と他方の軌道の始点とを一致させて結合点とし、結合点を介して両軌道を連結可能に各々の軌道情報を生成する装置である。結合点で取り得る複数の速度V0〜VMAX(移動に要する合計時間が最小となる速度Vsを含む)のうち、結合点における速度を制約条件の一つとして各々の軌道情報生成部で生成される各軌道情報に基づく移動に要する合計時間が最小となる速度Vsを繰り返し演算により算出する速度算出部を設けた。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、移動装置を移動させるための軌道及び軌道上の速度に関する軌道情報を生成する装置に係り、特に移動装置の適正な移動を実現する軌道情報を得る軌道情報生成装置に関する。
【背景技術】
【0002】
移動装置の一種である搬送装置は、特許文献1に例示されるように、ロボットアーム等の搬送機構を用いて搬送対象物を移動させる装置であり、予め設定された軌道及び軌道上の速度に関する軌道情報を用いて移動制御を行うのが一般的である。この移動制御に用いる軌道情報は、軌道情報生成装置によって移動制御の事前に予め生成される。軌道情報生成装置の多くは、特許文献2に例示されるように、ロボットアームの動力学モデルをもとに最適化手法を用いて所望の始点から終点までの移動時間が最短となる適切な軌道情報を生成するのが一般的である。
【0003】
ところで、軌道情報を生成するにあたり、所望の軌道に制約条件の異なる部位が混在する場合には、軌道情報の生成を簡素化するため、制約条件毎に軌道を分割し、分割した各々の軌道を他の軌道と独立して生成し、生成した複数の軌道を結合点で結合することが一般的になされる。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2003−145461号公報
【特許文献2】特開平7−200030号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、上記従来の軌道情報生成装置は、単一の軌道で移動時間が最短となるように軌道情報を生成するものの、複数の軌道を結合した全体での移動時間を考慮するものはない。一般的な具体例として、二つの軌道の結合点で移動速度を0、すなわち一旦停止する場合があり、この場合、結合点での失速により二つの軌道を結合した全体での移動時間が増大して移動効率を損なうこととなる。
【0006】
これに対して、結合点での速度を発揮可能な最大速度として二つの軌道を円滑に接続することも一つの有効な手段として考えられるが、軌道情報は結合点での速度に応じて移動に要する時間が変化するものであり、最大速度を得るために経路が回り道をする等、軌道全体での移動時間が増大して移動効率の低下を招く場合もある。
【0007】
本発明は、このような課題に着目してなされたものであって、その目的は、複数の軌道情報を独立して生成するにあたり、複数の軌道を結合した全体での移動時間が最短となるように各々の軌道情報を生成する新たな軌道情報生成装置を提供することである。
【課題を解決するための手段】
【0008】
本発明は、かかる目的を達成するために、次のような手段を講じたものである。
【0009】
すなわち、本発明の移動装置の軌道情報生成装置は、所望の始点から終点まで移動装置を移動させるための軌道及び軌道上の速度に関する軌道情報を互いに異なる制約条件の下で生成する二つの軌道情報生成部を有し、これら軌道情報生成部で生成される二つの軌道情報のうち一方の軌道の終点と他方の軌道の始点とを一致させて結合点とし、当該結合点を介して両軌道を連結可能に各々の軌道情報を生成する装置であって、双方の軌道情報生成部は、前記制約条件に応じて移動に要する時間が変化する軌道情報を生成するものであり、前記結合点で取り得る複数の速度のうち当該結合点における速度を制約条件の一つとして各々の軌道情報生成部で生成される各軌道情報に基づく移動に要する合計時間が最小となる速度を繰り返し演算により算出する速度算出部を設け、この速度算出部で算出した速度を用いて各々の軌道情報生成部で軌道情報を生成するように構成したことを特徴とする。
【0010】
ここでいう結合点での速度は、速度の大きさだけでなく向きを含むベクトルである。
【0011】
両軌道を連結可能に各々の軌道情報を生成するとは、両軌道のうち一方の軌道の終点と他方の軌道の始点とを一致させて結合点とするとともに、その結合点での速度(向きを含む)が両軌道情報で一致することを意味する。
【0012】
このように、結合点で取り得る複数の速度のうち、結合点での速度を制約条件の一つとして各々の軌道情報生成部で生成される各軌道情報に基づく移動に要する合計時間が最小となる速度を繰り返し演算で算出し、算出した速度を用いて二つの軌道情報を生成するので、各々の軌道情報は独立して生成されるものの、結合点での速度が双方の軌道情報で一致して軌道同士の連結がスムーズになるうえ、結合した軌道全体での移動時間を最小にすることができ、移動効率を向上させることが可能となる。
【0013】
本発明の好適な適用例としては、前記各々の軌道情報生成部の少なくとも一方には、結合点での速度を速くするほど軌道が迂回して長くなる制約条件が課されていることが挙げられる。
【0014】
本発明の好適な適用例としては、前記二つの軌道情報生成部で生成される二つの軌道情報のうち一方の軌道情報を構成する軌道の始点から終点に向かう方向が、他方の軌道情報を構成する軌道の始点から終点へ向かう方向に対して傾斜していることが挙げられる。
【0015】
複雑な演算を要することなく結合点での解となる速度を算出するためには、速度算出部は、二分法を用いた繰り返し演算で結合点での速度を算出することが好ましい。
【0016】
上記の軌道情報生成装置の好適な適用例としては、複数のリンクを回転可能に直列接続した多関節ロボットを用いて搬送対象物を移動させる移動装置を駆動させるための軌道情報を生成する装置に適用することが挙げられる。
【0017】
矩形状の通路内及びこの通路に隣接配置されたロードポート等の搬入出部内を移動する移動装置へ適用するためには、二つの軌道情報生成部のうち一方の軌道情報生成部で用いる制約条件は、軌道の位置を矩形状の枠内に制限するものであり、他方の軌道情報生成部で用いる制約条件は、軌道の位置を直線状に制限するものであることが望ましい。
【0018】
振動抑制を考慮したうえで最短時間となる軌道情報を生成し、移動効率を向上させるためには、軌道情報生成部の少なくとも一つは、移動に要する時間をパラメータの一つとして評価関数に含めるとともに、予め設定された移動装置の振動特性を用いて移動により生ずる模擬振動の大きさを算出し、算出した模擬振動の大きさをパラメータの一つとして評価関数に含め、少なくとも上記二つのパラメータを含む評価関数の値が最小となるように最適化手法を用いて軌道情報を生成することが効果的である。
【0019】
パラメータ設定が取り扱い易いとともに、移動時間低減を優先する設定を可能とするためには、受付手段を介して変更操作を受け付けて変更操作に応じて評価関数に対する模擬振動の大きさと移動時間との重み付けを表す重み付け係数を変更する重み付け変更手段を有することが好ましい。
【0020】
勿論、上記の軌道情報生成装置の構成をプログラムに対応させることも可能である。
【発明の効果】
【0021】
本発明は、以上説明したように、結合点で取り得る複数の速度のうち、結合点での速度を制約条件の一つとして各々の軌道情報生成部で生成される各軌道情報に基づく移動に要する合計時間が最小となる速度を繰り返し演算で算出し、算出した速度を用いて二つの軌道情報を生成するので、各々の軌道情報は独立して生成されるものの、結合点での速度が双方の軌道情報で一致して軌道同士の連結がスムーズになるうえ、結合した軌道全体での移動時間を最小にすることができ、移動効率を向上させることが可能となる。したがって、スループットを向上させる等、移動装置を高効率で駆動させることが可能となる。
【図面の簡単な説明】
【0022】
【図1】本発明の一実施形態に係る移動装置の軌道情報生成装置を模式的に示す構成図。
【図2】同移動装置の搬送機構を示す平面図。
【図3】第一の軌道情報を生成する際に用いる振動特性モデルを模試的に示す図。
【図4】同移動装置の移動領域を示す図。
【図5】生成される軌道情報に関する図。
【図6】本実施形態に係る装置および従来の装置によってそれぞれ生成された軌道を比較して示す図。
【図7】本実施形態に係る装置および従来の装置によってそれぞれ生成された軌道情報を用いて移動制御を行った結果を示す図。
【図8】第二の軌道情報を生成する際に用いる振動特性モデルを模試的に示す図。
【図9】第二の軌道情報を生成するにあたり、最短時間のみを追求した場合と最短時間に加えて振動抑制も考慮した場合との比較結果を示す図。
【図10】結合点での速度と、第一及び第二の軌道情報を結合した軌道全体での合計移動時間との関係を示す説明図。
【図11】速度算出部を実現する速度算出処理ルーチンを示すフローチャート。
【図12】結合点での速度に応じて生成される軌道を比較して示す図。
【発明を実施するための形態】
【0023】
以下、本発明の実施形態を、図面を参照して説明する。
【0024】
図1に示すようにロボットアーム等の搬送機構131を駆動することにより半導体ウエハー等の搬送対象物Wを移動させる移動装置103は、予めメモリに記憶されている軌道及び軌道上の速度に関する軌道情報132に基づいて搬送対象物Wの移動制御を行うものである。本実施形態に係る移動装置103は、図4に示す矩形状の通路ac内及びこの通路acに隣接配置された複数のロードポート等の搬入出部Lo内を搬送対象物Wの移動領域としている。
【0025】
本実施形態に係る移動装置の軌道情報生成装置2は、図1及び図4に示すように、移動装置103の移動制御に用いられる軌道情報132を生成する装置であり、受付手段21と、矩形状の通路ac内のうち搬入出部Loの入り口p1,p2同士の間を移動させるための第一の軌道情報132aを生成する第一の軌道情報生成部22と、搬入出部Loの入り口p2と内部p3との間を直線移動させるための第二の軌道情報132bを生成する第二の軌道情報生成部23とを有している。これら軌道情報生成部22,23は、移動させる領域が異なるので、互いに異なる制約条件の下で軌道情報を生成する。
【0026】
受付手段21は、図1に示すように、ディスプレイやキーボード、マウス等の既知の操作部を用いて、第一の軌道情報132a及び第二の軌道情報132bを生成するために必要な各々の軌道の始点や終点、制約条件となる位置情報等の各種情報の入力を受け付けるものである。勿論、受付手段をティーチングペンダント(教示装置)として構成したり、上位システムや支援ツールからの通信による設定を受け付けるようにしたりしてもよい。
【0027】
第一の軌道情報生成部22は、図1及び図4に示すように、矩形状の通路ac内のうち搬入出部Lo1(Lo)の入り口p1から他の搬入出部Lo2の入り口p2まで搬送対象物Wを移動させるための最適な第一の軌道情報132aを、受付手段21に受け付けられた情報に基づき生成する最適化処理部22aを有しており、この最適化処理部22aは、CPU、メモリ、各種インターフェイス等を備えたパソコン等の情報処理装置においてCPUが予め記憶されている図示しない軌道情報生成処理ルーチンを実行することによりソフトウェア及びハードウェアが協働して実現されるものである。
【0028】
この最適化処理部22aは、予めメモリに記憶されている動力学モデルと振動特性モデルと制約条件とに基づいて導き出せる軌道情報のうち、その移動時間及び移動に伴い生ずる振動が最小となる適切な軌道情報を最適化手法により生成するものである。
【0029】
以下、具体的に説明すると、駆動対象となる搬送機構131は、図2に示すように、複数のリンク134・135・136を回転可能に直列接続した、いわゆる多関節ロボットアームであり、ロボットアームの先端に設定された保持部136bに搬送対象物Wを載置した状態で各関節にある図示しないモータの駆動により各々のリンク間の角度θ1・θ2・θ3を変更して搬送対象物Wを所望の位置に移動させるものである。本実施形態の搬送機構131は、ベース133に基端134aが接続された第1のリンク134と、第1のリンク134の先端134bに基端135aが接続された第2のリンク135と、第2のリンク135の先端135bに基端136aが接続され先端に搬送対象物Wを載置するための保持部136bが設定された第3のリンク136とを備え、各リンク134〜136はそれぞれ水平方向に回転可能に接続されて三軸水平多関節ロボットを構成している。各リンク134〜136の長さはそれぞれL1、L2、L3に設定してある。
【0030】
この搬送機構131の動力学モデルは、各リンク134・135・136の質量分布がリンク先端での集中負荷であるとして簡略的に以下の式で表される。なお、iはリンクの番号を示し、例えば、i=1は第1のリンク134、i=2は第2のリンク135、i=3は第3のリンク136である。ここでは各リンクの質量分布がリンク先端での集中負荷であるとして式を構成しているが、勿論、各リンクの質量分布がリンクの重心周りにあるとして式を構成してもよい。
は加速度を表す。
Giは第i関節を駆動するモータに取り付けられた減速器のギア比である。
各関節のモータの駆動トルク:
各関節の負荷慣性モーメント:
Iiは第i関節を駆動するモータの慣性モーメント。
miは各リンクの質量。
なお、この動力学モデルに係る情報は、図1に示すように、予め第一の軌道情報生成部22のメモリに記憶されているが、受付手段21を通じて設定可能に構成してもよい。
【0031】
移動により生ずる振動を考慮するための振動特性モデルは、図3に示すような質量−バネモデルが適用されており、以下の式で表される。
Jm、Jaはそれぞれ第3のリンク136のモータの慣性モーメント、エンドエフェクタ(保持部136b)の先端に集中質量があるとした場合の慣性モーメントである。バネ定数Kは、実験により計測した固有振動数f及び下記の式を用いて算出する。
なお、この振動特性モデルに係る情報は、図1に示すように、予め第一の軌道情報生成部22のメモリに記憶されているが、受付手段21を通じて設定可能に構成してもよい。
【0032】
軌道情報の制約条件の一つとして、各リンク134・135・136を回転させるモータの駆動制約が図1に示すメモリに予め設定されている。このモータの駆動制約はモータが出力可能な最大トルクを用いており、以下の式で示される。τliは逆回転(θiが負の方向に駆動しようと)する場合の最大トルクであり、τuiは正回転(θiが正の方向に駆動しようと)する場合の最大トルクを示す。勿論、速度や加速度で表現されるものであってもよい。
【0033】
また、搬送機構131が図4に示す矩形状の通路ac内を可動領域として動作するものであるので、以下の式で示される矩形状をなす位置情報を軌道の位置の制約条件の一つとして、軌道の位置を矩形状の枠内に制限している。
(xi,yi)は図4(b)に示すように各関節の位置を示し、搬送対象物Wの中心位置(x3,y3)は、搬送対象物Wが可動範囲から外れないように半径r分狭くしている。
なお、この可動領域としての制約条件に係る情報は、図1に示すように、予め第一の軌道情報生成部22のメモリに記憶されているが、受付手段21を通じて設定可能に構成している。
【0034】
受付手段21で受け付けられた始点及び終点の二つの位置情報は、XY座標で示される始点位置及び終点位置、並びに始点速度及び終点速度であるが、搬送対象物Wの移動は、各リンク134〜136の角度θ1・θ2・θ3を変化させることにより行うので、始点及び終点に関する情報を以下の式で示すように角度情報に変換し、これを制約条件の一つとしている。なお、本実施形態では、始点速度を0として取り扱っている。
は関節角速度ベクトル、teは移動時間を表す。θs,θeは始点及び終点位置の情報を関節角度の情報(関節角度ベクトル)に変換したものである。
【0035】
上記のモデル及び制約条件の下で、以下の式で示される評価関数の値が最小となるように軌道及び軌道上の速度に関する軌道情報を最適化により求める。
この評価関数は、振動特性モデルで算出される模擬振動の大きさ(θ3−θa)をパラメータの一つとし、移動時間teをパラメータの一つとして、これら2つのパラメータを少なくとも含む関数である。具体的には、模擬振動の大きさ(θ3−θa)に重み付け情報である重み付け係数αを乗じて移動時間teと結合したものである。なお、最適化手法については一般的な手法を用いているので、ここでは説明を省略する。また、図1に示すように、この重み付け係数αを、受付手段21になされる変更操作に応じて変更する重み付け変更手段24が設けられており、重み付け係数αを変更することで振動抑制又は最短時間短縮のいずれかを優先するかを変更することが可能となる。本実施形態では、模擬振動の大きさ(θ3−θa)が負の値を含むため、これを二乗して正の値にしているが、(θ3−θa)の絶対値を取る式にしてもよい。
【0036】
ここで、上記の最適化問題を解くにあたり演算時間を低減するために離散化を考え、これに伴い軌道情報132も離散化して生成している。具体的には、軌道情報132は、図5に模式的に示すように、移動軌道Ptを、時間間隔Tで(N−1)等分し、始点S及び終点Eを含む複数の点P1〜Nで表現する離散データであり、各々の点Pkのxy座標(xk,yk)を、以下の式を用いて各リンク134〜136の角度θ1k・θ2k・θ3kで表現している。
xk=L1cosθ1k+L2cos(θ1k+θ2k)+L3cos(θ1k+θ2k+θ3k)
yk=L1sinθ1k+L2sin(θ1k+θ2k)+L3sin(θ1k+θ2k+θ3k)
【0037】
そして、上記で述べたモデル及び制約条件を中心差分法を用いて離散化すると以下の式で表される。なお、以下では、k時点目の点Pkの角度θikをθi[k]と略記する。
振動を考慮したモデル:
モータの駆動制約:
τi[k]は、k時点目の第i関節の駆動トルクを表す。
軌道の位置の制約条件:
xi[k],yi[k]は、k時点目の位置xi,yiを表す。
始点及び終点の制約条件:
評価関数:
【0038】
上記のモデル及び制約条件を用いて軌道情報132を生成するにあたり、具体的には、初期値として始点Sから終点Eまで直線で結んだ軌道情報を生成し、この初期軌道をもとに上記モデル及び制約条件に基づいて既知の逐次二次計画法を用いた最適化計算を行い、リンク角度θi[k]及び時間間隔Tを求める。
【0039】
ここで、従来の最短時間のみを追求した軌道情報での移動制御と、本実施形態の振動抑制も考慮した軌道情報での移動制御との比較実験を行うために、上記重み付け係数αを0として最短時間のみを追求した図6に示す軌道Pt’と、本実施形態の振動抑制を考慮した図6に示す軌道Ptとを生成し、それぞれの軌道情報を駆動指令に変換してロボットアームを駆動させ、移動によって発生する振動を計測したところ、図7に示すように、移動に要する時間にほとんど変化がなかったものの、従来の最短時間のみを追求した軌道情報に比べて本実施形態の振動抑制も考慮した軌道情報は発生する振動が少なくとも半分以下に抑えられていることがわかる。
【0040】
また、ロボットの関節毎に振動モデルを定義する等の厳密な運動特性を用いると計算量が莫大となり実運用に好ましくなかったが、本実施形態のように単一の質量−バネモデルに簡略化することで実用性を保つ範囲内で計算量を低減している。また、一般的に障害物回避には莫大な計算を要するものであるが、本実施形態のように移動装置の可動範囲が矩形状であることに着目し、矩形状をなす位置情報を制約条件の一つとしているので、同様に実用性を保つ範囲内で計算量を低減している。軌道情報を生成するのに要する時間は、環境により種々変化するが、一例であるが、ある環境では従来に比べて数十〜数百分の1程度の時間に短縮することができた。
【0041】
図1の第二の軌道情報生成部23は、図1及び図4に示すように、搬入出部Lo2の入り口p2からその内部p3まで搬送対象物Wを直線移動させるための最適な第二の軌道情報132bを生成するものであり、その構成は、上記の第一の軌道情報生成部22と同様であるが、予めメモリに記憶されている動力学モデルと振動特性モデルと制約条件とを直線運動(X方向のみ変位する動き)に限定したものに変換している。その他、動力学モデル等を中心差分により離散化し最適な軌道を求める方法等は、上記の第一の軌道情報生成部22と同様である。
【0042】
第二の軌道情報132bを生成する際に使用する搬送機構131の動力学モデルは、図4(a)に示すように、矢印X方向のみにエンドエフェクタ(保持部136b)が移動しY方向及び姿勢が固定されていることに着目して、上記の第一の軌道情報生成部22の動力学モデルをマニピュレータのヤコビアンを用いて以下のようにエンドエフェクタ(保持部136b)に関するものに変換している。また、移動により生ずる振動を考慮するための振動特性モデルは、図8に示すようなX方向にのみ変位する仮想的な質量−バネモデルを適用しており、バネ定数Kは、上記の第一の軌道情報生成部22と同様に実験により計測したエンドエフェクタ(保持部136b)の固有振動数fに基づき算出している。
J=diag{Ji}, Ji>0
G=diag{Gi}, Gi>0
i=1,2,3
z=[x,y,φ]T
τ=[τ1,τ2,τ3]T
xaは、エンドエフェクタ(保持部136b)の変位を示す。
Maは、エンドエフェクタ(保持部136b)の質量を示す。
Jiは、第i関節のモータの慣性モーメントである。
Giは、第i関節を駆動するモータに取り付けられた減速器のギア比である。
τiは、第i関節のモータの駆動トルクである。
x,yは、エンドエフェクタ(保持部136b)の位置を示す。
φは、エンドエフェクタ(保持部136b)の姿勢を示す。
S1=sin(θ10)
S12=sin(θ10+θ20)
S123=sin(θ10+θ20+θ30)
C1=cos(θ10)
C12=cos(θ10+θ20)
C123=cos(θ10+θ20+θ30)
θ10,θ20,θ30は、それぞれ各関節の直線動作開始位置における角度であり、これらは定数として設定される。
【0043】
軌道情報を生成する際に用いる制約条件の一つである各リンク134・135・136を回転させるモータの駆動制約τiは、第一の軌道情報生成部22と同一であり、説明を省略する。
【0044】
第二の軌道情報生成部23では、図4(a)に示すように、搬送機構131が直線状に動作するため、エンドエフェクタ(保持部136b)のY方向の位置変化量及び姿勢変化量は常に0となる必要がある。そこで、下記の制約条件を課して、軌道の位置を直線状に制限している。
【0045】
受付手段21で受け付けられた始点及び終点の二つの位置情報は、XY座標で示される始点位置及び終点位置、並びに始点速度及び終点速度であり、これらを制約条件の一つとしている。なお、本実施形態では、終点速度を0として取り扱っている。
上記は、左から右へ順に始点位置、終点位置、始点速度、終点速度を表す。teは移動時間を表す。始点速度及び終点速度は、速度及び向きを有する速度ベクトルであるが、直線運動のみであるので、向きはX方向に固定されている。
【0046】
上記のモデル及び制約条件の下で、以下の式で示される評価関数の値が最小となるように軌道及び軌道上の速度に関する軌道情報を最適化により求める。
この評価関数は、振動特性モデルで算出される模擬振動の大きさ(x−xa)をパラメータの一つとし、移動時間teをパラメータの一つとして、これら2つのパラメータを少なくとも含む関数である。具体的には、上記の第一の軌道情報生成部22と同様に、模擬振動の大きさ(x−xa)に重み付け情報である重み付け係数αを乗じて移動時間teと結合したものである。なお、上記のモデル及び制約条件を中心差分法を用いて離散化する方法や、最適化手法、重み付け変更手段も上記第一の軌道情報生成部22と同様である。
【0047】
ここで、従来の最短時間のみを追求した軌道情報での移動制御と、本実施形態の振動抑制も考慮した軌道情報での移動制御との比較実験を行うために、上記重み付け係数αを0として最短時間のみを追求した軌道情報と、本実施形態に係る振動抑制も考慮した軌道情報とを生成し、それぞれの軌道情報を駆動指令に変換してロボットアームを駆動させ、移動によって発生する振動及びモータの駆動パルスを計測したところ、移動に要する時間にほとんど変化がなかったものの、図9に示すように、従来の最短時間のみを追求した軌道情報に比べて本実施形態の振動抑制も考慮した軌道情報は、モータの駆動パルスがより滑らかな波形になり、省電力化を追求するうえで好ましいとともに、振動の最大値が少なくとも約二割程度抑えられていることがわかる。なお、図中では、最短時間のみを追求した場合の振動の最大値を基準値1として示している。
【0048】
ところで、図1及び図4(a)に示すように、上記の第一の軌道情報132a及び第二の軌道情報132bを構成する各々の軌道Pt1,Pt2を連結可能とするためには、両軌道情報132a,132bのうち一方の軌道Pt1の終点E1の位置と他方の軌道Pt2の始点S2の位置とを一致させて結合点p2とするとともに、この結合点p2での速度ベクトル(速度及びその速度の向きを示すベクトル)が両軌道情報132a,132bで一致するようにしなければならない。この場合、両軌道情報132a,132bは、各々の軌道情報生成部22,23でそれぞれ独立して生成されるので、結合点p2での速度ベクトルを適切に決定したうえで、決定した速度ベクトルを制約条件の一つとして各々の軌道情報生成部22,23で各軌道情報132a,132bを生成することになる。なお、本実施形態では、軌道Pt2はX方向にのみ変位する制約があり、結合点p2での速度ベクトルの向きがX方向に限定されるので、以下では、速度ベクトルを単に速度ともいう。
【0049】
ところが、結合点p2での速度ベクトルが適切でなければ、結合した軌道Pt1,Pt2全体での移動時間が増大して移動効率を損なう場合がある。具体的には、結合点p2での速度を0、すなわち結合点p2で一旦停止するように両軌道情報132a,132bを生成した場合には、各々の軌道情報132a,132bは振動抑制を考慮しつつ最短時間となるように生成されるものの、結合点p2での失速により結合した軌道Pt1,Pt2全体での移動時間が増大してしまう場合がある。
【0050】
逆に、図12に示すように、結合点p2での速度を発揮可能な最大速度VMAXとなるように両軌道情報を生成した場合には、最大速度を得るために回り道して軌道が長くなり、結果、結合した軌道全体での移動時間が増大してしまう場合がある(図10参照)。これは、図4(a)に示すように、二つの軌道情報生成部22,23で生成される二つの軌道情報132a,132bのうち一方の軌道情報132aの軌道Pt1の始点S1から終点E1に向かう方向が、他方の軌道情報132bの軌道Pt2の始点S2から終点E2へ向かう方向に対して傾斜しており、結合点p2近傍で軌道を曲げる必要があることに起因すると考えられる。その他、結合点p2での速度を速くするほど軌道が迂回して長くなる制約条件が第一の軌道情報生成部22に課されていることに起因すると考えられる。
【0051】
そこで、本実施形態では、かかる不具合を解決すべく以下の構成を加えている。
【0052】
すなわち、図1、図4(a)及び図10に示すように、結合点で取り得る複数の速度V0〜VMAX(移動に要する合計時間が最小となる速度Vsを含む)のうち、結合点での速度を制約条件の一つとして各々の軌道情報生成部22,23で生成される各軌道情報132a,132bに基づく移動に要する合計時間が最小となる速度Vsを繰り返し演算により算出する速度算出部25を設け、この速度算出部25で算出した速度Vsを用いて各々の軌道情報生成部22,23で各軌道情報132a,132bを生成するように構成している。なお、V0は速度0を表し、VMAXはモータの駆動制約の下、結合点で発揮し得る最大速度を示す。Vsは求める解である。
【0053】
速度算出部25は、上記最適化処理部22a、23aと同様にCPUが図11に示す速度算出処理ルーチンを実行することによりソフトウェア及びハードウェアが協働して実現されるものである。第一及び第二の軌道情報は、図10に示すように、制約条件の一つである結合点での速度に応じてその移動に要する時間が変化するものであり、第一及び第二の軌道情報を構成する各々の軌道を結合した全体での移動時間が最小となる速度Vsが結合点で取り得る複数の速度V0〜VMAXの範囲内にあることに着目して、繰り返し計算により解となる速度Vsを算出するものである。
【0054】
この解となる速度Vsは、周知の二分法を用いた繰り返し演算で算出される。具体的には、図10及び図11に示すように、VL=0(V0),VU=VMAXとし(図11の処理S1)、速度VLを制約条件の一つとして第一及び第二の軌道情報を各軌道情報生成部22,23で生成し、生成した軌道情報から得られる合計移動時間をTLとする(処理S2)。続けて、速度VUを制約条件の一つとして第一及び第二の軌道情報を各軌道情報生成部22,23で生成し、生成した軌道情報から得られる合計移動時間をTUとする(処理S3)。次に、|TL−TU|<ε(εは十分小さい正数)が成立するか否か、すなわち解に収束したか否かを判定する(処理S4)。
【0055】
上記の処理S4において条件が成立せず解に収束していないと判定した場合(処理S4:NO)には、V=(VL+VU)/2とし(処理S5)、この速度Vを制約条件の一つとして第一及び第二の軌道情報を各軌道情報生成部22,23で生成し、生成した軌道情報から得られる合計移動時間をTとする(処理S6)。併せて、速度Vでの合計移動時間Tの傾きdT/dVを算出し(処理S7)、この合計時間Tの傾き(dT/dV)が正であるか否かを判定する(処理S8)。合計時間Tの傾き(dT/dV)が正であると判定した場合(処理S8:YES)には、VU=V,TU=Tとし(処理S9)、解に収束したかを判定する上記処S4に戻る。一方、合計時間Tの傾き(dT/dV)が正でないと判定した場合(処理S8:NO)には、VL=V,TL=Tとし(処理S10)、解に収束したかを判定する上記処S4に戻る。上記で図10に示す一つの処理が終了し、収束条件を満たすまで処理が繰り返し実行される。
【0056】
一方、上記の処理S4において条件が成立し解に収束したと判定した場合(処理S4:YES)には、合計時間Tの最小となる速度VSがVLであるとしてルーチンの実行を終了する(処理S11)。このように、結合点で取り得る複数の速度V0〜VMAX(解Vsを含む)のうち解Vsの存在する範囲を二分法による繰り返し演算により徐々に狭めながら、最終的に解Vsを得るものである。
【0057】
上記の構成の軌道情報生成装置を用いて結合点での最適な速度を算出し、この速度に基づき軌道情報を生成すると、図10に示すように、結合点での速度がV0(速度0)である場合やVMAX(速度最大)である場合に比べて全体での移動時間を著しく低減させることが可能となる。また、図12に示すように、結合点での速度がVMAX(速度最大)である場合のように大幅な回り道して軌道が長くなることがなく、適切な軌道情報を生成している。
【0058】
以上のように本実施形態に係る移動装置の軌道情報生成装置は、所望の始点S1(S2)から終点E1(E2)まで移動装置103を移動させるための軌道及び軌道上の速度に関する軌道情報132(132a,132b)を互いに異なる制約条件の下で生成する二つの軌道情報生成部22,23を有し、これら軌道情報生成部22,23で生成される二つの軌道情報132a,132bのうち一方の軌道Pt1の終点E1と他方の軌道Pt2の始点S2とを一致させて結合点p2とし、結合点p2を介して両軌道Pt1,Pt2を連結可能に各々の軌道情報132a,132bを生成する装置であって、双方の軌道情報生成部22,23は、制約条件に応じて移動に要する時間が変化する軌道情報132a,132bを生成するものであり、結合点p2で取り得る複数の速度V0〜VMAX(Vsを含む)のうち結合点p2における速度を制約条件の一つとして各々の軌道情報生成部22,23で生成される各軌道情報132a,132bに基づく移動に要する合計時間が最小となる速度Vsを繰り返し演算により算出する速度算出部25を設け、この速度算出部25で算出した速度Vsを用いて各々の軌道情報生成部22,23で軌道情報132a,132bを生成するように構成している。
【0059】
このように、結合点p2で取り得る複数の速度のうち、結合点p2での速度を制約条件の一つとして各々の軌道情報生成部22,23で生成される各軌道情報132a,132bに基づく移動に要する合計時間が最小となる速度Vsを繰り返し演算で算出し、算出した速度Vsを用いて二つの軌道情報132a,132bを生成するので、各々の軌道情報132a,132bは独立して生成されるものの、結合点p2での速度が双方の軌道情報で一致して軌道Pt1,Pt2同士の連結がスムーズになるうえ、結合した軌道全体での移動時間を最小にすることができ、移動効率を向上させることが可能となる。
【0060】
本実施形態では、少なくとも第一の軌道情報生成部22には、結合点p2での速度を速くするほど軌道が迂回して長くなる制約条件が課されており、結合点p2での速度を単純に速くするだけで結合軌道全体での移動時間を低減することができず、適切な速度を求めることが難しいものであるので、上記の速度算出部25を始めとする構成を適用することが好ましい。
【0061】
また、本実施形態では、二つの軌道情報生成部22,23で生成される二つの軌道情報132a,132bのうち一方の軌道情報132aを構成する軌道Pt1の始点S1から終点E1に向かう方向が、他方の軌道情報132bを構成する軌道Pt2の始点S2から終点E2へ向かう方向に対して傾斜しており、結合点p2近傍で軌道を曲げる必要があることから、結合点p2での速度を得るために軌道が迂回して長くなる場合があり、結合点p2での速度を単純に速くするだけで結合軌道全体での移動時間を低減することができず、適切な速度を求めることが難しいものであるので、上記の速度算出部25を始めとする構成を適用することが好ましい。
【0062】
特に、本実施形態では、速度算出部25は、二分法を用いた繰り返し演算で結合点p2での速度Vsを算出するので、簡易なアルゴリズムで複雑な演算を要することなく解となる速度を求めることが可能となる。
【0063】
さらに、本実施形態では、複数のリンク134・135・136を回転可能に直列接続した多関節ロボットを用いて搬送対象物Wを移動させる移動装置103を駆動させるための軌道情報132を生成する装置に適用されているので、一般的に多関節ロボットを用いて搬送対象物を移動させる移動装置を駆動させる軌道情報は複雑なものであるが、軌道を結合した全体で移動時間が最短となるように多関節ロボットに適した軌道及び軌道上の速度を選定して、移動効率を向上させることが可能となる。
【0064】
さらにまた、本実施形態では、二つの軌道情報生成部22,23のうち一方の軌道情報生成部22で用いる制約条件は、軌道Pt1の位置を矩形状の枠内に制限するものであり、他方の軌道情報生成部23で用いる制約条件は、軌道Pt2の位置を直線状に制限するものであるので、矩形状の通路ac内及びこの通路acに隣接配置されたロードポート等の搬入出部Lo内を移動する移動装置への適用に好適となる。
【0065】
加えて、本実施形態では、軌道情報生成部22,23は、移動に要する時間teをパラメータの一つとして評価関数に含めるとともに、予め設定された移動装置103の振動特性を用いて移動により生ずる模擬振動の大きさ(θ3−θa),(x−xa)を算出し、算出した模擬振動の大きさ(θ3−θa),(x−xa)をパラメータの一つとして評価関数に含め、少なくとも上記二つのパラメータである移動時間te及び模擬振動の大きさ(θ3−θa),(x−xa)を含む評価関数の値が最小となるように最適化手法を用いて軌道情報132a,132bを生成するので、振動抑制を考慮したうえで最短時間となる軌道情報を生成し、移動効率を向上させることが可能となる。
【0066】
さらに、本実施形態では、受付手段21を介して変更操作を受け付けて変更操作に応じて評価関数に対する模擬振動の大きさ(θ3−θa),(x−xa)と移動時間teとの重み付けを表す重み付け係数αを変更する重み付け変更手段24を有するので、変更操作を行うことで、評価関数に対する模擬振動(θ3−θa),(x−xa)と移動時間teとの重み付けを表す重み付け係数αを変更でき、移動時間低減を優先する設定が可能となる。しかも、ワンパラメータとなるので、パラメータ設定が取り扱いやすくなる。
【0067】
その他、上記軌道情報を生成するにあたり、以下のプログラムが有用である。
【0068】
所望の始点から終点まで移動装置を移動させるための軌道及び軌道上の速度に関する軌道情報を互いに異なる制約条件の下で生成する二つの軌道情報生成機能を有し、これら軌道情報生成機能で生成される二つの軌道情報のうち一方の軌道の終点と他方の軌道の始点とを一致させて結合点とし、結合点を介して両軌道を連結可能に各々の軌道情報を生成する機能をコンピュータに実現させるプログラムであって、双方の軌道情報生成機能は、制約条件に応じて移動に要する時間が変化する軌道情報を生成するものであり、結合点p2で取り得る複数の速度のうち結合点における速度を制約条件の一つとして各々の軌道情報生成機能で生成される各軌道情報を構成する軌道の移動に要する合計時間が最小となる速度を繰り返し演算により算出する速度算出機能を設け、この速度算出機能で算出した速度を用いて各々の軌道情報生成機能で軌道情報を生成する移動装置の軌道情報生成プログラム。
【0069】
以上、本発明の実施形態について図面に基づいて説明したが、具体的な構成は、これらの実施形態に限定されるものでないと考えられるべきである。本発明の範囲は、上記した実施形態の説明だけではなく特許請求の範囲によって示され、さらに特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれる。
【0070】
例えば、本実施形態では、ロボットアームの振動特性モデルを定義するにあたり、アーム先端部分に着目して単一の質量−バネモデルとしているが、アームの根元部分に着目してアーム全体を単一の質量−バネモデルとして定義してもよく、振動を考慮するモデルとして他のモデルを採用してもよい。
【0071】
また、本実施形態では、結合点p2での解となる速度Vsを、二分法を用いた繰り返し演算により算出しているが、その他の繰り返し演算で算出するように構成してもよい。さらに、第一及び第二の軌道情報生成部22,23は互いに異なる制約条件の下で軌道情報を生成するものであれば、上記に述べた制約条件や動力学モデルなどに限定されるものではない。
【0072】
その他、上記に述べた軌道情報生成は、複数のリンクを回転可能に直列接続したロボットアーム式の搬送機構131を用いて搬送対象物Wを移動する移動装置103に適用しているが、複数のリンクを並列接続したパラレルマニピュレータ等の搬送装置など、ロボットアーム式以外の移動装置にも適用可能である。さらには装置自体が移動する移動装置にも適用可能である。図1に示す各機能部は、所定プログラムをプロセッサで実行することにより実現しているが、各機能部を専用回路で構成してもよい。
【0073】
各部の具体的な構成は、上述した実施形態のみに限定されるものではなく、本発明の趣旨を逸脱しない範囲で種々変形が可能である。
【符号の説明】
【0074】
103…移動装置
131…搬送機構(多関節ロボット)
132、132a、132b…軌道情報
134・135・136…リンク
22、23…軌道情報生成部
24…重み付け変更手段
25…速度算出部
S1、S2…始点
E1、E2…終点
p2…結合点
Pt1、Pt2…軌道
V0、Vs、VMAX…速度
W…搬送対象物
te…移動時間
(θ3−θa)、(x−xa)…模擬振動の大きさ
【技術分野】
【0001】
本発明は、移動装置を移動させるための軌道及び軌道上の速度に関する軌道情報を生成する装置に係り、特に移動装置の適正な移動を実現する軌道情報を得る軌道情報生成装置に関する。
【背景技術】
【0002】
移動装置の一種である搬送装置は、特許文献1に例示されるように、ロボットアーム等の搬送機構を用いて搬送対象物を移動させる装置であり、予め設定された軌道及び軌道上の速度に関する軌道情報を用いて移動制御を行うのが一般的である。この移動制御に用いる軌道情報は、軌道情報生成装置によって移動制御の事前に予め生成される。軌道情報生成装置の多くは、特許文献2に例示されるように、ロボットアームの動力学モデルをもとに最適化手法を用いて所望の始点から終点までの移動時間が最短となる適切な軌道情報を生成するのが一般的である。
【0003】
ところで、軌道情報を生成するにあたり、所望の軌道に制約条件の異なる部位が混在する場合には、軌道情報の生成を簡素化するため、制約条件毎に軌道を分割し、分割した各々の軌道を他の軌道と独立して生成し、生成した複数の軌道を結合点で結合することが一般的になされる。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2003−145461号公報
【特許文献2】特開平7−200030号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、上記従来の軌道情報生成装置は、単一の軌道で移動時間が最短となるように軌道情報を生成するものの、複数の軌道を結合した全体での移動時間を考慮するものはない。一般的な具体例として、二つの軌道の結合点で移動速度を0、すなわち一旦停止する場合があり、この場合、結合点での失速により二つの軌道を結合した全体での移動時間が増大して移動効率を損なうこととなる。
【0006】
これに対して、結合点での速度を発揮可能な最大速度として二つの軌道を円滑に接続することも一つの有効な手段として考えられるが、軌道情報は結合点での速度に応じて移動に要する時間が変化するものであり、最大速度を得るために経路が回り道をする等、軌道全体での移動時間が増大して移動効率の低下を招く場合もある。
【0007】
本発明は、このような課題に着目してなされたものであって、その目的は、複数の軌道情報を独立して生成するにあたり、複数の軌道を結合した全体での移動時間が最短となるように各々の軌道情報を生成する新たな軌道情報生成装置を提供することである。
【課題を解決するための手段】
【0008】
本発明は、かかる目的を達成するために、次のような手段を講じたものである。
【0009】
すなわち、本発明の移動装置の軌道情報生成装置は、所望の始点から終点まで移動装置を移動させるための軌道及び軌道上の速度に関する軌道情報を互いに異なる制約条件の下で生成する二つの軌道情報生成部を有し、これら軌道情報生成部で生成される二つの軌道情報のうち一方の軌道の終点と他方の軌道の始点とを一致させて結合点とし、当該結合点を介して両軌道を連結可能に各々の軌道情報を生成する装置であって、双方の軌道情報生成部は、前記制約条件に応じて移動に要する時間が変化する軌道情報を生成するものであり、前記結合点で取り得る複数の速度のうち当該結合点における速度を制約条件の一つとして各々の軌道情報生成部で生成される各軌道情報に基づく移動に要する合計時間が最小となる速度を繰り返し演算により算出する速度算出部を設け、この速度算出部で算出した速度を用いて各々の軌道情報生成部で軌道情報を生成するように構成したことを特徴とする。
【0010】
ここでいう結合点での速度は、速度の大きさだけでなく向きを含むベクトルである。
【0011】
両軌道を連結可能に各々の軌道情報を生成するとは、両軌道のうち一方の軌道の終点と他方の軌道の始点とを一致させて結合点とするとともに、その結合点での速度(向きを含む)が両軌道情報で一致することを意味する。
【0012】
このように、結合点で取り得る複数の速度のうち、結合点での速度を制約条件の一つとして各々の軌道情報生成部で生成される各軌道情報に基づく移動に要する合計時間が最小となる速度を繰り返し演算で算出し、算出した速度を用いて二つの軌道情報を生成するので、各々の軌道情報は独立して生成されるものの、結合点での速度が双方の軌道情報で一致して軌道同士の連結がスムーズになるうえ、結合した軌道全体での移動時間を最小にすることができ、移動効率を向上させることが可能となる。
【0013】
本発明の好適な適用例としては、前記各々の軌道情報生成部の少なくとも一方には、結合点での速度を速くするほど軌道が迂回して長くなる制約条件が課されていることが挙げられる。
【0014】
本発明の好適な適用例としては、前記二つの軌道情報生成部で生成される二つの軌道情報のうち一方の軌道情報を構成する軌道の始点から終点に向かう方向が、他方の軌道情報を構成する軌道の始点から終点へ向かう方向に対して傾斜していることが挙げられる。
【0015】
複雑な演算を要することなく結合点での解となる速度を算出するためには、速度算出部は、二分法を用いた繰り返し演算で結合点での速度を算出することが好ましい。
【0016】
上記の軌道情報生成装置の好適な適用例としては、複数のリンクを回転可能に直列接続した多関節ロボットを用いて搬送対象物を移動させる移動装置を駆動させるための軌道情報を生成する装置に適用することが挙げられる。
【0017】
矩形状の通路内及びこの通路に隣接配置されたロードポート等の搬入出部内を移動する移動装置へ適用するためには、二つの軌道情報生成部のうち一方の軌道情報生成部で用いる制約条件は、軌道の位置を矩形状の枠内に制限するものであり、他方の軌道情報生成部で用いる制約条件は、軌道の位置を直線状に制限するものであることが望ましい。
【0018】
振動抑制を考慮したうえで最短時間となる軌道情報を生成し、移動効率を向上させるためには、軌道情報生成部の少なくとも一つは、移動に要する時間をパラメータの一つとして評価関数に含めるとともに、予め設定された移動装置の振動特性を用いて移動により生ずる模擬振動の大きさを算出し、算出した模擬振動の大きさをパラメータの一つとして評価関数に含め、少なくとも上記二つのパラメータを含む評価関数の値が最小となるように最適化手法を用いて軌道情報を生成することが効果的である。
【0019】
パラメータ設定が取り扱い易いとともに、移動時間低減を優先する設定を可能とするためには、受付手段を介して変更操作を受け付けて変更操作に応じて評価関数に対する模擬振動の大きさと移動時間との重み付けを表す重み付け係数を変更する重み付け変更手段を有することが好ましい。
【0020】
勿論、上記の軌道情報生成装置の構成をプログラムに対応させることも可能である。
【発明の効果】
【0021】
本発明は、以上説明したように、結合点で取り得る複数の速度のうち、結合点での速度を制約条件の一つとして各々の軌道情報生成部で生成される各軌道情報に基づく移動に要する合計時間が最小となる速度を繰り返し演算で算出し、算出した速度を用いて二つの軌道情報を生成するので、各々の軌道情報は独立して生成されるものの、結合点での速度が双方の軌道情報で一致して軌道同士の連結がスムーズになるうえ、結合した軌道全体での移動時間を最小にすることができ、移動効率を向上させることが可能となる。したがって、スループットを向上させる等、移動装置を高効率で駆動させることが可能となる。
【図面の簡単な説明】
【0022】
【図1】本発明の一実施形態に係る移動装置の軌道情報生成装置を模式的に示す構成図。
【図2】同移動装置の搬送機構を示す平面図。
【図3】第一の軌道情報を生成する際に用いる振動特性モデルを模試的に示す図。
【図4】同移動装置の移動領域を示す図。
【図5】生成される軌道情報に関する図。
【図6】本実施形態に係る装置および従来の装置によってそれぞれ生成された軌道を比較して示す図。
【図7】本実施形態に係る装置および従来の装置によってそれぞれ生成された軌道情報を用いて移動制御を行った結果を示す図。
【図8】第二の軌道情報を生成する際に用いる振動特性モデルを模試的に示す図。
【図9】第二の軌道情報を生成するにあたり、最短時間のみを追求した場合と最短時間に加えて振動抑制も考慮した場合との比較結果を示す図。
【図10】結合点での速度と、第一及び第二の軌道情報を結合した軌道全体での合計移動時間との関係を示す説明図。
【図11】速度算出部を実現する速度算出処理ルーチンを示すフローチャート。
【図12】結合点での速度に応じて生成される軌道を比較して示す図。
【発明を実施するための形態】
【0023】
以下、本発明の実施形態を、図面を参照して説明する。
【0024】
図1に示すようにロボットアーム等の搬送機構131を駆動することにより半導体ウエハー等の搬送対象物Wを移動させる移動装置103は、予めメモリに記憶されている軌道及び軌道上の速度に関する軌道情報132に基づいて搬送対象物Wの移動制御を行うものである。本実施形態に係る移動装置103は、図4に示す矩形状の通路ac内及びこの通路acに隣接配置された複数のロードポート等の搬入出部Lo内を搬送対象物Wの移動領域としている。
【0025】
本実施形態に係る移動装置の軌道情報生成装置2は、図1及び図4に示すように、移動装置103の移動制御に用いられる軌道情報132を生成する装置であり、受付手段21と、矩形状の通路ac内のうち搬入出部Loの入り口p1,p2同士の間を移動させるための第一の軌道情報132aを生成する第一の軌道情報生成部22と、搬入出部Loの入り口p2と内部p3との間を直線移動させるための第二の軌道情報132bを生成する第二の軌道情報生成部23とを有している。これら軌道情報生成部22,23は、移動させる領域が異なるので、互いに異なる制約条件の下で軌道情報を生成する。
【0026】
受付手段21は、図1に示すように、ディスプレイやキーボード、マウス等の既知の操作部を用いて、第一の軌道情報132a及び第二の軌道情報132bを生成するために必要な各々の軌道の始点や終点、制約条件となる位置情報等の各種情報の入力を受け付けるものである。勿論、受付手段をティーチングペンダント(教示装置)として構成したり、上位システムや支援ツールからの通信による設定を受け付けるようにしたりしてもよい。
【0027】
第一の軌道情報生成部22は、図1及び図4に示すように、矩形状の通路ac内のうち搬入出部Lo1(Lo)の入り口p1から他の搬入出部Lo2の入り口p2まで搬送対象物Wを移動させるための最適な第一の軌道情報132aを、受付手段21に受け付けられた情報に基づき生成する最適化処理部22aを有しており、この最適化処理部22aは、CPU、メモリ、各種インターフェイス等を備えたパソコン等の情報処理装置においてCPUが予め記憶されている図示しない軌道情報生成処理ルーチンを実行することによりソフトウェア及びハードウェアが協働して実現されるものである。
【0028】
この最適化処理部22aは、予めメモリに記憶されている動力学モデルと振動特性モデルと制約条件とに基づいて導き出せる軌道情報のうち、その移動時間及び移動に伴い生ずる振動が最小となる適切な軌道情報を最適化手法により生成するものである。
【0029】
以下、具体的に説明すると、駆動対象となる搬送機構131は、図2に示すように、複数のリンク134・135・136を回転可能に直列接続した、いわゆる多関節ロボットアームであり、ロボットアームの先端に設定された保持部136bに搬送対象物Wを載置した状態で各関節にある図示しないモータの駆動により各々のリンク間の角度θ1・θ2・θ3を変更して搬送対象物Wを所望の位置に移動させるものである。本実施形態の搬送機構131は、ベース133に基端134aが接続された第1のリンク134と、第1のリンク134の先端134bに基端135aが接続された第2のリンク135と、第2のリンク135の先端135bに基端136aが接続され先端に搬送対象物Wを載置するための保持部136bが設定された第3のリンク136とを備え、各リンク134〜136はそれぞれ水平方向に回転可能に接続されて三軸水平多関節ロボットを構成している。各リンク134〜136の長さはそれぞれL1、L2、L3に設定してある。
【0030】
この搬送機構131の動力学モデルは、各リンク134・135・136の質量分布がリンク先端での集中負荷であるとして簡略的に以下の式で表される。なお、iはリンクの番号を示し、例えば、i=1は第1のリンク134、i=2は第2のリンク135、i=3は第3のリンク136である。ここでは各リンクの質量分布がリンク先端での集中負荷であるとして式を構成しているが、勿論、各リンクの質量分布がリンクの重心周りにあるとして式を構成してもよい。
は加速度を表す。
Giは第i関節を駆動するモータに取り付けられた減速器のギア比である。
各関節のモータの駆動トルク:
各関節の負荷慣性モーメント:
Iiは第i関節を駆動するモータの慣性モーメント。
miは各リンクの質量。
なお、この動力学モデルに係る情報は、図1に示すように、予め第一の軌道情報生成部22のメモリに記憶されているが、受付手段21を通じて設定可能に構成してもよい。
【0031】
移動により生ずる振動を考慮するための振動特性モデルは、図3に示すような質量−バネモデルが適用されており、以下の式で表される。
Jm、Jaはそれぞれ第3のリンク136のモータの慣性モーメント、エンドエフェクタ(保持部136b)の先端に集中質量があるとした場合の慣性モーメントである。バネ定数Kは、実験により計測した固有振動数f及び下記の式を用いて算出する。
なお、この振動特性モデルに係る情報は、図1に示すように、予め第一の軌道情報生成部22のメモリに記憶されているが、受付手段21を通じて設定可能に構成してもよい。
【0032】
軌道情報の制約条件の一つとして、各リンク134・135・136を回転させるモータの駆動制約が図1に示すメモリに予め設定されている。このモータの駆動制約はモータが出力可能な最大トルクを用いており、以下の式で示される。τliは逆回転(θiが負の方向に駆動しようと)する場合の最大トルクであり、τuiは正回転(θiが正の方向に駆動しようと)する場合の最大トルクを示す。勿論、速度や加速度で表現されるものであってもよい。
【0033】
また、搬送機構131が図4に示す矩形状の通路ac内を可動領域として動作するものであるので、以下の式で示される矩形状をなす位置情報を軌道の位置の制約条件の一つとして、軌道の位置を矩形状の枠内に制限している。
(xi,yi)は図4(b)に示すように各関節の位置を示し、搬送対象物Wの中心位置(x3,y3)は、搬送対象物Wが可動範囲から外れないように半径r分狭くしている。
なお、この可動領域としての制約条件に係る情報は、図1に示すように、予め第一の軌道情報生成部22のメモリに記憶されているが、受付手段21を通じて設定可能に構成している。
【0034】
受付手段21で受け付けられた始点及び終点の二つの位置情報は、XY座標で示される始点位置及び終点位置、並びに始点速度及び終点速度であるが、搬送対象物Wの移動は、各リンク134〜136の角度θ1・θ2・θ3を変化させることにより行うので、始点及び終点に関する情報を以下の式で示すように角度情報に変換し、これを制約条件の一つとしている。なお、本実施形態では、始点速度を0として取り扱っている。
は関節角速度ベクトル、teは移動時間を表す。θs,θeは始点及び終点位置の情報を関節角度の情報(関節角度ベクトル)に変換したものである。
【0035】
上記のモデル及び制約条件の下で、以下の式で示される評価関数の値が最小となるように軌道及び軌道上の速度に関する軌道情報を最適化により求める。
この評価関数は、振動特性モデルで算出される模擬振動の大きさ(θ3−θa)をパラメータの一つとし、移動時間teをパラメータの一つとして、これら2つのパラメータを少なくとも含む関数である。具体的には、模擬振動の大きさ(θ3−θa)に重み付け情報である重み付け係数αを乗じて移動時間teと結合したものである。なお、最適化手法については一般的な手法を用いているので、ここでは説明を省略する。また、図1に示すように、この重み付け係数αを、受付手段21になされる変更操作に応じて変更する重み付け変更手段24が設けられており、重み付け係数αを変更することで振動抑制又は最短時間短縮のいずれかを優先するかを変更することが可能となる。本実施形態では、模擬振動の大きさ(θ3−θa)が負の値を含むため、これを二乗して正の値にしているが、(θ3−θa)の絶対値を取る式にしてもよい。
【0036】
ここで、上記の最適化問題を解くにあたり演算時間を低減するために離散化を考え、これに伴い軌道情報132も離散化して生成している。具体的には、軌道情報132は、図5に模式的に示すように、移動軌道Ptを、時間間隔Tで(N−1)等分し、始点S及び終点Eを含む複数の点P1〜Nで表現する離散データであり、各々の点Pkのxy座標(xk,yk)を、以下の式を用いて各リンク134〜136の角度θ1k・θ2k・θ3kで表現している。
xk=L1cosθ1k+L2cos(θ1k+θ2k)+L3cos(θ1k+θ2k+θ3k)
yk=L1sinθ1k+L2sin(θ1k+θ2k)+L3sin(θ1k+θ2k+θ3k)
【0037】
そして、上記で述べたモデル及び制約条件を中心差分法を用いて離散化すると以下の式で表される。なお、以下では、k時点目の点Pkの角度θikをθi[k]と略記する。
振動を考慮したモデル:
モータの駆動制約:
τi[k]は、k時点目の第i関節の駆動トルクを表す。
軌道の位置の制約条件:
xi[k],yi[k]は、k時点目の位置xi,yiを表す。
始点及び終点の制約条件:
評価関数:
【0038】
上記のモデル及び制約条件を用いて軌道情報132を生成するにあたり、具体的には、初期値として始点Sから終点Eまで直線で結んだ軌道情報を生成し、この初期軌道をもとに上記モデル及び制約条件に基づいて既知の逐次二次計画法を用いた最適化計算を行い、リンク角度θi[k]及び時間間隔Tを求める。
【0039】
ここで、従来の最短時間のみを追求した軌道情報での移動制御と、本実施形態の振動抑制も考慮した軌道情報での移動制御との比較実験を行うために、上記重み付け係数αを0として最短時間のみを追求した図6に示す軌道Pt’と、本実施形態の振動抑制を考慮した図6に示す軌道Ptとを生成し、それぞれの軌道情報を駆動指令に変換してロボットアームを駆動させ、移動によって発生する振動を計測したところ、図7に示すように、移動に要する時間にほとんど変化がなかったものの、従来の最短時間のみを追求した軌道情報に比べて本実施形態の振動抑制も考慮した軌道情報は発生する振動が少なくとも半分以下に抑えられていることがわかる。
【0040】
また、ロボットの関節毎に振動モデルを定義する等の厳密な運動特性を用いると計算量が莫大となり実運用に好ましくなかったが、本実施形態のように単一の質量−バネモデルに簡略化することで実用性を保つ範囲内で計算量を低減している。また、一般的に障害物回避には莫大な計算を要するものであるが、本実施形態のように移動装置の可動範囲が矩形状であることに着目し、矩形状をなす位置情報を制約条件の一つとしているので、同様に実用性を保つ範囲内で計算量を低減している。軌道情報を生成するのに要する時間は、環境により種々変化するが、一例であるが、ある環境では従来に比べて数十〜数百分の1程度の時間に短縮することができた。
【0041】
図1の第二の軌道情報生成部23は、図1及び図4に示すように、搬入出部Lo2の入り口p2からその内部p3まで搬送対象物Wを直線移動させるための最適な第二の軌道情報132bを生成するものであり、その構成は、上記の第一の軌道情報生成部22と同様であるが、予めメモリに記憶されている動力学モデルと振動特性モデルと制約条件とを直線運動(X方向のみ変位する動き)に限定したものに変換している。その他、動力学モデル等を中心差分により離散化し最適な軌道を求める方法等は、上記の第一の軌道情報生成部22と同様である。
【0042】
第二の軌道情報132bを生成する際に使用する搬送機構131の動力学モデルは、図4(a)に示すように、矢印X方向のみにエンドエフェクタ(保持部136b)が移動しY方向及び姿勢が固定されていることに着目して、上記の第一の軌道情報生成部22の動力学モデルをマニピュレータのヤコビアンを用いて以下のようにエンドエフェクタ(保持部136b)に関するものに変換している。また、移動により生ずる振動を考慮するための振動特性モデルは、図8に示すようなX方向にのみ変位する仮想的な質量−バネモデルを適用しており、バネ定数Kは、上記の第一の軌道情報生成部22と同様に実験により計測したエンドエフェクタ(保持部136b)の固有振動数fに基づき算出している。
J=diag{Ji}, Ji>0
G=diag{Gi}, Gi>0
i=1,2,3
z=[x,y,φ]T
τ=[τ1,τ2,τ3]T
xaは、エンドエフェクタ(保持部136b)の変位を示す。
Maは、エンドエフェクタ(保持部136b)の質量を示す。
Jiは、第i関節のモータの慣性モーメントである。
Giは、第i関節を駆動するモータに取り付けられた減速器のギア比である。
τiは、第i関節のモータの駆動トルクである。
x,yは、エンドエフェクタ(保持部136b)の位置を示す。
φは、エンドエフェクタ(保持部136b)の姿勢を示す。
S1=sin(θ10)
S12=sin(θ10+θ20)
S123=sin(θ10+θ20+θ30)
C1=cos(θ10)
C12=cos(θ10+θ20)
C123=cos(θ10+θ20+θ30)
θ10,θ20,θ30は、それぞれ各関節の直線動作開始位置における角度であり、これらは定数として設定される。
【0043】
軌道情報を生成する際に用いる制約条件の一つである各リンク134・135・136を回転させるモータの駆動制約τiは、第一の軌道情報生成部22と同一であり、説明を省略する。
【0044】
第二の軌道情報生成部23では、図4(a)に示すように、搬送機構131が直線状に動作するため、エンドエフェクタ(保持部136b)のY方向の位置変化量及び姿勢変化量は常に0となる必要がある。そこで、下記の制約条件を課して、軌道の位置を直線状に制限している。
【0045】
受付手段21で受け付けられた始点及び終点の二つの位置情報は、XY座標で示される始点位置及び終点位置、並びに始点速度及び終点速度であり、これらを制約条件の一つとしている。なお、本実施形態では、終点速度を0として取り扱っている。
上記は、左から右へ順に始点位置、終点位置、始点速度、終点速度を表す。teは移動時間を表す。始点速度及び終点速度は、速度及び向きを有する速度ベクトルであるが、直線運動のみであるので、向きはX方向に固定されている。
【0046】
上記のモデル及び制約条件の下で、以下の式で示される評価関数の値が最小となるように軌道及び軌道上の速度に関する軌道情報を最適化により求める。
この評価関数は、振動特性モデルで算出される模擬振動の大きさ(x−xa)をパラメータの一つとし、移動時間teをパラメータの一つとして、これら2つのパラメータを少なくとも含む関数である。具体的には、上記の第一の軌道情報生成部22と同様に、模擬振動の大きさ(x−xa)に重み付け情報である重み付け係数αを乗じて移動時間teと結合したものである。なお、上記のモデル及び制約条件を中心差分法を用いて離散化する方法や、最適化手法、重み付け変更手段も上記第一の軌道情報生成部22と同様である。
【0047】
ここで、従来の最短時間のみを追求した軌道情報での移動制御と、本実施形態の振動抑制も考慮した軌道情報での移動制御との比較実験を行うために、上記重み付け係数αを0として最短時間のみを追求した軌道情報と、本実施形態に係る振動抑制も考慮した軌道情報とを生成し、それぞれの軌道情報を駆動指令に変換してロボットアームを駆動させ、移動によって発生する振動及びモータの駆動パルスを計測したところ、移動に要する時間にほとんど変化がなかったものの、図9に示すように、従来の最短時間のみを追求した軌道情報に比べて本実施形態の振動抑制も考慮した軌道情報は、モータの駆動パルスがより滑らかな波形になり、省電力化を追求するうえで好ましいとともに、振動の最大値が少なくとも約二割程度抑えられていることがわかる。なお、図中では、最短時間のみを追求した場合の振動の最大値を基準値1として示している。
【0048】
ところで、図1及び図4(a)に示すように、上記の第一の軌道情報132a及び第二の軌道情報132bを構成する各々の軌道Pt1,Pt2を連結可能とするためには、両軌道情報132a,132bのうち一方の軌道Pt1の終点E1の位置と他方の軌道Pt2の始点S2の位置とを一致させて結合点p2とするとともに、この結合点p2での速度ベクトル(速度及びその速度の向きを示すベクトル)が両軌道情報132a,132bで一致するようにしなければならない。この場合、両軌道情報132a,132bは、各々の軌道情報生成部22,23でそれぞれ独立して生成されるので、結合点p2での速度ベクトルを適切に決定したうえで、決定した速度ベクトルを制約条件の一つとして各々の軌道情報生成部22,23で各軌道情報132a,132bを生成することになる。なお、本実施形態では、軌道Pt2はX方向にのみ変位する制約があり、結合点p2での速度ベクトルの向きがX方向に限定されるので、以下では、速度ベクトルを単に速度ともいう。
【0049】
ところが、結合点p2での速度ベクトルが適切でなければ、結合した軌道Pt1,Pt2全体での移動時間が増大して移動効率を損なう場合がある。具体的には、結合点p2での速度を0、すなわち結合点p2で一旦停止するように両軌道情報132a,132bを生成した場合には、各々の軌道情報132a,132bは振動抑制を考慮しつつ最短時間となるように生成されるものの、結合点p2での失速により結合した軌道Pt1,Pt2全体での移動時間が増大してしまう場合がある。
【0050】
逆に、図12に示すように、結合点p2での速度を発揮可能な最大速度VMAXとなるように両軌道情報を生成した場合には、最大速度を得るために回り道して軌道が長くなり、結果、結合した軌道全体での移動時間が増大してしまう場合がある(図10参照)。これは、図4(a)に示すように、二つの軌道情報生成部22,23で生成される二つの軌道情報132a,132bのうち一方の軌道情報132aの軌道Pt1の始点S1から終点E1に向かう方向が、他方の軌道情報132bの軌道Pt2の始点S2から終点E2へ向かう方向に対して傾斜しており、結合点p2近傍で軌道を曲げる必要があることに起因すると考えられる。その他、結合点p2での速度を速くするほど軌道が迂回して長くなる制約条件が第一の軌道情報生成部22に課されていることに起因すると考えられる。
【0051】
そこで、本実施形態では、かかる不具合を解決すべく以下の構成を加えている。
【0052】
すなわち、図1、図4(a)及び図10に示すように、結合点で取り得る複数の速度V0〜VMAX(移動に要する合計時間が最小となる速度Vsを含む)のうち、結合点での速度を制約条件の一つとして各々の軌道情報生成部22,23で生成される各軌道情報132a,132bに基づく移動に要する合計時間が最小となる速度Vsを繰り返し演算により算出する速度算出部25を設け、この速度算出部25で算出した速度Vsを用いて各々の軌道情報生成部22,23で各軌道情報132a,132bを生成するように構成している。なお、V0は速度0を表し、VMAXはモータの駆動制約の下、結合点で発揮し得る最大速度を示す。Vsは求める解である。
【0053】
速度算出部25は、上記最適化処理部22a、23aと同様にCPUが図11に示す速度算出処理ルーチンを実行することによりソフトウェア及びハードウェアが協働して実現されるものである。第一及び第二の軌道情報は、図10に示すように、制約条件の一つである結合点での速度に応じてその移動に要する時間が変化するものであり、第一及び第二の軌道情報を構成する各々の軌道を結合した全体での移動時間が最小となる速度Vsが結合点で取り得る複数の速度V0〜VMAXの範囲内にあることに着目して、繰り返し計算により解となる速度Vsを算出するものである。
【0054】
この解となる速度Vsは、周知の二分法を用いた繰り返し演算で算出される。具体的には、図10及び図11に示すように、VL=0(V0),VU=VMAXとし(図11の処理S1)、速度VLを制約条件の一つとして第一及び第二の軌道情報を各軌道情報生成部22,23で生成し、生成した軌道情報から得られる合計移動時間をTLとする(処理S2)。続けて、速度VUを制約条件の一つとして第一及び第二の軌道情報を各軌道情報生成部22,23で生成し、生成した軌道情報から得られる合計移動時間をTUとする(処理S3)。次に、|TL−TU|<ε(εは十分小さい正数)が成立するか否か、すなわち解に収束したか否かを判定する(処理S4)。
【0055】
上記の処理S4において条件が成立せず解に収束していないと判定した場合(処理S4:NO)には、V=(VL+VU)/2とし(処理S5)、この速度Vを制約条件の一つとして第一及び第二の軌道情報を各軌道情報生成部22,23で生成し、生成した軌道情報から得られる合計移動時間をTとする(処理S6)。併せて、速度Vでの合計移動時間Tの傾きdT/dVを算出し(処理S7)、この合計時間Tの傾き(dT/dV)が正であるか否かを判定する(処理S8)。合計時間Tの傾き(dT/dV)が正であると判定した場合(処理S8:YES)には、VU=V,TU=Tとし(処理S9)、解に収束したかを判定する上記処S4に戻る。一方、合計時間Tの傾き(dT/dV)が正でないと判定した場合(処理S8:NO)には、VL=V,TL=Tとし(処理S10)、解に収束したかを判定する上記処S4に戻る。上記で図10に示す一つの処理が終了し、収束条件を満たすまで処理が繰り返し実行される。
【0056】
一方、上記の処理S4において条件が成立し解に収束したと判定した場合(処理S4:YES)には、合計時間Tの最小となる速度VSがVLであるとしてルーチンの実行を終了する(処理S11)。このように、結合点で取り得る複数の速度V0〜VMAX(解Vsを含む)のうち解Vsの存在する範囲を二分法による繰り返し演算により徐々に狭めながら、最終的に解Vsを得るものである。
【0057】
上記の構成の軌道情報生成装置を用いて結合点での最適な速度を算出し、この速度に基づき軌道情報を生成すると、図10に示すように、結合点での速度がV0(速度0)である場合やVMAX(速度最大)である場合に比べて全体での移動時間を著しく低減させることが可能となる。また、図12に示すように、結合点での速度がVMAX(速度最大)である場合のように大幅な回り道して軌道が長くなることがなく、適切な軌道情報を生成している。
【0058】
以上のように本実施形態に係る移動装置の軌道情報生成装置は、所望の始点S1(S2)から終点E1(E2)まで移動装置103を移動させるための軌道及び軌道上の速度に関する軌道情報132(132a,132b)を互いに異なる制約条件の下で生成する二つの軌道情報生成部22,23を有し、これら軌道情報生成部22,23で生成される二つの軌道情報132a,132bのうち一方の軌道Pt1の終点E1と他方の軌道Pt2の始点S2とを一致させて結合点p2とし、結合点p2を介して両軌道Pt1,Pt2を連結可能に各々の軌道情報132a,132bを生成する装置であって、双方の軌道情報生成部22,23は、制約条件に応じて移動に要する時間が変化する軌道情報132a,132bを生成するものであり、結合点p2で取り得る複数の速度V0〜VMAX(Vsを含む)のうち結合点p2における速度を制約条件の一つとして各々の軌道情報生成部22,23で生成される各軌道情報132a,132bに基づく移動に要する合計時間が最小となる速度Vsを繰り返し演算により算出する速度算出部25を設け、この速度算出部25で算出した速度Vsを用いて各々の軌道情報生成部22,23で軌道情報132a,132bを生成するように構成している。
【0059】
このように、結合点p2で取り得る複数の速度のうち、結合点p2での速度を制約条件の一つとして各々の軌道情報生成部22,23で生成される各軌道情報132a,132bに基づく移動に要する合計時間が最小となる速度Vsを繰り返し演算で算出し、算出した速度Vsを用いて二つの軌道情報132a,132bを生成するので、各々の軌道情報132a,132bは独立して生成されるものの、結合点p2での速度が双方の軌道情報で一致して軌道Pt1,Pt2同士の連結がスムーズになるうえ、結合した軌道全体での移動時間を最小にすることができ、移動効率を向上させることが可能となる。
【0060】
本実施形態では、少なくとも第一の軌道情報生成部22には、結合点p2での速度を速くするほど軌道が迂回して長くなる制約条件が課されており、結合点p2での速度を単純に速くするだけで結合軌道全体での移動時間を低減することができず、適切な速度を求めることが難しいものであるので、上記の速度算出部25を始めとする構成を適用することが好ましい。
【0061】
また、本実施形態では、二つの軌道情報生成部22,23で生成される二つの軌道情報132a,132bのうち一方の軌道情報132aを構成する軌道Pt1の始点S1から終点E1に向かう方向が、他方の軌道情報132bを構成する軌道Pt2の始点S2から終点E2へ向かう方向に対して傾斜しており、結合点p2近傍で軌道を曲げる必要があることから、結合点p2での速度を得るために軌道が迂回して長くなる場合があり、結合点p2での速度を単純に速くするだけで結合軌道全体での移動時間を低減することができず、適切な速度を求めることが難しいものであるので、上記の速度算出部25を始めとする構成を適用することが好ましい。
【0062】
特に、本実施形態では、速度算出部25は、二分法を用いた繰り返し演算で結合点p2での速度Vsを算出するので、簡易なアルゴリズムで複雑な演算を要することなく解となる速度を求めることが可能となる。
【0063】
さらに、本実施形態では、複数のリンク134・135・136を回転可能に直列接続した多関節ロボットを用いて搬送対象物Wを移動させる移動装置103を駆動させるための軌道情報132を生成する装置に適用されているので、一般的に多関節ロボットを用いて搬送対象物を移動させる移動装置を駆動させる軌道情報は複雑なものであるが、軌道を結合した全体で移動時間が最短となるように多関節ロボットに適した軌道及び軌道上の速度を選定して、移動効率を向上させることが可能となる。
【0064】
さらにまた、本実施形態では、二つの軌道情報生成部22,23のうち一方の軌道情報生成部22で用いる制約条件は、軌道Pt1の位置を矩形状の枠内に制限するものであり、他方の軌道情報生成部23で用いる制約条件は、軌道Pt2の位置を直線状に制限するものであるので、矩形状の通路ac内及びこの通路acに隣接配置されたロードポート等の搬入出部Lo内を移動する移動装置への適用に好適となる。
【0065】
加えて、本実施形態では、軌道情報生成部22,23は、移動に要する時間teをパラメータの一つとして評価関数に含めるとともに、予め設定された移動装置103の振動特性を用いて移動により生ずる模擬振動の大きさ(θ3−θa),(x−xa)を算出し、算出した模擬振動の大きさ(θ3−θa),(x−xa)をパラメータの一つとして評価関数に含め、少なくとも上記二つのパラメータである移動時間te及び模擬振動の大きさ(θ3−θa),(x−xa)を含む評価関数の値が最小となるように最適化手法を用いて軌道情報132a,132bを生成するので、振動抑制を考慮したうえで最短時間となる軌道情報を生成し、移動効率を向上させることが可能となる。
【0066】
さらに、本実施形態では、受付手段21を介して変更操作を受け付けて変更操作に応じて評価関数に対する模擬振動の大きさ(θ3−θa),(x−xa)と移動時間teとの重み付けを表す重み付け係数αを変更する重み付け変更手段24を有するので、変更操作を行うことで、評価関数に対する模擬振動(θ3−θa),(x−xa)と移動時間teとの重み付けを表す重み付け係数αを変更でき、移動時間低減を優先する設定が可能となる。しかも、ワンパラメータとなるので、パラメータ設定が取り扱いやすくなる。
【0067】
その他、上記軌道情報を生成するにあたり、以下のプログラムが有用である。
【0068】
所望の始点から終点まで移動装置を移動させるための軌道及び軌道上の速度に関する軌道情報を互いに異なる制約条件の下で生成する二つの軌道情報生成機能を有し、これら軌道情報生成機能で生成される二つの軌道情報のうち一方の軌道の終点と他方の軌道の始点とを一致させて結合点とし、結合点を介して両軌道を連結可能に各々の軌道情報を生成する機能をコンピュータに実現させるプログラムであって、双方の軌道情報生成機能は、制約条件に応じて移動に要する時間が変化する軌道情報を生成するものであり、結合点p2で取り得る複数の速度のうち結合点における速度を制約条件の一つとして各々の軌道情報生成機能で生成される各軌道情報を構成する軌道の移動に要する合計時間が最小となる速度を繰り返し演算により算出する速度算出機能を設け、この速度算出機能で算出した速度を用いて各々の軌道情報生成機能で軌道情報を生成する移動装置の軌道情報生成プログラム。
【0069】
以上、本発明の実施形態について図面に基づいて説明したが、具体的な構成は、これらの実施形態に限定されるものでないと考えられるべきである。本発明の範囲は、上記した実施形態の説明だけではなく特許請求の範囲によって示され、さらに特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれる。
【0070】
例えば、本実施形態では、ロボットアームの振動特性モデルを定義するにあたり、アーム先端部分に着目して単一の質量−バネモデルとしているが、アームの根元部分に着目してアーム全体を単一の質量−バネモデルとして定義してもよく、振動を考慮するモデルとして他のモデルを採用してもよい。
【0071】
また、本実施形態では、結合点p2での解となる速度Vsを、二分法を用いた繰り返し演算により算出しているが、その他の繰り返し演算で算出するように構成してもよい。さらに、第一及び第二の軌道情報生成部22,23は互いに異なる制約条件の下で軌道情報を生成するものであれば、上記に述べた制約条件や動力学モデルなどに限定されるものではない。
【0072】
その他、上記に述べた軌道情報生成は、複数のリンクを回転可能に直列接続したロボットアーム式の搬送機構131を用いて搬送対象物Wを移動する移動装置103に適用しているが、複数のリンクを並列接続したパラレルマニピュレータ等の搬送装置など、ロボットアーム式以外の移動装置にも適用可能である。さらには装置自体が移動する移動装置にも適用可能である。図1に示す各機能部は、所定プログラムをプロセッサで実行することにより実現しているが、各機能部を専用回路で構成してもよい。
【0073】
各部の具体的な構成は、上述した実施形態のみに限定されるものではなく、本発明の趣旨を逸脱しない範囲で種々変形が可能である。
【符号の説明】
【0074】
103…移動装置
131…搬送機構(多関節ロボット)
132、132a、132b…軌道情報
134・135・136…リンク
22、23…軌道情報生成部
24…重み付け変更手段
25…速度算出部
S1、S2…始点
E1、E2…終点
p2…結合点
Pt1、Pt2…軌道
V0、Vs、VMAX…速度
W…搬送対象物
te…移動時間
(θ3−θa)、(x−xa)…模擬振動の大きさ
【特許請求の範囲】
【請求項1】
所望の始点から終点まで移動装置を移動させるための軌道及び軌道上の速度に関する軌道情報を互いに異なる制約条件の下で生成する二つの軌道情報生成部を有し、これら軌道情報生成部で生成される二つの軌道情報のうち一方の軌道の終点と他方の軌道の始点とを一致させて結合点とし、当該結合点を介して両軌道を連結可能に各々の軌道情報を生成する装置であって、
双方の軌道情報生成部は、前記制約条件に応じて移動に要する時間が変化する軌道情報を生成するものであり、
前記結合点で取り得る複数の速度のうち当該結合点における速度を制約条件の一つとして各々の軌道情報生成部で生成される各軌道情報に基づく移動に要する合計時間が最小となる速度を繰り返し演算により算出する速度算出部を設け、
この速度算出部で算出した速度を用いて各々の軌道情報生成部で軌道情報を生成するように構成したことを特徴とする移動装置の軌道情報生成装置。
【請求項2】
前記各々の軌道情報生成部の少なくとも一方には、結合点での速度を速くするほど軌道が迂回して長くなる制約条件が課されている請求項1に記載の移動装置の軌道情報生成装置。
【請求項3】
前記二つの軌道情報生成部で生成される二つの軌道情報のうち一方の軌道情報を構成する軌道の始点から終点に向かう方向が、他方の軌道情報を構成する軌道の始点から終点へ向かう方向に対して傾斜している請求項1又は2に記載の移動装置の軌道情報生成装置。
【請求項4】
前記速度算出部は、二分法を用いた繰り返し演算で前記結合点での速度を算出する請求項1〜3のいずれかに記載の移動装置の軌道情報生成装置。
【請求項5】
複数のリンクを回転可能に直列接続した多関節ロボットを用いて搬送対象物を移動させる移動装置を駆動させるための軌道情報を生成する装置に適用されている請求項1〜4のいずれかに記載の移動装置の軌道情報生成装置。
【請求項6】
二つの軌道情報生成部のうち一方の軌道情報生成部で用いる制約条件は、軌道の位置を矩形状の枠内に制限するものであり、他方の軌道情報生成部で用いる制約条件は、軌道の位置を直線状に制限するものである請求項1〜5のいずれかに記載の移動装置の軌道情報生成装置。
【請求項7】
前記軌道情報生成部の少なくとも一つは、移動に要する時間をパラメータの一つとして評価関数に含めるとともに、予め設定された移動装置の振動特性を用いて移動により生ずる模擬振動の大きさを算出し、算出した模擬振動の大きさをパラメータの一つとして前記評価関数に含め、少なくとも上記二つのパラメータを含む前記評価関数の値が最小となるように最適化手法を用いて前記軌道情報を生成する請求項1〜6のいずれかに記載の移動装置の軌道情報生成装置。
【請求項8】
変更操作を受け付けて当該変更操作に応じて前記評価関数に対する模擬振動の大きさと移動時間との重み付けを変更する重み付け変更手段を有する請求項7に記載の移動装置の軌道情報生成装置。
【請求項1】
所望の始点から終点まで移動装置を移動させるための軌道及び軌道上の速度に関する軌道情報を互いに異なる制約条件の下で生成する二つの軌道情報生成部を有し、これら軌道情報生成部で生成される二つの軌道情報のうち一方の軌道の終点と他方の軌道の始点とを一致させて結合点とし、当該結合点を介して両軌道を連結可能に各々の軌道情報を生成する装置であって、
双方の軌道情報生成部は、前記制約条件に応じて移動に要する時間が変化する軌道情報を生成するものであり、
前記結合点で取り得る複数の速度のうち当該結合点における速度を制約条件の一つとして各々の軌道情報生成部で生成される各軌道情報に基づく移動に要する合計時間が最小となる速度を繰り返し演算により算出する速度算出部を設け、
この速度算出部で算出した速度を用いて各々の軌道情報生成部で軌道情報を生成するように構成したことを特徴とする移動装置の軌道情報生成装置。
【請求項2】
前記各々の軌道情報生成部の少なくとも一方には、結合点での速度を速くするほど軌道が迂回して長くなる制約条件が課されている請求項1に記載の移動装置の軌道情報生成装置。
【請求項3】
前記二つの軌道情報生成部で生成される二つの軌道情報のうち一方の軌道情報を構成する軌道の始点から終点に向かう方向が、他方の軌道情報を構成する軌道の始点から終点へ向かう方向に対して傾斜している請求項1又は2に記載の移動装置の軌道情報生成装置。
【請求項4】
前記速度算出部は、二分法を用いた繰り返し演算で前記結合点での速度を算出する請求項1〜3のいずれかに記載の移動装置の軌道情報生成装置。
【請求項5】
複数のリンクを回転可能に直列接続した多関節ロボットを用いて搬送対象物を移動させる移動装置を駆動させるための軌道情報を生成する装置に適用されている請求項1〜4のいずれかに記載の移動装置の軌道情報生成装置。
【請求項6】
二つの軌道情報生成部のうち一方の軌道情報生成部で用いる制約条件は、軌道の位置を矩形状の枠内に制限するものであり、他方の軌道情報生成部で用いる制約条件は、軌道の位置を直線状に制限するものである請求項1〜5のいずれかに記載の移動装置の軌道情報生成装置。
【請求項7】
前記軌道情報生成部の少なくとも一つは、移動に要する時間をパラメータの一つとして評価関数に含めるとともに、予め設定された移動装置の振動特性を用いて移動により生ずる模擬振動の大きさを算出し、算出した模擬振動の大きさをパラメータの一つとして前記評価関数に含め、少なくとも上記二つのパラメータを含む前記評価関数の値が最小となるように最適化手法を用いて前記軌道情報を生成する請求項1〜6のいずれかに記載の移動装置の軌道情報生成装置。
【請求項8】
変更操作を受け付けて当該変更操作に応じて前記評価関数に対する模擬振動の大きさと移動時間との重み付けを変更する重み付け変更手段を有する請求項7に記載の移動装置の軌道情報生成装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【公開番号】特開2012−45641(P2012−45641A)
【公開日】平成24年3月8日(2012.3.8)
【国際特許分類】
【出願番号】特願2010−187687(P2010−187687)
【出願日】平成22年8月24日(2010.8.24)
【出願人】(000002059)シンフォニアテクノロジー株式会社 (1,111)
【出願人】(304027349)国立大学法人豊橋技術科学大学 (391)
【Fターム(参考)】
【公開日】平成24年3月8日(2012.3.8)
【国際特許分類】
【出願日】平成22年8月24日(2010.8.24)
【出願人】(000002059)シンフォニアテクノロジー株式会社 (1,111)
【出願人】(304027349)国立大学法人豊橋技術科学大学 (391)
【Fターム(参考)】
[ Back to top ]