処理中

しばらくお待ちください...

設定

設定

出願の表示

1. WO2020161880 - 動作モデル算出装置、制御装置、関節機構、動作モデル算出方法、プログラムが記録された記録媒体

Document

明 細 書

発明の名称 動作モデル算出装置、制御装置、関節機構、動作モデル算出方法、プログラムが記録された記録媒体

技術分野

0001  

背景技術

0002   0003  

先行技術文献

特許文献

0004  

発明の概要

発明が解決しようとする課題

0005   0006  

課題を解決するための手段

0007   0008   0009   0010  

発明の効果

0011  

図面の簡単な説明

0012  

発明を実施するための形態

0013   0014   0015   0016   0017   0018   0019   0020   0021   0022   0023   0024   0025   0026   0027   0028   0029   0030   0031   0032   0033   0034   0035   0036  

符号の説明

0037  

請求の範囲

1   2   3   4   5   6   7   8   9   10  

図面

1   2   3   4   5   6   7  

明 細 書

発明の名称 : 動作モデル算出装置、制御装置、関節機構、動作モデル算出方法、プログラムが記録された記録媒体

技術分野

[0001]
 本発明は、動作モデル算出装置、制御装置、関節機構、動作モデル算出方法、プログラムが記録された記録媒体に関する。

背景技術

[0002]
 ロボットの制御装置は、ロボットに設けられた関節機構を駆動制御して、ロボットを構成する所定部位を目標位置に移動させる。この関節機構の駆動制御を行う為に、各関節機構の動作モデルを生成する必要がある。関節機構の動作モデルは、当該関節機構へ入力される入力信号値と、その入力信号値が入力されたときの出力との対応関係を導く情報である。このような動作モデルを生成する技術が特許文献1に開示されている。
[0003]
 特許文献1には、画像データから人などの推定対象の3次元的な姿勢を推定するための動作モデルを生成する技術が開示されている。
 また特許文献2には、作業マニピュレータの実際の作業ワーク情報とコンピュータ上の作業ワークの教示データとの誤差を修正するためのセンシング作業に必要な、作業マニピュレータに対するセンシング動作データを自動生成する技術が開示されている。

先行技術文献

特許文献

[0004]
特許文献1 : 特許第5525407号公報
特許文献2 : 特許第5495919号公報

発明の概要

発明が解決しようとする課題

[0005]
 ところで、上述のロボットのうち、複数のアームと当該複数のアームを連結先に回動自在に連結する関節機構とを備えたロボットアームを有するものがある。このロボットアームは、関節機構とアームとを交互に連結させることにより、尺の長いロボットアームを構成することができる。ある所定のロボットアームの尺を長くするために、関節機構とアームとを連結すると、ロボットアームを制御する制御装置は、その連結前に用いていた動作モデルと異なる動作モデルを用いてロボットアームを制御する必要がある。関節機構とアームを着脱可能にして長さを変更することのできるロボットアームにおいて、動作モデルを容易に作成することが求められている。
[0006]
 そこでこの発明は、上述の課題を解決することのできる動作モデル算出装置、制御装置、関節機構、動作モデル算出方法、プログラムが記録された記録媒体を提供することを目的としている。

課題を解決するための手段

[0007]
 本発明の第1の態様によれば、動作モデル算出装置は、複数のアームと当該複数のアームを連結先に回動自在に連結する関節機構とを備えたロボットアームに接続され、所定の動作命令を前記関節機構に出力する命令手段と、前記動作命令に対する動作による前記関節機構の駆動状態を取得する取得手段と、前記動作命令と前記駆動状態とに基づいて、前記関節機構への入力を表す入力値、及び、当該入力に対する前記関節機構の出力値間の関係性を表す動作モデルを算出する算出手段と、を備えることを特徴とする。
[0008]
 本発明の第2の態様によれば、動作モデル算出装置は、駆動装置を備えたロボットに接続され、所定の動作命令を前記駆動装置に出力する命令手段と、前記動作命令に対する動作による前記駆動装置の駆動状態を取得する取得手段と、前記動作命令と前記駆動状態とに基づいて、前記駆動装置への入力を表す入力値、及び、当該入力に対する前記駆動装置の出力値間の関係性を表す動作モデルを算出する算出手段と、を備えることを特徴とする。
