(57)【要約】【課題】マスタスレーブを操作している作業者が見ている画像と作業者が行っている操作とが違和感なく対応する、マスタスレーブロボットの制御装置及び制御方法、ロボット、マスタスレーブロボットの制御プログラム、並びに、マスタスレーブロボットの制御用集積電子回路を提供する。【解決手段】表示情報取得部１１３で取得した拡大率情報を用いて、作業者１が見ている画像と作業者１が行っている操作とが違和感なく対応するような力情報を力情報補正部１１４で生成し、作業者１に力情報提示部１１５で提示することによって、作業効率を向上することができる。【選択図】図１
2015027724.tif 000002
【特許請求の範囲】
【請求項１】
柔軟物に対して作業を行なうスレーブアームと、前記スレーブアームを人が遠隔より操作するマスタアームとを備えるマスタスレーブロボットを使用して、撮像装置で撮像されて表示部に表示された前記作業の状態を前記人が見ながら、前記作業を行う、マスタスレーブロボットの制御装置であって、
前記スレーブアームに外部から加えられた力情報を取得する力情報取得部と、
前記作業を表示する前記表示部での拡大率情報を取得する表示情報取得部と、
前記表示情報取得部から取得した前記拡大率情報が大きければ大きいほど、前記力情報取得部から取得した前記力情報を小さく補正することにより補正力情報を生成する力情報補正部と、
前記力情報補正部で生成された前記補正力情報を前記マスタアームに提示する力情報提示部と、
を備えるマスタスレーブロボットの制御装置。
【請求項２】
前記表示情報取得部は、前記表示部上において、前記スレーブアームの作業により変形した前記柔軟物の変形情報を前記拡大率情報として算出する変形情報算出部である、請求項１に記載のマスタスレーブロボットの制御装置。
【請求項３】
前記表示情報取得部において、前記表示部上において、前記スレーブアームの作業により変形した前記柔軟物の変形情報として、前記柔軟物が変形している範囲の長さを算出して使用する、
請求項２に記載のマスタスレーブロボットの制御装置。
【請求項４】
前記表示情報取得部において、前記表示部上において、前記スレーブアームの作業により変形した前記柔軟物の変形情報として、前記柔軟物が変形している範囲の面積を算出して使用する、
請求項２に記載のマスタスレーブロボットの制御装置。
【請求項５】
前記マスタアームの位置と、姿勢と、速度と、角速度との少なくとも１つ以上のマスタ動作情報を取得するマスタ動作情報取得部をさらに備え、
前記力情報補正部は、
前記マスタ動作情報より前記マスタアームの移動量ｄｂを算出し、
前記変形情報算出部より算出された前記柔軟物の変形量ｄｄを取得し、
前記移動量ｄｂを前記変形量ｄｄにより除算し、
除算した結果（ｄｂ／ｄｄ）に補正係数及び前記力情報を乗算することにより前記補正力情報を生成する、
請求項２〜４のいずれか１つに記載のマスタスレーブロボットの制御装置。
【請求項６】
前記力情報補正部において、前記力情報を補正する際の前記拡大率情報と前記力情報の基準となる大きさを決定する、請求項１〜５のいずれか１つに記載のマスタスレーブロボットの制御装置。
【請求項７】
前記力情報補正部において、前記柔軟物の柔らかさに応じて補正量を変更する請求項１〜６のいずれか１つに記載のマスタスレーブロボットの制御装置。
【請求項８】
前記力情報補正部は、前記拡大率情報が大きければ大きいほど、前記力情報取得部から取得した前記力情報を小さく補正して前記補正力情報を生成するとき、前記力情報の大きさを小さく補正して前記補正力情報を生成すること、又は、前記力情報の更新周期を速くして前記補正力情報を生成することのどちらかを行う、請求項１〜７のいずれか１つに記載のマスタスレーブロボットの制御装置。
【請求項９】
請求項１〜８のいずれか１つに記載のマスタスレーブロボットの制御装置と、
前記マスタスレーブロボットとを備える、ロボット。
【請求項１０】
柔軟物に対して作業を行なうスレーブアームと、前記スレーブアームを人が遠隔より操作するマスタアームとを備えるマスタスレーブロボットを使用して、撮像装置で撮像されて表示部に表示された前記作業の状態を前記人が見ながら、前記作業を行う、マスタスレーブロボットの制御方法であって、
前記スレーブアームに外部から加えられた力情報を力情報取得部で取得し、
前記作業を表示する前記表示部での拡大率情報を表示情報取得部で取得し、
前記表示情報取得部から取得した前記拡大率情報が大きければ大きいほど、前記力情報取得部から取得した前記力情報を小さく補正することにより補正力情報を力情報補正部で生成し、
前記力情報補正部で生成された前記補正力情報を前記マスタアームに力情報提示部で提示する、
マスタスレーブロボットの制御方法。
【請求項１１】
柔軟物に対して作業を行なうスレーブアームと、前記スレーブアームを人が遠隔より操作するマスタアームとを備えるマスタスレーブロボットを使用して、撮像装置で撮像されて表示部に表示された前記作業の状態を前記人が見ながら、前記作業を行う、マスタスレーブロボットの制御プログラムであって、
コンピュータに、
前記スレーブアームに外部から加えられた力情報を力情報取得部で取得するステップと、
前記作業を表示する前記表示部での拡大率情報を表示情報取得部で取得するステップと、
前記表示情報取得部から取得した前記拡大率情報が大きければ大きいほど、前記力情報取得部から取得した前記力情報を小さく補正することにより補正力情報を力情報補正部で生成するステップと、
前記力情報補正部で生成された前記補正力情報を前記マスタアームに力情報提示部で提示するステップと、
を実現させるためのマスタスレーブロボットの制御プログラム。
【請求項１２】
柔軟物に対して作業を行なうスレーブアームと、前記スレーブアームを人が遠隔より操作するマスタアームとを備えるマスタスレーブロボットを使用して、撮像装置で撮像されて表示部に表示された前記作業の状態を前記人が見ながら、前記作業を行う、マスタスレーブロボットの制御用集積電子回路であって、
前記スレーブアームに外部から加えられた力情報を取得する力情報取得部と、
前記作業を表示する前記表示部での拡大率情報を取得する表示情報取得部と、
前記表示情報取得部から取得した前記拡大率情報が大きければ大きいほど、前記力情報取得部から取得した前記力情報を小さく補正することにより補正力情報を生成する力情報補正部と、
前記力情報補正部で生成された前記補正力情報を前記マスタアームに提示する力情報提示部と、
を備えるマスタスレーブロボットの制御用集積電子回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マスタスレーブロボットの動作の生成を行うためのマスタスレーブロボットの制御装置及び制御方法、ロボット、マスタスレーブロボットの制御プログラム、並びに、マスタスレーブロボットの制御用集積電子回路に関する。
【背景技術】
【０００２】
人がマスタロボットを遠隔で操作をして、スレーブロボットにより作業を行うマスタスレーブロボットが様々な分野で注目を集めている。
【０００３】
医療の現場では、術者が遠隔でモニタ画面上に映し出された内視鏡の映像を見ながらマスタロボットを操作して、スレーブロボットが把持した鉗子を動かして手術を行う内視鏡手術がある。患部又は鉗子などを拡大してモニタ画面に映し出し、手術ができるメリットに加えて、現場に専門の医師がいなくても遠隔で手術ができる。
【０００４】
また、製造現場では、微細作業又は熟練を要する作業を行うスレーブロボットを遠隔で操作又は教示するマスタスレーブロボットが提案されており、特に顕微鏡下で行う微細作業について、手元の拡大表示、又は、手元操作の移動量の拡大又は縮小移動などにより、細かな作業を簡易に操作することができる。
【０００５】
いずれのマスタスレーブ方式においてもマスタロボットを操作してスムーズにスレーブロボットを操作する機能に加えて、スレーブロボットにかかる力をマスタロボットにフィードバックする機能が求められる。
【０００６】
また、人はモニタ画面を見ながらマスタロボットを操作するため、モニタに映し出された映像とマスタロボットの操作又はスレーブロボットの動作とを違和感なく対応させる技術として、下記の技術が提案されている。
【０００７】
体腔内手術用マスタスレーブマニピュレータにおいて、モニタに映し出された映像の拡大率に応じてマスタロボットとスレーブロボットとの動作比率を自動調整する（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開平８−１８７２４６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら、作業者が見ている画像と作業者が行っている操作とがさらに違和感なく対応できるように、さらなる操作性の向上が求められていた。
【００１０】
したがって、本発明の目的は、前記問題を解決することにあり、作業者が映像を見ながら操作するマスタスレーブロボットであって、作業者が見ている画像と作業者が行っている操作とが違和感なく対応する、マスタスレーブロボットの制御装置及び制御方法、ロボット、マスタスレーブロボットの制御プログラム、並びに、マスタスレーブロボットの制御用集積電子回路を提供することにある。
【課題を解決するための手段】
【００１１】
上記目的を達成するために、本発明の一態様に係るマスタスレーブロボットの制御装置は、柔軟物に対して作業を行なうスレーブアームと、前記スレーブアームを人が遠隔より操作するマスタアームとを備えるマスタスレーブロボットを使用して、撮像装置で撮像されて表示部に表示された前記作業の状態を前記人が見ながら、前記作業を行う、マスタスレーブロボットの制御装置であって、
前記スレーブアームに外部から加えられた力情報を取得する力情報取得部と、
前記作業を表示する前記表示部での拡大率情報を取得する表示情報取得部と、
前記表示情報取得部から取得した前記拡大率情報が大きければ大きいほど、前記力情報取得部から取得した前記力情報を小さく補正することにより補正力情報を生成する力情報補正部と、
前記力情報補正部で生成された前記補正力情報を前記マスタアームに提示する力情報提示部と、
を備える。
【００１２】
これらの概括的かつ特定の態様は、システム、方法、コンピュータプログラム並びにシステム、方法及びコンピュータプログラムの任意の組み合わせにより実現してもよい。
【発明の効果】
【００１３】
本発明の前記一態様によれば、作業者の操作及び作業者が見ている映像に対応した力提示を行うことができ、作業者が見ている画像と作業者が行っている操作とがさらに違和感なく対応させることができて、正確に作業を行うことができる。
【図面の簡単な説明】
【００１４】
【図１】本発明の第１実施形態におけるマスタスレーブロボットの構成の概要を示す図。
【図２】本発明の第１実施形態のマスタスレーブロボットのブロック図。
【図３Ａ】従来のマスタスレーブロボットにおける映像と力の感じ方の説明図。
【図３Ｂ】従来のマスタスレーブロボットにおける映像と力の感じ方の説明図。
【図３Ｃ】本発明のマスタスレーブロボットにおける被対象物に作用する力と時間との関係のグラフ。
【図３Ｄ】本発明のマスタスレーブロボットにおける被対象物に作用する力と時間との関係のグラフ。
【図４Ａ】従来のマスタスレーブロボットにおける映像と力の感じ方の説明図（把持作業）。
【図４Ｂ】従来のマスタスレーブロボットにおける映像と力の感じ方の説明図（把持作業）。
【図５】本発明の第１実施形態のマスタスレーブロボットにおける動作情報、時間情報のデータ図。
【図６Ａ】本発明の第１実施形態のマスタスレーブロボットにおける撮像装置の設置方法の説明図。
【図６Ｂ】本発明の第１実施形態のマスタスレーブロボットにおける撮像装置の設置方法の説明図。
【図６Ｃ】本発明の第１実施形態のマスタスレーブロボットにおける撮像装置の設置方法の説明図。
【図６Ｄ】本発明の第１実施形態のマスタスレーブロボットにおける撮像装置の設置方法の説明図。
【図７】本発明の第１実施形態のマスタスレーブロボットにおける撮像装置座標系の説明図。
【図８】本発明の第１実施形態のマスタスレーブロボットにおける撮像装置の設置位置の説明図。
【図９】本発明の第１実施形態のマスタスレーブロボットにおける拡大率情報と撮像装置位置情報と時間情報とのデータ図。
【図１０】本発明の第１実施形態のマスタスレーブロボットにおける拡大率情報と撮像装置位置情報と時間情報とのデータ図（拡大率情報が変化する場合）。
【図１１】本発明の第１実施形態のマスタスレーブロボットにおける座標系の説明図。
【図１２】本発明の第１実施形態のマスタスレーブロボットにおける補正マスタ動作情報と時間情報とのデータ図。
【図１３】本発明の第１実施形態のマスタスレーブロボットにおける拡大率情報のキャリブレーションの説明図。
【図１４Ａ】本発明の第１実施形態のマスタスレーブロボットにおける微細部品の変形量の説明図。
【図１４Ｂ】本発明の第１実施形態のマスタスレーブロボットにおける微細部品の変形量の説明図。
【図１４Ｃ】本発明の第１実施形態のマスタスレーブロボットにおける微細部品の変形量の説明図。
【図１５Ａ】本発明の第１実施形態のマスタスレーブロボットにおける柔軟被対象物の変形量の説明図。
【図１５Ｂ】本発明の第１実施形態のマスタスレーブロボットにおける柔軟被対象物の変形量の説明図。
【図１５Ｃ】本発明の第１実施形態のマスタスレーブロボットにおける柔軟被対象物の変形量の説明図。
【図１６Ａ】本発明の第１実施形態のマスタスレーブロボットにおける変形量の算出方法の例の説明図。
【図１６Ｂ】本発明の第１実施形態のマスタスレーブロボットにおける変形量の算出方法の例の説明図。
【図１７】本発明の第１実施形態のマスタスレーブロボットにおける変形度合の説明図。
【図１８】本発明の第１実施形態のマスタスレーブロボットにおける拡大して作業を行う場合の力補正方法の説明図。
【図１９】本発明の第１実施形態のマスタスレーブロボットにおける縮小して作業を行う場合の力補正方法の説明図。
【図２０】本発明の第１実施形態のマスタスレーブロボットにおける拡大して作業を行う場合の力補正方法の例の説明図。
【図２１】本発明の第１実施形態のマスタスレーブロボットにおける縮小して作業を行う場合の力補正方法の例の説明図。
【図２２】本発明の第１実施形態のマスタスレーブロボットにおける力情報の更新周期変更の説明図。
【図２３】本発明の第１実施形態のマスタスレーブロボットにおける力情報、時間情報のデータ図。
【図２４】本発明の第１実施形態のマスタスレーブロボットにおけるマスタ入出力ＩＦのブロック図。
【図２５】本発明の第１実施形態のマスタスレーブロボットの操作手順のフローチャート。
【図２６】本発明の第１実施形態のマスタスレーブロボットにおける力補正手順のフローチャート。
【図２７】本発明の第２実施形態のマスタスレーブロボットのブロック図。
【図２８Ａ】本発明の第２実施形態のマスタスレーブロボットにおける画面上柔軟物変形情報の算出方法の説明図。
【図２８Ｂ】本発明の第２実施形態のマスタスレーブロボットにおける画面上柔軟物変形情報の算出方法の説明図。
【図２９Ａ】本発明の第２実施形態のマスタスレーブロボットにおける面積を考慮した画面上柔軟物変形情報の効果の説明図。
【図２９Ｂ】本発明の第２実施形態のマスタスレーブロボットにおける面積を考慮した画面上柔軟物変形情報の効果の説明図。
【図３０】本発明の第２実施形態のマスタスレーブロボットにおける力補正手順のフローチャート。
【図３１】本発明の第３実施形態のマスタスレーブロボットのブロック図。
【図３２】本発明の第３実施形態のマスタスレーブロボットにおける力情報の補正方法の説明図。
【図３３Ａ】本発明の第３実施形態のマスタスレーブロボットにおける力補正を行わない方向の検出方法の説明図。
【図３３Ｂ】本発明の第３実施形態のマスタスレーブロボットにおける力補正を行わない方向の検出方法の説明図。
【図３４】本発明の第３実施形態のマスタスレーブロボットにおける力補正手順のフローチャート。
【図３５】本発明の第４実施形態のマスタスレーブロボットのブロック図。
【図３６】本発明の第４実施形態のマスタスレーブロボットにおける力補正手順のフローチャート。
【図３７】本発明の第１又は第２実施形態の変形例にかかるマスタスレーブロボットのブロック図。
【図３８】本発明の第１又は第２実施形態の変形例にかかるマスタスレーブロボットのブロック図。
【発明を実施するための形態】
【００１５】
以下に、本発明にかかる実施の形態を図面に基づいて詳細に説明する。
【００１６】
以下、図面を参照して本発明における実施形態を詳細に説明する前に、まず、本発明の基礎となった知見を説明したのち、本発明の種々の態様について説明する。
【００１７】
（本発明の基礎となった知見）
図１には、スレーブアーム３は、作業台１１上の機器１０の挿入口９に、ハンド４で把持された微細部品８を挿入する作業を行うロボットである。この作業をカメラなどの撮像装置６で撮像してディスプレイ７に映し出している。このような状況において、作業者（人）１がディスプレイ７に映し出された映像を見ながらマスタアーム２を操作するマスタスレーブロボット１００を示している。このマスタスレーブロボット１００において、映像の拡大率又はマスタアーム２に対するスレーブアーム３の動作比率を変更すると、それまで見ていた映像とマスタアーム２の操作又は力の感じ方との対応関係が変わり、作業者１に違和感が生じる。
【００１８】
具体的には、図３の（ａ）及び（ｂ）及び図３Ａ及び図３Ｂを用いて説明する。図３Ａ及び図３Ｂは、図１に示すマスタスレーブロボット１００において、作業者１が見ているディスプレイ７の画面の映像を示す。図３Ａと比べて図３Ｂの方が、映像の拡大率が大きく、画面上の微細部品８などが実物よりも大きく映っている。このように拡大率が大きい方が、画面上の微細部品８の曲がり具合が作業者１には大きく見えるため、作業者１は、実際に作業に必要な力よりも小さい力で作業者１は作業を行ってしまう。その結果、作業に必要な力を作業者１がマスタアーム２に加えることができず、作業を正確に行うことが難しくなる。そこで、作業者１の見ている映像と作業者１が行っている操作とを違和感なく対応付ける技術が提案されている。
【００１９】
具体的には、特許文献１の方法では、ディスプレイ７に映し出された映像の拡大率に応じて、マスタアーム２に対するスレーブアーム３の動作比率を自動調整する。例えば、拡大率をｋ倍すると、動作比率を１／ｋとする。また、特許文献２の方法では、作業者１が操作するマスタアーム２の移動に応じて、ディスプレイ７に映し出す位置、角度、又は、拡大率を自動調整する。
【００２０】
しかし、特許文献１の方法では、映像の拡大率に応じて動作比率は変えているが、作業者１へ力フィードバックする力の大きさは変えていない。また、特許文献２の方法においても、マスタの操作に応じて映像を調整しているが、力フィードバックする力の大きさは変えていない。つまり、どちらの特許文献においても、映像の見え方に応じて、作業者１の力フィードバックされる力の感じ方が変わることまでは考慮できていない。例えば、図３Ａ及び図３Ｂの例では、映像を拡大した場合に、作業者１が小さな力で作業を行ってしまうことに対する解決方法は無い。
【００２１】
よって、マスタスレーブロボット１００において、ディスプレイ７に映し出される映像に応じて違和感なく作業者１がマスタアーム２を操作できるように、映像に応じて力フィードバックする力を自動調整するようにマスタスレーブロボット１００を制御することが求められている。
【００２２】
他の作業での例を、図４Ａ及び図４Ｂを用いて説明する。図４Ａ及び図４Ｂは、微細部品８を把持して搬送する作業の例である。図４Ａと比べて図４Ｂの方が、拡大率が大きく、微細部品８が大きく映る。すなわち、図４Ａではハンド４で微細部品８が把持されているぐらいしか見えない。これに対して、図４Ｂではスレーブアーム３の先端のハンド４と微細部品８とが拡大されて表示され、ハンド４により微細部品８がたわんで変形しているのがよく見える。このように、拡大率が大きい方が、微細部品８の変形が大きく見え、作業者１は映像が大きく変化することにつられて、力を加えることを止めてしまう。その結果、微細部品８を把持するのに必要な力を作業者１からマスタアーム２に加えることができずに、微細部品８を持ち上げて運ぼうとするときに、微細部品８がハンド４から落ちてしまう。このように、拡大率を大きくすると、作業者１は視覚の影響を大きく受け、作業を達成する力を加えることができないという問題が生じる。
【００２３】
そこで、本発明は、前記問題を解決することにあり、作業者が映像を見ながら操作するマスタスレーブロボットであって、作業者が見ている画像と作業者が行っている操作とが違和感なく対応する、マスタスレーブロボットの制御装置及び制御方法、ロボット、マスタスレーブロボットの制御プログラム、並びに、マスタスレーブロボットの制御用集積電子回路を提供するものである。
【００２４】
本発明の第１態様によれば、柔軟物に対して作業を行なうスレーブアームと、前記スレーブアームを人が遠隔より操作するマスタアームとを備えるマスタスレーブロボットを使用して、撮像装置で撮像されて表示部に表示された前記作業の状態を前記人が見ながら、前記作業を行う、マスタスレーブロボットの制御装置であって、
前記スレーブアームに外部から加えられた力情報を取得する力情報取得部と、
前記作業を表示する前記表示部での拡大率情報を取得する表示情報取得部と、
前記表示情報取得部から取得した前記拡大率情報が大きければ大きいほど、前記力情報取得部から取得した前記力情報を小さく補正することにより補正力情報を生成する力情報補正部と、
前記力情報補正部で生成された前記補正力情報を前記マスタアームに提示する力情報提示部と、
を備えるマスタスレーブロボットの制御装置を提供する。
【００２５】
前記態様によれば、作業者の操作及び作業者が見ている映像に対応した力提示を行うことができ、作業者が見ている画像と作業者が行っている操作とがさらに違和感なく対応させることができて、正確に作業を行うことができる。
【００２６】
本発明の第２態様によれば、前記表示情報取得部は、前記表示部上において、前記スレーブアームの作業により変形した前記柔軟物の変形情報を前記拡大率情報として算出する変形情報算出部である、第１態様に記載のマスタスレーブロボットの制御装置を提供する。
【００２７】
前記態様によれば、変形情報に基づいてマスタアームが違和感なく操作できるように力フィードバックする力情報を補正することができる。つまり、映像の拡大率が変わっても、作業者が作業に必要な力を加えることができる。
【００２８】
本発明の第３態様によれば、前記表示情報取得部において、前記表示部上において、前記スレーブアームの作業により変形した前記柔軟物の変形情報として、前記柔軟物が変形している範囲の長さを算出して使用する、
第２態様に記載のマスタスレーブロボットの制御装置を提供する。
【００２９】
前記態様によれば、画面上での柔軟物の変形量を表示部上において算出するので、画面上で柔軟物の変形がよく見える場合に、作業者が適切な力を加えることができる。
【００３０】
本発明の第４態様によれば、前記表示情報取得部において、前記表示部上において、前記スレーブアームの作業により変形した前記柔軟物の変形情報として、前記柔軟物が変形している範囲の面積を算出して使用する、
第２態様に記載のマスタスレーブロボットの制御装置を提供する。
【００３１】
前記態様によれば、画面上の変形面積を考慮した変形情報を算出し、作業者の作業方法又は柔軟物の材質が変わった場合においても、作業者が適切な力を加えることができる。
【００３２】
本発明の第５態様によれば、前記マスタアームの位置と、姿勢と、速度と、角速度との少なくとも１つ以上のマスタ動作情報を取得するマスタ動作情報取得部をさらに備え、
前記力情報補正部は、
前記マスタ動作情報より前記マスタアームの移動量ｄｂを算出し、前記変形情報算出部より算出された前記柔軟物の変形量ｄｄを取得し、
前記移動量ｄｂを前記変形量ｄｄにより除算し、
除算した結果（ｄｂ／ｄｄ）に補正係数及び前記力情報を乗算することにより前記補正力情報を生成する、
第２〜４態様のいずれか１つに記載のマスタスレーブロボットの制御装置を提供する。
【００３３】
前記態様によれば、変形情報とマスタ動作情報の移動量との比を用いて力情報を補正するため、作業を行う上で適切な力を作業者が加えることができる。
【００３４】
本発明の第６態様によれば、前記力情報補正部において、前記力情報を補正する際の前記拡大率情報と前記力情報の基準となる大きさを決定する、第１〜５のいずれか１つの態様に記載のマスタスレーブロボットの制御装置を提供する。
本発明の第７態様によれば、前記力情報補正部において、前記柔軟物の柔らかさに応じて補正量を変更する第１〜６のいずれか１つの態様に記載のマスタスレーブロボットの制御装置を提供する。
本発明の第８態様によれば、前記力情報補正部は、前記拡大率情報が大きければ大きいほど、前記力情報取得部から取得した前記力情報を小さく補正して前記補正力情報を生成するとき、前記力情報の大きさを小さく補正して前記補正力情報を生成すること、又は、前記力情報の更新周期を速くして前記補正力情報を生成することのどちらかを行う、第１〜７態様のいずれか１つに記載のマスタスレーブロボットの制御装置を提供する。
【００３５】
前記態様によれば、力の印加が必要な作業における力補正を正確に行うことができる。
【００３６】
本発明の第９態様によれば、第１〜８態様のいずれか１つに記載のマスタスレーブロボットの制御装置と、
前記マスタスレーブロボットとを備える、ロボットを提供する。
【００３７】
前記態様によれば、作業者の操作及び作業者が見ている映像に対応した力提示を行うことができ、作業者が見ている画像と作業者が行っている操作とがさらに違和感なく対応させることができて、正確に作業を行うことができる。
【００３８】
本発明の第１０態様によれば、柔軟物に対して作業を行なうスレーブアームと、前記スレーブアームを人が遠隔より操作するマスタアームとを備えるマスタスレーブロボットを使用して、撮像装置で撮像されて表示部に表示された前記作業の状態を前記人が見ながら、前記作業を行う、マスタスレーブロボットの制御方法であって、
前記スレーブアームに外部から加えられた力情報を力情報取得部で取得し、
前記作業を表示する前記表示部での拡大率情報を表示情報取得部で取得し、
前記表示情報取得部から取得した前記拡大率情報が大きければ大きいほど、前記力情報取得部から取得した前記力情報を小さく補正することにより補正力情報を力情報補正部で生成し、
前記力情報補正部で生成された前記補正力情報を前記マスタアームに力情報提示部で提示する、
マスタスレーブロボットの制御方法を提供する。
【００３９】
前記態様によれば、作業者の操作及び作業者が見ている映像に対応した力提示を行うことができ、作業者が見ている画像と作業者が行っている操作とがさらに違和感なく対応させることができて、正確に作業を行うことができる。
【００４０】
本発明の第１１態様によれば、柔軟物に対して作業を行なうスレーブアームと、前記スレーブアームを人が遠隔より操作するマスタアームとを備えるマスタスレーブロボットを使用して、撮像装置で撮像されて表示部に表示された前記作業の状態を前記人が見ながら、前記作業を行う、マスタスレーブロボットの制御プログラムであって、
コンピュータに、
前記スレーブアームに外部から加えられた力情報を力情報取得部で取得するステップと、
前記作業を表示する前記表示部での拡大率情報を表示情報取得部で取得するステップと、
前記表示情報取得部から取得した前記拡大率情報が大きければ大きいほど、前記力情報取得部から取得した前記力情報を小さく補正することにより補正力情報を力情報補正部で生成するステップと、
前記力情報補正部で生成された前記補正力情報を前記マスタアームに力情報提示部で提示するステップと、
を実現させるためのマスタスレーブロボットの制御プログラムを提供する。
【００４１】
前記態様によれば、作業者の操作及び作業者が見ている映像に対応した力提示を行うことができ、作業者が見ている画像と作業者が行っている操作とがさらに違和感なく対応させることができて、正確に作業を行うことができる。
【００４２】
本発明の第１２態様によれば、柔軟物に対して作業を行なうスレーブアームと、前記スレーブアームを人が遠隔より操作するマスタアームとを備えるマスタスレーブロボットを使用して、撮像装置で撮像されて表示部に表示された前記作業の状態を前記人が見ながら、前記作業を行う、マスタスレーブロボットの制御用集積電子回路であって、
前記スレーブアームに外部から加えられた力情報を取得する力情報取得部と、
前記作業を表示する前記表示部での拡大率情報を取得する表示情報取得部と、
前記表示情報取得部から取得した前記拡大率情報が大きければ大きいほど、前記力情報取得部から取得した前記力情報を小さく補正することにより補正力情報を生成する力情報補正部と、
前記力情報補正部で生成された前記補正力情報を前記マスタアームに提示する力情報提示部と、
を備えるマスタスレーブロボットの制御用集積電子回路を提供する。
【００４３】
前記態様によれば、作業者の操作及び作業者が見ている映像に対応した力提示を行うことができ、作業者が見ている画像と作業者が行っている操作とがさらに違和感なく対応させることができて、正確に作業を行うことができる。
【００４４】
（第１実施形態）
本発明の第１実施形態における、マスタスレーブロボット１００の制御装置１０１を含むマスタスレーブロボット１００の概要について説明する。
【００４５】
図１は、マスタスレーブロボット１００を使った微細部品８の挿入作業の様子を示す。
【００４６】
図１に示すように、例えば、工場内のセル生産で、テレビ、ＤＶＤレコーダ、又は携帯電話のなどの機器１０用のプリント基板の挿入口９に、微細部品８を取り付ける作業を例にとって説明する。
【００４７】
マスタスレーブロボット１００のスレーブアーム３は、機器１０が設置された作業台１１の上部もしくは壁面に設置され、機器１０の挿入口９に微細部品８を挿入する作業を行うロボットである。
【００４８】
スレーブアーム３の先端には、微細部品８を把持するハンド４が取り付けられている。
【００４９】
作業台１１には、カメラなどの撮像装置６が配置され、微細部品８及び挿入口９を拡大して撮像し、ディスプレイ７に撮像した映像を映す。
【００５０】
力センサ５は、ハンド４の手首部に設置され、微細部品８が挿入口９又は機器１０に接触した際に生じる反力を測定する。
【００５１】
作業者１は、撮像装置６で撮像された映像をディスプレイ７で確認しながらマスタアーム２を操作するとスレーブアーム３が動作する。さらに、力センサ５で計測した力を、スレーブアーム３からマスタアーム２へフィードバックすることで、作業者１は、微細部品８を直接操作している感覚でスレーブアーム３を操作することができる。
【００５２】
図２は、本発明の第１実施形態における、マスタスレーブロボット１００のブロック図を示す。図２において、マスタスレーブロボット１００は、マスタロボット１０２と、スレーブロボット１０３で構成されている。マスタロボット１０２は、マスタアーム２と、マスタアーム２の制御装置１０４とで構成されている。スレーブロボット１０３は、スレーブアーム３と、スレーブアーム３の制御装置１０５とで構成されている。
【００５３】
マスタアーム２の制御装置１０４は、スレーブアーム３の動作を生成し、スレーブロボット１０３で取得した力情報を補正して提示するマスタアーム２の制御装置である。スレーブアーム３の制御装置１０５は、スレーブアーム３の位置及び姿勢を制御するスレーブアーム３の制御装置である。
【００５４】
以下、この第１実施形態について詳細に説明する。
【００５５】
＜マスタアームの制御装置の説明＞
マスタアーム２の制御装置１０４は、マスタ制御装置本体部１０６と、マスタ周辺装置１０８とで構成されている。
【００５６】
＜スレーブアームの制御装置の説明＞
スレーブアーム３の制御装置１０５は、スレーブ制御装置本体部１０７と、スレーブ周辺装置１０９とで構成されている。
【００５７】
＜マスタ制御装置本体部の説明＞
マスタ制御装置本体部１０６は、マスタ動作情報取得部１１０と、撮像情報取得部１１１と、マスタ動作情報補正部１１２と、表示情報取得部の一例としての変形情報算出部１１３と、力情報補正部１１４と、力情報提示部１１５とで構成されている。
【００５８】
（マスタ動作情報取得部１１０）
マスタ動作情報取得部１１０は、マスタ入出力ＩＦ１１９からマスタアーム２の位置情報及び姿勢情報と、マスタ入出力ＩＦ１１９に内蔵されたタイマからの時間情報とが入力される。また、マスタ動作情報取得部１１０は、マスタ入出力ＩＦ１１９から取得した位置情報を時間情報で微分することによって、速度情報を取得する。また、マスタ動作情報取得部１１０は、姿勢情報を時間情報で微分することによって、角速度情報を取得する。図５に、マスタ動作情報取得部１１０で取得する時間情報と、位置情報と、姿勢情報と、速度情報と、角速度情報とを示す。これらの位置情報と、姿勢情報と、速度情報と、角速度情報とでマスタアーム２の動作情報（マスタ動作情報）を構成する。
【００５９】
マスタ動作情報取得部１１０は、取得したマスタアーム２の位置情報と、姿勢情報と、速度情報と、角速度情報と、時間情報とをマスタ動作情報補正部１１２及び力情報補正部１１４に出力する。
【００６０】
（撮像装置６）
撮像装置６は、スレーブアーム３が行う作業を撮像し、主に、ハンド４と、微細部品８と、挿入口９との付近を撮像する。撮像装置６は、撮像時の拡大率を変更することができる。また、撮像装置６を設置する位置又は姿勢を変更することができる。撮像装置６を設置する場合は、いかなる位置又は姿勢で設置することも可能であるが、被写体（特にハンド４と、微細部品８と、挿入口９と）が重ならずに写る位置、姿勢、被写体の移動、及び、変形の変化が捉えられる位置及び姿勢が必要である。図６Ａ及び図６Ｂに示す例では、図６Ａの位置及び姿勢の方が、図６Ｂの位置及び姿勢よりも被写体が重ならずに写り、移動する変化も捉えることができる。ディスプレイ７に映し出された映像をそれぞれ図６Ｃ及び図６Ｄに示す。図６Ａの位置及び姿勢の方が、画面上のスレーブアーム３の移動及び微細部品８の変形がよく見えることわかる。
【００６１】
撮像装置６は、撮像装置６で撮像した撮像画像情報と、撮像時の拡大率情報と、撮像時の撮像装置６を設置する位置及び姿勢の情報である撮像装置位置情報とを、撮像情報として撮像情報取得部１１１に出力する。撮像装置位置情報は、図７に示すスレーブアーム２の座標系Σｂｓを用いて表現する。
【００６２】
また、撮像装置６は、図８に示すように作業者１がマスタアーム２を操作する方向（図８中の矢印Ａ）とディスプレイ７の画面上で画面上のスレーブアーム３が動く方向（図８中の矢印Ｂ）とが同じ方向になるように設置する。
【００６３】
なお、ここでは、撮像装置６として２次元撮像を行う撮像装置を主に対象としたが、様々な方向を撮像できるように、３次元撮像装置又は２台の撮像装置を用いる方法なども可能である。
【００６４】
（撮像情報取得部１１１）
撮像情報取得部１１１には、撮像装置６から、撮像画像情報と、拡大率情報と、撮像装置位置情報と、マスタ入出力ＩＦ１１９に内蔵されたタイマより時間情報とが入力される。
【００６５】
図９に、撮像画像情報以外の撮像情報取得部１１１が取得する、拡大率情報と、撮像装置位置情報（撮像装置の姿勢情報を含む）と、時間情報との一例を示す。また、撮像画像情報は、ディスプレイ７に映し出された画像そのもののことを表す。ここで、撮像情報とは、撮像画像情報と、拡大率情報と、撮像装置位置情報とを表す。
【００６６】
なお、撮像情報取得部１１１は、マスタ入出力ＩＦ１１９を介して撮像装置６から撮像画像情報と、拡大率情報と、撮像装置位置情報とを取得することも可能である。
【００６７】
撮像情報取得部１１１は、取得した撮像画像情報と、拡大率情報と、撮像装置位置情報と、時間情報とを変形情報算出部１１３に出力する。
【００６８】
図９では、拡大率が時系列的に変わらない例を示したが、時系列的に拡大率が変わる例も可能である。例えば、微細部品８を把持した状態で広域に移動させる作業の後、コネクタへの組み付け作業を行う場合では、移動させる作業工程においては、広域を移すために、拡大率を低くする。組み付け作業を行う作業工程では、組み付け部分がよく見えるように、拡大率を高くする。このように、拡大率が時系列的に変化することも可能である。その場合の拡大率情報の一例を図１０に示す。
【００６９】
（マスタ動作情報補正部１１２）
マスタ動作情報補正部１１２は、マスタ動作情報取得部１１０よりマスタアーム２の動作情報（マスタ動作情報）と時間情報とが入力される。取得したマスタアーム２の動作情報を基にサンプリング周期毎のマスタアーム２のハンド４の移動量を算出し、算出した移動量にゲインを掛け、補正マスタ動作情報（移動量指令値）としてスレーブ制御部１１８に出力する。
【００７０】
マスタ動作情報補正部１１２によるマスタアーム２のハンド４の移動量の算出方法について説明する。図５で表されるマスタアーム２の動作情報は、図１１の原点Ｏｂを基準としたベース座標系Σｂにおける位置及び姿勢を表している。この動作情報を、ハンド４の原点Ｏｈを基準としたハンド座標系Σｈにおける移動量にマスタ動作情報補正部１１２で変換する。つまり、ベース座標系Σｂにおけるサンプリング周期毎の位置及び姿勢の移動量ｄｂに変換行列ｂＴｈをマスタ動作情報補正部１１２で掛けることによって、ハンド座標系Σｈにおけるサンプリング周期毎の位置及び姿勢の移動量ｄｈをマスタ動作情報補正部１１２で算出する。ここで、移動量ｄとは、時点ｔ０の位置及び姿勢ｐ０から１サンプリング時間経過した時点ｔ１での位置及び姿勢ｐ１との差を表し、ｄ＝Δｐ＝ｐ１−ｐ０である。
【００７１】
次に、マスタ動作情報補正部１１２による移動量指令値の算出方法を説明する。上述したハンド座標系Σｈにおけるサンプリング周期毎の位置及び姿勢の移動量ｄｈの各要素（位置（ｘ，ｙ，ｚ）及び姿勢（ｒｘ，ｒｙ，ｒｚ））に対して、ゲインｋｄ（例えば、０．１）をマスタ動作情報補正部１１２で掛けることによって、補正マスタ動作情報（移動量指令値ｄｍ）をマスタ動作情報補正部１１２で算出する。ゲインｋｄは、スレーブアーム２の移動をマスタアーム２の移動に対して拡大する場合には、１より大きい値にマスタ動作情報補正部１１２で設定し、縮小する場合には、１より小さい値にマスタ動作情報補正部１１２で設定する。ゲインｋｄは、要素毎に定数をマスタ動作情報補正部１１２で設定することができ、マスタ入出力ＩＦ１１９を用いて、作業者１がマスタ動作情報補正部１１２に入力することができる。
【００７２】
図１２に補正マスタ動作情報と、時間情報との一例を示す。
マスタ動作情報補正部１１２は、算出した補正マスタ動作情報と、時間情報とをスレーブ制御部１１８に出力する。
【００７３】
（変形情報算出部１１３）
変形情報算出部１１３は、撮像情報取得部１１１より撮像画像情報と、拡大率情報と、撮像装置位置情報と、時間情報とが入力され、スレーブ動作情報取得部１１６よりスレーブ動作情報と、時間情報とが入力される。取得したスレーブ動作情報と撮像情報とを基に、ディスプレイ７の画面上でのスレーブアーム３の動作情報（画面上スレーブ動作情報と呼ぶ）、又は、ディスプレイ７の画面上での対象物（微細部品８）又は被対象物（挿入口９）が柔軟物であるときの変形情報（画面上柔軟物変形情報と呼ぶ）を以下のように算出する。
【００７４】
(ｉ)画面上スレーブ動作情報のみ算出する場合
変形情報算出部１１３による画面上スレーブ動作情報の算出方法について説明する。画面上スレーブ動作情報とは、ディスプレイ７に映し出された画面上でのスレーブアーム３の動作情報のことを表す。まず、図７に示すスレーブベース座標系Σｂｓで表されるスレーブ動作情報を、図７に示す撮像装置６の座標系Σｃで表されるスレーブ動作情報に変形情報算出部１１３で変換する。スレーブベース座標系Σｂｓで表される撮像装置位置情報を用いて撮像装置の座標系Σｃに変形情報算出部１１３で変換する。次に、撮像装置６の座標系Σｃで表されるスレーブ動作情報に対して、拡大率情報を掛けることによって画面上スレーブ動作情報を変形情報算出部１１３で算出する。また、拡大率情報に関して、撮像装置６を設置した位置からスレーブアーム２を撮像した際に、撮像装置６の座標系Σｃで表されるスレーブアーム２の移動量と画面上でのスレーブアーム２の移動量とが同じ量であるように拡大率を変形情報算出部１１３で調整し、その拡大率を１とするように変形情報算出部１１３でキャリブレーションを行う必要がある。つまり、図１３に示すスレーブアーム３の移動量Ａと画面上のスレーブアーム３の移動量Ｂとが同じ距離になるときの拡大率を１と変形情報算出部１１３で定義する。画面上スレーブ動作情報の一例は、図５で表されるような動作情報である。なお、ここでは、上述したように、実際のスレーブの移動量Ａと画面上のスレーブの移動量Ｂとが同じになるときを拡大率が１であると定義し、これを基準としているが、変形情報算出部１１３において、他の拡大倍率のときを拡大率が１であると定義して、これを基準とすることも可能である。例えば、最も縮小しているときを拡大率が１であると定義することによって、柔軟物が柔らかく、とても変形する場合に大きく力を加えてもらうように誘導することができ、大変有効である。また、最も拡大しているときを拡大率が１であると定義することによって、柔軟物が固く、あまり変形しない場合に大きく力を加えすぎないように防止することができ、有効である。このように、作業又は対象物に応じて、基準を変形情報算出部１１３で変更することができる。
【００７５】
なお、撮像画像情報を基に画像処理を用いて画面上スレーブ動作情報を変形情報算出部１１３で算出する方法も可能である。具体的には、画面上のスレーブアーム３のハンド４の先端を検出し、その先端の動作情報を画面上スレーブ動作情報として変形情報算出部１１３で算出する。
【００７６】
(ｉｉ)画面上柔軟物変形情報のみ算出する場合
変形情報算出部１１３による画面上柔軟物変形情報の算出方法について説明する。画面上柔軟物変形情報とは、ディスプレイ７に映し出された画面上での柔軟物の変形情報のことを表す。
【００７７】
微細部品８の挿入作業について、図１４Ａ、図１４Ｂ、及び図１４Ｃを用いて説明する。図１４Ａ〜図１４Ｃは、ディスプレイ７の画面上で挿入方向に、ハンド４で把持した微細部品８が進み、微細部品８をコネクタ９に挿入している状態を示す。ただし、微細部品８の変形がわかりやすいように、ディスプレイ７に映し出される表示画像について、図１と比較して、挿入方向を約９０度回転させて表示している。図１４Ａは、微細部品８とコネクタ９とが接触していない状態を示す。図１４Ｂは、微細部品８とコネクタ９とが接触した時点である。図１４Ｃは、コネクタ９に微細部品８を挿入し、微細部品８が曲がっている時点である。画像処理を用いて微細部品８の端点Ａ及び端点Ｂを変形情報算出部１１３で検出する。一例として、微細部品８の端点Ａはハンド４から最も遠い先端（コネクタ９に最初に挿入される先端）とし、端点Ｂはハンド４に最も近い基端とする。検出した端点Ａ及び端点Ｂとの挿入方向での距離を変形情報算出部１１３で検出する。図１４Ｃでは、端点Ａと端点Ｂとの破線で示される直線の距離（端点Ａと端点Ｂとの最短距離）Ｌ１を変形情報算出部１１３で検出する。検出した距離Ｌ１を用いて、微細部品８が曲がっていない時点の距離Ｌ１０からの変化分（Ｌ１０−Ｌ１）を画面上柔軟物変形情報として変形情報算出部１１３で検出する。微細部品８が曲がっていない時点における端点Ａ及び端点Ｂとの挿入方向での距離Ｌ１０を、図１４Ａ又は図１４Ｂの時点で変形情報算出部１１３でキャリブレーションする必要がある。具体的には、図１４Ａ又は図１４Ｂの時点における端点Ａと端点Ｂとの最短距離Ｌ１を初期距離Ｌ１０として変形情報算出部１１３の内部記憶部（図示せず）に記憶する。
【００７８】
また、微細部品８の挿入作業以外でも、剛体の医療器具を柔軟物の臓器に挿入する作業のような、対象物が剛体であり被対象物が柔軟物である場合においても、変形情報算出部１１３で画面上柔軟物変形情報を算出することが可能である。図１５Ａ、図１５Ｂ、及び図１５Ｃを用いて説明する。図１５Ａ〜図１５Ｃは、ディスプレイ７の画面上で挿入方向に、ハンド４で把持した剛体対象物１２が進み、剛体対象物１２を柔軟被対象物１３に挿入している状態である。ただし、柔軟被対象物１３の変形がわかりやすいように、ディスプレイ７に映し出される表示画像について、図１と比較して、挿入方向を約９０度回転させて表示している。図１５Ａは、剛体対象物１２と柔軟被対象物１３とが接触していない状態を示す。図１５Ｂは、剛体対象物１２と柔軟被対象物１３とが接触した時点である。図１５Ｃは、柔軟被対象物１３に剛体対象物１２を挿入し、柔軟被対象物１３が曲がっている時点である。画面上において画像処理を用いて、剛体対象物１２が柔軟被対象物１３に接している面の縁Ａｅを変形情報算出部１１３で検出する。検出した縁Ａｅの挿入方向に対する変形した距離（長さ）Ｌ２を変形情報算出部１１３で計測する。
【００７９】
このとき、計測する距離としては、縁Ａｅにおいて剛体対象物１２が接している部分の変形している距離Ｌ２を変形情報算出部１１３で計測する。検出した距離Ｌ２を用いて、柔軟被対象物１３が曲がっていない時点の距離Ｌ２０からの変化分（Ｌ２０−Ｌ２）を画面上柔軟物変形情報として変形情報算出部１１３で検出する。柔軟被対象物１３が曲がっていない時点における縁Ａｅの挿入方向での位置を、図１５Ａ又は図１５Ｂの時点で変形情報算出部１１３でキャリブレーションする必要がある。具体的には、図１５Ａ又は図１５Ｂの時点における距離Ｌ２を初期距離Ｌ２０として変形情報算出部１１３内の内部記憶部に記憶する。なお、計測する距離Ｌ２の算出方法として、縁Ａｅの最も変形している部分の距離又は変形している部分の距離の平均値などを変形情報算出部１１３で計測することも可能である。具体的に、図１６Ａ及び図１６Ｂを用いて説明する。最も変形している部分とは、図１６Ａに示す破線Ｂｆから縁Ａｆまでの距離Ｌｆが最も長い部分のことを示し、ここでは、図示している距離Ｌｆを変形量とする。変形している部分の距離Ｌｆの平均値とは、図１６Ｂの縁Ａｆにおいて、一定間隔毎に破線Ｂｆからの距離を変形情報算出部１１３で求め、それらの平均値を変形情報算出部１１３で変形量とする。
【００８０】
また、画面上柔軟物変形情報の一例としては、図５で表されるような動作情報である。
【００８１】
また、図１４Ｃの距離Ｌ１と図１５Ｃの距離Ｌ２との両方が存在した場合には、様々な方法を用いることができる。第一に、距離Ｌ１と距離Ｌ２との和を変形情報算出部１１３で求めて変形量とする。この方法を用いることによって、変形情報算出部１１３で変形量が大きく算出されるので、作業者１が距離Ｌ１と距離Ｌ２との変形を見ながら作業を行っている場合に有効である。第二に、距離Ｌ１と距離Ｌ２とを変形情報算出部１１３で比較し、大きいほうの値を変形量として変形情報算出部１１３で用いる。この方法を用いることによって、作業者１が変形量の大きい方を見ながら作業を行っている場合に有効である。また、これらの方法に加えて、変形量を変形情報算出部１１３で算出する際に、閾値（例えば、１ｍｍ）を変形情報算出部１１３で設定し、その閾値を超えていないと変形情報算出部１１３で判断する場合は、変形情報算出部１１３で変形量を０とするなどして、変形量を算出する際の計測誤差又は推定誤差を省くことも可能である。
【００８２】
また、画面上柔軟物変形情報に関して、変形度合を変形情報算出部１１３で求めてから画面上柔軟物変形情報を変形情報算出部１１３で算出することも可能である。図１５Ｃに示す例について、図１７を用いて説明する。
【００８３】
まず、図１７において、変形前の柔軟被対象物１３の面積に対する斜線で示す変形した部分の面積Ａの割合を、変形度合として変形情報算出部１１３で算出する。
【００８４】
次に、変形前の柔軟被対象物１３の長さＬ１３を、算出した変形度合に変形情報算出部１１３で掛け、求められた値を画面上柔軟物変形情報として変形情報算出部１１３で算出する。このように変形度合を変形情報算出部１１３で算出することによって、変形部分の長さが正確に計測することができない場合においても、画面上柔軟物変形情報を変形情報算出部１１３で算出することができる。
【００８５】
また、画面上スレーブ動作情報と画面上柔軟物変形情報との使い分けについて説明する。画面上柔軟物変形情報を算出する際は、画像処理が必要となる。そのため、マスタアーム２の制御装置１０４において画像処理を行うことができないと変形情報算出部１１３で判断する場合は、画面上スレーブ動作情報を変形情報算出部１１３で使用することによって、複雑な処理を用いることなく、画面上柔軟物変形情報の代わりに画面上スレーブ動作情報を使用することができる。
また、上述した選択指針の他に、変形量を変形情報算出部１１３で算出する際に、閾値（例えば、１ｍｍ）を変形情報算出部１１３で設定し、その閾値を超えていないと変形情報算出部１１３で判断する場合は、画面上スレーブ動作情報を変形情報算出部１１３で使用することも可能である。このように変形情報算出部１１３で選択することによって、変形量が計測しにくいところは画面上スレーブ動作情報を変形情報算出部１１３で使用することができる。また、この閾値を変形情報算出部１１３で設定し、変形情報算出部１１３で自動的に選択することも可能である。
【００８６】
（ｉｉｉ）画面上スレーブ動作情報、画面上柔軟物変形情報の両方算出する場合
変形情報算出部１１３により画面上スレーブ動作情報及び画面上柔軟物変形情報の算出する方法は、上述した方法と同様である。画面上スレーブ動作情報をｘｓとし、画面上柔軟物変形情報をｘｆとし、求める変形情報をｘとすると、画面上スレーブ動作情報と画面上柔軟物変形情報との加重平均として、ｘ＝ａｘｓ＋ｂｘｆを変形情報算出部１１３で算出して変形情報を生成する。ここで、ａ、ｂは重みゲインであり、ａ＋ｂ＝１となるように変形情報算出部１１３で設定する。重みゲインａの値を大きくすると画面上スレーブ動作情報の占める割合が大きくなり、重みゲインｂの値を大きくすると画面上柔軟物変形情報の占める割合が大きくなる。重みゲインａ、ｂの値は、作業者１がマスタ入出力ＩＦ１１９を用いて変形情報算出部１１３に入力する。
【００８７】
また、算出した変形情報の一例としては、図５で表されるような動作情報である。
【００８８】
また、変形情報として使用する情報を、画面上スレーブ動作情報又は画面上柔軟物変形情報の少なくとも１つ以上の情報を変形情報算出部１１３で選択する場合は、作業者１がマスタ入出力ＩＦ１１９を用いて変形情報算出部１１３に入力する。
【００８９】
変形情報算出部１１３は、算出した画面上スレーブ動作情報又は画面上柔軟物変形情報の少なくとも１つ以上の情報と時間情報とを力情報補正部１１４に出力する。
【００９０】
なお、変形情報算出部１１３から出力された撮像画像情報が表示部１２６に入力される。表示部１２６では、入力された撮像画像情報をディスプレイ７に表示する。
【００９１】
（力情報補正部１１４）
力情報補正部１１４は、マスタ動作情報取得部１１０よりマスタ動作情報と時間情報とが入力され、変形情報算出部１１３より画面上スレーブ動作情報又は画面上柔軟物変形情報のどちらか１つ以上の情報と時間情報とが入力され、力情報取得部１１７より力情報と時間情報とが入力される。力情報補正部１１４は、取得したマスタ動作情報と画面上スレーブ動作情報又は画面上柔軟物変形情報のどちらか１つ以上の情報とを基に力情報を補正する。
【００９２】
力情報の補正方法について説明する。まず、力情報補正部１１４で取得したマスタ動作情報から、サンプル周期毎の位置及び姿勢の移動量ｄｂを力情報補正部１１４で求める。同様に、力情報補正部１１４で取得した変形情報（画面上スレーブ動作情報及び画面上柔軟物変形情報のうちのどちらか１つ以上の情報）から、柔軟物の変形量ｄｄを力情報補正部１１４で求める。例えば、図１４Ｃの場合では、スレーブロボット１０３が把持する柔軟物８の長さが３ｃｍのとき、スレーブアーム３を１ｃｍ移動させた結果、柔軟物８の長さが２ｃｍに縮んだとすると、変形量（移動量）ｄｄは１ｃｍである。また、例えば、図１５Ｃの場合では、柔軟被対象物１３が変形している範囲の長さ及び面積が、変形量ｄｄ（移動量ｄｄ）に相当する。求めた移動量ｄｂと変形量ｄｄとの比を力情報補正部１１４で求めて、求めた値にゲインを力情報補正部１１４で掛け、さらに、求めた値に、取得した力情報を力情報補正部１１４で掛けることによって、力情報を力情報補正部１１４で補正する。移動量と変形量との比の求め方としては、力情報補正部１１４でｄｂ／ｄｄを求める。すなわち、力情報補正部１１４は、マスタ動作情報よりマスタアーム２の移動量ｄｂを算出する。次いで、力情報補正部１１４は、変形情報算出部１１３より算出された柔軟物の変形量ｄｄを取得し、前記移動量ｄｂを前記変形量ｄｄにより除算する。次いで、力情報補正部１１４は、除算した結果（ｄｂ／ｄｄ）に補正係数及び力情報を乗算することにより、補正力情報を生成する。
【００９３】
図１のように微細部品８の導入作業を行う場合において、一例として、撮像装置６の拡大率を変えながら作業を行う。例えば、挿入位置まで微細部品８を移動させる工程では、周りの治具などとの干渉をチェックしながら、おおまかに作業を行うので、画像を縮小して作業を行う。また、挿入作業を行う工程では、微細部品８又はコネクタ９の状態を詳細に確認しながら作業を行うので画像を拡大して作業を行う。ここでは、拡大する場合と縮小する場合それぞれ図を用いて説明する。
【００９４】
（Ｉ）画像を拡大して作業を行う場合
画像を拡大して作業を行う場合について、図１８を用いて説明する。図１８は、撮像装置６で拡大して撮像した画像をディスプレイ７に映しており、作業者１は、その画像を見ながらマスタアーム２を操作して作業を行う。このように作業をしているときに問題となるのが、作業者１は、拡大されたハンド７又は微細部品８を見ながら作業を行っているので、作業者１には微細部品８の変形量が大きく見えてしまう。すると、作業者１は、挿入するのに必要な力をマスタアーム２に加えることができず、微細部品８をしっかり挿入できないことがある。このような問題に対して、求めた比（ｄｂ／ｄｄ）を力情報に掛けて力情報補正部１１４で補正し、補正された情報に基づき作業者１に力を提示することによって、力センサ５で取得した力情報（図１８中のＦ０）より小さい力（図１８中のＦ１）をマスタアーム２及びディスプレイ７を介して作業者１に提示することとなる。そのため、作業者１は、接触度合が小さいと判断し、より大きな力で微細部品８をコネクタ９に接触させようとするため、挿入に必要な力をマスタアーム２に加えることができる。この例のように、作業を行うときに適切な力を印加することが必要な作業の場合において、比をｄｂ／ｄｄにより求めることによって、変形情報に応じた適切な力を印加することができる。
【００９５】
（ＩＩ）画像を縮小して作業を行う場合
画像を縮小して場合について、図１９を用いて説明する。図１９は、撮像装置６で縮小して撮像した画像をディスプレイ７に映しており、作業者１はその画像を見ながらマスタアーム２を操作して作業を行う。このように作業をしているときに問題となるのが、作業者１は、縮小されたハンド７又は微細部品８を見ながら作業を行っているので、作業者１には微細部品８の変形量があまり見えず、作業に必要な力以上を印加してしまい、微細部品８又はコネクタ９に過負荷をかけてしまうことがある。このような問題に対して、求めた比（ｄｂ／ｄｄ）を力情報に掛けて力情報補正部１１４で補正し、マスタアーム２及びディスプレイ７を介して作業者１に力を提示することによって、力センサ５で取得した力情報（図１９中のＦ０）より大きい力（図１８中のＦ２）を提示することとなる。そのため、作業者１は、接触度合が大きいと判断し、より小さな力で微細部品８をコネクタ９に接触させようとするため、過負荷の生じない力をマスタアーム２に加えることができる。この例のように、作業を行うときに過負荷を加えてはいけない作業の場合において、比をｄｂ／ｄｄにより求めることによって、変形情報に応じた適切な力を印加することができる。
【００９６】
上述したように求めた比（ｄｂ／ｄｄ）に対して、ゲインαを力情報補正部１１４で掛けて、求められた値を、取得した力情報に力情報補正部１１４で掛けることによって、補正力情報を力情報補正部１１４で生成する。ここで、比の求め方の選択又はゲインαは、作業者１がマスタ入出力ＩＦ１１９を用いて力情報補正部１１４に入力することができる。
【００９７】
力情報補正部１１４は、生成した補正力情報と時間情報とを力情報提示部１１５に出力する。
【００９８】
なお、力補正のタイミングについて、作業開始時から作業終了時まで力補正を力情報補正部１１４で行う。また、求めた比（ｄｂ／ｄｄ）を用いて、力補正をするかしないかを力情報補正部１１４で判断することも可能である。一例として、求めた比（ｄｂ／ｄｄ）が、ある範囲（０．８〜１．２）を超えたと力情報補正部１１４で判断したときに力情報補正部１１４で補正を行い、前記範囲内であると力情報補正部１１４で判断したときは力情報補正部１１４で補正を行わないとすることもできる。このように、範囲を設けて力補正するかしないかを力情報補正部１１４で判断することによって、測定誤差又は推定誤差などの影響を省くことができ、力の補正が必要な作業時に力情報補正部１１４で補正をかけることができる。
【００９９】
また、力補正の他の作業への適用例として、図２０、及び図２１を用いて拡大する場合と縮小する場合を説明する。
【０１００】
（ＩＩＩ）画像を拡大して作業を行う場合
画像を拡大して作業を行う場合について、図２０を用いて説明する。図２０は、スレーブアーム３が柔軟対象物１４をハンド４で把持して運ぶ作業を行っている。そのとき、撮像装置６で拡大して撮像した画像をディスプレイ７に映しており、作業者１はその画像を見ながらマスタアーム２を操作し作業を行う。このように作業をしているときに問題となるのが、作業者１は、拡大されたハンド４又は柔軟対象物１４を見ながら作業を行っているので、柔軟対象物１４の変形量が作業者１には大きく見え、把持するのに必要な把持力を作業者１がマスタアーム２に加えることができず、柔軟対象物１４をハンド４でしっかり把持できないことがある。このような問題に対して、求めた比（ｄｂ／ｄｄ）を力情報に掛けて力情報補正部１１４で補正し、マスタアーム２及びディスプレイ７を介して作業者１に力を提示することによって、力センサ５で取得した力情報より小さい力を提示することとなる。そのため、作業者１は、接触度合が小さいと判断し、より大きな力で微細部品８をコネクタ９に接触させようとするため、把持に必要な力をマスタアーム２に加えることができる。この例のように、作業を行うときに適切な力を印加することが必要な作業の場合において、比をｄｂ／ｄｄにより求めることによって、変形情報に応じた適切な力を印加することができる。
【０１０１】
（ＩＶ）画像を縮小して作業を行う場合
画像を縮小して場合について、図２１を用いて説明する。図２１は、スレーブアーム３のハンド４で柔軟対象物１４を剛体被対象物１５に対して貼り付ける作業を行っている。そのとき、撮像装置６で縮小して撮像した画像をディスプレイ７に映しており、作業者１はその画像を見ながらマスタアーム２を操作し作業を行う。このように作業をしているときに問題となるのが、作業者１は、縮小されたハンド４又は柔軟対象物１４を見ながら作業を行っているので、作業者１には柔軟対象物１４の変形量があまり見えず、貼り付ける作業に必要な力以上を印加してしまい、柔軟対象物１４又は剛体被対象物１５に過負荷をかけてしまうことがある。このような問題に対して、求めた比（ｄｂ／ｄｄ）を力情報に掛けて力情報補正部１１４で補正し、マスタアーム２及びディスプレイ７を介して作業者１に力を提示することによって、力センサ５で取得した力情報より大きい力を提示することとなる。そのため、作業者１は、接触度合が大きいと判断し、より小さな力で柔軟対象物１４を剛体被対象物１５に接触させようとするため、過負荷の生じない力をマスタアーム２に加えることができる。この例のように、作業を行うときに過負荷を加えてはいけない作業の場合において、比をｄｂ／ｄｄにより求めることによって、変形情報に応じた適切な力を印加することができる。
【０１０２】
なお、前記説明では、力情報補正部１１４により力情報の大きさを補正したが、力情報の更新周期を力情報補正部１１４で補正する方法も可能である。上述した説明では、一定周期（例えば、１ｍｓｅｃ）で力情報を更新している。それに対して、力情報補正部１１４で更新周期を速くしたり又は遅くしたり変更することもできる。具体的には、力情報の大きさを大きくしたい場合には、力情報の大きさを変えずに、力情報補正部１１４で力情報の更新周期を遅くする。より具体的には、力情報の大きさを２倍にしたい場合には、例えば更新周期を２倍にする。一方、力情報の大きさを小さくしたい場合には、力情報の大きさを変えずに、力情報補正部１１４で力情報の更新周期を速くする。より具体的には、力情報の大きさを１／２倍にしたい場合には、例えば更新周期を１／２倍にする。
【０１０３】
力情報の更新周期を変更することが、力情報の大きさを変更することと同じ効果が得られる理由について、図２２のグラフを用いて説明する。図２２は、横軸が時間情報を表し、縦軸が力情報を表し、力情報の時系列データを表す。横軸の数字は時間情報を表す。力情報における黒丸は更新周期が１ｍｓｅｃのデータを表し、白丸は更新周期が２ｍｓｅｃのデータを表す。力情報をＦｋと表すと、更新周期が１ｍｓｅｃの場合はｋ＝１，２，３，・・・であり、更新周期が２ｍｓｅｃの場合はｋ＝２，４，６，・・・である。力情報の更新周期毎の変位をΔＦｋと表す。例えば、時間情報が２のときの力情報の更新周期毎の変位ΔＦ２について、更新周期が１ｍｓｅｃのときはΔＦ２＝Ｆ２−Ｆ１として力情報補正部１１４で算出し、更新周期が２ｍｓｅｃのときはΔＦ２＝Ｆ２−Ｆ０として力情報補正部１１４で算出する。よって、更新周期が１ｍｓｅｃのΔＦ２と比較して、更新周期が２ｍｓｅｃのΔＦ２は力情報の変位が大きくなる。この例のように、更新周期を遅くすると力情報の変位が大きくなるので、作業者１は力情報が大きくなったように感じる。これは、作業者１が力覚を感じるときに力の変位を感じることに起因する。
【０１０４】
このように力情報を補正する際に、力情報の大きさを補正するのではなく、力情報の更新周期を力情報補正部１１４で補正することも可能である。補正する際に力情報の大きさは変化させないので、力情報を大きく変化させすぎてしまうことがない。また、力情報の大きさを補正することができないシステムの場合においても、力情報の大きさを補正することと同様の効果を得ることができる。
力情報を補正する大きさに関して、拡大率が１で力情報を補正せずそのまま補正力情報とする場合を基準に、大きくする、小さくする、と表現する。
また、その基準値について、作業を行う前にキャリブレーションを行って設定することができる。つまり、作業を行う前に作業者１がマスタアーム２を操作し、基準値を設定することができる。操作中に力情報を補正し、適切に操作できる補正量のときの補正力情報を基準値として設定する。基準値は、作業者１がマスタ入出力ＩＦ１１９を用いて、入力することができる。このようにキャリブレーションを行うことによって、個人差又はマスタアームの差などを吸収することができる。
また、補正力情報を生成する際の補正量について、上限値又は下限値の閾値を設定することができる。閾値は、作業者１がマスタ入出力ＩＦ１１９を用いて、入力することができる。このように閾値を設定することによって、補正力情報を小さく補正しすぎて作業者１が力を感じられなくなること、又は、補正力情報を大きく補正しすぎて作業者１が大きな力に耐えられなくなることを防ぐことができる。
補正方法についても、線形に補正するだけでなく、多項式、双曲線、又は、対数など様々な補正方法を選択することができる。補正方法は、作業者１がマスタ入出力ＩＦ１１９を用いて、選択することができる。このように補正方法を選択することによって、作業者１の力の知覚が線形に変化しない場合においても対応することができる。
また、補正量を対象物の硬さ、又は、柔らかさで変更することができる。対象物の硬さを対象物の材料などから検出し、硬さに応じて補正量を調整する。例えば、柔らかくなるほど補正量を大きくする。このように補正量を調整することによって、対象物の硬さ、又は、柔らかさによらず、均一の作業を行うことができる。
【０１０５】
（力情報提示部１１５）
力情報提示部１１５は、力情報補正部１１４より補正力情報と時間情報とが入力される。力情報提示部１１５では、取得した補正力情報を、マスタアーム２を介して作業者１に提示するために、補正力情報をマスタアーム２が出力できるように指令値を生成する。
【０１０６】
指令値の生成方法について説明する。マスタアーム２として力制御可能なアームを使用する場合は、補正力情報をそのまま指令値として力情報提示部１１５で用いる。マスタアーム２として力制御ができず、位置制御が可能なアームを使用する場合は、フックの法則を用いて補正力情報を位置情報に力情報提示部１１５で変換し、変換した位置情報を力情報提示部１１５で指令値とする。
【０１０７】
力情報提示部１１５は、生成したマスタアーム２への指令値を、サンプリング周期毎に、マスタ入出力ＩＦ１１９及びマスタモータドライバ１２０を介してマスタアーム２に出力する。
【０１０８】
＜スレーブ制御装置本体部の説明＞
スレーブ制御装置本体部１０７は、スレーブ動作情報取得部１１６と、力情報取得部１１７と、スレーブ制御部１１８とで構成されている。
【０１０９】
（スレーブ動作情報取得部１１６）
スレーブ動作情報取得部１１６は、スレーブ入出力ＩＦ１２１からスレーブアーム３の位置情報及び姿勢情報と、スレーブ入出力ＩＦ１２１に内蔵されたタイマからの時間情報とが入力される。また、スレーブ動作情報取得部１１６は、スレーブ入出力ＩＦ１２１から取得した位置情報を時間情報で微分することによって、速度情報を取得する。また、スレーブ動作情報取得部１１６は、姿勢情報を時間情報で微分することによって、角速度情報を取得する。スレーブ動作情報取得部１１６で取得する時間情報と、位置情報と、姿勢情報と、速度情報と、角速度情報とは、図５と同様の形式である。
【０１１０】
スレーブ動作情報取得部１１６は、取得したスレーブアーム３の位置情報と、姿勢情報と、速度情報と、角速度情報と、時間情報とを変形情報算出部１１３に出力する。これらの位置情報と、姿勢情報と、速度情報と、角速度情報とでスレーブアーム３の動作情報（スレーブ動作情報）を構成する。
【０１１１】
（力センサ５）
力センサ５は、図１に示すように、スレーブアーム３のハンド４の手首部に設置され、対象物が被対象物に接触した際に生じる反力を測定する。ここでは、力３軸トルク３軸の計６軸計測することができる力センサを使用する。なお、１軸以上計測可能な力センサなら任意の力センサを使用することができる。また、力センサ５は、例えば、ひずみゲージ式の力覚センサを用いることによって実現する。
【０１１２】
力センサ５で計測した力情報は、力情報取得部１１７に出力する。
【０１１３】
（力情報取得部１１７）
力情報取得部１１７は、力センサ５から力情報と、スレーブ入出力ＩＦ１２１に内蔵されたタイマからの時間情報とが入力される。図２３に、力情報と、時間情報とを示す。
なお、力情報取得部１１７は、スレーブ入出力ＩＦ１２１を介して力センサ５から力情報を取得することも可能である。
【０１１４】
力情報取得部１１７は、取得した力情報と、時間情報とを力情報補正部１１４に出力する。
【０１１５】
（スレーブ制御部１１８）
スレーブ制御部１１８は、マスタ動作情報補正部１１２から、補正マスタ動作情報と、時間情報とが入力される。スレーブ制御部１１８は、取得した補正マスタ動作情報に従い、スレーブアーム３が移動できるように、指令値を生成する。
【０１１６】
ここで、スレーブ制御部１１８による指令値の生成方法について説明する。スレーブ制御部１１８で取得した補正マスタ動作情報がハンド４の移動量に関する情報であるので、まず、スレーブアーム３のハンド４の座標系において、取得した移動量分移動する位置及び姿勢をスレーブ制御部１１８で算出する。スレーブ制御部１１８で算出したハンド４座標系における位置及び姿勢について、スレーブアーム３のベース座標系における位置及び姿勢にスレーブ制御部１１８で変換する。次いで、変換したスレーブアーム３のベース座標系における位置及び姿勢に移動するような指令値をスレーブ制御部１１８で生成する。
【０１１７】
スレーブ制御部１１８は、生成したスレーブアーム３への指令値を、サンプリング周期毎に、スレーブ入出力ＩＦ１２１及びスレーブモータドライバ１２２を介して、スレーブアーム３に出力する。
【０１１８】
＜マスタ周辺装置の説明＞
マスタ周辺装置１０８は、マスタ入出力ＩＦ１１９と、マスタモータドライバ１２０とで構成されている。
【０１１９】
（マスタ入出力ＩＦ１１９）
マスタ入出力ＩＦ１１９は、力情報提示部１１５から入力された指令値をマスタモータドライバ１２０に出力する。また、マスタ入出力ＩＦ１１９は、マスタアーム２の各関節軸のエンコーダから入力された値から、マスタアーム２の位置情報及び姿勢情報をエンコーダ内部の演算部（図示せず）で求め、位置情報及び姿勢情報とマスタ入出力ＩＦ１１９に内蔵されたタイマからの時間情報とを、マスタ入出力ＩＦ１１９からマスタ動作情報取得部１１０に出力する。マスタ入出力ＩＦ１１９に内蔵されたタイマからの時間情報を、撮像情報取得部１１１に出力する。また、マスタ入出力ＩＦ１１９は、図２４に示すように、入力部１１９Ａと出力部１１９Ｂとによって構成される。入力部１１９Ａは、入力ＩＦとなっており、キーボード又はマウス又はタッチパネル又は音声入力などにより作業者１が項目を選択する場合、又は、キーボード又はマウス又はタッチパネル又は音声入力などにより作業者１が数字を入力する場合などに用いられる。出力部１１９Ｂは、出力ＩＦとなっており、取得した情報などを外部に出力する場合又はディスプレイ７などに表示する場合などに用いられる。
【０１２０】
（マスタモータドライバ１２０）
マスタモータドライバ１２０は、マスタ入出力ＩＦ１１９から取得した指令値を基に、マスタアーム２を制御するために、マスタアーム２の各関節軸のモータへの指令値をマスタアーム２に出力する。
【０１２１】
＜スレーブ周辺装置の説明＞
スレーブ周辺装置１０９は、スレーブ入出力ＩＦ１２１と、スレーブモータドライバ１２２とで構成されている。
【０１２２】
（スレーブ入出力ＩＦ１２１）
スレーブ入出力ＩＦ１２１は、スレーブ制御部１１８から入力された指令値をスレーブモータドライバ１２２に出力する。また、スレーブ入出力ＩＦ１２１は、スレーブアーム３の各関節軸のエンコーダから入力された値から、スレーブアーム３の位置情報及び姿勢情報をエンコーダ内部の演算部（図示せず）で求め、位置情報及び姿勢情報とスレーブ入出力ＩＦ１２１に内蔵されたタイマからの時間情報とを、スレーブ入出力ＩＦ１２１からスレーブ動作情報取得部１１６に出力する。スレーブ入出力ＩＦ１２１に内蔵されたタイマからの時間情報を、力情報取得部１１７に出力する。また、スレーブ入出力ＩＦ１２１は、マスタ入出力ＩＦ１１９と同様に、図２４に示す構成の入力部１２１Ａと出力部１２１Ｂとによって構成される。入力部１２１Ａは、入力ＩＦとなっており、キーボード又はマウス又はタッチパネル又は音声入力などにより作業者１が項目を選択する場合、又は、キーボード又はマウス又はタッチパネル又は音声入力などにより作業者１が数字を入力する場合などに用いられる。出力部１２１Ｂは、出力ＩＦとなっており、取得した情報などを外部に出力する場合又はディスプレイ７などに表示する場合などに用いられる。
【０１２３】
（スレーブモータドライバ１２２）
スレーブモータドライバ１２２は、スレーブ入出力ＩＦ１２１から取得した指令値を基に、スレーブアーム３を制御するために、スレーブアーム３の各関節軸のモータへの指令値をスレーブアーム３に出力する。
【０１２４】
＜マスタアーム２の説明＞
マスタアーム２において、マスタ入出力ＩＦ１１９に内蔵されたタイマを利用して、ある一定時間毎（例えば、１ｍｓｅｃ毎）に、マスタアーム２の動作情報をマスタアーム２の各エンコーダを用いてエンコーダ内部の演算部で求めて、マスタ入出力ＩＦ１１９に出力する。また、マスタアーム２は、マスタモータドライバ１２０からの指令値に従って制御される。
【０１２５】
マスタアーム２は、各関節にモータとエンコーダとが配置されてあり、所望の位置及び姿勢に制御することができる。ここでは、６関節を有する６自由度の多リンクマニピュレータとする。なお、マスタアーム２の関節数及び自由度は、第１実施形態の数に限られるわけではなく、１以上のいかなる数でも可能である。
【０１２６】
＜スレーブアームの説明＞
スレーブアーム３において、スレーブ入出力ＩＦ１２１に内蔵されたタイマを利用して、ある一定時間毎（例えば、１ｍｓｅｃ毎）に、スレーブアーム３の動作情報をスレーブアーム３の各エンコーダを用いてエンコーダ内部の演算部で求めてスレーブ入出力ＩＦ１２１に出力する。また、スレーブアーム３は、スレーブモータドライバ１２２からの指令値に従って制御される。
【０１２７】
スレーブアーム３は、各関節にモータとエンコーダとがあり、所望の位置及び姿勢に制御することができる。ここでは、スレーブアーム３は、６関節を有する６自由度の多リンクマニピュレータとする。なお、スレーブアーム３の関節数及び自由度は、第１実施形態の数に限られるわけではなく、１以上のいかなる数でも可能である。
【０１２８】
＜フローチャート＞
第１実施形態のマスタスレーブロボット１００の操作手順を図２５及び図２６のフローチャートを用いて説明する。
【０１２９】
図２５は、第１実施形態のマスタスレーブロボット１００の操作の一例を示す。
【０１３０】
まず、ステップＳ２０１では、作業者１がディスプレイ７に映し出された画像を見ながら、マスタアーム２を把持し、操作し、ステップＳ２０２に進む。
【０１３１】
次に、ステップＳ２０２では、マスタ動作情報補正部１１２において、取得したマスタ動作情報を補正し、スレーブアーム３が移動するための補正マスタ動作情報を生成し、ステップＳ２０３に進む。
【０１３２】
次に、ステップＳ２０３では、取得した補正マスタ動作情報に従いスレーブアーム３が移動して作業を行い、ステップＳ２０４に進む。
【０１３３】
次に、ステップＳ２０４では、スレーブアーム３の手先に取り付けられた力センサ４で作業時に生じる力情報を検出し、検出した力情報を力情報取得部１１７で取得し、ステップＳ２０５に進む。
【０１３４】
次に、ステップＳ２０５では、マスタ動作情報と画面上スレーブ動作情報及び画面上柔軟物変形情報の少なくとも１つ以上の情報とに基づいて、力情報取得部１１７で取得した力情報を力情報補正部１１４で補正して補正力情報を生成し、ステップＳ２０６に進む。
【０１３５】
次に、ステップＳ２０６では、力情報補正部１１４で生成した補正力情報に従いマスタアーム２が力提示を行い、作業者１に力が提示される。これで、一連の操作を終了する。
【０１３６】
図２６では、図２５で表されるフローチャートのステップＳ２０４の力情報取得と、ステップＳ２０５の補正力情報生成と、ステップＳ２０６の力提示とについて、詳しく説明する。
【０１３７】
まず、ステップＳ３０１では、スレーブ動作情報取得部１１６においてスレーブ動作情報を取得し、撮像情報取得部１１１において撮像情報を取得し、ステップＳ３０２に進む。
【０１３８】
次に、ステップＳ３０２では、変形情報算出部１１３において、画面上スレーブ動作情報を算出するかしないかを選択する。画面上スレーブ動作情報を算出すると変形情報算出部１１３で選択する場合はステップＳ３０３に進み、画面上スレーブ動作情報を算出しないと変形情報算出部１１３で選択する場合はステップＳ３０６に進む。ステップＳ３０２での判断（選択）基準の一例としては、マスタアーム２の制御装置１０４において、画像処理を行うことができると変形情報算出部１１３で判断する場合はステップＳ３０６に進み、画像処理を行うことができないと変形情報算出部１１３で判断する場合はステップＳ３０３に進む。
また、他の判断基準の例としては、画面上での変形量が小さい（変形量が閾値より小さい）と変形情報算出部１１３で判断する場合はステップＳ３０３に進み、画面上での変形量が大きい（変形量が閾値より大きい）と変形情報算出部１１３で判断する場合はステップＳ３０６に進む。
【０１３９】
次に、ステップＳ３０３では、変形情報算出部１１３において、スレーブ動作情報と撮像情報とを用いて、画面上でのスレーブアーム３の動作情報である画面上スレーブ動作情報を生成し、ステップＳ３０４に進む。
【０１４０】
次に、ステップＳ３０４では、変形情報算出部１１３において、画面上柔軟物変形情報を算出するかしないかを選択する。画面上柔軟物変形情報を算出すると変形情報算出部１１３で選択する場合はステップＳ３０５に進み、画面上柔軟物変形情報を算出しないと変形情報算出部１１３で選択する場合はステップＳ３０８に進む。
【０１４１】
次に、ステップＳ３０５では、変形情報算出部１１３において、撮像情報を用いて、画像処理を行い、画面上での柔軟物の変形情報である画面上柔軟物変形情報を生成し、ステップＳ３１５に進む。
【０１４２】
次に、ステップＳ３１５では、変形情報算出部１１３において、画面上スレーブ動作情報と画面上柔軟物変形情報との加重平均を算出し、算出した加重平均を変形情報として生成し、ステップＳ３０８に進む。
【０１４３】
次に、ステップＳ３０６では、変形情報算出部１１３において、画面上柔軟物変形情報を算出するかしないかを選択する。画面上柔軟物変形情報を算出すると変形情報算出部１１３で選択する場合はステップＳ３０７に進み、画面上柔軟物変形情報を算出しないと変形情報算出部１１３で選択する場合はステップＳ３０２に戻る。
【０１４４】
次に、ステップＳ３０７では、変形情報算出部１１３において、撮像情報を用いて、画像処理を行い、画面上での柔軟物の変形情報である画面上柔軟物変形情報を生成し、ステップＳ３０８に進む。
【０１４５】
次に、ステップＳ３０８では、マスタ動作情報取得部１１０においてマスタ動作情報を取得し、力情報取得部１１７において力情報を取得し、ステップＳ３０９に進む。
【０１４６】
次に、ステップＳ３０９では、力情報補正部１１４において、力情報取得部１１７から取得した力情報に対して、マスタ動作情報と画面上スレーブ動作情報又は画面上柔軟物変形情報との比を掛け、画面上の情報に補正した補正力情報を生成し、ステップＳ３１０に進む。
【０１４７】
次に、ステップＳ３１０では、力情報提示部１１５において、力情報補正部１１４から取得した補正力情報に従いマスタアーム２への指令値を生成し、マスタアーム２で力提示を行い、作業者１に力が提示される。
【０１４８】
《第１実施形態の効果》
画面上の動作情報又は変形情報に対応して力情報を力情報補正部１１４で補正し、力提示を力情報提示部１１５で行うことによって、作業者１が作業に必要な力を加えることができ、作業を正確に行うことができる。すなわち、作業者１の操作及び作業者１が見ている映像に対応した力提示を行うことができ、作業者１が見ている画像と作業者１が行っている操作とがさらに違和感なく対応させることができて、正確に作業を行うことができる。
【０１４９】
（第２実施形態）
本発明の第２実施形態における、マスタスレーブロボット１００Ｂの制御装置１０１Ｂを含むマスタスレーブロボット１００Ｂの概要について説明する。図２７は、本発明の第２実施形態における、マスタスレーブロボット１００Ｂのブロック図を示す。本発明の第２実施形態のマスタロボット１０２Ｂにおけるマスタアーム２と、マスタ周辺装置１０８と、マスタ制御装置１０６Ｂのうちのマスタ動作情報取得部１１０と撮像情報取得部１１１とマスタ動作情報補正部１１２と力情報補正部１１４と力情報提示部１１５と、スレーブロボット１０３とは第１実施形態と同様であるので、共通の参照符号を付して共通部分の説明は省略し、異なる部分についてのみ、以下、詳細に説明する。
【０１５０】
（変形情報算出部１２３）
変形情報算出部１２３は、第１実施形態の変形情報算出部１１３に代えてマスタアーム２の制御装置１０４Ｂに備えられ、表示情報取得部の別の例として機能し、第１実施形態における変形情報算出部１１３の機能に加えて、柔軟物が変形するときの形状を検出し、形状に応じて画面上柔軟物変形情報を算出する機能を有する。
【０１５１】
図１５Ｃに示す例の場合の第１実施形態における変形情報算出部１１３での画面上柔軟物変形情報の算出方法について、図２８Ａを用いて説明する。画面上の柔軟被対象物１３の縁Ａｇを検出し、変形していないときの縁Ｂｇからの変形した距離Ｃｇ（距離をｒＢとする）を画面上柔軟物変形情報として検出する。
【０１５２】
次に、第２実施形態における変形情報算出部１２３での画面上柔軟物変形情報の算出方法について、図２８Ｂを用いて説明する。
【０１５３】
まず、図２８Ａの場合と同様に、画面上の柔軟被対象物１３の縁Ａｇを変形情報算出部１２３で検出し、変形していないときの縁Ｂｇからの変形した距離Ｃｇ（距離をｒＢとする）を変形情報算出部１２３で検出する。
【０１５４】
次に、変形していないときの画面上の柔軟被対象物１３の縁Ｂｇと変形後の画面上の柔軟被対象物１３の縁Ａｇとで囲まれる変形した面積Ｄｇ（面積をＳＤとする）を変形情報算出部１２３で検出する。また、距離Ｃｇ２の面積ＥｇをＳＣ＝ｒＢ２と変形情報算出部１２３で求める。そこで、距離Ｃｇ２の面積Ｅｇに対する変形した面積Ｄｇの割合をｒＤＣ＝ＳＤ／ＳＣと変形情報算出部１２３で求める。変形情報算出部１２３において、この割合が、ある任意の定数ａＤＣ（例えば、０．５）のときに１となるように定数ａＤＣで割る。任意の定数は、作業者１がマスタ入出力ＩＦ１９を用いて変形情報算出部１２３に入力する。このようにして求めた割合ｒａ＝ｒＤＣ／ａＤＣを距離ｒＢに掛けたｒａ・ｒＢを画面上柔軟物変形情報として変形情報算出部１２３で算出する。
【０１５５】
このように、面積を考慮した距離を変形情報算出部１２３で算出する効果について、図２９Ａ及び図２９Ｂを用いて説明する。図２９Ａと図２９Ｂとは、変形した距離Ｃｇは同じであるが、変形した面積Ｄｇが異なる。第１実施形態における変形情報算出部１１３での画面上柔軟物変形情報の算出方法では、作業者１はどちらの場合も同様の力提示を受ける。しかしながら、実際には、図２９Ａの場合と図２９Ｂの場合とでは、剛体対象物１２の挿入の仕方、及び、柔軟被対象物１３の粘性などが異なり、作業者１には異なった力情報を提示する必要がある。具体的には、図２９Ａの方が、図２９Ｂと比較して変形している面積が大きい。そのため、作業者１は、図２９Ａの場合の方が、柔軟被対象物１３を柔らかく感じ、必要な力を加えることができずに作業を終了してしまう。よって、図２９Ａの方が力情報を小さく補正して、作業者１に提示することによって、作業に必要な力を作業者１が加えることができる。このように、第２実施形態における変形情報算出部１２３での画面上柔軟物変形情報の算出方法のように、変形面積を考慮することによって、材質の違い又は挿入操作の違いを力提示で表現することができる。
【０１５６】
なお、変形情報算出部１２３から出力された撮像画像情報が表示部１２６に入力される。表示部１２６では、入力された撮像画像情報をディスプレイ７に表示する。
【０１５７】
＜フローチャート＞
第２実施形態のマスタスレーブロボット１００Ｂの操作手順を図３０のフローチャートを用いて説明する。
【０１５８】
第２実施形態のマスタスレーブロボット１００Ｂの操作の一例は図２５と同様である。ここでは、図２５で表されるフローチャートのステップＳ２０４の力情報取得と、ステップＳ２０５の補正力情報生成と、ステップＳ２０６の力提示とについて、図３０を用いて説明する。
【０１５９】
まず、ステップＳ３０１では、スレーブ動作情報取得部１１６においてスレーブ動作情報を取得し、撮像情報取得部１１１において撮像情報を取得し、ステップＳ３０２に進む。
【０１６０】
次に、ステップＳ３０２では、変形情報算出部１２３において、画面上スレーブ動作情報を算出するかしないかを選択する。画面上スレーブ動作情報を算出すると変形情報算出部１２３で選択する場合はステップＳ３０３に進み、画面上スレーブ動作情報を算出しないと変形情報算出部１２３で選択する場合はステップＳ３０６に進む。ステップＳ３０２での判断（選択）基準の一例としては、マスタアーム２の制御装置１０４Ｂにおいて、画像処理を行うことができると変形情報算出部１２３で判断する場合はステップＳ３０６に進み、画像処理を行うことができないと変形情報算出部１２３で判断する場合はステップＳ３０３に進む。
また、他の判断基準の例としては、画面上での変形量が小さい（変形量が閾値より小さい）と変形情報算出部１２３で判断した場合はステップＳ３０３に進み、画面上での変形量が大きい（変形量が閾値より大きい）と変形情報算出部１２３で判断した場合はステップＳ３０６に進む。
【０１６１】
次に、ステップＳ３０３では、変形情報算出部１２３において、スレーブ動作情報と撮像情報とを用いて、画面上でのスレーブアーム３の動作情報である画面上スレーブ動作情報を生成し、ステップＳ３０４に進む。
【０１６２】
次に、ステップＳ３０４では、変形情報算出部１２３において、画面上柔軟物変形情報を算出するかしないかを選択する。画面上柔軟物変形情報を算出すると変形情報算出部１２３で選択する場合はステップＳ３１１に進み、画面上柔軟物変形情報を算出しないと変形情報算出部１２３で選択する場合はステップＳ３０８に進む。
【０１６３】
次に、ステップＳ３１１では、変形情報算出部１２３において、撮像情報を用いて、画像処理を行い、画面上での柔軟物の変形面積を考慮した画面上柔軟物変形情報を生成し、ステップＳ３１５に進む。
【０１６４】
次に、ステップＳ３１５では、変形情報算出部１１３において、画面上スレーブ動作情報と画面上柔軟物変形情報との加重平均を算出し、算出した加重平均を変形情報として生成し、ステップＳ３０８に進む。
【０１６５】
次に、ステップＳ３０６では、変形情報算出部１２３において、画面上柔軟物変形情報を算出するかしないかを選択する。画面上柔軟物変形情報を算出すると変形情報算出部１２３で選択する場合はステップＳ３１２に進み、画面上柔軟物変形情報を算出しないと変形情報算出部１２３で選択する場合はステップＳ３０２に戻る。
【０１６６】
次に、ステップＳ３１２では、変形情報算出部１２３において、撮像情報を用いて、画像処理を行い、画面上での柔軟物の変形面積を考慮した画面上柔軟物変形情報を生成し、ステップＳ３０８に進む。
【０１６７】
次に、ステップＳ３０８では、マスタ動作情報取得部１１０においてマスタ動作情報を取得し、力情報取得部１１７において力情報を取得し、ステップＳ３０９に進む。
【０１６８】
次に、ステップＳ３０９では、力情報補正部１１４において、力情報取得部１１７から取得した力情報に対して、マスタ動作情報と画面上スレーブ動作情報又は画面上柔軟物変形情報との比を掛け、画面上の情報に補正した補正力情報を生成し、ステップＳ３１０に進む。
【０１６９】
次に、ステップＳ３１０では、力情報提示部１１５において、力情報補正部１１４から取得した補正力情報に従いマスタアーム２への指令値を生成し、マスタアーム２で力提示を行い、作業者１に力が提示される。
【０１７０】
《第２実施形態の効果》
画面上の変形面積を考慮した変形情報を変形情報算出部１２３で算出し、作業者１の作業方法又は柔軟物の材質に対応して力情報を力情報補正部１１４で補正し、力提示を力情報提示部１１５で行うことによって、作業を正確に行うことができる。
【０１７１】
（第３実施形態）
本発明の第３実施形態における、マスタスレーブロボット１００Ｃの制御装置１０１Ｃを含むマスタスレーブロボット１００Ｃの概要について説明する。図３１は、本発明の第３実施形態における、マスタスレーブロボット１００Ｃのブロック図を示す。本発明の第３実施形態のマスタロボット１０２Ｃにおけるマスタアーム２と、マスタ周辺装置１０８と、マスタ制御装置１０６Ｃのうちのマスタ動作情報取得部１１０と撮像情報取得部１１１とマスタ動作情報補正部１１２と変形情報算出部１１３と力情報提示部１１５と、スレーブロボット１０３とは第１実施形態と同様であるので、共通の参照符号を付して共通部分の説明は省略し、異なる部分についてのみ、以下、詳細に説明する。
【０１７２】
（力情報補正部１２４）
力情報補正部１２４は、第１実施形態の力情報補正部１１４に代えてマスタアーム２の制御装置１０４Ｃに備えられ、第１実施形態における力情報補正部１１４の機能に加えて、画面上におけるスレーブアームの移動又は柔軟物の変形が小さい方向について力情報の補正を行わない機能を有する。
【０１７３】
図１５Ｃに示す例の場合の第１実施形態における力情報補正部１１４での力情報の補正方法について、図３２を用いて説明する。図３２において、作業者１は、ディスプレイ７の画面上で主にｙ軸方向とｚ軸方向との動きを見て、作業を行う。このとき、他の方向であるｘ軸方向の動きは画面上からは見ることができない。しかしながら、作業者１がｘ軸方向にマスタアーム２を移動させると、マスタ動作情報に対して、画面上スレーブ動作情報又は画面上柔軟物変形情報が非常に小さな値となるため、ｘ軸方向に関して非常に大きな値に力情報を力情報補正部１１４で補正し、作業者１に力提示することとなる。作業に対してあまり影響のない軸の力が大きく提示されるため、作業に必要な軸方向の力を作業者１が認識できなくなる。
【０１７４】
そこで、第３実施形態における力情報補正部１２４では、図３２のｘ軸方向のような移動又は変形の変化が画面上から確認することのできない軸に対して、力情報の補正を力情報補正部１２４では行わないようにしている。
【０１７５】
力情報補正部１２４による力補正を行わない方向の検出方法について、図３３Ａ及び図３３Ｂを用いて説明する。図３３Ａに示す撮像装置６の撮像方向（撮像座標系Σｃのｙ軸方向）のスレーブアーム３の移動について、図３３Ｂに示す画面上ではその移動を確認することができない。よって、撮像装置６の撮像方向に対して、スレーブアーム３のハンド座標系Σｈｓに関して所定の角度（例えば、１０度）以内の軸方向には、力情報補正部１２４による力情報の補正を行わない。図３３Ａ及び図３３Ｂの例では、スレーブアーム３のハンド座標系Σｈｓのｘ軸方向に関しては、力情報補正部１２４による力情報の補正を行わない。このように、画面上で移動又は変形が見えにくい方向の力情報の補正を力情報補正部１２４で行わないことによって、作業を行う方向の力が作業者１に伝わりやすくなる。
【０１７６】
＜フローチャート＞
第３実施形態のマスタスレーブロボット１００Ｃの操作手順を図３４のフローチャートを用いて説明する。
【０１７７】
第３実施形態のマスタスレーブロボット１００Ｃの操作の一例は図２５と同様である。ここでは、図２５で表されるフローチャートのステップＳ２０４の力情報取得と、ステップＳ２０５の補正力情報生成と、ステップＳ２０６の力提示とについて、図３４を用いて説明する。
【０１７８】
まず、ステップＳ３０１では、スレーブ動作情報取得部１１６においてスレーブ動作情報を取得し、撮像情報取得部１１１において撮像情報を取得し、ステップＳ３０２に進む。
【０１７９】
次に、ステップＳ３０２では、変形情報算出部１１３において、画面上スレーブ動作情報を算出するかしないかを選択する。画面上スレーブ動作情報を算出すると変形情報算出部１１３で選択する場合はステップＳ３０３に進み、画面上スレーブ動作情報を算出しないと変形情報算出部１１３で選択する場合はステップＳ３０６に進む。ステップＳ３０２での判断（選択）基準の一例としては、マスタアーム２の制御装置１０４Ｃにおいて、画像処理を行うことができると変形情報算出部１１３で判断する場合はステップＳ３０６に進み、画像処理を行うことができないと変形情報算出部１１３で判断する場合はステップＳ３０３に進む。
また、他の判断基準の例としては、画面上での変形量が小さい（変形量が閾値より小さい）と変形情報算出部１１３で判断した場合はステップＳ３０３に進み、画面上での変形量が大きい（変形量が閾値より大きい）と変形情報算出部１１３で判断した場合はステップＳ３０６に進む。
【０１８０】
次に、ステップＳ３０３では、変形情報算出部１１３において、スレーブ動作情報と撮像情報とを用いて、画面上でのスレーブアーム３の動作情報である画面上スレーブ動作情報を生成し、ステップＳ３０４に進む。
【０１８１】
次に、ステップＳ３０４では、変形情報算出部１１３において、画面上柔軟物変形情報を算出するかしないかを選択する。画面上柔軟物変形情報を算出すると変形情報算出部１１３で選択する場合はステップＳ３０５に進み、画面上柔軟物変形情報を算出しないと変形情報算出部１１３で選択する場合はステップＳ３０８に進む。
【０１８２】
次に、ステップＳ３０５では、変形情報算出部１１３において、撮像情報を用いて、画像処理を行い、画面上での柔軟物の変形面積を考慮した画面上柔軟物変形情報を生成し、ステップＳ３１５に進む。
【０１８３】
次に、ステップＳ３１５では、変形情報算出部１１３において、画面上スレーブ動作情報と画面上柔軟物変形情報との加重平均を算出し、算出した加重平均を変形情報として生成し、ステップＳ３０８に進む。
【０１８４】
次に、ステップＳ３０６では、変形情報算出部１１３において、画面上柔軟物変形情報を算出するかしないかを選択する。画面上柔軟物変形情報を算出すると変形情報算出部１１３で選択する場合はステップＳ３０７に進み、画面上柔軟物変形情報を算出しないと変形情報算出部１１３で選択する場合はステップＳ３０２に戻る。
【０１８５】
次に、ステップＳ３０７では、変形情報算出部１１３において、撮像情報を用いて、画像処理を行い、画面上での柔軟物の変形面積を考慮した画面上柔軟物変形情報を生成し、ステップＳ３０８に進む。
【０１８６】
次に、ステップＳ３０８では、マスタ動作情報取得部１１０においてマスタ動作情報を取得し、力情報取得部１１７において力情報を取得し、ステップＳ３１３に進む。
【０１８７】
次に、ステップＳ３１３では、力情報補正部１２４において、スレーブアーム３のハンド座標系の各軸方向について、撮像装置６の撮像方向に対して、所定の角度（例えば、１０度）以内の軸方向はステップＳ３１４に進み、所定の角度以内でない軸方向はステップＳ３０９に進む。
【０１８８】
次に、ステップＳ３１４では、所定の角度（例えば、１０度）以内の軸方向については、力情報提示部１１５において、力情報補正部１２４を介して力情報取得部１１７から取得しかつ補正していない力情報に従いマスタアーム２への指令値を生成し、マスタアーム２で力提示を行い、作業者１に力が提示される。
【０１８９】
次に、ステップＳ３０９では、所定の角度以内でない軸方向については、力情報補正部１２４において、力情報取得部１１７から取得した力情報に対して、マスタ動作情報と画面上スレーブ動作情報又は画面上柔軟物変形情報との比を掛け、画面上の情報に補正した補正力情報を生成し、ステップＳ３１０に進む。
【０１９０】
次に、ステップＳ３１０では、所定の角度以内でない軸方向については、力情報提示部１１５において、力情報補正部１１４から取得した補正力情報に従いマスタアーム２への指令値を生成し、マスタアーム２で力提示を行い、作業者１に力が提示される。
【０１９１】
《第３実施形態の効果》
撮像装置から撮像しにくい軸方向の力情報を力情報補正部１１４で補正しないことによって、力提示が必要な軸方向の力を作業者１に力情報提示部１１５で適切に提示できるので、作業を正確に行うことができる。
【０１９２】
（第４実施形態）
本発明の第４実施形態における、マスタスレーブロボット１００Ｄの制御装置１０１Ｄを含むマスタスレーブロボット１００Ｄの概要について説明する。図３５は、本発明の第４実施形態における、マスタスレーブロボット１００Ｄのブロック図を示す。本発明の第４実施形態のマスタロボット１０２Ｄにおけるマスタアーム２と、マスタ周辺装置１０８と、マスタ制御装置１０６Ｄのうちのマスタ動作情報取得部１１０とマスタ動作情報補正部１１２と力情報提示部１１５と、スレーブロボット１０３とは第１実施形態と同様であるので、共通の参照符号を付して共通部分の説明は省略し、異なる部分についてのみ、以下、詳細に説明する。
【０１９３】
（表示制御部１２５）
表示制御部１２５には、撮像装置６から撮像画像情報と、拡大率情報と、撮像装置位置情報と、マスタ入出力ＩＦ１１９に内蔵されたタイマより時間情報とが入力される。撮像画像情報以外の表示制御部１２５が取得する拡大率情報と、撮像装置位置情報と、時間情報との一例は、図９と同様である。また、撮像画像情報とは、ディスプレイ７に映し出された画像そのもののことを表す。ここで、撮像情報とは、撮像画像情報と、拡大率情報と、撮像装置位置情報とを表す。
【０１９４】
表示制御部１２５は、撮像装置６から取得した撮像画像を拡大又は縮小又はトリミングを行い、表示部１２６に出力する。表示部１２６に出力する撮像画像を、撮像画像情報として表示制御部１２５において更新する。また、拡大又は縮小を行った際の拡大率を、撮像装置６から取得した拡大率情報に表示制御部１２５で掛けることによって、拡大率情報を表示制御部１２５において更新する。このようにして得られた撮像画像情報と、拡大率情報と、撮像装置６から取得した撮像装置位置情報と、マスタ入出力ＩＦ１１９に内蔵されたタイマより時間情報とを、表示制御部１２５から拡大率情報算出部１２７に出力する。
【０１９５】
（表示部１２６）
表示部１２６は、表示制御部１２５から撮像画像情報が入力される。表示部１２６では、入力された撮像画像情報をディスプレイ７に表示する。
【０１９６】
（拡大率情報算出部１２７）
拡大率情報算出部１２７は、表示制御部１２５から撮像画像情報と、拡大率情報と、撮像装置位置情報と、時間情報とが入力される。拡大率情報算出部１２７では、入力された拡大率情報及び時間情報を、力情報補正部１２８に出力する。
【０１９７】
また、拡大率情報算出部１２７では、拡大率情報に関して、撮像装置６を設置した位置からスレーブアーム２を撮像した際に、作業者１がスレーブアーム２を直接見た際のスレーブアーム２の移動量とディスプレイ７の画面上でのスレーブアーム２の移動量とが同じ量であるような場合の拡大率を１とする。
【０１９８】
なお、ここでは、上述したように、拡大率情報算出部１２７では、実際のスレーブアーム２の移動量と画面上のスレーブアーム２の移動量とが同じになるときを拡大率１として基準とすることにしたが、他の拡大のときを拡大率１として基準とすることも可能である。例えば、拡大率情報算出部１２７において、最も縮小しているときを拡大率１とすることによって、柔軟物が柔らかく、大きく変形する場合に大きな力を加えてもらうように誘導することができ、大変有効である。また、拡大率情報算出部１２７において、最も拡大しているときを拡大率１とすることによって、柔軟物が硬くあまり変形しない場合に大きな力を加えすぎないように防止することができ、有効である。このように、作業又は対象物に応じて、基準を変更することができる。
【０１９９】
拡大率情報算出部１２７は、上述した拡大率情報の基準を変更することを行うことができ、基準を変えた場合は、変更した基準に従い、拡大率情報を更新する。
【０２００】
（力情報補正部１２８）
力情報補正部１２８は、第１実施形態の力情報補正部１１４に代えてマスタアーム２の制御装置１０４Ｄに備えられ、第１実施形態における力情報補正部１１４の機能に加えて、画面上における拡大率情報を用いて力情報を補正する機能を有する。
【０２０１】
力情報補正部１２８は、拡大率情報算出部１２７から拡大率情報と時間情報とが入力され、力情報取得部１１７から力情報と時間情報とが入力される。力情報補正部１２８では、入力された力情報を、拡大率情報を基に補正する。力情報補正部１２８による補正方法について、以下、説明する。力情報補正部１２８では、拡大情報の値をｍとすると、取得した力情報を１／ｍに補正する。このように力情報補正部１２８により補正することによって、拡大して表示する場合は力情報を小さくし、縮小して表示する場合は力情報を大きくすることができる。
【０２０２】
（第１実施形態と第４実施形態との関係）
また、第１実施形態における変形情報と第４実施形態における拡大率情報との使い分けについて説明する。第１実施形態における変形情報の画面上柔軟物変形情報を算出する際は、画像処理が必要となる。そのため、マスタアーム２の制御装置１０４Ｄにおいて画像処理を行うことができないと拡大率情報算出部１２７で判断する場合は、第４実施形態における拡大率情報を力情報補正部１２８で使用することによって、複雑な処理を用いることなく、変形情報の代わりに拡大率情報を使用することができる。
また、第４実施形態では、スレーブ動作情報又はマスタ動作情報を用いずに力情報を力情報補正部１２８で補正することができ、複雑なシステムを構成せずに、変形情報の代わりに拡大率情報を使用することができる。
【０２０３】
また、上述した選択指針の他に、第１実施形態における変形量を算出する際に、閾値（例えば、１ｍｍ）を設定し、その閾値を超えていないと変形情報算出部１１３で判断する場合は、第４実施形態における拡大率情報を使用することも可能である。このように選択することによって、変形量が計測しにくいところは拡大率情報を使用することができる。また、この閾値を設定し、自動的に選択することも可能である。
【０２０４】
なお、この実施形態でも、先の実施形態と同様に、変形情報算出部１１３から出力された撮像画像情報が表示部１２６に入力される。表示部１２６では、入力された撮像画像情報をディスプレイ７に表示する。
【０２０５】
＜フローチャート＞
第４実施形態のマスタスレーブロボット１００Ｄの操作手順を図３６のフローチャートを用いて説明する。
【０２０６】
第４実施形態のマスタスレーブロボット１００Ｄの操作の一例は図２５と同様である。ここでは、図２５で表されるフローチャートのステップＳ２０４の力情報取得と、ステップＳ２０５の補正力情報生成と、ステップＳ２０６の力提示とについて、図３６を用いて説明する。
【０２０７】
まず、ステップＳ３２１では、表示制御部１２５において、撮像情報を取得し、ステップＳ３２２に進む。
【０２０８】
次に、ステップＳ３２２では、拡大率情報算出部１２７において、表示制御部１２５から取得した拡大率情報を基に拡大率情報を生成し、ステップＳ３２３に進む。
【０２０９】
次に、ステップＳ３２３では、力情報取得部１１７において力情報を取得し、ステップＳ３０９に進む。
【０２１０】
次に、ステップＳ３０９では、力情報補正部１２８において、力情報取得部１１７から取得した力情報に対して、拡大率情報又は変形情報のどちらか１つの情報を用いて、補正した補正力情報を生成し、ステップＳ３１０に進む。
【０２１１】
次に、ステップＳ３１０では、力情報提示部１１５において、力情報補正部１２８から取得した補正力情報に従いマスタアーム２への指令値を生成し、マスタアーム２で力提示を行い、作業者１に力が提示される。
【０２１２】
《第４実施形態の効果》
画像処理などの複雑な処理を行う必要がなく、簡単な構成のマスタスレーブロボット１００Ｄの制御装置１０１Ｄの力情報補正部１２８で力情報の補正を行うことができる。また、変形情報が画面上で見えにくい状態でも、力情報補正部１２８で適切に力情報の補正を行うことができる。
【０２１３】
なお、本発明の各実施形態におけるマスタスレーブロボット１００、１００Ｂ、１００Ｃ、１００Ｄの制御装置１０１、１０１Ｂ、１０１Ｃ、１０１Ｄにおける各構成要素は、マスタロボット１０２とスレーブロボット１０３とのいずれのロボットにおいても、構成することが可能である。すなわち、言い換えれば、「マスタロボット１０２のマスタ制御装置１０６、１０６Ｂ、１０６Ｃ、１０６Ｄの構成要素がスレーブ制御装置１０７内に備えられていても、逆に、スレーブ制御装置１０７内の構成要素がマスタ制御装置１０６、１０６Ｂ、１０６Ｃ、１０６Ｄ内に備えられていてもよい。
【０２１４】
（変形例）
なお、第１実施形態又は第２実施形態においては、マスタロボット１０２、１０２Ｂを操作する作業者１が画面を見ながらスレーブロボット１０３を操作するときに、画面に表示されている柔軟物の変形量によってフィードバックする力を変更するものである。このとき、比（ｄｂ／ｄｄ）に対してゲインαを掛けた値でフィードバックする力の補正を力情報補正部１１４で行っている。
【０２１５】
一般に、作業者１が、ある作業を行うときには、画面内での被対象物の表示のされ方によって、作業者１の力の感じ方が異なる。しかしながら、同じ挿入作業である場合には、表示され方が異なっても、同じ力で挿入される方が、品質のばらつきが少なくなる。一方で、力の感じ方は、作業者１によって異なり、個人差もある。
【０２１６】
そこで、力の個人差を補正するため、事前に、同一の作業に対して、作業者１がどれくらい力の感じ方が異なるかを事前にキャリブレーションしておくことが有効である。このキャリブレーションを行うことは、本発明の第１又は第２実施形態においては、上記ゲインαを決定することに相当する。
【０２１７】
マスタスレーブロボットの制御装置の構成の例を図３７に示す。図３７のマスタスレーブロボットの制御装置の構成においては、図２のマスタスレーブロボット１００の制御装置１０１の構成に対して、さらに、拡大率変更マスタ情報蓄積部３１０１と、補正力設定部３１０２とを追加したものである。なお、この変形例でも、先の実施形態と同様に、変形情報算出部１１３から出力された撮像画像情報が表示部１２６に入力される。表示部１２６では、入力された撮像画像情報をディスプレイ７に表示する。
【０２１８】
ここで、拡大率変更マスタ情報蓄積部３１０１は、同一作業に対して拡大率が異なる画像を作業者１に表示した場合のマスタ動作情報（マスタ動作情報取得部１１０で取得した姿勢情報）を拡大率が異なる作業毎に蓄積する。補正力設定部３１０２は、拡大率変更マスタ動作蓄積部３１０１で蓄積されている複数のマスタ動作情報から、力情報補正部１１４での補正力情報を計算して補正する力情報を設定する。
【０２１９】
例えば、図１３に示したマスタスレーブロボット１００を使って作業を行う場合には、図３Ａ又は図３Ｂに示した場合で、スレーブアーム３にかかる力がどれくらい異なるかを事前に計測しておく。図３Ａのように広域を表示した映像の場合には、撮像されている被対象物の変形情報が小さいため、スレーブアーム３に多くの力がかかる操作となり、一方で、図３Ｂのように拡大した映像を表示した場合には、撮像されている被対象物の変形情報が大きく映り、作業者１はスレーブアーム３の動作を抑制する傾向がある。このように、同一の作業者１が同一の作業に対して、拡大率の異なる映像を表示された場合に、異なる力で作業をしてしまうことがあり、品質のばらつきにつながってしまう。そこで、事前に拡大率が異なる映像に対して、作業者１の力の入り方がどれくらい異なるかを事前に計測しておき、その差分を補正するように、補正力設定部３１０２で補正する。例えば、図３Ａのように広域映像を表示した場合には、被対象物に作用する力が平均４．８Ｎとなり（図３Ｃ参照）、これに対して、図３Ｂのように詳細映像を表示した場合には、被対象物に作用する力が平均２．３Ｎとなっている（図３Ｄ参照）。そこで、補正力設定部３１０２においては、この２．５Ｎの差分（＝４．８Ｎ−２．３Ｎ）が生じないように、マスタアーム２にフィードバックする力を、詳細映像を表示した場合には小さく設定する。この場合、作業者１は詳細映像が表示されている場合には、接触度合いが小さいと判断し、さらに、大きな力で接触させようとする。このように、表示される映像の違いによって、作業のばらつきがなくなるように、マスタアーム２への力を補正するものである。
【０２２０】
なお、上記例では、２種類の拡大率で表示する映像に対して、スレーブアーム３にかかる力を測定している。さらに、詳細に設定するためには、３つ以上の拡大率を用いて表示することで、より正確な補正が可能になる。
【０２２１】
なお、上記例では、拡大率を変更した映像を提示しているが、撮像する方向に対して、作業者１の力の入れ方が変わる場合もある。そこで、各撮像する方向に対して、作業者１の力の入れ方を計測することで、撮像方向に対する力の補正が可能になる。
【０２２２】
前記以外に、以下のような補正の仕方もある。
【０２２３】
例えば、拡大率が異なる場合に、スレーブアームに作用する力が同じになるように補正する場合がある。
【０２２４】
すなわち、マスタスレーブロボット１００の制御装置１０１において、拡大率変更マスタ情報蓄積部３１０１では、拡大率が異なる場合に、スレーブアーム３に外部から加えられた力情報を取得する力情報取得部１１７で取得した力情報を蓄積する。次いで、補正力設定部３１０２で、拡大率が異なる画像を表示したときに、力情報が近づくように、補正力を設定する。
【０２２５】
また、異なる方向からの画像で補正力を設定する場合もある。図３８のブロック図を用いて説明する。なお、この変形例でも、先の実施形態と同様に、変形情報算出部１１３から出力された撮像画像情報が表示部１２６に入力される。表示部１２６では、入力された撮像画像情報をディスプレイ７に表示する。
【０２２６】
すなわち、作業者１が同一作業に対して、異なる方向からの画像を表示したときにマスタ動作情報取得部１１０で取得した姿勢情報を、方向が異なる作業毎に蓄積する方向変更マスタ情報蓄積部３１０３を制御装置１０１に新たに備える。この方向変更マスタ情報蓄積部３１０３で蓄積された情報に基づいて、力情報補正部１１４での補正力情報を補正力設定部３１０２で計算して設定する。
【０２２７】
さらに、方向が異なる場合に、スレーブアームに作用する力が同じになるように補正する場合もある。
【０２２８】
すなわち、マスタスレーブロボット１００の制御装置１０１において、方向変更マスタ情報蓄積部３１０３を新たに備える。この方向変更マスタ情報蓄積部３１０３では、方向が異なる場合に、スレーブアーム３に外部から加えられた力情報を取得する力情報取得部１１７で取得した力情報を蓄積する。次いで、補正力設定部３１０２では、方向が異なる画像を表示したときに、力情報が近づくように、補正力を設定する。
【０２２９】
なお、本発明を第１〜第４実施形態及び変形例に基づいて説明してきたが、本発明は、前記の第１〜第４実施形態及び変形例に限定されないのはもちろんである。以下のような場合も本発明に含まれる。
【０２３０】
前記マスタスレーブロボット１００、１００Ｂ、１００Ｃ、１００Ｄの各制御装置１０１，１０１Ｂ、１０１Ｃ、１０１Ｄの一部又は全部は、具体的には、マイクロプロセッサ、ＲＯＭ、ＲＡＭ、ハードディスクユニット、ディスプレイユニット、キーボード、マウスなどから構成されるコンピュータシステムである。前記ＲＡＭ又はハードディスクユニットには、コンピュータプログラムが記憶されている。前記マイクロプロセッサが、前記コンピュータプログラムにしたがって動作することにより、各部は、その機能を達成する。ここでコンピュータプログラムは、所定の機能を達成するために、コンピュータに対する指令を示す命令コードが複数個組み合わされて構成されたものである。
【０２３１】
例えば、ハードディスク又は半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをＣＰＵ等のプログラム実行部が読み出して実行することによって、各構成要素が実現され得る。なお、前記実施形態又は変形例における制御装置を構成する要素の一部又は全部を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、柔軟物８に対して作業を行なうスレーブアーム３と、前記スレーブアームを人１が遠隔より操作するマスタアーム２とを備えるマスタスレーブロボット１００を使用して、撮像装置６で撮像されて表示部７に表示された前記作業の状態を前記人が見ながら、前記作業を行う、マスタスレーブロボットの制御プログラムであって、
コンピュータに、
前記スレーブアームに外部から加えられた力情報を取得する力情報取得部１１７と、
前記作業を表示する前記表示部での拡大率情報を取得する表示情報取得部１１３，１２３と、
前記表示情報取得部から取得した前記拡大率情報が大きければ大きいほど、前記力情報取得部から取得した前記力情報を小さく補正することにより補正力情報を生成する力情報補正部１１４，１２４と、
前記力情報補正部で生成された前記補正力情報を前記マスタアームに提示する力情報提示部１１５と、
として機能させるためのマスタスレーブロボットの制御プログラムである。
【０２３２】
また、このプログラムは、サーバなどからダウンロードされることによって実行されてもよく、所定の記録媒体（例えば、ＣＤ−ＲＯＭなどの光ディスク、磁気ディスク、又は、半導体メモリなど）に記録されたプログラムが読み出されることによって実行されてもよい。
【０２３３】
また、このプログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
【０２３４】
なお、前記様々な実施形態又は変形例のうちの任意の実施形態又は変形例を適宜組み合わせることにより、それぞれの有する効果を奏するようにすることができる。
【産業上の利用可能性】
【０２３５】
本発明は、作業者が見ている画像に応じた力提示を受けることができ、産業用、家庭用、又は医療用等に適用可能な、マスタスレーブロボットの制御装置及び制御方法、ロボット、マスタスレーブロボットの制御プログラム、並びに、マスタスレーブロボットの制御用集積電子回路として有用である。
【符号の説明】
【０２３６】
１  作業者
２  マスタアーム
３  スレーブアーム
４  ハンド
５  力センサ
６  撮像装置
７  ディスプレイ
８  微細部品
９  挿入口（コネクタ）
１０  機器
１１  作業台
１２  剛体対象物
１３  柔軟被対象物
１４  柔軟対象物
１５  剛体被対象物
１００、１００Ｂ、１００Ｃ、１００Ｄ  マスタスレーブロボット
１０１、１０１Ｂ、１０１Ｃ、１０１Ｄ  マスタスレーブロボットの制御装置
１０２、１０２Ｂ、１０２Ｃ、１０２Ｄ  マスタロボット
１０３  スレーブロボット
１０４、１０４Ｂ、１０４Ｃ、１０４Ｄ  マスタアームの制御装置
１０５  スレーブアームの制御装置
１０６、１０６Ｂ、１０６Ｃ、１０６Ｄ  マスタ制御装置
１０７  スレーブ制御装置
１０８  マスタ周辺装置
１０９  スレーブ周辺装置
１１０  マスタ動作情報取得部
１１１  撮像情報取得部
１１２  マスタ動作情報補正部
１１３、１２３  変形情報算出部
１１４、１２４、１２８  力情報補正部
１２５  表示制御部
１２６  表示部
１２７  拡大率情報算出部
１１５  力情報提示部
１１６  スレーブ動作情報取得部
１１７  力情報取得部
１１８  スレーブ制御部
１１９  マスタ入出力ＩＦ
１２０  マスタモータドライバ
１２１  スレーブ入出力ＩＦ
１２２  スレーブモータドライバ
３１０１  拡大率変更マスタ情報蓄積部
３１０２  補正力設定部
３１０３  方向変更マスタ情報蓄積部
【図１】
2015027724.tif 000003
【図２】
2015027724.tif 000004
【図３Ａ】
2015027724.tif 000005
【図３Ｂ】
2015027724.tif 000006
【図３Ｃ】
2015027724.tif 000007
【図３Ｄ】
2015027724.tif 000008
【図４Ａ】
2015027724.tif 000009
【図４Ｂ】
2015027724.tif 000010
【図５】
2015027724.tif 000011
【図６Ａ】
2015027724.tif 000012
【図６Ｂ】
2015027724.tif 000013
【図６Ｃ】
2015027724.tif 000014
【図６Ｄ】
2015027724.tif 000015
【図７】
2015027724.tif 000016
【図８】
2015027724.tif 000017
【図９】
2015027724.tif 000018
【図１０】
2015027724.tif 000019
【図１１】
2015027724.tif 000020
【図１２】
2015027724.tif 000021
【図１３】
2015027724.tif 000022
【図１４Ａ】
2015027724.tif 000023
【図１４Ｂ】
2015027724.tif 000024
【図１４Ｃ】
2015027724.tif 000025
【図１５Ａ】
2015027724.tif 000026
【図１５Ｂ】
2015027724.tif 000027
【図１５Ｃ】
2015027724.tif 000028
【図１６Ａ】
2015027724.tif 000029
【図１６Ｂ】
2015027724.tif 000030
【図１７】
2015027724.tif 000031
【図１８】
2015027724.tif 000032
【図１９】
2015027724.tif 000033
【図２０】
2015027724.tif 000034
【図２１】
2015027724.tif 000035
【図２２】
2015027724.tif 000036
【図２３】
2015027724.tif 000037
【図２４】
2015027724.tif 000038
【図２５】
2015027724.tif 000039
【図２６】
2015027724.tif 000040
【図２７】
2015027724.tif 000041
【図２８Ａ】
2015027724.tif 000042
【図２８Ｂ】
2015027724.tif 000043
【図２９Ａ】
2015027724.tif 000044
【図２９Ｂ】
2015027724.tif 000045
【図３０】
2015027724.tif 000046
【図３１】
2015027724.tif 000047
【図３２】
2015027724.tif 000048
【図３３Ａ】
2015027724.tif 000049
【図３３Ｂ】
2015027724.tif 000050
【図３４】
2015027724.tif 000051
【図３５】
2015027724.tif 000052
【図３６】
2015027724.tif 000053
【図３７】
2015027724.tif 000054
【図３８】
2015027724.tif 000055