(57)【要約】【課題】処理負荷の増大を抑制しつつ、ロボットの実際の移動軌跡と描画される移動軌跡とのずれを抑制する。【解決手段】ロボット２０を所定の制御周期で制御するコントローラ３０からの信号に基づいて、制御周期よりも長い描画周期でロボット２０の移動軌跡を表示部５１に描画する描画装置５０であって、コントローラ３０から各制御周期におけるロボット２０の所定点の位置を表す情報を取得し、取得された情報に基づいて、時間に対して座標系における前記位置の少なくとも１つの成分が極値になる極値点を、描画周期内に含むか否かを判定し、極値点を含まないと判定された場合に、前回の描画周期における前記位置と今回の描画周期における前記位置とを結ぶ移動軌跡を表示部５１に描画し、極値点を含むと判定された場合に、前回の描画周期における前記位置から極値点に寄って今回の描画周期における前記位置へ結ぶ移動軌跡を表示部５１に描画する。【選択図】      図１
2017094458.tif 000002
【特許請求の範囲】
【請求項１】
ロボットを所定の制御周期で制御する制御部からの信号に基づいて、前記制御周期よりも長い描画周期で前記ロボットの移動軌跡を表示部に描画する描画装置であって、
前記制御部から各制御周期における前記ロボットの所定点の位置を表す情報を取得する取得部と、
前記取得部により取得された前記情報に基づいて、時間に対して座標系における前記位置の少なくとも１つの成分が極値になる極値点を、前記描画周期内に含むか否かを判定する判定部と、
前記判定部により前記極値点を含まないと判定された場合に、前回の描画周期における前記位置と今回の描画周期における前記位置とを結ぶ前記移動軌跡を前記表示部に描画し、前記判定部により前記極値点を含むと判定された場合に、前回の描画周期における前記位置から前記極値点に寄って今回の描画周期における前記位置へ結ぶ前記移動軌跡を前記表示部に描画する描画部と、
を備えることを特徴とするロボットの移動軌跡描画装置。
【請求項２】
前記描画部は、前記判定部により前記極値点を含むと判定された場合に、前記描画周期内において前記位置が前記極値点に最も近付く制御周期における前記位置を通過位置に設定し、前回の描画周期における前記位置から前記通過位置を通過して今回の描画周期における前記位置へ結ぶ前記移動軌跡を前記表示部に描画する請求項１に記載のロボットの移動軌跡描画装置。
【請求項３】
前記判定部は、前記取得部により取得された前記情報に基づいて、前記座標系において前記位置が移動する速度の少なくとも１つの成分の符号が前記描画周期内に反転する場合に、前記描画周期内に前記極値点を含むと判定する請求項１又は２に記載のロボットの移動軌跡描画装置。
【請求項４】
前記判定部は、前々回の描画周期における前記位置、前回の描画周期における前記位置、及び今回の描画周期における前記位置に基づいて、前記座標系において前記位置が移動する加速度の各成分を算出し、前記加速度の各成分が一定であるとみなして前記速度の少なくとも１つの成分の符号が次回の描画周期内に反転するか否か判定する請求項３に記載のロボットの移動軌跡描画装置。
【請求項５】
前記描画部は、前記判定部により前記極値点を含むと判定された場合に、前記描画周期内において前記位置が前記極値点に最も近付く制御周期における前記位置を通過位置に設定し、
前記判定部は、前回の描画周期における前記位置、前記通過位置、及び今回の描画周期における前記位置に基づいて、前記座標系において前記位置が移動する加速度の各成分を算出し、前記加速度の各成分が一定であるとみなして前記速度の少なくとも１つの成分の符号が次回の描画周期内に反転するか否か判定する請求項３に記載のロボットの移動軌跡描画装置。
【請求項６】
前記制御周期は８ｍｓであり、前記描画周期は２００ｍｓである請求項１〜５のいずれか１項に記載のロボットの移動軌跡描画装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットの移動軌跡を表示部に描画する装置に関する。
【背景技術】
【０００２】
従来、教示目標点のうち最初の所定個数の教示目標点を取得し、ロボットの初期位置の座標から、取得した最後の教示目標点までの移動軌跡を表示部に描画するものがある（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第５３７５４３６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、ロボットの移動軌跡を正確に描画するためには、描画点と描画点とを結ぶ線を描く描画周期をできるだけ短くすることが望ましい。しかしながら、移動軌跡を描画する処理負荷の問題から、ロボットの制御周期よりもかなり長い描画周期で移動軌跡を描画することが一般的である。このため、描画点と描画点との距離がかなり長くなり、ロボットの実際の移動軌跡と描画された移動軌跡とのずれが大きくなっている。
【０００５】
本発明は、こうした実情に鑑みてなされたものであり、その主たる目的は、移動軌跡を描画する処理負荷の増大を抑制しつつ、ロボットの実際の移動軌跡と描画される移動軌跡とのずれを抑制することのできるロボットの移動軌跡描画装置を提供することにある。
【課題を解決するための手段】
【０００６】
本発明は、上記課題を解決するために、以下の手段を採用した。
【０００７】
第１の手段は、ロボットを所定の制御周期で制御する制御部からの信号に基づいて、前記制御周期よりも長い描画周期で前記ロボットの移動軌跡を表示部に描画する描画装置であって、前記制御部から各制御周期における前記ロボットの所定点の位置を表す情報を取得する取得部と、前記取得部により取得された前記情報に基づいて、時間に対して座標系における前記位置の少なくとも１つの成分が極値になる極値点を、前記描画周期内に含むか否かを判定する判定部と、前記判定部により前記極値点を含まないと判定された場合に、前回の描画周期における前記位置と今回の描画周期における前記位置とを結ぶ前記移動軌跡を前記表示部に描画し、前記判定部により前記極値点を含むと判定された場合に、前回の描画周期における前記位置から前記極値点に寄って今回の描画周期における前記位置へ結ぶ前記移動軌跡を前記表示部に描画する描画部と、を備えることを特徴とする。
【０００８】
上記構成によれば、ロボットを所定の制御周期で制御する制御部からの信号に基づいて、描画装置によって制御周期よりも長い描画周期で描画点と描画点とを結ぶロボットの移動軌跡が表示部に描画される。
【０００９】
ここで、取得部により、制御部から各制御周期におけるロボットの所定点の位置を表す情報が取得される。そして、判定部によって、取得部により取得された情報に基づいて、時間に対して座標系における前記位置の少なくとも１つの成分が極値になる極値点を、描画周期内に含むか否か判定される。極値点では、座標系の少なくとも１つの成分（例えば、直交座標系のｘ成分）に関して、所定点が移動する方向が反転するため、移動軌跡の変化が大きくなる。このため、描画周期内に極値点が含まれる場合は、前回の描画周期における所定点の位置（以下「前回位置」という）と今回の描画周期における所定点の位置（以下「今回位置」という）とを結ぶ移動軌跡を描画すると、ロボットの実際の移動軌跡と描画される移動軌跡とのずれが大きくなり易い。
【００１０】
この点、判定部により極値点を含まないと判定された場合に、前回位置と今回位置とを結ぶ移動軌跡が表示部に描画される。このため、所定点が移動する方向が反転せず、実際の移動軌跡と描画される移動軌跡とがずれにくい場合は、移動軌跡を描画する処理負荷を小さくすることができる。
【００１１】
これに対して、判定部により極値点を含むと判定された場合に、前回位置から極値点に寄って今回位置へ結ぶ移動軌跡が表示部に描画される。極値点に寄るとは、前回位置から極値点を通過して今回位置へ結ぶことの他、前回位置から極値点近傍の点を通過して今回位置へ結ぶことを含むものとする。このため、所定点が移動する方向が反転し、実際の移動軌跡と描画される移動軌跡とがずれ易い場合は、前回位置と今回位置との間で極値点に寄るように移動軌跡が描画される。したがって、ロボットの実際の移動軌跡と描画される移動軌跡とのずれを抑制することができる。さらに、前回位置と今回位置との間で極値点に寄るだけであるため、移動軌跡を描画する処理負荷の増大を抑制することができる。
【００１２】
第２の手段では、前記描画部は、前記判定部により前記極値点を含むと判定された場合に、前記描画周期内において前記位置が前記極値点に最も近付く制御周期における前記位置を通過位置に設定し、前回の描画周期における前記位置から前記通過位置を通過して今回の描画周期における前記位置へ結ぶ前記移動軌跡を前記表示部に描画する。
【００１３】
ロボットの所定点の位置が極値点となるタイミングと、制御周期における位置取得タイミングとがずれることがある。この場合、所定点の位置を表す情報に基づいて算出される位置と極値点とがずれることとなる。
【００１４】
この点、上記構成によれば、判定部により極値点を含むと判定された場合に、描画周期内において前記位置が極値点に最も近付く制御周期における前記位置が通過位置に設定される。そして、前回位置から通過位置を通過して今回位置へ結ぶ移動軌跡が表示部に描画される。したがって、所定点の位置を表す情報に基づいて算出される位置と極値点とがずれる場合であっても、前回位置から極値点に寄って今回位置へ結ぶ移動軌跡を描画することができる。
【００１５】
第３の手段では、前記判定部は、前記取得部により取得された前記情報に基づいて、前記座標系において前記位置が移動する速度の少なくとも１つの成分の符号が前記描画周期内に反転する場合に、前記描画周期内に前記極値点を含むと判定する。
【００１６】
時間に対して座標系における前記位置の少なくとも１つの成分が極値になる極値点では、座標系において前記位置が移動する速度の少なくとも１つの成分の符号が反転する。したがって、速度の少なくとも１つ成分の符号が描画周期内に反転する場合に極値点を含むと判定することで、描画周期内に極値点を含むか否かを容易に判定することができる。
【００１７】
具体的には、第４の手段のように、前記判定部は、前々回の描画周期における前記位置、前回の描画周期における前記位置、及び今回の描画周期における前記位置に基づいて、前記座標系において前記位置が移動する加速度の各成分を算出し、前記加速度の各成分が一定であるとみなして前記速度の少なくとも１つの成分の符号が次回の描画周期内に反転するか否か判定するといった構成を採用することができる。
【００１８】
また、具体的には、第５の手段のように、前記描画部は、前記判定部により前記極値点を含むと判定された場合に、前記描画周期内において前記位置が前記極値点に最も近付く制御周期における前記位置を通過位置に設定し、前記判定部は、前回の描画周期における前記位置、前記通過位置、及び今回の描画周期における前記位置に基づいて、前記座標系において前記位置が移動する加速度の各成分を算出し、前記加速度の各成分が一定であるとみなして前記速度の少なくとも１つの成分の符号が次回の描画周期内に反転するか否か判定するといった構成を採用することができる。
【００１９】
第６の手段では、前記制御周期は８ｍｓであり、前記描画周期は２００ｍｓである。
【００２０】
上記構成によれば、ロボットの制御周期は８ｍｓであり、移動軌跡の描画周期は２００ｍｓであるため、制御周期と等しい８ｍｓの描画周期で移動軌跡を描画する構成と比較して、処理負荷を大幅に小さくすることができる。
【図面の簡単な説明】
【００２１】
【図１】ロボットシステムの斜視図
【図２】ロボット及び移動軌跡を従来技術により表示するディスプレイ
【図３】移動軌跡描画の処理手順を示すフローチャート
【図４】直角動作における移動軌跡を示す平面図
【図５】鋭角動作における移動軌跡を示す平面図
【図６】鈍角動作における移動軌跡を示す平面図
【図７】各動作における移動軌跡のずれの評価結果を示す図
【発明を実施するための形態】
【００２２】
以下、一実施形態について、図面を参照しつつ説明する。図１は、ロボットシステム１０の斜視図である。ロボットシステム１０は、ロボット２０、コントローラ３０、ティーチングペンダント４０、パーソナルコンピュータ（パソコン）５０等を備えている。ロボット２０は、例えば部品の組立用あるいは部品の検査用など、任意の構成のロボットである。コントローラ３０には、周辺機器としてティーチングペンダント４０及びパソコン５０等が接続されている。なお、パソコン５０は、必要に応じて接続されるものであり、常時接続されている必要はない。
【００２３】
ロボット２０は、例えば６軸の垂直多関節型のロボットとして構成されている。ロボット２０は、各軸がそれぞれアクチュエータであるサーボモータ等からの駆動力で駆動されるアーム２１を有している。アーム２１は、先端にエンドエフェクタ２２を有している。例えばロボット２０で部品の運搬や組立等を行う場合、エンドエフェクタ２２としてこれらの部品を保持するためのハンドが用いられる。また、例えばロボット２０で部品の検査などを行う場合、エンドエフェクタ２２として対象となる部品を撮影するカメラなどが用いられる。
【００２４】
このように、エンドエフェクタ２２は、ロボット２０を適用する工程に応じて任意に選択することができる。サーボモータからアーム２１のエンドエフェクタ２２までの間には、図示しない減速機構やリンクなどの駆動力伝達機構が設けられている。これにより、アーム２１の先端に設けられているエンドエフェクタ２２は、サーボモータからの駆動力によって駆動される。ロボット２０とコントローラ３０との間は、接続ケーブル２５によって接続されている。これにより、ロボット２０の各軸を駆動するサーボモータ、および作業を実施するエンドエフェクタ２２は、コントローラ３０によって制御される。エンドエフェクタ２２の基準点が、ロボット２０の所定点に相当する。
【００２５】
ティーチングペンダント４０（タッチパネル式入力装置）は、例えば使用者が携帯あるいは手に所持して操作可能な程度の大きさで、例えば薄型の直方体状に形成されている。ティーチングペンダント４０は、表面部の中央部に例えば液晶ディスプレイからなる表示部４１を有している。表示部４１には、各種の画面が表示される。表示部４１は、タッチパネルで構成されている。またティーチングペンダント４０には、表示部４１の周囲に各種のキースイッチ４２が設けられており、使用者は、キースイッチ４２やタッチパネルによって種々の入力操作を行う。
【００２６】
ティーチングペンダント４０は、ケーブル３５を経由してコントローラ３０に接続され、通信インターフェイスを経由してコントローラ３０との間で高速のデータ転送を実行する。キースイッチ４２等やタッチ操作により入力された操作信号等の情報は、ティーチングペンダント４０からコントローラ３０へ送信される。また、コントローラ３０は、ティーチングペンダント４０へ制御信号や表示用の信号などと共に駆動用の電力を供給する。
【００２７】
使用者は、上記のティーチングペンダント４０を用いてロボット２０の運転や設定などの各種の機能を実行可能である。例えばキースイッチ４２等を操作することで、予め記憶されている制御プログラムを呼び出して、ロボット２０の起動や各種のパラメータの設定等を実行できる。また、ロボット２０をマニュアル操作で動作させて各種の教示作業も実行可能である。表示部４１には、例えばメニュー画面、設定入力画面、状況表示画面など必要に応じて所望の画面が表示される。
【００２８】
パソコン５０（描画装置に相当）は例えば汎用のノートパソコンなどである。使用者は、プログラミングソフトを実行させることで、アプリケーションに応じてロボット２０の動作手順などを記述したプログラムを作成できる。このパソコン５０は、ケーブル４５を経由してコントローラ３０に接続され、通信インターフェイスを経由してコントローラ３０との間で高速のデータ転送を実行する。作成されたプログラムは、パソコン５０からコントローラ３０へ転送される。本実施形態では、パソコン５０は、このプログラムに基づいたロボット２０の移動軌跡を、ディスプレイ５１（表示部に相当）に描画する。
【００２９】
コントローラ３０（制御部に相当）は、図示しない記憶装置を備えており、パソコン５０から転送されるプログラムを複数記憶することが可能となっている。コントローラ３０は、この記憶装置に記憶されたプログラムを実行してロボット２０の動作を自動制御する実動作制御機能を有している。また、コントローラ３０は、上記プログラムを実行する際のロボット２０の制御状態を表す制御ログを作成する。そして、パソコン５０がロボット２０の移動軌跡を描画する際に、コントローラ３０からパソコン５０に対し、この制御ログが送信される。制御ログは、ロボット２０の各軸の角度データ等を含んでいる。
【００３０】
使用者は、上記のティーチングペンダント４０を用いて、例えばキースイッチ４２等を操作することで、コントローラ３０に予め記憶されたプログラムの中から１つのプログラムを選択し、そのプログラムに基づいた自動制御を開始させたり、そのプログラムに基づいた動作を画面表示させたりすることができる。この場合、ティーチングペンダント４０からコントローラ３０に対し、所定のプログラムを選択するための選択指令、実動作制御の実行を指令する実動作開始指令等が送信される。
【００３１】
図２は、ロボット２０及び移動軌跡Ａを従来技術により表示するディスプレイ５１である。ロボット２０をコントローラ３０が制御する制御周期は８ｍｓである。これに対して、従来技術では、ロボット２０のエンドエフェクタ２２の基準点の移動軌跡を、パソコン５０がディスプレイ５１に描画する描画周期は２０ｍｓである。基準点の移動軌跡Ａを正確に描画するためには、描画周期をできるだけ短くする、例えば制御周期８ｍｓと等しい描画周期８ｍｓにすることが望ましい。しかしながら、パソコン５０が移動軌跡Ａを描画する処理負荷の問題から、ロボット２０の制御周期８ｍｓよりも長い描画周期２０ｍｓで移動軌跡Ａを描画している。
【００３２】
ここで、破線で示すように、基準点の実際の移動軌跡が、時間に対して基準点の位置の少なくとも１つの成分（座標）が極値になる点である極値点Ｐ２を含む場合がある。同図では、ｘｙｚの直交座標系を基準として、時間の経過に伴って極値点Ｐ２において位置のｘ成分（ｘ座標）が極大値になっている。そして、極値点Ｐ２直前の描画周期における基準点の位置が点Ｐ１であり、極値点Ｐ２直後の描画周期における基準点の位置が点Ｐ３である場合、ロボット２０の移動軌跡Ａとして点Ｐ１と点Ｐ２とを結ぶ直線が描画される。このため、破線で示す実際の移動軌跡と、実線で示す描画された移動軌跡Ａとのずれが大きくなることを本願発明者は見出した。すなわち、極値点では、座標系の少なくとも１つの成分に関して、基準点が移動する方向が反転するため、移動軌跡の変化が大きくなる。同図では、極値点Ｐ２では、ｘｙｚ座標系のｘ成分に関して、基準点が移動する方向が反転している。
【００３３】
そこで、本実施形態では、描画周期内に極値点を含むか否かを判定し、極値点を含むと判定された場合に、前回の描画周期における基準点の位置から極値点に寄って今回の描画周期における基準点の位置へ結ぶ移動軌跡をディスプレイ５１に描画する。同図では、点Ｐ１から点Ｐ３までの移動軌跡を描画する描画周期内に、極値点Ｐ２を含むと判定された場合に、点Ｐ１から極値点Ｐ２に寄って点Ｐ３へ結ぶ移動軌跡を描画する。
【００３４】
また、ロボット２０の基準点の位置が極値点Ｐ２となるタイミングと、制御周期における位置取得タイミングとがずれることがある。この場合、基準点の位置を表す情報に基づいて算出される位置と極値点Ｐ２とがずれることとなる。そこで、描画周期内に極値点Ｐ２を含むと判定した場合に、描画周期内において基準点の位置が極値点Ｐ２に最も近付く制御周期における基準点の位置を通過位置に設定する。そして、前回位置から通過位置を通過して今回位置へ結ぶ移動軌跡をディスプレイ５１に描画する。
【００３５】
図３は、移動軌跡描画の処理手順を示すフローチャートである。この一連の処理は、パソコン５０によって描画周期２０ｍｓで繰り返し実行される。
【００３６】
まず、描画周期内の各制御周期での制御ログを、コントローラ３０から取得する（Ｓ１１）。具体的には、コントローラ３０との通信により、ロボット２０の各軸の角度データを受信する。
【００３７】
続いて、極値点フラグがＴ（Ｔｒｕｅ）であるか否か判定する（Ｓ１２）。後述するように、極値点フラグは、前回の描画から今回の描画までの描画周期内に、極値点を含む場合にＴ（Ｔｒｕｅ）とされ、極値点を含まない場合にＦ（Ｆａｌｓｅ）とされる。
【００３８】
上記判定において、極値点フラグがＴであると判定した場合（Ｓ１２：ＹＥＳ）、極値点時期に基づいて通過位置を設定する（Ｓ１３）。後述するように、描画周期内に極値点を含むと判定された場合は、エンドエフェクタ２２の基準点の移動軌跡が極値点となる時期である極値点時期が算出されている。このため、描画周期内の各制御周期における制御ログのうち、極値点時期に最も近い時期の制御ログを用いて、エンドエフェクタ２２の基準点の位置を算出する。具体的には、ロボット２０の各軸の角度から、基準点の位置を算出し、算出した基準点の位置を通過位置に設定する。
【００３９】
続いて、前回の描画周期における基準点の位置（以下「前回位置」という）と、上記通過位置とを結ぶ直線を移動軌跡として描画する（Ｓ１４）。
【００４０】
一方、Ｓ１２の判定において、極値点フラグがＦであると判定した場合（Ｓ１２：ＮＯ）、通過位置の設定（Ｓ１５）、及び前回位置と通過位置とを結ぶ直線の描画（Ｓ１４）は行わない。
【００４１】
続いて、今回の描画周期における基準点の位置（以下「今回位置」という）を算出する（Ｓ１５）。具体的には、描画周期内の各制御周期における制御ログのうち、最後の制御周期の制御ログを用いて、エンドエフェクタ２２の基準点の位置を算出する。
【００４２】
続いて、最後の２つの基準点の位置を結ぶ直線を、移動軌跡として描画する（Ｓ１６）。具体的には、通過位置が設定されていれば、通過位置と今回位置とを結ぶ直線を描画する。一方、通過位置が設定されていなければ、前回位置と今回位置とを結ぶ直線を描画する。なお、初回の描画周期における処理では、通過位置及び前回位置が存在しないため、この処理を行わない。
【００４３】
続いて、最後の３つの基準点の位置から、基準点が移動する加速度の各成分を算出する（Ｓ１７）。具体的には、通過位置が設定されていれば、前回位置、通過位置、及び今回位置から、基準点が移動する加速度の各成分を算出する。例えば、前回位置、通過位置、及びその間の時間から第１速度を算出し、通過位置、今回位置、及びその間の時間から第２速度を算出する。そして、第１速度及び第２速度から加速度を算出する。これを、ｘ成分、ｙ成分、及びｚ成分についてそれぞれ行って、加速度のｘ成分ａｘ、ｙ成分ａｙ、及びｚ成分ａｚを損出する。一方、通過位置が設定されていなければ、前々回位置、前回位置、及び今回位置から、同様にして基準点が移動する加速度の各成分ａｘ，ａｙ，ａｚを算出する。なお、最後の３つの基準点の位置が存在しない場合、例えば初回の描画周期における処理では、この処理を行わない。
【００４４】
続いて、基準点の速度の少なくとも１つの成分の符号が、次回の制御周期内に反転するか否か判定する（Ｓ１８）。具体的には、基準位置の加速度が上記算出した加速度で一定であるとみなして、今回の制御周期での基準点の速度の符号と、次回の制御周期での基準点の速度の符号とが異なるか否か判定する。この判定を、ｘ成分、ｙ成分、及びｚ成分についてそれぞれ行う。
【００４５】
上記判定において、速度ｖのｘ成分ｖｘ、ｙ成分ｖｙ、及びｚ成分ｖｚの少なくとも１つの符号が反転すると判定した場合（Ｓ１８：ＹＥＳ）、上記極値点フラグ＝Ｔとする（Ｓ１９）。そして、基準点の移動軌跡が極値点となる時期である極値点時期を算出する（Ｓ２０）。具体的には、速度ｖのｘ成分ｖｘ、ｙ成分ｖｙ、及びｚ成分ｖｚのいずれかが０になる時期を、極値点時期として算出する。
【００４６】
一方、Ｓ１８の判定において、速度ｖのｘ成分ｖｘ、ｙ成分ｖｙ、及びｚ成分ｖｚのいずれの符号も反転しないと判定した場合（Ｓ１８：ＮＯ）、極値点フラグ＝Ｆとする（Ｓ２１）。
【００４７】
その後、この一連の処理を一旦終了する（ＥＮＤ）。なお、Ｓ１１の処理が取得部としての処理に相当し、Ｓ１２〜Ｓ１６の処理が描画部としての処理に相当し、Ｓ１７〜Ｓ１９及びＳ２１の処理が判定部としての処理に相当する。
【００４８】
図４は、ロボット２０のエンドエフェクタ２２の基準点を、直角動作させる移動軌跡を示す平面図である。同様に、図５は鋭角動作における移動軌跡を示す平面図であり、図６は鈍角動作における移動軌跡を示す平面図である。なお、図４〜６において、基準点のｚ座標（ｚ成分）は所定値で固定している。
【００４９】
図７は、図４〜６の各動作における移動軌跡のずれの評価結果を、従来技術と比較して示す図である。ここでは、各制御周期における基準点の実際の位置と、描画された移動軌跡上における各制御周期に対応する基準点の位置とで、相関係数を算出した。相関係数は、基準点のｘ座標（ｘ成分）及びｙ座標（ｙ成分）についてそれぞれ算出した。相関係数は、１に近いほど相関が高いことを表している。＠Ｅは、現在位置から目標位置へ移動する際に、ロボット２０の各軸の角度が目標角度になってから、次の目標位置へ移動するモードである。＠Ｐは、現在位置から目標位置へ移動する際に、ロボット２０の各軸の角度が減速を開始したら、現在の目標位置への移動に併せて次の目標位置への移動を開始するモードである。
【００５０】
これらの評価結果から明らかなように、本実施形態は、いずれの動作及びモードにおいても、従来技術と比較して相関係数が１に近くなっている。特に、鋭角動作のモード＠Ｅのｙ座標において、ずれの縮小が顕著となっている。この場合、図５に示すように、ｙ座標に関して、各目標位置が極値点となっているため、前回位置から極値点に寄って今回位置へ結ぶ本実施形態の効果が高くなったと考えられる。
【００５１】
以上詳述した本実施形態は、以下の利点を有する。
【００５２】
・描画周期内に極値点を含まないと判定された場合に、前回位置と今回位置とを結ぶ移動軌跡がディスプレイ５１に描画される。このため、基準点が移動する方向が反転せず、実際の移動軌跡と描画される移動軌跡とがずれにくい場合は、パソコン５０が移動軌跡を描画する処理負荷を小さくすることができる。
【００５３】
・描画周期内に極値点を含むと判定された場合に、前回位置から極値点に寄って今回位置へ結ぶ移動軌跡がディスプレイ５１に描画される。このため、基準点が移動する方向が反転し、実際の移動軌跡と描画される移動軌跡とがずれ易い場合は、前回位置と今回位置との間で極値点に寄るように移動軌跡が描画される。したがって、ロボット２０の実際の移動軌跡と描画される移動軌跡とのずれを抑制することができる。さらに、前回位置と今回位置との間で極値点に寄るだけであるため、パソコン５０が移動軌跡を描画する処理負荷の増大を抑制することができる。
【００５４】
・描画周期内に極値点を含むと判定された場合に、描画周期内において基準点の位置が極値点に最も近付く制御周期における基準点の位置が通過位置に設定される。そして、前回位置から通過位置を通過して今回位置へ結ぶ移動軌跡がディスプレイ５１に描画される。したがって、基準点の位置を表す情報に基づいて算出される位置と極値点とがずれる場合であっても、前回位置から極値点に寄って今回位置へ結ぶ移動軌跡を描画することができる。
【００５５】
・時間に対してｘｙｚ座標系における基準点の位置の少なくとも１つの成分が極値になる極値点では、ｘｙｚ座標系において基準点の位置が移動する速度ｖの少なくとも１つの成分の符号が反転する。したがって、速度ｖの少なくとも１つ成分の符号が描画周期内に反転する場合に極値点を含むと判定することで、描画周期内に極値点を含むか否かを容易に判定することができる。
【００５６】
・ロボット２０の制御周期は８ｍｓであり、移動軌跡の描画周期は２００ｍｓであるため、制御周期と等しい８ｍｓの描画周期で移動軌跡を描画する構成と比較して、パソコン５０の処理負荷を大幅に小さくすることができる。
【００５７】
なお、上記実施形態を、以下のように変更して実施することもできる。上記実施形態と同一の部材については、同一の符号を付すことにより説明を省略する。
【００５８】
・ロボット２０の制御周期は８ｍｓに限らず、移動軌跡の描画周期は２００ｍｓに限らない。例えば、ロボット２０の制御周期が１６ｍｓであり、移動軌跡の描画周期が４００ｍｓであってもよい。要するに、ロボット２０の制御周期よりも長い描画周期で、ロボット２０の移動軌跡をディスプレイ５１に描画するものであればよい。
【００５９】
・前回位置と今回位置との間の極値点の位置を、極値点の前後に対応する制御ログから補間して算出してもよい。そして、算出した極値点の位置を、前回位置と今回位置との間の通過位置に設定してもよい。こうした構成によれば、実際の移動軌跡と描画される移動軌跡とのずれを更に抑制することができる。
【００６０】
・前回位置、通過位置、及び今回位置を結ぶ線は、直線に限らず、前回位置までの移動軌跡の形状を近似した近似曲線に基づく曲線等であってもよい。
【００６１】
・ロボット２０の基準となる座標系は、ｘｙｚの直交座標系に限らず、円筒座標系等であってもよい。
【００６２】
・描画装置は、パソコン５０に限らず、コントローラ３０や、ティーチングペンダント４０により構成されていてもよい。また、表示部は、パソコン５０のディスプレイ５１に限らず、ティーチングペンダント４０の表示部４１により構成されていてもよい。
【００６３】
・ロボットとして、垂直多関節ロボットに限らず、水平多関節ロボット等を採用することもできる。
【符号の説明】
【００６４】
２０…ロボット、２２…エンドエフェクタ、３０…コントローラ（制御部）、４１…表示部、５０パーソナルコンピュータ（描画装置）、５１…ディスプレイ（表示部）。
【図１】
2017094458.tif 000003
【図２】
2017094458.tif 000004
【図３】
2017094458.tif 000005
【図４】
2017094458.tif 000006
【図５】
2017094458.tif 000007
【図６】
2017094458.tif 000008
【図７】
2017094458.tif 000009