JP2020185620A - ロボット制御装置、ロボットシステム及びロボット制御方法 - Google Patents

ロボット制御装置、ロボットシステム及びロボット制御方法 Download PDF

Info

Publication number
JP2020185620A
JP2020185620A JP2019089536A JP2019089536A JP2020185620A JP 2020185620 A JP2020185620 A JP 2020185620A JP 2019089536 A JP2019089536 A JP 2019089536A JP 2019089536 A JP2019089536 A JP 2019089536A JP 2020185620 A JP2020185620 A JP 2020185620A
Authority
JP
Japan
Prior art keywords
robot
parameter
information
input
processing unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2019089536A
Other languages
English (en)
Inventor
掃部 雅幸
Masayuki Kamon
雅幸 掃部
秀行 笠
Hideyuki Ryu
秀行 笠
藤森 潤
Jun Fujimori
潤 藤森
博貴 木下
Hirotaka Kinoshita
博貴 木下
大樹 ▲高▼橋
大樹 ▲高▼橋
Daiki Takahashi
拓哉 志鷹
Takuya Shitaka
拓哉 志鷹
開 清水
Kai Shimizu
開 清水
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kawasaki Heavy Industries Ltd
Original Assignee
Kawasaki Heavy Industries Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Kawasaki Heavy Industries Ltd filed Critical Kawasaki Heavy Industries Ltd
Priority to JP2019089536A priority Critical patent/JP2020185620A/ja
Publication of JP2020185620A publication Critical patent/JP2020185620A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Manipulator (AREA)

Abstract

【課題】ロボットの制御内容の変更を簡易にするロボット制御装置等を提供する。【解決手段】ロボット制御装置は、入力情報を受け付け、前記入力情報に対応する指令をロボットに出力する第一処理部と、前記指令を受けた前記ロボットの動作結果を示す第一情報を取得する第一取得部と、前記入力情報と前記入力情報に対応する前記ロボットの目標動作との目標関係に基づき、前記入力情報に対応する前記ロボットの目標動作を示す第二情報を取得する第二処理部と、前記第一情報と前記第二情報とを合わせるように前記第一処理部に設定される第一パラメータを変更するパラメータ決定部と、前記ロボットの動作に関する第二パラメータの変更を受け付け、前記第二パラメータの変更を反映することで、前記目標関係を変更する調整処理部とを備える。【選択図】図4

Description

