(57)【要約】【課題】生産ラインにおける運用を考慮した学習制御を行うロボットを提供する。【解決手段】制御装置１３は、センサ１１に基づいて検出された制御対象部位の位置と目標位置との差分である差分量を算出し、ロボット機構部１２の動作速度を増加又は減少するために設定される動作速度変更率の最大値を超えない範囲内で、且つ、制御対象部位で発生する振動の許容条件の範囲内で、複数回に渡って動作速度変更率を増加又は減少させながら、各回の動作速度変更率における振動を抑制させるために前回算出された補正量と差分量とに基づいて、新たな補正量を算出する学習を繰返すと共に、補正量及び動作速度変更率が収束した後に、収束した際の補正量及び動作速度変更率を記憶する、学習制御部１９を有する。【選択図】図３
2018149606.tif 000002
【特許請求の範囲】
【請求項１】
位置制御の対象である制御対象部位の位置を検出するためのセンサを備えたロボット機構部と、作業プログラムに従って前記ロボット機構部の動作を制御する制御装置と、を備えるロボットであって、
前記制御装置は、
前記制御対象部位の目標軌跡又は目標位置に関する動作指令によって前記ロボット機構部を動作させて、前記センサに基づいて検出された前記制御対象部位の位置と前記目標位置との差分である差分量を算出すると共に、前記制御対象部位の位置を前記目標位置に近づけるために前回算出された補正量と前記差分量とに基づいて、新たな補正量を算出する学習を行う学習制御部と、
前記動作指令が与えられ、与えられた前記動作指令及び前記学習制御部で算出された新たな補正量を用いて、前記ロボット機構部の動作を制御するロボット制御部と、
を有し、
前記学習制御部は、
前記ロボット機構部の動作速度を増加又は減少するために設定される動作速度変更率の最大値を超えない範囲内で、且つ、前記制御対象部位で発生する振動の許容条件の範囲内で、複数回に渡って前記動作速度変更率を増加又は減少させる動作速度変更率調整部と、
各回の動作速度変更率における前記振動を抑制させるために前記新たな補正量を算出する補正量算出部と、
前記補正量及び前記動作速度変更率が収束した後に、収束した際の前記補正量及び前記動作速度変更率を記憶する記憶部と、
を有する、ロボット。
【請求項２】
更に、前記振動の許容条件を入力する振動条件入力手段を備える、請求項１に記載のロボット。
【請求項３】
前記振動条件入力手段が、前記制御対象部位の目標軌跡の一部及び全体の少なくとも一方に対して前記振動の許容条件を入力可能である、請求項２に記載のロボット。
【請求項４】
前記学習制御部が、前記動作速度変更率の最大値を、前記ロボット機構部で許容される最大速度及び最大加速度に基づいて予め算出する、請求項１乃至３の何れか一項に記載のロボット。
【請求項５】
前記制御装置が、前記学習制御部における入力データ、記憶データ、及び出力データのうち少なくとも１つを上位コンピュータへ送信する手段、記録媒体へ出力する手段、又は教示操作盤上に表示する手段を有する、請求項１乃至４の何れか一項に記載のロボット。
【請求項６】
前記センサが、加速度センサ、ジャイロセンサ、慣性センサ、力センサ、レーザトラッカ、カメラ、又はモーションキャプチャである、請求項１乃至５の何れか一項に記載のロボット。
【請求項７】
位置制御の対象である制御対象部位の位置を検出するためのセンサを備えたロボット機構部と、作業プログラムに従って前記ロボット機構部の動作を制御する制御装置と、を備えるロボットの制御方法であって、
前記制御対象部位の目標軌跡又は目標位置に関する動作指令によって前記ロボット機構部を動作させて、前記センサに基づいて検出された前記制御対象部位の位置と前記目標位置との差分である差分量を算出するステップと、
前記ロボット機構部の動作速度を増加又は減少するために設定される動作速度変更率の最大値を超えない範囲内で、且つ、前記制御対象部位で発生する振動の許容条件の範囲内で、複数回に渡って前記動作速度変更率を増加又は減少させるステップと、
各回の動作速度変更率における前記振動を抑制させるために前回算出された補正量と前記差分量とに基づいて、新たな補正量を算出する学習を繰返すステップと、
前記補正量及び前記動作速度変更率が収束した後に、収束した際の前記補正量及び前記動作速度変更率を記憶するステップと、
を含む、ロボットの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットの制御技術に関し、特に生産ラインにおける運用を考慮した学習制御を行うロボット及びその制御方法に関する。
【背景技術】
【０００２】
ロボット動作を高速化し、タクトタイムを短縮することは生産効率に直結する。しかし、一定以上ロボット動作を高速化した場合、減速機及びロボットアームの剛性不足等の要因によってロボット先端部に振動が発生してしまう。斯かる問題の対処法として、ロボット先端部にセンサを取付けて動作中の振動を計測することにより、ロボット動作を高速化しながらロボット先端部の振動を学習制御する方法が提案されている（例えば特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１１−１６７８１７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
実際の生産ラインでは、ロボット先端部の振動の大きさに依存して、ロボットが作業対象物に対して正確に作業できない場合や作業対象物を傷めてしまう場合がある。従って、学習中及び学習完了後を問わず、振動の許容値が非常に重要となる。振動が許容値を超えていると、生産ラインにおける要求を満たすことができないため、動作速度を落として再度学習を行うという手間が生じる。また、動作速度をどの程度落とすかについて、作業者の試行錯誤が必要となる。
【０００５】
学習中の動作を高速化することにより、ロボット先端部の振動が許容値を超えてしまう場合には、生産ラインを稼働させながら学習を行うことができない。斯かる場合には、作業対象物を配置せずに学習を行う必要があるが、生産ラインを停止するため、稼働率が下がり、ユーザに大きな損失を与える。また、教示したプログラムによっては、作業対象物を配置せずにプログラムを実行できない場合もあり、斯かる場合には学習すること自体が困難となる。
【０００６】
そこで、生産ラインにおける運用を考慮した学習制御を行う技術が求められている。
【課題を解決するための手段】
【０００７】
本開示の一態様は、位置制御の対象である制御対象部位の位置を検出するためのセンサを備えたロボット機構部と、作業プログラムに従ってロボット機構部の動作を制御する制御装置と、を備えるロボットであって、制御装置は、制御対象部位の目標軌跡又は目標位置に関する動作指令によってロボット機構部を動作させて、センサに基づいて検出された制御対象部位の位置と目標位置との差分である差分量を算出すると共に、制御対象部位の位置を目標位置に近づけるために前回算出された補正量と差分量とに基づいて、新たな補正量を算出する学習を行う学習制御部と、動作指令が与えられ、与えられた動作指令及び学習制御部で算出された新たな補正量を用いて、ロボット機構部の動作を制御するロボット制御部と、を有し、学習制御部は、ロボット機構部の動作速度を増加又は減少するために設定される動作速度変更率の最大値を超えない範囲内で、且つ、制御対象部位で発生する振動の許容条件の範囲内で、複数回に渡って動作速度変更率を増加又は減少させる動作速度変更率調整部と、各回の動作速度変更率における振動を抑制させるために新たな補正量を算出する補正量算出部と、補正量及び動作速度変更率が収束した後に、収束した際の補正量及び動作速度変更率を記憶する記憶部と、を有する、ロボットを提供する。
本開示の他の一態様は、位置制御の対象である制御対象部位の位置を検出するためのセンサを備えたロボット機構部と、作業プログラムに従ってロボット機構部の動作を制御する制御装置と、を備えるロボットの制御方法であって、制御対象部位の目標軌跡又は目標位置に関する動作指令によってロボット機構部を動作させて、センサに基づいて検出された制御対象部位の位置と目標位置との差分である差分量を算出するステップと、ロボット機構部の動作速度を増加又は減少するために設定される動作速度変更率の最大値を超えない範囲内で、且つ、制御対象部位で発生する振動の許容条件の範囲内で、複数回に渡って動作速度変更率を増加又は減少させるステップと、各回の動作速度変更率における振動を抑制させるために前回算出された補正量と差分量とに基づいて、新たな補正量を算出する学習を繰返すステップと、補正量及び動作速度変更率が収束した後に、収束した際の補正量及び動作速度変更率を記憶するステップと、を含む、ロボットの制御方法を提供する。
【発明の効果】
【０００８】
本開示の一態様によれば、動作速度変更率の最大値を超えない範囲内で、且つ、振動の許容条件の範囲内で、複数回に渡って動作速度変更率を増加又は減少させながら制御対象部位で発生する振動を学習制御するため、生産ラインが稼働中であっても制御対象部位で発生する振動によって作業対象物が傷つくことは無い。即ち、生産ラインが稼働中であっても、ロボットの動作速度を高速化しながら制御対象部位で発生する振動を学習制御できる。
【図面の簡単な説明】
【０００９】
【図１】一実施形態に係るロボットの概略図である。
【図２】一実施形態に係るロボット機構部の構成図である。
【図３】一実施形態に係る制御装置のブロック図である。
【図４】一実施形態に係るロボットの制御方法を示すフローチャートである。
【発明を実施するための形態】
【００１０】
以下、添付図面を参照して本開示の実施形態を詳細に説明する。各図面において、同一又は類似の構成要素には同一又は類似の符号が付与されている。また、以下に記載する実施形態は、特許請求の範囲に記載される発明の技術的範囲及び用語の意義を限定するものではない。
【００１１】
図１は本実施形態に係るロボット１０の概略図であり、図２は本実施形態に係るロボット機構部１２の構成図である。図１に示すように、ロボット１０は、位置制御の対象である制御対象部位の位置を検出するためのセンサ１１を備えたロボット機構部１２と、作業プログラムに従ってロボット機構部１２の動作を制御する制御装置１３と、を備える。センサ１１は、有線又は無線により制御装置１３と通信可能であり、ロボット機構部１２は、ケーブル１４を介して制御装置１３と通信可能である。
【００１２】
センサ１１は、制御対象部位の一例であるロボット先端部１５に取付けられると共に、ロボット先端部１５における三軸方向の加速度を検出する、加速度センサである。センサ１１によって検出された三軸加速度は、制御装置１３によって三次元位置に変換される。ロボット先端部１５における三次元位置を最終的に算出可能であれば、センサ１１は、加速度以外のデータ、例えば位置、速度、角速度、力、レーザ等の飛来時間、画像等を取得するものでもよい。即ち、他の実施形態では、センサ１１が、ジャイロセンサ、慣性センサ、力センサ、レーザトラッカ、カメラ、モーションキャプチャ等でもよい。
【００１３】
図２に示すように、ロボット機構部１２は、サーボモータ（図示せず）等を有する６つの関節軸Ｊ１〜Ｊ６を備えた公知のロボットマニピュレータであり、空間上に固定されるワールド座標系Ｃ１と、フランジ１６の位置にあるメカニカルインタフェイス座標系Ｃ２と、が少なくとも定義される。センサ１１によって検出された三軸加速度は、公知の方法を用いて、制御装置１３でメカニカルインタフェイス座標系の三次元位置からワールド座標系の三次元位置に変換される。
【００１４】
図３は、本実施形態に係る制御装置１３のブロック図である。図３に示すように、制御装置１３は、作業プログラム１７に従ってロボット機構部１２の動作を制御するロボット制御部１８を備える。ロボット制御部１８は、作業プログラム１７からロボット先端部１５の目標軌跡又は目標位置に関する動作指令が与えられ、与えられた動作指令を用いて、ロボット機構部１２のサーボモータ（図示せず）を動作させる。動作指令とは、最終的に目標軌跡又は目標位置に関する位置指令に変換できるものであればよく、例えば時間に関する三軸位置、三軸速度、三軸加速度等から成る指令を含む。ロボット制御部１８は、実際の位置及び速度が目標位置及び目標速度に一致するように、位置フィードバック制御、速度フィードバック制御、及び電流フィードバック制御を行う。しかし、斯かる制御を行っても、ロボット１０の動作を高速化した場合には、減速機やロボットアームの剛性不足等の要因によってロボット先端部１５に振動が発生し、目標軌跡及び目標位置からの誤差が生じる。このため、制御装置１３は、ロボット先端部１５に取付けられたセンサ１１によって位置誤差を検出すると共に、ロボット先端部１５の振動を学習制御する学習制御部１９を備える。
【００１５】
学習制御部１９は、新たな作業パターン（新たな目標軌跡及び目標位置）や作業パターンの修正を教示されると学習を開始する。学習制御部１９は、センサ１１に基づいて検出されたロボット先端部１５の位置（「センサ位置」と称する。）と、ロボット制御部１８に与えられた目標位置とを記憶する第１メモリ２０を備える。また、学習制御部１９は、第１メモリ２０に記憶されたセンサ位置と目標位置との差分量を算出する差分量算出部２１を備える。更に、学習制御部１９は、ロボット先端部１５の位置を目標位置に近づけるために前回算出された補正量と、前述した差分量（即ち、今回の振動成分を含む情報）とから振動抑制効果を学習した上で、新たな補正量を算出する補正量算出部２２と、を備える。補正量とは、最終的にロボット先端部１５の位置を目標位置に近づける位置補正量に変換できるものであればよく、例えば時間に関する三軸位置、三軸速度、三軸加速度から成る補正量を含む。
【００１６】
学習制御部１９は、更に、ロボット機構部１２の動作速度を増加又は減少するために設定される動作速度変更率の最大値と、ロボット先端部１５で発生する振動の許容条件（振幅、整定時間等の許容値）と、を記憶する第４メモリ２３を備える。また、学習制御部１９は、動作速度変更率の最大値を超えない範囲内で、且つ、振動の許容条件の範囲内で、前回の動作速度変更率を増加又は減少させて新たな動作速度変更率に調整する動作速度変更率調整部２４を備える。加えて、学習制御部１９は、補正量算出部２２で算出された新たな補正量と、動作速度変更率調整部２４で調整された新たな動作速度変更率と、を記憶する第２メモリ２５を備える。ロボット制御部１８は、第２メモリ２５に記憶された新たな補正量及び新たな動作速度変更率に基づいて、ロボット機構部１２の動作を制御する。
【００１７】
他方、学習制御部１９は、新たな補正量と前回の補正量との比、及び、新たな動作速度変更率と前回の動作速度変更率との比が、それぞれ所定範囲内か否かを比較する比較部２６を備える。即ち、比較部２６は、補正量の収束率及び動作速度変更率の収束率がそれぞれ所定範囲内（例えば９８％以上）か否かを判定する。更に、学習制御部１９は、収束した補正量及び収束した動作速度変更率を記憶する第３メモリ２７を備える。第１メモリ２０、第２メモリ２５、及び第４メモリ２３は、高速な学習制御を行うためにＤＲＡＭ等の揮発性メモリであることが好ましいが、第３メモリ２７は、電源切断後であっても収束した補正量及び収束した動作速度変更率を記憶するためにＥＥＰＲＯＭ等の不揮発性メモリであることが好ましい。収束した補正量及び収束した動作速度変更率は、電源投入後に第２メモリ２５に読出されてロボット制御部１８で再利用される。
【００１８】
更に、ロボット１０は、図示しないものの、第４メモリ２３に記憶する振動の許容条件（振幅、整定時間等の許容値）を入力する振動条件入力手段を備えていてもよい。振動条件入力手段としては、教示操作盤（図示せず）上の液晶タッチパネル、キーボード、マウス等を利用できる。振動条件入力手段は、教示された目標軌跡の一部及び全部の少なくとも一方に対して振動の許容条件（振幅、整定時間等の許容値）を入力可能であることが好ましい。これにより、例えばロボット１０が地点Ａで掴んだ作業対象物を地点Ｂに置く作業を行う場合、全過程において振動の許容条件を一律に設定できるだけでなく、地点Ａから地点Ｂまで物体を運ぶ過程（動作中）における振動の許容条件を緩く設定すると共に、地点Ｂに物体を置く過程（動作停止付近）における振動の許容条件を厳しく設定できる。即ち、制御装置１３は、運ぶ過程ではロボット機構部１２の動作速度を高速化し、且つ、置く過程ではロボット先端部１５の振動を抑えて作業対象物の損傷を防止するといった制御を行うことができる。
【００１９】
また、学習制御部１９は、第４メモリ２３に記憶する動作速度変更率の最大値を、ロボット機構部１２（即ち、サーボモータ等）で許容される最大速度及び最大加速度（即ち、モータ速度の許容値及びモータトルクの許容値）から予め算出してもよい。学習制御部１９は、ある作業パターンにおける各関節軸のモータ速度の最大値及びモータトルクの最大値を、それぞれω_maxj，τ_maxj（ｊは各関節軸の軸番号）として記憶しておき、斯かる作業パターン（又は目標軌跡）に対して設定可能な動作速度変更率αの最大値αmaxを予め算出する。作業の経過時間tとモータ目標角度θとの関係を、
【数１】
2018149606.tif 000003
とすると、動作速度変更率αとは、
【数２】
2018149606.tif 000004
となるように動作させる指標である。この式において、モータ速度はαに比例し、モータトルクはαの二乗に比例することを考慮すると、許容される動作速度変更率の最大値αmaxは、
【数３】
2018149606.tif 000005
として予め算出できる。ここで、ω_alwj，τ_alwjは、各関節軸におけるモータ速度の許容値及びモータトルクの許容値である。
【００２０】
更に、制御装置１３は、学習制御部１９における入力データ、記憶データ、及び出力データのうち少なくとも１つを上位コンピュータ（図示せず）へ送信する手段、記録媒体へ出力する手段、又は教示操作盤（図示せず）上に表示する手段を有することが好ましい。学習制御部１９における入力データとしては、各学習回における振動及びサイクルタイムを示す情報、教示した目標軌跡を修正したことにより再度学習が必要になった作業パターンの情報等を挙げることができる。また、学習制御部１９における記憶データとしては、第３メモリ２７に記憶した収束した補正量及び収束した動作速度変更率、第４メモリ２３に記憶した振動の許容条件（振幅、整定時間等の許容値）、動作速度変更率の最大値等を挙げることができる。学習制御部１９における出力データとしては、学習の進捗率（例えば、学習の経過時間と収束予測時間との比等）を挙げることができる。
【００２１】
図４は、本実施形態に係るロボットの制御方法を示すフローチャートである。本実施形態に係る制御方法は、図３に示すハードウェアで実行されるが、他の実施形態では、作業プログラム１７等のソフトウェアによって実装されてもよい。先ず、ステップＳ１０では、学習を行う前に、作業者が教示操作盤上でロボット先端部１５における振動の許容条件（振幅、整定時間等の許容値）を設定する。ステップＳ１１では、ロボット機構部１２（例えばサーボモータ等）で許容される最大速度及び最大加速度（例えばモータ速度の許容値及びモータトルクの許容値）に基づいて、動作速度変更率の最大値を予め算出する。
【００２２】
ステップＳ１２では、学習対象の動作を行い、センサ１１で検出されたロボット先端部１５の位置と目標位置との差分量を算出する。ステップＳ１３では、差分量（即ち、今回の振動成分を含む情報）が振動の許容条件（振幅、整定時間等の許容値）を超えている場合には、前回の動作速度変更率を減少させて新たな動作速度変更率に調整する。一方、差分量（即ち、今回の振動成分を含む情報）が振動の許容条件（振幅、整定時間等の許容値）以下である場合には、動作速度変更率の最大値を超えない範囲内で、前回の動作速度変更率を増加させて新たな動作速度変更率に調整する。
【００２３】
ステップＳ１４では、前回算出した補正量と、前述した差分量（即ち、今回の振動成分を含む情報）とから振動抑制効果を学習した上で、新たな補正量を算出する。ステップＳ１５では、新たな補正量と前回の補正量との比（即ち、補正量の収束率）、及び、新たな動作速度変更率と前回の動作速度変更率との比（即ち、動作速度変更率の収束率）が、それぞれ所定範囲内（例えば９８％以上）か否かを比較する。補正量の収束率及び動作速度変更率の収束率の少なくとも一方が所定範囲外（例えば９８％未満）である場合には、ステップＳ１２に戻り、学習制御を繰返す。補正量の収束率及び動作速度変更率の収束率の双方が所定範囲内（例えば９８％以上）である場合には、ステップＳ１６に進み、収束した補正量及び収束した動作速度変更率を不揮発性メモリ（第３メモリ）に記憶する。補正量及び動作速度変更率が収束すると、学習が終了する。
【００２４】
本実施形態に係るロボット及び制御方法によれば、動作速度変更率の最大値を超えない範囲内で、且つ、振動の許容条件（振幅、整定時間等の許容値）との範囲内で、複数回に渡って動作速度変更率を増加又は減少させながらロボット先端部１５で発生する振動を学習制御するため、生産ラインが稼働中であってもロボット先端部１５で発生する振動によって作業対象物が傷つくことは無い。即ち、生産ラインが稼働中であっても、ロボット１０の動作速度を高速化しながらロボット先端部１５で発生する振動を学習制御できる。
【００２５】
前述した実施形態におけるソフトウェアは、コンピュータ読取り可能な非一時的記録媒体、ＣＤ−ＲＯＭ等に記録して提供できる。本明細書において種々の実施形態について説明したが、本発明は、前述した種々の実施形態に限定されるものではなく、以下の特許請求の範囲に記載された範囲内において種々の変更を行えることを認識されたい。
【符号の説明】
【００２６】
１０    ロボット
１１    センサ
１２    ロボット機構部
１３    制御装置
１４    ケーブル
１５    ロボット先端部
１６    フランジ
１７    作業プログラム
１８    ロボット制御部
１９    学習制御部
２０    第１メモリ
２１    差分量算出部
２２    補正量算出部
２３    第４メモリ
２４    動作速度変更率調整部
２５    第２メモリ
２６    比較部
２７    第３メモリ
Ｊ１〜Ｊ６    第１関節軸〜第６関節軸
【図１】
2018149606.tif 000006
【図２】
2018149606.tif 000007
【図３】
2018149606.tif 000008
【図４】
2018149606.tif 000009