IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ セイコーエプソン株式会社の特許一覧

<>
  • 特許-ロボット制御装置 図1
  • 特許-ロボット制御装置 図2
  • 特許-ロボット制御装置 図3
  • 特許-ロボット制御装置 図4
  • 特許-ロボット制御装置 図5
  • 特許-ロボット制御装置 図6
  • 特許-ロボット制御装置 図7
  • 特許-ロボット制御装置 図8
  • 特許-ロボット制御装置 図9
  • 特許-ロボット制御装置 図10
  • 特許-ロボット制御装置 図11
  • 特許-ロボット制御装置 図12
  • 特許-ロボット制御装置 図13
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-12-05
(45)【発行日】2022-12-13
(54)【発明の名称】ロボット制御装置
(51)【国際特許分類】
   B25J 13/08 20060101AFI20221206BHJP
【FI】
B25J13/08 Z
【請求項の数】 4
(21)【出願番号】P 2017142450
(22)【出願日】2017-07-24
(65)【公開番号】P2019022916
(43)【公開日】2019-02-14
【審査請求日】2020-06-30
(73)【特許権者】
【識別番号】000002369
【氏名又は名称】セイコーエプソン株式会社
(74)【代理人】
【識別番号】100091292
【弁理士】
【氏名又は名称】増田 達哉
(74)【代理人】
【識別番号】100091627
【弁理士】
【氏名又は名称】朝比 一夫
(72)【発明者】
【氏名】下平 泰裕
【審査官】國武 史帆
(56)【参考文献】
【文献】特開平03-281193(JP,A)
【文献】特開平05-169381(JP,A)
【文献】特開2017-052049(JP,A)
【文献】特開昭62-084991(JP,A)
【文献】特開2012-137421(JP,A)
【文献】特開2013-013987(JP,A)
【文献】韓国公開特許第10-2011-0014860(KR,A)
【文献】特開2017-001122(JP,A)
【文献】特開2016-179523(JP,A)
【文献】特開2014-144522(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
B25J 1/00 - 21/02
(57)【特許請求の範囲】
【請求項1】
ロボットアームと、前記ロボットアームに着脱可能に取り付けられ、対象物を保持するエンドエフェクターと、力検出装置と、を含む可動部を有するロボットを制御する制御部と、
表示装置の駆動を制御する表示制御部と、を備えるロボット制御装置であって、
前記ロボットアームには、第1の点が設定され、
前記エンドエフェクターには、制御点が設定され、
前記対象物には、前記制御点とは独立して第2の点が設定されており、
前記制御部は、前記ロボットが動作する際、
前記第1の点の位置姿勢情報と、前記第1の点に対する前記第2の点の相対位置姿勢情報とに基づいて、前記第2の点の位置姿勢情報を求め、前記第2の点の前記位置姿勢情報を記憶部に記憶させ、
前記力検出装置により検出された力情報に基づいて、前記第2の点に加わる力を求め、前記第2の点に加わる力の情報を前記記憶部に記憶させ、
前記表示制御部は、前記記憶部に記憶された前記第2の点の前記位置姿勢情報と、前記記憶部に記憶された前記第2の点に加わる力の情報とを一覧で前記表示装置に表示させることを特徴とするロボット制御装置。
【請求項2】
前記第2の点の前記位置姿勢情報は、前記ロボットのベース座標系と異なるローカル座標系を基準として求めたものである請求項1に記載のロボット制御装置。
【請求項3】
前記ロボットが動作する際、前記制御部は、前記ロボットアームの関節角度情報を前記記憶部に記憶させ、前記記憶部に記憶された前記ロボットアームの前記関節角度情報に基づいて前記ロボットを制御する請求項1または2に記載のロボット制御装置。
【請求項4】
前記ロボットが動作する際、前記制御部は、関節フラグに関する情報を前記記憶部に記憶させ、前記記憶部に記憶された前記関節フラグに関する情報に基づいて前記ロボットを制御する請求項に記載のロボット制御装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ロボット制御装置に関するものである。
【背景技術】
【0002】
基台と、複数のアーム(リンク)を有するロボットアームとを備えるロボットが知られている。ロボットアームの隣り合う2つのアームのうちの一方のアームは、関節部を介して、他方のアームに回動可能に連結され、最も基端側(最も上流側)のアームは、関節部を介して、基台に回動可能に連結されている。関節部はモーターにより駆動され、その関節部の駆動により、アームが回動する。また、最も先端側(最も下流側)のアームには、エンドエフェクターとして、例えば、着脱可能にハンドが装着される。そして、ロボットは、例えば、ハンドで対象物を把持し、その対象物を所定の場所へ移動させ、組立等の所定の作業を行う。
【0003】
このようなロボットの駆動(動作)を制御するロボット制御装置では、ロボットが動作する際、ハンドの先端の中心点を制御点(ツール制御点)とし、その制御点の位置、姿勢を示す位置姿勢情報が記憶される。使用者は、この位置姿勢情報により、ロボットの制御点の位置、姿勢を把握することができる。
【0004】
また、特許文献1には、ロボットの駆動を制御するロボット制御装置が開示されている。特許文献1に記載されているロボット制御装置では、制御点の位置姿勢情報を記憶するとともに、ロボットアームの先端に取り付けられた作業ツールとワークとの間の接触点を作用点とし、その作用点の軌跡を表示装置に表示する。
【先行技術文献】
【特許文献】
【0005】
【文献】特開2017-1122号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、従来のロボット制御装置では、ロボットが動作する際に記憶される位置姿勢情報は制御点の位置姿勢情報であるので、ロボット工学に詳しくない者にとっては、その位置姿勢情報によりロボットが行った動作を把握することは困難である。
【0007】
また、特許文献1に記載のロボット制御装置では、表示装置に作用点の軌跡が表示されるが、ロボット工学に詳しくない者にとって必要とされる情報は、作用点のみならず、接続(接触)していない部位の情報であることがあり、作用点のみでは、ロボットが行った動作を把握することは困難である。なお、ロボットが、例えば対象物を嵌合させる作業を行う場合、その嵌合が中途半端になっている状況をロール、ピッチ、ヨーの角度の組み合わせで算出することはできない。
【課題を解決するための手段】
【0008】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態または適用例として実現することが可能である。
【0009】
本発明のロボット制御装置は、ロボットアームと、前記ロボットアームに着脱可能に取り付けられ、対象物を保持するエンドエフェクターと、力検出装置と、を含む可動部を有するロボットを制御する制御部を備えるロボット制御装置であって、
前記制御部は、前記ロボットが動作する際、前記ロボットアームの第1の点の位置姿勢情報と、前記第1の点に対する前記対象物の第2の点の相対位置姿勢情報とに基づいて、前記第2の点の位置姿勢情報を求め、前記第2の点の前記位置姿勢情報を記憶部に記憶させることを特徴とする。
【0010】
このような本発明のロボット制御装置によれば、第2の点の位置姿勢情報により、ロボットが行った動作を容易かつ迅速に把握することができる。
【0011】
本発明のロボット制御装置では、前記ロボットが動作する際、前記制御部は、前記力検出装置により検出された力情報に基づいて、前記第2の点に加わる力を求め、前記第2の点に加わる力の情報を前記記憶部に記憶させることが好ましい。
これにより、第2の点に加わった力を把握することができる。
【0012】
本発明のロボット制御装置では、表示装置の駆動を制御する表示制御部を有し、
前記表示制御部は、前記記憶部に記憶された前記第2の点の前記位置姿勢情報と、前記記憶部に記憶された前記第2の点に加わる力の情報とを一覧で前記表示装置に表示させることが好ましい。
【0013】
これにより、表示装置に表示された情報を見ることで、ロボットが行った動作およびその動作の際に可動部に加わった力を容易かつ迅速に把握することができる。
【0014】
本発明のロボット制御装置では、前記第2の点は、前記エンドエフェクターに設定される制御点とは独立して設定されることが好ましい。
【0015】
これにより、制御点を変更した場合、制御点の位置姿勢情報は変更されるが、第2の点の位置姿勢情報は変更されない。このため、ロボットが行った動作を適確に把握することができる。
【0016】
本発明のロボット制御装置では、前記第2の点の前記位置姿勢情報は、前記ロボットのベース座標系と異なるローカル座標系を基準として求めたものであることが好ましい。
【0017】
これにより、第2の点の位置、姿勢を現場の配置や姿勢、さらには対象物の形状(対象物の形状の空間)に即して容易に把握することができる。
【0018】
本発明のロボット制御装置では、前記制御部は、前記第2の点の前記位置姿勢情報と、前記ロボットアームの関節角度情報とに基づいて、第3の点の位置姿勢情報を求めることが好ましい。
これにより、ロボットが行った動作をより容易かつ迅速に把握することができる。
【0019】
本発明のロボット制御装置では、前記ロボットが動作する際、前記制御部は、前記エンドエフェクターに設定される前記制御点の位置姿勢情報を前記記憶部に記憶させ、前記記憶部に記憶された前記制御点の前記位置姿勢情報に基づいて前記ロボットを制御することが好ましい。
【0020】
これにより、ロボットを動作させた場合、容易に、その動作の少なくとも一部を再現することができる。
【0021】
本発明のロボット制御装置では、前記ロボットが動作する際、前記制御部は、前記ロボットアームの関節角度情報を前記記憶部に記憶させ、前記記憶部に記憶された前記ロボットアームの前記関節角度情報に基づいて前記ロボットを制御することが好ましい。
【0022】
これにより、ロボットを動作させた場合、容易に、その動作の少なくとも一部を再現することができる。
【0023】
本発明のロボット制御装置では、前記ロボットが動作する際、前記制御部は、関節フラグに関する情報を前記記憶部に記憶させ、前記記憶部に記憶された前記関節フラグに関する情報に基づいて前記ロボットを制御することが好ましい。
【0024】
これにより、ロボットを動作させた場合、容易に、その動作の少なくとも一部を再現することができる。
【0025】
本発明のロボット制御方法は、ロボットアームと、前記ロボットアームに着脱可能に取り付けられ、対象物を保持するエンドエフェクターと、力検出装置と、を含む可動部を有するロボットを制御するロボット制御方法であって、
前記ロボットが動作する際、前記ロボットアームの第1の点の位置姿勢情報と、前記第1の点に対する前記対象物の第2の点の相対位置姿勢情報とに基づいて、前記第2の点の位置姿勢情報を求め、前記第2の点の前記位置姿勢情報を記憶部に記憶させる工程を有することを特徴とする。
【0026】
このような本発明のロボット制御方法によれば、第2の点の位置姿勢情報により、ロボットが行った動作を容易かつ迅速に把握することができる。
【0027】
本発明のロボットシステムは、ロボットアームと、前記ロボットアームに着脱可能に取り付けられ、対象物を保持するエンドエフェクターと、力検出装置と、を含む可動部を有するロボットと、
前記ロボットを制御する本発明のロボット制御装置と、を備えることを特徴とする。
【0028】
このような本発明のロボットシステムによれば、第2の点の位置姿勢情報により、ロボットが行った動作を容易かつ迅速に把握することができる。
【0029】
本発明のシミュレーション装置は、表示装置に表示された仮想空間上で仮想ロボットの動作を行うシミュレーション装置であって、
前記仮想ロボットは、仮想ロボットアームと、前記仮想ロボットアームに着脱可能に取り付けられ、仮想対象物を保持する仮想エンドエフェクターと、仮想力検出装置と、を含む仮想可動部を有し、
前記仮想ロボットが動作する際、前記仮想ロボットアームの第1の点の位置姿勢情報と、前記第1の点に対する前記仮想対象物の第2の点の相対位置姿勢情報とに基づいて、前記第2の点の位置姿勢情報を求め、前記第2の点の前記位置姿勢情報を記憶部に記憶させる制御部を備えることを特徴とする。
【0030】
このような本発明のシミュレーション装置によれば、第2の点の位置姿勢情報により、仮想ロボットが行った動作を容易かつ迅速に把握することができる。
【0031】
本発明のシミュレーション装置では、前記仮想ロボットが動作する際、前記制御部は、前記仮想可動部の所定の部分に加わる力の情報を前記記憶部に記憶させ、前記表示装置に、前記仮想ロボットとともに、前記記憶部に記憶された前記力の情報を矢印で表示させることが好ましい。
【0032】
これにより、矢印の表示により、仮想可動部の所定の部分に加わる力を容易かつ迅速に把握することができる。
【図面の簡単な説明】
【0033】
図1】本発明のロボットシステムの第1実施形態におけるロボットを示す斜視図(ブロック図を含む)である。
図2図1に示すロボットの概略図である。
図3】本発明のロボットシステムの第1実施形態の主要部を示すブロック図である。
図4】本発明のロボットシステムの第1実施形態におけるロボット制御装置の制御動作を示すフローチャートである。
図5】本発明のロボットシステムの第1実施形態における表示装置に表示された表示例を示す図である。
図6】本発明のロボットシステムの第1実施形態におけるロボットの可動部の先端部の斜視図である。
図7】本発明のロボットシステムの第1実施形態におけるロボットの可動部の先端部の斜視図である。
図8】本発明のロボットシステムの第1実施形態におけるロボットの可動部の先端部の斜視図である。
図9】座標系を説明するための図である。
図10】本発明のシミュレーション装置の実施形態を示すブロックである。
図11図10に示すシミュレーション装置のシミュレーションにおいて表示装置に表示された仮想ロボットを示す斜視図である。
図12図10に示すシミュレーション装置のシミュレーションにおいて表示装置に表示された仮想ロボットの仮想可動部の先端部の斜視図である。
図13図10に示すシミュレーション装置のシミュレーションにおいて表示装置に表示された仮想ロボットの仮想可動部の先端部の斜視図である。
【発明を実施するための形態】
【0034】
以下、本発明のロボット制御装置、ロボット制御方法、ロボットシステムおよびシミュレーション装置を添付図面に示す実施形態に基づいて詳細に説明する。
【0035】
<第1実施形態>
図1は、本発明のロボットシステムの第1実施形態におけるロボットを示す斜視図(ブロック図を含む)である。図2は、図1に示すロボットの概略図である。図3は、本発明のロボットシステムの第1実施形態の主要部を示すブロック図である。図4は、本発明のロボットシステムの第1実施形態におけるロボット制御装置の制御動作を示すフローチャートである。図5は、本発明のロボットシステムの第1実施形態における表示装置に表示された表示例を示す図である。図6は、本発明のロボットシステムの第1実施形態におけるロボットの可動部の先端部の斜視図である。図7は、本発明のロボットシステムの第1実施形態におけるロボットの可動部の先端部の斜視図である。図8は、本発明のロボットシステムの第1実施形態におけるロボットの可動部の先端部の斜視図である。図9は、座標系を説明するための図である。なお、図2では、力検出装置の図示は省略されている。
【0036】
また、以下では、説明の都合上、図1および図2中の上側を「上」または「上方」、下側を「下」または「下方」と言う。また、図1および図2中の基台側を「基端」または「上流」、その反対側を「先端」または「下流」と言う。また、図1および図2中の上下方向が鉛直方向である。
【0037】
また、本明細書において、「水平」とは、完全に水平な場合のみならず、水平に対して±5°以内で傾斜している場合も含む。同様に、本明細書において、「鉛直」とは、完全に鉛直な場合のみならず、鉛直に対して±5°以内で傾斜している場合も含む。また、本明細書において、「平行」とは、2つの線(軸を含む)または面が、互いに完全な平行である場合のみならず、±5°以内で傾斜している場合も含む。また、本明細書において、「直交」とは、2つの線(軸を含む)または面が、互いに完全な直交である場合のみならず、±5°以内で傾斜している場合も含む。
【0038】
図10に示すシミュレーション装置5は、仮想空間上で仮想ロボット1Aの動作のシミュレーションを行う装置、すなわち、表示装置6に表示された仮想可動部30Aを備える仮想ロボット1Aの動作(制御)等を行う装置である。この仮想空間は、本実施形態では、3次元の仮想空間であるが、これに限定されるものではない。また、図3に示すロボット制御装置20は、必要に応じてシミュレーション装置5のシミュレーションの結果(シミュレーション結果)に基づいて、ロボット1を制御する。
【0039】
なお、仮想ロボット1Aの各部の符号は、それぞれ、実際のロボット1の対応する各部の符号の後に「A」を付けて表記する。また、仮想ロボット1Aの各部の名称は、それぞれ、ロボット1の対応する各部の名称の前に「仮想」を付けて表記する。また、仮想ロボット1Aの説明は、ロボット1の説明で代用する。
【0040】
図1および図3に示すロボットシステム100は、ロボット1と、ロボット1を制御するロボット制御装置20と、表示装置6(表示部)と、図示しない入力装置(入力部)とを備えている。このロボットシステム100の用途は特に限定されず、ロボットシステム100は、例えば、電子部品および電子機器等のワーク(対象物)の保持、搬送、組立および検査等の各作業で用いることができる。
【0041】
また、ロボット1とロボット制御装置20とは、ケーブルで電気的に接続(以下、単に「接続」とも言う)され、また、表示装置6とロボット制御装置20とは、ケーブルで電気的に接続されている。
【0042】
なお、ロボット1とロボット制御装置20とは、有線方式に限らず、例えば、ケーブルを省略し、無線方式で通信を行うようにしてもよい。また、ロボット制御装置20は、ロボット1にその一部または全部が内蔵されていてもよい。
【0043】
また、表示装置6とロボット制御装置20とは、有線方式に限らず、例えば、ケーブルを省略し、無線方式で通信を行うようにしてもよい。
【0044】
ロボット制御装置20は、例えば、プロセッサーの1例であるCPU(Central Processing Unit)が内蔵されたコンピューター(PC)等で構成することができる。このロボット制御装置20は、ロボット1の後述する第1駆動源401の駆動(作動)を制御する第1駆動源制御部201、第2駆動源402の駆動を制御する第2駆動源制御部202、第3駆動源403の駆動を制御する第3駆動源制御部203、第4駆動源404の駆動を制御する第4駆動源制御部204、第5駆動源405の駆動を制御する第5駆動源制御部205および第6駆動源406の駆動を制御する第6駆動源制御部206等を有する制御部207と、各情報を記憶する記憶部208とを備えている。
【0045】
制御部207は、ロボット1の駆動、すなわち、ロボットアーム10およびエンドエフェクター19等の駆動を制御する。この制御部207は、例えば、プログラム(OS等)がインストールされたコンピューター等で構成することができる。すなわち、制御部207は、例えば、CPU(プロセッサー)、RAM、プログラムが記憶されたROM等を備えている。また、制御部207の機能は、例えば、CPUにより各種プログラムを実行することにより実現することができる。
【0046】
表示制御部209は、表示装置6に各種の画像(ウィンドウ等の各種の画面等を含む)や文字等を表示させる機能を有している。すなわち、表示制御部209は、表示装置6の駆動を制御する。この表示制御部209の機能は、例えば、GPU(プロセッサー)等により実現することができる。
【0047】
記憶部208は、各種の情報(データやプログラム等を含む)を記憶する。この記憶部208は、例えば、RAM、ROM等の半導体メモリー、ハードディス装置、外部記憶装置(図示せず)等で構成することができる。
【0048】
表示装置6は、例えば、液晶ディスプレイ、ELディスプレイ等で構成されたモニター(図示せず)を備えており、例えば、各種の画像(ウィンドウ等の各種の画面等を含む)や文字等を表示する。
【0049】
なお、ロボット制御装置20は、ロボット制御装置20への各入力操作(入力)を行うことが可能な入力装置(図示せず)と有線または無線により通信可能になっている。入力装置は、例えば、マウス、キーボード等で構成することができる。ユーザーは、入力装置を操作することで、ロボット制御装置20に対して各種の処理等の指示(入力)を行うことができる。
【0050】
図1および図2に示すように、ロボット1は、基台11と、ロボットアーム10とを備えている。ロボットアーム10は、第1アーム12、第2アーム13、第3アーム14、第4アーム15、第5アーム17および第6アーム18と、第1駆動源401、第2駆動源402、第3駆動源403、第4駆動源404、第5駆動源405および第6駆動源406とを備えている。また、第5アーム17および第6アーム18によりリスト16が構成され、第6アーム18の先端には、例えば、ハンド等のエンドエフェクター19を着脱可能に取り付ける(接続する)ことができ、そのエンドエフェクター19で対象物8を把持(保持)することができる。エンドエフェクター19で把持(保持)する対象物8としては、特に限定されず、例えば、電子部品、電子機器等、各種のものが挙げられる。
【0051】
ここで、「エンドエフェクター19がロボットアーム10(第6アーム18)に取り付けられている(接続されている)」とは、エンドエフェクター19がロボットアーム10に直接取り付けられている場合に限らず、本実施形態のように、エンドエフェクター19が力検出装置7に取り付けられている場合等、ロボットアーム10に間接的に取り付けられている場合も含まれる。
【0052】
本実施形態では、ロボットアーム10の第6アーム18の先端には、力検出装置7(力検出部)が着脱可能に取り付けられており(接続されており)、力検出装置7には、エンドエフェクター19が着脱可能に取り付けられている(接続されている)。すなわち、第6アーム18とエンドエフェクター19との間には、力検出装置7が設けられている。また、ロボットアーム10と、力検出装置7と、エンドエフェクター19とにより、可動部30が構成される。
【0053】
なお、力検出装置7は、第6アーム18に着脱可能に接続されており、エンドエフェクター19は、力検出装置7に着脱可能に接続されているが、これに限らず、例えば、力検出装置7は、離脱不能に設けられていてもよい。また、力検出装置7は、ロボットアーム10(可動部30)ではなく、例えば、台(図示せず)等の外部に設けられていてもよい。この場合、台に着脱可能に設けられていてもよく、また、離脱不能に設けられていてもよい。
【0054】
力検出装置7は、エンドエフェクター19に加わる力(モーメントを含む)を検出する。力検出装置7としては、特に限定されないが、本実施形態では、互いに直交する3軸のそれぞれの軸方向の力成分(並進力成分)と、その3軸のそれぞれの軸周りの力成分(回転力成分)とを検出可能な6軸力覚センサー等が用いられる。なお、力検出装置7は、他の構成のものであってもよい。
【0055】
ロボット1は、基台11と、第1アーム12と、第2アーム13と、第3アーム14と、第4アーム15と、第5アーム17と、第6アーム18とが基端側から先端側に向ってこの順に連結された単腕の6軸垂直多関節ロボットである。以下では、第1アーム12、第2アーム13、第3アーム14、第4アーム15、第5アーム17、第6アーム18、リスト16をそれぞれ「アーム」とも言う。また、第1駆動源401、第2駆動源402、第3駆動源403、第4駆動源404、第5駆動源405および第6駆動源406をそれぞれ「駆動源」とも言う。なお、アーム12~15、17および18の長さは、それぞれ、特に限定されず、適宜設定可能である。
【0056】
基台11と第1アーム12とは、関節(ジョイント)171を介して連結されている。そして、第1アーム12は、基台11に対し、鉛直方向と平行な第1回動軸O1を回動中心とし、その第1回動軸O1周りに回動可能となっている。第1回動軸O1は、基台11の設置面である床101の上面の法線と一致している。また、第1回動軸O1は、ロボット1の最も上流側にある回動軸である。この第1アーム12は、モーター(第1モーター)401Mおよび減速機(図示せず)を有する第1駆動源401の駆動により回動する。また、モーター401Mは、モータードライバー301を介してロボット制御装置20により制御される。なお、前記減速機が省略されていてもよい。
【0057】
第1アーム12と第2アーム13とは、関節(ジョイント)172を介して連結されている。そして、第2アーム13は、第1アーム12に対し、水平方向と平行な第2回動軸O2を回動中心として回動可能となっている。第2回動軸O2は、第1回動軸O1に直交する軸と平行である。この第2アーム13は、モーター(第2モーター)402Mおよび減速機(図示せず)を有する第2駆動源402の駆動により回動する。また、モーター402Mは、モータードライバー302を介してロボット制御装置20により制御される。なお、前記減速機が省略されていてもよい。また、第2回動軸O2は、第1回動軸O1と直交していてもよい。
【0058】
第2アーム13と第3アーム14とは、関節(ジョイント)173を介して連結されている。そして、第3アーム14は、第2アーム13に対して水平方向と平行な第3回動軸O3を回動中心とし、その第3回動軸O3周りに回動可能となっている。第3回動軸O3は、第2回動軸O2と平行である。この第3アーム14は、モーター(第3モーター)403Mおよび減速機(図示せず)を有する第3駆動源403の駆動により回動する。また、モーター403Mは、モータードライバー303を介してロボット制御装置20により制御される。なお、前記減速機が省略されていてもよい。
【0059】
第3アーム14と第4アーム15とは、関節(ジョイント)174を介して連結されている。そして、第4アーム15は、第3アーム14に対し、第3アーム14の中心軸方向と平行な第4回動軸O4を回動中心とし、その第4回動軸O4周りに回動可能となっている。第4回動軸O4は、第3回動軸O3と直交している。この第4アーム15は、モーター(第4モーター)404Mおよび減速機(図示せず)を有する第4駆動源404の駆動により回動する。また、モーター404Mは、モータードライバー304を介してロボット制御装置20により制御される。なお、前記減速機が省略されていてもよい。また、第4回動軸O4は、第3回動軸O3に直交する軸と平行であってもよい。
【0060】
第4アーム15とリスト16の第5アーム17とは、関節(ジョイント)175を介して連結されている。そして、第5アーム17は、第4アーム15に対して第5回動軸O5を回動中心とし、その第5回動軸O5周りに回動可能となっている。第5回動軸O5は、第4回動軸O4と直交している。この第5アーム17は、モーター(第5モーター)405Mおよび減速機(図示せず)を有する第5駆動源405の駆動により回動する。また、モーター405Mは、モータードライバー305を介してロボット制御装置20により制御される。なお、前記減速機が省略されていてもよい。また、第5回動軸O5は、第4回動軸O4に直交する軸と平行であってもよい。
【0061】
リスト16の第5アーム17と第6アーム18とは、関節(ジョイント)176を介して連結されている。そして、第6アーム18は、第5アーム17に対して第6回動軸O6を回動中心とし、その第6回動軸O6周りに回動可能となっている。第6回動軸O6は、第5回動軸O5と直交している。この第6アーム18は、モーター(第6モーター)406Mおよび減速機(図示せず)を有する第6駆動源406の駆動により回動する。また、モーター406Mは、モータードライバー306を介してロボット制御装置20により制御される。なお、前記減速機が省略されていてもよい。また、第6回動軸O6は、第5回動軸O5に直交する軸と平行であってもよい。
【0062】
なお、リスト16は、第6アーム18として、円筒状をなすリスト本体161を有し、また、第5アーム17として、リスト本体161と別体で構成され、当該リスト本体161の基端部に設けられ、リング状をなす支持リング162を有している。
【0063】
駆動源401~406には、それぞれのモーターまたは減速機に、第1角度センサー411、第2角度センサー412、第3角度センサー413、第4角度センサー414、第5角度センサー415、第6角度センサー416が設けられている。これらの角度センサーとしては、特に限定されず、例えば、ロータリーエンコーダー等のエンコーダー等を用いることができる。これらの角度センサー411~416により、それぞれ、駆動源401~406のモーターまたは減速機の回転軸(回動軸)の回転(回動)角度を検出する。
【0064】
また、駆動源401~406のモーターとしては、それぞれ、特に限定されないが、例えば、ACサーボモーター、DCサーボモーター等のサーボモーターを用いるのが好ましい。
【0065】
ロボット1は、ロボット制御装置20と電気的に接続されている。すなわち、駆動源401~406、角度センサー411~416は、それぞれ、ロボット制御装置20と電気的に接続されている。
【0066】
そして、ロボット制御装置20は、アーム12~15、リスト16をそれぞれ独立して作動させることができる、すなわち、モータードライバー301~306を介して、駆動源401~406をそれぞれ独立して制御することができる。この場合、ロボット制御装置20は、角度センサー411~416、力検出装置7により検出を行い、その検出結果(検出情報)に基づいて、駆動源401~406の駆動、例えば、角速度や回転角度等をそれぞれ制御する。この制御プログラムは、ロボット制御装置20の記憶部208に予め記憶されている。
【0067】
本実施形態では、基台11は、ロボット1の鉛直方向の最も下方に位置し、設置スペースの床101等に固定(設置)される部分である。この固定方法としては、特に限定されず、例えば、本実施形態では、複数本のボルト111による固定方法を用いている。また、基台11が固定されている部分の床101は、水平面と平行な平面(面)であるが、これに限定されるものではない。
【0068】
基台11には、例えば、モーター401Mやモータードライバー301~306等が収納されている。
【0069】
アーム12~15は、それぞれ、中空のアーム本体2と、アーム本体2内に収納され、モーターを備える駆動機構3と、アーム本体2内を封止する封止手段4とを有している。なお、図面では、第1アーム12が有するアーム本体2、駆動機構3、封止手段4をそれぞれ「2a」、「3a」、「4a」とも表記し、第2アーム13が有するアーム本体2、駆動機構3、封止手段4をそれぞれ「2b」、「3b」、「4b」とも表記し、第3アーム14が有するアーム本体2、駆動機構3、封止手段4をそれぞれ「2c」、「3c」、「4c」とも表記し、第4アーム15が有するアーム本体2、駆動機構3、封止手段4をそれぞれ「2d」、「3d」、「4d」とも表記する。
【0070】
次に、ロボット制御装置20のロボット1の制御について説明する。
ロボット制御装置20の制御部207は、ロボット1の駆動を制御する。そして、制御部207は、ロボット1が動作する際、ロボット1の各情報(ログ記録項目)を求め、記憶部208に記憶する。この情報の記憶は、所定の時間間隔、本実施形態では、一定時間間隔で繰り返し行われる。
【0071】
記憶部208に記憶する情報(ログ記録項目)としては、例えば、対象物8の第2の点92(図8参照)の位置姿勢情報、制御点96(ツール制御点)(図7参照)の位置姿勢情報、対象物8の第2の点92に加わる力の情報、関節フラグに関する情報、作業ステップID、入出力情報(例えば、入力ビット1)、ローカル座標設定番号、ツール設定番号等が挙げられる。
【0072】
具体例を挙げると、本実施形態では、図5に示すように、第2の点92に加わる並進力(X軸方向)[N]、並進力(Y軸方向)[N]、並進力(Z軸方向)[N]、回転力(X軸周り)[N・mm]、回転力(Y軸周り)[N・mm]、回転力(Z軸周り)[N・mm]、並進力(大きさ)[N]、回転力(大きさ)[N・mm]、第2の点92の位置(X)、第2の点92の位置(Y)、第2の点92の位置(Z)、第2の点92の姿勢(W:X軸周り)、第2の点92の姿勢(V:Y軸周り)、第2の点92の姿勢(U:Z軸周り)、第1アーム12の関節角度(アーム関節角度)[°]、第2アーム13の関節角度[°]、第3アーム14の関節角度[°]、第4アーム15の関節角度[°]、第5アーム17の関節角度[°]、第6アーム18の関節角度[°]、関節フラグに関する情報(図示せず)、作業ステップID、入力ビット1、ローカル座標設定番号、ツール設定番号等が挙げられる。また、これらの情報は、経過時間に対応させて記憶する。なお、本明細書では、X軸回り(X軸回りの方向)をW軸方向、Y軸回り(Y軸回りの方向)をV軸方向、Z軸回り(Z軸回りの方向)をU軸方向とし、ロール(U軸)・ピッチ(V軸)・ヨー(W軸)の関係で以て制御点96における姿勢を表現するものとする。また、これらは、それぞれ、簡略化してアルファベットのみで表示することもある。
【0073】
また、記憶部208に記憶されたロボット1の各情報のうちの所定の情報は、必要に応じて表示装置6に表示される。表示の形態としては、特に限定されないが、本実施形態では、図5に示すように、前記各情報を経過時間に対応させて一覧で(表として)表示する。
【0074】
まず、図6図8に示すように、ロボット1の可動部30には、第1の点91、第2の点92および制御点96が設定されている。
【0075】
第1の点91は、ロボットアーム10のうちのいずれかの点(部分)であればよく、本実施形態では、例えば、第6アーム18の先端の中心(中央)に設定される。
【0076】
また、第2の点92は、対象物8のうちのいずれかの点(部分)であればよい。また、第2の点92は、制御点96とは独立して設定される。これにより、制御点96を変更した場合、制御点96の位置姿勢情報は変更されるが、第2の点92の位置姿勢情報は変更されない。このため、ロボット1が行った動作を適確に把握することができる。本実施形態では、第2の点92は、例えば、対象物8の先端の角部に設定される。なお、第2の点92の設定箇所の前記角部以外の例としては、例えば、対象物8の先端の中心(中央)等が挙げられる。また、第2の点92の数は、本実施形態では1つであるが、複数であってもよい。
【0077】
また、制御点96(ツール制御点)は、エンドエフェクター19のうちのいずれかの点(部分)であればよく、本実施形態では、例えば、エンドエフェクター19の先端の中心(中央)に設定される。
【0078】
また、第1の点91の位置姿勢情報とは、第1の点91の位置の情報、すなわち、X軸方向の位置(X軸の座標)、Y軸方向の位置(Y軸の座標)およびZ軸方向の位置(Z軸の座標)の情報と、第1の点91の姿勢の情報、すなわち、U軸方向の位置(Z軸周りの回転角度)、V軸方向の位置(Y軸周りの回転角度)およびW軸方向の位置(X軸周りの回転角度)の情報とを含む情報を言う。第2の点92の位置姿勢情報、制御点96の位置姿勢情報、後述する第3の点93の位置姿勢情報についても同様である。
【0079】
また、第1の点91の位置姿勢情報は、第1アーム12の関節角度と、第2アーム13の関節角度と、第3アーム14の関節角度と、第4アーム15の関節角度と、第5アーム17の関節角度と、第6アーム18の関節角度とに基づいて、順運動学により求めることができる。制御点96の位置姿勢情報についても同様である。
【0080】
また、第1の点91に対する第2の点92の相対位置姿勢情報とは、第1の点91の位置を基準(原点)としたときの第2の点92の位置(第1の点91に対する第2の点92の相対的な位置)の情報、すなわち、X軸方向の位置、Y軸方向の位置およびZ軸方向の位置の情報と、第1の点91の姿勢を基準(原点)としたときの第2の点92の姿勢(第1の点91に対する第2の点92の相対的な姿勢)の情報、すなわち、U軸方向の位置、V軸方向の位置およびW軸方向の位置の情報とを含む情報を言う。
【0081】
また、第1の点91に対する第2の点92の相対位置姿勢情報(以下、単に「第2の点92の相対位置姿勢情報」とも言う)は、既知の情報であり、予め、記憶部208に記憶される。これにより、第2の点92の位置姿勢情報は、第1の点91の位置姿勢情報と、第2の点92の相対位置姿勢情報とに基づいて求めることができる。制御部207は、ロボット1が動作する際、ロボットアーム10の第1の点91の位置姿勢情報と、第1の点91に対する対象物8の第2の点92の相対位置姿勢情報とに基づいて、第2の点92の位置姿勢情報を求める。
【0082】
また、第1の点91の位置姿勢情報、第2の点92の位置姿勢情報、第2の点92の相対位置姿勢情報は、それぞれ、図9に示すベース座標系31を基準として求められる。ベース座標系31は、ロボット1の基台11が設置された床101と平行なX軸およびY軸と、床101に直交するZ軸とを有する3次元のローカル座標系である。このベース座標系31の原点の位置は、特に限定されないが、例えば、基台11の下端面の中心等に設定される(図9では、ベース座標系31は、他の位置に図示されている)。
【0083】
また、第1の点91の位置姿勢情報、第2の点92の位置姿勢情報、第2の点92の相対位置姿勢情報は、それぞれ、ベース座標系31と異なる図9に示すローカル座標系32を基準として求めるようにしてもよい。ローカル座標系32は、ロボット1が作業を行う作業台41の作業面42と平行なX軸およびY軸と、作業面42に直交するZ軸とを有する3次元座標系である。このローカル座標系32の原点の位置は、特に限定されないが、例えば、作業台41の作業面42の中心等に設定される(図9では、ベース座標系31は、他の位置に図示されている)。この構成は、例えば、作業台41の作業面42が床101に対して傾斜している場合に有効である。なお、複数の作業台があり、それらの作業面が異なる傾斜角度を有している場合に、それぞれの作業面にローカル座標系を設定してもよい。
【0084】
また、関節フラグに関する情報としては、例えば、第1アーム12の関節についてのフラグ(情報)である「J1Flag」と、第4アーム15の関節についてのフラグ(情報)である「J4Flag」と、第6アーム18の関節についてのフラグ(情報)である「J6Flag」等が挙げられる。この関節フラグに関する情報は、図5に図示されていないが、経過時間に対応させて一覧で(表として)表示することが好ましい。
【0085】
ここで、1例を挙げると、J1Flagについては、第1アーム12の関節角度が、-90°よりも大きく、270°以下の場合は、「0」とされ、第1アーム12の関節角度が、-270°よりも大きく、-90°以下、または、270°よりも大きく、450°以下の場合は、「1」とされる。
【0086】
また、J4Flagについては、第4アーム15の関節角度が、-180°よりも大きく、180°以下の場合は、「0」とされ、第4アーム15の関節角度が、-180°以下、または、180°よりも大きい場合は、「1」とされる。
【0087】
また、J6Flagについては、第6アーム18の関節角度が、-180°よりも大きく、180°以下の場合は、「0」とされ、第6アーム18の関節角度が、-360°よりも大きく、-180°以下、または、180°よりも大きく、360°以下の場合は、「1」とされる。
【0088】
また、作業ステップIDとは、ロボット1が行う作業や作業の工程を識別するための符号である。
【0089】
また、ローカル座標設定番号とは、複数のローカル座標が記憶部208に記憶されている場合に(単数のローカル座標の場合もある)、各ローカル座標のうちから所定のローカル座標を特定(選択)するために、各ローカル座標に対応付けられている番号である。
【0090】
また、ツール設定番号とは、複数のツール位置姿勢が記憶部208に記憶されている場合に(単数のツールの場合もある)、各ツールのうちから所定のツールを特定(選択)するために、各ツールに対応付けられている番号である。また、ツール座標とは、可動部30に設定される、第1の点91を基準とし、第1の点91から位置、姿勢がシフトした点を原点とした座標である。
【0091】
次に、ロボット制御方法について説明するとともに、図4に示すフローチャートに基づいて、ロボット制御装置20のロボット1の制御について説明する。
【0092】
まず、ロボット制御方法は、ロボット1が動作する際、ロボットアーム10の第1の点91の位置姿勢情報と、第1の点91に対する対象物8の第2の点92の相対位置姿勢情報とに基づいて、第2の点92の位置姿勢情報を求め、第2の点92の位置姿勢情報を記憶部208に記憶させる工程を有する。記憶部208に記憶された第2の点92の位置姿勢情報は、前述したように、記憶部208に記憶されたロボット1の他の情報とともに、必要に応じて表示装置6に表示される。
【0093】
次に、ロボット1が動作する際のロボット制御装置20の制御部207のロボット1の制御について説明する。
【0094】
図4に示すように、まず、制御部207は、ロボットアーム10の第1の点91の位置姿勢情報と、第1の点91に対する対象物8の第2の点92の相対位置姿勢情報とに基づいて、第2の点92の位置姿勢情報を求め、その第2の点92の位置姿勢情報を記憶部208に記憶する(ステップS101)。第2の点92の位置姿勢情報は、第2の点92の位置(X)、第2の点92の位置(Y)、第2の点92の位置(Z)、第2の点92の姿勢(X)、第2の点92の姿勢(Y)、第2の点92の姿勢(Z)である。
【0095】
次いで、制御部207は、力検出装置7により検出された力情報に基づいて、第2の点92に加わる並進力(X軸方向)、並進力(Y軸方向)、並進力(Z軸方向)、回転力(X軸周り)、回転力(Y軸周り)、回転力(Z軸周り)を求め、その情報(力の情報)を記憶部208に記憶する(ステップS102)。
【0096】
次いで、制御部207は、力検出装置7により検出された力情報に基づいて、第2の点92に加わる並進力(大きさ)、回転力(大きさ)を求め、その情報(力の情報)を記憶部208に記憶する(ステップS103)。
【0097】
次いで、制御部207は、第1角度センサー411、第2角度センサー412、第3角度センサー413、第4角度センサー414、第5角度センサー415、第6角度センサー416により検出された角度情報に基づいて、第1アーム12の関節角度、第2アーム13の関節角度、第3アーム14の関節角度、第4アーム15の関節角度、第5アーム17の関節角度、第6アーム18の関節角度を求め、その情報を記憶部208に記憶する(ステップS104)。
【0098】
次いで、制御部207は、作業ステップIDを記憶部208に記憶する(ステップS105)。
【0099】
次いで、制御部207は、入力ビット1を記憶部208に記憶する(ステップS106)。
【0100】
次いで、制御部207は、ローカル座標設定番号を記憶部208に記憶する(ステップS107)。
【0101】
次いで、制御部207は、ツール設定番号を記憶部208に記憶する(ステップS108)。
【0102】
このステップS101~ステップS108は、ロボット1が動作している間、一定時間間隔で繰り返し行われる。
【0103】
なお、ステップS101~ステップS108の順序は、前記の順序に限定されず、入れ換えが可能である。
【0104】
また、制御部207が関節フラグに関する情報を記憶部208に記憶するステップが設けられていてもよい。
【0105】
図5に示すように、記憶部208に記憶された各情報は、表示制御部209の制御により、表示装置6に経過時間に対応させて一覧で表示される。これにより、第2の点92の位置姿勢情報が表示されることで、ロボット1が行った動作を容易かつ迅速に把握することができる。特に、ロボット工学に詳しくない者は、制御点96の位置姿勢情報に比べて第2の点92の位置姿勢情報は、対象物8の形状等に基づいているためロボット1が行った動作を容易かつ迅速に把握することができる。なお、この表示は、ユーザーが図示しない入力装置を操作することにより行われるようになっていてもよく、また、自動的に行われるようになっていてもよい。
【0106】
また、ロボット制御装置20は、ロボット1の制御において、通常の制御の他、次のような制御を行うことが可能に構成されている。
【0107】
すなわち、ロボット制御装置20の制御部207は、記憶部208に記憶された各情報のうちの所定の情報に基づいて、ロボット1の駆動を制御する。以下、具体的な構成例を挙げて説明する。
【0108】
(構成1)
制御部207は、記憶部208に記憶されたロボットアーム10の関節角度情報に基づいてロボット1の駆動を制御する。これにより、ロボット1が行った動作を容易かつ適確に再現することができる。
【0109】
(構成2)
制御部207は、第2の点92の位置姿勢情報と、ロボットアーム10の関節角度情報とに基づいて、第2の点92と異なる図8に示す第3の点93の位置姿勢情報を求める。そして、制御部207は、その第3の点93の位置姿勢情報を記憶部208に記憶する。この第3の点93の位置姿勢情報は、例えば、ロボット1が行った動作を把握する場合や、ロボット1が行った動作を再現する場合等に用いることができる。なお、第3の点93の数は、1つに限らず、複数であってもよい。
【0110】
(構成3)
制御部207のロボット1の制御では、ロボット1が動作する際、制御部207は、さらに、制御点96の位置姿勢情報を求め、その制御点96の位置姿勢情報を記憶部208に記憶してもよい。
【0111】
この構成3では、制御部207は、記憶部208に記憶された制御点96の位置姿勢情報に基づいてロボット1の駆動を制御することが可能である。したがって、制御部207は、記憶部208に記憶された制御点96の位置姿勢情報に基づいてロボット1の駆動を制御する。これにより、ロボット1が行った動作を容易かつ適確に再現することができる。
【0112】
(構成4)
制御部207は、記憶部208に記憶された制御点96の位置姿勢情報と、ロボットアーム10の関節フラグに関する情報とに基づいてロボット1の駆動を制御する。これにより、ロボット1が行った動作を容易かつ適確に再現することができる。
【0113】
なお、ロボット1の駆動の制御にロボットアーム10の関節フラグに関する情報を用いる構成は、他の構成にも適用することが可能である。
【0114】
以上説明したように、ロボットシステム100(ロボット制御装置20)によれば、表示装置6に第2の点92の位置姿勢情報を含む各情報が表示され、これにより、ロボット1が行った動作を容易かつ迅速に把握することができる。特に、ロボット工学に詳しくない者は、制御点96の位置姿勢情報に比べて第2の点92の位置姿勢情報は容易に把握でき、これにより、ロボット1が行った動作を容易かつ迅速に把握することができる。
【0115】
以上説明したように、ロボット制御装置20は、ロボットアーム10と、ロボットアーム10に着脱可能に取り付けられ、対象物8を保持するエンドエフェクター19と、力検出装置7と、を含む可動部30を有するロボット1を制御する制御部207を備えている。
【0116】
制御部207は、ロボット1(ロボットアーム10)が動作する際、ロボットアーム10の第1の点91の位置姿勢情報と、第1の点91に対する対象物8の第2の点92の相対位置姿勢情報とに基づいて、第2の点92の位置姿勢情報を求め、第2の点92の位置姿勢情報を記憶部208に記憶させる。
【0117】
このようなロボット制御装置20によれば、第2の点92の位置姿勢情報により、ロボット1が行った動作を容易かつ迅速に把握することができる。
【0118】
また、ロボット1が動作する際、制御部207は、力検出装置7により検出された力情報に基づいて、第2の点92に加わる力を求め、第2の点92に加わる力の情報を記憶部208に記憶させる。これにより、第2の点92に加わった力を把握することができる。
【0119】
また、ロボット制御装置20は、表示装置6の駆動を制御する表示制御部209を有し、表示制御部209は、記憶部208に記憶された第2の点92の位置姿勢情報と、記憶部208に記憶された第2の点92に加わる力の情報とを一覧で表示装置6に表示させる。これにより、表示装置6に表示された情報を見ることで、ロボット1が行った動作およびその動作の際に可動部30に加わった力を容易かつ迅速に把握することができる。
【0120】
また、第2の点92は、エンドエフェクター19に設定される制御点96とは独立して設定される。これにより、制御点96を変更した場合、制御点96の位置姿勢情報は変更されるが、第2の点92の位置姿勢情報は変更されない。このため、ロボット1が行った動作を適確に把握することができる。
【0121】
また、第2の点92の位置姿勢情報は、ロボット1のベース座標系31と異なるローカル座標系32を基準として求めたものである。これにより、第2の点92の位置、姿勢を容易に把握することができる。
【0122】
また、制御部207は、第2の点92の位置姿勢情報と、ロボットアーム10の関節角度情報とに基づいて、第3の点93の位置姿勢情報を求める。これにより、ロボット1が行った動作をより容易かつ迅速に把握することができる。
【0123】
また、ロボット1が動作する際、制御部207は、エンドエフェクター19に設定される制御点96の位置姿勢情報を記憶部208に記憶させ、記憶部208に記憶された制御点96の位置姿勢情報に基づいてロボット1を制御する。これにより、ロボット1を動作させた場合、容易に、その動作の少なくとも一部を再現することができる。
【0124】
また、ロボット1が動作する際、制御部207は、ロボットアーム10の関節角度情報を記憶部208に記憶させ、記憶部208に記憶されたロボットアーム10の関節角度情報に基づいてロボット1を制御する。これにより、ロボット1を動作させた場合、容易に、その動作の少なくとも一部を再現することができる。
【0125】
また、ロボット1が動作する際、制御部207は、関節フラグに関する情報を記憶部208に記憶させ、記憶部208に記憶された関節フラグに関する情報に基づいてロボット1を制御する。これにより、ロボット1を動作させた場合、容易に、その動作の少なくとも一部を再現することができる。
【0126】
また、ロボット制御方法は、ロボットアーム10と、ロボットアーム10に着脱可能に取り付けられ、対象物8を保持するエンドエフェクター19と、力検出装置7と、を含む可動部30を有するロボット1を制御するロボット制御方法である。
【0127】
ロボット制御方法は、ロボット1が動作する際、ロボットアーム10の第1の点91の位置姿勢情報と、第1の点91に対する対象物8の第2の点92の相対位置姿勢情報とに基づいて、第2の点92の位置姿勢情報を求め、第2の点92の位置姿勢情報を記憶部208に記憶させる工程を有している。
【0128】
このようなロボット制御方法によれば、第2の点92の位置姿勢情報により、ロボット1が行った動作を容易かつ迅速に把握することができる。
【0129】
また、ロボットシステム100は、ロボットアーム10と、ロボットアーム10に着脱可能に取り付けられ、対象物8を保持するエンドエフェクター19と、力検出装置7と、を含む可動部30を有するロボット1と、ロボット1を制御するロボット制御装置20とを備えている。
【0130】
このようなロボットシステム100によれば、第2の点92の位置姿勢情報により、ロボット1が行った動作を容易かつ迅速に把握することができる。
【0131】
<シミュレーション装置の実施形態>
図10は、本発明のシミュレーション装置の実施形態を示すブロックである。図11は、図10に示すシミュレーション装置のシミュレーションにおいて表示装置に表示された仮想ロボットを示す斜視図である。図12は、図10に示すシミュレーション装置のシミュレーションにおいて表示装置に表示された仮想ロボットの仮想可動部の先端部の斜視図である。図13は、図10に示すシミュレーション装置のシミュレーションにおいて表示装置に表示された仮想ロボットの仮想可動部の先端部の斜視図である。
【0132】
以下、シミュレーション装置の実施形態について説明するが、前述した実施形態との相違点を中心に説明し、同様の事項については、その説明を省略する。
まず、仮想ロボット1Aについて簡単に説明する。
【0133】
図11に示すように、仮想ロボット1Aは、前述したロボット1と同様であり、仮想床101Aに設置(固定)された仮想基台11Aと、仮想ロボットアーム10Aとを備えている。また、仮想ロボットアーム10Aは、回動可能に設けられた複数のアーム、本実施形態では、仮想第1アーム12A、仮想第2アーム13A、仮想第3アーム14A、仮想第4アーム15A、仮想第5アーム17Aおよび仮想第6アーム18Aを備えている。仮想第5アーム17Aおよび仮想第6アーム18Aにより仮想リスト16Aが構成される。また、仮想ロボットアーム10Aは、これらのアームを駆動する複数の駆動源、本実施形態では、6つの駆動源(図示せず)を備えている。
【0134】
また、本実施形態では、仮想ロボットアーム10Aの仮想第6アーム18Aの先端には、仮想力検出装置7Aが着脱可能に取り付けられており(接続されており)、仮想力検出装置7Aには、仮想エンドエフェクター19Aが着脱可能に取り付けられている(接続されている)。また、仮想ロボットアーム10Aと、仮想力検出装置7Aと、仮想エンドエフェクター19Aとにより、仮想可動部30Aが構成される。このような仮想可動部30Aでは、仮想エンドエフェクター19Aで仮想対象物8Aを把持(保持)することができる。
【0135】
シミュレーション装置5は、例えば、プロセッサーの1例であるCPU(Central Processing Unit)が内蔵されたコンピューター(PC)等で構成することができる。図10に示すように、シミュレーション装置5は、各制御を行う制御部51と、各情報を記憶する記憶部52と、受付部53とを備えている。このシミュレーション装置5は、表示装置6に表示された仮想空間上で仮想ロボット1Aの動作等(シミュレーション)を行う装置であり、その仮想空間上で仮想ロボット1Aの駆動を制御する。
【0136】
制御部51は、表示装置6に各種の画像(仮想ロボット1Aの他、ウィンドウ等の各種の画面等を含む)や文字等を表示させる機能を有しており、例えば、仮想ロボット1Aの駆動、すなわち、仮想ロボットアーム10Aおよび仮想エンドエフェクター19A等の駆動を制御する。この制御部51は、例えば、プログラム(OS等)がインストールされたコンピューターやGPU等で構成することができる。すなわち、制御部51は、例えば、CPU(プロセッサー)、GPU(プロセッサー)、RAM、プログラムが記憶されたROM等を備えている。また、制御部51の機能は、例えば、CPUにより各種プログラムを実行することにより実現することができる。
【0137】
また、記憶部52は、各種の情報(データやプログラム等を含む)を記憶する。この記憶部52は、例えば、RAM、ROM等の半導体メモリー、ハードディス装置、外部記憶装置等で構成することができる。
【0138】
また、受付部53は、入力装置21(入力部)からの入力等の各入力を受け付ける。この受付部53は、例えば、インターフェース回路等で構成することができる。
【0139】
また、シミュレーション装置5は、シミュレーションを示す画像等の各画像を表示可能な表示装置6と有線または無線により通信可能になっている。なお、表示装置6については、第1実施形態と同様であるので、その説明は省略する。
【0140】
また、シミュレーション装置5は、シミュレーション装置5への各入力操作(入力)を行うことが可能な入力装置21と有線または無線により通信可能になっている。入力装置21は、例えば、マウス、キーボード等で構成することができる。ユーザーは、入力装置21を操作することで、シミュレーション装置5に対して各種の処理等の指示(入力)を行うことができる。
【0141】
具体的には、ユーザーは、表示装置6に表示される各種画面(ウィンドウ等)に対して入力装置21のマウスでクリックする操作や、入力装置21のキーボードで文字や数字等を入力する操作により、シミュレーション装置5に対する指示を行うことができる。
【0142】
また、表示装置6と入力装置21とは、別体であるが、これに限らず、表示装置6が入力装置21を備える構成としてもよい。すなわち、表示装置6および入力装置21の代わりに、表示装置6および入力装置21を兼ね備えた表示入力装置(図示せず)を設けてもよい。表示入力装置としては、例えば、タッチパネル(静電式タッチパネルや感圧式タッチパネル)等を用いることができる。これにより、表示装置6の他に、別途入力装置21を用意する必要がなく、利便性が良い。
【0143】
また、シミュレーション装置5と、表示装置6と、入力装置21とにより、シミュレーションシステムが構成される。なお、表示装置6に代えて、シミュレーション装置5が表示装置(表示部)を備えていてもよく、また、表示装置6とは別に、シミュレーション装置5が表示装置(表示部)を備えていてもよい。また、入力装置21に代えて、シミュレーション装置5が入力装置21(入力部)を備えていてもよく、また、入力装置21とは別に、シミュレーション装置5が入力装置(入力部)を備えていてもよい。
【0144】
このようなシミュレーション装置5が行うシミュレーションは、前記ロボット制御装置20およびロボット1において説明した制御(動作)と同様である。このシミュレーション装置5のシミュレーションは、表示装置6に表示される。以下、具体的な構成例を挙げて簡単に説明する。
【0145】
(構成1)
シミュレーション装置5の制御部51は、表示装置6に表示された仮想空間上で仮想ロボット1Aの駆動を制御する(動作を行う)。そして、制御部51は、仮想ロボット1Aが動作する際、仮想ロボット1Aの各情報(ログ記録項目)を求め、記憶部52に記憶する。この情報の記憶は、所定の時間間隔、本実施形態では、一定時間間隔で繰り返し行われる。なお、記憶部52に記憶する情報(ログ記録項目)としては、例えば、前述したロボット1の場合と同様であり、各情報は、経過時間に対応させて記憶する。
【0146】
また、記憶部52に記憶された仮想ロボット1Aの各情報のうちの所定の情報は、必要に応じて表示装置6に表示される。表示の形態としては、特に限定されないが、本実施形態では、経過時間に対応させて一覧で表示する。これにより、第2の点92の位置姿勢情報が表示されることで、仮想ロボット1Aが行った動作を容易かつ迅速に把握することができる。特に、ロボット工学に詳しくない者は、制御点96の位置姿勢情報に比べて第2の点92の位置姿勢情報は容易に把握でき、これにより、仮想ロボット1Aが行った動作を容易かつ迅速に把握することができる。
【0147】
(構成2)
制御部51は、記憶部52に記憶された仮想ロボットアーム10Aの各関節角度の情報に基づいて仮想ロボット1Aの駆動を制御する。これにより、シミュレーションにおいて仮想ロボット1Aが行った動作を容易かつ適確に再現することができる。
【0148】
(構成3)
制御部51は、第2の点92の位置姿勢情報と、仮想ロボットアーム10Aの各関節角度の情報とに基づいて、第3の点93の位置姿勢情報を求める。そして、制御部51は、その第3の点93の位置姿勢情報を記憶部52に記憶する。この第3の点93の位置姿勢情報は、例えば、仮想ロボット1Aが行った動作を把握する場合や、仮想ロボット1Aが行った動作を再現する場合等に用いることができる。なお、第3の点93の数は、1つに限らず、複数であってもよい。
【0149】
(構成4)
前述したように、仮想ロボット1Aが動作する際、制御部51は、仮想可動部30Aの所定の部分に加わる力、例えば、第2の点92に加わる力の情報は、記憶部52に記憶される。制御部51は、仮想ロボット1Aが行った前記動作を再現する際、表示装置6に、仮想ロボット1Aとともに、記憶部52に記憶された力の情報を矢印61、62、63、64で表示させる(図12図13参照)。この場合、矢印61は、X軸方向の並進力、矢印62は、Y軸方向の並進力、矢印63は、Z軸方向の並進力、矢印64は、Z軸周りの回転力を示している。また、図12に示す構成例では、矢印61~64の方向が力の方向であり、矢印61~64の大きさ、具体的には、矢印61~64の長さが力の大きさに対応している。また、図13に示す構成例では、矢印61~64の方向が力の方向であり、矢印61~64の大きさ、具体的には、矢印61~64の太さが力の大きさに対応している。
【0150】
このように力の情報を矢印61~64で表示することにより、数字で表示する場合に比べて、その力の情報を容易かつ迅速に把握することができる。なお、仮想可動部30Aの所定の部分は、前記第2の点92に限らず、適宜設定可能であり、例えば、第2の点92から所定距離、離間した点等が挙げられる。
【0151】
(構成5)
制御部51の仮想ロボット1Aの制御では、仮想ロボット1Aが動作する際、制御部51は、さらに、制御点96の位置姿勢情報を求め、その制御点96の位置姿勢情報を記憶部52に記憶してもよい。
【0152】
この構成5では、制御部51は、記憶部52に記憶された制御点96の位置姿勢情報に基づいて仮想ロボット1Aの駆動を制御することが可能である。したがって、制御部51は、記憶部52に記憶された制御点96の位置姿勢情報に基づいて仮想ロボット1Aの駆動を制御する。これにより、シミュレーションにおいて仮想ロボット1Aが行った動作を容易かつ適確に再現することができる。
【0153】
(構成6)
制御部51は、記憶部52に記憶された制御点96の位置姿勢情報と、仮想ロボットアーム10Aの関節フラグに関する情報とに基づいて仮想ロボット1Aの駆動を制御する。これにより、シミュレーションにおいて仮想ロボット1Aが行った動作を容易かつ適確に再現することができる。
【0154】
なお、仮想ロボット1Aの駆動の制御に仮想ロボットアーム10Aの関節フラグに関する情報を用いる構成は、他の構成にも適用することが可能である。
【0155】
次に、別の形態について説明する。
まず、ロボット制御装置20の記憶部208に記憶された各情報は、シミュレーション装置5の記憶部52に記憶され、シミュレーション装置5において必要時に使用される。
【0156】
シミュレーション装置5の制御部51は、記憶部52に記憶された各情報のうちの所定の情報に基づいて、仮想ロボット1Aの駆動を制御する。このシミュレーション装置5のシミュレーションは、表示装置6に表示される。以下、具体的な構成例を挙げて説明する。
【0157】
(構成1)
制御部51は、表示装置6に仮想ロボット1Aを表示させ、記憶部52に記憶された制御点96の位置姿勢情報に基づいて仮想ロボット1Aの駆動を制御する。これにより、ロボット1が行った動作を容易かつ適確にシミュレーションで再現することができる。
【0158】
(構成2)
制御部51は、表示装置6に仮想ロボット1Aを表示させ、記憶部52に記憶されたロボットアーム10の各関節角度の情報に基づいて仮想ロボット1Aの駆動を制御する。これにより、ロボット1が行った動作を容易かつ適確にシミュレーションで再現することができる。
【0159】
(構成3)
制御部51は、表示装置6に仮想ロボット1Aを表示させ、記憶部52に記憶された制御点96の位置姿勢情報と、ロボットアーム10の関節フラグに関する情報とに基づいて仮想ロボット1Aの駆動を制御する。これにより、ロボット1が行った動作を容易かつ適確にシミュレーションで再現することができる。
【0160】
なお、仮想ロボット1Aの駆動の制御にロボットアーム10の関節フラグに関する情報を用いる構成は、他の構成にも適用することが可能である。
【0161】
(構成4)
前述したように、ロボット1が動作する際、可動部30の所定の部分に加わる力、例えば、第2の点92に加わる力の情報は、記憶部208に記憶され、その力の情報は、記憶部52に記憶される。制御部51は、シミュレーションにおいて、表示装置6に、仮想ロボット1Aとともに、記憶部52に記憶された力の情報を矢印61、62、63、64で表示させる(図12図13参照)。この矢印61~64での表示については、すでに説明済みであるので、その説明は省略する。
【0162】
このように力の情報を矢印61~64で表示することにより、数字で表示する場合に比べて、その力の情報を容易かつ迅速に把握することができる。なお、仮想可動部30Aの所定の部分は、前記第2の点92に限らず、適宜設定可能であり、例えば、第2の点92から所定距離、離間した点等が挙げられる。
【0163】
以上説明したように、シミュレーション装置5によれば、表示装置6に第2の点92の位置姿勢情報を含む各情報が表示され、これにより、仮想ロボット1Aが行った動作を容易かつ迅速に把握することができる。特に、ロボット工学に詳しくない者は、制御点96の位置姿勢情報に比べて第2の点92の位置姿勢情報は容易に把握でき、これにより、仮想ロボット1Aが行った動作を容易かつ迅速に把握することができる。
【0164】
また、シミュレーション装置5のシミュレーションの結果は、ロボット1の制御において利用することが可能である。すなわち、ロボット制御装置20は、シミュレーション装置5のシミュレーションの結果に基づいてロボット1を制御することが可能である。
【0165】
以上説明したように、シミュレーション装置5は、表示装置6に表示された仮想空間上で仮想ロボット1Aの動作を行う装置である。
【0166】
仮想ロボット1Aは、仮想ロボットアーム10Aと、仮想ロボットアーム10Aに着脱可能に取り付けられ、仮想対象物8Aを保持する仮想エンドエフェクター19Aと、仮想力検出装置7Aと、を含む仮想可動部30Aを有している。
【0167】
シミュレーション装置5は、仮想ロボット1A(仮想ロボットアーム10A)が動作する際、仮想ロボットアーム10Aの第1の点91の位置姿勢情報と、第1の点91に対する仮想対象物8Aの第2の点92の相対位置姿勢情報とに基づいて、第2の点92の位置姿勢情報を求め、第2の点92の位置姿勢情報を記憶部52に記憶させる制御部51を備えている。
【0168】
このようなシミュレーション装置5によれば、第2の点92の位置姿勢情報により、仮想ロボット1Aが行った動作を容易かつ迅速に把握することができる。
【0169】
また、仮想ロボット1Aが動作する際、制御部51は、仮想可動部30Aの所定の部分に加わる力の情報を記憶部52に記憶させ、表示装置6に、仮想ロボット1Aとともに、記憶部52に記憶された力の情報を矢印61~64で表示させる。
【0170】
これにより、矢印61~64の表示により、仮想可動部30Aの所定の部分に加わる力を容易かつ迅速に把握することができる。
【0171】
<第2実施形態>
以下、第2実施形態について説明するが、前述した実施形態との相違点を中心に説明し、同様の事項については、その説明を省略する。
【0172】
第2実施形態では、ロボット制御装置20は、シミュレーション装置5の機能を有しており、例えば、表示装置6に仮想ロボット1A等(図11参照)を表示させることができるようになっている。
【0173】
第2実施形態では、ロボット制御装置20の制御部207は、まず、前述した第1実施形態と同様に、ロボット1が動作する際、可動部30の所定の部分に加わる力、例えば、第2の点92に加わる力の情報を記憶部208に記憶する。
【0174】
そして、制御部207は、表示装置6に、仮想ロボット1Aとともに、記憶部52に記憶された力の情報を矢印61、62、63、64で表示させる(図12図13参照)。この矢印61~64での表示については、すでに説明済みであるので、その説明は省略する。
【0175】
このように力の情報を矢印61~64で表示することにより、数字で表示する場合に比べて、その力の情報を容易かつ迅速に把握することができる。なお、仮想可動部30Aの所定の部分は、前記第2の点92に限らず、適宜設定可能であり、例えば、第2の点92から所定距離、離間した点等が挙げられる。
【0176】
以上のような第2実施形態によっても、前述した第1実施形態と同様の効果を発揮することができる。
【0177】
以上、本発明のロボット制御装置、ロボット制御方法、ロボットシステムおよびシミュレーション装置を、図示の実施形態に基づいて説明したが、本発明はこれに限定されるものではなく、各部の構成は、同様の機能を有する任意の構成のものに置換することができる。また、他の任意の構成物や工程が付加されていてもよい。
【0178】
また、本発明は、前記各実施形態のうちの、任意の2以上の構成(特徴)を組み合わせたものであってもよい。
【0179】
また、前記実施形態では、記憶部は、ロボット制御装置の構成要素であるが、本発明では、記憶部は、ロボット制御装置の構成要素ではなく、ロボット制御装置とは別に設けられていてもよい。
【0180】
また、前記実施形態では、記憶部は、シミュレーション装置の構成要素であるが、本発明では、記憶部は、シミュレーション装置の構成要素ではなく、シミュレーション装置とは別に設けられていてもよい。
【0181】
また、前記実施形態では、ロボットの基台の固定箇所は、例えば、設置スペースにおける床であるが、本発明では、これに限定されず、この他、例えば、天井、壁、作業台、地上等が挙げられる。また、基台自体が移動可能であってもよい。
【0182】
また、本発明では、ロボットは、セル内に設置されていてもよい。この場合、ロボットの基台の固定箇所としては、例えば、セルの床部、天井部、壁部、作業台等が挙げられる。
【0183】
また、前記実施形態では、ロボット(基台)が固定される平面(面)である第1面は、水平面と平行な平面(面)であるが、本発明では、これに限定されず、例えば、水平面や鉛直面に対して傾斜した平面(面)でもよく、また、鉛直面と平行な平面(面)であってもよい。すなわち、第1回動軸は、鉛直方向や水平方向に対して傾斜していてもよく、また、水平方向と平行であってもよく、鉛直方向と平行であってもよい。
【0184】
また、前記実施形態では、ロボットアームの回動軸の数は、6つであるが、本発明では、これに限定されず、ロボットアームの回動軸の数は、例えば、2つ、3つ、4つ、5つまたは7つ以上でもよい。すなわち、前記実施形態では、アーム(リンク)の数は、6つであるが、本発明では、これに限定されず、アームの数は、例えば、2つ、3つ、4つ、5つ、または、7つ以上でもよい。この場合、例えば、前記実施形態のロボットにおいて、第2アームと第3アームとの間にアームを追加することにより、アームの数が7つのロボットを実現することができる。
【0185】
また、前記実施形態では、ロボットアームの数は、1つであるが、本発明では、これに限定されず、ロボットアームの数は、例えば、2つ以上でもよい。すなわち、ロボット(ロボット本体)は、例えば、双腕ロボット等の複数腕ロボットであってもよい。
【0186】
また、本発明では、ロボットは、他の形式のロボットであってもよい。具体例としては、例えば、脚部を有する脚式歩行(走行)ロボット、スカラーロボット等の水平多関節ロボット等が挙げられる。
【0187】
また、前記実施形態では、ロボット制御装置と、シミュレーション装置とは別の装置であるが、本発明では、これに限定されず、例えば、ロボット制御装置がシミュレーション装置の機能を有していてもよい。
【符号の説明】
【0188】
1…ロボット、1A…仮想ロボット、2…アーム本体、3…駆動機構、4…封止手段、5…シミュレーション装置、6…表示装置、7…力検出装置、7A…仮想力検出装置、8…対象物、8A…仮想対象物、10…ロボットアーム、10A…仮想ロボットアーム、11…基台、11A…仮想基台、12…第1アーム、12A…仮想第1アーム、13…第2アーム、13A…仮想第2アーム、14…第3アーム、14A…仮想第3アーム、15…第4アーム、15A…仮想第4アーム、16…リスト、16A…仮想リスト、17…第5アーム、17A…仮想第5アーム、18…第6アーム、18A…仮想第6アーム、19…エンドエフェクター、19A…仮想エンドエフェクター、20…ロボット制御装置、21…入力装置、30…可動部、30A…仮想可動部、31…ベース座標系、32…ローカル座標系、41…作業台、42…作業面、51…制御部、52…記憶部、53…受付部、61…矢印、62…矢印、63…矢印、64…矢印、91…第1の点、92…第2の点、93…第3の点、96…制御点、100…ロボットシステム、101…床、101A…仮想床、111…ボルト、161…リスト本体、162…支持リング、171…関節、172…関節、173…関節、174…関節、175…関節、176…関節、201…第1駆動源制御部、202…第2駆動源制御部、203…第3駆動源制御部、204…第4駆動源制御部、205…第5駆動源制御部、206…第6駆動源制御部、207…制御部、208…記憶部、209…表示制御部、301…モータードライバー、302…モータードライバー、303…モータードライバー、304…モータードライバー、305…モータードライバー、306…モータードライバー、401…第1駆動源、401M…モーター、402…第2駆動源、402M…モーター、403…第3駆動源、403M…モーター、404…第4駆動源、404M…モーター、405…第5駆動源、405M…モーター、406…第6駆動源、406M…モーター、411…第1角度センサー、412…第2角度センサー、413…第3角度センサー、414…第4角度センサー、415…第5角度センサー、416…第6角度センサー、O1…第1回動軸、O2…第2回動軸、O3…第3回動軸、O4…第4回動軸、O5…第5回動軸、O6…第6回動軸、S101…ステップ、S102…ステップ、S103…ステップ、S104…ステップ、S105…ステップ、S106…ステップ、S107…ステップ、S108…ステップ
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13