[0009]
 本発明の第3の態様によれば、動作モデル算出方法は、複数のアームと当該複数のアームを連結先に回動自在に連結する関節機構とを備えたロボットアームに接続される装置において、所定の動作命令を前記関節機構に出力し、前記動作命令に対する動作による前記関節機構の駆動状態を取得し、前記動作命令と前記駆動状態とに基づいて、前記関節機構への入力を表す入力値、及び、当該入力に対する前記関節機構の出力値間の関係性を表す動作モデルを算出することを特徴とする。
[0010]
 本発明の第4の態様によれば、プログラムが記録された記録媒体は、複数のアームと当該複数のアームを連結先に回動自在に連結する関節機構とを備えたロボットアームに接続される装置に、所定の動作命令を前記関節機構に出力する命令機能と、前記動作命令に対する動作による前記関節機構の駆動状態を取得する取得機能と、前記動作命令と前記駆動状態とに基づいて、前記関節機構への入力を表す入力値、及び、当該入力に対する前記関節機構の出力値間の関係性を表す動作モデルを算出する算出機能と、を実現させることを特徴とする。

発明の効果

[0011]
 本発明によれば、ロボットアームを構成する関節機構の動作モデルを容易に作成することができる。

図面の簡単な説明

[0012]
[図1] 本発明の一実施形態によるロボットシステムの概要を示す図である。
[図2] 本発明の一実施形態による制御装置のハードウェア構成を示す図である。
[図3] 本発明の一実施形態による制御装置と関節機構の機能ブロック図である。
[図4] 本発明の一実施形態による制御装置の処理フローを示す図である。
[図5] 本発明の一実施形態による動作モデル算出装置の他の例を示す図である。
[図6] 本発明の一実施形態による制御装置の最小構成を示す図である。
[図7] 本発明の一実施形態による最小構成の制御装置による処理フローを示す図である。

発明を実施するための形態

[0013]
 以下、本発明の一実施形態による制御装置を図面を参照して説明する。
 図1は同実施形態による制御装置1とロボットアーム2とにより構成されるロボットシステム100の概要を示す図である。
 この図で示すように、ロボットシステム100は制御装置1とロボットアーム2とを含んで構成される。ロボットアーム2は、複数のアーム21と、当該複数のアーム21を連結先に回動自在に連結する関節機構22とを備えている。アーム21の連結先は他のアーム21である場合や、関節機構22である場合がある。制御装置1は、ロボットアーム2の関節機構を駆動制御することができる。
[0014]
 関節機構22は、連結するアーム21の軸を中心として当該アーム21を回転させる第一回転モータ、関節機構22に連結するアーム21の軸に直交する直交方向に当該アーム21を傾ける第二回転モータなどを内蔵して構成される。ロボットアーム2の先端部には物体を把持する把持機構23などが設けられてよい。そして制御装置1は関節機構22の各モータと電気的に接続されており、関節機構22の駆動制御を行う。
[0015]
 ロボットアーム2は、アーム21と関節機構22とからなるユニットを着脱可能に構成されている。ユーザはユニットをロボットアーム2にさらに連結するか、取り外すことによりロボットアーム2の長さを変更可能である。関節機構22はロボットアーム2に連結されると、制御装置1と通信接続できるように予め電気回路が設けられている。
[0016]
 図2は制御装置1のハードウェア構成を示す図である。
 この図が示すように制御装置1は、制御部であるCPU(Central Processing Unit)101、ROM(Read Only Memory)102、RAM(Random Access Memory)103、SSD(Solid State Drive)104、通信モジュール105等の各ハードウェアを備えたコンピュータである。
[0017]
 図3は制御装置1と関節機構22の機能ブロック図である。
 制御装置1のCPU101は電源が投入されると起動し、予め記憶するスケジューリングプログラムを実行する。これにより制御装置1は、第一制御部10と、第二制御部20の各機能を発揮する。第一制御部10は動作モデルを算出する。第二制御部20は第一制御部10により生成された動作モデルを用いて関節機構22を制御する。第一制御部10は、モデル生成開始検出部11、動作命令部12、駆動状態取得部13、動作モデル算出部14の各機能を発揮する。
