(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-10-07
(45)【発行日】2024-10-16
(54)【発明の名称】減速機の角度伝達誤差補正方法およびロボットシステム
(51)【国際特許分類】
B25J 9/10 20060101AFI20241008BHJP
B25J 13/08 20060101ALI20241008BHJP
【FI】
B25J9/10 A
B25J13/08 Z
(21)【出願番号】P 2021014201
(22)【出願日】2021-02-01
【審査請求日】2023-12-26
(73)【特許権者】
【識別番号】000002369
【氏名又は名称】セイコーエプソン株式会社
(74)【代理人】
【識別番号】100179475
【氏名又は名称】仲井 智至
(74)【代理人】
【識別番号】100216253
【氏名又は名称】松岡 宏紀
(74)【代理人】
【識別番号】100225901
【氏名又は名称】今村 真之
(72)【発明者】
【氏名】村上 尚人
【審査官】稲垣 浩司
(56)【参考文献】
【文献】特開2019-948(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
B25J 1/00 - 21/02
(57)【特許請求の範囲】
【請求項1】
アームと、
入力軸および前記アームに接続されている出力軸を有する減速機と、
前記入力軸に接続され、前記減速機を介して前記アームを回転させる動力を発生するモ
ーターと、
前記入力軸の回転角度位置を検出するエンコーダーと、
前記アームに設けられ、前記アームの回転角速度を検出する慣性センサーと、
を備えるロボットシステムにおいて、
前記減速機の角度伝達誤差を補正する補正データを作成する減速機の角度伝達誤差補正
方法であって、
前記補正データを作成するのに必要な前記入力軸の必要
回転入力角度範囲よりも小さい
回転入力角度範囲で前記アームを回転させるステップと、
前記回転入力角度範囲で前記アームが回転しているとき、前記エンコーダーからの出力
値と、前記慣性センサーからの出力値と、に基づいて、前記減速機の角度伝達誤差を測定
し、記録するステップと、
前記減速機の角度伝達誤差を測定した時間、または、前記減速機の角度伝達誤差を測定
した角度範囲、を指標とし、前記指標の累積値が所定値以上であるか否かを判定するステ
ップと、
前記指標の累積値が前記所定値未満である場合、前記減速機の角度伝達誤差を測定し、
記録を更新するステップと、
前記指標の累積値が前記所定値以上である場合、記録した前記減速機の角度伝達誤差に
基づいて、前記補正データを作成するステップと、
を有
し、
前記指標が前記測定した時間である場合、前記所定値は、前記必要回転入力角度範囲で
の測定に必要な測定時間であり、
前記指標が前記測定した角度範囲である場合、前記所定値は、前記必要回転入力角度範
囲である、
ことを特徴とする減速機の角度伝達誤差補正方法。
【請求項2】
前記入力軸を一定の回転角速度で動作させているとき、前記減速機の角度伝達誤差を測
定する請求項1に記載の減速機の角度伝達誤差補正方法。
【請求項3】
前記入力軸の前記回転入力角度範囲および前記入力軸の前記回転角速度に基づいて、前
記減速機の角度伝達誤差を測定するのに要する時間を算出し、報知する請求項2に記載の
減速機の角度伝達誤差補正方法。
【請求項4】
前記指標は、前記減速機の角度伝達誤差を測定した時間である請求項1ないし3のいず
れか1項に記載の減速機の角度伝達誤差補正方法。
【請求項5】
前記慣性センサーは、ジャイロセンサーである請求項1ないし4のいずれか1項に記載
の減速機の角度伝達誤差補正方法。
【請求項6】
アームと、
入力軸および前記アームに接続されている出力軸を有する減速機と、
前記入力軸に接続され、前記減速機を介して前記アームを回転させる動力を発生するモ
ーターと、
前記入力軸の回転角度位置を検出するエンコーダーと、
前記アームに設けられ、前記アームの回転角速度を検出する慣性センサーと、
前記減速機の角度伝達誤差を補正する補正データを作成する制御装置と、
を備え、
前記制御装置は、
前記補正データを作成するのに必要な前記入力軸の必要
回転入力角度範囲よりも小さい
回転入力角度範囲で前記アームを回転させ、
前記回転入力角度範囲で前記アームが回転しているとき、前記エンコーダーからの出力
値と、前記慣性センサーからの出力値と、に基づいて、前記減速機の角度伝達誤差を測定
して記録し、
前記減速機の角度伝達誤差を測定した時間、または、前記減速機の角度伝達誤差を測定
した角度
範囲、を指標とし、前記指標の累積値が所定値以上であるか否かを判定し、
前記指標の累積値が前記所定値未満である場合、前記減速機の角度伝達誤差を測定して
記録を更新し、
前記指標の累積値が前記所定値以上である場合、記録した前記減速機の角度伝達誤差に
基づいて、前記補正データを作成
し、
前記指標が前記測定した時間である場合、前記所定値は、前記必要回転入力角度範囲で
の測定に必要な測定時間であり、
前記指標が前記測定した角度範囲である場合、前記所定値は、前記必要回転入力角度範
囲である、
ことを特徴とするロボットシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、減速機の角度伝達誤差補正方法およびロボットシステムに関するものである。
【背景技術】
【0002】
ロボットアームの関節部を駆動する駆動部には、モーターと、モーターに接続された減速機と、が用いられている。また、減速機として、波動歯車減速機が知られている。波動歯車減速機は、その原理上、角度伝達誤差を含む。この角度伝達誤差は、ロボットアームの関節部の駆動精度を低下させる原因となる。
【0003】
そこで、特許文献1には、サーボモーターを回転駆動し、減速機を介してロボットアームの駆動軸にトルクを伝達するとき、減速機が有する角度伝達誤差を補正するため、伝達誤差補正量をあらかじめ算出する方法が開示されている。この方法では、まず、ロボットの制御装置に対し、所定速度で、かつ、回転可能角度の全範囲にわたって駆動軸を回転させる教示を行う。次に、教示にしたがって駆動軸を回転させたときに外部に設置された位置計測手段によって駆動軸の回転角度を計測し、計測角度データとして記録する。また、サーボモーターに接続されたエンコーダーが検出するモーター回転角度データも記録する。そして、計測角度データとモーター回転角度データとの差に基づいて伝達誤差補正量を算出する。
【0004】
このような方法によれば、減速機の角度伝達誤差を計測し、それを補正する補正量を算出することができる。
【先行技術文献】
【特許文献】
【0005】
【発明の概要】
【発明が解決しようとする課題】
【0006】
特許文献1に記載の方法では、角度伝達誤差を計測する際に、ロボットアームの駆動軸をその回転可能角度の全範囲にわたって回転させる必要がある。しかしながら、ロボットを使用する環境によっては、ロボットアームの動作範囲が制限される場合がある。このような場合、ロボットアームの駆動軸をその回転可能角度の全範囲にわたって回転させることができない。そうすると、伝達誤差補正量を精度よく算出することができない。
【課題を解決するための手段】
【0007】
本発明の適用例に係る減速機の角度伝達誤差補正方法は、
アームと、
入力軸および前記アームに接続されている出力軸を有する減速機と、
前記入力軸に接続され、前記減速機を介して前記アームを回転させる動力を発生するモ
ーターと、
前記入力軸の回転角度位置を検出するエンコーダーと、
前記アームに設けられ、前記アームの回転角速度を検出する慣性センサーと、を備える
ロボットシステムにおいて、
前記減速機の角度伝達誤差を補正する補正データを作成する減速機の角度伝達誤差補正
方法であって、
前記補正データを作成するのに必要な前記入力軸の必要回転入力角度範囲よりも小さい
回転入力角度範囲で前記アームを回転させるステップと、
前記回転入力角度範囲で前記アームが回転しているとき、前記エンコーダーからの出力
値と、前記慣性センサーからの出力値と、に基づいて、前記減速機の角度伝達誤差を測定
し、記録するステップと、
前記減速機の角度伝達誤差を測定した時間、または、前記減速機の角度伝達誤差を測定
した角度範囲、を指標とし、前記指標の累積値が所定値以上であるか否かを判定するステ
ップと、
前記指標の累積値が前記所定値未満である場合、前記減速機の角度伝達誤差を測定し、
記録を更新するステップと、
前記指標の累積値が前記所定値以上である場合、記録した前記減速機の角度伝達誤差に
基づいて、前記補正データを作成するステップと、
を有し、
前記指標が前記測定した時間である場合、前記所定値は、前記必要回転入力角度範囲で
の測定に必要な測定時間であり、
前記指標が前記測定した角度範囲である場合、前記所定値は、前記必要回転入力角度範
囲である、
ことを特徴とする。
【0008】
本発明の適用例に係るロボットシステムは、
アームと、
入力軸および前記アームに接続されている出力軸を有する減速機と、
前記入力軸に接続され、前記減速機を介して前記アームを回転させる動力を発生するモ
ーターと、
前記入力軸の回転角度位置を検出するエンコーダーと、
前記アームに設けられ、前記アームの回転角速度を検出する慣性センサーと、
前記減速機の角度伝達誤差を補正する補正データを作成する制御装置と、
を備え、
前記制御装置は、
前記補正データを作成するのに必要な前記入力軸の必要回転入力角度範囲よりも小さい
回転入力角度範囲で前記アームを回転させ、
前記回転入力角度範囲で前記アームが回転しているとき、前記エンコーダーからの出力
値と、前記慣性センサーからの出力値と、に基づいて、前記減速機の角度伝達誤差を測定
して記録し、
前記減速機の角度伝達誤差を測定した時間、または、前記減速機の角度伝達誤差を測定
した角度、を指標とし、前記指標の累積値が所定値以上であるか否かを判定し、
前記指標の累積値が前記所定値未満である場合、前記減速機の角度伝達誤差を測定して
記録を更新し、
前記指標の累積値が前記所定値以上である場合、記録した前記減速機の角度伝達誤差に
基づいて、前記補正データを作成し、
前記指標が前記測定した時間である場合、前記所定値は、前記必要回転入力角度範囲で
の測定に必要な測定時間であり、
前記指標が前記測定した角度範囲である場合、前記所定値は、前記必要回転入力角度範
囲である、
ことを特徴とする。
【図面の簡単な説明】
【0009】
【
図1】実施形態に係るロボットシステムを示す概略図である。
【
図2】
図1に示すロボットシステムの機能ブロック図である。
【
図3】図
1に示すコントローラーおよびコンピューターのハードウェア構成の一例である。
【
図4】減速機の入力軸に対して継続的に一定速度の回転入力があった場合の、入力軸の回転角度位置の時間変化を示すグラフの一例である。
【
図5】減速機の入力軸に対して継続的に一定速度の回転入力があった場合の、出力軸の回転角度位置の時間変化を示すグラフの一例である。
【
図6】減速機の出力軸から継続的に一定速度の回転出力を行おうとする場合の、入力軸の回転角度位置の時間変化を示すグラフの一例である。
【
図7】減速機の出力軸から継続的に一定速度の回転出力を行おうとする場合の、出力軸の回転角度位置の時間変化を示すグラフの一例である。
【
図8】実施形態に係る減速機の角度伝達誤差補正方法を説明するためのフローチャートである。
【
図9】
図8に示す測定動作指示ステップにおいて表示デバイスに表示させるユーザーインターフェースの一例である。
【
図10】
図8に示す補正データ作成ステップにおいて作成する補正値表の一例である。
【発明を実施するための形態】
【0010】
以下、本発明の減速機の角度伝達誤差補正方法およびロボットシステムを添付図面に示す好適な実施形態に基づいて詳細に説明する。
【0011】
1.ロボットシステム
まず、実施形態に係るロボットシステムについて説明する。
【0012】
図1は、実施形態に係るロボットシステムを示す概略図である。
図2は、
図1に示すロボットシステムの機能ブロック図である。
【0013】
ロボットシステム1は、ロボット100と、制御装置700と、を備える。このうち、制御装置700は、コントローラー300と、コンピューター600と、を備える。なお、ロボットシステム1の構成は、これに限定されず、例えば、コントローラー300およびコンピューター600が統合されていてもよい。
【0014】
ロボット100は、回転関節X11を備えるアーム110を有する1軸ロボットである。回転関節X11は、ねじり関節である。ロボット100は、回転関節X11を回転させることにより、アーム110を3次元空間中の指定した位置に移動させることができる。なお、本実施形態に係るロボット100は、回転関節X11のみを備えているが、本開示は、複数の回転関節を備える多軸ロボットに適用可能である。
【0015】
ロボット100は、
図1に示すように、モーター410と、エンコーダー420と、減速機510と、慣性センサー130と、フレーム120と、を備える。モーター410、エンコーダー420および減速機510は、フレーム120に取り付けられている。
【0016】
減速機510は、入力軸511および出力軸512を備える。減速機510は、入力軸511に対する回転入力を、回転入力より回転角速度が低い回転出力に変換して、出力軸512を回転させる。減速機510としては、例えば、波動歯車減速機、遊星歯車減速機等が挙げられるが、特に波動歯車減速機が好ましく用いられる。
【0017】
モーター410は、コントローラー300から出力されたモーター制御信号に応じて動力を発生する。モーター410が発生させた動力により、減速機510の入力軸511が回転する。
【0018】
エンコーダー420は、減速機510の入力軸511の回転角度位置を検出する。すなわち、エンコーダー420は、入力軸511に接続されたモーター410の出力軸の回転角度位置を検出する。エンコーダー420が検出した入力軸511の回転角度位置は、コントローラー300に送信される。エンコーダー420としては、例えば、光学式ロータリーエンコーダー、磁気式ロータリーエンコーダー、電磁誘導式ロータリーエンコーダー等が挙げられる。
【0019】
アーム110は、減速機510の出力軸512に接続されている。これにより、アーム110は、回転関節X11において、出力軸512の回転出力により、減速機510を介して回転する。
【0020】
慣性センサー130は、アーム110に取り付けられている。慣性センサー130は、アーム110の回転角速度を算出するのに必要な情報を検出する。慣性センサー130としては、例えば、回転角速度を検出するジャイロセンサー、加速度を検出する加速度センサー、回転角速度と加速度の双方を検出するIMU(Inertial Measurement Unit)等が挙げられる。加速度センサーを用いた場合には、検出した加速度と検出時間とに基づいて、回転角速度を算出することができる。
【0021】
ここで、減速機510は、入力軸511に対する回転入力を回転出力に変換して出力軸512に伝達するとき、周期的な角度伝達誤差を発生させる。すなわち、モーター410が、例えば入力軸511に対して継続的に一定速度の回転入力を与えたとき、減速機510の出力軸512における回転角速度および回転角度位置は、周期的なずれを含む。そこで、コントローラー300では、周期的なずれ、すなわち角度伝達誤差の変化を検出し、それを補正する補正データを作成する。この補正データを反映させたモーター制御信号に基づいてモーター410を駆動することにより、角度伝達誤差に伴う出力軸512の回転角度位置の精度低下を補正する。本明細書における「補正」とは、角度伝達誤差による出力軸512の回転角度位置「ずれ」を補償し、意図した回転角度位置になるように、入力軸511に与える回転入力を制御することをいう。
【0022】
コントローラー300は、ロボット100の作動を制御する装置である。コントローラー300は、ロボット100と電気的に接続されている。
【0023】
図3は、図
1に示すコントローラー300およびコンピューター600のハードウェア
構成の一例である。
【0024】
コントローラー300は、プロセッサー301、メモリー302、および外部インターフェース303を含む。これらは、互いに通信可能な内部バスを介して接続されている。
コンピューター600は、プロセッサー601、メモリー602、および外部インターフェース603を含む。これらは、互いに通信可能な内部バスを介して接続されている。
【0025】
プロセッサー301、601としては、例えばCPU(Central Processing Unit)、FPGA(Field-Programmable Gate Array)、ASIC(Application Specific Integrated Circuit)等が挙げられる。このうち、プロセッサー301は、メモリー302に記憶されたプログラムを読み出して実行することにより、後述する様々な機能を実現する。また、プロセッサー601は、コントローラー300から出力される情報に基づいて、ロボット100の作動に使用されるパラメーター等を決定する。そして、コンピューター600は、コントローラー300にそのパラメーターを記憶させる。コントローラー300は、そのパラメーターを使用してロボット100に出力する制御信号を生成する。
【0026】
メモリー302、602としては、例えばRAM(Random Access Memory)等の揮発性メモリーや、ROM(Read Only Memory)等の不揮発性メモリー等が挙げられる。なお、メモリー302、602は、非着脱式に限らず、着脱式の外部記憶装置を有する構成であってもよいし、ネットワーク等を介して外部との間でデータを送受し得る構成であってもよい。
【0027】
外部インターフェース303、603としては、各種の通信規格が挙げられる。一例として、USB(Universal Serial Bus)、RS-232C、イーサネット(登録商標)、Wi-Fi(登録商標)等が挙げられる。
【0028】
また、コンピューター600は、さらに、キーボード、マウス等の入力デバイス604、モニター等の表示デバイス605を含む。
【0029】
図1に示すコントローラー300は、機能部として、制御部320と、受付部340と、記憶部360と、を有する。このうち、制御部320は、
図2に示すように、制御信号生成部322と、位置制御部324と、速度制御部326と、補正部328と、を有する。
【0030】
制御信号生成部322は、アーム110が位置すべき目標位置を表す位置制御信号を生成し、位置制御部324に出力する。
【0031】
位置制御部324は、制御信号生成部322から出力された位置制御信号を受信する。また、位置制御部324は、位置フィードバックとして、ロボット100のエンコーダー420の出力値を受信する。位置制御部324は、位置制御信号と、出力値に含まれた回転角度位置の情報と、に基づいて、モーター410の速度制御信号を生成し、速度制御部326に出力する。
【0032】
速度制御部326は、位置制御部324から速度制御信号を受信する。また、速度制御部326は、速度フィードバックとして、ロボット100のエンコーダー420の出力値を微分器329で微分してなる微分値を受信する。速度制御部326は、速度制御信号と、出力値に含まれた回転角度位置を微分して得られる回転角速度の情報と、に基づいて、モーター410のトルク制御信号を生成し、モーター410に出力する。このトルク制御信号に基づいて、モーター410に供給する電流量が決定され、決定された電流量の電流がモーター410に供給される。
【0033】
補正部328は、エンコーダー420から出力された、入力軸511の回転角度位置の情報を受信する。補正部328は、入力軸511の最新の回転角度位置と、直前の回転角度位置と、に基づいて、モーター410の回転の向きを決定する。また、補正部328は、回転の向き、最新の回転角度位置、角度伝達誤差の周期、および、角度伝達誤差の位相値に応じて、位置補正信号(補正データ)を生成する。そして、位置制御部324は、最新の回転角度位置から補正部328で作成された位置補正信号を減算して得られる信号を、補正後の位置フィードバックとして受信する。
【0034】
さらに、補正部328は、位置補正信号の微分値である速度補正信号を生成する。そして、速度制御部326は、最新の回転角速度から補正部328で作成された速度補正信号を減算して得られる信号を、補正後の速度フィードバックとして受信する。
【0035】
コンピューター600は、コントローラー300に対して、ロボット100の動作の際に使用されるパラメーターを設定する。
コンピューター600は、機能部として、命令生成部620と、パラメーター決定部640と、記憶部660と、を有する。
【0036】
命令生成部620は、角度伝達誤差の測定動作を指示する制御信号を作成する。パラメーター決定部640は、角度伝達誤差の測定値に基づいて、補正データを作成するためのパラメーターを決定する。記憶部660は、パラメーターの決定に必要なデータを格納する。
【0037】
図4は、減速機510の入力軸511に対して継続的に一定速度の回転入力があった場合の、入力軸511の回転角度位置D10の時間変化を示すグラフの一例である。
図5は、減速機510の入力軸511に対して継続的に一定速度の回転入力があった場合の、出力軸512の回転角度位置D20の時間変化を示すグラフの一例である。
図4の回転角度位置D10および
図5の回転角度位置D20は、それぞれ補正部328が補正信号を出力しない場合の回転角度位置を示している。なお、
図5に示す出力軸512の回転角度位置D20のスケールと、
図4に示す入力軸511の回転角度位置D10のスケールと、は異なる。
【0038】
前述したように、減速機510では、入力軸511を一定速度で回転させたとしても、その回転を変換して出力軸512に出力するとき、周期的な伝達誤差を発生させる。このため、減速機510の入力軸511の回転角度位置D10が時間に比例して増大するのに対し、出力軸512の回転角度位置D20は、
図5に破線で示した時間に対する比例値に比べて、周期的なずれを含む。
【0039】
図6は、本実施形態において、減速機510の出力軸512から継続的に一定速度の回転出力を行おうとする場合の、入力軸511の回転角度位置D11の時間変化を示すグラフの一例である。
図7は、本実施形態において、減速機510の出力軸512から継続的に一定速度の回転出力を行おうとする場合の、出力軸512の回転角度位置D21の時間変化を示すグラフの一例である。
図6の回転角度位置D11および
図7の回転角度位置D21は、補正部328を機能させることにより、減速機510の出力軸512から継続的に一定速度の回転出力を行おうとする場合の、望ましい回転角度位置を示している。なお、
図7に示す出力軸512の回転角度位置D21のスケールと、
図6に示す入力軸511の回転角度位置D11のスケールと、は異なる。なお、参考のため、
図4に示した回転角度位置D10を
図6において破線で示す。
【0040】
したがって、位置制御部324は、位置フィードバックとして、エンコーダー420から送信された回転角度位置を補正部328で補正した信号を受信する。速度制御部326は、速度フィードバックとして、エンコーダー420から送信された回転角度位置を微分して得られる回転角速度を補正部328で補正した信号を受信する。位置制御部324がそのような位置フィードバックに基づいて速度制御信号を生成し、速度制御部326がそのような速度フィードバックに基づいてトルク制御信号を生成すると、減速機510の入力軸511の回転角度位置D11の時間変化は、補正の効果により、時間に対して比例する
図6に示す破線に対して周期的なずれを有する変化となる。
【0041】
このような補正された回転角度位置D11の時間変化を実現する回転入力を入力軸511に対して行うと、出力軸512の回転角度位置D21は、
図7に示すように、時間に対して比例する直線となる。補正部328は、このような原理に基づいて、出力軸512の回転角度位置D21の精度を高める。
【0042】
2.減速機の角度伝達誤差補正方法
次に、実施形態に係る減速機の角度伝達誤差補正方法について説明する。このような補正方法を、例えば減速機510の組み付け直後や減速機510またはモーター410の交換後に行うことで、減速機510の角度伝達誤差を的確に補正して、ロボット100の動作精度を高く維持することができる。
【0043】
図8は、実施形態に係る減速機の角度伝達誤差補正方法を説明するためのフローチャートである。
【0044】
前述したコントローラー300による減速機510の角度伝達誤差補正方法は、測定動
作指示ステップS101と、測定動作実行ステップS108と、指標判定ステップS11
4と、測定動作実行ステップS118と、補正データ作成ステップS130と、を有する
。
図8に示すフローは、コントローラー300、
コンピューター600、およびロボット
100により実行される。以下、各ステップについて順次説明する。
【0045】
2.1.測定動作指示ステップ
測定動作指示ステップS101は、ユーザーが、減速機510の角度伝達誤差を補正する補正データを導出するため、角度伝達誤差を測定する動作の開始を指示する。具体的には、測定動作指示ステップS101は、測定動作における測定軸指定ステップS102、測定動作における回転入力角度範囲指定ステップS103と、測定動作における動作角速度指定ステップS104と、を有する。
【0046】
図9は、
図8に示す測定動作指示ステップS101において表示デバイス605に表示させるユーザーインターフェースU100の一例である。ユーザーインターフェースU100は、測定軸入力窓U102と、回転入力角度範囲入力窓U103と、動作角速度入力窓U104と、測定終了時刻表示窓U110と、を有する。
【0047】
測定軸入力窓U102は、測定動作の対象となる測定軸、つまり補正データを作成する対象の減速機510が複数ある場合において、補正データの作成を行う減速機510を特定する番号等について、ユーザーによる指定値の入力を受け付けるテキストボックスである。回転入力角度範囲入力窓U103は、測定動作において、対象の減速機510の回転入力角度範囲について、ユーザーによる指定値の入力を受け付けるテキストボックスである。動作角速度入力窓U104は、測定動作において、対象の減速機510の動作角速度について、ユーザーによる指定値の入力を受け付けるテキストボックスである。
【0048】
測定動作指示ステップS101では、コンピューター600の命令生成部620が、ユーザーインターフェースU100を表示デバイス605に表示させる。
【0049】
測定軸指定ステップS102では、入力デバイス604からユーザーによる測定軸の指定値の入力を受け付ける。ユーザーが測定軸入力窓U102に測定動作の対象となる測定軸の番号等を入力すると、パラメーター決定部640はその測定軸を取得する。
【0050】
回転入力角度範囲指定ステップS103では、入力デバイス604からユーザーによる回転入力角度範囲の指定値の入力を受け付ける。ユーザーが回転入力角度範囲入力窓U103に回転入力角度範囲を入力すると、パラメーター決定部640はその回転入力角度範囲を取得する。
【0051】
動作角速度指定ステップS104では、入力デバイス604からユーザーによる動作角速度の指定値の入力を受け付ける。ユーザーが動作角速度入力窓U104に動作角速度を入力すると、パラメーター決定部640はその動作角速度を取得する。
【0052】
各指定値が入力されると、コンピューター600は、角度伝達誤差の測定動作を指示する制御信号を、コントローラー300に送信する。このような制御信号を作成するコンピューター600の機能部を、
図1において「命令生成部620」とする。また、コントローラー300において、この制御信号を受け付ける機能部を、
図1において「受付部340」とする。
【0053】
以上の測定動作指示ステップS101の終了後、しきい値設定ステップS105に移行する。
【0054】
しきい値設定ステップS105では、命令生成部620が、後述する指標判定ステップS114で判定する際の基準となるしきい値を設定する。具体的には、減速機510の角度伝達誤差を測定した時間、または、減速機510の角度伝達誤差を測定した角度範囲、を指標とする。そして、これらの指標の累積値を求め、後述する指標判定ステップS114では、その累積値がしきい値以上になるか否かを判定する。
【0055】
本実施形態では、一例として、減速機510の角度伝達誤差を測定した時間を指標とする。時間を指標とした場合、その計測および計測値の取得が容易であることから、時間の累積値を簡単に求めることができる。以下、この時間を指標とした場合について説明するが、以下の説明は、角度範囲を指標とした場合にも適用可能である。
【0056】
減速機510の角度伝達誤差の測定値から補正データを算出するとき、より広い角度範囲にわたって角度伝達誤差を測定し、得られた測定値を用いることで、精度の高い補正データが得られる。本明細書では、十分に精度の高い補正データを得るために必要な入力軸511の回転入力角度範囲を「必要回転入力角度範囲」という。
【0057】
精度の高い補正データを算出するには、必要回転入力角度範囲での測定を行えばよいが、アーム110の動作角度範囲が広くなる。そうすると、ロボット100の設置環境によっては、アーム110と物体との干渉等が発生するおそれがある。そこで、本実施形態では、一度で必要回転入力角度範囲での測定を行うのではなく、必要回転入力角度範囲よりも小さい回転入力角度範囲での測定を積み重ねることにより、十分な精度の補正データの導出に必要な測定値を得る。これにより、アーム110の動作角度範囲を十分に広く確保できない環境においても、十分な精度の補正データを得るための減速機510の角度伝達誤差の測定を行うことができる。
【0058】
ここで、前述した動作角速度指定ステップS104で入力された動作角速度に基づくことで、必要回転入力角度範囲での測定に必要な測定時間を算出することができる。以下、この測定時間を「必要測定時間」という。必要測定時間は、必要回転入力角度範囲を動作角速度で除算することで求められる。そして、本実施形態では、この必要測定時間をしきい値とする。命令生成部620は、入力された指定値に基づいて、しきい値を算出する。
【0059】
また、しきい値が得られると、測定動作の終了時刻を計算することができる。命令生成部620は、この測定終了時刻を概算し、測定終了時刻表示窓U110に表示させることによってユーザーに報知する。測定終了時刻を表示することにより、ユーザーの利便性が高まる。
【0060】
初期化ステップS106では、命令生成部620が、指標の累積値、つまり測定時間の累積値をゼロに初期化する。
【0061】
2.2.1回目の測定動作実行ステップ
以下、1回目の測定動作実行ステップを「測定動作実行ステップS108」とし、2回目以降の測定動作実行ステップを「測定動作実行ステップS118」として説明する。
【0062】
測定動作実行ステップS108では、命令生成部620から出力された制御信号をコントローラー300の受付部340が受け付けたことに起因して、制御部320が、ロボット100に測定動作を行わせる。具体的には、測定動作実行ステップS108では、ユーザーが指定した測定軸、回転入力角度範囲、および動作角速度で、制御部320が1回目の測定動作を実行する。そして、測定値から角度伝達誤差を算出するとともに、測定時間の累積値を算出する。
【0063】
本実施形態では、測定軸として減速機510を含む回転関節X11を指定する。そして、回転入力角度範囲には、入力軸511が半回転以上する回転角度範囲を指定する。減速機510が波動歯車減速機である場合、例えば、入力軸511が半回転するたびに、角度伝達誤差では1周期分の変化が生じる。このため、回転入力角度範囲を入力軸511が半回転以上する回転角度範囲とすることで、十分な精度の補正データを算出するための測定値が得られることになる。
【0064】
動作角速度は、一定の回転角速度(等速)とされ、具体的には、100°/秒以下であるのが好ましい。入力軸511を一定の回転角速度で動作させている状態で測定動作を行うことによって、より精度の高い補正データを算出するための測定値が得られる。なお、一定の回転角速度とは、入力軸511の回転角速度の揺れ幅が5°/秒以下である状態をいう。
【0065】
また、本実施形態では、前述したように、回転入力角度範囲として、必要回転入力角度
範囲よりも小さな値を指定する。これにより、アーム110の動作角度範囲を広くしなく
ても、必要回転入力角度範囲で測定動作を行った場合と同等の精度の補正データを算出す
ることが可能な測定値を得ることができる。その結果、ロボットシステム1の設置環境を
制限することなく、最終的に精度が高い補正データを得ることができる。
【0066】
測定動作実行ステップS108は、角度伝達誤差測定ステップS110と、累積値算出ステップS112と、を有する。
【0067】
2.2.1.1回目の角度伝達誤差測定ステップ
角度伝達誤差測定ステップS110では、エンコーダー420の出力値と、慣性センサー130の出力値と、に基づいて、減速機510の角度伝達誤差を算出する。
【0068】
1回目の測定動作が実行されている間、制御部320は、エンコーダー420の出力値、すなわち、入力軸511の角度位置を取得する。また、1回目の測定動作が実行されている間、制御部320は、慣性センサー130の出力値、すなわち、出力軸512の回転角度位置を取得する。制御部320が取得したそれぞれの回転角度位置は、コンピューター600にも送信される。
【0069】
以上のような測定動作を行うことにより、パラメーター決定部640は、角度伝達誤差を算出するが、角度伝達誤差を算出するとともに、測定時間を算出する。角度伝達誤差の算出および測定時間の算出は、例えば、以下のようにして行うことができる。
【0070】
まず、パラメーター決定部640が、所定の制御周期でエンコーダー420の出力値を取得する。これにより、パラメーター決定部640は、エンコーダー420の出力値のサンプル数Nを取得する。その後、パラメーター決定部640は、サンプル数Nと、制御周期Δtと、の積Δt×Nを算出する。この積Δt×Nにより、測定時間が求められる。
【0071】
また、エンコーダー420からの現在の出力値と、制御周期Δtの1つ前におけるエンコーダー420の出力値と、の差を制御周期Δtで除算すると、入力軸511の現在の回転角速度を算出することができる。
一方、慣性センサー130が例えばジャイロセンサーである場合、慣性センサー130からの現在の出力値に基づいて、出力軸512の現在の回転角速度を算出することができる。
【0072】
そして、パラメーター決定部640は、入力軸511の現在の回転角速度から理論的に計算される出力軸512の理想的な回転角速度と、出力軸512の現在の回転角速度と、の差を求めることにより、現在の角度伝達誤差を算出することができる。このようにして制御周期Δtごとに角度伝達誤差を算出し、その絶対値を測定時間全体で合算する。これを角度伝達誤差の絶対値の和Asumとする。この和Asumをサンプル数Nで除算することにより、測定時間における角度伝達誤差の平均値Dが求められる。測定した角度伝達誤差の平均値Dを記憶部660に記録する。
【0073】
2.2.2.1回目の累積値算出ステップ
累積値算出ステップS112では、パラメーター決定部640が、指標の累積値、つまり測定時間の累積値に、角度伝達誤差測定ステップS110で求めた測定時間を加算する。これにより、測定時間の累積値を更新する。なお、前述した初期化ステップS106において測定時間の累積値をゼロに初期化していることから、1回目の累積値算出ステップS112では、加算した測定時間がそのまま測定時間の累積値となる。
【0074】
2.3.1回目の指標判定ステップ
指標判定ステップS114では、指標の累積値がしきい値以上であるか否かを判定する。本実施形態に係るしきい値は、前述したように、十分な精度の補正データを算出するために必要な測定時間である。したがって、指標判定ステップS114では、測定時間の累積値がしきい値以上であるか否かを判定する。
【0075】
測定時間の累積値がしきい値以上である場合には、補正データ作成ステップS130に移行する。測定時間の累積値がしきい値未満である場合には、2回目の測定動作実行ステップS118に移行する。
【0076】
2.4.2回目以降の測定動作実行ステップおよび指標判定ステップ
2回目以降の測定動作実行ステップS118は、角度伝達誤差測定ステップS120と、累積値算出ステップS122と、を有する。2回目以降の測定動作実行ステップS118では、1回目の測定動作実行ステップS108と同様にして、測定動作を行い、測定した角度伝達誤差の平均値Dを記憶部660に記録する。また、測定時間の累積値を更新する。そして、更新後の累積値について、2回目以降の指標判定ステップS124で判定を行う。
【0077】
このような一連の工程により、測定時間の累積値がしきい値以上になるまで、角度伝達誤差の平均値Dを更新することになる。これにより、角度伝達誤差の平均値Dを求めるための測定値の数は、十分に多い数となる。その結果、十分な数の測定値から平均値を求めることができ、平均値の信頼性を高めることができる。
【0078】
2.5.補正データ作成ステップ
本実施形態では、減速機510の角度伝達誤差が周期的に変化していることに基づき、角度伝達誤差の変化が正弦波の波形を有していると仮定する。この場合、理論的に求められる角度伝達誤差の変化は、次式で表される。
【0079】
【0080】
この式において、Aは、角度伝達誤差の振幅、θは、減速機510の入力軸511の角度位置、Tは、角度伝達誤差の周期、φは、位相値である。
【0081】
前述した初期化ステップS106において、あらかじめ、角度伝達誤差の振幅AをA1、位相値φをφ1に初期設定しておく。初期設定の振幅A1および位相値φ1は、任意の値であってもよいし、過去の実績から求めた値であってもよいが、初期設定の振幅A1は、算出される補正値に対して十分大きいと想定される値が好ましい。また、角度伝達誤差の周期Tは、減速機510の構造によって決まる。
【0082】
補正データ作成ステップS130の段階では、パラメーター決定部640は、角度伝達誤差の振幅A1および位相値φ1における角度伝達誤差を測定する。これにより、パラメーター決定部640は、振幅A1および位相値φ1と、角度伝達誤差の変化と、の関係を、上式に基づいて決定することができる。そして、パラメーター決定部640は、その関係を表すパラメーターを、コントローラー300の記憶部360に記憶させる。
【0083】
補正部328は、記憶部360に格納されたパラメーターと、上式と、に基づいて、減速機510の入力軸511の角度位置θに応じた角度伝達誤差を算出する。そして、エンコーダー420の出力値(最新の回転角度位置)から、算出した角度伝達誤差を減算するように補正する。算出した角度伝達誤差が、
図2に示す位置補正信号(補正データ)である。位置制御部324は、最新の回転角度位置から、位置補正信号を減算するように補正した信号を、位置フィードバックとして受信する。また、速度制御部326は、最新の回転角速度から、速度補正信号(補正データ)を減算するように補正した信号を、速度フィードバックとして受信する。補正部328は、位置補正信号の微分値を速度補正信号として出力する。
【0084】
このようにして、制御装置700は、算出した角度伝達誤差に基づいて、補正データを作成する機能を有し、この補正データに基づいて、減速機510の入力軸511の回転角度位置を補正する。
【0085】
また、上式による角度伝達誤差の算出を、位相値φを変更しつつ行うことにより、位相値φごとの角度伝達誤差を求めることができる。
【0086】
図10は、
図8に示す補正データ作成ステップS130において作成する補正値表の一例である。
図10では、角度伝達誤差の振幅AをA1に固定し、位相値φをφ1、φ2、φ3、・・・、φnと変更した場合に測定された、角度伝達誤差の平均値D1、D2、D3、・・・、Dnを一覧にして示す表である。
【0087】
位相値φを例えば1°ずつ変更しながら、角度伝達誤差の平均値Dを取得することによ
り、
図10に示す補正値表を作成することができる。角度伝達誤差の平均値Dは、前述し
たように、測定時間の累積値がしきい値以上になるまで、測定動作を繰り返して得られた
角度伝達誤差を平均した値である。このため、1回の回転入力角度範囲は小さくても、そ
の測定が累積されることにより、必要
回転入力角度範囲での測定を行った場合と同等の精
度で角度伝達誤差の平均値Dを求めることができる。これにより、アーム110の動作角
度範囲を十分に広く確保できない環境においても、アーム110の回転角度位置を高精度
に補正することができる。また、このような補正値表を用いることで、かかる補正の処理
を低負荷で行うことができる。
【0088】
そして、ロボット100を運用する際には、制御部320は、
図10に示す位相値φと角度伝達誤差の平均値Dとの関係および上式に基づいて、角度位置θに対する角度伝達誤差の変化を算出する。具体的には、角度伝達誤差の平均値Dが最も小さくなるときの位相値φを用い、その位相値φを用いた上式に基づいて、補正部328が生成すべき角度伝達誤差の角度位置θに対する変化を算出する。そして、得られた角度伝達誤差の変化に基づいて、位置補正信号および速度補正信号等の補正データを生成する。これにより、アーム110の回転角度位置を高精度に補正することができる。
【0089】
以上のように、本実施形態に係る減速機の角度伝達誤差補正方法は、アーム110と、減速機510と、モーター410と、エンコーダー420と、慣性センサー130と、を備えるロボットシステム1において、減速機510の角度伝達誤差を補正する補正データを作成する方法である。減速機510は、入力軸511およびアーム110に接続されている出力軸512を有する。モーター410は、入力軸511に接続され、減速機510を介してアーム110を回転させる動力を発生する。エンコーダー420は、入力軸511の回転角度位置を検出する。慣性センサー130は、アーム110に設けられ、アーム110の回転角速度を検出する。
【0090】
そして、この補正方法は、測定動作実行ステップS108と、角度伝達誤差測定ステッ
プS110と、指標判定ステップS114と、測定動作実行ステップS118と、補正デ
ータ作成ステップS130と、を有する。測定動作実行ステップS108では、補正デー
タを作成するのに必要な入力軸511の必要回転入力角度範囲よりも小さい回転入力角度
範囲でアーム110を回転させる。角度伝達誤差測定ステップS110では、回転入力角
度範囲でアーム110が回転しているとき、エンコーダー420の出力値と、慣性センサ
ー130の出力値と、に基づいて、減速機510の角度伝達誤差を測定し、記録する。指
標判定ステップS114では、減速機510の角度伝達誤差を測定した時間、または、減
速機510の角度伝達誤差を測定した角度範囲、を指標とし、指標の累積値が所定値(し
きい値)以上であるか否かを判定する。そして、指標の累積値が所定値未満である場合に
は、2回目以降の測定動作実行ステップS118において、減速機510の角度伝達誤差
を再び測定し、記録を更新する。更新とは、記憶部660に格納されている記録を新たな
記録で書き換えることをいう。指標の累積値が所定値以上である場合には、補正データ作
成ステップS130において、記録した減速機510の角度伝達誤差に基づいて、補正デ
ータを作成する。
【0091】
このような構成によれば、一度の回転入力角度範囲を必要回転入力角度範囲よりも小さ
くしても、十分な精度の補正データを作成し得る測定データを得ることができる。その結
果、アーム110の動作角度範囲を十分に広く確保できない環境においても、精度の高い
補正データに基づいて、減速機510の角度伝達誤差を精度よく補正することができる。
そして、精度の高いアーム110の動作が可能なロボットシステム1を実現することがで
きる。
【0092】
また、本実施形態では、入力軸511を一定の回転角速度で動作させているとき、減速機510の角度伝達誤差を測定する。これにより、角度伝達誤差の変化を表す振幅や周期等のパラメーターの揺らぎをより小さく抑えることができるので、特に精度の高い補正データを算出することができる。
【0093】
また、本実施形態では、入力軸511の回転角速度に基づいて、減速機510の角度伝達誤差を測定するのに要する時間を算出し、報知する。これにより、ユーザーは、測定動作が終了する時刻を予想しやすくなるため、利便性が高まる。
【0094】
また、本実施形態では、慣性センサー130としてジャイロセンサーを用いている。ジャイロセンサーは、アーム110の回転角速度を直接出力することができるので、エンコーダー420の出力値から求められる回転角速度との演算によって、角度伝達誤差をより簡単に算出することができる。
【0095】
また、本実施形態に係るロボットシステム1は、アーム110と、減速機510と、モーター410と、エンコーダー420と、慣性センサー130と、制御装置700と、を備える。減速機510は、入力軸511およびアーム110に接続されている出力軸512を有する。モーター410は、入力軸511に接続され、減速機510を介してアーム110を回転させる動力を発生する。エンコーダー420は、入力軸511の回転角度位置を検出する。慣性センサー130は、アーム110に設けられ、アーム110の回転角速度を検出する。制御装置700は、減速機510の角度伝達誤差を補正する補正データを作成する機能を有する。
【0096】
そして、この制御装置700は、補正データを作成するのに必要な入力軸511の必要
回転入力角度範囲よりも小さい回転入力角度範囲でアーム110を回転させる。また、制
御装置700は、回転入力角度範囲でアーム110が回転しているとき、エンコーダー4
20の出力値と、慣性センサー130の出力値と、に基づいて、減速機510の角度伝達
誤差を測定して記録する。さらに、制御装置700は、減速機510の角度伝達誤差を測
定した時間、または、減速機510の角度伝達誤差を測定した角度、を指標とし、指標の
累積値が所定値(しきい値)以上であるか否かを判定する。その上で、制御装置700は
、指標の累積値が所定値未満である場合、減速機510の角度伝達誤差を測定して記録を
更新し、指標の累積値が所定値以上である場合、記録した減速機510の角度伝達誤差に
基づいて、補正データを作成する。
【0097】
このような構成によれば、一度の回転入力角度範囲を必要回転入力角度範囲よりも小さ
くしても、十分な精度の補正データを作成し得る測定値を得ることが可能なロボットシス
テム1を実現することができる。そして、このようなロボットシステム1によれば、アー
ム110の動作角度範囲を十分に広く確保できない環境においても、精度の高い補正デー
タに基づいて、減速機510の出力軸512の回転角度位置を精度よく補正することがで
きる。その結果、精度の高いアーム110の動作が可能なロボットシステム1を実現する
ことができる。
【0098】
以上、本発明の減速機の角度伝達誤差補正方法およびロボットシステムを、図示の実施形態に基づいて説明したが、本発明は、これに限定されるものではない。例えば、本発明の減速機の角度伝達誤差補正方法は、前記実施形態に任意の目的の工程が付加されたものであってもよい。
【0099】
また、本発明のロボットシステムは、前記実施形態の構成物を、同様の機能を有する任意の構成物に置換したものであってもよく、前記実施形態に他の任意の構成物が付加されていてもよい。なお、ロボットシステムが備えるロボットは、前述したアームを複数備えた垂直多関節型ロボットや双腕型ロボットであってもよいし、前述したアームを複数備えたスカラロボットであってもよい。また、ロボットが備えるアームの数も、特に限定されない。
【符号の説明】
【0100】
1…ロボットシステム、100…ロボット、110…アーム、120…フレーム、130…慣性センサー、300…コントローラー、301…プロセッサー、302…メモリー、303…外部インターフェース、320…制御部、322…制御信号生成部、324…位置制御部、326…速度制御部、328…補正部、329…微分器、340…受付部、360…記憶部、410…モーター、420…エンコーダー、510…減速機、511…入力軸、512…出力軸、600…コンピューター、601…プロセッサー、602…メモリー、603…外部インターフェース、604…入力デバイス、605…表示デバイス、620…命令生成部、640…パラメーター決定部、660…記憶部、700…制御装置、D10…回転角度位置、D11…回転角度位置、D20…回転角度位置、D21…回転角度位置、S101…測定動作指示ステップ、S102…測定軸指定ステップ、S103…回転入力角度範囲指定ステップ、S104…動作角速度指定ステップ、S105…しきい値設定ステップ、S106…初期化ステップ、S108…測定動作実行ステップ、S110…角度伝達誤差測定ステップ、S112…累積値算出ステップ、S114…指標判定ステップ、S118…測定動作実行ステップ、S120…角度伝達誤差測定ステップ、S122…累積値算出ステップ、S124…指標判定ステップ、S130…補正データ作成ステップ、U100…ユーザーインターフェース、U102…測定軸入力窓、U103…回転入力角度範囲入力窓、U104…動作角速度入力窓、U110…測定終了時刻表示窓、X11…回転関節