(57)【要約】【課題】ユーザがロボットの重心位置を簡易に知ることを可能にする。【解決手段】ロボットの各軸の構成要素の少なくとも重量、重心位置および寸法を含む諸元を設定する諸元設定部１２と、ロボットの各軸の位置情報を設定する姿勢設定部１３と、設定されたロボットの各軸の位置情報と構成要素の諸元とに基づいて、各軸が位置情報に示される位置となった状態のロボットの３次元モデル画像を生成するロボット画像生成部１５と、設定されたロボットの各軸の位置情報と構成要素の諸元とに基づいて、ロボット全体の重心位置を算出する重心位置算出部１４と、ロボット画像生成部１５により生成された３次元モデル画像の算出された重心位置にロボット全体の重心を示す表示を重畳する画像合成部１７と、生成された画像を表示する表示部１８とを備えるロボットの重心表示装置１を提供する。【選択図】図２
2018008326.tif 000002
【特許請求の範囲】
【請求項１】
ロボットの各軸の構成要素の少なくとも重量、重心位置および寸法を含む諸元を設定する諸元設定部と、
前記ロボットの各軸の位置情報を設定する姿勢設定部と、
該姿勢設定部により設定された前記ロボットの各軸の前記位置情報と前記諸元設定部において設定された前記構成要素の諸元とに基づいて、各軸が前記位置情報に示される位置となった状態の前記ロボットの３次元モデル画像を生成するロボット画像生成部と、
前記姿勢設定部により設定された前記ロボットの各軸の前記位置情報と前記諸元設定部において設定された前記構成要素の諸元とに基づいて、前記ロボット全体の重心位置を算出する重心位置算出部と、
前記ロボット画像生成部により生成された前記３次元モデル画像の前記重心位置算出部により算出された前記重心位置に前記ロボット全体の重心を示す表示を重畳する画像合成部と、
該画像合成部により生成された画像を表示する表示部とを備えるロボットの重心表示装置。
【請求項２】
前記重心を示す表示が、前記ロボット全体の重心位置を表す座標値を含む請求項１に記載のロボットの重心表示装置。
【請求項３】
前記重心位置算出部が、各前記構成要素の重心位置を算出し、
前記画像合成部が、前記３次元モデル画像の各前記構成要素の重心位置に、各前記構成要素の重心を表す表示を重畳する請求項１または請求項２に記載のロボットの重心表示装置。
【請求項４】
前記構成要素が、前記ロボットの先端に取り付けられる負荷を含む請求項１から請求項３のいずれかに記載のロボットの重心表示装置。
【請求項５】
前記姿勢設定部が、前記ロボットの動作プログラムに記載されている前記ロボットの各軸の複数組の前記位置情報を読み込んで時系列に設定する請求項１から請求項４のいずれかに記載のロボットの重心表示装置。
【請求項６】
前記ロボットの各軸の前記位置情報が、前記ロボットの設置角度を含む請求項１から請求項５のいずれかに記載のロボットの重心表示装置。
【請求項７】
請求項１から請求項６のいずれかに記載のロボットの重心表示装置を備えるロボット制御装置。
【請求項８】
請求項１から請求項６のいずれかに記載のロボットの重心表示装置を備えるロボットシミュレーション装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットの重心表示装置、ロボット制御装置およびロボットシミュレーション装置に関するものである。
【背景技術】
【０００２】
従来、力センサを用いることなく多関節ロボットのアームの先端の負荷重量および重心位置を自動算出する方法が知られている（例えば、特許文献１参照。）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平１０−１３８１８７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１の方法は、各駆動軸にかかったトルクの平均値に基づいて負荷の重量および重心位置を算出するものであり、ロボットの重心位置を知ることはできない。ロボットの搬送時やロボットシステムの構築の検討時にロボットの重心位置を知ることができれば、ロボットを転倒させずに済むため便利である。
本発明は上述した事情に鑑みてなされたものであって、ユーザがロボットの重心位置を簡易に知ることができるロボットの重心表示装置、ロボット制御装置およびロボットシミュレーション装置を提供することを目的としている。
【課題を解決するための手段】
【０００５】
上記目的を達成するため、本発明は以下の手段を提供する。
本発明の一態様は、ロボットの各軸の構成要素の少なくとも重量、重心位置および寸法を含む諸元を設定する諸元設定部と、前記ロボットの各軸の位置情報を設定する姿勢設定部と、該姿勢設定部により設定された前記ロボットの各軸の前記位置情報と前記諸元設定部において設定された前記構成要素の諸元とに基づいて、各軸が前記位置情報に示される位置となった状態の前記ロボットの３次元モデル画像を生成するロボット画像生成部と、前記姿勢設定部により設定された前記ロボットの各軸の前記位置情報と前記諸元設定部において設定された前記構成要素の諸元とに基づいて、前記ロボット全体の重心位置を算出する重心位置算出部と、前記ロボット画像生成部により生成された前記３次元モデル画像の前記重心位置算出部により算出された前記重心位置に前記ロボット全体の重心を示す表示を重畳する画像合成部と、該画像合成部により生成された画像を表示する表示部とを備えるロボットの重心表示装置を提供する。
【０００６】
本態様によれば、諸元設定部によりロボットの構成要素の重量、重心位置および寸法を含む諸元が設定され、姿勢設定部によりロボットの各軸の位置情報が設定されると、ロボット画像生成部により、各軸が位置情報に示される位置に配置された状態のロボットの３次元モデル画像が生成される。そして、ロボットの各軸の位置情報と構成要素の諸元とに基づいて、ロボット全体の重心位置が重心位置算出部により算出され、画像合成部によって、生成された３次元ロボットの画像内に重心位置に、ロボット全体の重心を表す表示が重畳された画像が生成され、表示部に表示される。これにより、ロボットがどのような姿勢にあっても、表示部に表示された画像によって、ユーザがロボットの重心位置を簡易かつ直感的に知ることができる。
【０００７】
上記態様においては、前記重心を示す表示が、前記ロボット全体の重心位置を表す座標値を含んでいてもよい。
このようにすることで、ロボット全体の重心位置を示す座標値を表示することにより、
ユーザがロボットの重心位置をより明確に知ることができる。
【０００８】
また、上記態様においては、前記重心位置算出部が、各前記構成要素の重心位置を算出し、前記画像合成部が、前記３次元モデル画像の各前記構成要素の重心位置に、各前記構成要素の重心を表す表示を重畳してもよい。
このようにすることで、ユーザがロボット全体の重心位置に加えて、各構成要素の重心位置を簡易かつ直感的に知ることができる。
【０００９】
また、上記態様においては、前記構成要素が、前記ロボットの先端に取り付けられる負荷を含んでいてもよい。
このようにすることで、ロボットの先端に取り付けられる負荷がロボットの構成要素の一部として取り扱われ、負荷を含めたロボット全体の重心位置をユーザが簡易に知ることができる。
【００１０】
また、上記態様においては、前記姿勢設定部が、前記ロボットの動作プログラムに記載されている前記ロボットの各軸の複数組の前記位置情報を読み込んで時系列に設定してもよい。
このようにすることで、ロボットの動作プログラムに従ってロボットの各軸が時系列に複数の姿勢をとるように動作する場合に、異なる時刻の各軸の位置情報が姿勢設定部によって設定されることにより、各時刻におけるロボットの３次元モデル画像がロボット画像生成部により生成されるとともに、各時刻におけるロボット全体の重心位置が重心位置算出部により算出され、３次元モデル画像に重心の表示が重畳された画像が生成される。
【００１１】
その結果、生成された複数の画像を時系列に切り替えて表示することで、ロボットの３次元モデル画像がコマ送りあるいは動画のように動き、各姿勢における重心位置も３次元モデル画像の動作とともに移動する。これにより、ユーザは、ロボットの動作中における重心位置の変化を簡易かつ直感的に知ることができる。
【００１２】
また、上記態様においては、前記ロボットの各軸の前記位置情報が、前記ロボットの設置角度を含んでいてもよい。
このようにすることで、ロボットが傾斜して設置されても設置角度を含めて重心位置を算出することができる。
【００１３】
また、本発明の他の態様は、上記いずれかのロボットの重心表示装置を備えるロボット制御装置を提供する。
また、本発明の他の態様は、上記いずれかのロボットの重心表示装置を備えるロボットシミュレーション装置を提供する。
【発明の効果】
【００１４】
本発明によれば、ロボットのユーザがロボットの重心位置を簡易に知ることができるという効果を奏する。
【図面の簡単な説明】
【００１５】
【図１】本発明の一実施形態に係るロボットの重心表示装置を備えるロボット制御装置を示すブロック図である。
【図２】図１の重心表示装置を示す機能ブロック図である。
【図３】図２の重心表示装置の姿勢設定部における入力画面例を示す図である。
【図４】図３の負荷設定番号に対応づけて記憶されている負荷の重量および重心位置情報の一例を示す図である。
【図５】図１の重心表示装置の重心位置算出部による重心の算出方法の一例を説明するためのロボットの模式図である。
【図６】図１の重心表示装置の画像合成部により生成され表示部に表示された画像の一例を示す図である。
【図７】ロボットシミュレーション装置における重心位置の表示例を示す図である。
【発明を実施するための形態】
【００１６】
本発明の一実施形態に係るロボットの重心表示装置１について、図面を参照して以下に説明する。
本実施形態に係るロボット１１の重心表示装置１は、ロボット制御装置１００に備えられている。
【００１７】
ロボット制御装置１００は、図１に示されるように、ＣＰＵ２に接続されたバス３に、並列に接続された、ＲＯＭ４、ＲＡＭ５、不揮発性メモリ６、教示操作盤インタフェイス（Ｉ／Ｆ）７、軸制御回路８および重心表示制御部９を備えている。
教示操作盤インタフェイス７には、教示操作盤１０が接続されている。教示操作盤１０は、ディスプレイ機能付のものであり、作業者は、この教示操作盤１０をマニュアル操作して、ロボット１１の動作プログラムの作成、修正、登録、あるいは各種パラメータの設定の他、教示された動作プログラムの再生運転、ジョグ送り等を実行するようになっている。
【００１８】
ロボット１１およびロボット制御装置１００の基本機能を支えるシステムプログラムは、ＲＯＭ４に格納されている。また、アプリケーションに応じて教示されるロボット１１の動作プログラムおよび関連する設定データは、不揮発性メモリ６に格納されるようになっている。また、諸処理のためのプログラム等のデータも不揮発性メモリ６に格納されるようになっている。
【００１９】
本実施形態に係る重心表示装置１は、図２に示されるように、ロボット１１の各軸の構成要素の重量、重心位置および寸法を含む諸元を設定する諸元設定部１２と、ロボット１１の各軸の位置情報を設定する姿勢設定部１３と、ロボット１１全体の重心位置を算出する重心位置算出部１４と、ロボット１１の３次元モデル画像を生成するロボット画像生成部１５と、重心点の表示を生成する重心表示生成部１６と、３次元モデル画像に重心点の表示を重畳する画像合成部１７と、合成された画像を表示する表示部１８とを備えている。
【００２０】
諸元設定部１２は、図１の不揮発性メモリ６により構成されている。すなわち、ロボット１１の各軸を構成している構成要素である各リンク部材の長さ、重量および重心位置のデータが不揮発性メモリ６に記憶されることにより設定されている。
【００２１】
姿勢設定部１３は、図１の教示操作盤１０により構成されている。すなわち、教示操作盤１０を用いてユーザに各軸の角度情報を入力させることにより、各軸の位置情報を設定するようになっている。姿勢設定部１３による各軸の角度情報の入力は、例えば、図３に示されるような表示を教示操作盤１０のディスプレイ１０ａに表示し、ロボット１１の設置角度、各軸の角度、負荷設定番号を入力させるようになっている。
【００２２】
負荷設定番号は、ロボット１１の先端等に取り付けられているワーク（負荷）やハンド（構成要素）等の種別毎に設定されている番号である。図４に示されるように、負荷設定番号は、負荷の重量、重心位置等と対応づけて不揮発性メモリ６に記憶されており、ユーザが入力することにより、対応する負荷の重量と重心位置とを読み出すことができるようになっている。
【００２３】
重心位置算出部１４、ロボット画像生成部１５、重心表示生成部１６および画像合成部１７は、ＣＰＵ２およびＲＯＭ４によって構成されている。
重心表示制御部９は、教示操作盤１０を介してユーザにより重心表示の指令が入力されたときに作動させられて、教示操作盤１０のディスプレイ１０ａに図３に示される入力画面を表示してユーザに入力させ、諸元設定部１２を構成している不揮発性メモリ６から構成要素の重量および重心位置のデータを読み出すようになっている。
【００２４】
ロボット画像生成部１５は、重心表示制御部９が、入力された各軸の角度情報および読み出された構成要素の各リンク部材の長さに基づいて、ＲＯＭ４に記憶されているロボット画像生成プログラムを用いて、ＣＰＵ２にロボット１１の３次元モデル画像を生成させるようになっている。
また、重心位置算出部１４は、重心表示制御部９が、読み出された構成要素の重量および重心位置のデータおよび入力された各軸の角度情報等に基づいて、ＲＯＭ４に記憶されている重心算出プログラムを用いて、ＣＰＵ２にロボット１１全体の重心位置を算出させるようになっている。
【００２５】
重心位置算出部１４による重心位置算出方法の一例を、５つのユニット（構成要素）２１，２２，２３，２４，２５を有し、ハンド２６およびワーク２７を先端に取り付けた３軸ロボット１１を例に挙げて、数１および図５を参照して説明する。この場合のロボット１１全体の重心位置は、数１により算出することができる。
【数１】
2018008326.tif 000003
【００２６】
ここで、
ｗｎ：ｎ番目のユニットの重量、
ｗｈ：ハンド２６の重量、
ｗｗ：ワーク２７の重量、
ｘｇ：ロボット１１の原点のｘ座標ｘ０を基準としたロボット１１全体の重心位置のｘ座標、
ｙｇ：ロボット１１の原点のｙ座標ｙ０を基準としたロボット１１全体の重心位置のｙ座標、
ｚｇ：ロボット１１の原点のｚ座標ｚ０を基準としたロボット１１全体の重心位置のｚ座標、
ｘｎ：ロボット１１の原点のｘ座標ｘ０を基準としたｎ番目のユニットの重心位置のｘ座標、
ｙｎ：ロボット１１の原点のｙ座標ｙ０を基準としたｎ番目のユニットの重心位置のｙ座標、
ｚｎ：ロボット１１の原点のｚ座標ｚ０を基準としたｎ番目のユニットの重心位置のｚ座標、
ｘｈ：ロボット１１の原点のｘ座標ｘ０を基準としたハンド２６の重心位置のｘ座標、
ｙｈ：ロボット１１の原点のｙ座標ｙ０を基準としたハンド２６の重心位置のｙ座標、
ｚｈ：ロボット１１の原点のｚ座標ｚ０を基準としたハンド２６の重心位置のｚ座標、
ｘｗ：ロボット１１の原点のｘ座標ｘ０を基準としたワーク２７の重心位置のｘ座標、
ｙｗ：ロボット１１の原点のｙ座標ｙ０を基準としたワーク２７の重心位置のｙ座標、
ｚｗ：ロボット１１の原点のｚ座標ｚ０を基準としたワーク２７の重心位置のｚ座標、
である。
【００２７】
また、１番目のユニット２１は地面固定で重心位置の変動はないため、ロボット１１の原点（ｘ０，ｙ０，ｚ０）を基準とした１番目のユニット２１の重心位置座標（ｘ１，ｙ１，ｚ１）は、ロボット１１の原点を基準とした距離のｘ、ｙ、ｚ成分（Ｌ１ｇｘ，Ｌ１ｇｙ，Ｌ１ｇｚ）を用いて、
ｘ１＝Ｌ１ｇｘ、
ｙ１＝Ｌ１ｇｙ、
ｚ１＝Ｌ１ｇｚ
である。
【００２８】
２番目のユニット２２は、１番目のユニット２１によって鉛直軸回りに回転角度φ１で回転することから、ロボット１１の原点（ｘ０，ｙ０，ｚ０）を基準とした２番目のユニット２２の重心位置座標（ｘ２，ｙ２，ｚ２）は、ロボット１１の原点を基準とした距離のｘ、ｙ、ｚ成分（Ｌ２ｇｘ，Ｌ２ｇｙ，Ｌ２ｇｚ）を用いて、
ｘ2＝Ｌ２ｇｘｃｏｓφ１、
ｙ2＝Ｌ２ｇｙｓｉｎφ１、
ｚ2＝Ｌ２ｇｚ
である。
【００２９】
３，４，５番目のユニット２３，２４，２５は、
ｘ３＝（ＬＪ１＋ＬＪ２ｇｓｉｎφ２）ｃｏｓφ１、
ｙ３＝（ＬＪ１＋ＬＪ２ｇｓｉｎφ２）ｓｉｎφ１、
ｚ３＝ＬＪ２ｇｃｏｓφ２、
ｘ４＝（ＬＪ１＋ＬＪ２ｓｉｎφ２＋ＬＪ３ｇｃｏｓφ３）ｃｏｓφ１、
ｙ４＝（ＬＪ１＋ＬＪ２ｓｉｎφ２＋ＬＪ３ｇｃｏｓφ３）ｓｉｎφ１、
ｚ４＝ＬＪ２ｃｏｓφ２＋ＬＪ３ｇｓｉｎφ３、
ｘ５＝（ＬＪ１＋ＬＪ２ｓｉｎφ２＋ＬＪ４ｇｃｏｓφ３）ｃｏｓφ１、
ｙ５＝（ＬＪ１＋ＬＪ２ｓｉｎφ２＋ＬＪ４ｇｃｏｓφ３）ｓｉｎφ１、
ｚ５＝ＬＪ２ｃｏｓφ２＋ＬＪ４ｇｓｉｎφ３
である。
【００３０】
ここで、
ＬＪ１：１番目のユニット２１による回転中心から２番目のユニット２２の回転中心までのオフセット量、
ＬＪ２：２番目のユニット２２により鉛直方向に揺動させられるリンクの長さ、
ＬＪ２ｇ：２番目のユニット２２による回転中心から２番目のユニット２２の重心位置までの距離、
ＬＪ３ｇ：３番目のユニット２３による回転中心から３番目のユニット２３の重心位置までの距離、
ＬＪ４ｇ：３番目のユニット２３による回転中心から４番目の（手首）ユニット２４の重心位置までの距離、
φ２：２番目のユニット２２による水平軸回りの回転角度、
φ３：３番目のユニット２３による水平軸回りの回転角度
である。
【００３１】
ロボット１１全体の重心位置座標は、ｎ＝１，ｍ＝５として、数１により算出することができ、２番目のユニット２２単体の重心位置座標は、ｎ＝ｍ＝２として、数１により算出することができる。また、２番目と３番目のユニット２２，２３からなる複合ユニットの重心位置座標は、ｎ＝２、ｍ＝３として数１により算出することができる。
【００３２】
重心位置算出部１４は、例えば、図３の入力画面において、各軸の角度情報および負荷設定番号を入力した後に、変換の矢印を指定することによって算出され、ディスプレイ１０ａ上に表示されるようになっている。図３に示すように、逆変換の矢印が設けられていてもよい。これにより、負荷設定番号および重心位置を入力した後に、逆変換の矢印を指定することにより、各軸の位置情報を逆変換により求めることにしてもよい。
【００３３】
重心表示生成部１６は、例えば、予め記憶されている球体等の画像を重心位置算出部１４によって算出されたロボット１１全体の重心位置に配置した重心の表示画像を重心表示制御部９がＣＰＵ２に生成させるようになっている。
画像合成部１７は、ロボット画像生成部１５により生成されたロボット１１の３次元モデル画像と、重心表示生成部１６により生成されたロボット１１全体の重心位置に配置された重心の表示画像とを、重心表示制御部９がＣＰＵ２に合成させて合成画像を生成するようになっている。
【００３４】
そして、ＣＰＵ２により生成された合成画像が、重心表示制御部９によって教示操作盤インタフェイス７を介して教示操作盤１０に送られ、図６に示されるように、教示操作盤１０のディスプレイ１０ａに表示されるようになっている。
【００３５】
このように構成された本実施形態に係るロボット１１の重心表示装置１によれば、ユーザは、重心位置を確認したいロボット１１の姿勢を達成するための各軸の角度情報を入力し、負荷を選択するだけで、当該姿勢をとったロボット１１の３次元モデル画像上に重心を表す表示が重畳された画像をディスプレイ１０ａ上で簡易かつ直感的に確認することができる。したがって、ロボット１１の搬送時やロボットシステムの構築の検討時にロボット１１の重心位置を知ることができ、ロボット１１の転倒等を未然に防止することができるという利点がある。
【００３６】
また、上述したように、ロボット１１の設置角度を入力することにより、ロボット１１が傾斜して設置された場合でも設置角度を考慮して重心位置を算出することができる。
【００３７】
なお、本実施形態においては、諸元設定部１２として、不揮発性メモリ６により構成されている場合を例示したが、ユーザが教示操作盤１０から入力することにしてもよい。
また、姿勢設定部１３として、ユーザが教示操作盤１０から入力することとしたが、これに代えて、ユーザによって指定されたロボット動作プログラムの各ステップにおける各軸の角度情報を読み込んで時系列に設定することにしてもよい。
【００３８】
すなわち、各ステップにおける各軸の角度情報がロボット動作プログラムから読み出される都度に、ロボット画像生成部１５によるロボット１１の３次元モデル画像の生成、重心位置算出部１４によるロボット１１全体の重心位置の算出、重心表示生成部１６による重心の表示の生成および画像合成部１７による画像合成が行われ表示部１８に表示される。これにより、ロボット１１の３次元モデル画像がコマ送りあるいは動画のように動き、各姿勢における重心位置も３次元モデル画像の動作とともに移動ので、ユーザは、ロボット１１の動作中における重心位置の変化を簡易かつ直感的に知ることができるという利点がある。
【００３９】
また、本実施形態においては、重心表示生成部１６が重心を表す球体状の表示を重心位置に生成することとしたが、表示の形状は球体状に限定されるものではなく、任意でよい。また、球体状等の重心の表示に加えて、図６に示されるように、重心の座標値を文字で表示することにしてもよい。このようにすることで、ユーザは、より正確に重心の位置を確認することができる。
【００４０】
また、本実施形態においては、ロボット１１全体の重心を表示することとしたが、これに加えて、各軸のユニット２１，２２，２３，２４，２５の重心位置Ｐ１，Ｐ２，Ｐ３を例えば、図６に示されるように表示することにしてもよい。
また、本実施形態においては、ロボット制御装置１００に重心表示装置１が備えられる場合について説明したが、これに代えて、重心表示装置１がロボット１１に接続されていないシミュレーション装置に備えられていてもよい。このようにすることで、図７に示されるように、準備することが困難な大きな負荷（例えば、自動車や該自動車をハンドリングするためのハンド）等を想定したロボット１１の姿勢毎の重心位置Ｐ１，Ｐ２，Ｐ３を模擬的に検討する場合等に適用することができる。
【符号の説明】
【００４１】
１  重心表示装置
２  ＣＰＵ（重心位置算出部、ロボット画像生成部、重心表示生成部、画像合成部）
４  ＲＯＭ（重心位置算出部、ロボット画像生成部、重心表示生成部、画像合成部）
６  不揮発性メモリ（諸元設定部）
１０  教示操作盤（姿勢設定部）
１１  ロボット
１２  諸元設定部
１３  姿勢設定部
１４  重心位置算出部
１５  ロボット画像生成部
１７  画像合成部
１８  表示部
２１，２２，２３，２４，２５  ユニット（構成要素）
２６  ハンド（構成要素）
２７  ワーク（構成要素、負荷）
１００  ロボット制御装置
【図１】
2018008326.tif 000004
【図２】
2018008326.tif 000005
【図３】
2018008326.tif 000006
【図４】
2018008326.tif 000007
【図５】
2018008326.tif 000008
【図６】
2018008326.tif 000009
【図７】
2018008326.tif 000010