[0018]
 モデル生成開始検出部11は、ロボットアーム2の動作モデルの生成の開始を検出する。動作モデルは、複数のアームと当該複数のアームを連結先に回動自在に連結する関節機構とを備えたロボットアームの関節機構への入力を表す入力値、及び、当該入力に対する前記関節機構の出力値間の関係性を表すデータである。
 動作命令部12は、所定の動作命令を関節機構のアクチュエータの一態様であるモータ221に出力する。
 駆動状態取得部13は、動作命令に対する動作による関節機構22の駆動状態をセンサ222から取得する。センサは、例えば、トルクセンサ、モータの角度センサ、モータの角速度センサ、荷重センサなどである。
 動作モデル算出部14は、動作命令と駆動状態とに基づいて各関節機構22の動作モデルを算出する。
[0019]
 図4は制御装置の処理フローを示す図である。
 まず、モデル生成開始検出部11は、動作モデルの生成開始を検出する(ステップS101)。例えば、ユニットがロボットアーム2に連結されると、モデル生成開始検出部11は、当該ユニットの連結に基づいて電気信号の導通を検出し、これにより動作モデルの生成開始を検出する。または制御装置1に備わる入力装置をユーザが操作して生成開始を指示し、モデル生成開始検出部11は、その指示の情報の入力に基づいて動作モデルの生成開始を検出してもよい。モデル生成開始検出部11は動作命令部12へ処理開始を指示する。
[0020]
 動作命令部12は接続されている複数の関節機構22のうち、動作命令を出力する関節機構22を特定する(ステップS102)。動作命令部12は、ロボットアーム2の根本の関節機構22から先端方向で連結される関節機構22へ向けて順に動作命令を出力する対象の関節機構22であると特定してもよいし、ロボットアーム2の先端方向で連結される関節機構22から根本方向に連結された関節機構22へ向けて順に動作命令を出力する対象の関節機構22であると特定してもよい。動作命令部12は、ロボットアーム2において連結順番に関係なく、複数の関節機構22のうち、動作命令を出力する関節機構22をランダムに順に特定してもよい。
[0021]
 動作命令部12は、特定した関節機構22へ単位動作命令を出力する(ステップS103)。単位動作命令は所定の動作単位の命令であってよい。例えばモータを所定のトルクで所定回転角度の駆動をさせ、その後、逆回転させて回転前と同じ位置にモータの角度を戻す駆動制御をするための予め定められた動作命令であってよい。単位動作命令は、電圧値、電流値、電荷時間などで定められてよい。動作命令部12は単位動作命令を出力すると、駆動状態取得部13へ取得開始を指示する。
[0022]
 センサ222は単位動作命令によって関節機構22のモータ221が駆動した際のセンシング情報を取得する。センサ222はセンシング情報を駆動状態取得部13へ出力する。駆動状態取得部13は、センサ222からセンシング情報を取得する(ステップS104)。駆動状態取得部13はセンシング情報を動作モデル算出部14へ出力する。
[0023]
 動作モデル算出部14は単位動作命令と、センシング情報とを取得する。動作モデル算出部14は、関節機構22における入力値である単位動作命令と、出力値であるセンシング情報との関係に基づいて動作モデルを算出する(ステップS105)。
[0024]
 動作モデルの算出は公知のシステム同定手法を用いてよい。具体的なシステム同定手法としては、MOESP(multiple variable Output-Error State Space)法やN4SID(Numerical Algoithms for Subspace State Space System Identification)法などの部分空間同定法、CL-MOESP(closed-loop subspace model identification)法やPBSID(Predictor-Based Subspace IDentification)法などの閉ループ部分区間同定法、ニューラルネットワークを用いた同定法などを用いてよい。またシステム同定手法としては、線型モデルである最小二乗法や最尤法などを用いてもよい。動作モデル算出部14は1つの関節機構22の動作モデルを算出すると、未処理の関節機構22が存在するかを判定するよう動作命令部12へ指示する。
[0025]
 なお動作モデル算出部14は、取得したセンシング情報に基づいて、関節機構22の駆動状態を示す他のパラメータを推定し、当該パラメータを出力値として用いて動作モデルを算出してもよい。駆動状態を示す他のパラメータは、例えば、アーム21の長さ、慣性モーメント、静止摩擦係数、粘性パラメータ、弾性パラメータなどであってよい。
[0026]
 また動作モデル算出部14は、取得したセンシング情報に基づいて、連結された関節機構22の現在の位置からの回転角度や軸の傾きなどの情報(連結状態)を検出し、これらのパラメータを用いて、動作モデルを算出してもよい。
