(57)【特許請求の範囲】
【請求項１】
複数のモジュールとしての機構ユニット（１３Ａ〜１３Ｃ）を組合せて構成されたロボット（１１）と、
前記ロボット（１１）を制御するロボット制御装置（１２）と、
前記機構ユニット（１３Ａ〜１３Ｃ）毎に設けられたメモリ（１６）と、を備え、
前記メモリ（１６）は、前記機構ユニット（１３Ａ〜１３Ｃ）の形状を表す形状モデル（１７）と、前記ロボット（１１）の動作速度に応じて定まる惰走距離の推定に使用される惰走距離推定用パラメータとを予め記憶しており、
各前記機構ユニット（１３Ａ〜１３Ｃ）の前記メモリ（１６）に記憶された前記形状モデル（１７）および前記惰走距離推定用パラメータが前記ロボット制御装置（１２）により読込まれるように構成されている、ロボットシステム（１０）。
【請求項２】
前記ロボット制御装置（１２）は、
各前記機構ユニット（１３Ａ〜１３Ｃ）の位置を取得するユニット位置取得部（２１）と、
前記ユニット位置取得部（２１）により取得される各前記機構ユニット（１３Ａ〜１３Ｃ）の位置と、各前記機構ユニット（１３Ａ〜１３Ｃ）の前記メモリ（１６）に記憶された形状モデル（１７）とから、前記ロボット（１１）の三次元モデル（２８）を生成するロボットモデル生成部（２２）と、
前記ロボット（１１）の動作制限領域（２９）を設定する設定部（２３）と、
前記ロボット（１１）の三次元モデル（２８）が前記動作制限領域（２９）と干渉するか否かを確認する干渉確認部（２４）と、を具備し、
前記干渉確認部（２４）により前記ロボット（１１）の三次元モデル（２８）が前記動作制限領域（２９）と干渉することが確認された場合には、前記ロボット（１１）への動力を遮断するか、または前記ロボット（１１）の動作速度を制限するように構成された、請求項１に記載のロボットシステム（１０）。
【請求項３】
前記ロボット制御装置（１２）は、
前記ユニット位置取得部（２１）により取得される各前記機構ユニット（１３Ａ〜１３Ｃ）の位置および動作速度と、各前記機構ユニット（１３Ａ〜１３Ｃ）の前記メモリ（１６）に記憶された前記惰走距離推定用パラメータとに基づき、各前記機構ユニット（１３Ａ〜１３Ｃ）の惰走距離を算出する惰走距離算出部（２５）と、
算出された各前記機構ユニット（１３Ａ〜１３Ｃ）の惰走距離に基づいて、前記ロボット（１１）の三次元モデル（２８）が惰走して停止するまでに仮想空間を占有する占有領域（３０）を算出する占有領域算出部（２６）をさらに具備し、
前記干渉確認部（２４）は、前記占有領域算出部（２６）により算出された占有領域（３０）が前記動作制限領域（２９）と干渉することを確認した場合に前記ロボット（１１）への動力を遮断するか、または前記ロボット（１１）の動作速度を制限するように構成されている、請求項２に記載のロボットシステム（１０）。
【請求項４】
前記ロボット（１１）の三次元モデル（２８）および前記動作制限領域（２９）を表示する表示部（３２）を備えた、請求項２または３に記載のロボットシステム（１０）。
【請求項５】
ロボット（１１）を構成するモジュールとしての機構ユニット（１３Ａ〜１３Ｃ）であって、
前記機構ユニット（１３Ａ〜１３Ｃ）の形状を表す形状モデル（１７）と、前記ロボット（１１）の動作速度に応じて定まる惰走距離の推定に使用される惰走距離推定用パラメータとが記憶されたメモリ（１６）を有する、機構ユニット（１３Ａ〜１３Ｃ）。
【請求項６】
複数のモジュールとしての機構ユニット（１３Ａ〜１３Ｃ）を組合せて構成されていて、前記機構ユニット（１３Ａ〜１３Ｃ）毎にメモリ（１６）が設けられているロボット（１１）を制御するロボット制御装置（１２）であって、
前記メモリ（１６）は、前記機構ユニット（１３Ａ〜１３Ｃ）の形状を表す形状モデル（１７）と、前記ロボット（１１）の動作速度に応じて定まる惰走距離の推定に使用される惰走距離推定用パラメータとを予め記憶しており、
各前記機構ユニット（１３Ａ〜１３Ｃ）の前記メモリ（１６）に記憶された前記形状モデル（１７）および前記惰走距離推定用パラメータを読込むように構成されている、ロボット制御装置（１２）。
【請求項７】
請求項６に記載のロボット制御装置（１２）であって、
各前記機構ユニット（１３Ａ〜１３Ｃ）の位置を取得するユニット位置取得部（２１）と、
前記ユニット位置取得部（２１）により取得される各前記機構ユニット（１３Ａ〜１３Ｃ）の位置と、各前記機構ユニット（１３Ａ〜１３Ｃ）の前記メモリ（１６）に記憶された形状モデル（１７）とから、前記ロボット（１１）の三次元モデル（２８）を生成するロボットモデル生成部（２２）と、
前記ロボット（１１）の動作制限領域（２９）を設定する設定部（２３）と、
前記ロボット（１１）の三次元モデル（２８）が前記動作制限領域（２９）と干渉するか否かを確認する干渉確認部（２４）と、を具備し、
前記干渉確認部（２４）により前記ロボット（１１）の三次元モデル（２８）が前記動作制限領域（２９）と干渉することが確認された場合には、前記ロボット（１１）への動力を遮断するか、または前記ロボット（１１）の動作速度を制限するように構成された、ロボット制御装置（１２）。
【請求項８】
請求項７に記載のロボット制御装置（１２）であって、
前記ユニット位置取得部（２１）により取得される各前記機構ユニット（１３Ａ〜１３Ｃ）の位置および動作速度と、各前記機構ユニット（１３Ａ〜１３Ｃ）の前記メモリ（１６）に記憶された前記惰走距離推定用パラメータとに基づき、各前記機構ユニット（１３Ａ〜１３Ｃ）の惰走距離を算出する惰走距離算出部（２５）と、
算出された各前記機構ユニット（１３Ａ〜１３Ｃ）の惰走距離に基づいて、前記ロボット（１１）の三次元モデル（２８）が惰走して停止するまでに仮想空間を占有する占有領域（３０）を算出する占有領域算出部（２６）をさらに具備し、
前記干渉確認部（２４）は、前記占有領域算出部（２６）により算出された占有領域（３０）が前記動作制限領域（２９）と干渉することを確認した場合に前記ロボット（１１）への動力を遮断するか、または前記ロボット（１１）の動作速度を制限するように構成されている、ロボット制御装置（１２）。
【請求項９】
前記ロボット（１１）の三次元モデル（２８）および前記動作制限領域（２９）を表示する表示部（３２）を備えた、請求項７または８に記載のロボット制御装置（１２）。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、リンクユニットや該リンクユニットを駆動する駆動ユニットなどの複数の機構ユニットにより構成されたロボットを制御するロボットシステム、該機構ユニット、およびロボット制御装置に関する。
【背景技術】
【０００２】
産業用ロボットを用いた製造現場においては、多関節型のロボットが使用されるのが一般的である。このような多関節型ロボットは、故障時やメンテナンス時などでの交換を容易にするため、リンクユニット（アーム部）や該リンクユニットを駆動する駆動ユニットなどの複数の機構ユニットより構成されている。
【０００３】
また、製造現場においては、安全柵が、ロボットの作業スペースと人間の作業スペースとを互いに分離している。このため、人間がロボットに接触する事故が回避されている。さらに、ロボットのアーム部などが安全柵から出ることなく、所望の移動軌跡に沿って動作するように、ロボット制御装置に接続された教示操作盤によりロボットが教示されている。
【０００４】
しかしながら、ロボットの作業スペースと人間の作業スペースとを分離できない製造現場や、ロボットの作業スペースと人間の作業スペースとを分離すると生産性が著しく低下する製造現場がある。そのような製造現場においては、安全柵を必要としないロボットシステムを実用化する必要がある。
【０００５】
そこで、従来、ロボットの動作を制限するための領域（以下、動作制限領域と呼ぶ。）を予め仮想的に設定しておき、設定された仮想の動作制限領域にロボットが進入する場合に該ロボットを停止させる制御が行われている。このような制御を行うロボットの動作プログラムはロボットの教示作業によって作成される。但し、前述のようなリンクユニットや駆動ユニットなどの機構ユニットの交換によりロボットの構成が変更された場合には、ロボット制御装置内に予め記憶されたロボットの動作プログラムを変更する必要があった。この変更を自動化するために、特許文献１には、交換可能な機構ユニットにメモリを設け、該メモリに、ロボットの軌道制御の演算に用いられるパラメータを格納する技術が開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特許第３９１０１３４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ところで、ロボットが仮想の動作制限領域に進入する場合に該ロボットを停止させる制御を実現する為には、ロボットの三次元モデルを作成し、ロボット教示作業時にその三次元モデルが仮想の動作制限領域と干渉するかを確認する必要がある。しかしながら、この場合に必要なロボットの三次元モデルの格納に関しては、前述の特許文献１には記述されていない。
このため、特許文献１に開示されたロボット制御装置は、前述のように機構ユニットの交換によりロボットの構成が変更された場合には、ロボットの三次元モデルが仮想の動作制限領域に干渉するか否かを確認できない。また、これを実施できるようにする為には、ロボット制御装置に対して、ロボットの三次元モデルを人手により設定し、ロボットの機構ユニットが交換された場合にはその三次元モデルを人手により変更する必要がある。
さらに、特許文献１に開示されたロボット制御装置においては、ロボットの機構ユニットの交換に応じて、ロボット停止時の惰走距離を推定するためのパラメータを自動的に変更することもできない。
【０００８】
そこで本発明は、上述した実情に鑑みて、ロボットにおける交換可能な機構ユニットが変更された場合に、ロボットの三次元モデルや惰走距離推定用パラメータをロボット制御装置に対して自動的に変更するロボットシステム、該機構ユニット、および該ロボット制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の第一態様によれば、ロボットシステムであって、複数のモジュールとしての機構ユニットを組合せて構成されたロボットと、前記ロボットを制御するロボット制御装置と、前記機構ユニット毎に設けられたメモリと、を備え、
前記メモリは、前記機構ユニットの形状を表す形状モデルと、前記ロボットの動作速度に応じて定まる惰走距離の推定に使用される惰走距離推定用パラメータとを予め記憶しており、
各前記機構ユニットの前記メモリに記憶された前記形状モデルおよび前記惰走距離推定用パラメータが前記ロボット制御装置により読込まれるように構成されている、ロボットシステムが提供される。
【００１０】
本発明の第二態様によれば、上記第一態様のロボットシステムであって、
前記ロボット制御装置は、
各前記機構ユニットの位置を取得するユニット位置取得部と、
前記ユニット位置取得部により取得される各前記機構ユニットの位置と、各前記機構ユニットの前記メモリに記憶された形状モデルとから、前記ロボットの三次元モデルを生成するロボットモデル生成部と、
前記ロボットの動作制限領域を設定する設定部と、
前記ロボットの三次元モデルが前記動作制限領域と干渉するか否かを確認する干渉確認部と、を具備し、
前記干渉確認部により前記ロボットの三次元モデルが前記動作制限領域と干渉することが確認された場合には、前記ロボットへの動力を遮断するか、または前記ロボットの動作速度を制限するように構成された、ロボットシステムが提供される。
【００１１】
本発明の第三態様によれば、上記第二態様のロボットシステムであって、
前記ロボット制御装置は、
前記ユニット位置取得部により取得される各前記機構ユニットの位置および動作速度と、各前記機構ユニットの前記メモリに記憶された前記惰走距離推定用パラメータとに基づき、各前記機構ユニットの惰走距離を算出する惰走距離算出部と、
算出された各前記機構ユニットの惰走距離に基づいて、前記ロボットの三次元モデルが惰走して停止するまでに仮想空間を占有する占有領域を算出する占有領域算出部をさらに具備し、
前記干渉確認部は、前記占有領域算出部により算出された占有領域が前記動作制限領域と干渉することを確認した場合に前記ロボットへの動力を遮断するか、または前記ロボットの動作速度を制限するように構成されている、ロボットシステムが提供される。
【００１２】
本発明の第四態様によれば、上記第二態様または第三態様のロボットシステムであって、前記ロボットの三次元モデルおよび前記動作制限領域を表示する表示部を備えた、ロボットシステムが提供される。
【００１３】
本発明の第五態様によれば、ロボットを構成するモジュールとしての機構ユニットであって、前記機構ユニットの形状を表す形状モデルと、前記ロボットの動作速度に応じて定まる惰走距離の推定に使用される惰走距離推定用パラメータとが記憶されたメモリを有する、機構ユニットが提供される。
【００１４】
本発明の第六態様によれば、複数のモジュールとしての機構ユニットを組合せて構成されていて、前記機構ユニット毎にメモリが設けられているロボットを制御するロボット制御装置であって、
前記メモリは、前記機構ユニットの形状を表す形状モデルと、前記ロボットの動作速度に応じて定まる惰走距離の推定に使用される惰走距離推定用パラメータとを予め記憶しており、
各前記機構ユニットの前記メモリに記憶された前記形状モデルおよび前記惰走距離推定用パラメータを読込むように構成されている、ロボット制御装置。
【００１５】
本発明の第七態様によれば、上記第六態様のロボット制御装置であって、
各前記機構ユニットの位置を取得するユニット位置取得部と、
前記ユニット位置取得部により取得される各前記機構ユニットの位置と、各前記機構ユニットの前記メモリに記憶された形状モデルとから、前記ロボットの三次元モデルを生成するロボットモデル生成部と、
前記ロボットの動作制限領域を設定する設定部と、
前記ロボットの三次元モデルが前記動作制限領域と干渉するか否かを確認する干渉確認部と、を具備し、
前記干渉確認部により前記ロボットの三次元モデルが前記動作制限領域と干渉することが確認された場合には、前記ロボットへの動力を遮断するか、または前記ロボットの動作速度を制限するように構成された、ロボット制御装置が提供される。
【００１６】
本発明の第八態様によれば、上記第七態様のロボット制御装置であって、
前記ユニット位置取得部により取得される各前記機構ユニットの位置および動作速度と、各前記機構ユニットの前記メモリに記憶された前記惰走距離推定用パラメータとに基づき、各前記機構ユニットの惰走距離を算出する惰走距離算出部と、
算出された各前記機構ユニットの惰走距離に基づいて、前記ロボットの三次元モデルが惰走して停止するまでに仮想空間を占有する占有領域を算出する占有領域算出部をさらに具備し、
前記干渉確認部は、前記占有領域算出部により算出された占有領域が前記動作制限領域と干渉することが確認された場合に前記ロボットへの動力を遮断するか、または前記ロボットの動作速度を制限するように構成されている、ロボット制御装置が提供される。
【００１７】
本発明の第九態様によれば、上記第七態様または第八態様のロボット制御装置であって、前記ロボットの三次元モデルおよび前記動作制限領域を表示する表示部を備えた、ロボット制御装置が提供される。
【発明の効果】
【００１８】
本発明の上記第一態様、第五態様および第六態様によれば、ロボットにおける交換可能な機構ユニットが変更された場合に、ロボットの三次元モデルや惰走距離推定用パラメータをロボット制御装置に対して自動的に変更することができる。
【００１９】
本発明の上記第二態様および第七態様によれば、機構ユニットの交換によりロボットの構成が変更された場合に、ロボット制御装置により、メモリ内に記憶された各機構ユニットの形状モデルを取得して該ロボット全体の三次元モデルを自動的に生成することができる。さらに、ロボット制御装置によりロボットを動作させたときに該ロボットの三次元モデルが仮想の動作制限領域と干渉する場合には、ロボットへの動力を遮断するか、またはロボットの動作速度を制限することができる。
【００２０】
本発明の上記第三態様および第八態様によれば、動作中のロボットの動力が遮断されてから該ロボットが停止するまでの間の該ロボットの惰走距離を考慮して、ロボットの三次元モデルの占有領域を算出することができる。さらに、惰走距離を考慮に入れた三次元モデルの占有領域を用いて、該ロボットの三次元モデルが動作制限領域と干渉するか否かを確認できるので、より安全なロボットの移動軌跡を計画してロボットに教示できる。
さらに、本発明の上記第四態様および第九態様によれば、ユーザは、ロボットの三次元モデルと動作制限領域との干渉を表示部により確認しながら、ロボットの教示作業を行うことができる。
【００２１】
添付図面に示される本発明の典型的な実施形態の詳細な説明から、本発明のこれらの目的、特徴および利点ならびに他の目的、特徴および利点がさらに明確になるであろう。
【図面の簡単な説明】
【００２２】
【図１】一実施形態のロボットシステムの構成を模式的に示した図である。
【図２】メモリが内蔵された機構ユニットを模式的に例示した図である。
【図３】ロボットにおけるリンクユニットおよび駆動ユニットの全てに対して形状モデルを模式的に示した図である。
【図４】一実施形態のロボットシステムにおけるロボット制御装置の構成要素を示すブロック図である。
【図５】ロボットの三次元モデルおよび動作制限領域を模式的に示した図である。
【図６】ロボット停止時に惰走が生じる場合でのロボットの三次元モデルの占有領域と、動作制限領域とを模式的に示した図である。
【図７】一実施形態のロボットシステムの動作フローの一例を説明するためのフローチャートである。
【発明を実施するための形態】
【００２３】
次に、本発明の実施形態について図面を参照して説明する。以下の図面において、同じ部材には同じ参照符号が付けられている。そして、異なる図面において同じ参照符号が付されたものは同じ機能を有する構成要素であることを意味するものとする。また、理解を容易にするために、これらの図面は縮尺を適宜変更している。
【００２４】
図１は、一実施形態のロボットシステム１０の構成を模式的に示した図である。
図１に示されるように、本実施形態のロボットシステム１０は、ロボット１１と、ロボット１１を制御するロボット制御装置１２と、ロボット１１を構成している複数の交換可能な機構ユニット１３Ａ〜１３Ｃにそれぞれ設けられた不揮発性メモリ１６と、を備える。
【００２５】
ロボット１１は、例えば、製造現場において作業を人間と協調して行う人間協調型ロボットである。また、ロボット１１は、多関節型ロボットであって、三つの機構ユニット１３Ａ〜１３Ｃを互いに組合せて構成されたロボットである。本実施形態においては３つの機構ユニット１３Ａ〜１３Ｃからロボット１１が構成されているが、本発明による機構ユニットの数は限定されない。
【００２６】
第一機構ユニット１３Ａは、第一リンクユニット１４Ａと、第一リンクユニット１４Ａを駆動する第一駆動ユニット１５Ａとを含む。第二機構ユニット１３Ｂは、第二リンクユニット１４Ｂと、第二リンクユニット１４Ｂを駆動する第二駆動ユニット１５Ｂとを含む。さらに、第三機構ユニット１３Ｃは、第三リンクユニット１４Ｃと、第三リンクユニット１４Ｃを駆動する第三駆動ユニット１５Ｃとを含む。リンクユニット１４Ａ〜１４Ｃや駆動ユニット１５Ａ〜１５Ｃは、それぞれ個別のモジュールとして構成されているが、本発明はこれに限定されない。各機構ユニット１３Ａ〜１３Ｃは、リンク部と該リンク部を駆動する駆動部の両方を含む一つのモジュールとして構成されていてもよい。
このような構成により、機構ユニット１３Ａ〜１３Ｃ、リンクユニット１４Ａ〜１４Ｃ、および駆動ユニット１５Ａ〜１５Ｃ、などのユニット毎に、ユーザはユニットの交換または構造の変更を実施することができる。なお、リンクユニット１４Ａ〜１４Ｃや駆動ユニット１５Ａ〜１５Ｃは、それぞれ、アーム部および関節部とも呼ばれる。
【００２７】
ロボット１１は通信ケーブルを介してロボット制御装置１２と接続されている。ロボット制御装置１２は、ＲＯＭ、ＲＡＭなどのメモリや、ＣＰＵおよび通信制御部（図示せず）を有しており、該通信制御部が、ロボット１１の各軸のモータ（図示せず）との信号授受を制御する。ロボット１１により加工を行う場合には、溶接ガンやエンドミルなどの加工ツール（図示せず）がロボット１１の第三リンクユニット１４Ｃの自由端に装着される。ロボット制御装置１２は、ロボット１１の各駆動ユニット１５Ａ〜１５Ｃに内蔵されているモータに、速度、位置、トルクなどの動作指令を送信する。それら動作指令に従って各リンクユニット１４Ａ〜１４Ｃが動作されることにより、第三リンクユニット１４Ｃの自由端に装着された加工ツールは、動作指令どおりの移動軌跡に沿って移動する。
【００２８】
さらに、各機構ユニット１３Ａ〜１３Ｃに関して、メモリ１６が、各リンクユニット１４Ａ〜１４Ｃや各駆動ユニット１５Ａ〜１５Ｃにそれぞれ内蔵されている。但し、例えば、リンクユニット１４Ｃと駆動ユニット１５Ｃの両方を含む一つのモジュールとして機構ユニット１３Ｃが構成されている場合には、メモリ１６はリンクユニット１４Ｃまたは駆動ユニット１５Ｃのいずれか一方に内蔵されていればよい。図２は、このようにメモリ１６が内蔵された機構ユニット１３Ｃを模式的に例示した図である。
【００２９】
前述のメモリ１６は、このメモリ１６が内蔵された、リンクユニット１４Ａ〜１４Ｃや駆動ユニット１５Ａ〜１５Ｃなどの各ユニットの形状を表す形状モデル１７を記憶している。
形状モデル１７は、各ユニットの外形が収まるように、例えば、球体、直方体、筒状体などの図形、またはこれらの組合せによって構成される。図２に示された例で述べると、リンクユニット１４Ｃおよび駆動ユニット１５Ｃをそれぞれ内包する領域１７ａ６および領域１７ａ５（図２における破線の囲み）が、形状モデル１７に相当する。領域１７ａ６は、リンクユニット１４Ｃの中心軸線Ｐを中心とする所定の半径の円筒領域として定義されている。一方、領域１７ａ５は、駆動ユニット１５Ｃの関節軸Ｑ上の一点を中心とする所定の半径の球体領域として定義されている。上記の関節軸Ｑ上の一点は、例えば、リンクユニット１４Ｃの中心軸線Ｐと駆動ユニット１５Ｃの関節軸Ｑとの交点とされる。
さらに、リンクユニット１４Ｃの自由端にロボットハンドまたは加工ツールなどを装着する場合には、上記の領域１７ａ６は、ロボットハンドまたは加工ツールを内包する領域として定義されるのが好ましい。
【００３０】
図３は、ロボット１１におけるリンクユニット１４Ａ〜１４Ｃおよび駆動ユニット１５Ａ〜１５Ｃの全てに対して形状モデル１７を模式的に示した図である。図３においては、領域１７ａ１〜１７ａ６がそれぞれ、各ユニットの形状モデル１７に相当している。さらに、領域１７ａ２、１７ａ４はそれぞれ、前述の領域１７ａ６と同様に、リンクユニット１４Ｂ、１４Ａの中心軸線を中心とする所定の半径の円筒領域として定義されている。さらに、領域１７ａ１、１７ａ３はそれぞれ、前述の領域１７ａ５と同様に、駆動ユニット１５Ｂ、１５Ａの関節軸上の一点を中心とする所定の半径の球体領域として定義されている。当該関節軸上の一点もまた、前述した機構ユニット１３Ｃ（図２）と同様に、リンクユニット１４Ｂ、１４Ａの中心軸線と駆動ユニット１５Ｂ、１５Ａの関節軸との交点とされる。
各ユニットのメモリ１６には、前述のような各ユニットの対応する領域の形状の定義とともに、領域を定義するための円筒領域および球体領域の半径、中心軸線に沿った円筒領域の軸長、などの数値パラメータが、形状モデル１７のデータとして記憶される。なお、円筒領域および球体領域の所定の半径は適宜、異なっていてもよい。
このような形状モデル１７は、工場においてリンクユニット１４Ａ〜１４Ｃや駆動ユニット１５Ａ〜１５Ｃなどの各ユニットを製造または修理する過程で、メモリ１６に書込まれるのが好ましい。
【００３１】
さらに、上述したような機構ユニット１３Ａ〜１３などを含むロボットシステム１０の機能および動作について述べる。
複数の機構ユニット１３Ａ〜１３Ｃ（リンクユニット１４Ａ〜１４Ｃや駆動ユニット１５Ａ〜１５Ｃ）を互いに結合することにより、ロボット１１が形成される。このとき、各ユニット内のモータやメモリ１６などがロボット制御装置１２との信号授受を行えるように、制御や電力供給などに使用する電気配線の接続も行われる。
ロボット制御装置１２とロボット１１とが相互接続された後、ロボット制御装置１２は、各ユニットのメモリ１６に記憶されている形状モデル１７のデータを読込む。このデータ読込は、ロボット制御装置１２とロボット１１との接続後にロボット制御装置１２を起動することにより行われる。あるいは、ロボット制御装置１２に接続された教示操作盤からの指示によりデータ読込が行われてもよい。
【００３２】
その後、ロボット制御装置１２は、各ユニットのメモリ１６から取得した形状モデル１７を順次に組合せて、ロボット１１全体の三次元モデルを生成する。例えば、図３に示された領域１７ａ１〜１７ａ６の各々により定義された形状モデル１７のすべてを、ロボット１１の各ユニットの位置や姿勢に基づいて組合せることにより、ロボット１１全体の三次元モデルを生成する。
【００３３】
このようにロボット１１全体の三次元モデルを生成するのに先立って、各メモリ１６には、当該メモリ１６が内蔵されたユニットを個々に識別する個体識別番号が書込まれているのが好ましい。さらに、ロボット制御装置１２の起動時に、ロボット制御装置１２が各ユニットのメモリ１６内の個体識別番号を読込み、ロボット制御装置１２内に設けられた記憶部に各ユニットの固体識別番号を記憶することが好ましい。このことにより、例えば、メモリ１６が内蔵されたリンクユニット１４Ｂが取外された、または交換された場合には、ロボット制御装置１２は、起動時に、リンクユニット１４Ｂに対応する固体識別番号が排除されたか、または変更されたことを認識できる。言い換えれば、ロボット制御装置１２は、ロボット１１のユニット構成が変化したことを検知することができる。
ユニット構成が変化したのを検知すると、ロボット制御装置１２は、各ユニットのメモリ１６内の形状モデル１７のデータを読込んで、これらの形状モデル１７を基にロボット１１の新しい三次元モデルを生成する。
このように、本実施形態のロボットシステム１０は、ロボット１１における交換可能な機構ユニットが変更されると、ロボット１１の三次元モデルをロボット制御装置１２に対して自動的に変更することができる。
【００３４】
ところで、ロボット１１の動作中に、ロボット１１の各関節軸を駆動するモータの駆動回路への動力が遮断された場合には、ロボット１１は、動力遮断からロボット停止までの間にある程度の距離を惰走する可能性がある。ロボット１１が動作制限領域に進入しないようにロボット１１に動作を教示する際には、このような惰走距離も考慮するのが好ましい。
このため、ロボット１１のユニット毎の形状モデル１７について現在の位置、動作速度、および動作方向から前述の惰走後の停止位置を推定し、停止位置と現在位置の形状モデル１７を含むようにロボット１１の三次元モデルを拡大して生成するのが好ましい。これを実現するためには、ロボット１１の各ユニットの惰走距離を推定するためのパラメータが必要である。これは、各ユニットの惰走距離を算出して、惰走後の各形状モデル１７の停止位置を推定する必要があるからである。
したがって、各ユニット内のメモリ１６には、対応するユニットの形状モデル１７とともに、惰走距離推定用パラメータも予め記憶されている。
惰走距離推定用パラメータは、例えば実験的に求められるもので、ロボット１１の動作速度に関して定められる比例係数などである。ロボット１１の動作速度が大きくなるほど、ロボット１１の惰走距離も長くなるため、そのような比例係数が惰走距離推定用パラメータとして用いられる。言い換えれば、惰走距離推定用パラメータは、ロボット１１の動作速度に応じて定まる惰走距離の推定に使用されるものである。
【００３５】
また、ロボット制御装置１２は、前述した固体識別番号によりユニット構成が変化したのを検知すると、各ユニットのメモリ１６内の惰走距離推定用パラメータを形状モデル１７のデータと共に読込むように構成されている。つまり、本実施形態のロボットシステム１０は、ロボット１１における交換可能な機構ユニットが変更されると、形状モデル１７だけでなく惰走距離推定用パラメータもロボット制御装置１２に対して自動的に変更することができる。
【００３６】
次に、前述したロボットシステム１０のロボット制御装置１２について、より具体的に説明する。但し、以下では、説明の便宜上、メモリ１６を機構ユニット１３Ａ〜１３Ｃ毎に内蔵した例によって説明することとする。
【００３７】
図４は、ロボットシステム１０におけるロボット制御装置１２の構成要素を示すブロック図である。
図４に示されるように、本実施形態のロボット制御装置１２は、ユニット位置取得部２１と、ロボットモデル生成部２２と、設定部２３と、干渉確認部２４とを具備する。このロボット制御装置１２は、図４に示されるように、惰走距離算出部２５と占有領域算出部２６とをさらに備えるのが好ましいが、本発明はこれら構成要素を必ずしも備えていなくてもよい。
【００３８】
ユニット位置取得部２１は、ロボット１１の各機構ユニット１３Ａ〜１３Ｃの位置を所定時間毎に取得する。ロボット１１の各機構ユニット１３Ａ〜１３Ｃは、各駆動ユニット１５Ａ〜１５Ｃ内のモータ（図示せず）により駆動されて各リンクユニット１４Ａ〜１４Ｃを回転させる駆動軸（関節軸とも呼ぶ。）を備えている。
さらに、ユニット位置取得部２１は、それら駆動軸に配置されたエンコーダなどの位置検出器３１から所定時間毎にロボット１１の各駆動軸の角度を読取ることにより、各機構ユニット１３Ａ〜１３Ｃの現在の位置や姿勢、動作速度、動作方向などを取得できる。
【００３９】
ロボットモデル生成部２２は、ユニット位置取得部２１により取得された各機構ユニット１３Ａ〜１３Ｃの位置と、各機構ユニット１３Ａ〜１３Ｃのメモリ１６に記憶された形状モデル１７とから、ロボット１１の三次元モデルを生成する。具体的には、各機構ユニット１３Ａ〜１３Ｃの位置に基づいて、各機構ユニット１３Ａ〜１３Ｃのメモリ１６内の形状モデル１７を順次に組合せることにより、ロボット１１の三次元モデルが生成される。このため、ロボット１１に対する動作指令に応じて、該ロボット１１の三次元モデルの姿形も変わる。言い換えれば、ロボット１１の各機構ユニット１３Ａ〜１３Ｃの位置および姿勢の変化に伴い、該ロボット１１の三次元モデルの領域の位置が変わる。
【００４０】
設定部２３は、ロボット１１の動作制限領域を設定する機能を有する。例えば、ユーザは、動作制限領域、すなわちロボット１１を動作させたくない領域を設定部２３により設定することができる。この設定部２３は、ロボット制御装置１２に接続された教示操作盤２７もしくはパーソナルコンピュータなどに付属されたタッチパネルやキーボードなどの入力部から構成されてもよい。設定部２３により設定された動作制限領域のデータは干渉確認部２４に入力されて保存される。
【００４１】
干渉確認部２４は、ロボットモデル生成部２２により生成されたロボット１１の三次元モデルが、設定部２３により設定された動作制限領域と干渉するか否かを確認する。さらに、干渉確認部２４によりロボット１１の三次元モデルが上記の動作制限領域と干渉することが確認された場合には、ロボット制御装置１２は、ロボット１１への動力を遮断するか、またはロボット１１の動作速度を制限する。
【００４２】
図５は、ロボット１１の三次元モデルおよび動作制限領域を模式的に示した図である。この図に示されるように、ロボットモデル生成部２２によりロボット１１の三次元モデル２８が生成される。この三次元モデル２８は、図３に示された各領域１７ａ１〜１７ａ６をすべて組合せることにより生成される。さらに、ロボット１１の動作制限領域２９（図５における斜線部）がユーザによりロボット制御装置１２に設定されたとする。そして、ロボット１１の教示作業が行われ、図５に示されるようにロボット１１の三次元モデル２８が動作制限領域２９と干渉すると、ロボット制御装置１２はロボット１１を停止等させることができる。
【００４３】
なお、前述した動作制限領域２９の設定においては、ロボット１１が進入してはならない領域を定義するのではなく、ロボット１１が動作することを許可する領域、すなわち動作許可領域を指定する方が簡便である場合も多い。この場合には、三次元モデル２８が動作許可領域の外側に進入すると、ロボット制御装置１２はロボット１１への動力を遮断してロボット１１を停止させるのが好ましい。
動作制限領域２９または動作許可領域の設定は、ロボット１１を設置した時や、ロボット１１の機構ユニットを変更した時に随時行われるのが好ましい。動作制限領域２９は、例えば、図５に示されるように直方体の外側として定義される。この場合には、直方体の頂点の座標値が前述の設定部２３から干渉確認部２４に数値入力されて保存される。また、動作制限領域２９または動作許可領域は複数の領域として定義されてもよく、また、形状は直方体に限定されない。
【００４４】
図６は、ロボット１１の停止時に惰走が生じる場合での該ロボット１１の三次元モデルの占有領域３０と、動作制限領域２９とを示した図である。
実際には、ロボット１１のモータへの動力が遮断された後においてもロボット１１の各軸は僅かながら惰走する。したがって、動力を遮断して惰走した後にロボット１１が停止する位置は、設定された動作制限領域２９から外に、ロボット１１が惰走した距離の分だけ変位する。
このため、本実施形態のロボット制御装置１２は、各ユニットのメモリ１６に記憶された惰走距離推定用パラメータを用いて、図６に示されるようにロボットの三次元モデル２８が惰走して停止するまでに仮想空間を占有する占有領域３０を推定するのが好ましい。さらに、占有領域３０が動作制限領域２９と干渉した場合には、ロボット制御装置１２は、ロボット１１への動力を遮断してロボット１１を停止させるか、またはロボット１１の動作速度を制限するのが好ましい。
【００４５】
上記の事から、図４に示されているように、ロボット制御装置１２は、惰走距離算出部２５および占有領域算出部２６を具備している。また、各機構ユニット１３Ａ〜１３Ｃのメモリ１６は、ロボット１１の動力遮断で発生しうる各機構ユニット１３Ａ〜１３Ｃの惰走距離を推定するためのパラメータを予め記憶している。
【００４６】
惰走距離算出部２５は、ユニット位置取得部２１により取得される各機構ユニット１３Ａ〜１３Ｃの位置および動作速度と、各機構ユニットのメモリ１６内の惰走距離推定用パラメータとに基づき、各機構ユニット１３Ａ〜１３Ｃの惰走距離を算出する。
占有領域算出部２６は、算出された各機構ユニット１３Ａ〜１３Ｃの惰走距離に基づいて、ロボット１１の三次元モデル２８が惰走して停止するまでに仮想空間を占有する占有領域３０を算出する。
例えば、占有領域算出部２６は、各機構ユニット１３Ａ〜１３Ｃの形状モデル１７について、現在の位置、動作速度、動作方向、および算出した惰走距離を基に、惰走後の停止位置を推定する。つまり、算出した惰走距離を形状モデル１７の現在の位置に対してその形状モデル１７の動作方向に加算することにより、惰走後の停止位置が推定される。そして、占有領域算出部２６は、停止位置と現在位置の各形状モデル１７を含むようにロボット１１の三次元モデルの占有領域３０を求めるようにする。
【００４７】
なお、このような惰走距離算出部２５と占有領域算出部２６がロボット制御装置１２内に備わる場合には、干渉確認部２４は、占有領域算出手段２６により算出された占有領域３０と所定の動作制限領域２９とが干渉する否かを確認するのが好ましい。
【００４８】
また、前述したロボット制御装置１２は、ロボット１１の三次元モデル２８、動作制限領域２９、および占有領域３０をグラフィック表示する表示部３２を備えることが好ましい。つまり、ユーザは、ロボット１１の三次元モデル２８と動作制限領域２９との干渉を表示部３２により確認しながらロボット１１の教示作業を行うことができる。また、表示部３２は、ロボット制御装置１２に接続された上位コンピュータなどに付属される表示パネルにより構成されていてもよい。また、教示操作盤２７に備わる表示画面が表示部３２を兼ねてもよい。
【００４９】
図７は、図４に示されたロボット制御装置１２の処理フローの一例を説明するためのフローチャートである。以下、図７を参照しつつ、図４に示されたロボット制御装置１２の動作について説明する。
但し、図７のステップＳ１１が実施されるときには、設定部２３により動作制限領域２９が干渉確認部２４に入力されているものとする。さらに、各ユニットのメモリ１６には、対応するユニットの形状モデル１７、惰走距離推定用パラメータ、および固体識別番号が予め記憶されているものとする。ここでいう「各ユニット」は、機構ユニット１３Ａ〜１３Ｃの各々、または、リンクユニット１４Ａ〜１４Ｃと駆動ユニット１５Ａ〜１５Ｃの各々のことである。
ユーザが各ユニットを互いに結合してロボット１１を組立て、設置し、ロボット１１とロボット制御装置１２とを相互接続した後、ロボット制御装置１２を起動したとする。
【００５０】
はじめに、図７のステップＳ１１において、ロボット制御装置１２のロボットモデル生成部２２が各ユニットのメモリ１６内の個体識別番号を読込むことにより、ロボット制御装置１２は各ユニットの固体識別番号が以前と比べて変わっているかを確認する。
その結果、各ユニットの個体識別番号が変わっていない場合には、ステップＳ１４に進む。しかし、各ユニットの個体識別番号が変わっていた場合には、ステップＳ１２において、ロボットモデル生成部２２は、各ユニットのメモリ１６内に記憶された形状モデル１７のデータおよび惰走距離推定用パラメータを読込む。
さらに、ステップＳ１３において、ロボットモデル生成部２２は、ユニット位置取得部２１により取得された各ユニットの現在位置と、各ユニットの形状モデル１７とから、ロボット１１の三次元モデルを生成する。
【００５１】
その後、ステップＳ１４に進むと、ステップＳ１５〜ステップＳ２０を含む干渉確認処理が、所定の動作領域（作業領域）の数だけ繰返される。つまり、前述のステップＳ１３の後に、ユーザが教示操作盤２７などによりロボット１１の先端部を複数の所定の動作領域へ順次動かす度に、干渉確認処理が実行される。
【００５２】
具体的には、ステップＳ１５において、ロボット制御装置１２の惰走距離算出部２５が、各ユニットの現在の位置や動作速度と、該ユニットのメモリ１６内の惰走距離推定用パラメータとに基づき、各ユニットの惰走距離を算出する。
続いて、ステップＳ１６において、ロボット制御装置１２の占有領域算出部２６が、算出された各ユニットの惰走距離に基づいて、ロボット停止時の惰走を考慮に入れたロボット１１の三次元モデルの占有領域３０を算出する。
【００５３】
さらに、ステップＳ１７において、ロボット制御装置１２の干渉確認部２４が、動作指令に基づいて変位したロボット１１の三次元モデル２８と、設定された動作制限領域２９とが干渉するか否かを確認する。この結果、ロボット１１の三次元モデル２８が動作制限領域２９と干渉する場合には、ステップＳ１８に進む。そして、ステップＳ１８において、ロボット制御装置１２はロボット１１を停止させ、その後ステップＳ２０に進む。一方、ステップＳ１７において、動作指令に基づいて変位したロボット１１の三次元モデル２８が動作制限領域２９と干渉しない場合には、ステップＳ１９に進む。
【００５４】
ステップＳ１９においては、干渉確認部２４が、算出された三次元モデルの占有領域３０と、設定された動作制限領域２９とが干渉するか否かを確認する。この結果、算出された三次元モデルの占有領域３０が動作制限領域２９と干渉する場合には、ステップＳ１８に進む。そして、ステップＳ１８において、ロボット制御装置１２はロボット１１を停止させ、その後ステップＳ２０に進む。一方、ステップＳ１９において、算出された三次元モデルの占有領域３０が動作制限領域２９と干渉しない場合には、ステップＳ２０に進む。
その後、ステップＳ２０において、前述のような干渉確認処理が所望の動作領域の数だけ繰返されたことが確認されると、ロボット制御装置１２の動作が終了する。
【００５５】
以上に説明したように、本実施形態のロボット制御装置１２は、ユニットの交換によりロボット１１の構成が変更されると、各ユニット１１のメモリ１６内に記憶された形状モデル１７を取得して該ロボットの三次元モデル２８を自動的に生成することができる。さらに、ロボット制御装置１２によりロボット１１を動作させたときに該ロボットの三次元モデル２８が仮想の動作制限領域２９と干渉した場合には、ロボット１１への動力を遮断するか、またはロボット１１の動作速度を制限することができる。
【００５６】
さらに、本実施形態のロボット制御装置１２は、動作中のロボット１１の動力が遮断されてから該ロボット１１が停止するまでの間の該ロボット１１の惰走距離を考慮して、ロボット１１の三次元モデルの占有領域３０を算出することができる。さらに、惰走距離を考慮に入れた三次元モデルの占有領域３０を用いて、該ロボットの三次元モデルが動作制限領域と干渉するか否かを確認できるので、ユーザはより安全な移動軌跡を計画してロボット１１に教示できる。
【００５７】
以上、典型的な実施形態を用いて本発明を説明したが、当業者であれば、本発明の範囲から逸脱することなしに、上述の各実施形態に変更および種々の他の変更、省略、追加を行うことができるのを理解できるであろう。また、上述の各実施形態を適宜組み合わせることは本発明の範囲に含まれる。
【符号の説明】
【００５８】
１０    ロボットシステム
１１    ロボット
１２    ロボット制御装置
１３Ａ〜１３Ｃ    機構ユニット
１４Ａ〜１４Ｃ    リンクユニット
１５Ａ〜１５Ｃ    駆動ユニット
１６    メモリ
１７    形状モデル
１７ａ１〜１７ａ６    領域
２１    ユニット位置取得部
２２    ロボットモデル生成部
２３    設定部
２４    干渉確認部
２５    惰走距離算出部
２６    占有領域算出部
２７    教示操作盤
２８    ロボットの三次元モデル
２９    動作制限領域
３０    占有領域
３１    位置検出器
３２    表示部
【図１】
0006309990.tif 000002
【図２】
0006309990.tif 000003
【図３】
0006309990.tif 000004
【図４】
0006309990.tif 000005
【図５】
0006309990.tif 000006
【図６】
0006309990.tif 000007
【図７】
0006309990.tif 000008