本発明は、ロボット制御装置、ロボットシステム及びロボット制御方法に関する。
従来、ロボットに部品等の組み立てを実行させる場合、部品等に加える力を制御する力制御が行われる。力制御では、ロボットが入力信号に対応した力を出力できるように、様々な演算が行われる。
例えば、特許文献1は、多関節のアームと、アームの先端に設けられ且つワークを把持するロボットハンドと、ロボットハンドの手先にかかる手先力を検知する力検知部とを有するロボットを開示している。特許文献1のロボットの制御部は、手先の手先負荷モデルの負荷値を用いてロボットの動作を制御する。
特開2017−56525号公報
手先負荷モデルのようなロボットに設定されるモデルは、ロボット毎に異なる。さらに、このようなモデルは、ロボットハンドが把持するワークに応じて設定され得る。ロボットに設定されるモデルが変わると、制御部が用いる演算式及びパラメータ等の制御内容も変化する。このような制御内容の変更は複雑であるため、ロボットの設計者によれば実行可能であるが、ロボットの稼働場所においてロボットのオペレータ等によって実行することは難しい。
そこで、本発明は、ロボットの制御内容の変更を簡易にするロボット制御装置、ロボットシステム及びロボット制御方法を提供することを目的とする。
上記目的を達成するために、本発明の一態様に係るロボット制御装置は、入力情報を受け付け、前記入力情報に対応する指令をロボットに出力する第一処理部と、前記指令を受けた前記ロボットの動作結果を示す第一情報を取得する第一取得部と、前記入力情報と前記入力情報に対応する前記ロボットの目標動作との目標関係に基づき、前記入力情報に対応する前記ロボットの目標動作を示す第二情報を取得する第二処理部と、前記第一情報と前記第二情報とを合わせるように前記第一処理部に設定される第一パラメータを変更するパラメータ決定部と、前記ロボットの動作に関する第二パラメータの変更を受け付け、前記第二パラメータの変更を反映することで、前記目標関係を変更する調整処理部とを備える。
また、本発明の一態様に係るロボットシステムは、本発明の一態様に係るロボット制御装置と、前記ロボット制御装置の指令に従って動作するロボットと、前記ロボットに対する操作を受け付け且つ前記操作に対応する入力情報を前記ロボット制御装置に出力する入力装置とを備える。
また、本発明の一態様に係るロボット制御方法は、入力情報を受け付け、第一パラメータに基づき前記入力情報に対応する指令を決定しロボットに出力するステップと、前記指令を受けた前記ロボットの動作結果を示す第一情報を取得するステップと、前記ロボットの動作に関する第二パラメータの変更を受け付けるステップと、前記入力情報と前記入力情報に対応する前記ロボットの目標動作との目標関係に、前記第二パラメータの変更を反映することで、前記目標関係を変更するステップと、前記目標関係に基づき、前記入力情報に対応する前記ロボットの目標動作を示す第二情報を取得するステップと、前記第一情報と前記第二情報とを合わせるように、前記第一パラメータを変更するステップとを含む。
本発明によれば、ロボットの制御内容の変更を簡易にすることが可能となる。
実施の形態に係るロボットシステムの構成の一例を示す図 図1のロボットを拡大した側面図 実施の形態に係る調整器の構成の一例を示す斜視図 実施の形態に係るコントローラの機能的構成及びその周辺の構成の一例を示すブロック図 実施の形態に係る目標出力データの一例を示す図 実施の形態に係る目標出力処理部が用いる目標入出力関係の一例を示す図 実施の形態に係る目標出力処理部の目標入出力関係の変更動作の一例を示すフローチャート 実施の形態に係る目標出力処理部が用いる目標入出力関係の変更例を示す図 実施の形態に係るロボットシステムのパラメータの調整動作の一例を示すフローチャート
以下において、本発明の実施の形態を、図面を参照しつつ説明する。なお、以下で説明する実施の形態は、いずれも包括的又は具体的な例を示すものである。また、以下の実施の形態における構成要素のうち、最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。また、添付の図面における各図は、模式的な図であり、必ずしも厳密に図示されたものでない。さらに、各図において、実質的に同一の構成要素に対しては同一の符号を付しており、重複する説明は省略又は簡略化される場合がある。また、本明細書及び特許請求の範囲では、「装置」とは、1つの装置を意味し得るだけでなく、複数の装置からなるシステムも意味し得る。
<ロボットシステムの構成>
実施の形態に係るロボットシステム1の構成を説明する。図1は、実施の形態に係るロボットシステム1の構成の一例を示す図である。図1に示すように、ロボットシステム1は、ロボット10と、ロボット10を操作するための入力装置20と、ロボット10を制御するコントローラ100と、コントローラ100に記憶された制御内容を変更するための調整器30とを備える。ここで、コントローラ100は、ロボット制御装置の一例である。
本実施の形態では、ロボットシステム1は、ロボット10を用いて部品を組み立てる作業を行うシステムであるとして、以下の説明を行うが、ロボットシステム1が行う作業はこれに限定されない。上記のようなロボットシステム1のロボット10は、例えば、被組み付け対象部品の穴に組み付け対象部品(以下、「ワーク」とも呼ぶ)を嵌入する動作を行う。このとき、ロボット10は、ワークを押し込む力の制御である力制御を受ける。
入力装置20は、オペレータによって入力された操作に対応する入力信号をコントローラ100に出力し、コントローラ100は入力信号に対応する出力信号をロボット10に出力し、ロボット10は出力信号に従って動作する。
なお、オペレータの操作による入力装置20を介した信号の入力は、ロボット10に当該操作に対応する動作をさせる度に行われ、ロボット10がマニュアル操作されてもよい。又は、オペレータが、操作に対応する動作をロボット10、具体的にはコントローラ100に教示する、つまりティーチングすることで、ロボット10に当該動作を自動で行わせてもよい。
<ロボットの構成>
ロボット10の構成を説明する。図2は、図1のロボット10を拡大した側面図である。図1及び図2に示すように、ロボット10は、基台11と、アーム12と、アーム12の先端に取り付けられるロボットハンド(「マニピュレータ」とも呼ばれる)13とを備える。ロボットハンド13は、組み付け対象部品であるワークWを把持することができるように構成されている。アーム12及びロボットハンド13は、コントローラ100の制御に従って動作し、例えば、ロボットハンド13で把持したワークWを被組み付け対象部品Tに組み付ける。また、ロボット10は、アーム12の先端部に、具体的には、アーム12とロボットハンド13との接続部分に、力検出器40を備える。
力検出器40は、アーム12及びロボットハンド13が受ける反力を検出し、コントローラ100に出力する。力検出器40は、後述するアーム12の第六リンク12fの軸方向、つまりワークWの嵌入方向である1軸方向の反力を検出してもよく、直交する3軸方向の反力を検出してもよい。力検出器40は、3軸方向の反力と当該3軸周りのモーメントとを含む6軸の力成分を検出してもよい。力検出器40は、上記反力及び/又はモーメントを検出することができれば既知のいかなる検出器であってもよく、例えば、力覚センサであってもよい。また、本実施の形態では、ロボット10は、以下に説明するように垂直多関節型ロボットとして構成されるが、これに限定されない。
アーム12の基部は、基台11に取り付けられ、鉛直方向の軸周りに回動することができる。アーム12は、第一リンク12a〜第六リンク12fと、第一リンク12a〜第六リンク12fを順次接続する関節JT1〜JT6と、関節JT1〜JT6それぞれを駆動、具体的には回転駆動する駆動装置M1〜M6とを備えている。第一リンク12aは基台11に取り付けられ、ロボットハンド13は、第六リンク12fの先端部に取り付けられている。駆動装置M1〜M6の動作は、コントローラ100によって制御される。駆動装置M1〜M6の例は、サーボモータ等の電気モータである。
<入力装置の構成>
入力装置20の構成を説明する。図1に示すように、入力装置20は、オペレータ等の操作を介して入力される指令に基づきロボット10を操作する装置である。例えば、入力装置20は、ロボット10を遠隔操作するためにロボット10から所定の距離だけ離して配置されてもよい。
入力装置20の具体的な構成は特に限定されないが、入力装置20はオペレータ等による入力を受け付けるように構成される。このような入力装置20は、ハンドル、レバー、ペダル、ボタン、タッチパネル、マイク及びカメラ等の装置を備えてもよい。入力装置20は、上記装置を介して入力された操作の指令値を示す信号をコントローラ100に出力する。入力装置20は、コントローラ100と有線通信を介して接続されてもよく、無線通信を介して接続されてもよい。有線通信及び無線通信の形式はいかなる形式であってもよい。
入力装置20は、オペレータによって入力される手動操作の各操作の指令値を示す信号をコントローラ100に出力してもよい。入力装置20は、オペレータによって入力される自動操作の操作内容の指令値を示す信号をコントローラ100に出力してもよい。入力装置20は操作装置の一例である。
本実施の形態では、入力装置20が出力する信号は、ロボットハンド13の変位量、変位方向及び変位速度、並びに、ロボットハンド13が把持しているワークWに加える力の大きさ及び方向等の情報を含むが、これに限定されない。
なお、入力装置20は、操作の指令値として、ハンドル又はレバーの変位、方向、速度及び操作力等を受け付けてもよく、ボタンの押し下げを受け付けてもよく、タッチパネルの画面への接触、接触軌跡及び接触圧等を受け付けてもよく、スピーカによって集音される音声信号を受け付けてよく、カメラによって撮像されたオペレータの画像の解析結果を受け付けてもよい。操作力は、オペレータ等によってハンドル又はレバーに加えられる力である。接触圧は、タッチパネルへの指等の押し付け力である。オペレータの画像の解析結果は、オペレータのジェスチャ等が示す指令を含む。
<調整器の構成>
調整器30の構成を説明する。図3は、実施の形態に係る調整器30の構成の一例を示す斜視図である。図1及び図3に示すように、調整器30は、コントローラ100が保持する目標出力データに変更を加える装置である。調整器30は、入力装置20と同様に、コントローラ100と有線通信又は無線通信を介して接続されている。調整器30は、ロボット10の動作に関するパラメータ、具体的にはパラメータの値を変更するための調整デバイスを含む。本実施の形態では、ロボット10の動作に関するパラメータは、ロボットハンド13がワークWに加える力と、ロボットハンド13の動作の速さとを含む。つまり、当該パラメータは、アーム12がワークWに加える力と、アーム12の先端部の動作の速さとを含む。ロボット10の動作に関するパラメータは、上記に限定されず、ロボットハンド13及びアーム12の先端部分の動作方向等を含んでもよい。ロボット10の動作に関するパラメータは、オペレータ等がロボット10の動作を直感的にイメージすることを可能にするようなロボット10の動作と関連が深いパラメータであってもよい。
調整器30は、力の強さを変更する力調整デバイス31と、速さを変更する速さ調整デバイス32と、開始ボタン33と、決定ボタン34とを備える。力調整デバイス31及び速さ調整デバイス32はそれぞれ、オペレータ等の操作による力の強さ及び速さの変更のための入力を受け付け、入力に対応する信号をコントローラ100に出力する。開始ボタン33は、力調整デバイス31及び速さ調整デバイス32への入力の受け付けを開始するデバイスであり、例えば、押されることで受け付けを開始する。決定ボタン34は、力調整デバイス31及び速さ調整デバイス32への入力を決定するデバイスであり、例えば、押されることで、力調整デバイス31及び速さ調整デバイス32に、入力に対応する信号をコントローラ100に出力させる。
調整デバイス31及び32は、物理的なデバイスであってもよく、画面上の画像であってもよい。本実施の形態では、調整デバイス31及び32は、ダイヤル等の回転式の物理的なデバイスである。物理的なデバイスの他の例は、レバーなどのスライド式のデバイス、及び、複数のボタンから選択される選択式のデバイス等である。画面上の画像の例は、バー、ボタン、並びに、数字などの入力欄等の画像である。また、図3に示すように、調整器30は、力調整デバイス31及び速さ調整デバイス32が示す力の強さ及び速さの値を示す画面等の表示部31a及び32aを備えてもよい。
本実施の形態では、調整器30は、1つの装置を構成しているが、他の装置に組み込まれていてもよい。例えば、調整器30は、入力装置20、ティーチング用の端末装置、スマートフォン及びタブレットなどのスマートデバイス、並びに、その他の端末装置等に組み込まれてもよい。この場合も、調整デバイス31及び32、開始ボタン33、決定ボタン34、並びに表示部31a及び32aは、物理的なデバイスであってもよく、画面上の画像であってもよい。後者の場合、調整器30の機能は、調整器30が組み込まれた装置の画面及び制御装置等で実現されてもよい。
<コントローラの構成>
コントローラ100の構成を説明する。なお、以下において、コントローラ100の力制御に関連する構成の説明を中心に行い、力制御に関連がない又は関連が低い構成は既知の技術であるため、その説明を省略する場合がある。
図4は、実施の形態に係るコントローラ100の機能的構成及びその周辺の構成の一例を示すブロック図である。図4に示すように、コントローラ100は、実機処理部110と、目標出力処理部120と、最適化処理部130とを機能的な構成要素として含む。実機処理部110は、入力処理部111と、演算部112と、フィードバック出力部113と、記憶部114とを機能的な構成要素として含む。目標出力処理部120は、入力処理部121と、演算部122と、調整処理部123と、記憶部124とを機能的な構成要素として含む。
記憶部114及び124は、種々の情報の格納することができ、且つ、格納した情報の読み出しを可能にする。記憶部114及び124は、揮発性メモリ及び不揮発性メモリなどの半導体メモリ、ハードディスク及びSSD(Solid State Drive)等の記憶装置によって実現される。記憶部114は、実機処理部110の演算部112が使用するパラメータ114a(具体的には、当該パラメータの設定値)等を格納する。記憶部124は、目標出力処理部120の演算部122及び最適化処理部130が使用する目標出力データ124a及び目標入出力関係124b等を格納する。記憶部114及び124は各構成要素が実行するプログラムを格納してもよい。
実機処理部110の入力処理部111、演算部112及びフィードバック出力部113、目標出力処理部120の入力処理部121、演算部122及び調整処理部123、並びに、最適化処理部130の各構成要素の機能は、CPU(Central Processing Unit)などのプロセッサ、RAM(Random Access Memory)などの揮発性メモリ及びROM(Read-Only Memory)などの不揮発性メモリ等からなるコンピュータシステム(図示せず)により実現されてもよい。上記構成要素の一部又は全部の機能は、CPUがRAMをワークエリアとして用いてROMに記録されたプログラムを実行することによって実現されてもよい。
なお、上記構成要素の一部又は全部の機能は、上記コンピュータシステムによって実現されてもよく、電子回路又は集積回路等の専用のハードウェア回路によって実現されてもよく、上記コンピュータシステム及びハードウェア回路の組み合わせにより実現されてもよい。プログラムは、アプリケーションとして、インターネット等の通信網を介した通信、モバイル通信規格による通信、その他の無線ネットワーク、有線ネットワーク、又は放送等で提供されるものであってもよい。
また、各構成要素の機能は、LSI(Large Scale Integration:大規模集積回路)、システムLSI等の回路によって実現されてもよい。複数の構成要素の機能は、個別に1チップ化されてもよく、一部又は全てを含むように1チップ化されてもよい。また、回路は、それぞれ、汎用的な回路でもよく、専用の回路でもよい。LSIとして、LSI製造後にプログラムすることが可能なFPGA(Field Programmable Gate Array)、LSI内部の回路セルの接続及び/又は設定を再構成可能なリコンフィギュラブルプロセッサ、又は、特定用途向けに複数の機能の回路が1つにまとめられたASIC(Application Specific Integrated Circuit)等が利用されてもよい。
[実機処理部]
実機処理部110は、入力装置20からの入力情報を受け付け、入力情報に対応する指令をロボット10に出力する。ここで、実機処理部110は第一処理部の一例である。
実機処理部110の入力処理部111は、入力装置20から受け取る信号に含まれる指令値と、フィードバック出力部113から受け取るフィードバック信号に含まれる情報とを用いて、演算部112に出力する情報を決定し、演算部112に出力する。入力処理部111の出力情報は、ロボットハンド13の変位量、変位方向及び変位速度等を含むロボットハンド13の変位情報と、ロボットハンド13が把持しているワークWに加える力の値及び力の方向等を含むロボットハンド13の力情報とを含んでもよい。
例えば、入力処理部111は、入力装置20の信号に含まれるロボットハンド13の力の指令値からフィードバック信号に含まれるロボットハンド13の力の検出値を差し引いた力の差分値を算出し、当該力の差分値及びその方向を力情報として演算部112に出力する。入力処理部111は、力の付与方向での力の差分値を算出してもよく、例えば、鉛直方向と直交する2つの水平方向との直交する3軸方向に分解した力成分の差分値を算出してもよい。又は、入力処理部111は、3軸方向の力成分及び当該3軸周りのモーメントの差分値を含む6軸の差分値を算出してもよい。
フィードバック出力部113は、力検出器40から力の検出値を示す信号を取得し、当該検出値を示す信号を、フィードバック信号として、入力処理部111に出力する。フィードバック信号に含まれる検出値は、現在ロボットハンド13がワークWに加えている力の値を示す。よって、入力処理部111が出力する力の差分値及びその方向は、現状から変化させる力の値及び方向を示す。
演算部112は、入力処理部111から受け取る情報と、記憶部114に格納されるパラメータ114a(具体的には、当該パラメータの設定値)とを用いて、上記差分値及び方向の力をロボットハンド13に発生させるためのロボットハンド13の位置及び姿勢の指令値を含む位置指令値を生成する。例えば、演算部112は、入力処理部111から、ロボットハンド13の変位情報及び力情報を受け取って用いてもよい。演算部112は、ロボットハンド13の変位量、変位方向、変位速度、変向量、変向方向及び変向速度等を算出し、これらの指令値を位置指令値として生成してもよい。さらに、演算部112は、位置指令値に従ってアーム12を動作させるための駆動装置M1〜M6の駆動量を算出し、当該駆動量に対応する駆動信号を駆動装置M1〜M6に出力する。
なお、演算部112は、駆動装置M1〜M6の駆動量からアーム12の各リンク12a〜12fの位置及び姿勢を検出し、検出結果に基づきロボットハンド13の現状の位置及び姿勢を検出してもよい。演算部112は、ロボットハンド13の現状の位置及び姿勢の情報を、ロボットハンド13の位置指令値の生成に用いてもよい。
また、本実施の形態では、パラメータ114aは、アーム12及びロボットハンド13のインピーダンス特性を示すパラメータである力制御パラメータを含む。例えば、力制御パラメータは、アーム12及びロボットハンド13の慣性パラメータと、アーム12及びロボットハンド13の粘性パラメータとを含む。力制御パラメータは、アーム12及びロボットハンド13の剛性パラメータを含んでもよい。慣性パラメータは、アーム12及びロボットハンド13の慣性モーメント等の慣性力に関連する。粘性パラメータは、アーム12及びロボットハンド13の粘性摩擦係数等の摩擦力に関連する。剛性パラメータは、アーム12及びロボットハンド13のばね特性に関連する。
また、演算部112は、駆動装置M1〜M6の駆動量を算出するために、ロボット10のモデル及びロボットハンド13の把持対象のワークのモデル等の制御対象の運動学モデルを使用しない。後述するように、最適化処理部130によって最適なパラメータ114a(具体的には、当該パラメータの設定値)が決定されるため、演算部112における演算処理は、制御対象の運動学モデルを必要としない。例えば、目標出力処理部120及び最適化処理部130を備えない従来のコントローラは、駆動装置M1〜M6の駆動量を算出するために、ロボット10及びワークの運動学モデルを必要とする。
[目標出力処理部]
目標出力処理部120は、入力装置20からの入力情報に対応する目標の出力データを出力する。目標出力処理部120の入力処理部121は、実機処理部110からの指令を受けたロボット10の動作結果を示す第一情報を取得し、演算部122への入力情報である参照入力情報を生成する。具体的には、入力処理部121は、ロボットハンド13に関する検出結果を用いて、参照入力情報を生成する。入力処理部121は、当該検出結果として、ロボットハンド13の位置データ及び力データを用いる。ここで、入力処理部121は第一取得部の一例であり、ロボットハンド13に関する検出結果は第一情報の一例である。
本実施の形態では、入力処理部121は、実機処理部110の演算部112が生成するロボットハンド13の位置指令値を含む位置データを取得し用いる。なお、入力処理部121は、演算部112が駆動装置M1〜M6の駆動量から検出するロボットハンド13の位置データを用いてもよい。
また、入力処理部121は、力検出器40によって検出される力の値を含む力データを取得し用いる。力データは、力の値と当該力の方向とを含む。なお、入力処理部121は、ロボットハンド13の位置データに含まれる変位方向を用いて、力の方向を算出し取得してもよい。さらに、入力処理部121は、力検出器40によって検出される力を直交する3軸方向に分解して取得してもよい。又は、入力処理部121は、3軸方向の力成分と当該3軸周りのモーメントとを含む6軸の成分を取得してもよい。
上述のように、入力処理部121は、ロボットハンド13の位置及び力の計測データ又は当該計測データに相当するデータを用いて、参照入力情報を生成する。例えば、入力処理部121は、ロボットハンド13の位置データxdnと、ロボットハンド13の力データfsnとを用いて、下記の式1に示すような参照入力データfmrefを参照入力情報として生成する。なお、式1における「pn」は、実機処理部110に設定されているパラメータ114a(具体的には、当該パラメータの設定値)を示し、「Gpn」は、パラメータが「pn」の場合に実機処理部110の演算部112が演算処理に用いる関数であり、例えば、伝達関数等を用いて表され得る。位置データxdn及び力データfsnは、パラメータが同一の「pn」である場合に得られるデータであり、例えば、以下の式のようにベクトル等を用いて表され得る。
Figure 2020185620
上述のような参照入力データfmrefは、入力装置20が実機処理部110の入力処理部111に出力する情報に対応し当該情報と等価である。
演算部122は、入力情報と入力情報に対応するロボット10の目標動作との目標関係に基づき、入力情報に対応するロボット10の目標動作を示す目標出力データを取得する。目標出力データは第二の情報の一例である。
具体的には、演算部122は、入力処理部121から受け取った参照入力データfmrefを入力情報として用いる。演算部122は、記憶部124に格納される目標入出力関係124bを、入力情報と入力情報に対応するロボット10の目標動作との目標関係として用いる。演算部122は、参照入力データfmrefと目標入出力関係124bとを用いて、参照入力データfmrefに対応する目標出力データを算出する。演算部122は、目標出力データを最適化処理部130及び記憶部124に出力する。
目標出力データは、時系列データである参照入力データfmrefに対する目標とされる出力データであり、本実施の形態では、ロボットハンド13がワークWに加える力の時系列データである。なお、力の時系列データとは、力が加えられる時間と、加えられる力の大きさとを関連付けて含むデータである。
例えば、図5は、実施の形態に係る目標出力データの一例を示す図である。図5に示すように、実線曲線TDで示されている目標出力データは、ロボットハンド13がワークWに力を加える時間(経過時間、単位:秒)と、ロボットハンド13の出力とを関連付けて含み、出力の時系列変化を示す。これに限定されないが、本実施の形態では、出力は、ロボットハンド13が加える力の大きさ(強さ)に対応する。図5の目標出力データは、1つの方向の力に対応する。例えば、目標出力データは、ロボットハンド13が加える力を直交する3軸方向の成分に分解した力のそれぞれについて、生成されてもよく、3軸方向の力及び当該3軸周りのモーメントのそれぞれについて、生成されてもよい。図5の目標出力データは、鉛直方向の成分の力に対応し、正の値の力は鉛直下向きの力に対応する。このような目標出力データは、ロボットハンド13が加える力の大きさと、ロボットハンド13の動作の速さとを示す。
また、目標入出力関係124bは、ロボットシステム1の設計者等によって予め決定され記憶部124に格納される。例えば、目標入出力関係124bは、伝達関数等の関数を保持していてもよい。例えば、演算部122は、参照入力データfmrefと、目標入出力関係124bの一例である伝達関数「M」とを用いて、下記の式2に示すような目標出力データfsrefを生成する。目標出力データfsrefは、参照入力データfmrefを伝達関数「M」への入力とした場合の出力データであり、「参照出力データ」とも呼ぶ。
Figure 2020185620
また、伝達関数「M」の一例として、下記の式3に示すような二次遅れ系の伝達関数を用いることができる。なお、「ζ」は減衰係数であり、「ωn」は固有角周波数であり、「s」は複素数である。
Figure 2020185620
調整処理部123は、ロボット10の動作に関する第二パラメータ(具体的には、当該パラメータの設定値)の変更を受け付け、第二パラメータの変更を反映することで、入力情報と入力情報に対応するロボット10の目標動作との目標関係を変更する。具体的には、調整処理部123は、調整器30から受け付ける信号に従って、第二パラメータとして、ロボット10の動作に関するパラメータの変更を受け付ける。ロボット10の動作に関するパラメータは、ロボットハンド13がワークWに加える力の大きさと、ロボットハンド13の動作の速さとを含む。
調整処理部123は、力の変更及び速さの変更を、記憶部124に記憶される目標入出力関係124bに反映することで、目標入出力関係124bを目標入出力関係124b*に変更する。調整処理部123は、変更後の目標入出力関係124b*で置き換えることで、記憶部114に記憶される目標入出力関係124bを更新してもよい。調整処理部123の処理の詳細は後述する。
[最適化処理部]
最適化処理部130は、力検出器40の力の検出値を含む力データを取得し、目標出力処理部120の演算部122から、当該力データを用いて生成された目標出力データを取得する。つまり、最適化処理部130は、互いに対応する力データ及び目標出力データを取得する。
最適化処理部130は、力データと目標出力データとを合わせるように実機処理部110の記憶部114に記憶されるパラメータ114aつまりパラメータpnを変更する。具体的には、最適化処理部130は、力データを目標出力データに一致させるように、既存のパラメータpnをパラメータpn+1に変更する。最適化処理部130は、変更後のパラメータpn+1をロボット10の新たなパラメータに決定し、記憶部114に記憶されるパラメータpnをパラメータpn+1で置き換える、つまり更新する。ここで、最適化処理部130はパラメータ決定部の一例であり、パラメータ114aは第一パラメータの一例である。
例えば、最適化処理部130は、下記の式4に示すような評価関数Jを用い、評価関数Jを最小化するパラメータpn+1を算出し、パラメータpn+1を新たなパラメータに決定する。式4に示す評価関数Jは、目標出力データfsrefとロボットハンド13の力データfsnとの誤差e(e=fsref−fsn)の2乗和をデータの総数Nで正規化したものである。「N」は、力データ及び目標出力データの組の総数であり、Nは1以上のいかなる数値であってもよい。「t」は、力データ及び目標出力データの組の計測順序等の順番を示すインデックスである。
Figure 2020185620
なお、評価関数は、下記の式5に示すように、誤差eの和を正規化したものであってもよく、下記の式6に示すように、誤差eの絶対値の和を正規化したものであってもよい。又は、評価関数は、誤差eを3乗以上した値の和を正規化したものであってもよい。また、評価関数は正規化されていなくてもよい。
Figure 2020185620
Figure 2020185620
最適化処理部130によって更新されたパラメータpn+1を保持する実機処理部110に対して、参照入力データfmrefを入力すると、実機処理部110は、参照入力データfmrefに対応する目標出力データfsrefと同じ出力データを出力することができる。よって、目標出力処理部120及び最適化処理部130は、入力装置20の指令値に対して目標とする出力データが得られるように、計測データを用いてロボット10のパラメータを最適化する。
本実施の形態での目標出力処理部120及び最適化処理部130の上述の処理は、FRIT(Friction Reference Iterative Tuning)と呼ばれるデータ駆動型調整手法の1つを用いた処理である。データ駆動型調整手法は、計測データを直接用いて、実機の入出力関係と目標の入出力関係とが同じになるようにパラメータを最適化する手法である。なお、目標出力処理部120及び最適化処理部130は、FRIT以外のデータ駆動型調整手法を用いても、上記と同様にパラメータを最適化することができる。このようなデータ駆動制御手法として、VRFT(Virtual Reference Feedback Tuning)及びIFT(Iterative Feedback Tuning)等を用いることができる。
<調整処理部の処理例>
調整処理部123の詳細な処理の例を説明する。以下において、目標入出力関係124bは、式3と同じ下記の式7に示すような二次遅れ系の伝達関数を保持しているとして説明する。式7は、伝達関数の基本式である。調整処理部123は、調整器30によって設定される力の強さ及び動作の速さを用いて減衰係数ζ及び固有角周波数ωnを決定することで、伝達関数を決定する。
Figure 2020185620
さらに、図6に示すように、二次遅れ系のステップ応答では、出力の最大行き過ぎ量Mp及び出力の振動の整定時間tsが定義される。図6は、実施の形態に係る目標出力処理部120が用いる目標入出力関係の一例を示す図である。図6において、横軸は経過時間を示し、縦軸は出力を示す。本例では、出力は、力の目標値に対する力の強さの割合である。力の強さが目標値である場合、出力値は「1」である。最大行き過ぎ量Mpは、出力のピーク値と目標値での出力値との差である。整定時間ts(単位:秒)は、目標値での出力値に対する整定許容幅Δ以内の値に出力が収束するまでの時間である。ステップ応答は、入力がステップ状に変化するときの出力の応答である。出力は、減衰振動しながら目標値での出力値に収束する。
以下において、式7の伝達関数を用いた調整処理部123の処理動作を図6及び図7を参照しつつ説明する。図7は、実施の形態に係る目標出力処理部120の目標入出力関係の変更動作の一例を示すフローチャートである。図7は、調整処理部123が、調整器30の操作に基づき、式7に示すような二次遅れ系の伝達関数を決定する処理を示す。
まず、オペレータ等によって調整器30の力調整デバイス31及び速さ調整デバイス32への入力が行われる(ステップS101)。例えば、オペレータは、調整器30の開始ボタン33を押圧後、力調整デバイス31及び速さ調整デバイス32を操作する。力調整デバイス31及び速さ調整デバイス32が示す値の決定後、オペレータは、決定ボタン34を押圧する。これにより、調整器30は、力調整デバイス31及び速さ調整デバイス32が示す決定値の信号をコントローラ100に出力する。
本例では、力調整デバイス31は、力の強さPfに設定され、速さ調整デバイス32は、動作の速さPsに設定される。強さPfは、力の目標値である。強さPfは、予め設定された力の強さの基準値に対する割合を示し、0〜100%の値をとることができる。強さPf=100%は基準値に対応する。速さPsは、速さの目標値である。速さPsは、予め設定された動作の速さの基準値に対する割合を示し、0〜100%の値をとることができる。速さPs=100%は基準値に対応する。なお、基準値は、100%に限定されず、例えば50%であってもよい。
次いで、コントローラ100の調整処理部123は、調整器30から、力の強さ及び動作の速さの決定値である強さPf及び速さPsの値を受信する(ステップS102)。
次いで、調整処理部123は、強さPfを用いて、出力の最大行き過ぎ量Mpを取得する(ステップS103)。出力は、力の目標値である強さPfに対する力の強さの割合である。最大行き過ぎ量Mpの最大値Mp_max及び最小値Mp_minは、予め設定され、記憶部124の目標入出力関係124bに保持されている。さらに、本例では、最大値Mp_max及び最小値Mp_minは、0超1未満の範囲内で設定される。つまり、0<Mp_min<Mp_max<1である。
調整処理部123は、最大値Mp_max及び最小値Mp_minと、強さPfと、下記の式8とを用いて、最大行き過ぎ量Mpを算出する。なお、式8において、強さPf=100%の場合のMpは最大値Mp_maxに対応し、強さPf=0%の場合のMpは最小値Mp_minに対応する。また、式8は、記憶部124の目標入出力関係124bに予め保持されている。
Figure 2020185620
次いで、調整処理部123は、速さPsを用いて、出力の振動の整定時間ts(単位:秒)を取得する(ステップS104)。整定時間tsの最大値ts_max及び最小値ts_minは、予め設定され、記憶部124の目標入出力関係124bに保持されている。調整処理部123は、最大値ts_max及び最小値ts_minと、速さPsと、下記の式9とを用いて、整定時間tsを算出する。なお、式9において、速さPs=100%の場合のtsは最大値ts_maxに対応し、速さPs=0%の場合のtsは最小値ts_minに対応する。また、式9は、記憶部124の目標入出力関係124bに予め保持されている。
Figure 2020185620
次いで、調整処理部123は、最大行き過ぎ量Mpを用いて、伝達関数の減衰係数ζを取得する(ステップS105)。0<Mp_min<Mp_max<1であるため、減衰係数ζ<1となる。これにより、図6に示すように、出力が目標値に対応する「1」を超えるオーバーシュートが発生する。よって、最大行き過ぎ量Mpは、下記の式10のように表される。さらに、式10を減衰係数ζについて解くと、減衰係数ζは下記の式11のように表される。調整処理部123は、最大行き過ぎ量Mpと式11とを用いて、減衰係数ζを算出する。
Figure 2020185620
Figure 2020185620
次いで、調整処理部123は、整定時間tsを用いて、伝達関数の固有角周波数ωnを取得する(ステップS106)。整定時間tsは、減衰係数ζと、固有角周波数ωnと、整定許容幅Δとを用いて、下記の式12のように表される。整定許容幅Δは、図6に示すような出力の振動が整定、つまり収束したとみなすことができる出力の振動幅である。出力の振動幅が整定許容幅Δ以下の場合、振動が整定したとみなされ得る。整定許容幅Δは、図6のように目標値に対応する「1」が中心となるように設定されてもよく、目標値に対応する「1」が中心からずれていてもよい。
Figure 2020185620
整定許容幅Δは、例えば、0.02〜0.05の範囲内の値、つまり、強さPfと同じ単位を用いて、目標値から2〜5%の範囲内の値とすることができる。例えば、整定許容幅Δ=0.05の場合、式12で表される整定時間tsは、下記の式13のように近似することができる。また、整定許容幅Δ=0.02の場合、整定時間tsは、下記の式14のように近似することができる。
Figure 2020185620
Figure 2020185620
本例では、整定許容幅Δ=0.02とする。この場合、式14を固有角周波数ωnについて解くと、固有角周波数ωnは下記の式15のように表される。調整処理部123は、整定時間tsと式15とを用いて、固有角周波数ωnを算出する。
Figure 2020185620
次いで、調整処理部123は、ステップS105で取得した減衰係数ζと、ステップS106で取得した固有角周波数ωnとを、式7の二次遅れ系の伝達関数の基本式に代入することで、強さPf及び速さPsに対応する伝達関数を決定する(ステップS107)。調整処理部123は、減衰係数ζ及び固有角周波数ωnを用いて伝達関数、つまり目標入出力関係を取得する。
次いで、調整処理部123は、ステップS107で取得した伝達関数を記憶部124に記憶させ、目標入出力関係124bに保持させる(ステップS108)。なお、調整処理部123は、記憶部124に既に記憶されている伝達関数を残存させてもよく、ステップS107で取得した伝達関数で置き換えることで更新してもよい。
例えば、図8は、実施の形態に係る目標出力処理部120が用いる目標入出力関係の変更例を、図6と同様に示す図である。図8は、強さPf=20%且つ速さPs=80%のケース1(実線曲線TD1)と、強さPf=50%且つ速さPs=30%のケース2(破線曲線TD2)とを示す。図8は、ケース1及び2についての目標入出力関係のステップ応答を示し縦軸の出力は力に対応する。例えば、強さPfが大きいほど、入力装置20のオペレータはロボットハンド13が把持するワークWが被組み付け対象部品T(図1参照)に接触したことを知覚しやすいが、接触時のロボット10が振動的になる可能性がある。速さPsが大きいほど、力の振動は早く収束するが、目標の動作にロボット10の動作が追従できなくなりロボット10が振動的になる、又は、ロボット10の動作に対する力検出器40の検出精度が低下する可能性がある。
また、調整器30で決定された力の強さPf及び動作の速さPsを目標入出力関係124bへ反映する手法は上記手法に限定されず、いかなる手法であってもよい。例えば、力の強さPfに応じて、図6の曲線TDを振幅方向である出力軸方向に拡張又は収縮させてもよく、動作の速さPsに応じて、図6の曲線TDを時間軸方向に拡張又は収縮させてもよい。なお、上述のような目標入出力関係において、出力には、力の目標値に対する力の強さの割合等の力の強さに対応する出力に限定されず、様々な出力が適用可能である。
<ロボットシステムの動作>
実施の形態に係るロボットシステム1の動作の一例を説明する。図9は、実施の形態に係るロボットシステム1のパラメータの調整動作の一例を示すフローチャートである。図9は、まず、入力装置20を用いてロボット10に動作させた後、調整器30を用いて力の強さ及び動作の速さを変更するケースを示す。
図9に示すように、まず、ロボットシステム1のオペレータ等は、ロボット10に所定の動作をさせるように、入力装置20に操作を入力する(ステップS201)。これにより、入力装置20は、当該操作に対応する入力情報をコントローラ100に出力する。なお、所定の動作は、目的とする作業を実行する動作であり、本例では、ワークWを被組み付け対象部品Tの穴に嵌入する動作であり、力制御を伴う。本例では、オペレータ等は、入力装置20をマニュアル操作することでロボット10の一連の動作のうちの個々の動作を操作し、ロボットハンド13がワークWを押し込む力を調整しつつ、ロボット19に動作をさせる。しかしながら、オペレータ等は、所定の力でワークWを被組み付け対象部品Tの穴に嵌入する一連の動作全体の実行を示す指令を入力装置20に入力することで、ロボット19に動作をさせてもよい。
次いで、コントローラ100の実機処理部110は、入力装置20から入力情報を受け付け、記憶部114に記憶されているパラメータ114aに基づき、当該入力情報に対応する指令をロボット10に出力する(ステップS202)。具体的には、パラメータ114aは、実機処理部110に現時点で設定されているパラメータの設定値であり、例えば、初期設定値であってもよい。実機処理部110は、当該パラメータ114aの設定値に基づき、所定の動作を行わせるためのロボットハンド13の位置指令値を生成し、当該位置指令値に対応する駆動装置M1〜M6の駆動量の指令を、アーム12の駆動装置M1〜M6に出力する。
次いで、コントローラ100の目標出力処理部120は、ステップS202での指令に従って動作したロボット10のロボットハンド13が発生している力の情報である力データと、ロボットハンド13の位置の情報である位置データとを取得する(ステップS203)。目標出力処理部120は、実機処理部110によって生成されるロボットハンド13の位置指令値を、位置データとして取得する。目標出力処理部120は、力検出器40によって検出される力の検出値と、ロボットハンド13の位置指令値に基づく変位方向とを、力データとして取得する。
次いで、オペレータ等は、ステップS202での指令に従ったロボット10の動作を確認し、確認結果に基づき、ロボット10に設定されている力の強さ及び動作の速さのパラメータの値を変更するか否かを判定する(ステップS204)。オペレータ等は、変更する場合(ステップS204でYes)、ステップS205に進み、変更しない場合(ステップS204でNo)、パラメータ調整の一連の動作を終了する。
ステップS205において、オペレータ等は、所望の力の強さ及び動作の速さに調整するために、調整器30の力調整デバイス31及び速さ調整デバイス32への入力を行う。入力完了後、調整器30は、力調整デバイス31及び速さ調整デバイス32が示す決定値をコントローラ100に出力する。
次いで、コントローラ100の目標出力処理部120は、調整器30から力の強さ及び動作の速さの決定値を受け取ることで、記憶部124の目標入出力関係124bにおける力の強さ及び動作の速さの変更を受け付ける(ステップS206)。
次いで、目標出力処理部120は、受け取った力の強さ及び動作の速さの決定値を目標入出力関係124bの伝達関数に反映することで、新たな伝達関数を決定する。つまり、目標出力処理部120は、伝達関数を変更する(ステップS207)。
次いで、目標出力処理部120は、ロボットハンド13の力データ及び位置データを用いて、目標入出力関係の参照入力情報を生成する(ステップS208)。
次いで、目標出力処理部120は、参照入力情報と、ステップS207で決定された伝達関数、つまり目標入出力関係とを用いて、ステップS201の入力情報に対応するロボット10の目標動作を示す目標出力データを取得する(ステップS209)。
次いで、コントローラ100の最適化処理部130は、ステップS203で取得されたロボットハンド13の力データと、ステップS209で取得された目標出力データとを合わせるように、実機処理部110のパラメータ114aの設定値を変更する(ステップS210)。具体的には、最適化処理部130は、力データを目標出力データに一致させるようにパラメータ114aの設定値を変更する。そして、最適化処理部130は、パラメータ調整の一連の動作を終了する。
ステップS201〜S210によって、オペレータ等は、ロボット10の動作の実行結果に基づき、調整器30を用いて力の強さ及び動作の速さのパラメータを所望の値に設定し、コントローラ100は、設定されたパラメータの値を実機処理部110のパラメータ114aの設定値に反映することで、ロボット10の動作に反映する。力の強さ及び動作の速さのパラメータの値のロボット10の動作への反映は、ロボット10に少なくとも1回の所定の動作を行わせることで実現可能である。
なお、ステップS210の後、オペレータ等は、ロボット10に再度所定の動作をさせて、ステップS201〜S210の処理を繰り返させてもよい。これにより、ロボット10は、ステップS210での変更後のパラメータ114aの設定値に基づき動作し、オペレータ等は、ロボット10の当該動作を確認し、ロボット10に設定されている力の強さ及び動作の速さのパラメータの値を変更するか否かを判定することができる。そして、当該パラメータの値の変更結果が実機処理部110のパラメータ114aに反映される。このように、ステップS201〜S210を繰り返すことによって、オペレータ等は、ロボット10の所望の動作が実現されるまでその動作を確認しつつ、調整器30を用いて、力の強さ及び動作の速さのパラメータの最適な値を設定することができる。
<効果等>
実施の形態に係るロボット制御装置としてのコントローラ100は、入力情報を受け付け、入力情報に対応する指令をロボット10に出力する第一処理部としての実機処理部110と、指令を受けたロボット10の動作結果を示す第一情報を取得する第一取得部としての入力処理部121と、入力情報と入力情報に対応するロボット10の目標動作との目標関係としての目標入出力関係124bに基づき、入力情報に対応するロボット10の目標動作を示す第二情報としての目標出力データ124aを取得する第二処理部としての演算部122と、第一情報と第二情報とを合わせるように実機処理部110に設定される第一パラメータ114aを変更するパラメータ決定部としての最適化処理部130と、ロボット10の動作に関する第二パラメータの変更を受け付け、第二パラメータの変更を反映することで、目標入出力関係124bを変更する調整処理部123とを備える。
上記構成によると、コントローラ100は、第二パラメータの変更が反映され且つロボット10の目標動作を示す第二情報と、ロボット10の動作結果を示す第一情報とを合わせるように、実機処理部110の第一パラメータを変更する。よって、コントローラ100は、第二パラメータの変更を反映した第一パラメータの変更を行うことができる。このような変更後の第一パラメータは、ロボット10に目標動作を実行させることができる。このとき、ロボット10のオペレータ等は、ロボット10の動作に関連し且つ判断しやすい第二パラメータを変更することで、実機処理部110に設定されるようなオペレータ等にとって判断が難しい第一パラメータを変更することができる。従って、ロボット10の制御内容の変更が簡易になる。
また、実施の形態に係るコントローラ100において、目標出力処理部120の演算部122は、ロボット10の動作結果を示す第一情報を目標入出力関係124bに適用することで、第二情報の目標出力データ124aを取得してもよい。上記構成によると、第二情報の目標出力データ124aに実際の計測データを反映することができる。これにより、第一情報と第二情報とは高い精度で対応付けられ、このような第一情報及び第二情報を用いて変更される第一パラメータの精度が向上する。
さらに、実施の形態に係るコントローラ100において、最適化処理部130は、FRITの手法を用いて第一パラメータ114aを変更してもよい。FRITの手法を用いることによって、第一パラメータ114aを、ロボット10の動作結果を示す第一情報とロボット10の目標動作を示す第二情報とが一致するように最適に変更することが簡易になる。
また、実施の形態に係るコントローラ100において、入力装置20の入力情報は、ロボット10の操作装置を介して入力される操作入力情報であってもよい。上記構成によると、コントローラ100は、第一パラメータ114aを変更することで、操作入力情報に対応するロボット10の動作を目標動作に合わせることができる。例えば、操作入力情報は、ロボット10の一連の動作に含まれる個々の動作をマニュアル操作するために、オペレータ等によって操作装置に入力される、ロボット10の個々の動作に対応する操作の情報であってもよい。又は、操作入力情報は、ロボット10に一連の動作全体を自動で実行させるために、オペレータ等によって操作装置に入力される、当該一連の動作の実行指令であってもよい。例えば、一連の動作は、ワークWを把持して移動させ、被組み付け対象部品Tの穴に嵌入する動作である。個々の動作は、ワークWを把持する動作、把持したワークWを水平方向に移動する動作、ワークWを下降させる動作、及び、ワークWを対象部品Tの穴に挿入し押し込む動作等で構成される。
また、実施の形態に係るコントローラ100において、入力装置20の入力情報は、ロボット10の操作装置を介して入力される操作入力情報と、ロボット10の動作結果を示す第一情報との差分であってもよい。上記構成によると、コントローラ100は、第一パラメータ114aを変更することで、上記差分を用いたフィードバック制御によるロボット10の動作を目標動作に合わせることができる。
また、実施の形態に係るコントローラ100において、ロボット10の動作結果を示す第一情報は、ロボット10のアーム12に配置された力検出器40による力の検出情報であり、目標出力データ124aは、アーム12が発生する目標の力の情報であってもよい。上記構成によると、コントローラ100は、第一パラメータ114aを変更することで、力制御を伴うアーム12の動作を目標動作に合わせることができる。
また、実施の形態に係るコントローラ100において、実機処理部110の第一パラメータ114aは、ロボット10のアーム12のインピーダンス特性を示す慣性パラメータ、粘性パラメータ及び剛性パラメータの少なくとも1つを含んでもよい。上記のような第一パラメータ114aは、アーム12の力制御に関連するパラメータである。コントローラ100は、力制御に関連する第一パラメータ114aを変更することで、アーム12の動作を目標動作に合わせるように力制御することができる。
また、実施の形態に係るコントローラ100において、ロボット10の動作に関する第二パラメータは、ロボット10のアーム12の力及び動作速度の少なくとも1つを含んでもよい。上記のような第二パラメータは、ロボットシステム1のオペレータ等がパラメータの強弱又は大小の程度及びロボット10の動作との関連性を判断することが容易であるパラメータである。よって、オペレータ等は第二パラメータを調整することで、ロボット10の動作を所望の動作に容易に調整することができる。
また、実施の形態に係るロボットシステム1は、実施の形態に係るコントローラ100と、コントローラ100の指令に従って動作するロボット10と、ロボット10に対する操作の入力を受け付け且つ操作に対応する入力情報をコントローラ100に出力する入力装置20と、第二パラメータの変更を受け付け且つ変更された第二パラメータをコントローラ100に出力する調整器30とを備える。上記構成によると、実施の形態に係るコントローラ100と同様の効果が得られる。
<その他の実施の形態>
以上、本発明の実施の形態の例について説明したが、本発明は、上記実施の形態に限定されない。すなわち、本発明の範囲内で種々の変形及び改良が可能である。例えば、各種変形を実施の形態に施したもの、及び、異なる実施の形態における構成要素を組み合わせて構築される形態も、本発明の範囲内に含まれる。
例えば、実施の形態に係るロボットシステム1は、1つの入力装置20と1つのロボット10とを備えるように構成されていたが、これに限定されない。ロボットシステム1は、1つ以上の入力装置20と1つ以上のロボット10とを備えてもよい。また、ロボット10は、1つのアーム12を備えていたが、2つ以上のアームを備えてもよい。また、ロボット10の形式も、垂直多関節型ロボットに限定されず、例えば、水平多関節型ロボット、極座標型ロボット、円筒座標型ロボット、直角座標型ロボット、垂直多関節型ロボット、又はその他のロボットとして構成されてもよい。このように、ロボットシステム1が備える入力装置20及びロボット10それぞれの数量、並びに、入力装置20及びロボット10それぞれの構成は、いかなる数量及び構成であってもよい。
また、実施の形態に係るロボットシステム1は、マスタースレーブ式の入力装置20及びロボット10を備えてもよい。この場合、例えば、入力装置20は、オペレータの手元にあるマスターアームを構成し、ロボット10は、遠隔のスレーブアームを構成してもよい。そして、オペレータによって与えられるマスターアームの動作を、スレーブアームがトレースするように構成される。ロボットシステム1は、オペレータが所望する動作をスレーブアームに正確に実現させることを容易にする。また、オペレータは、マスターアームを介して、スレーブアームの動作を容易に知覚することができる。
また、本発明は、ロボット制御方法であってもよい。例えば、本発明に係るロボット制御方法は、入力情報を受け付け、第一パラメータに基づき前記入力情報に対応する指令を決定しロボットに出力するステップと、前記指令を受けた前記ロボットの動作結果を示す第一情報を取得するステップと、前記ロボットの動作に関する第二パラメータの変更を受け付けるステップと、前記入力情報と前記入力情報に対応する前記ロボットの目標動作との目標関係に、前記第二パラメータの変更を反映することで、前記目標関係を変更するステップと、前記目標関係に基づき、前記入力情報に対応する前記ロボットの目標動作を示す第二情報を取得するステップと、前記第一情報と前記第二情報とを合わせるように、前記第一パラメータを変更するステップとを含む。このロボット制御方法によれば、上記ロボット制御装置と同様の効果が得られる。このようなロボット制御方法は、CPU、LSIなどの回路、ICカード又は単体のモジュール等によって、実現されてもよい。
また、本発明は、上記ロボット制御方法を実行するためのプログラムであってもよく、上記プログラムが記録された非一時的なコンピュータ読み取り可能な記録媒体であってもよい。また、上記プログラムは、インターネット等の伝送媒体を介して流通させることができるのは言うまでもない。
また、上記で用いた序数、数量等の数字は、全て本発明の技術を具体的に説明するために例示するものであり、本発明は例示された数字に制限されない。また、構成要素間の接続関係は、本発明の技術を具体的に説明するために例示するものであり、本発明の機能を実現する接続関係はこれに限定されない。
また、機能ブロック図におけるブロックの分割は一例であり、複数のブロックを一つのブロックとして実現する、一つのブロックを複数に分割する、及び/又は、一部の機能を他のブロックに移してもよい。また、類似する機能を有する複数のブロックの機能を単一のハードウェア又はソフトウェアが並列又は時分割に処理してもよい。
1 ロボットシステム
10 ロボット
12 アーム
20 入力装置
30 調整器
40 力検出器
100 コントローラ(ロボット制御装置)
110 実機処理部(第一処理部)
120 目標出力処理部
121 入力処理部(第一取得部)
122 演算部(第二処理部)
123 調整処理部
130 最適化処理部(パラメータ決定部)