[0027]
 動作命令部12は、ロボットアーム2を構成する全て関節機構22のうち、動作モデルを算出していない関節機構22があるかを判定する(ステップS106)。動作命令部12は、動作モデルを算出していない関節機構22が有る場合(ステップS106にてNO)、次の関節機構22を特定する。そして第一制御部10はステップS102以降の処理を繰り返す。これにより動作モデル算出部14は、ロボットアーム2を構成する全ての関節機構22の動作モデルを算出する。第一制御部10は、動作命令部12が全ての関節機構22の動作モデルを算出したと判定した場合(ステップS106にてYES)、各関節機構22の動作モデルのデータを第二制御部20へ出力する。これにより、動作モデルの算出処理が完了する。
[0028]
 第二制御部20は、ロボットアーム2の駆動制御において、関節機構22を駆動制御する場合、当該駆動対象の関節機構22の動作モデルを用いて所定の動作をさせるための動作命令を生成し、関節機構22へ出力する。
[0029]
 上述の処理によれば、制御装置1は、ロボットアームを構成する関節機構の動作モデルを容易に作成することができる。上述の制御装置1は動作モデル算出装置の一態様である。
[0030]
 図5は、動作モデル算出装置の他の例を示す図である。
 上述の制御装置1に含まれる第一制御部10の各機能を備えた動作モデル算出装置220は、関節機構22の内部に設けられてもよい。
 この場合、関節機構22がロボットアーム2に連結されると、動作モデル算出装置220のモデル生成開始検出部が、ロボットアーム2の動作モデルの生成の開始を検出する。そして動作モデル算出装置220の動作命令部が、所定の動作命令を関節機構のアクチュエータの一態様であるモータ221に出力する。動作モデル算出装置220の駆動状態取得部は、動作命令に対する動作による関節機構22の駆動状態をセンサ222から取得する。センサ222は、例えば、トルクセンサ、モータの角度センサ、モータの角速度センサ、荷重センサなどである。動作モデル算出装置220の動作モデル算出部は、動作命令と駆動状態とに基づいて各関節機構22の動作モデルを上記と同様に算出する。この場合、動作モデル算出装置220の動作モデル算出装置220は、生成した動作モデルを制御装置1へ出力する。制御装置1の第二制御部20は、関節機構22の動作モデル算出装置220から取得した動作モデルを用いて、関節機構22を駆動制御する。
[0031]
 なお上述の処理ではロボットアーム2の関節機構の動作モデルを算出しているが、制御装置1は、ロボットアーム2以外のロボットの駆動装置の動作モデルを算出してもよい。
 この場合、制御装置1は、駆動装置を備えたロボットの駆動装置に対する入力値と当該入力値の入力に基づく駆動装置の出力値との関係性を表す動作モデルの生成の開始を検出し、その後、所定の単位動作命令を駆動装置に出力し、単位動作命令に対する動作による駆動装置の駆動状態を取得し、単位動作命令と駆動状態とに基づいて動作モデルを算出する。
[0032]
 図6は、図3、または、図5等を参照しながら上述したような制御装置が有している構成を示す図である。
 図7は、最小構成の制御装置による処理フローを示す図である。
 制御装置1は、複数のアームと当該複数のアームを連結先に回動自在に連結する関節機構とを備えたロボットアーム2に接続され、動作命令部12、駆動状態取得部13、動作モデル算出部14を備える。
 動作命令部12は、所定の単位動作命令を駆動装置に出力する(ステップS201)。
 駆動状態取得部13は、単位動作命令に対する動作による駆動装置の駆動状態を取得する(ステップS202)。
 動作モデル算出部14は、単位動作命令と駆動状態とに基づいて、関節機構への入力を表す入力値、及び、当該入力に対する関節機構の出力値間の関係性を表す動作モデルを算出する(ステップS203)。
[0033]
 図6を参照しながら上述したような制御装置1は、図3、または、図5等を参照しながら上述したような制御装置が有する機能と同様な機能を用いて実現することができる。
 図6で示す制御装置1は、動作モデル算出を行うための装置であるため、動作モデル算出装置の一態様である。
[0034]
 上述の制御装置1は内部に、コンピュータシステムを有している。そして、上述した各処理の過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータが読み出して実行することによって、上記処理が行われる。ここでコンピュータ読み取り可能な記録媒体とは、磁気ディスク、光磁気ディスク、半導体メモリ等をいう。また、このコンピュータプログラムを通信回線によってコンピュータに配信し、この配信を受けたコンピュータが当該プログラムを実行するようにしても良い。
