(57)【要約】【課題】  ロボットに人の器用さを実装するためのタスクスキルをモデル化し、タスクスキルを生成するための制御方式を定義し、タスクスキルに必要な制御パラメータを抽出し、タスクスキル動作手順を抽出し、対象作業に適したタスクスキルの生成を実現する。【解決手段】  インピーダンスと力のハイブリッド制御を利用したタスクスキル生成装置１及びインピーダンス制御を利用したタスクスキル生成装置１を利用して、操作者が対象作業を動作入力・提示装置１２と力センサ１３を使ってスレーブ装置１１のロボット２を遠隔操作し、その遠隔操作結果からタスクスキル生成に必要なタスクスキル動作手順、タスクスキルのモデルに基づいた初期条件、タスクスキル動作（インピーダンスと力のハイブリッド制御のパラメータ、インピーダンス制御のパラメータ）、終了条件を抽出する。【選択図】図１
2010162687.tif 000002
【特許請求の範囲】
【請求項１】
ロボット、ハンド及び該ハンドに設けた第１の力センサ並びにロボット制御装置及びハンド制御装置とからなるスレーブ装置と、
第２の力センサを備え、操作者の遠隔操作により、前記スレーブ装置の動作を生成する基となる操作者力情報を入力するとともに、前記操作者に前記スレーブ装置の動作情報と前記第１の力センサからの力情報を提示する動作入力・提示装置及び前記第１の力センサと前記第２の力センサの情報に基づいて、前記スレーブ装置及び前記動作入力・提示装置への動作指令情報を生成する遠隔操作システム制御装置とからなるマスタ装置とを備えた、ロボット及びハンドの制御情報を確定するためのマスタ・スレーブ装置。
【請求項２】
前記遠隔操作システム制御装置は、前記第１の力センサ及び第２の力センサの情報に基づいて、前記ロボットの目標手先位置と前記動作入力・提示装置の目標把持部位置を計算する並列型バイラテラル遠隔操作方式を実装している請求項１記載のマスタ・スレーブ装置。
【請求項３】
前記マスタ装置は、前記スレーブ装置の第１の力センサと、前記マスタ装置の第２の力センサの情報を提示する力センサ情報提示装置をさらに備える請求項１または２に記載のマスタ・スレーブ装置。
【請求項４】
請求項１ないし３記載のマスタ・スレーブ装置を使用した、ロボット及びハンドの制御情報確定方法であって、
操作者が前記動作入力・提示装置を介したロボット及びハンドによる作業手順を決定する工程と、
該作業手順にしたがってロボット及びハンドに作業を行わせる工程と、
前記作業手順に沿って前記ロボット及びハンドに作業を行わせる際に、前記遠隔操作システム制御装置が生成する、前記スレーブ装置への動作指令情報に基づいて、前記作業手順毎の動作を実現するために、前記ハンドの各制御軸（ｘ、ｙ、ｚ軸、ｒｏｌｌ、ｐｉｔｃｈ、ｙａｗ軸）のそれぞれに対してインピーダンス制御あるいは力制御を割り当て、かつ、前記スレーブ装置からの動作情報と力センサ情報とに基づいて、前記作業手順の各動作毎に、割り当てた制御における初期条件、前記各軸に対する制御パラメータ並びに終了条件を抽出する、マスタ・スレーブ式ロボット制御情報確定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ナット組み付け作業などの器用さを要求される作業を実現する、ロボット及びハンドの制御情報を確定するためのマスタ・スレーブ装置、及びこのマスタ・スレーブ装置を利用したタスクスキルを生成するためのインピーダンスと力のハイブリッド制御、またはインピーダンス制御を利用したロボット及びハンドの制御情報を確定方法に関するものである。
【背景技術】
【０００２】
ロボットが人の代わりに複雑な作業を実行するには、ロボットに人の器用さを実装する必要がある。
以下、ロボットに実装する人の器用さをタスクスキルと呼ぶ。タスクスキルを実現するためのロボットの動作（以下、タスクスキル動作とも呼ぶ。）は、位置制御や力制御や位置と力のハイブリッド制御により実装され、動作手順をロボットの動作特性に適合するよう設定することにより、対象作業が実現される。
したがって、位置制御や力制御や位置と力のハイブリッド制御に必要なパラメータと動作手順の決め方が重要となる。
【０００３】
しかし、タスクスキル動作が位置制御で実装される場合、予め予想していた作業対象や環境と実際の位置との間に位置誤差が必ず生じるため、過大な力が発生してしまう。タスクスキル動作が力制御で実装される場合、自由空間でロボットを動作させ、目標軌道に追従させることが非常に困難である。
タスクスキル動作が実装される位置と力のハイブリッド制御でも、上記位置制御と力制御と同じ問題がある。
一方、タスクスキル動作が実装される位置と力のハイブリッド制御では、必要なパラメータを対象作業にあわせて試行錯誤的に求めるしかなかった。さらに、対象作業を実現する動作手順についても試行錯誤的に求めるしかなかった（下記特許文献１〜３参照）。
【０００４】
タスクスキル動作を実装する位置制御と力制御と位置と力のハイブリッド制御では、前記の欠点により対象物や環境を破壊したり、常に対象物や環境と接触する必要があるなどの問題があった。また、タスクスキルを生成する場合に、タスクスキルの動作制御に必要なパラメータを試行錯誤的に求め、動作手順も試行錯誤的に求める方法は、非常に手間がかかるだけでなく、対象作業を実現するパラメータと動作手順を見つけることができないなどの問題があった。さらに、タスクスキルがモデル化されていないため、モデルに基づくタスクスキルの生成方法を確立することができないなどの問題もあった。
【０００５】
この改善策として、タスクスキル動作を実装する制御方式には、前記制御方式以外を採用する必要がある。
また、人が直接対象作業を実施し、そのデータから必要とするパラメータと動作手順を抽出する方法がある。しかしながらこの方法でも、必要とするパラメータを作業中の人から直接抽出することはできず、人が対象作業を実現できる動作手順を、そのままロボットの動作手順として採用しても、人とロボットは構造、材質などが全く違うためロボットが対象作業を実現することはできないため、結局試行錯誤的に動作手順を修正する必要がある。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平２００１−５１７１２号公報
【特許文献２】特開平２００３−１２７０７８号公報
【特許文献３】特開平２００４−３２２２２４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
そこで、本発明は、これまで確立されていないタスクスキルのモデル化と、タスクスキル動作を実装する前記制御方式と、作成者が頭の中で試行錯誤的に求めていた制御パラメータの抽出方法とタスクスキル動作手順の抽出を簡単に行うためのマスタ・スレーブ装置の提供と、このマスタ・スレーブ装置を利用したロボット制御情報確定方法の提供を目的としているである。
【課題を解決するための手段】
【０００８】
この目的を達成するため、本発明のロボット及びハンドの制御情報を確定するためのマスタ・スレーブ装置は、以下の手段を採用する。すなわち、
（１）  ロボット、ハンド及び該ハンドに設けた第１の力センサ並びにロボット制御装置及びハンド制御装置からなるスレーブ装置と、第２の力センサを備え、操作者の遠隔操作により、前記スレーブ装置の動作を生成する基となる操作者力情報を入力するとともに、前記操作者に前記スレーブ装置の動作情報と前記第１の力センサからの力情報を提示する動作入力・提示装置及び前記第１の力センサと前記第２の力センサの情報に基づいて、前記スレーブ装置及び前記動作入力・提示装置への動作指令情報を生成する遠隔操作システム制御装置からなるマスタ装置とを備えるようにした。
【０００９】
（２）上記（１）のマスタ・スレーブ装置において、前記遠隔操作システム制御装置は、前記第１の力センサ及び第２の力センサの情報に基づいて、前記ロボットの目標手先位置と前記動作入力・提示装置の目標把持部位置を計算する並列型バイラテラル遠隔操作方式を実装させた。
【００１０】
（３）上記（１）または（２）のマスタ・スレーブ装置において、前記マスタ装置は、前記スレーブ装置の第１の力センサと、前記マスタ装置の第２の力センサの情報を提示する力センサ情報提示装置をさらに備えるようにした。
【００１１】
さらに上記（１）ないし（３）のマスタ・スレーブ装置を使用して、ロボット及びハンドの制御情報を簡単に確定するため、本発明のマスタ・スレーブ式ロボット制御情報確定方法は、
（４）操作者が前記動作入力・提示装置を介したロボット及びハンドによる作業手順を決定する工程と、
該作業手順にしたがってロボット及びハンドに作業を行わせる工程と、
前記作業手順に沿って前記ロボット及びハンドに作業を行わせる際に、前記遠隔操作システム制御装置が生成する、前記スレーブ装置への動作指令情報に基づいて、前記作業手順毎の動作を実現するために、前記ハンドの各制御軸（ｘ、ｙ、ｚ軸、ｒｏｌｌ、ｐｉｔｃｈ、ｙａｗ軸）のそれぞれに対してインピーダンス制御あるいは力制御を割り当て、かつ、前記スレーブ装置からの動作情報と力センサ情報とに基づいて、前記作業手順の各動作毎に、割り当てた制御における初期条件、前記各軸に対する制御パラメータ並びに終了条件を抽出する工程とから構成した。
【発明の効果】
【００１２】
本発明に係るマスタ・スレーブ装置及びこれを使用したマスタ・スレーブ式ロボット制御情報確定方法によれば、ロボットに実装させるタスクスキルの生成において、操作者が本装置を利用して対象作業を実行することにより、実行結果からタスクスキルのモデルに基つく初期条件、タスクスキル動作、終了条件と、タスクスキル動作に実装されるインピーダンスと力のハイブリッド制御又はインピーダンス制御に必要なパラメータと、タスクスキル動作手順を簡単に抽出できるという利点がある。
【図面の簡単な説明】
【００１３】
【図１】本発明マスタ・スレーブ装置の全体構成図である（実施例１、２）。
【図２】遠隔操作システム制御装置に実装される並列型バイラテラル遠隔操作方式のブロック図である（実施例１、２）。
【図３】本発明をナットの組付け作業に適用する際のボルトとナットの概要図である（実施例１、２）。
【図４】本発明により抽出したナットのタスクスキルの動作手順である（実施例１、２）。
【図５】本発明を利用して操作者がボルトにナットを組付ける作業を実施した結果である（実施例１、２）。
【図６】ナットの面をロボットが動作するタスクスキル座標系のxy平面で8分割した図である（実施例１、２）。
【発明を実施するための形態】
【００１４】
本発明は、前記課題を解決するために、初期条件、タスクスキル動作、終了条件からなる一連の状態遷移とするタスクスキルのモデルを基にタスクスキルを生成するためのものである。
【００１５】
本発明は、タスクスキル動作にインピーダンスと力のハイブリッド制御を実装することにより、自由空間での軌道追従性を確保し、対象物や環境との位置誤差に対しても過大な力が発生することを防ぎ、位置と姿勢のそれぞれ軸に対して操作者の意図に合わせてインピーダンス制御と力制御を適用できることを最も主な特徴とする。
【００１６】
本発明は、タスクスキル動作にインピーダンス制御を実装することにより、自由空間での軌道追従性を確保し、対象物や環境との位置誤差に対しても過大な力が発生することを防ぐことを最も主な特徴とする。
さらに、タスクスキル動作にインピーダンスと力のハイブリッド制御を実装する場合、ひとつの軸においてインピーダンス制御から力制御あるいは力制御からインピーダンス制御に切り替えるときの制御の安定化問題が生じるが、タスクスキル動作にインピーダンス制御を実装すると制御の切り替え問題がなくなることを最も主な特徴とする。
【００１７】
本発明は、操作者がロボットを遠隔操作により動作させ、対象作業を実施することにより得られるデータから、インピーダンスと力のハイブリッド制御とインピーダンス制御に必要な制御パラメータとタスクスキルのモデルの一部である初期条件、終了条件を遠隔操作実験結果から抽出することを最も主な特徴とする。タスクスキルの動作手順は操作者の遠隔操作手順から抽出することを最も主な特徴とする。
【００１８】
本発明に係るタスクスキル動作にインピーダンスと力のハイブリッド制御を利用したタスクスキル生成を実施するための形態を実施例１に基づいて図面を参照して、以下説明する。
【００１９】
本発明に係るタスクスキル動作にインピーダンス制御を利用したタスクスキル生成を実施するための形態を実施例２に基づいて図面を参照して、以下説明する。なお、図面及び符号は、実施例１と実施例２について共通であり、実施例１及び実施例２は、同じ図面及び符号で説明する。
【実施例１】
【００２０】
図１は、本発明に関わるタスクスキル動作にインピーダンスと力のハイブリッド制御を利用したタスクスキルを生成するためのマスタ・スレーブ装置１の全体構成図である。スレーブ装置１１は、ロボット２（本実施例ではロボットアーム）、力センサ３、ハンド４、カメラ５、ロボット制御装置６、ハンド制御装置７、力センサ情報取得装置８、カメラ制御装置９、コマンド・データ送受信装置１０を有する。
【００２１】
ロボット２は、多関節構造であり、ロボット制御装置６により位置制御で動作する。さらに、ロボット２を駆動するモータの電流を利用して力センサ３の代わりに利用することもできる。ハンド４の手先位置は、ロボット２の関節に設置されている関節角度計測装置（例、ポテンショメータ）により計算できることは周知技術である。
【００２２】
ハンド４は、多指ハンドであり、ハンド制御装置７により指先が位置制御で動作する。
【００２３】
コマンド・データ送受信装置１０は、ロボット制御装置６に送信するロボット２の目標手先位置指令値とハンド制御装置７に送信するハンド４の目標指位置指令値をマスタ装置２０のコマンド・データ送受信装置１９から受信し、ロボット制御装置６で計算されるロボット２の現在手先位置情報と力センサ情報取得装置８で取得する力センサ３の情報とハンド制御装置７で計算されるハンド４の現在指位置情報とカメラ制御装置９で取得するカメラ５の映像をマスタ装置２０のコマンド・データ送受信装置１９に送信する。
【００２４】
マスタ装置２０は、動作入力・提示装置１２、力センサ１３、動作入力・提示装置用制御装置１４、力センサ情報取得装置１５、遠隔操作システム制御装置１６、力センサ情報提示装置１７、カメラ映像提示装置１８、コマンド・データ送受信装置１９を有する。
【００２５】
動作入力・提示装置１２は、多関節構造であり、動作入力・提示装置用制御装置１４により位置制御で動作する。さらに、動作入力・提示装置１２を駆動するモータの電流を利用して力センサ１３の代わりに利用することもできる。操作者が把持する動作入力・提示装置１２の把持部の位置は、動作入力・提示装置の関節に設置されている関節角度計測装置（例、ポテンショメータ）により把持部の位置が計測できることは周知技術である。
【００２６】
力センサ情報提示装置１７は、スレーブ装置１１の力センサ３の情報とマスタ装置２０の力センサ１３の情報を提示する装置である。
【００２７】
カメラ映像提示装置１８は、スレーブ装置１１のカメラ５の映像を提示する装置である。
【００２８】
図２は、遠隔操作システム制御装置１６に実装される並列型バイラテラル遠隔操作方式のブロック図である。遠隔操作システム制御装置１６は、スレーブ装置１１の力センサ３の情報とマスタ装置２０の力センサの１３情報を基にしてスレーブ装置１１のロボット２の目標手先位置とマスタ装置２０の動作入力・提示装置１２の目標把持部位置を計算する。計算式は、スレーブ装置１１の力センサ３の情報をFs、マスタ装置２０の力センサ１３の情報をFm、スレーブ装置１１のロボット２の目標手先位置とマスタ装置２０の動作入力・提示装置１２の目標把持部位置をPbref、ゲインをKbとすると、
Pbref=Kb(Fm+Fs)  となる。
【００２９】
コマンド・データ送受信装置１９は、ロボット制御装置６に送信するロボット２の目標手先位置指令値とハンド制御装置７に送信するハンド４の目標指位置指令値をスレーブ装置１１のコマンド・データ送受信装置１０に送信し、ロボット制御装置６で計算されるロボット２の現在手先位置情報と力センサ情報取得装置８で取得する力センサ３の情報とハンド制御装置７で計算されるハンド４の現在指位置情報とカメラ制御装置９で取得するカメラ５の映像をスレーブ装置１１のコマンド・データ送受信装置１０から受信する。
【００３０】
図３は、ボルト２２にナット２１を組付ける作業の概要図である。ボルト２２は環境に固定されており、ナット２１はスレーブ装置１１のハンド４に把持される。Σnはナット２１に固定されたナット座標系であり、点０が原点である。Σbはボルト２２に固定されたボルト座標系であり、点Bが原点である。ロボット２の手先座標系は、ナット２１のナット座標系Σnと一致する。ナット２１を動かすタスクスキル動作は、タスクスキル動作座標系Σsで記述されるとする。Σsは、Σnを基準として決定されるが、ナット２１が移動すると同時にΣnも移動するため、ある時点でのΣnをΣsと設定し、Σnが引き続き移動したとしてもΣsは設定された時点の位置に固定される。また、一度ΣsがΣnにより設定され、Σsを基準にしてΣnが移動したとしても、移動後のΣnを利用してΣsを新規に再設定できる。
【００３１】
操作者は、遠隔操作によりナット組付け作業が実行可能な遠隔操作手順を考え、その手順に沿ってナット組付け作業を実施する。したがって、この遠隔操作手順は、ロボット２にとってナット組付け作業を実際に実施した手順と考えることができるため、この遠隔操作手順をナット組付けタスクスキルの動作手順とする。図４は、ナット組付けタスクスキルの動作手順である。遠隔操作時、動作入力・提示装置１２の手先位置（制御点）は、ハンド４に把持されたナット２１の点Oと対応している。したがって、操作者は、動作入力・提示装置１２を介して、ナット２１の点Oを操作することとなる。
【００３２】
タスクスキル動作に実装されるインピーダンスと力のハイブリッド制御では、個々の制御軸（x、y、z軸、roll、pitch、yaw軸）に対してインピーダンス制御と力制御のどちらかの制御を設定する必要がある。操作者には、予め力制御したい制御軸のみ意識して遠隔操作を実施してもらうことにより、その軸のみ力制御軸と設定し、その他の軸をインピーダンス制御軸と設定する。
【００３３】
図５は、操作者が本発明装置を使ってボルト２２にナット２１を組付け作業を実施した実験結果である。
図５（a）がナット２１の点Oに作用する力、図５（b）がナット２１の点Oに作用するトルク、図５（c）がナット２１の点Oの位置、図５（d）がナット２１の点Oの姿勢である。図５で使用する座標系（x、y、z軸、roll、pitch、yaw軸）は、空間の一点に固定される必要があるため、ナット組付け作業開始時のΣnを図５で使用する座標系とし、点Oを原点とした。スレーブ装置１１のハンド４に把持されたナット２１の点Oに作用する力は、力センサ４と力センサ情報取得装置８で取得し、ナット２１の点Oの位置は、ロボット２とロボット制御装置６から取得できる。ナット２１の点Oに作用する力をFs、ナット２１の点Oの位置をPs、剛性ゲインをKiとすると、ナット２１のインピーダンス中心Picは、
Pic=Ps+KiFs  となる。
【００３４】
この式から計算したナット２１のインピーダンス中心の位置を図５（e）、姿勢を図５（f）に示す。ここで剛性ゲインKiはx、y、z軸、roll、pitch、yaw軸周りについてそれぞれ500.0[N/m]、500.0[N/m]、500.0[N/m]、5.0[Nm/rad]、5.0[Nm/rad]、5.0[Nm/rad]とした。
ここで、ナット２１に力、モーメントが作用しない場合には、ナット２１の点Oがナットのインピーダンス中心となる。
【００３５】
操作者による遠隔操作手順とハイブリッド制御における制御軸の決定を基に、ナット組付け作業のタスクスキル動作手順を決定し、このタスクスキル手順を図５に対応させると、
（１）ボルト２２への接近、接触動作（図５のAB間、IJ間）（全軸インピーダンス制御）
（２）ボルト２２への押付け動作（図５のBC間、JK間）（z軸力制御、その他の軸インピーダンス制御）
（３）ボルト２２への軸合せ動作（図５のCG間、KO間）（z軸力制御、その他の軸インピーダンス制御）
（４）ボルト２２への軸合せ動作が失敗した場合の離脱（図５のGH間）、回転動作（図５のHI間）（全軸インピーダンス制御）
（５）ボルト２２への組付け動作（図５のOP間）（z軸力制御、その他の軸インピーダンス制御）
と記述できる。
【００３６】
（１）ボルト２２への接近、接触動作では、図５のAB間及びIJ間では、図５（e）からインピーダンス心を約10[s]間にz軸方向に0.04[m]（図５（e）のα1、β1間）移動させている。したがって、全軸（x、y、z、roll、pitch、yaw軸）インピーダンス制御とし、インピーダンス中心をz軸方向に0.004[m/s]で移動させ、ボルト２２に接近、接触させる。接触後、-6.0[N]（図５（a）のα3）の力をz軸方向に発生させ、接触動作を終了する。ここで、初期位置からの位置誤差が吸収されていることが、図５（c）から確認できる。したがって、ボルト２２への接近、接触動作は、タスクスキルのモデルを使って以下のように記述できる。
・初期条件：Σnのz軸とΣbのz軸がある程度一致しており、動作開始時ΣnをΣsと設定する。z軸方向でのナット２１とボルト２２の距離は0.1[m]以内とする。
・タスクスキル動作：全軸インピーダンス制御で、インピーダンス中心をz軸方向に0.004[m/s]で移動させる。目標位置はナット２１とボルト２２の距離よりも大きく設定し、0.1[m]とする。
・終了条件：z軸方向に-6.0[N]発生した時点で終了する。この時点でのΣnをΣsと再設定する。
【００３７】
（２）ボルト２２への押付け動作では、図５のBC間及びJK間では、約7[s]間、z軸方向に-6.0[N]で押付ける。ボルト２２への押付け動作は、タスクスキルのモデルを使って以下のように記述できる。
・初期条件：z軸方向に-6.0[N]発生状態とする。
・タスクスキル動作：z軸力制御、その他の軸インピーダンス制御で、z軸方向に-6.0[N]で押付ける。
・終了条件：7.0[s]間押付けた時点で終了する。
【００３８】
ナット２１をボルト２２に組付ける場合、ナット２１のΣnのz軸がボルト２２のΣbのz軸に対して一直線上に存在しないと、組付けを実現することはできない。そこで、（３）ボルト２２への軸合せ動作では、ナット２１のΣnのz軸をボルト２２のΣbのz軸と一直線上に設定するための、軸合せ動作手順と軸合せ評価基準を設定する。軸合せ動作は、ナット２１をボルト２２に押付けたまま、コンプライアンス中心の姿勢を変化させることである。軸合せが成功した場合には、ナット２１に大きなモーメントが発生するため、このモーメントに注目しながら、軸合せを実施する必要がある。
【００３９】
図６にナット２１の面をΣsに関してxy平面で8分割した図を示す。操作者は、インピーダンス中心を図６に示されたAA'（pitch軸周り）、BB’、CC’（roll軸周り）、DD’方向に順次姿勢を変化させ軸合せを実施する。以下に詳しく手順を述べる。
【００４０】
図５のCD間では、ナット２１をz軸方向に-6.0[N]で押付けたまま、約32[s]間、図６に示したAA'方向（pitch軸周り）に0.0[rad]から-0.3[rad]（図５（f）のα2）へと回転させ、次に-0.3[rad]から0.3[rad]（図５（f）のβ2）へと回転させ、さらに0.3[rad]から0.0[rad]へと回転させる。ここで、動作時間と回転角度から、回転速度を0.04[rad/s]とする。さらに、図５のDE間、EF間、FG間と順次CD間と同様に図６に示したBB'方向、CC'方向（roll軸周り）、DD'方向で姿勢を変化させる。
【００４１】
軸合せの評価基準は、0.3[Nm]以上のモーメント（図５（b）のα4、β4）が1.0[s]以上発生する状態と定義し、この時点でのΣnをΣsとして再設定する。さらに、この状態が図６のAA'方向の姿勢変化からDD'方向の姿勢変化間に一度でも発生すれば、その後この状態が4回発生するまで、軸合せ動作を繰り返すとする。図５（b）において、CG間では、一度も軸合せの評価基準を満たしていなので、軸合せは失敗となり、GI間に示す離脱、回転動作へと移行する。KO間では、4回軸合せの評価基準を満たしたので、軸合せは成功となり、OP間に示す組付け動作へと移行する。
【００４２】
さらに、図５（e）では、CD間にインピーダンス中心の移動が確認できる。インピーダンス中心の姿勢が図６のAA'方向（pitch軸周り）に0.0[rad]から-0.3[rad]に回転する際にはx軸方向に0.004[m/s]で0.0[m]から0.004[m]に移動し、-0.3[rad]から0.3[rad]に回転する際にはx軸方向に0.004[m/s]で0.004[m]から-0.004[m]に移動し、さらに0.3[rad]から0.0[rad]へと回転する際にはx軸方向に0.004[m/s]で-0.004[m]から0.004[m]移動している。図５のDE間、EF間、FG間も同様にインピーダンス中心の並進動作が確認できる。したがって、ボルト２２への軸合せ動作は、図５のCD間及びKL間、DE間及びLM間、EF間及びMN間、FG間及びNO間に分けてタスクスキルモデルを使って以下のように記述できる。
【００４３】
（３−１）図５のCD間及びKL間
・初期条件：z軸方向に-6.0[N]発生状態とする。
・タスクスキル動作：z軸力制御、その他の軸インピーダンス制御とする。
z軸方向の力は-6.0[N]を維持する。
インピーダンス中心をx軸方向に0.004[m/s]で0.0[m]から0.004[m]に移動させると同時にpitch軸周り（図６のAA'方向）に0.04[rad/s]で0.0[rad]から-0.3[rad]に移動させる。
次に、インピーダンス中心をx軸方向に0.004[m/s]で0.004[m]から-0.004[m]に移動させると同時にpitch軸周り（図６のAA'方向）に0.04[rad/s]で-0.3[rad]から0.3[rad]に移動させる。
最後に、インピーダンス中心をx軸方向に0.004[m/s]で-0.004[m]から0.004[m]に移動させると同時にpitch軸周り（図６のAA'方向）に0.04[rad/s]で0.3[rad]から0.0[rad]に移動させる。
・終了条件：タスクスキル動作が完了した時点で終了とし(3-2)へ移行する。ただし、0.3[Nm]以上のモーメントが1.0[s]以上発生（軸合せの評価基準を満た）した時点でも終了とし、この時点でのΣnをΣsと再設定して（３-２）へ移行する。
【００４４】
（３−２）図５のDE間及びLM間
・初期条件：z軸方向に-6.0[N]発生状態とする。
・タスクスキル動作：z軸力制御、その他の軸インピーダンス制御とする。
z軸方向の力は-6.0[N]を維持する。
インピーダンス中心をx軸方向に0.0028[m/s]で0.0[m]から0.0028[m]、y軸方向に0.0028[m/s]で0.0[m]から0.0028[m]に移動させると同時に図６のBB'方向となるroll軸周りに0.028[rad/s]で0.0[rad]から0.21[rad]、pitch軸周りに0.028[rad/s]で0.0[rad]から-0.21[rad]に移動させる。
次に、インピーダンス中心をx軸方向に0.0028[m/s]で0.0028[m]から-0.0028[m]、y軸方向に0.0028[m/s]で0.0028[m]から-0.0028[m]に移動させると同時に図６のBB'方向となるroll軸周りに0。028[rad/s]で0.21[rad]から-0.21[rad]、pitch軸周りに0.028[rad/s]で-0.21[rad]から0.21[rad]に移動させる。
最後に、インピーダンス中心をx軸方向に0.0028[m/s]で-0.0028[m]から0.0028[m]、y軸方向に0.0028[m/s]で-0.0028[m]から0.0028[m]に移動させると同時に図６のBB'方向となるroll軸周りに0.028[rad/s]で-0.21[rad]から0.0[rad]、pitch軸周りに0.028[rad/s]で0.21[rad]から0.0[rad]に移動させる。
・終了条件：タスクスキル動作が完了した時点で終了とし(3-3)へ移行する。ただし、0.3[Nm]以上のモーメントが1.0[s]以上発生（軸合せの評価基準を満た）した時点でも終了とし、この時点でのΣnをΣsと再設定して（３-３）へ移行する。
【００４５】
（３−３）図５のEF間及びMN間
・初期条件：z軸方向に-6.0[N]発生状態とする。
・タスクスキル動作：z軸力制御、その他の軸インピーダンス制御とする。
z軸方向の力は-6.0[N]を維持する。
インピーダンス中心をy軸方向に0.004[m/s]で0.0[m]から0.004[m]に移動させると同時にroll軸周り（図６のCC'方向）に0.04[rad/s]で0.0[rad]から0.3[rad]に移動させる。
次に、インピーダンス中心をy軸方向に0.004[m/s]で0.004[m]から-0.004[m]に移動させると同時にroll軸周り（図６のCC'方向）に0.04[rad/s]で0.3[rad]から-0.3[rad]に移動させる。
最後に、インピーダンス中心をy軸方向に0.004[m/s]で-0.004[m]から0.004[m]に移動させると同時にroll軸周り（図６のCC'方向）に0.04[rad/s]で-0.3[rad]から0.0[rad]に移動させる。
・終了条件：タスクスキル動作が完了した時点で終了とし（３−４）へ移行する。ただし、0.3[Nm]以上のモーメントが1.0[s]以上発生（軸合せの評価基準を満た）した時点でも終了とし、この時点でのΣnをΣsと再設定して（３−４）へ移行する。
【００４６】
（３−４）図５のFG間及びNO間
・初期条件：z軸方向に-6.0[N]発生状態とする。
・タスクスキル動作：z軸力制御、その他の軸インピーダンス制御とする。
z軸方向の力は-6.0[N]を維持する。
インピーダンス中心をx軸方向に0.0028[m/s]で0.0[m]から-0.0028[m]、y軸方向に0.0028[m/s]で0.0[m]から0.0028[m]に移動させると同時に図６のDD'方向となるroll軸周りに0.028[rad/s]で0.0[rad]から0.21[rad]、pitch軸周りに0.028[rad/s]で0.0[rad]から0.21[rad]に移動させる。
次に、インピーダンス中心をx軸方向に0.0028[m/s]で-0.0028[m]から0.0028[m]、y軸方向に0.0028[m/s]で0.0028[m]から-0.0028[m]に移動させると同時に図６のDD'方向となるroll軸周りに0.028[rad/s]で0.21[rad]から-0.21[rad]、pitch軸周りに0.028[rad/s]で0.21[rad]から-0.21[rad]に移動させる。
最後に、インピーダンス中心をx軸方向に0.0028[m/s]で0.0028[m]から-0.0028[m]、y軸方向に0.0028[m/s]で-0.0028[m]から0.0028[m]に移動させると同時に図６のDD'方向となるroll軸周りに0.028[rad/s]で-0.21[rad]から0.0[rad]、pitch軸周りに0.028[rad/s]で-0.21[rad]から0.0[rad]に移動させる。
・終了条件：タスクスキル動作が完了した時点で終了とし（３−１）へ移行する。ただし、0.3[Nm]以上のモーメントが1.0[s]以上発生（軸合せの評価基準を満た）した時点でも終了とし、この時点でのΣnをΣsと再設定して（３−１）へ移行する。
ここで、ボルトの軸合せ動作の終了条件は、軸合せの評価基準を4回満たすまで軸合せ動作を繰り返し、4回発生した時点と設定する。
【００４７】
（４）ボルト２２への軸合せ動作が失敗した場合の離脱、回転動作では、図５のGH間では約7[s]間でインピーダンス中心をz軸方向に-0.02[m]移動させているため、移動速を0.003[m/s]とする。図５のHI間では約14[s]間でインピーダンス中心をz軸周りに3.14/2[rad]回転させるため、回転速度を0.1[rad/s]とする。したがって、ボルト２２への軸合せ動作が失敗した場合の離脱、回転動作は、タスクスキルのモデルを使って以下のように記述できる。
・初期条件：z軸方向に-6.0[N]発生状態とする。
・タスクスキル動作：全軸インピーダンス制御で、インピーダンス中心をz軸方向に0.003[m/s]で-0.02[m]まで移動させる。その後、インピーダンス中心をz軸周りに0.1[rad/s]で3.14/2[rad]まで回転させる。
・終了条件：タスクスキル動作が完了した時点で終了とする。
【００４８】
（５）ボルト２２への組付け動作では、図５のOP間では約35[s]間でインピーダンス中心をz軸周りに3.14[rad]回転させているため、回転速度を0.1[rad/s]とする。したがって、ボルト２２への組付け動作は、タスクスキルモデルを使って以下のように記述できる。
・初期条件：z軸方向に-6.0[N]発生状態とする。
・作業スキル動作：z軸力制御、その他の軸インピーダンス制御で、z軸方向の力は-6.0[N]を維持したまま、インピーダンス中心をz軸回りに0.1[rad/s]で3.14[rad]回転させる。
・終了条件：タスクスキル動作が完了した時点で終了とする。
【００４９】
以上、本発明に関わるタスクスキル動作にインピーダンスと力のハイブリッド制御を利用したタスクスキル生成装置を実施するための最良の形態を実施例に基づいて説明した。既に実施例１で生成したナット組付けタスクスキルを利用して、ナットの組付け作業実施した。このナット組付けタスクスキルを実装したロボットは、異なるサイズのナット２１や位置・姿勢誤差を含んだ様々な環境下でナット組付け作業をすべて実現することができ、本発明で生成されるタスクスキルが実際に使用できることが確認された。
【実施例２】
【００５０】
上述のように実施例１では、タスクスキル動作にインピーダンスと力のハイブリッド制御を利用したが、実施例２では、タスクスキル動作にインピーダンス制御を利用する。
【００５１】
実施例１と同様に、上述したマスタ装置２０及びスレーブ装置１１からなるマスタ・スレーブ装置を利用して、操作者による遠隔操作手順とハイブリッド制御における制御軸の決定を基に、ナット組付け作業のタスクスキル動作手順を決定する。
このタスクスキル手順を図５に対応させると、
（１）ボルト２２への接近、接触動作（図５のAB間、IJ間）
（２）ボルト２２への押付け動作（図５のBC間、JK間）
（３）ボルト２２への軸合せ動作（図５のCG間、KO間）
（４）ボルト２２への軸合せ動作が失敗した場合の離脱（図５のGH間）、回転動作（図５のHI間）
（５）ボルト２２への組付け動作（図５のOP間）
と記述できる。
【００５２】
（１）ボルト２２への接近、接触動作では、図５のAB間及びIJ間では、図５（e）からインピーダンス中心を約10[s]間にz軸方向に0.04[m]（図５のα1、β1間）移動させている。したがって、インピーダンス中心をz軸方向に0.004[m/s]で移動させ、ボルト２２に接近、接触させる。接触後、-6.0[N]（図５（a）のα3）の力をz軸方向に発生させ、接触動作を終了する。ここで、初期位置からの位置誤差が吸収されていることが、図５（c）から確認できる。したがって、ボルト２２への接近、接触動作は、タスクスキルのモデルを使って以下のように記述できる。
・初期条件：Σnのz軸とΣbのz軸がある程度一致しており、動作開始時ΣnをΣsと設定する。z軸方向でのナット２１とボルト２２の距離は0.1[m]以内とする。
・タスクスキル動作：インピーダンス中心をz軸方向に0.004[m/s]で移動させる。目標位置はナット２１とボルト２２の距離よりも大きく設定し、0.1[m]とする。
・終了条件：z軸方向に-6.0[N]発生した時点で終了する。この時点でのΣnをΣsと再設定する。
【００５３】
（２）ボルト２２への押付け動作では、図５のBC間及びJK間では、約7[s]間、インピーダンス中心を固定し、z軸方向に-6.0[N]発生させている。したがって、ボルトへの押付け動作は、タスクスキルのモデルを使って以下のように記述できる。
・初期条件：z軸方向に-6.0[N]発生状態とする。
・タスクスキル動作：インピーダンス中心を固定し-6.0[N]発生させる。
・終了条件：7.0[s]間押付けた時点で終了する。
【００５４】
（３−１）CD間及びKL間
・初期条件：z軸方向に-6.0[N]発生状態とする。
・タスクスキル動作：インピーダンス中心をx軸方向に0.004[m/s]で0.0[m]から0.004[m]に移動させると同時にpitch軸周り（AA'方向）に0.04[rad/s]で0.0[rad]から-0.3[rad]に移動させる。
次に、インピーダンス中心をx軸方向に0.004[m/s]で0.004[m]から-0.004[m]に移動させると同時にpitch軸周り（AA'方向）に0.04[rad/s]で-0.3[rad]から0.3[rad]に移動させる。
最後に、インピーダンス中心をx軸方向に0.004[m/s]で-0.004[m]から0.004[m]に移動させると同時にpitch軸周り（AA'方向）に0.04[rad/s]で0.3[rad]から0.0[rad]に移動させる。
・終了条件：タスクスキル動作が完了した時点で終了とし(3-2)へ移行する。ただし、0.3[Nm]以上のモーメントが1.0[s]以上発生（軸合せの評価基準を満た）した時点でも終了とし、この時点でのΣnをΣsと再設定して（３−２）へ移行する。
【００５５】
（３−２）DE間及びLM間
・初期条件：z軸方向に-6.0[N]発生状態とする。
・タスクスキル動作：インピーダンス中心をx軸方向に0.0028[m/s]で0.0[m]から0.0028[m]、y軸方向に0.0028[m/s]で0.0[m]から0.0028[m]に移動させると同時に図６のBB'方向となるroll軸周りに0.028[rad/s]で0.0[rad]から0.21[rad]、pitch軸周りに0.028[rad/s]で0.0[rad]から-0.21[rad]に移動させる。
次に、インピーダンス中心をx軸方向に0.0028[m/s]で0.0028[m]から-0.0028[m]、y軸方向に0.0028[m/s]で0.0028[m]から-0.0028[m]に移動させると同時に図６のBB'方向となるroll軸周りに0。028[rad/s]で0.21[rad]から-0.21[rad]、pitch軸周りに0.028[rad/s]で-0.21[rad]から0.21[rad]に移動させる。
最後に、インピーダンス中心をx軸方向に0.0028[m/s]で-0.0028[m]から0.0028[m]、y軸方向に0.0028[m/s]で-0.0028[m]から0.0028[m]に移動させると同時に図６のBB'方向となるroll軸周りに0.028[rad/s]で-0.21[rad]から0.0[rad]、pitch軸周りに0.028[rad/s]で0.21[rad]から0.0[rad]に移動させる。
・終了条件：タスクスキル動作が完了した時点で終了とし(3-3)へ移行する。ただし、0.3[Nm]以上のモーメントが1.0[s]以上発生（軸合せの評価基準を満た）した時点でも終了とし、この時点でのΣnをΣsと再設定して（３−３）へ移行する。
【００５６】
（３−３）EF間及びMN間
・初期条件：z軸方向に-6.0[N]発生状態とする。
・タスクスキル動作：インピーダンス中心をy軸方向に0.004[m/s]で0.0[m]から0.004[m]に移動させると同時にroll軸周り（CC'方向）に0.04[rad/s]で0.0[rad]から0.3[rad]に移動させる。
次に、インピーダンス中心をy軸方向に0.004[m/s]で0.004[m]から-0.004[m]に移動させると同時にroll軸周り（CC'方向）に0.04[rad/s]で0.3[rad]から-0.3[rad]に移動させる。
最後に、インピーダンス中心をy軸方向に0.004[m/s]で-0.004[m]から0.004[m]に移動させると同時にroll軸周り（CC'方向）に0.04[rad/s]で-0.3[rad]から0.0[rad]に移動させる。
・終了条件：タスクスキル動作が完了した時点で終了とし（３−４）へ移行する。ただし、0.3[Nm]以上のモーメントが1.0[s]以上発生（軸合せの評価基準を満た）した時点でも終了とし、この時点でのΣnをΣsと再設定して（３−４）へ移行する。
【００５７】
（３−４）FG間及びNO間
・初期条件：z軸方向に-6.0[N]発生状態とする。
・タスクスキル動作：インピーダンス中心をx軸方向に0.0028[m/s]で0.0[m]から-0.0028[m]、y軸方向に0.0028[m/s]で0.0[m]から0.0028[m]に移動させると同時に図６のDD'方向となるroll軸周りに0.028[rad/s]で0.0[rad]から0.21[rad]、pitch軸周りに0.028[rad/s]で0.0[rad]から0.21[rad]に移動させる。
次に、インピーダンス中心をx軸方向に0.0028[m/s]で-0.0028[m]から0.0028[m]、y軸方向に0.0028[m/s]で0.0028[m]から-0.0028[m]に移動させると同時に図６のDD'方向となるroll軸周りに0.028[rad/s]で0.21[rad]から-0.21[rad]、pitch軸周りに0.028[rad/s]で0.21[rad]から-0.21[rad]に移動させる。
最後に、インピーダンス中心をx軸方向に0.0028[m/s]で0.0028[m]から-0.0028[m]、y軸方向に0.0028[m/s]で-0.0028[m]から0.0028[m]に移動させると同時に図６のDD'方向となるroll軸周りに0.028[rad/s]で-0.21[rad]から0.0[rad]、pitch軸周りに0.028[rad/s]で-0.21[rad]から0.0[rad]に移動させる。
・終了条件：タスクスキル動作が完了した時点で終了とし（３−１）へ移行する。ただし、0.3[Nm]以上のモーメントが1.0[s]以上発生（軸合せの評価基準を満た）した時点でも終了とし、この時点でのΣnをΣsと再設定して（３−１）へ移行する。
ここで、ボルトの軸合せ動作の終了条件は、軸合せの評価基準を4回満たすまで軸合せ動作を繰り返し、4回発生した時点と設定する。
【００５８】
（４）ボルト２２への軸合せ動作が失敗した場合の離脱、回転動作では、図５のGH間では約7[s]間でインピーダンス中心をz軸方向に-0.02[m]移動させているため、移動速を0.003[m/s]とする。図５のHI間では約14[s]間でインピーダンス中心をz軸周りに3.14/2[rad]回転させるため、回転速度を0.1[rad/s]とする。したがって、ボルト２２への軸合せ動作が失敗した場合の離脱、回転動作は、タスクスキルのモデルを使って以下のように記述できる。
・初期条件：z軸方向に-6.0[N]発生状態とする。
・タスクスキル動作：インピーダンス中心をz軸方向に0.003[m/s]で-0.02[m]まで移動させる。その後、インピーダンス中心をz軸周りに0.1[rad/s]で3.14/2[rad]まで回転させる。
・終了条件：タスクスキル動作が完了した時点で終了とする。
【００５９】
（５）ボルト２２への組付け動作では、図のOP間では約35[s]間でインピーダンス中心をz軸周りに3.14[rad]回転させているため、回転速度を0.1[rad/s]とする。したがって、ボルト２２への組付け動作は、タスクスキルモデルを使って以下のように記述できる。
・初期条件：z軸方向に-6.0[N]発生状態とする。
・作業スキル動作：インピーダンス中心をz軸回りに0.1[rad/s]で3.14[rad]回転させる。
・終了条件：タスクスキル動作が完了した時点で終了とする。
【００６０】
以上、本発明に関わるタスクスキル動作にインピーダンス制御を利用したタスクスキル生成装置を実施するための形態を実施例に基づいて説明した。既に実施例２で生成したナット組付けタスクスキルを利用して、ナット組付け作業実施した。このナット組付けタスクスキルを実装したロボットは、異なるサイズのナット２１や位置・姿勢誤差を含んだ様々な環境下でナット組付け作業をすべて実現することができ、本発明で生成されるタスクスキルが実際に使用できることが確認された。
【産業上の利用可能性】
【００６１】
これまで試行錯誤的に作成者の勘に頼って作成していたタスクスキルを、本発明では前記のように一連の流れに沿ってタスクスキルを生成することができるため、実施例で示したナット組付けタスクスキルに限らず、さらに多くのタスクスキルを簡単に生成することが可能である。したがって、人が普段の生活の中で発揮している器用な動作の多くをロボットのタスクスキルとして生成可能となるため、各種の産業用ロボットに適用できるだけでなく、今後人の生活の中に入ってくるロボットにも適用できる。
【符号の説明】
【００６２】
１    タスクスキル生成装置
２    ロボット
３    力センサ
４    ハンド
５    カメラ
６    ロボット制御装置
７    ハンド制御装置
８    力センサ情報取得装置
９    カメラ制御装置
１０  コマンド・データ送受信装置
１１  スレーブ装置
１２  動作入力・提示装置
１３  力センサ
１４  動作入力・提示装置用制御装置
１５  力センサ情報取得装置
１６  遠隔操作システム制御装置
１７  力センサ情報提示装置
１８  カメラ映像提示装置
１９  コマンド・データ送受信装置
２０  マスタ装置
２１  ナット
２２  ボルト
【図１】
2010162687.tif 000003
【図２】
2010162687.tif 000004
【図３】
2010162687.tif 000005
【図４】
2010162687.tif 000006
【図５】
2010162687.tif 000007
【図６】
2010162687.tif 000008