Claims (10)

  1. 入力情報を受け付け、前記入力情報に対応する指令をロボットに出力する第一処理部と、
    前記指令を受けた前記ロボットの動作結果を示す第一情報を取得する第一取得部と、
    前記入力情報と前記入力情報に対応する前記ロボットの目標動作との目標関係に基づき、前記入力情報に対応する前記ロボットの目標動作を示す第二情報を取得する第二処理部と、
    前記第一情報と前記第二情報とを合わせるように前記第一処理部に設定される第一パラメータを変更するパラメータ決定部と、
    前記ロボットの動作に関する第二パラメータの変更を受け付け、前記第二パラメータの変更を反映することで、前記目標関係を変更する調整処理部とを備える
    ロボット制御装置。
  2. 前記第二処理部は、前記第一情報を前記目標関係に適用することで、前記第二情報を取得する
    請求項1に記載のロボット制御装置。
  3. 前記パラメータ決定部は、FRITの手法を用いて前記第一パラメータを変更する
    請求項1または2に記載のロボット制御装置。
  4. 前記入力情報は、前記ロボットの操作装置を介して入力される操作入力情報である
    請求項1〜3のいずれか一項に記載のロボット制御装置。
  5. 前記入力情報は、前記ロボットの操作装置を介して入力される操作入力情報と前記第一情報との差分である
    請求項1〜3のいずれか一項に記載のロボット制御装置。
  6. 前記第一情報は、前記ロボットのアームに配置された力検出器による力の検出情報であり、
    前記第二情報は、前記アームが発生する目標の力の情報である
    請求項1〜5のいずれか一項に記載のロボット制御装置。
  7. 前記第一パラメータは、前記ロボットのアームのインピーダンス特性を示す慣性パラメータ、粘性パラメータ及び剛性パラメータの少なくとも1つを含む
    請求項1〜6のいずれか一項に記載のロボット制御装置。
  8. 前記第二パラメータは、前記ロボットのアームの力及び動作速度の少なくとも1つを含む
    請求項1〜7のいずれか一項に記載のロボット制御装置。
  9. 請求項1〜8のいずれか一項に記載のロボット制御装置と、
    前記ロボット制御装置の指令に従って動作するロボットと、
    前記ロボットに対する操作の入力を受け付け且つ前記操作に対応する入力情報を前記ロボット制御装置に出力する入力装置と、
    前記第二パラメータの変更を受け付け且つ変更された前記第二パラメータを前記ロボット制御装置に出力する調整器とを備える
    ロボットシステム。
  10. 入力情報を受け付け、第一パラメータに基づき前記入力情報に対応する指令を決定しロボットに出力するステップと、
    前記指令を受けた前記ロボットの動作結果を示す第一情報を取得するステップと、
    前記ロボットの動作に関する第二パラメータの変更を受け付けるステップと、
    前記入力情報と前記入力情報に対応する前記ロボットの目標動作との目標関係に、前記第二パラメータの変更を反映することで、前記目標関係を変更するステップと、
    前記目標関係に基づき、前記入力情報に対応する前記ロボットの目標動作を示す第二情報を取得するステップと、
    前記第一情報と前記第二情報とを合わせるように、前記第一パラメータを変更するステップとを含む
    ロボット制御方法。