[0035]
 また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。
[0036]
 以上、実施形態(及び実施例)を参照して本願発明を説明したが、本願発明は上記実施形態(及び実施例)に限定されものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。

符号の説明

[0037]
1・・・制御装置(動作モデル算出装置)
10・・・第一制御部
11・・・モデル生成開始検出部(検出手段)
12・・・動作命令部(命令手段)
13・・・駆動状態取得部(取得手段)
14・・・動作モデル算出部(算出手段)
2・・・ロボットアーム
21・・・アーム
22・・・関節機構

請求の範囲

[請求項1]
 複数のアームと当該複数のアームを連結先に回動自在に連結する関節機構とを備えたロボットアームに接続され、
 所定の動作命令を前記関節機構に出力する命令手段と、
 前記動作命令に対する動作による前記関節機構の駆動状態を取得する取得手段と、
 前記動作命令と前記駆動状態とに基づいて、前記関節機構への入力を表す入力値、及び、当該入力に対する前記関節機構の出力値間の関係性を表す動作モデルを算出する算出手段と、
 を備える動作モデル算出装置。
[請求項2]
 前記命令手段は、前記ロボットアームに設けられた複数の前記関節機構それぞれに前記動作命令を順に出力し、
 前記取得手段は、前記複数の関節機構それぞれの前記動作命令に対する動作による前記駆動状態を順に取得し、
 前記算出手段は、前記複数の関節機構それぞれの前記動作モデルを算出する
 請求項1に記載の動作モデル算出装置。
[請求項3]
 前記ロボットアームの前記関節機構に備わる前記駆動状態をセンシングするセンサと通信接続し、
 前記取得手段は、新たに前記ロボットアームに連結された前記関節機構の前記動作モデルを算出する
 請求項1または請求項2に記載の動作モデル算出装置。
[請求項4]
 前記動作モデルの生成の開始を検出する検出手段
 をさらに備える請求項1から請求項3の何れか一項に記載の動作モデル算出装置。
[請求項5]
 請求項1から請求項4の何れか一項に記載の動作モデル算出装置を備えた制御装置。
[請求項6]
 請求項1から請求項4の何れか一項に記載の動作モデル算出装置を備えた関節機構。
[請求項7]
 前記ロボットアームにおいて前記関節機構が着脱可能に構成され、
 前記算出手段は、前記複数の関節機構のうちの少なくとも一つの関節機構の連結後、または取り外し後に、前記ロボットアームの前記関節機構の動作モデルを算出する
 請求項6に記載の関節機構。
[請求項8]
 駆動装置を備えたロボットに接続され、
 所定の動作命令を前記駆動装置に出力する命令手段と、
 前記動作命令に対する動作による前記駆動装置の駆動状態を取得する取得手段と、
 前記動作命令と前記駆動状態とに基づいて、前記駆動装置への入力を表す入力値、及び、当該入力に対する前記駆動装置の出力値間の関係性を表す動作モデルを算出する算出手段と、
 を備える動作モデル算出装置。
[請求項9]
 複数のアームと当該複数のアームを連結先に回動自在に連結する関節機構とを備えたロボットアームに接続される装置において、
 所定の動作命令を前記関節機構に出力し、
 前記動作命令に対する動作による前記関節機構の駆動状態を取得し、
 前記動作命令と前記駆動状態とに基づいて、前記関節機構への入力を表す入力値、及び、当該入力に対する前記関節機構の出力値間の関係性を表す動作モデルを算出する
 動作モデル算出方法。
[請求項10]
 複数のアームと当該複数のアームを連結先に回動自在に連結する関節機構とを備えたロボットアームに接続される装置に、
 所定の動作命令を前記関節機構に出力する命令機能と、
 前記動作命令に対する動作による前記関節機構の駆動状態を取得する取得機能と、
 前記動作命令と前記駆動状態とに基づいて、前記関節機構への入力を表す入力値、及び、当該入力に対する前記関節機構の出力値間の関係性を表す動作モデルを算出する算出機能と、
 を実現させるプログラムが記録された記録媒体。

図面

[ 図 1]

[ 図 2]

[ 図 3]

[ 図 4]

[ 図 5]

[ 図 6]

[ 図 7]