(57)【要約】      （修正有）【課題】ロボットの動作時の振動を低減するための教示作業を効率的に行うことを可能とする振動表示装置、動作プログラム作成装置、およびシステムを、提供する。【解決手段】この振動表示装置は、シミュレーション上又は現実のロボットＲの動作プログラムに沿って動く先端部の振動状態を取得する振動取得手段と、振動状態を、ロボットＲの先端部の軌跡Ｌに沿って表示装置３６に描画する、又は、軌跡Ｌとして表示装置３６に描画する振動軌跡描画手段と、を備える。【選択図】図１
2020179484.tif 000002
【特許請求の範囲】
【請求項１】
シミュレーション上又は現実のロボットの、動作プログラムに基づき動く先端部の振動状態を取得する振動取得手段と、
前記振動状態を、前記ロボットの前記先端部の軌跡に沿って表示装置に描画する、又は、前記軌跡として前記表示装置に描画する振動軌跡描画手段と、を備える振動表示装置。
【請求項２】
前記振動取得手段が、前記動作プログラムに沿って動く前記先端部の振動状態を取得すると共に、前記動作プログラムを学習機能を用いて改善した改善後動作プログラムに沿って動く前記先端部の改善後の振動状態を取得し、
前記振動軌跡描画手段が、前記振動状態又は教示した軌跡と、前記改善後の振動状態とを、前記ロボットの前記先端部の軌跡に沿って前記表示装置に表示する、請求項１に記載の振動表示装置。
【請求項３】
前記振動取得手段が、前記動作プログラムに沿って動く前記先端部の振動状態を取得すると共に、前記動作プログラムを改善した改善後動作プログラムに沿って動く前記先端部の改善後の振動状態を取得し、
前記振動軌跡描画手段が、前記振動状態又は教示した軌跡と、前記改善後の振動状態とを、前記ロボットの前記先端部の軌跡に沿って前記表示装置に表示する、請求項１に記載の振動表示装置。
【請求項４】
前記表示装置が、ヘッドマウントディスプレイである、請求項１〜３の何れかに記載の振動表示装置。
【請求項５】
前記振動軌跡描画手段が、前記表示装置の表示画面における任意の範囲を拡大表示するための操作に応じて、前記任意の範囲を拡大して前記表示装置に表示する、請求項１〜４の何れかに記載の振動表示装置。
【請求項６】
前記振動取得手段が、前記シミュレーション上のロボットの前記先端部の前記振動状態、前記現実のロボットの複数の駆動モータの各々の動作情報、又は前記現実のロボットの前記先端部の振動を振動測定用センサによって測定した結果に基づき、前記振動状態を取得する、請求項１〜５の何れかに記載の振動表示装置。
【請求項７】
前記振動取得手段が、前記ロボットにおいて前記先端部よりも基端側の基端側部の基端側振動状態を取得し、
前記振動軌跡描画手段が、前記基端側振動状態を、前記基端側部の軌跡に沿って前記表示装置に表示する、又は、前記基端側部の前記軌跡として前記表示装置に表示する、請求項１に記載の振動表示装置。
【請求項８】
請求項１〜７の何れかに記載の振動表示装置と、
前記振動表示装置に描画される前記先端部の前記軌跡のうち選択された選択範囲の前記先端部の振動について学習を行い、前記選択範囲における前記先端部の振動を低減する改善後動作プログラムを作成する学習手段と、を備える動作プログラム作成装置。
【請求項９】
前記学習手段が、ユーザによって任意に選択された前記選択範囲の前記先端部の振動についてのみ学習を行う、請求項８に記載の動作プログラム作成装置。
【請求項１０】
前記学習手段が、前記先端部の前記軌跡のうち振動が大きい範囲を自動的に選択し、自動的に選択された前記選択範囲の前記先端部の振動についてのみ学習を行う、請求項８に記載の動作プログラム作成装置。
【請求項１１】
前記動作プログラムに関する情報と、前記選択範囲の情報とを、他の動作プログラム作成装置又は上位制御システムに出力するように構成され、又は、前記動作プログラムに関する情報と、前記選択範囲の情報とを、他の動作プログラム作成装置又は上位制御システムから受信するように構成されている、請求項８〜１０の何れかに記載の動作プログラム作成装置。
【請求項１２】
システムであって
ロボットと、
前記ロボットを制御するための動作プログラムを作成する動作プログラム作成装置と、
前記動作プログラム作成装置と通信可能な上位制御システムと、を備え、
前記動作プログラム作成装置は、
前記動作プログラムに沿って動く前記ロボットの先端部の軌跡を表示する表示装置と、
前記表示装置に表示される前記先端部の前記軌跡のうち選択された選択範囲の前記先端部の振動について学習を行い、前記選択範囲における前記先端部の振動を低減する学習手段と、を有し、
前記上位制御システムは、前記動作プログラム作成装置から受信する学習結果を蓄積する、システム。
【請求項１３】
前記上位制御システムは、前記学習の結果を用いて前記上位制御システムにおいて行われた学習の結果を、前記動作プログラム作成装置に送信するように構成されている、請求項１２に記載のシステム。
【請求項１４】
前記上位制御システムは、前記学習結果、又は、前記学習結果を用いて前記上位制御システムにおいて行われた前記学習の結果を、学習機能を持たない動作プログラム作成装置に送信するように構成されている、請求項１２又は１３に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は振動表示装置、動作プログラム作成装置、およびシステムに関する。
【背景技術】
【０００２】
ロボットを動かした際のロボットの先端の軌跡をロボットの画像と共に表示装置に表示する技術が知られている。このような技術は例えば特許文献１に開示されている。
また、ロボットの動作時の振動を加速度センサによって計測し、計測値を目標値に近付けるための学習を行うロボット制御が知られている。このような技術は例えば特許文献２に開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開第６３８５６２７号公報
【特許文献２】特開２０１１−１６７８１７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ロボットの動作時の振動の低減は、ロボットの動作の高速化、ロボットを用いた加工の品質等に直結する。加速度センサを用いてロボットの動作時の振動を計測し、計測値を目標値に近付ける学習を行う場合、その成果を何等かの手段で確認する必要がある。例えば、学習後の動作プログラムを用いてロボットによるワークの加工を実際に行い、ワークの出来栄えに基づき振動の適否を確認する。このような確認はワークの浪費に繋がり、加工の実行およびその準備のための時間を要する。また、学習を行う度にワークの加工を行うことになり、非効率的である。
【０００５】
前述の事情に鑑み、ロボットの動作時の振動を低減するための教示作業を効率的に行うことを可能とする振動表示装置、動作プログラム作成装置、およびシステムが望まれる。
【課題を解決するための手段】
【０００６】
本開示の第１態様の振動表示装置は、シミュレーション上又は現実のロボットの、動作プログラムに基づき動く先端部の振動状態を取得する振動取得手段と、前記振動状態を、前記ロボットの前記先端部の軌跡に沿って表示装置に描画する、又は、前記軌跡として前記表示装置に描画する振動軌跡描画手段と、を備える。
【０００７】
本開示の第２態様の動作プログラム作成装置は、前記振動表示装置と、前記振動表示装置に描画される前記先端部の前記軌跡のうち選択された選択範囲の前記先端部の振動について学習を行い、前記選択範囲における前記先端部の振動を低減する改善後動作プログラムを作成する学習手段と、を備える。
【０００８】
本開示の第３態様のシステムは、ロボットと、前記ロボットを制御するための動作プログラムを作成する動作プログラム作成装置と、前記動作プログラム作成装置と通信可能な上位制御システムと、を備え、前記動作プログラム作成装置は、前記動作プログラムに沿って動く前記ロボットの先端部の軌跡を表示する表示装置と、前記表示装置に表示される前記先端部の前記軌跡のうち選択された選択範囲の前記先端部の振動について学習を行い、前記選択範囲における前記先端部の振動を低減する学習手段と、を有し、前記上位制御システムは、前記動作プログラム作成装置から受信する学習結果を蓄積する。
【図面の簡単な説明】
【０００９】
【図１】本発明の第１実施形態の動作プログラム作成装置の概略構成図である。
【図２】第２実施形態の動作プログラム作成装置の概略構成図である。
【図３】第３実施形態の動作プログラム作成装置の概略構成図である。
【図４】各実施形態のロボットの斜視図である。
【図５】各実施形態のコンピュータのブロック図である。
【図６】各実施形態のロボット制御装置のブロック図である。
【図７】各実施形態における表示装置への表示例である。
【図８】各実施形態における表示装置への表示例である。
【図９】各実施形態における表示装置への表示例である。
【図１０】各実施形態のロボット制御装置を有する管理システムのブロック図である。
【図１１】各実施形態のロボット制御装置およびコンピュータを有するシステムのブロック図である。
【図１２】各実施形態のロボット制御装置を有するシステムのブロック図である。
【図１３】各実施形態のロボット制御装置を有するシステムのブロック図である。
【発明を実施するための形態】
【００１０】
各実施形態の動作プログラム作成装置は、図１〜図３に示されるように、シミュレーションを行うコンピュータ３０であってもよく、ロボットＲを制御するためのロボット制御装置２０であってもよい。以下の説明は、動作プログラム作成装置がコンピュータ３０である場合について説明されているが、後述の構成をロボット制御装置２０に適用することも可能である。
【００１１】
第１実施形態に係る振動表示装置および動作プログラム作成装置が、図面を用いながら以下説明されている。
第１実施形態では、図１に示されるように、動作プログラム作成装置であるコンピュータ３０にヘッドマウントディスプレイである表示装置（振動表示装置）３６が接続され、表示装置３６にロボットＲの振動状態が表示される。
【００１２】
図５に示されるように、コンピュータ３０は、ＣＰＵ等であるプロセッサ３１と、液晶表示装置等のディスプレイ３２と、不揮発性ストレージ、ＲＯＭ、ＲＡＭ等を有する記憶部３３と、キーボード、タッチスクリーン等である入力装置３４と、信号、データ等の送受信を行うための送受信部３５とを備えている。ディスプレイ３２がタッチスクリーン機能を有する場合、ディスプレイ３２も入力装置３４として機能する。また、本実施形態では、ディスプレイ３２も振動表示装置として機能する。
【００１３】
記憶部３３にはシステムプログラム３３ａが格納され、システムプログラム３３ａはコンピュータ３０の基本機能を担っている。記憶部３３にはロボットＲの動作プログラム３３ｂが格納されている。動作プログラム３３ｂはロボットＲの基準座標系を基準に作成され、当該基準座標系においてロボットＲの先端部を所定の複数の位置および姿勢に順次配置するためのものである。ロボット制御装置２０は動作プログラム３３ｂに基づきロボットＲを動作させる。
【００１４】
記憶部３３には、ロボットＲの先端部の振動状態を取得する振動取得プログラム（振動取得手段）３３ｃと、振動取得プログラム３３ｃによって得たロボットＲの先端部の振動状態をロボットＲの先端部に沿って描画する振動軌跡描画プログラム（振動軌跡描画手段）３３ｄと、が格納されている。また、記憶部３３には、学習プログラム（学習手段）３３ｅも格納されている。
ロボットＲは、図４の例では垂直多関節型のロボットであるが、水平多関節型のロボット、マルチリンク型のロボット、その他のロボットであってもよい。
【００１５】
図４に示されるロボットＲは、複数の可動軸Ｊ１，Ｊ２，Ｊ３，Ｊ４，Ｊ５，Ｊ６周りにそれぞれアーム部材１１，１２，１３，１４，１５，１６を駆動する複数のサーボモータ（駆動モータ）１１ａ，１２ａ，１３ａ，１４ａ，１５ａ，１６ａ（図６）を有する。サーボモータ１１ａ，１２ａ，１３ａ，１４ａ，１５ａ，１６ａの駆動力が減速機を介してアーム部材１１，１２，１３，１４，１５，１６に伝達される。また、各サーボモータ１１ａ，１２ａ，１３ａ，１４ａ，１５ａ，１６ａはその作動位置を検出するための作動位置検出装置１７を有し、作動位置検出装置１７は一例としてエンコーダである。作動位置検出装置１７の検出結果はロボット制御装置２０に送信される。
【００１６】
ロボットＲは、その先端部に溶接等の加工用のツールＴを有する。本実施形態では、ツールＴをロボットＲの先端部として扱うが、ツールＴが取付けられるアーム部材１６がロボットＲの先端部として扱われてもよい。ツールＴは、検査用のツール、洗浄用のツール、ワークのハンドリング用のツール、組立用のツール、又は他のツールであってもよい。
【００１７】
ロボット制御装置２０は、図６に示されるように、ＣＰＵ等であるプロセッサ２１と、液晶表示装置等のディスプレイ２２と、不揮発性ストレージ、ＲＯＭ、ＲＡＭ等を有する記憶部２３と、キーボード、操作盤、タッチスクリーン等である入力装置２４と、信号、データ等の送受信を行うための送受信部２５と、サーボモータ１１ａ〜１６ａに各々対応したサーボ制御器２６とを備えている。記憶部２３にはシステムプログラム２３ａが格納されており、システムプログラム２３ａがロボット制御装置２０の基本機能を担っている。
【００１８】
一方、コンピュータ３０の記憶部３３には、ロボットＲのモデルが格納されており、コンピュータ３０はロボットＲのモデルを表示装置３６又はディスプレイ３２に表示させることができる。コンピュータ３０の記憶部３３には、ロボットＲが設置されている設置面のモデル、設置面上に載置されたコンベヤ、ロボットＲによって溶接等の加工が行われるワークのモデル、ワークを支持する冶具のモデル、他の機械等のモデルも格納されており、コンピュータ３０はこれらのモデルも表示装置３６又はディスプレイ３２に表示できる。
【００１９】
一例では、コンピュータ３０は、ユーザの入力装置３４への入力に基づき、ロボットＲによってワークの複数個所にスポット溶接を行う動作プログラム３３ｂを作成する。
コンピュータ３０は、動作プログラム３３ｂに沿ってシミュレーション上でロボットＲを動かし、そのロボットＲの動作を表示装置３６又はディスプレイ３２に表示する。
【００２０】
シミュレーション上のロボットＲのモデルは、アーム部材１１，１２，１３，１４，１５，１６の各々の重量および剛性、サーボモータ１１ａ，１２ａ，１３ａ，１４ａ，１５ａ，１６ａの各々の重量および剛性、各減速機の重量および剛性等の情報を有する。つまり、ロボットＲのモデルは、実際のロボットＲの重量および剛性の情報を有する。また、ロボットＲのモデルは、各サーボモータ１１ａ，１２ａ，１３ａ，１４ａ，１５ａ，１６ａの性能に関する情報も有する。このため、シミュレーション上のロボットＲは、実際のロボットＲと近似した動作又は一致した動作を行う。また、シミュレーション上のロボットＲは、前記基準座標系に対し現実のロボットＲと同じ位置に配置されている。このため、シミュレーション上のロボットＲの動作プログラム３３ｂに基づく動作は、現実のロボットＲの動作プログラム３３ｂに基づく動作と同じである。
【００２１】
シミュレーション上でロボットＲを動かす際に、コンピュータ３０は、ロボットＲの先端部の軌跡および振動状態を取得する。取得される振動状態は、一例では、先端部の振動を示す振動データである。振動データは、時間とともに変化する先端部の加速度のデータ、時間とともに変化する先端部の振幅のデータであり得る。軌跡を複数のエリアに分割して考えることも可能である。この場合、取得される振動状態は、ロボットＲの先端部の軌跡の各エリアにおける加速度の最大値、ロボットの先端部の軌跡の各エリアにおける振幅の最大値であり得る。前記各加速度のデータは、各加速度に関する方向および周波数のデータを有し、前記各振幅のデータは、各振幅に関する方向および周波数のデータを有する。
取得される振動状態は、他の例では、ロボットＲの先端部の軌跡のデータそのものである。ロボットＲの先端部が振動する時に、前記軌跡が周期的に振動することになる。
【００２２】
コンピュータ３０は、ロボットＲの先端部の軌跡Ｌをディスプレイ３２および表示装置３６に表示する時に、振動軌跡描画プログラム３３ｄに基づき、ロボットＲの先端部の振動状態をディスプレイ３２および表示装置３６に表示する。一例では、コンピュータ３０は、前述のように周期的に振動する軌跡Ｌを表示する。ロボットＲの先端部の振動の振幅が極めて小さいことが多いため、コンピュータ３０は、例えば振動の振幅を数倍〜数十倍にして表示する（図１および図４）。なお、ロボット制御装置２０が振動表示装置として機能する場合は、ディスプレイ２２、入力装置２４に設けられたディスプレイ等にディスプレイ３２と同様の表示が行われる。
【００２３】
他の例では、コンピュータ３０は、前記加速度のデータ、前記振幅のデータ等に基づきロボットＲの先端部の振動をあらわす画像Ｖ１を作成し、当該画像Ｖ１をロボットＲの先端部の軌跡Ｌと共に表示装置３６又はディスプレイ３２に表示する（図７）。当該画像Ｖ１の代わりに、図８に示されるように、振動の大きさに応じて色、太さ等が変化する線である画像Ｖ２が用いられてもよい。
【００２４】
さらに他の例では、コンピュータ３０は、ロボットＲの先端部の詳細な軌跡Ｌをそのまま表示装置３６又はディスプレイ３２に表示する。詳細な軌跡ＬにはロボットＲの先端の振動が含まれている。ユーザは、入力装置３４又は表示装置３６の操作部を操作することによって、注目する位置を表示装置３６等に拡大表示させてもよい。
【００２５】
なお、表示装置３６がヘッドマウントディスプレイである場合、表示装置３６には９軸センサが備えられ、９軸センサの検出結果に応じて、シミュレーションのモデル内における視点が変化する。つまり、９軸センサの検出結果に応じて表示装置３６に表示される画像が変化する。
【００２６】
例えば、９軸センサは、Ｘ軸、Ｙ軸、およびＺ軸方向の加速度センサと、Ｘ軸、Ｙ軸、およびＺ軸周りの加速度センサと、３軸コンパスセンサとを備えている。このため、９軸センサの検出結果に基づき、表示装置３６の位置の変化および姿勢の変化をコンピュータ３０が認識する。コンピュータ３０は、９軸センサの検出結果に基づき認識される表示装置３６の位置の変化および姿勢の変化に基づき、シミュレーションのモデル内における視点を変化させる。これにより、ユーザは、頭の位置および姿勢を変化させることにより、注目点を拡大して観察すること、注目点を他の角度から観察すること等が可能となる。
【００２７】
ユーザによる頭の位置および姿勢の変化は、表示装置３６の位置および姿勢の変化と一致している。そして、表示装置３６がロボットＲの先端部に向かって近づく方向に移動すると、表示装置３６の表示画面における任意の範囲が拡大表示される。つまり、ユーザによる前述の頭の位置および姿勢の変化は、表示装置３６の表示画面における任意の範囲を拡大表示するための操作と言える。
なお、タッチスクリーン機能を有するディスプレイ３２の任意の位置をユーザが指を用いて操作することによって、ディスプレイ３２の表示画面における任意の範囲が拡大表示されてもよい。
【００２８】
ロボットＲの先端部とワークとが近付いた状態で、ロボットＲの先端部の僅かな振動が問題になる場合が多い。しかし、このような状態でユーザがロボットＲの先端部に近付くことは危険であるため、落ち着いて当該状況をユーザが目視することはできない。前述の拡大表示は、ロボットＲの先端部の振動の拡大観察を可能とするので、動作プログラム３３ｂの作成、改善等を行うユーザにとって極めて有用である。
【００２９】
また、コンピュータ３０は、記憶部３３に格納されている学習プログラム（学習手段）３３ｅに基づき、ロボットＲの振動を低減するための学習を行う。例えば、ユーザが入力装置３４を用いて、ロボットＲの先端部の振動の目標値を入力と、学習の開始の指示を行うと、コンピュータ３０は、シミュレーション上でロボットＲを動作プログラム３３ｂに基づき複数回動かす。
【００３０】
この時、コンピュータ３０は、動作速度、各サーボモータ１１ａ，１２ａ，１３ａ，１４ａ，１５ａ，１６ａの動作速度等を少しずつ変化させながら、ロボットＲの最適な動作を探す。そして、学習プログラム３３ｅに基づき改善された改善後動作プログラムを記憶部３３に格納する。なお、周知の学習プログラム３３ｅを用いることが可能であり、様々な周知の学習によりロボットＲの先端部の振動の低減を図ることができる。
【００３１】
コンピュータ３０は、改善後動作プログラムに基づき動作するロボットＲの改善後の振動状態を取得する。取得される振動状態は、改善前の動作プログラム３３ｂに関して取得される振動状態と同様である。
コンピュータ３０は、ロボットＲの先端部の軌跡Ｌをディスプレイ３２および表示装置３６に表示する時に、振動軌跡描画プログラム３３ｄに基づき、改善前の振動状態および改善後の振動状態をディスプレイ３２および表示装置３６に表示する。改善前の振動状態および改善後の振動状態を互いに対し識別可能に表示することが好ましい。一例では、図４に示されるように、改善後の振動状態を示す軌跡Ｌの色又は表示態様を改善前の振動状態を示す軌跡の色又は表示態様と異ならせる。図４では改善前の振動状態が破線で示されている。改善後の振動状態も、改善前の振動状態の前述の各態様によって表示される。
【００３２】
ユーザは、改善後の振動状態を改善前の振動状態と比較することによって、動作プログラム３３ｂの更なる改善の要否を容易且つ適切に判断することが可能となる。ロボットＲの先端部の振動は小さいが、当該小さい振動を前述の態様のようにディスプレイ３２又は表示装置３６に表示すると、ユーザは問題のある振動を容易且つ確実に見つけることができる。
【００３３】
例えば、加工点に到達した時、加工中等は、僅かな振動もワークの加工精度に大きな影響を与えるが、単にロボットＲの先端部が移動している最中の小さな振動は問題とならない場合がある。このような判断は、ワーク種類、ワークへの加工の種類、加工精度に関する要求等に応じて異なる。このため、ユーザが上記のように振動の状態を容易且つ確実に把握できることは、ロボットＲの作業の効率化とロボットＲの作業精度の両立を図る上で極めて有利である。
【００３４】
ユーザは、図９に示されるように、ディスプレイ３２又は表示装置３６に表示されるロボットＲの先端部の軌跡Ｌのうち一部の範囲Ｌ１を、タッチスクリーン機能を有するディスプレイ３２の操作によって選択可能である。ユーザが入力装置３４を用いて前記選択を行ってもよい。ユーザは、例えば軌跡Ｌのうち選択範囲Ｌ１を選択した状態で、ディスプレイ３２のタッチスクリーン機能、入力装置３４等を用いて、学習の開始をコンピュータ３０に指示することができる。
【００３５】
この場合、コンピュータ３０は、選択範囲Ｌ１におけるロボットＲの先端部の振動について重点的に学習を行う。一例では、コンピュータ３０は、選択範囲Ｌ１におけるロボットＲの先端部の振動についてのみ学習を行う。例えば、コンピュータ３０は、シミュレーション上において、選択範囲Ｌ１を含む限られた範囲でロボットＲを複数回に亘って動かし、これにより選択範囲Ｌ１における振動を低減する。当該学習によって改善された改善後動作プログラムに基づく振動状態は前述と同様にディスプレイ３２又は表示装置３６に表示される。
【００３６】
なお、学習プログラム３３ｅを用いずに、ユーザが入力装置３４等を用いて動作プログラム３３ｂを改善してもよい。この場合でも、改善後動作プログラムに基づく振動状態がディスプレイ３２又は表示装置３６に表示される。
また、改善後動作プログラムに基づく振動状態が、改善前の動作プログラム３３ｂに基づく振動状態ではなく、教示した軌跡（目標軌跡）と共にディスプレイ３２又は表示装置３６に表示されてもよい。
【００３７】
第２実施形態に係る振動表示装置および動作プログラム作成装置が、図面を用いながら以下説明されている。
第２実施形態の振動表示装置の構成は第１実施形態と同一である。第２実施形態の動作プログラム作成装置は、図２に示されるようにロボットＲのロボット制御装置２０に接続され、コンピュータ３０がロボット制御装置２０からロボットＲの先端部の振動状態を取得し、この点が第１実施形態と異なっている。
第２実施形態のロボットＲ、ロボット制御装置２０、およびコンピュータ３０は、以下に特に説明が無い場合は、第１実施形態と同様の構成を有する。
【００３８】
第２実施形態では、実際のロボットＲが動作プログラム３３ｂに基づき動作する。また、ロボット制御装置２０は、上記動作が行われている際の各サーボモータ１１ａ，１２ａ，１３ａ，１４ａ，１５ａ，１６ａの作動位置検出装置１７の検出結果（動作情報）に基づき、ロボットＲの先端部の軌跡および振動状態を計算により求める。求められる振動状態は、第１実施形態においてシミュレーション上で取得される振動状態と同様である。
【００３９】
ロボット制御装置２０は、上記動作が行われている際の各サーボモータ１１ａ，１２ａ，１３ａ，１４ａ，１５ａ，１６ａの駆動電流値（動作情報）に基づき、ロボットＲの先端部の軌跡および振動状態を計算により求めてもよい。この場合も、求められる振動状態は、第１実施形態においてシミュレーション上で取得される振動状態と同様である。
【００４０】
コンピュータ３０は、前述のように求められた軌跡Ｌおよび振動状態をロボット制御装置２０から取得し、第１実施形態と同様に軌跡および振動状態を表示装置３６又はディスプレイ３２に表示する。
第２実施形態では、実際のロボットＲの各関節における検出結果に基づき、ロボットＲの先端部の振動が計算により求められる。このため、ユーザは実際のロボットＲの振動を知ることができる。また、ユーザは実際のロボットＲの振動を低減するための前記学習等を適切に行うことができる。また、第２実施形態では、実際のロボットＲの先端部の振動を、センサを追加することなく求めることができる。
【００４１】
第３実施形態に係る振動表示装置および動作プログラム作成装置が、図面を用いながら以下説明されている。
第３実施形態の振動表示装置の構成は第１実施形態と同一である。第３実施形態の動作プログラム作成装置は、図３に示されるように振動測定用センサ５２を有し、コンピュータ３０が振動測定用センサ５２からロボットＲの先端部の振動状態を取得し、この点が第１実施形態と異なっている。
第３実施形態のロボットＲ、ロボット制御装置２０、およびコンピュータ３０は、以下に特に説明が無い場合は、第１実施形態と同様の構成を有する。
【００４２】
第３実施形態では、実際のロボットＲが動作プログラム３３ｂに基づき動作する。図３に示されるように、例えば、ロボットＲの先端部には公知の反射器５１が取付けられ、ロボットＲの周辺に反射器５１の位置を検出するレーザートラッカーである振動測定用センサ５２が設けられている。レーザートラッカーの代わりに、ロボットＲの先端部に振動測定用センサとして加速度センサが取付けられてもよい。
【００４３】
振動測定用センサ５２は例えばロボット制御装置２０に接続され、ロボット制御装置２０は、各サーボモータ１１ａ，１２ａ，１３ａ，１４ａ，１５ａ，１６ａの作動位置検出装置１７の検出結果に基づきロボットＲの先端部の軌跡を認識する。また、ロボット制御装置２０は、軌跡の各位置の振動状態を振動測定用センサ５２の検出結果に基づき取得する。得られる振動状態は、第１実施形態においてシミュレーション上で取得される振動状態と同様である。
【００４４】
コンピュータ３０は、前述の軌跡および振動状態をロボット制御装置２０から取得し、第１実施形態と同様に軌跡および振動状態を表示装置３６又はディスプレイ３２に表示する。コンピュータ３０が、振動測定用センサ５２の検出結果を直接受信してもよい。検出結果はロボットＲの先端部の振動状態をあらわしているので、コンピュータ３０は前述と同様に振動状態の表示を行うことができる。
【００４５】
第３実施形態では、実際のロボットＲの先端部の振動の実測に基づき、コンピュータ３０がロボットＲの先端部の振動を取得する。このため、ユーザは実際のロボットＲの振動を正確に知ることができる。また、ユーザは実際のロボットＲの振動を低減するための前記学習等を適切に行うことができる。
【００４６】
例えば、加工点に到達した時、加工中等は、僅かな振動もワークの加工精度に大きな影響を与えるが、単にロボットＲの先端部が移動している最中の小さな振動は問題とならない場合がある。このような判断は、ワーク種類、ワークへの加工の種類、加工精度に関する要求等に応じて異なる。上記各実施形態では、ロボットＲの先端部の軌跡に沿って、ロボットＲの先端部の振動状態が表示装置３６又はディスプレイ３２に表示される。当該構成は、上記の様々な条件を満たしながら動作プログラム３３ｂの作成および改善を行うユーザにとって、極めて有用である。
【００４７】
なお、コンピュータ３０が、ロボットＲの先端部よりも基端側の基端側部の振動状態を取得し、取得した振動状態を表示装置３６又はディスプレイ３２に表示してもよい。例えば、アーム部材１６、アーム部材１５等の振動をシミュレーション上で取得することができる。当該振動を各サーボモータ１１ａ，１２ａ，１３ａ，１４ａ，１５ａ，１６ａの動作情報に基づき取得することも可能である。ロボットＲのアーム部材１６、アーム部材１５等の振動を加速度センサ、レーザートラッカー等の振動測定用センサ５２で取得することも可能である。
【００４８】
このように基端側部の振動状態を表示装置３６又はディスプレイ３２に表示することにより、先端部の振動の発生原因の特定が容易になる場合がある。また、先端部の振動と基端側部の振動の差分を表示装置３６又はディスプレイ３２に表示することも可能である。当該構成も、先端部の振動の発生原因の特定を容易にするために有利である。
【００４９】
上記各実施形態はＶＲシステムである。他の例では、ＡＲシステムを採用し、表示装置３６又はディスプレイ３２に、ロボットＲの現実の画像に重畳するように、軌跡Ｌおよび振動状態の図を表示することができる。
【００５０】
図１０に示されるように、複数のコンピュータ３０が上位制御システム１００に接続されていてもよい。ロボット制御装置２０もコンピュータ３０と同様に動作プログラム作成装置として機能するので、以下の説明においてコンピュータ３０をロボット制御装置２０に置換することも可能である。
【００５１】
上位制御システム１００は、例えば、複数のコンピュータ３０と有線で接続されたコンピュータ、複数のコンピュータ３０と同じ敷地内に配置されたコンピュータ等である。上位制御システム１００はフォグコンピュータと称される時もある。上位制御システム１００は、生産管理システム、出荷管理システム、ロボット用管理システム、部門管理システム等であり得る。
【００５２】
複数の上位制御システム１００が他の上位制御システム２００等に接続されていてもよい。上位制御システム２００は、例えば、複数の上位制御システム１００と有線又は無線で接続されたクラウドサーバである。複数のコンピュータ３０と上位制御システム１００，２００とによって例えば管理システムが形成される。
上位制御システム１００および上位制御システム２００は、それぞれ、プロセッサ等を有する制御部と、表示装置と、不揮発性ストレージ、ＲＯＭ、ＲＡＭ等を有する記憶部と、キーボード、タッチパネル、操作盤等である入力装置等を備えている。
【００５３】
このようなシステムは、例えば図１１に示されるように、複数のエッジコンピュータ８、複数の上位制御システム１００、および単一又は複数の上位制御システム２００を含んでいてもよい。図１１のシステムにおいて、コンピュータ３０、ロボット制御装置２０、およびロボットＲは、エッジコンピュータ８であり得る。コンピュータ３０、ロボット制御装置２０、およびロボットＲの一部が上位制御システム１００であってもよい。図１１のシステムは、有線又は無線のネットワークを備えている。
【００５４】
複数のエッジコンピュータ８が、前記学習機能を有する他のエッジコンピュータ８、上位制御システム１００、又は上位制御システム２００に前記学習用情報を送信してもよい。例えば図１２に示される構成で当該送信が行われる。この場合、学習機能を有する他のエッジコンピュータ８、上位制御システム１００、又は上位制御システム２００は、受信した学習用情報を用いて学習を行い、各エッジコンピュータ８によるロボットＲの制御のための動作パラメータ（学習結果）、動作プログラム（学習結果）等を自動的且つ正確に求めることが可能である。
【００５５】
また、学習機能を有する他のエッジコンピュータ８、上位制御システム１００、又は上位制御システム２００は、受信した学習用情報を用いて、複数のエッジコンピュータ８がそれぞれ制御する複数のロボットＲの共通の動作パラメータ（学習結果）、動作プログラム（学習結果）等を求めることが可能である。つまり、前記複数のロボットＲが共通の動作パラメータ又は動作プログラムを有することになる。当該システムによれば、多様なデータ集合を用いて、学習の速度、信頼性等を向上することができる。
【００５６】
また、前記学習機能を有するエッジコンピュータ８および上位制御システム１００の複数が、前記学習機能を有する他のエッジコンピュータ８、上位制御システム１００、又は上位制御システム２００に前記学習用情報、学習において作成された学習モデル、および学習結果の少なくとも一つを送信してもよい。例えば図１３に示される構成で当該送信が行われる。学習機能を有する他のエッジコンピュータ８、上位制御システム１００、又は上位制御システム２００は、受信した情報に基づく知識の最適化や効率化の処理を行うことで、新たに最適化又は効率化された学習モデル又は学習結果を生成する。生成された学習モデル又は学習結果はロボットＲを制御するエッジコンピュータ８に配布される。学習結果が配布される場合、配布先のエッジコンピュータ８は学習機能を持っていなくてもよい。
【００５７】
エッジコンピュータ８の間で前記学習用情報、学習モデル、および学習結果を共有することが可能である。例えば図１３に示される構成で当該共有が行われる。これは、機械学習の効率の向上に繋がる。また、互いにネットワークで接続された複数のエッジコンピュータ８のうちの一部のエッジコンピュータ８に学習機能を実装し、一部のエッジコンピュータ８の学習結果を他のエッジコンピュータ８によるロボットの制御に用いることも可能である。これは、機械学習に要するコストの低減に繋がる。
【００５８】
上記実施形態に即した例を以下説明する。
例えば、前述のように、コンピュータ３０又はロボット制御装置２０は、ロボットＲの先端部の軌跡のうち選択された選択範囲Ｌ１の振動を低減する学習を行う。また、上位制御システム１００，２００は、コンピュータ３０又はロボット制御装置２０から学習結果と、当該学習に関する動作プログラム３３ｂを受信し、受信した学習結果を動作プログラム３３ｂと関連付けて蓄積する。
【００５９】
上位制御システム１００，２００は、蓄積された学習結果を用いて学習を行い、当該学習の結果をコンピュータ３０又はロボット制御装置２０に送信する。
また、上位制御システム１００，２００は、受信した学習結果、又は、当該学習結果を用いて上位制御システム１００，２００において行われた学習の結果を、学習機能を持たないコンピュータ３０又はロボット制御装置２０に送信する。
【符号の説明】
【００６０】
Ｒ  ロボット
Ｔ  ツール
１１〜１６  アーム部材
１７  作動位置検出装置
２０  ロボット制御装置
２２  ディスプレイ
２３  記憶部
２４  入力装置
３０  コンピュータ
３１  プロセッサ
３２  ディスプレイ
３３  記憶部
３３ｂ  動作プログラム
３３ｃ  振動取得プログラム（振動取得手段）
３３ｄ  振動軌跡描画プログラム（振動軌跡描画手段）
３３ｅ  学習プログラム（学習手段）
３４  入力装置
３６  表示装置（振動表示装置）
【図１】
2020179484.tif 000003
【図２】
2020179484.tif 000004
【図３】
2020179484.tif 000005
【図４】
2020179484.tif 000006
【図５】
2020179484.tif 000007
【図６】
2020179484.tif 000008
【図７】
2020179484.tif 000009
【図８】
2020179484.tif 000010
【図９】
2020179484.tif 000011
【図１０】
2020179484.tif 000012
【図１１】
2020179484.tif 000013
【図１２】
2020179484.tif 000014
【図１３】
2020179484.tif 000015