JP2019089536A 2019-05-10 2019-05-10 ロボット制御装置、ロボットシステム及びロボット制御方法 Pending JP2020185620A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019089536A JP2020185620A (ja) 2019-05-10 2019-05-10 ロボット制御装置、ロボットシステム及びロボット制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019089536A JP2020185620A (ja) 2019-05-10 2019-05-10 ロボット制御装置、ロボットシステム及びロボット制御方法

Publications (1)

Publication Number Publication Date
JP2020185620A true JP2020185620A (ja) 2020-11-19

Family

ID=73222634

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019089536A Pending JP2020185620A (ja) 2019-05-10 2019-05-10 ロボット制御装置、ロボットシステム及びロボット制御方法

Country Status (1)

Country Link
JP (1) JP2020185620A (ja)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0335989A (ja) * 1989-07-03 1991-02-15 Mitsubishi Electric Corp ロボットの教示装置
WO2007080733A1 (ja) * 2006-01-13 2007-07-19 Matsushita Electric Industrial Co., Ltd. ロボットアームの制御装置及び制御方法、ロボット、及びプログラム
JP2010058202A (ja) * 2008-09-02 2010-03-18 Yaskawa Electric Corp ロボットの教示再生装置および教示再生方法
JP2011088225A (ja) * 2009-10-20 2011-05-06 Yaskawa Electric Corp インピーダンス制御パラメータの調整装置および調整方法
JP2016182649A (ja) * 2015-03-26 2016-10-20 セイコーエプソン株式会社 ロボット制御装置およびロボットシステム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0335989A (ja) * 1989-07-03 1991-02-15 Mitsubishi Electric Corp ロボットの教示装置
WO2007080733A1 (ja) * 2006-01-13 2007-07-19 Matsushita Electric Industrial Co., Ltd. ロボットアームの制御装置及び制御方法、ロボット、及びプログラム
JP2010058202A (ja) * 2008-09-02 2010-03-18 Yaskawa Electric Corp ロボットの教示再生装置および教示再生方法
JP2011088225A (ja) * 2009-10-20 2011-05-06 Yaskawa Electric Corp インピーダンス制御パラメータの調整装置および調整方法
JP2016182649A (ja) * 2015-03-26 2016-10-20 セイコーエプソン株式会社 ロボット制御装置およびロボットシステム

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
奥谷 明大、他: "FRITを用いた一般化内部モデル制御器における自由パラメータのデータ駆動型更新", 計測自動制御学会論文集, vol. 第52巻 第11号, JPN6023013892, 27 March 2023 (2023-03-27), JP, pages 581 - 588, ISSN: 0005033379 *
金子 修 OSAMU KANEKO: "FRITの基礎と今後の展開 −目標応答への追従問題を中心として−", 電気学会論文誌C, vol. 第132巻 第6号, JPN6023013891, 1 June 2012 (2012-06-01), JP, pages 816 - 819, ISSN: 0005033378 *

