(57)【要約】【課題】多様な作業に合わせて、且つ、作業を中断することなく、操作者が希望すると想定される操作感を実現する力制御パラメータを適用することが可能なロボットシステム及びその制御方法を提供する。【解決手段】ロボットシステム１００は、ロボット２と、接触力センサと、制御器３と、を備える。制御器３は、ロボット２のＡ制御及びＢ制御を行い、Ａ制御において、予めプログラムされた動作を行うようロボット２の動作を制御し、且つ、Ｂ制御において、少なくとも、接触力センサが感知した接触力に基づいて、ロボット２の動作を力制御し、且つ、Ｂ制御としての第１Ｂ制御において、力制御パラメータとして第１力制御パラメータを用いて力制御を行い、その後、Ａ制御を行うとともにその際に力制御パラメータを第１力制御パラメータから当該第１制御パラメータと異なる第２力制御パラメータに切り替え、その後、Ｂ制御としての第２Ｂ制御において、力制御パラメータとして第２力制御パラメータを用いて力制御を行うよう構成されている。【選択図】  図１
2020185619.tif 000002
【特許請求の範囲】
【請求項１】
作業対象物に作業を行うロボットと、前記ロボットが作業時に作業対象から受ける接触力を感知する接触力センサと、制御器と、を備え、
前記制御器は、
前記ロボットのＡ制御及びＢ制御を行い、前記Ａ制御において、予めプログラムされた動作を行うよう前記ロボットの動作を制御し、且つ、前記Ｂ制御において、少なくとも、前記接触力センサが感知した前記接触力を用いて前記ロボットの動作を力制御し、且つ、
前記Ｂ制御としての第１Ｂ制御において、力制御パラメータとして第１力制御パラメータを用いて前記力制御を行い、その後、前記Ａ制御を行うとともにその際に前記力制御パラメータを前記第１力制御パラメータから当該第１制御パラメータと異なる第２力制御パラメータに切り替え、その後、前記Ｂ制御としての第２Ｂ制御において、前記力制御パラメータとして前記第２力制御パラメータを用いて前記力制御を行うよう構成されている、ロボットシステム。
【請求項２】
操作者が操作する操作器及びＡＩの少なくともいずれかを備え、
前記制御器は、前記Ｂ制御において、前記操作者の操作による前記操作器からの操作信号及び前記操作信号を模擬した前記ＡＩからの模擬操作信号の少なくともいずれかと前記接触力とを用いて前記ロボットの動作を力制御するように構成されている、請求項１に記載のロボットシステム。
【請求項３】
前記ロボットシステムが前記操作信号としての前記操作者が前記操作器を操作する操作力を感知する操作力センサを備えるか、又は、前記ＡＩが前記模擬操作信号としての前記操作力を模擬した模擬操作力を生成するよう構成されており、
前記制御器は、前記Ｂ制御において、前記操作力センサにより感知された前記操作力と前記接触力とに基づいて前記操作器及び前記ロボットを力制御するか、又は、前記ＡＩにより生成される前記模擬操作力と前記接触力とに基づいて前記ロボットの動作を力制御するよう構成されている、請求項２に記載のロボットシステム。
【請求項４】
前記制御器は、前記Ａ制御を行うＡ制御部と、前記Ｂ制御を行うＢ制御部と、操作器制御部と、ロボット制御部と、全体制御部と、を備え、
前記Ａ制御部は、自動制御プログラムを格納するプログラム格納部と、前記プログラム格納部に格納された前記自動制御プログラムに従ってロボット指令動作を生成するＡロボット指令動作生成部と、を備え、
前記Ｂ制御部は、
前記接触力センサから前記接触力を取得する接触力取得部と、
前記操作信号又は前記模擬操作信号に基づいて指令動作を取得する指令動作取得部と、
前記接触力及び前記指令動作、又は、前記指令動作に基づいてロボット指令動作を生成するＢロボット指令動作生成部と、
前記接触力、又は、前記接触力及び前記指令動作に基づいて操作器指令動作を生成する操作器指令動作生成部と、を備え、
前記操作器制御部は、前記操作器指令動作に従って前記操作器の動作を制御するか、又は、前記操作器指令動作に従って前記操作器の動作を制御する操作器制御信号を前記ＡＩに出力するよう構成され、
前記ロボット制御部は、前記Ａロボット指令動作生成部で生成された前記指令動作又は前記Ｂロボット指令動作生成部で生成された前記ロボット指令動作に従って前記ロボットの動作を制御するよう構成され、
前記全体制御部は、前記第１Ｂ制御、前記Ａ制御、及び前記第２Ｂ制御が順次遂行されるよう、前記ロボット制御部で前記ロボットの動作の制御に用いられる指令を前記Ａロボット指令動作生成部で生成された前記ロボット指令動作と前記Ｂロボット指令動作生成部で生成された前記ロボット指令動作との間で切り替え、且つ、前記力制御における力制御パラメータを前記第１力制御パラメータから前記第２力制御パラメータに切り替えるように構成され、
且つ、前記力制御パラメータが、前記接触力及び前記指令動作に基づいて前記操作器指令動作及び前記ロボット指令動作を生成する際における力情報と位置情報との相互変換に用いられるパラメータを含む、請求項２又は３に記載のロボットシステム。
【請求項５】
前記制御器は、前記Ａ制御において、前記ロボットの動作を位置制御するように構成されている、請求項１乃至４のいずれかに記載のロボットシステム。
【請求項６】
前記第１力制御パラメータと前記第２制御パラメータとが、前記第１Ｂ制御によって前記ロボットが行う作業と前記第２Ｂ制御によって前記ロボットが行う作業とにおけるワークの種類の相違、作業の種類の相違、前記ロボットの姿勢の相違、ツールの種類の相違、エンドエフェクタの種類の相違、及び操作者の相違の少なくともいずれかに対応して相違する、請求項１乃至５のいずれかに記載のロボットシステム。
【請求項７】
作業対象物に作業を行うロボットと、前記ロボットが作業時に作業対象から受ける接触力を感知する接触力センサと、制御器と、を備えるロボットの制御方法であって、
前記制御方法は、前記制御器によって前記ロボットをＡ制御するＡ制御工程及び前記制御器によって前記ロボットをＢ制御するＢ制御工程を含み、
前記Ａ制御工程は、前記制御器によって、予めプログラムされた動作を行うよう前記ロボットの動作を制御する工程であり、且つ前記Ｂ制御は、前記制御器によって、少なくとも、前記接触力センサが感知した前記接触力に基づいて、前記ロボットの動作を力制御するする工程であり、且つ、
前記制御方法は、前記Ｂ制御工程として、前記制御器によって、力制御パラメータとして第１力制御パラメータを用いて前記力制御を行う第１Ｂ制御工程と、前記第１Ｂ制御工程の後、前記Ａ制御工程として、前記制御器によって、当該Ａ制御工程を遂行するとともにその際に前記力制御パラメータを前記第１力制御パラメータから当該第１制御パラメータと異なる第２力制御パラメータに切り替える中間Ａ制御工程と、前記中間Ａ制御工程の後、前記Ｂ制御工程として、前記制御器によって、前記力制御パラメータとして前記第２力制御パラメータを用いて前記力制御を行う第２Ｂ制御工程と、を含む、ロボットシステムの制御方法。
【請求項８】
前記ロボットシステムは、操作者が操作する操作器及びＡＩの少なくともいずれかを備え、
前記Ｂ制御工程は、前記制御器によって、前記操作者の操作による前記操作器からの操作信号及び前記操作信号を模擬した前記ＡＩからの模擬操作信号の少なくともいずれかと前記接触力とを用いて前記ロボットの動作を力制御する工程である、請求項７に記載のロボットシステムの制御方法。
【請求項９】
前記ロボットシステムが前記操作信号としての前記操作者が前記操作器を操作する操作力を検知する操作力検知部を備えるか、又は、前記ＡＩが前記模擬操作信号としての前記操作力を模擬した模擬操作力を生成するよう構成されており、
前記Ｂ制御工程は、前記制御器によって、前記操作力センサにより感知された前記操作力と前記接触力とに基づいて前記操作器及び前記ロボットを力制御するか、又は、前記ＡＩにより生成される前記模擬操作力と前記接触力とに基づいて前記ロボットの動作を力制御する工程である、請求項８に記載のロボットシステムの制御方法。
【請求項１０】
前記制御方法は、前記Ａ制御工程、前記Ｂ制御工程、操作器制御工程、ロボット制御工程、及び全体制御工程を含み、
前記Ａ制御工程は、プログラム格納部に格納された自動制御プログラムに従ってロボット指令動作を生成するＡロボット指令動作生成工程を含み、
前記Ｂ制御工程は、
前記接触力センサから前記接触力を取得する接触力取得工程と、
前記操作信号又は前記模擬操作信号に基づいて指令動作を取得する指令動作取得工程と、
前記接触力及び前記指令動作、又は、前記指令動作に基づいてロボット指令動作を生成するＢロボット指令動作生成工程と、
前記接触力、又は、前記接触力及び前記指令動作に基づいて操作器指令動作を生成する操作器指令動作生成工程と、を含み、
前記操作器制御工程は、前記操作器指令動作に従って前記操作器の動作を制御するか、又は、前記操作器指令動作に従って前記操作器の動作を制御する操作器制御信号を前記ＡＩに出力する工程であり、
前記ロボット制御工程は、前記Ａロボット指令動作生成工程で生成された前記指令動作又は前記Ｂロボット指令動作生成工程で生成された前記ロボット指令動作に従って前記ロボットの動作を制御する工程であり、
前記全体制御工程は、前記第１Ｂ制御工程、前記Ａ制御工程、及び前記第２Ｂ制御工程が順次遂行されるように、前記ロボット制御工程で前記ロボットの動作の制御に用いられる指令を前記Ａロボット指令動作生成工程で生成された前記ロボット指令動作と前記Ｂロボット指令動作生成工程で生成された前記ロボット指令動作との間で切り替え、且つ、前記力制御における力制御パラメータを前記第１力制御パラメータから前記第２力制御パラメータに間で切り替える工程であり、
且つ、前記力制御パラメータが、前記接触力及び前記指令動作に基づいて前記操作器指令動作及び前記ロボット指令動作を生成する際における力情報と位置情報との相互変換に用いられるパラメータを含む、請求項８又は９に記載のロボットシステムの制御方法。
【請求項１１】
前記Ａ制御工程は、前記制御器によって前記ロボットの動作を位置制御するように構成されている、請求項７乃至１０のいずれかに記載のロボットシステムの制御方法。
【請求項１２】
前記第１力制御パラメータと前記第２制御パラメータとが、前記第１Ｂ制御工程において前記ロボットが行う作業と前記第２Ｂ制御工程において前記ロボットが行う作業とにおけるワークの種類の相違、作業の種類の相違、前記ロボットの姿勢の相違、ツールの種類の相違、エンドエフェクタの種類の相違、及び操作者の相違の少なくともいずれかに対応して相違する、請求項７乃至１１のいずれかに記載のロボットシステムの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットシステム及びその制御方法に関する。
【背景技術】
【０００２】
ロボットを手動で力制御する技術が知られている。例えば、特許文献１に記載の技術では、バイラテラル制御が行われ、操作者がマスターロボット（操作装置）を操作することによって、スレーブロボットが力制御される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１８−０８９７３６公開特許公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、上記従来の技術のような手動によるロボットの力制御は、多様な作業に対応する必要がある。しかし、ワークの種類、作業の種類、ロボットの姿勢等が変わると、操作者が希望する操作感を実現する力制御パラメータも変わる。従って、多様な作業に合わせて、操作者が希望する操作感を実現する力制御パラメータを適用することが求められる。
【０００５】
このことは、操作者に代わってＡＩがロボットを力制御する場合にも言える。ＡＩ(Artificial Intelligence（人工知能）)は知的行動を人間に代わって行うコンピュータ（ソフトウェア）であるからである。つまり、ＡＩがロボットを力制御する場合、操作者が希望すると想定される操作感を実現する力制御パラメータを適用することが求められる。以下、「操作者が希望する又は操作者が希望すると想定される操作感を実現する力制御パラメータ」を、単に「操作者が希望すると想定される操作感を実現する力制御パラメータ」と呼ぶ。
【０００６】
また、作業を中断することなく力制御パラメータを切り替えることが望ましい。
【０００７】
本発明は上記のような課題を解決するためになされたもので、多様な作業に合わせて、且つ、作業を中断することなく、操作者が希望すると想定される操作感を実現する力制御パラメータを適用することが可能なロボットシステム及びその制御方法を提供することを目的としている。
【課題を解決するための手段】
【０００８】
上記課題を解決するために本発明者等は鋭意検討した。その結果、以下の知見を見出した。
【０００９】
人間（操作者）又はＡＩがロボットを操作する場合、位置制御又は力制御の最中にこれらの制御における制御パラメータを変えると、人間（操作者）又はＡＩがその制御パラメータの変化にとっさに対処して制御を継続することが難しい。従って、制御パラメータを変える場合には、その制御を中断せざるを得ない。しかし、ロボットに予めプログラムされた動作を行わせるのであれば、制御の最中に制御パラメータを変えても、その制御パラメータの変化に対処するよう予めロボットの動作をプログラムしておけば、その制御に支障を来さない。
【００１０】
そこで、本発明者等は、前記ロボットが予めプログラムされた動作を行うよう当該ロボットの動作を制御するプログラム制御において、力制御パラメータを切り替えることを想到した。この場合、プログラム制御が力制御であってもよい。力制御パラメータの切り替えは、当該プログラム制御で用いられた力制御パラメータが不要になった時点以降に行えばよい。
【００１１】
本発明はこのような知見に基づいてなされたものである。
【００１２】
そこで、本発明のある形態（aspect）に係るロボットシステムは、作業対象物に作業を行うロボットと、前記ロボットが作業時に作業対象から受ける接触力を感知する接触力センサと、制御器と、を備え、前記制御器は、前記ロボットのＡ制御及びＢ制御を行い、前記Ａ制御において、予めプログラムされた動作を行うよう前記ロボットの動作を制御し、且つ、前記Ｂ制御において、少なくとも、前記接触力センサが感知した前記接触力に基づいて、前記ロボットの動作を力制御し、且つ、前記Ｂ制御としての第１Ｂ制御において、力制御パラメータとして第１力制御パラメータを用いて前記力制御を行い、その後、前記Ａ制御を行うとともにその際に前記力制御パラメータを前記第１力制御パラメータから当該第１制御パラメータと異なる第２力制御パラメータに切り替え、その後、前記Ｂ制御としての第２Ｂ制御において、前記力制御パラメータとして前記第２力制御パラメータを用いて前記力制御を行うよう構成されている。
【００１３】
ここで、「Ａ制御」及び「Ｂ制御」は、教示におけるＡ制御及びＢ制御を含まない。本発明は、実際の作業における上記課題を解決することを目的としているからである。
【００１４】
この構成によれば、第１Ｂ制御によるロボットの作業において操作者が希望すると想定される操作感を実現する力制御パラメータを第１力制御パラメータとして設定し、第２Ｂ制御によるロボットの作業において操作者が希望すると想定される操作感を実現する力制御パラメータを第２力制御パラメータとして設定すると、制御器が、第１Ｂ制御において、第１力制御パラメータを用いて力制御を行い、その後、Ａ制御を行うとともにその際に力制御パラメータを第１力制御パラメータから第２力制御パラメータに切り替え、その後、第２Ｂ制御において、第２力制御パラメータを用いて力制御を行う。従って、第１Ｂ制御によるロボットの作業、Ａ制御によるロボットの作業、及び第２Ｂ制御によるロボットの作業という多様な作業に合わせて、操作者が希望すると想定される操作感を実現する力制御パラメータを適用することができる。しかも、制御器が、プログラム制御を行うＡ制御時に力制御パラメータを切り替えるので、各作業を中断することなく力制御パラメータを切り替えることができる。
【００１５】
前記ロボットシステムが、操作者が操作する操作器及びＡＩの少なくともいずれかを備え、前記制御器は、前記Ｂ制御において、前記操作者の操作による前記操作器からの操作信号及び前記操作信号を模擬した前記ＡＩからの模擬操作信号の少なくともいずれかと前記接触力とを用いて前記ロボットの動作を力制御するように構成されていてもよい。
【００１６】
この構成によれば、Ｂ制御において、操作者又はＡＩがバイラテラル制御によってロボットの動作を制御することができる。
【００１７】
前記ロボットシステムが前記操作信号としての前記操作者が前記操作器を操作する操作力を感知する操作力センサを備えるか、又は、前記ＡＩが前記模擬操作信号としての前記操作力を模擬した模擬操作力を生成するよう構成されており、前記制御器は、前記Ｂ制御において、前記操作力センサにより感知された前記操作力と前記接触力とに基づいて前記操作器及び前記ロボットを力制御するか、又は、前記ＡＩにより生成される前記模擬操作力と前記接触力とに基づいて前記ロボットの動作を力制御するよう構成されていてもよい。ここで、「前記模擬操作力と前記接触力とに基づいて」とは、「前記模擬操作力」及び「前記接触力」と、これら以外のもの（例えば、後述する実施形態３における「操作力」及び「基本操作力」）と、に基づく場合も含む。
【００１８】
この構成によれば、Ｂ制御において、力帰還型のバイラテラル制御を行うことができる。
【００１９】
前記制御器は、前記Ａ制御を行うＡ制御部と、前記Ｂ制御を行うＢ制御部と、操作器制御部と、ロボット制御部と、全体制御部と、を備え、前記Ａ制御部は、自動制御プログラムを格納するプログラム格納部と、前記プログラム格納部に格納された前記自動制御プログラムに従ってロボット指令動作を生成するＡロボット指令動作生成部と、を備え、前記Ｂ制御部は、前記接触力センサから前記接触力を取得する接触力取得部と、前記操作信号又は前記模擬操作信号に基づいて指令動作を取得する指令動作取得部と、前記接触力及び前記指令動作、又は、前記指令動作に基づいてロボット指令動作を生成するＢロボット指令動作生成部と、前記接触力、又は、前記接触力及び前記指令動作に基づいて操作器指令動作を生成する操作器指令動作生成部と、を備え、前記操作器制御部は、前記操作器指令動作に従って前記操作器の動作を制御するか、又は、前記操作器指令動作に従って前記操作器の動作を制御する操作器制御信号を前記ＡＩに出力するよう構成され、前記ロボット制御部は、前記Ａロボット指令動作生成部で生成された前記指令動作又は前記Ｂロボット指令動作生成部で生成された前記ロボット指令動作に従って前記ロボットの動作を制御するよう構成され、前記全体制御部は、前記第１Ｂ制御、前記Ａ制御、及び前記第２Ｂ制御が順次遂行されるよう、前記ロボット制御部で前記ロボットの動作の制御に用いられる指令を前記Ａロボット指令動作生成部で生成された前記ロボット指令動作と前記Ｂロボット指令動作生成部で生成された前記ロボット指令動作との間で切り替え、且つ、前記力制御における力制御パラメータを前記第１力制御パラメータから前記第２力制御パラメータに切り替えるように構成され、且つ、前記力制御パラメータが、前記接触力及び前記指令動作に基づいて前記操作器指令動作及び前記ロボット指令動作を生成する際における力情報と位置情報との相互変換に用いられるパラメータを含んでいてもよい。ここで、「指令動作」は、「指令位置」と「指令力」とを含む。
【００２０】
この構成によれば、多様な作業に合わせて、且つ、作業を中断することなく、操作者が希望する操作感を実現する力制御パラメータを適用することが可能なロボットシステムを具体的に実現することができる。
【００２１】
前記制御器は、前記Ａ制御において、前記ロボットの動作を位置制御するように構成されていてもよい。
【００２２】
この構成によれば、位置制御においては力制御パラメータを用いないので、力制御パラメータを任意のタイミングで切り替えることができる。
【００２３】
前記第１力制御パラメータと前記第２制御パラメータとが、前記第１Ｂ制御によって前記ロボットが行う作業と前記第２Ｂ制御によって前記ロボットが行う作業とにおけるワークの種類の相違、作業の種類の相違、前記ロボットの姿勢の相違、ツールの種類の相違、エンドエフェクタの種類の相違、及び操作者の相違の少なくともいずれかに対応して相違してもよい。
【００２４】
この構成によれば、ロボットが行う作業におけるワークの種類の相違、作業の種類の相違、ロボットの姿勢の相違、ツールの種類の相違、エンドエフェクタの種類の相違、及び操作者の相違に合わせて、操作者が希望すると想定される操作感を実現する力制御パラメータを適用することができる。
【００２５】
また、本発明の他の態様（aspect）に係るロボットシステムの制御方法は、作業対象物に作業を行うロボットと、前記ロボットが作業時に作業対象から受ける接触力を感知する接触力センサと、制御器と、を備えるロボットの制御方法であって、前記制御方法は、前記制御器によって前記ロボットをＡ制御するＡ制御工程及び前記制御器によって前記ロボットをＢ制御するＢ制御工程を含み、前記Ａ制御工程は、前記制御器によって、予めプログラムされた動作を行うよう前記ロボットの動作を制御する工程であり、且つ前記Ｂ制御は、前記制御器によって、少なくとも、前記接触力センサが感知した前記接触力に基づいて、前記ロボットの動作を力制御するする工程であり、且つ、前記制御方法は、前記Ｂ制御工程として、前記制御器によって、力制御パラメータとして第１力制御パラメータを用いて前記力制御を行う第１Ｂ制御工程と、前記第１Ｂ制御工程の後、前記Ａ制御工程として、前記制御器によって、当該Ａ制御工程を遂行するとともにその際に前記力制御パラメータを前記第１力制御パラメータから当該第１制御パラメータと異なる第２力制御パラメータに切り替える中間Ａ制御工程と、前記中間Ａ制御工程の後、前記Ｂ制御工程として、前記制御器によって、前記力制御パラメータとして前記第２力制御パラメータを用いて前記力制御を行う第２Ｂ制御工程と、を含む。
【００２６】
この構成によれば、多様な作業に合わせて、且つ、作業を中断することなく、操作者が希望する操作感を実現する力制御パラメータを適用することが可能なロボットシステムの制御方法を提供することができる。
【発明の効果】
【００２７】
本発明は、多様な作業に合わせて、且つ、作業を中断することなく、操作者が希望すると想定される操作感を実現する力制御パラメータを適用することが可能なロボットシステム及びその制御方法を提供することができるという効果を奏する。
【図面の簡単な説明】
【００２８】
【図１】図１は、本発明の実施形態１に係るロボットシステムの制御系統の構成を示す機能ブロック図である。
【図２】図２は、図１のＡ制御部の構成を示す機能ブロック図である。
【図３】図３は、操作器ユニット、ロボットユニット、及び図１のＢ制御部の構成を示す機能ブロック図である。
【図４】図４は、ある作業におけるワークの形態及びロボットの姿勢を示す模式的図である。
【図５】図５は、他の作業におけるワークの形態及びロボットの姿勢を示す模式的図である。
【図６】図６は、さらなる他の作業におけるワークの形態及びロボットの姿勢を示す模式的図である。
【図７】図７は、図１のロボットシステムの動作を示すフローチャートである。
【図８】図８は、本発明の実施形態２に係るロボットシステムのＡＩ、ロボットユニット、及びＢ制御部の構成を示す機能ブロック図である。
【図９】図９は、本発明の実施形態３に係るロボットシステムの操作器ユニット、ＡＩ、基本動作指令部、ロボットユニット、及びＢ制御部の構成を示す機能ブロック図である。
【発明を実施するための形態】
【００２９】
以下、本発明の実施の形態を、図面を参照しながら説明する。なお、以下では全ての図面を通じて同一又は相当する要素には同一の参照符号を付して、その重複する説明を省略する。また、本発明は、以下の実施形態に限定されない。
【００３０】
（実施形態１）
本発明の実施形態１は、操作者がロボットを操作する場合における力制御パラメータの切り替えの態様を例示する。
［構成］
図１は、本発明の実施形態１に係るロボットシステムの制御系統の構成を示す機能ブロック図である。図２は、Ａ制御部１１の構成を示す機能ブロック図である。図３は、操作器ユニット、ロボットユニット、及びＢ制御部１２の構成を示す機能ブロック図である。
【００３１】
図１乃至図３を参照すると、本実施形態に係るロボットシステム１００は、操作者が操作する操作器１と、操作器１を操作者が操作する操作力を感知する操作力センサＳＥ１と、作業対象物に作業を行うロボット２と、ロボット２が作業時に作業対象から受ける接触力を感知する接触力センサＳＥ２と、ロボット２のＡ制御及びＢ制御を行い、Ａ制御において、予めプログラムされた動作を行うようロボット２の動作を制御し、且つ、Ｂ制御において、操作力センサＳＥ１によって感知される操作力と接触力センサＳＥ２によって感知される接触力とに基づいて操作器１及びロボット２の動作を力制御するよう構成された制御器３と、を備える。以下では、Ａ制御において、ロボット２を位置制御する形態を例示するが、Ａ制御において、ロボット２を力制御してもよい。
【００３２】
制御器３は、Ｂ制御としての第１Ｂ制御において、力制御パラメータとして第１力制御パラメータを用いて力制御を行い、その後、Ａ制御を行うとともにその際に力制御パラメータを第１力制御パラメータから当該第１制御パラメータと異なる第２力制御パラメータに切り替え、その後、Ｂ制御としての第２Ｂ制御において、力制御パラメータとして第２力制御パラメータを用いて力制御を行うよう構成されている。なお、Ａ制御において、ロボット２を力制御する場合であって、これら３つの制御において、互いに異なる力制御パラメータを用いて力制御を行う場合、Ａ制御の最初及び最後において、力制御パラメータを切り替えればよい。ここで、「Ａ制御」及び「Ｂ制御」は、教示におけるＡ制御及びＢ制御を含まない。本実施形態は、実際の作業を対象としているからである。
【００３３】
以下、このロボットシステム１００の具体的な構成を詳しく説明する。
【００３４】
図１を参照すると、ロボットシステム１００は、操作器１と、ロボット２と、制御器３と、を備える。
【００３５】
制御器３は、Ａ制御部１１と、Ｂ制御部１２と、全体制御部１３と、操作器制御部１４と、ロボット制御部１５と、を備える。
【００３６】
＜操作器１＞
操作器１は、操作者が操作可能であり、且つ、操作者が把持する部分を操作器制御部１４によって位置制御することが可能なものであればよい。操作器１は、ここでは、マスターロボットで構成される。操作器１の形態は、ロボット２（スレーブロボット）と相似形であっても相似形でなくてもよい。操作器１は、例えば、ジョイスティック等の簡単な構造のものであってもよい。
【００３７】
＜ロボット２＞
ロボット２は、力制御することが可能なものであればよい。ロボット２として、産業用ロボット、医療用ロボット等が例示される。
【００３８】
＜制御器３＞
制御器３は、例えば、プロセッサとメモリとを有する演算器で構成される。Ａ制御部１１、Ｂ制御部１２、全体制御部１３、操作器制御部１４、及びロボット制御部１５は、この演算器のメモリに格納された所定の制御プログラムをプロセッサが実行することによって実現される機能ブロックである。この演算器は、具体的には、例えば、マイクロコントローラ、ＭＰＵ、ＦＰＧＡ（Field Programmable Gate Array）、ＰＬＣ（Programmable Logic Controller）等で構成される。制御器３は、集中制御を行う単独の演算器で構成されてもよく、分散制御を行う複数の演算器で構成されてもよい。制御器３は適宜な場所に設けられる。
【００３９】
＜Ａ制御部１１＞
図２を参照すると、Ａ制御部１１は、所定の自動制御プログラムを格納するプログラム格納部２１と、Ａロボット指令位置生成部２２と、を含む。プログラム格納部２１は、上述の演算器のメモリによって構成される。所定の自動制御プログラムは、ロボット２が所定の作業を行うようロボット２を位置制御するように作成されている。Ａロボット指令位置生成部２２は、プログラム格納部２１から所定の自動制御プログラムを読み出してそれを実行することによってロボット指令位置ｘｓを生成する。なお、後述するように、このロボット指令位置ｘｓに従ってロボット制御部１５がロボット２を位置制御すると、ロボット２は、自動制御プログラムによってプログラムされた動作を行う。
【００４０】
＜操作器ユニット３１＞
図３を参照すると、操作器ユニット３１は、操作器１及び操作力センサＳＥ１を備える。操作力センサＳＥ１は、操作者が操作器１を操作する操作力を感知するものであればよい。例えば、操作力センサＳＥ１が、操作器１の操作者が把持する部分（以下把持部という）と、操作器１の把持部以外の部分との間に設けられている場合、操作力センサＳＥ１は、例えば、圧電センサ、歪ゲージ（ロードセル）等によって構成され得る。また、例えば、操作器１の動作がサーボ制御される場合、操作力センサＳＥ１は、サーボモータの電流を感知する電流センサ、サーボモータのトルクを感知するトルクセンサ等で構成され得る。
【００４１】
＜ロボットユニット３２＞
図３を参照すると、ロボットユニット３２は、ロボット２及び接触力センサＳＥ２を備える。接触力センサＳＥ２は、ロボット２の作業対象から作業部が受ける接触力を感知するものであればよい。例えば、接触力センサＳＥ２が、ロボット２の作業部（例えば、エンドエフェクタ）と、それ以外の部分との間に設けられている場合、接触力センサＳＥ２は、例えば、圧電センサ、歪ゲージ（ロードセル）等によって構成され得る。また、例えば、ロボット２の動作がサーボ制御される場合、接触力センサＳＥ２は、サーボモータの電流を感知する電流センサ、サーボモータのトルクを感知するトルクセンサ等で構成され得る。
【００４２】
＜Ｂ制御部１２＞
Ｂ制御部１２は、操作力取得部３３と、接触力取得部３５と、加減算部３７と、力／位置換算部３８と、指令位置生成部３９と、操作器指令位置生成部４１と、Ｂロボット指令位置生成部４５と、を含む。
【００４３】
操作力取得部３３は、操作力センサＳＥ１の感知信号から操作力ｆｍを取得する。
【００４４】
接触力取得部３５は、接触力センサＳＥ２の感知信号から接触力ｆｓを取得する。
【００４５】
加減算部３７は、操作力ｆｍに対する接触力ｆｓの差分を算出する。
【００４６】
力／位置換算部３８は、この差分を指令位置に換算して指令位置ｘｃを生成する。この際、例えば、以下の式が用いられる。
【００４７】
ｍ×（ｄｖｃ／ｄｔ）＋Ｄ×ｖｃ＝ｆｍ−ｆｓ
ここで、ｍは仮想慣性であり、Ｄは仮想粘性である。これらは、力制御パラメータであり、作業に応じて適宜決定される。
【００４８】
加減算部３７と力／位置換算部３８とが、操作力ｆｍに対する接触力ｆｓの差分を位置に換算して指令位置ｘｃを生成する指令位置生成部３９を構成する。
【００４９】
操作器指令位置生成部４１は、指令位置ｘｃを、操作器とロボットとの所定の分配比率で分配して操作器指令位置ｘｍを生成する。
【００５０】
Ｂロボット指令位置生成部４５は、指令位置ｘｃを上記所定の分配比率で分配してロボット指令位置ｘｓを生成する。
【００５１】
＜操作器制御部１４＞
操作器制御部１４は、操作器指令位置生成部４１で生成された操作器指令位置ｘｍに基づいて操作器１を位置制御する。
【００５２】
＜ロボット制御部１５＞
ロボット制御部１５は、Ａ制御部１１のＡロボット指令位置生成部で生成されたロボット指令位置ｘｓ又はＢ制御部１２のＢロボット指令位置生成部で生成されたロボット指令位置ｘｓに基づいてロボット２を位置制御する。
【００５３】
＜力制御パラメータの設定＞
上述のように、力制御パラメータは、本実施形態では、力／位置換算部３８において用いられる仮想慣性ｍ及び仮想粘性Ｄ並びに操作器指令位置生成部４１及びＢロボット指令位置生成部４５で用いられる上記所定の分配比率を含む。しかし、力制御パラメータは、これらに限定されず、力制御に関するその他の各種パラメータを含む。
【００５４】
これらの力制御パラメータが、ロボット２が行う作業におけるワークの種類の相違、作業の種類の相違、及びロボット２の姿勢の相違に合わせて、操作者が希望すると想定される操作感を実現する力制御パラメータに設定される。
【００５５】
＜全体制御部１３＞
全体制御部１３は、制御の切り替え、力制御パラメータの設定、及び力制御パラメータの切り替えを行う。
【００５６】
｛制御の切り替え｝
全体制御部１３は、ロボット制御部１５で位置制御に用いられるロボット指令位置を、Ａ制御部１１で生成されたロボット指令位置ｘｓとＢ制御部１２で生成されたロボット指令位置ｘｓとの間で切り替える。これにより、ロボット２の動作の制御を、Ａ制御とＢ制御との間で切り替える。全体制御部１３は、Ａ制御からＢ制御への切り替えを上述の所定の制御プログラムに従って、自動的に行う。また、Ｂ制御からＡ制御への切り替えを手動で行う。この場合、例えば、制御器３に設けられた制御切り替えボタン（不図示）が押されると、全体制御部１３がＢ制御をＡ制御に切り替える。なお、Ａ制御とＢ制御との間の切り替えを手動で行ってもよい。この場合、制御切り替えボタンを押すごとに、全体制御部１３が、制御をＡ制御とＢ制御との間で切り替える。
【００５７】
｛力制御パラメータの設定｝
上述の力制御パラメータのセットが、例えば、ロボット２が行う作業に対応させられて（関連付けられて）、制御器３の入力部（不図示）から全体制御部１３に入力される。すると、全体制御部１３が、入力された力制御パラメータ及びロボット２が行う作業を互いに対応させて（関連付けて）パラメータ格納部（不図示）に格納する。
【００５８】
｛力制御パラメータの切り替え｝
本実施形態では、ロボット２が行う一連の作業が予め定められており、その一連の作業が、Ａ制御によって遂行される作業（以下、Ａ制御作業という）とＢ制御によって遂行される作業（以下、Ｂ制御作業という）とを含む。
【００５９】
全体制御部１３は各作業を認識することが可能であり、全体制御部１３は、２つのＢ制御作業がＡ制御作業を挟む場合に、中間のＡ制御作業の最中に、力制御パラメータを、その前のＢ制御作業（第１Ｂ制御によって遂行される作業）に対応する力制御パラメータ（第１力制御パラメータ）から次のＢ制御作業（第２Ｂ制御によって遂行される作業）に対応する力制御パラメータ（第２力制御パラメータ）に切り替える。
【００６０】
＜力制御パラメータの技術的意義＞
本実施形態のロボットシステム１００は、ワークのピッキング、ワークの搬送等の簡単な作業をＡ制御によって行い、ワークの挿入等の複雑な状況判断が必要な作業のみを人がＢ制御によって行う。このＢ制御による作業（Ｂ制御作業）では、多様な作業に対応する必要がある。
【００６１】
そのような多様な作業を行う場合、ワークの種類、作業の種類、ロボットの姿勢、ツールの種類、エンドエフェクタの種類、及び操作者等が異なる。ワークには、例えば、形、重さ、硬さ等の種類がある。作業には、例えば、組立、研削、塗装等の種類がある。ロボットの姿勢には、例えば、ツールの方向、腕の伸び等がある。これらが変わると、操作者が希望すると想定される操作感を実現する力制御パラメータも変わる。
【００６２】
図４乃至図６は、作業に応じてワークの形態及びロボット２の姿勢が変化する様子を例示する模式的図である。
【００６３】
図４の作業では、垂直多関節型のロボット２が、下腕部が直立し、且つ上腕部が水平な姿勢でワーク５２を容器状物品５１に挿入する。
【００６４】
図５の作業では、垂直多関節型のロボット２が、図４と同じ姿勢で、図４のワーク５２と形状及び重量の異なるワーク５４を容器状物品５３に挿入する。
【００６５】
図６の作業では、垂直多関節型のロボット２が、図４と異なり、下腕部が傾斜するとともに腕が伸びた姿勢で、図４と同様にワーク５２を容器状物品５１に挿入する。
【００６６】
従って、ロボット２が行う作業が図４の作業から図５の作業に変わると、ワークの種類（形状及び重量）が変わり、ロボット２が行う作業が図４の作業から図６の作業に変わると、ロボット２の姿勢が変わる。
【００６７】
そこで、図４乃至図５の作業のそれぞれにおいて、操作者が希望すると想定される操作感を実現する力制御パラメータのセットを設定することによって、これらの作業に適切に対応することができる。
【００６８】
［動作］
次に、以上のように構成されたロボットシステム１００の動作（ロボットシステム１００の制御方法）を説明する。この動作は、制御器３を構成する演算器において、プロセッサがメモリに格納された上述の所定の制御プログラムを実行することによって遂行される。
【００６９】
まず、一般的な動作を説明する。
【００７０】
図１及び図２を参照すると、Ａ制御においては、Ａ制御部１１が、自動制御プログラムに従ってロボット指令位置ｘｓを出力すると、ロボット制御部１５がロボット２の動作を位置制御する。これにより、ロボット２が自動制御プログラムによってプログラムされた動作を行う。
【００７１】
図１及び図３を参照すると、Ｂ制御においては、操作者が操作器１を操作すると、その操作力ｆｍに応じてロボット制御部１５がロボット２の動作を位置制御する。これにより、操作力ｆｍに応じた力がロボット２によって作業対象に加えられる。すると、この際にロボット２が作業対象から受ける接触力ｆｓに応じて、操作器制御部１４が操作器１の動作を位置制御する。これにより、操作者がその操作に対する反力を感知する。従って、操作者は操作に対する反力を感知しながら操作器１を操作することができる。これにより、ロボット２が力制御によって手動制御される。
【００７２】
次に、本実施形態に特有の動作を、図７を参照しながら説明する。図７は、ロボットシステム１００に特有の動作を示すフローチャートである。
【００７３】
図１乃至図３及び図７を参照すると、上述のように、本実施形態では、ロボット２が行う一連の作業が予め定められており、その一連の作業が、第１Ｂ制御によって遂行される第１作業と、その後にＡ制御によって遂行される第２作業と、その後に第２Ｂ制御によって遂行される第３作業とを含む。第１及び第３作業として、ワークの挿入作業又は組み付け作業が例示される。第２作業として、ワークのピッキング又は搬送が例示される。
【００７４】
この場合に、制御器３は、以下のように、ロボットシステム１００の動作を制御する。
【００７５】
まず、全体制御部１３が、ロボット２の制御をＢ制御に切り替えるとともに力制御パラメータを第１力制御パラメータに切り替える。これにより、制御器３が第１Ｂ制御によってロボット２に第１作業を行わせる（ステップＳ１）。この際、第１力制御パラメータを用いた力制御が行われる。
【００７６】
次いで、全体制御部１３が、ロボット２の制御をＡ制御に切り替える。これにより、制御器３がＡ制御によってロボット２に第２作業を行わせる（ステップＳ２）。また、全体制御部１３が、このＡ制御の最中に力制御パラメータを第２力制御パラメータに切り替える。Ａ制御ではプログラム制御が行われるので、Ａ制御に支障を来すことがない。また、第２力制御パラメータが用いられる第３作業の前に力制御パラメータが第２力制御パラメータに切り替えられるので、第１乃至第３作業を、中断することなく、行うことができる。
【００７７】
次いで、全体制御部１３が、ロボット２の制御をＢ制御に切り替える。これにより、制御器３が第２Ｂ制御によってロボット２に第３作業を行わせる（ステップＳ３）。この際、第２力制御パラメータを用いた力制御が行われる。
【００７８】
以上に説明したように、本実施形態によれば、第１Ｂ制御によるロボット２の作業において操作者が希望すると想定される操作感を実現する力制御パラメータを第１力制御パラメータとして設定し、第２Ｂ制御によるロボットの作業において操作者が希望すると想定される操作感を実現する力制御パラメータを第２力制御パラメータとして設定すると、制御器３が、第１Ｂ制御において、第１力制御パラメータを用いて力制御を行い、その後、Ａ制御を行うとともにその際に力制御パラメータを第１力制御パラメータから第２力制御パラメータに切り替え、その後、第２Ｂ制御において、第２力制御パラメータを用いて力制御を行う。従って、第１Ｂ制御によるロボットの作業、Ａ制御によるロボットの作業、及び第２Ｂ制御によるロボットの作業という多様な作業に合わせて、操作者が希望すると想定される操作感を実現する力制御パラメータを適用することができる。しかも、制御器３が、プログラム制御を行うＡ制御時に力制御パラメータを切り替えるので、各作業を中断することなく力制御パラメータを切り替えることができる。また、Ａ制御において、力制御パラメータを用いない位置制御を行うので、力制御パラメータを任意のタイミングで切り替えることができる。
【００７９】
（実施形態２）
本発明の実施形態２は、ＡＩがロボットを操作する場合における力制御パラメータの切り替えの態様を例示する。
【００８０】
図８は、本発明の実施形態２に係るロボットシステムのＡＩ、ロボットユニット、及びＢ制御部の構成を示す機能ブロック図である。
【００８１】
図８を参照すると、実施形態２のロボットシステム１００（図１参照）は、実施形態１のロボットシステム１００において、操作器ユニット３１がＡＩ６１で置換されている。
【００８２】
これ以外の構成は実施形態１のロボットシステム１００と同じである。以下、この相違点について説明する。
【００８３】
ＡＩ６１は、人間の知的行動を人間に代わって行うコンピュータ（ソフトウェア）である。つまり、ＡＩ６１は、学習ソフトウェアがコンピュータにインストールされることによって実現される学習モデルである。ＡＩ６１は、機械学習するものでもよく、さらにはディープラーニングするものでもよい。本実施形態では、所定の学習ソフトウェアが、制御器３を構成する演算器（不図示）のメモリに格納され、この所定の学習ソフトウェアを上記演算器のプロセッサが読み出して実行することによって、ＡＩ６１が機能ブロックとして実現される。
【００８４】
ＡＩ６１は、操作者の操作による操作器からの操作信号を模擬した模擬操作信号を出力する。「操作者の操作による操作器からの操作信号を模擬した模擬操作信号」として、実際又は仮想の「操作者の操作による操作器からの操作信号」を学習した結果、ＡＩが操作信号として出力する信号が例示される。「模擬操作信号」は「模擬位置」と「模擬操作力」とを含む。本実施形態では、ＡＩ６１は、「模擬操作力」を出力する。
【００８５】
操作力取得部３３は、この模擬操作力から操作力を取得する。また、操作器制御部１４は、操作器指令位置精製部４１から出力される操作器指令位置に従って操作器制御信号をＡＩに出力する。ＡＩ６１は、この操作器制御信号を接触力ｆｓとのフィードバック信号として受け取り、接触力ｆｓを反映した模擬操作力を出力する。
【００８６】
以上の構成により、本実施形態のロボットシステム１００は、実施形態１のロボットシステム１００と同様の作用効果を奏する。
【００８７】
（実施形態３）
本発明の実施形態３は、操作者及びＡＩがロボットを操作する場合における力制御パラメータの切り替えの態様を例示する。
【００８８】
図９は、本発明の実施形態３に係るロボットシステムの操作器ユニット、ＡＩ、基本動作指令部、ロボットユニット、及びＢ制御部の構成を示す機能ブロック図である。
【００８９】
図９を参照すると、実施形態３のロボットシステム１００（図１参照）は、実施形態１のロボットシステム１００が、さらに、ＡＩ６１、基本動作指令部７１、及び加算器７２を有する。
【００９０】
これ以外の構成は実施形態１のロボットシステム１００と同じである。以下、この相違点について説明する。
【００９１】
制御器３は、基本動作指令部７１と、加算器７２と、をさらに備える。ＡＩ６１の機能は、上述した通りである。基本動作指令部７１は、上述の演算器のメモリに格納された基本動作プログラムに従って、基本動作を出力する。「基本動作」は、「基本位置」と「基本操作力」を含む。ここでは、基本動作指令部７１は、基本操作力を出力する。ＡＩ６１は、上述のように、模擬操作力を出力する。加算器７２は、これらの、操作力、基本操作力、及び模擬操作力を合算して出力する。操作力取得部３３は、この合算された操作力から操作力を取得する。ＡＩ６１は、ここでは、操作力と前回の学習結果である模擬操作力とを合算したものを機械学習し、その学習の結果である操作信号を模擬操作力として出力する。これにより、操作器１から、操作者による基本動作に対する必要な修正である操作力が出力され、ＡＩ６１が機械学習する都度、模擬操作力の精度が向上する。その結果、最終的に操作者の修正が不要となり、操作者の技能がＡＩ６１に伝達される。
【００９２】
以上の構成により、本実施形態のロボットシステム１００は、実施形態１のロボットシステム１００と同様の作用効果を奏する。
【００９３】
（その他の実施形態）
上記実施形態では、力制御として、操作器１の操作力を検出する力帰還型バイラテラル制御のうち、操作器１を位置制御するタイプを例示した。しかし、本発明における力制御はこれには限定されない。力制御は、ロボット２に対する接触力が操作器１に帰還されるものであればよい。例えば、操作器１を力制御する力帰還型バイラテラル制御でもよく、操作器１の操作力を検出しない力逆送型バイラテラル制御であってもよい。
【００９４】
上記説明から、当業者にとっては、多くの改良や他の実施形態が明らかである。従って、上記説明は、例示としてのみ解釈されるべきである。
【産業上の利用可能性】
【００９５】
本発明のロボットシステム及びその制御方法は、多様な作業に合わせて、且つ、作業を中断することなく、操作者が希望すると想定される操作感を実現する力制御パラメータを適用することが可能なロボットシステム及びその制御方法として有用である。
【符号の説明】
【００９６】
１  操作器
２  ロボット
３  制御器
１１  Ａ制御部
１２  Ｂ制御
１３  全体制御部
１４  操作器制御部
１５  ロボット制御部
２１  プログラム格納部
２２  自動指令位置生成部
３１  操作器ユニット
３２  ロボットユニット
３３  操作力取得部
３５  接触力取得部
３７  加減算部
３８  力／位置換算部
３９  指令位置生成部
４１  操作器指令位置生成部
４５  Ｂロボット指令位置生成部
５１，５３  容器状物品
５２，５４  ワーク
６１  ＡＩ
７１  基本動作指令部
７２  加算器
１００  ロボットシステム
ＳＥ１  操作力センサ
ＳＥ２  接触力センサ
ｆｍ  操作力
ｆｓ  接触力
【図１】
2020185619.tif 000003
【図２】
2020185619.tif 000004
【図３】
2020185619.tif 000005
【図４】
2020185619.tif 000006
【図５】
2020185619.tif 000007
【図６】
2020185619.tif 000008
【図７】
2020185619.tif 000009
【図８】
2020185619.tif 000010
【図９】
2020185619.tif 000011