Similar Documents

Publication Publication Date Title
US11573140B2 (en) Force/torque sensor, apparatus and method for robot teaching and operation
US9138893B2 (en) Robot teaching system, robot teaching assistant device, robot teaching method, and computer-readable recording medium
JP6781183B2 (ja) 制御装置及び機械学習装置
JP2014128857A (ja) ロボット教示システムおよびロボット教示方法
KR20180039132A (ko) 로봇시스템
US11161249B2 (en) Robot control apparatus and robot system
JP5939202B2 (ja) ロボット教示補助装置、ロボットシステムおよびロボット教示方法
WO2020241796A1 (ja) 制御装置、制御システム、機械装置システム及び制御方法
JP2014166681A (ja) ロボット教示システムおよびロボット教示方法
JP6915441B2 (ja) 情報処理装置、情報処理方法、および情報処理プログラム
CN105094049A (zh) 学习路径控制
CA2241710C (en) Off-line teaching method
JP6885085B2 (ja) 制御装置、制御方法、および、制御プログラム
JP6988665B2 (ja) 情報処理システム、情報処理方法、および情報処理プログラム
KR100644174B1 (ko) 로봇 용접의 보정방법
Nandikolla et al. Teleoperation robot control of a hybrid eeg-based bci arm manipulator using ros
JP2020185620A (ja) ロボット制御装置、ロボットシステム及びロボット制御方法
CN109311163B (zh) 校正机器人的运动控制命令的方法及其相关设备
CN113580126A (zh) 用于设置机器人装配操作的系统和方法
JP2023548394A (ja) 異なる座標フレーム間の制約を用いた較正の最適化
JP6972873B2 (ja) 情報処理装置、情報処理方法、および情報処理プログラム
JP6743431B2 (ja) 制御装置、及びロボットシステム
JP7441335B2 (ja) 動作生成装置、ロボットシステム、動作生成方法及び動作生成プログラム
JP4882990B2 (ja) ロボット制御装置
Uthayakumar et al. Teleoperation of a Robotic Arm through Tactile Sensing, Visual and Haptic Feedback

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220420

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230215

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230411

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20230601

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230808

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231107

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20231226

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240301