JP6473919B2 - マスタスレーブロボットの制御装置及び制御方法、ロボット、マスタスレーブロボットの制御プログラム、並びに、マスタスレーブロボットの制御用集積電子回路 - Google Patents

マスタスレーブロボットの制御装置及び制御方法、ロボット、マスタスレーブロボットの制御プログラム、並びに、マスタスレーブロボットの制御用集積電子回路 Download PDF

Info

Publication number
JP6473919B2
JP6473919B2 JP2014123175A JP2014123175A JP6473919B2 JP 6473919 B2 JP6473919 B2 JP 6473919B2 JP 2014123175 A JP2014123175 A JP 2014123175A JP 2014123175 A JP2014123175 A JP 2014123175A JP 6473919 B2 JP6473919 B2 JP 6473919B2
Authority
JP
Japan
Prior art keywords
information
master
force
slave
force information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2014123175A
Other languages
English (en)
Other versions
JP2015027724A (ja
Inventor
勇大 札場
勇大 札場
津坂 優子
優子 津坂
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Intellectual Property Management Co Ltd
Original Assignee
Panasonic Intellectual Property Management Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Panasonic Intellectual Property Management Co Ltd filed Critical Panasonic Intellectual Property Management Co Ltd
Priority to JP2014123175A priority Critical patent/JP6473919B2/ja
Publication of JP2015027724A publication Critical patent/JP2015027724A/ja
Application granted granted Critical
Publication of JP6473919B2 publication Critical patent/JP6473919B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1689Teleoperation
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40139Force from slave converted to a digital display like fingers and object
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40405Master slave position control
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S901/00Robots
    • Y10S901/02Arm motion controller

Description

本発明は、マスタスレーブロボットの動作の生成を行うためのマスタスレーブロボットの制御装置及び制御方法、ロボット、マスタスレーブロボットの制御プログラム、並びに、マスタスレーブロボットの制御用集積電子回路に関する。
人がマスタロボットを遠隔で操作をして、スレーブロボットにより作業を行うマスタスレーブロボットが様々な分野で注目を集めている。
医療の現場では、術者が遠隔でモニタ画面上に映し出された内視鏡の映像を見ながらマスタロボットを操作して、スレーブロボットが把持した鉗子を動かして手術を行う内視鏡手術がある。患部又は鉗子などを拡大してモニタ画面に映し出し、手術ができるメリットに加えて、現場に専門の医師がいなくても遠隔で手術ができる。
また、製造現場では、微細作業又は熟練を要する作業を行うスレーブロボットを遠隔で操作又は教示するマスタスレーブロボットが提案されており、特に顕微鏡下で行う微細作業について、手元の拡大表示、又は、手元操作の移動量の拡大又は縮小移動などにより、細かな作業を簡易に操作することができる。
いずれのマスタスレーブ方式においてもマスタロボットを操作してスムーズにスレーブロボットを操作する機能に加えて、スレーブロボットにかかる力をマスタロボットにフィードバックする機能が求められる。
また、人はモニタ画面を見ながらマスタロボットを操作するため、モニタに映し出された映像とマスタロボットの操作又はスレーブロボットの動作とを違和感なく対応させる技術として、下記の技術が提案されている。
体腔内手術用マスタスレーブマニピュレータにおいて、モニタに映し出された映像の拡大率に応じてマスタロボットとスレーブロボットとの動作比率を自動調整する(特許文献1参照)。
特開平8−187246号公報
しかしながら、作業者が見ている画像と作業者が行っている操作とがさらに違和感なく対応できるように、さらなる操作性の向上が求められていた。
したがって、本発明の目的は、前記問題を解決することにあり、作業者が映像を見ながら操作するマスタスレーブロボットであって、作業者が見ている画像と作業者が行っている操作とが違和感なく対応する、マスタスレーブロボットの制御装置及び制御方法、ロボット、マスタスレーブロボットの制御プログラム、並びに、マスタスレーブロボットの制御用集積電子回路を提供することにある。
上記目的を達成するために、本発明の一態様に係るマスタスレーブロボットの制御装置は、対象物を把持して、前記対象物を被対象物に挿入する作業を行なうスレーブアームと、前記スレーブアームを遠隔より操作するマスタアームとを備えるマスタスレーブロボットを使用して、撮像装置で撮像されて表示部に表示された前記作業の状態の画像に基づいて、前記作業が行われる、マスタスレーブロボットの制御装置であって、
前記スレーブアームに外部から加えられた力情報を取得する力情報取得部と、
前記作業を表示する前記表示部での拡大率情報を取得する表示情報取得部と、
前記表示情報取得部から取得した前記拡大率情報の拡大率が小さければ小さいほど、前記力情報取得部から取得した前記力情報を大きく補正することにより補正力情報を生成する力情報補正部と、
前記力情報補正部で生成された前記補正力情報を前記マスタアームに提示する力情報提示部と、
を備える。
これらの概括的かつ特定の態様は、システム、方法、コンピュータプログラム並びにシステム、方法及びコンピュータプログラムの任意の組み合わせにより実現してもよい。
本発明の前記一態様によれば、作業者の操作及び作業者が見ている映像に対応した力提示を行うことができ、作業者が見ている画像と作業者が行っている操作とがさらに違和感なく対応させることができて、正確に作業を行うことができる。
本発明の第1実施形態におけるマスタスレーブロボットの構成の概要を示す図。 本発明の第1実施形態のマスタスレーブロボットのブロック図。 従来のマスタスレーブロボットにおける映像と力の感じ方の説明図。 従来のマスタスレーブロボットにおける映像と力の感じ方の説明図。 本発明のマスタスレーブロボットにおける被対象物に作用する力と時間との関係のグラフ。 本発明のマスタスレーブロボットにおける被対象物に作用する力と時間との関係のグラフ。 従来のマスタスレーブロボットにおける映像と力の感じ方の説明図(把持作業)。 従来のマスタスレーブロボットにおける映像と力の感じ方の説明図(把持作業)。 本発明の第1実施形態のマスタスレーブロボットにおける動作情報、時間情報のデータ図。 本発明の第1実施形態のマスタスレーブロボットにおける撮像装置の設置方法の説明図。 本発明の第1実施形態のマスタスレーブロボットにおける撮像装置の設置方法の説明図。 本発明の第1実施形態のマスタスレーブロボットにおける撮像装置の設置方法の説明図。 本発明の第1実施形態のマスタスレーブロボットにおける撮像装置の設置方法の説明図。 本発明の第1実施形態のマスタスレーブロボットにおける撮像装置座標系の説明図。 本発明の第1実施形態のマスタスレーブロボットにおける撮像装置の設置位置の説明図。 本発明の第1実施形態のマスタスレーブロボットにおける拡大率情報と撮像装置位置情報と時間情報とのデータ図。 本発明の第1実施形態のマスタスレーブロボットにおける拡大率情報と撮像装置位置情報と時間情報とのデータ図(拡大率情報が変化する場合)。 本発明の第1実施形態のマスタスレーブロボットにおける座標系の説明図。 本発明の第1実施形態のマスタスレーブロボットにおける補正マスタ動作情報と時間情報とのデータ図。 本発明の第1実施形態のマスタスレーブロボットにおける拡大率情報のキャリブレーションの説明図。 本発明の第1実施形態のマスタスレーブロボットにおける微細部品の変形量の説明図。 本発明の第1実施形態のマスタスレーブロボットにおける微細部品の変形量の説明図。 本発明の第1実施形態のマスタスレーブロボットにおける微細部品の変形量の説明図。 本発明の第1実施形態のマスタスレーブロボットにおける柔軟被対象物の変形量の説明図。 本発明の第1実施形態のマスタスレーブロボットにおける柔軟被対象物の変形量の説明図。 本発明の第1実施形態のマスタスレーブロボットにおける柔軟被対象物の変形量の説明図。 本発明の第1実施形態のマスタスレーブロボットにおける変形量の算出方法の例の説明図。 本発明の第1実施形態のマスタスレーブロボットにおける変形量の算出方法の例の説明図。 本発明の第1実施形態のマスタスレーブロボットにおける変形度合の説明図。 本発明の第1実施形態のマスタスレーブロボットにおける拡大して作業を行う場合の力補正方法の説明図。 本発明の第1実施形態のマスタスレーブロボットにおける縮小して作業を行う場合の力補正方法の説明図。 本発明の第1実施形態のマスタスレーブロボットにおける拡大して作業を行う場合の力補正方法の例の説明図。 本発明の第1実施形態のマスタスレーブロボットにおける縮小して作業を行う場合の力補正方法の例の説明図。 本発明の第1実施形態のマスタスレーブロボットにおける力情報の更新周期変更の説明図。 本発明の第1実施形態のマスタスレーブロボットにおける力情報、時間情報のデータ図。 本発明の第1実施形態のマスタスレーブロボットにおけるマスタ入出力IFのブロック図。 本発明の第1実施形態のマスタスレーブロボットの操作手順のフローチャート。 本発明の第1実施形態のマスタスレーブロボットにおける力補正手順のフローチャート。 本発明の第2実施形態のマスタスレーブロボットのブロック図。 本発明の第2実施形態のマスタスレーブロボットにおける画面上柔軟物変形情報の算出方法の説明図。 本発明の第2実施形態のマスタスレーブロボットにおける画面上柔軟物変形情報の算出方法の説明図。 本発明の第2実施形態のマスタスレーブロボットにおける面積を考慮した画面上柔軟物変形情報の効果の説明図。 本発明の第2実施形態のマスタスレーブロボットにおける面積を考慮した画面上柔軟物変形情報の効果の説明図。 本発明の第2実施形態のマスタスレーブロボットにおける力補正手順のフローチャート。 本発明の第3実施形態のマスタスレーブロボットのブロック図。 本発明の第3実施形態のマスタスレーブロボットにおける力情報の補正方法の説明図。 本発明の第3実施形態のマスタスレーブロボットにおける力補正を行わない方向の検出方法の説明図。 本発明の第3実施形態のマスタスレーブロボットにおける力補正を行わない方向の検出方法の説明図。 本発明の第3実施形態のマスタスレーブロボットにおける力補正手順のフローチャート。 本発明の第4実施形態のマスタスレーブロボットのブロック図。 本発明の第4実施形態のマスタスレーブロボットにおける力補正手順のフローチャート。 本発明の第1又は第2実施形態の変形例にかかるマスタスレーブロボットのブロック図。 本発明の第1又は第2実施形態の変形例にかかるマスタスレーブロボットのブロック図。
以下に、本発明にかかる実施の形態を図面に基づいて詳細に説明する。
以下、図面を参照して本発明における実施形態を詳細に説明する前に、まず、本発明の基礎となった知見を説明したのち、本発明の種々の態様について説明する。
(本発明の基礎となった知見)
図1には、スレーブアーム3は、作業台11上の機器10の挿入口9に、ハンド4で把持された微細部品8を挿入する作業を行うロボットである。この作業をカメラなどの撮像装置6で撮像してディスプレイ7に映し出している。このような状況において、作業者(人)1がディスプレイ7に映し出された映像を見ながらマスタアーム2を操作するマスタスレーブロボット100を示している。このマスタスレーブロボット100において、映像の拡大率又はマスタアーム2に対するスレーブアーム3の動作比率を変更すると、それまで見ていた映像とマスタアーム2の操作又は力の感じ方との対応関係が変わり、作業者1に違和感が生じる。
具体的には、図3の(a)及び(b)及び図3A及び図3Bを用いて説明する。図3A及び図3Bは、図1に示すマスタスレーブロボット100において、作業者1が見ているディスプレイ7の画面の映像を示す。図3Aと比べて図3Bの方が、映像の拡大率が大きく、画面上の微細部品8などが実物よりも大きく映っている。このように拡大率が大きい方が、画面上の微細部品8の曲がり具合が作業者1には大きく見えるため、作業者1は、実際に作業に必要な力よりも小さい力で作業者1は作業を行ってしまう。その結果、作業に必要な力を作業者1がマスタアーム2に加えることができず、作業を正確に行うことが難しくなる。そこで、作業者1の見ている映像と作業者1が行っている操作とを違和感なく対応付ける技術が提案されている。
具体的には、特許文献1の方法では、ディスプレイ7に映し出された映像の拡大率に応じて、マスタアーム2に対するスレーブアーム3の動作比率を自動調整する。例えば、拡大率をk倍すると、動作比率を1/kとする。また、特許文献2の方法では、作業者1が操作するマスタアーム2の移動に応じて、ディスプレイ7に映し出す位置、角度、又は、拡大率を自動調整する。
しかし、特許文献1の方法では、映像の拡大率に応じて動作比率は変えているが、作業者1へ力フィードバックする力の大きさは変えていない。また、特許文献2の方法においても、マスタの操作に応じて映像を調整しているが、力フィードバックする力の大きさは変えていない。つまり、どちらの特許文献においても、映像の見え方に応じて、作業者1の力フィードバックされる力の感じ方が変わることまでは考慮できていない。例えば、図3A及び図3Bの例では、映像を拡大した場合に、作業者1が小さな力で作業を行ってしまうことに対する解決方法は無い。
よって、マスタスレーブロボット100において、ディスプレイ7に映し出される映像に応じて違和感なく作業者1がマスタアーム2を操作できるように、映像に応じて力フィードバックする力を自動調整するようにマスタスレーブロボット100を制御することが求められている。
他の作業での例を、図4A及び図4Bを用いて説明する。図4A及び図4Bは、微細部品8を把持して搬送する作業の例である。図4Aと比べて図4Bの方が、拡大率が大きく、微細部品8が大きく映る。すなわち、図4Aではハンド4で微細部品8が把持されているぐらいしか見えない。これに対して、図4Bではスレーブアーム3の先端のハンド4と微細部品8とが拡大されて表示され、ハンド4により微細部品8がたわんで変形しているのがよく見える。このように、拡大率が大きい方が、微細部品8の変形が大きく見え、作業者1は映像が大きく変化することにつられて、力を加えることを止めてしまう。その結果、微細部品8を把持するのに必要な力を作業者1からマスタアーム2に加えることができずに、微細部品8を持ち上げて運ぼうとするときに、微細部品8がハンド4から落ちてしまう。このように、拡大率を大きくすると、作業者1は視覚の影響を大きく受け、作業を達成する力を加えることができないという問題が生じる。
そこで、本発明は、前記問題を解決することにあり、作業者が映像を見ながら操作するマスタスレーブロボットであって、作業者が見ている画像と作業者が行っている操作とが違和感なく対応する、マスタスレーブロボットの制御装置及び制御方法、ロボット、マスタスレーブロボットの制御プログラム、並びに、マスタスレーブロボットの制御用集積電子回路を提供するものである。
本発明の第1態様によれば、柔軟物に対して作業を行なうスレーブアームと、前記スレーブアームを人が遠隔より操作するマスタアームとを備えるマスタスレーブロボットを使用して、撮像装置で撮像されて表示部に表示された前記作業の状態を前記人が見ながら、前記作業を行う、マスタスレーブロボットの制御装置であって、
前記スレーブアームに外部から加えられた力情報を取得する力情報取得部と、
前記作業を表示する前記表示部での拡大率情報を取得する表示情報取得部と、
前記表示情報取得部から取得した前記拡大率情報が大きければ大きいほど、前記力情報取得部から取得した前記力情報を小さく補正することにより補正力情報を生成する力情報補正部と、
前記力情報補正部で生成された前記補正力情報を前記マスタアームに提示する力情報提示部と、
を備えるマスタスレーブロボットの制御装置を提供する。
前記態様によれば、作業者の操作及び作業者が見ている映像に対応した力提示を行うことができ、作業者が見ている画像と作業者が行っている操作とがさらに違和感なく対応させることができて、正確に作業を行うことができる。
本発明の第2態様によれば、前記表示情報取得部は、前記表示部上において、前記スレーブアームの作業により変形した前記柔軟物の変形情報を前記拡大率情報として算出する変形情報算出部である、第1態様に記載のマスタスレーブロボットの制御装置を提供する。
前記態様によれば、変形情報に基づいてマスタアームが違和感なく操作できるように力フィードバックする力情報を補正することができる。つまり、映像の拡大率が変わっても、作業者が作業に必要な力を加えることができる。
本発明の第3態様によれば、前記表示情報取得部において、前記表示部上において、前記スレーブアームの作業により変形した前記柔軟物の変形情報として、前記柔軟物が変形している範囲の長さを算出して使用する、
第2態様に記載のマスタスレーブロボットの制御装置を提供する。
前記態様によれば、画面上での柔軟物の変形量を表示部上において算出するので、画面上で柔軟物の変形がよく見える場合に、作業者が適切な力を加えることができる。
本発明の第4態様によれば、前記表示情報取得部において、前記表示部上において、前記スレーブアームの作業により変形した前記柔軟物の変形情報として、前記柔軟物が変形している範囲の面積を算出して使用する、
第2態様に記載のマスタスレーブロボットの制御装置を提供する。
前記態様によれば、画面上の変形面積を考慮した変形情報を算出し、作業者の作業方法又は柔軟物の材質が変わった場合においても、作業者が適切な力を加えることができる。
本発明の第5態様によれば、前記マスタアームの位置と、姿勢と、速度と、角速度との少なくとも1つ以上のマスタ動作情報を取得するマスタ動作情報取得部をさらに備え、
前記力情報補正部は、
前記マスタ動作情報より前記マスタアームの移動量dを算出し、前記変形情報算出部より算出された前記柔軟物の変形量dを取得し、
前記移動量dを前記変形量dにより除算し、
除算した結果(d/d)に補正係数及び前記力情報を乗算することにより前記補正力情報を生成する、
第2〜4態様のいずれか1つに記載のマスタスレーブロボットの制御装置を提供する。
前記態様によれば、変形情報とマスタ動作情報の移動量との比を用いて力情報を補正するため、作業を行う上で適切な力を作業者が加えることができる。
本発明の第6態様によれば、前記力情報補正部において、前記力情報を補正する際の前記拡大率情報と前記力情報の基準となる大きさを決定する、第1〜5のいずれか1つの態様に記載のマスタスレーブロボットの制御装置を提供する。
本発明の第7態様によれば、前記力情報補正部において、前記柔軟物の柔らかさに応じて補正量を変更する第1〜6のいずれか1つの態様に記載のマスタスレーブロボットの制御装置を提供する。
本発明の第8態様によれば、前記力情報補正部は、前記拡大率情報が大きければ大きいほど、前記力情報取得部から取得した前記力情報を小さく補正して前記補正力情報を生成するとき、前記力情報の大きさを小さく補正して前記補正力情報を生成すること、又は、前記力情報の更新周期を速くして前記補正力情報を生成することのどちらかを行う、第1〜7態様のいずれか1つに記載のマスタスレーブロボットの制御装置を提供する。
前記態様によれば、力の印加が必要な作業における力補正を正確に行うことができる。
本発明の第9態様によれば、第1〜8態様のいずれか1つに記載のマスタスレーブロボットの制御装置と、
前記マスタスレーブロボットとを備える、ロボットを提供する。
前記態様によれば、作業者の操作及び作業者が見ている映像に対応した力提示を行うことができ、作業者が見ている画像と作業者が行っている操作とがさらに違和感なく対応させることができて、正確に作業を行うことができる。
本発明の第10態様によれば、柔軟物に対して作業を行なうスレーブアームと、前記スレーブアームを人が遠隔より操作するマスタアームとを備えるマスタスレーブロボットを使用して、撮像装置で撮像されて表示部に表示された前記作業の状態を前記人が見ながら、前記作業を行う、マスタスレーブロボットの制御方法であって、
前記スレーブアームに外部から加えられた力情報を力情報取得部で取得し、
前記作業を表示する前記表示部での拡大率情報を表示情報取得部で取得し、
前記表示情報取得部から取得した前記拡大率情報が大きければ大きいほど、前記力情報取得部から取得した前記力情報を小さく補正することにより補正力情報を力情報補正部で生成し、
前記力情報補正部で生成された前記補正力情報を前記マスタアームに力情報提示部で提示する、
マスタスレーブロボットの制御方法を提供する。
前記態様によれば、作業者の操作及び作業者が見ている映像に対応した力提示を行うことができ、作業者が見ている画像と作業者が行っている操作とがさらに違和感なく対応させることができて、正確に作業を行うことができる。
本発明の第11態様によれば、柔軟物に対して作業を行なうスレーブアームと、前記スレーブアームを人が遠隔より操作するマスタアームとを備えるマスタスレーブロボットを使用して、撮像装置で撮像されて表示部に表示された前記作業の状態を前記人が見ながら、前記作業を行う、マスタスレーブロボットの制御プログラムであって、
コンピュータに、
前記スレーブアームに外部から加えられた力情報を力情報取得部で取得するステップと、
前記作業を表示する前記表示部での拡大率情報を表示情報取得部で取得するステップと、
前記表示情報取得部から取得した前記拡大率情報が大きければ大きいほど、前記力情報取得部から取得した前記力情報を小さく補正することにより補正力情報を力情報補正部で生成するステップと、
前記力情報補正部で生成された前記補正力情報を前記マスタアームに力情報提示部で提示するステップと、
を実現させるためのマスタスレーブロボットの制御プログラムを提供する。
前記態様によれば、作業者の操作及び作業者が見ている映像に対応した力提示を行うことができ、作業者が見ている画像と作業者が行っている操作とがさらに違和感なく対応させることができて、正確に作業を行うことができる。
本発明の第12態様によれば、柔軟物に対して作業を行なうスレーブアームと、前記スレーブアームを人が遠隔より操作するマスタアームとを備えるマスタスレーブロボットを使用して、撮像装置で撮像されて表示部に表示された前記作業の状態を前記人が見ながら、前記作業を行う、マスタスレーブロボットの制御用集積電子回路であって、
前記スレーブアームに外部から加えられた力情報を取得する力情報取得部と、
前記作業を表示する前記表示部での拡大率情報を取得する表示情報取得部と、
前記表示情報取得部から取得した前記拡大率情報が大きければ大きいほど、前記力情報取得部から取得した前記力情報を小さく補正することにより補正力情報を生成する力情報補正部と、
前記力情報補正部で生成された前記補正力情報を前記マスタアームに提示する力情報提示部と、
を備えるマスタスレーブロボットの制御用集積電子回路を提供する。
前記態様によれば、作業者の操作及び作業者が見ている映像に対応した力提示を行うことができ、作業者が見ている画像と作業者が行っている操作とがさらに違和感なく対応させることができて、正確に作業を行うことができる。
(第1実施形態)
本発明の第1実施形態における、マスタスレーブロボット100の制御装置101を含むマスタスレーブロボット100の概要について説明する。
図1は、マスタスレーブロボット100を使った微細部品8の挿入作業の様子を示す。
図1に示すように、例えば、工場内のセル生産で、テレビ、DVDレコーダ、又は携帯電話のなどの機器10用のプリント基板の挿入口9に、微細部品8を取り付ける作業を例にとって説明する。
マスタスレーブロボット100のスレーブアーム3は、機器10が設置された作業台11の上部もしくは壁面に設置され、機器10の挿入口9に微細部品8を挿入する作業を行うロボットである。
スレーブアーム3の先端には、微細部品8を把持するハンド4が取り付けられている。
作業台11には、カメラなどの撮像装置6が配置され、微細部品8及び挿入口9を拡大して撮像し、ディスプレイ7に撮像した映像を映す。
力センサ5は、ハンド4の手首部に設置され、微細部品8が挿入口9又は機器10に接触した際に生じる反力を測定する。
作業者1は、撮像装置6で撮像された映像をディスプレイ7で確認しながらマスタアーム2を操作するとスレーブアーム3が動作する。さらに、力センサ5で計測した力を、スレーブアーム3からマスタアーム2へフィードバックすることで、作業者1は、微細部品8を直接操作している感覚でスレーブアーム3を操作することができる。
図2は、本発明の第1実施形態における、マスタスレーブロボット100のブロック図を示す。図2において、マスタスレーブロボット100は、マスタロボット102と、スレーブロボット103で構成されている。マスタロボット102は、マスタアーム2と、マスタアーム2の制御装置104とで構成されている。スレーブロボット103は、スレーブアーム3と、スレーブアーム3の制御装置105とで構成されている。
マスタアーム2の制御装置104は、スレーブアーム3の動作を生成し、スレーブロボット103で取得した力情報を補正して提示するマスタアーム2の制御装置である。スレーブアーム3の制御装置105は、スレーブアーム3の位置及び姿勢を制御するスレーブアーム3の制御装置である。
以下、この第1実施形態について詳細に説明する。
<マスタアームの制御装置の説明>
マスタアーム2の制御装置104は、マスタ制御装置本体部106と、マスタ周辺装置108とで構成されている。
<スレーブアームの制御装置の説明>
スレーブアーム3の制御装置105は、スレーブ制御装置本体部107と、スレーブ周辺装置109とで構成されている。
<マスタ制御装置本体部の説明>
マスタ制御装置本体部106は、マスタ動作情報取得部110と、撮像情報取得部111と、マスタ動作情報補正部112と、表示情報取得部の一例としての変形情報算出部113と、力情報補正部114と、力情報提示部115とで構成されている。
(マスタ動作情報取得部110)
マスタ動作情報取得部110は、マスタ入出力IF119からマスタアーム2の位置情報及び姿勢情報と、マスタ入出力IF119に内蔵されたタイマからの時間情報とが入力される。また、マスタ動作情報取得部110は、マスタ入出力IF119から取得した位置情報を時間情報で微分することによって、速度情報を取得する。また、マスタ動作情報取得部110は、姿勢情報を時間情報で微分することによって、角速度情報を取得する。図5に、マスタ動作情報取得部110で取得する時間情報と、位置情報と、姿勢情報と、速度情報と、角速度情報とを示す。これらの位置情報と、姿勢情報と、速度情報と、角速度情報とでマスタアーム2の動作情報(マスタ動作情報)を構成する。
マスタ動作情報取得部110は、取得したマスタアーム2の位置情報と、姿勢情報と、速度情報と、角速度情報と、時間情報とをマスタ動作情報補正部112及び力情報補正部114に出力する。
(撮像装置6)
撮像装置6は、スレーブアーム3が行う作業を撮像し、主に、ハンド4と、微細部品8と、挿入口9との付近を撮像する。撮像装置6は、撮像時の拡大率を変更することができる。また、撮像装置6を設置する位置又は姿勢を変更することができる。撮像装置6を設置する場合は、いかなる位置又は姿勢で設置することも可能であるが、被写体(特にハンド4と、微細部品8と、挿入口9と)が重ならずに写る位置、姿勢、被写体の移動、及び、変形の変化が捉えられる位置及び姿勢が必要である。図6A及び図6Bに示す例では、図6Aの位置及び姿勢の方が、図6Bの位置及び姿勢よりも被写体が重ならずに写り、移動する変化も捉えることができる。ディスプレイ7に映し出された映像をそれぞれ図6C及び図6Dに示す。図6Aの位置及び姿勢の方が、画面上のスレーブアーム3の移動及び微細部品8の変形がよく見えることわかる。
撮像装置6は、撮像装置6で撮像した撮像画像情報と、撮像時の拡大率情報と、撮像時の撮像装置6を設置する位置及び姿勢の情報である撮像装置位置情報とを、撮像情報として撮像情報取得部111に出力する。撮像装置位置情報は、図7に示すスレーブアーム2の座標系Σbsを用いて表現する。
また、撮像装置6は、図8に示すように作業者1がマスタアーム2を操作する方向(図8中の矢印A)とディスプレイ7の画面上で画面上のスレーブアーム3が動く方向(図8中の矢印B)とが同じ方向になるように設置する。
なお、ここでは、撮像装置6として2次元撮像を行う撮像装置を主に対象としたが、様々な方向を撮像できるように、3次元撮像装置又は2台の撮像装置を用いる方法なども可能である。
(撮像情報取得部111)
撮像情報取得部111には、撮像装置6から、撮像画像情報と、拡大率情報と、撮像装置位置情報と、マスタ入出力IF119に内蔵されたタイマより時間情報とが入力される。
図9に、撮像画像情報以外の撮像情報取得部111が取得する、拡大率情報と、撮像装置位置情報(撮像装置の姿勢情報を含む)と、時間情報との一例を示す。また、撮像画像情報は、ディスプレイ7に映し出された画像そのもののことを表す。ここで、撮像情報とは、撮像画像情報と、拡大率情報と、撮像装置位置情報とを表す。
なお、撮像情報取得部111は、マスタ入出力IF119を介して撮像装置6から撮像画像情報と、拡大率情報と、撮像装置位置情報とを取得することも可能である。
撮像情報取得部111は、取得した撮像画像情報と、拡大率情報と、撮像装置位置情報と、時間情報とを変形情報算出部113に出力する。
図9では、拡大率が時系列的に変わらない例を示したが、時系列的に拡大率が変わる例も可能である。例えば、微細部品8を把持した状態で広域に移動させる作業の後、コネクタへの組み付け作業を行う場合では、移動させる作業工程においては、広域を移すために、拡大率を低くする。組み付け作業を行う作業工程では、組み付け部分がよく見えるように、拡大率を高くする。このように、拡大率が時系列的に変化することも可能である。その場合の拡大率情報の一例を図10に示す。
(マスタ動作情報補正部112)
マスタ動作情報補正部112は、マスタ動作情報取得部110よりマスタアーム2の動作情報(マスタ動作情報)と時間情報とが入力される。取得したマスタアーム2の動作情報を基にサンプリング周期毎のマスタアーム2のハンド4の移動量を算出し、算出した移動量にゲインを掛け、補正マスタ動作情報(移動量指令値)としてスレーブ制御部118に出力する。
マスタ動作情報補正部112によるマスタアーム2のハンド4の移動量の算出方法について説明する。図5で表されるマスタアーム2の動作情報は、図11の原点Oを基準としたベース座標系Σにおける位置及び姿勢を表している。この動作情報を、ハンド4の原点Oを基準としたハンド座標系Σにおける移動量にマスタ動作情報補正部112で変換する。つまり、ベース座標系Σにおけるサンプリング周期毎の位置及び姿勢の移動量dに変換行列をマスタ動作情報補正部112で掛けることによって、ハンド座標系Σにおけるサンプリング周期毎の位置及び姿勢の移動量dをマスタ動作情報補正部112で算出する。ここで、移動量dとは、時点tの位置及び姿勢pから1サンプリング時間経過した時点tでの位置及び姿勢pとの差を表し、d=Δp=p−pである。
次に、マスタ動作情報補正部112による移動量指令値の算出方法を説明する。上述したハンド座標系Σにおけるサンプリング周期毎の位置及び姿勢の移動量dの各要素(位置(x,y,z)及び姿勢(r,r,r))に対して、ゲインk(例えば、0.1)をマスタ動作情報補正部112で掛けることによって、補正マスタ動作情報(移動量指令値d)をマスタ動作情報補正部112で算出する。ゲインkは、スレーブアーム2の移動をマスタアーム2の移動に対して拡大する場合には、1より大きい値にマスタ動作情報補正部112で設定し、縮小する場合には、1より小さい値にマスタ動作情報補正部112で設定する。ゲインkは、要素毎に定数をマスタ動作情報補正部112で設定することができ、マスタ入出力IF119を用いて、作業者1がマスタ動作情報補正部112に入力することができる。
図12に補正マスタ動作情報と、時間情報との一例を示す。
マスタ動作情報補正部112は、算出した補正マスタ動作情報と、時間情報とをスレーブ制御部118に出力する。
(変形情報算出部113)
変形情報算出部113は、撮像情報取得部111より撮像画像情報と、拡大率情報と、撮像装置位置情報と、時間情報とが入力され、スレーブ動作情報取得部116よりスレーブ動作情報と、時間情報とが入力される。取得したスレーブ動作情報と撮像情報とを基に、ディスプレイ7の画面上でのスレーブアーム3の動作情報(画面上スレーブ動作情報と呼ぶ)、又は、ディスプレイ7の画面上での対象物(微細部品8)又は被対象物(挿入口9)が柔軟物であるときの変形情報(画面上柔軟物変形情報と呼ぶ)を以下のように算出する。
(i)画面上スレーブ動作情報のみ算出する場合
変形情報算出部113による画面上スレーブ動作情報の算出方法について説明する。画面上スレーブ動作情報とは、ディスプレイ7に映し出された画面上でのスレーブアーム3の動作情報のことを表す。まず、図7に示すスレーブベース座標系Σbsで表されるスレーブ動作情報を、図7に示す撮像装置6の座標系Σで表されるスレーブ動作情報に変形情報算出部113で変換する。スレーブベース座標系Σbsで表される撮像装置位置情報を用いて撮像装置の座標系Σに変形情報算出部113で変換する。次に、撮像装置6の座標系Σで表されるスレーブ動作情報に対して、拡大率情報を掛けることによって画面上スレーブ動作情報を変形情報算出部113で算出する。また、拡大率情報に関して、撮像装置6を設置した位置からスレーブアーム2を撮像した際に、撮像装置6の座標系Σで表されるスレーブアーム2の移動量と画面上でのスレーブアーム2の移動量とが同じ量であるように拡大率を変形情報算出部113で調整し、その拡大率を1とするように変形情報算出部113でキャリブレーションを行う必要がある。つまり、図13に示すスレーブアーム3の移動量Aと画面上のスレーブアーム3の移動量Bとが同じ距離になるときの拡大率を1と変形情報算出部113で定義する。画面上スレーブ動作情報の一例は、図5で表されるような動作情報である。なお、ここでは、上述したように、実際のスレーブの移動量Aと画面上のスレーブの移動量Bとが同じになるときを拡大率が1であると定義し、これを基準としているが、変形情報算出部113において、他の拡大倍率のときを拡大率が1であると定義して、これを基準とすることも可能である。例えば、最も縮小しているときを拡大率が1であると定義することによって、柔軟物が柔らかく、とても変形する場合に大きく力を加えてもらうように誘導することができ、大変有効である。また、最も拡大しているときを拡大率が1であると定義することによって、柔軟物が固く、あまり変形しない場合に大きく力を加えすぎないように防止することができ、有効である。このように、作業又は対象物に応じて、基準を変形情報算出部113で変更することができる。
なお、撮像画像情報を基に画像処理を用いて画面上スレーブ動作情報を変形情報算出部113で算出する方法も可能である。具体的には、画面上のスレーブアーム3のハンド4の先端を検出し、その先端の動作情報を画面上スレーブ動作情報として変形情報算出部113で算出する。
(ii)画面上柔軟物変形情報のみ算出する場合
変形情報算出部113による画面上柔軟物変形情報の算出方法について説明する。画面上柔軟物変形情報とは、ディスプレイ7に映し出された画面上での柔軟物の変形情報のことを表す。
微細部品8の挿入作業について、図14A、図14B、及び図14Cを用いて説明する。図14A〜図14Cは、ディスプレイ7の画面上で挿入方向に、ハンド4で把持した微細部品8が進み、微細部品8をコネクタ9に挿入している状態を示す。ただし、微細部品8の変形がわかりやすいように、ディスプレイ7に映し出される表示画像について、図1と比較して、挿入方向を約90度回転させて表示している。図14Aは、微細部品8とコネクタ9とが接触していない状態を示す。図14Bは、微細部品8とコネクタ9とが接触した時点である。図14Cは、コネクタ9に微細部品8を挿入し、微細部品8が曲がっている時点である。画像処理を用いて微細部品8の端点A及び端点Bを変形情報算出部113で検出する。一例として、微細部品8の端点Aはハンド4から最も遠い先端(コネクタ9に最初に挿入される先端)とし、端点Bはハンド4に最も近い基端とする。検出した端点A及び端点Bとの挿入方向での距離を変形情報算出部113で検出する。図14Cでは、端点Aと端点Bとの破線で示される直線の距離(端点Aと端点Bとの最短距離)Lを変形情報算出部113で検出する。検出した距離Lを用いて、微細部品8が曲がっていない時点の距離L10からの変化分(L10−L)を画面上柔軟物変形情報として変形情報算出部113で検出する。微細部品8が曲がっていない時点における端点A及び端点Bとの挿入方向での距離L10を、図14A又は図14Bの時点で変形情報算出部113でキャリブレーションする必要がある。具体的には、図14A又は図14Bの時点における端点Aと端点Bとの最短距離Lを初期距離L10として変形情報算出部113の内部記憶部(図示せず)に記憶する。
また、微細部品8の挿入作業以外でも、剛体の医療器具を柔軟物の臓器に挿入する作業のような、対象物が剛体であり被対象物が柔軟物である場合においても、変形情報算出部113で画面上柔軟物変形情報を算出することが可能である。図15A、図15B、及び図15Cを用いて説明する。図15A〜図15Cは、ディスプレイ7の画面上で挿入方向に、ハンド4で把持した剛体対象物12が進み、剛体対象物12を柔軟被対象物13に挿入している状態である。ただし、柔軟被対象物13の変形がわかりやすいように、ディスプレイ7に映し出される表示画像について、図1と比較して、挿入方向を約90度回転させて表示している。図15Aは、剛体対象物12と柔軟被対象物13とが接触していない状態を示す。図15Bは、剛体対象物12と柔軟被対象物13とが接触した時点である。図15Cは、柔軟被対象物13に剛体対象物12を挿入し、柔軟被対象物13が曲がっている時点である。画面上において画像処理を用いて、剛体対象物12が柔軟被対象物13に接している面の縁Aeを変形情報算出部113で検出する。検出した縁Aeの挿入方向に対する変形した距離(長さ)Lを変形情報算出部113で計測する。
このとき、計測する距離としては、縁Aeにおいて剛体対象物12が接している部分の変形している距離Lを変形情報算出部113で計測する。検出した距離Lを用いて、柔軟被対象物13が曲がっていない時点の距離L20からの変化分(L20−L)を画面上柔軟物変形情報として変形情報算出部113で検出する。柔軟被対象物13が曲がっていない時点における縁Aeの挿入方向での位置を、図15A又は図15Bの時点で変形情報算出部113でキャリブレーションする必要がある。具体的には、図15A又は図15Bの時点における距離Lを初期距離L20として変形情報算出部113内の内部記憶部に記憶する。なお、計測する距離Lの算出方法として、縁Aeの最も変形している部分の距離又は変形している部分の距離の平均値などを変形情報算出部113で計測することも可能である。具体的に、図16A及び図16Bを用いて説明する。最も変形している部分とは、図16Aに示す破線Bfから縁Afまでの距離Lfが最も長い部分のことを示し、ここでは、図示している距離Lfを変形量とする。変形している部分の距離Lfの平均値とは、図16Bの縁Afにおいて、一定間隔毎に破線Bfからの距離を変形情報算出部113で求め、それらの平均値を変形情報算出部113で変形量とする。
また、画面上柔軟物変形情報の一例としては、図5で表されるような動作情報である。
また、図14Cの距離Lと図15Cの距離Lとの両方が存在した場合には、様々な方法を用いることができる。第一に、距離Lと距離Lとの和を変形情報算出部113で求めて変形量とする。この方法を用いることによって、変形情報算出部113で変形量が大きく算出されるので、作業者1が距離Lと距離Lとの変形を見ながら作業を行っている場合に有効である。第二に、距離Lと距離Lとを変形情報算出部113で比較し、大きいほうの値を変形量として変形情報算出部113で用いる。この方法を用いることによって、作業者1が変形量の大きい方を見ながら作業を行っている場合に有効である。また、これらの方法に加えて、変形量を変形情報算出部113で算出する際に、閾値(例えば、1mm)を変形情報算出部113で設定し、その閾値を超えていないと変形情報算出部113で判断する場合は、変形情報算出部113で変形量を0とするなどして、変形量を算出する際の計測誤差又は推定誤差を省くことも可能である。
また、画面上柔軟物変形情報に関して、変形度合を変形情報算出部113で求めてから画面上柔軟物変形情報を変形情報算出部113で算出することも可能である。図15Cに示す例について、図17を用いて説明する。
まず、図17において、変形前の柔軟被対象物13の面積に対する斜線で示す変形した部分の面積Aの割合を、変形度合として変形情報算出部113で算出する。
次に、変形前の柔軟被対象物13の長さL13を、算出した変形度合に変形情報算出部113で掛け、求められた値を画面上柔軟物変形情報として変形情報算出部113で算出する。このように変形度合を変形情報算出部113で算出することによって、変形部分の長さが正確に計測することができない場合においても、画面上柔軟物変形情報を変形情報算出部113で算出することができる。
また、画面上スレーブ動作情報と画面上柔軟物変形情報との使い分けについて説明する。画面上柔軟物変形情報を算出する際は、画像処理が必要となる。そのため、マスタアーム2の制御装置104において画像処理を行うことができないと変形情報算出部113で判断する場合は、画面上スレーブ動作情報を変形情報算出部113で使用することによって、複雑な処理を用いることなく、画面上柔軟物変形情報の代わりに画面上スレーブ動作情報を使用することができる。
また、上述した選択指針の他に、変形量を変形情報算出部113で算出する際に、閾値(例えば、1mm)を変形情報算出部113で設定し、その閾値を超えていないと変形情報算出部113で判断する場合は、画面上スレーブ動作情報を変形情報算出部113で使用することも可能である。このように変形情報算出部113で選択することによって、変形量が計測しにくいところは画面上スレーブ動作情報を変形情報算出部113で使用することができる。また、この閾値を変形情報算出部113で設定し、変形情報算出部113で自動的に選択することも可能である。
(iii)画面上スレーブ動作情報、画面上柔軟物変形情報の両方算出する場合
変形情報算出部113により画面上スレーブ動作情報及び画面上柔軟物変形情報の算出する方法は、上述した方法と同様である。画面上スレーブ動作情報をxとし、画面上柔軟物変形情報をxとし、求める変形情報をxとすると、画面上スレーブ動作情報と画面上柔軟物変形情報との加重平均として、x=ax+bxを変形情報算出部113で算出して変形情報を生成する。ここで、a、bは重みゲインであり、a+b=1となるように変形情報算出部113で設定する。重みゲインaの値を大きくすると画面上スレーブ動作情報の占める割合が大きくなり、重みゲインbの値を大きくすると画面上柔軟物変形情報の占める割合が大きくなる。重みゲインa、bの値は、作業者1がマスタ入出力IF119を用いて変形情報算出部113に入力する。
また、算出した変形情報の一例としては、図5で表されるような動作情報である。
また、変形情報として使用する情報を、画面上スレーブ動作情報又は画面上柔軟物変形情報の少なくとも1つ以上の情報を変形情報算出部113で選択する場合は、作業者1がマスタ入出力IF119を用いて変形情報算出部113に入力する。
変形情報算出部113は、算出した画面上スレーブ動作情報又は画面上柔軟物変形情報の少なくとも1つ以上の情報と時間情報とを力情報補正部114に出力する。
なお、変形情報算出部113から出力された撮像画像情報が表示部126に入力される。表示部126では、入力された撮像画像情報をディスプレイ7に表示する。
(力情報補正部114)
力情報補正部114は、マスタ動作情報取得部110よりマスタ動作情報と時間情報とが入力され、変形情報算出部113より画面上スレーブ動作情報又は画面上柔軟物変形情報のどちらか1つ以上の情報と時間情報とが入力され、力情報取得部117より力情報と時間情報とが入力される。力情報補正部114は、取得したマスタ動作情報と画面上スレーブ動作情報又は画面上柔軟物変形情報のどちらか1つ以上の情報とを基に力情報を補正する。
力情報の補正方法について説明する。まず、力情報補正部114で取得したマスタ動作情報から、サンプル周期毎の位置及び姿勢の移動量dを力情報補正部114で求める。同様に、力情報補正部114で取得した変形情報(画面上スレーブ動作情報及び画面上柔軟物変形情報のうちのどちらか1つ以上の情報)から、柔軟物の変形量dを力情報補正部114で求める。例えば、図14Cの場合では、スレーブロボット103が把持する柔軟物8の長さが3cmのとき、スレーブアーム3を1cm移動させた結果、柔軟物8の長さが2cmに縮んだとすると、変形量(移動量)dは1cmである。また、例えば、図15Cの場合では、柔軟被対象物13が変形している範囲の長さ及び面積が、変形量d(移動量d)に相当する。求めた移動量dと変形量dとの比を力情報補正部114で求めて、求めた値にゲインを力情報補正部114で掛け、さらに、求めた値に、取得した力情報を力情報補正部114で掛けることによって、力情報を力情報補正部114で補正する。移動量と変形量との比の求め方としては、力情報補正部114でd/dを求める。すなわち、力情報補正部114は、マスタ動作情報よりマスタアーム2の移動量dを算出する。次いで、力情報補正部114は、変形情報算出部113より算出された柔軟物の変形量dを取得し、前記移動量dを前記変形量dにより除算する。次いで、力情報補正部114は、除算した結果(d/d)に補正係数及び力情報を乗算することにより、補正力情報を生成する。
図1のように微細部品8の導入作業を行う場合において、一例として、撮像装置6の拡大率を変えながら作業を行う。例えば、挿入位置まで微細部品8を移動させる工程では、周りの治具などとの干渉をチェックしながら、おおまかに作業を行うので、画像を縮小して作業を行う。また、挿入作業を行う工程では、微細部品8又はコネクタ9の状態を詳細に確認しながら作業を行うので画像を拡大して作業を行う。ここでは、拡大する場合と縮小する場合それぞれ図を用いて説明する。
(I)画像を拡大して作業を行う場合
画像を拡大して作業を行う場合について、図18を用いて説明する。図18は、撮像装置6で拡大して撮像した画像をディスプレイ7に映しており、作業者1は、その画像を見ながらマスタアーム2を操作して作業を行う。このように作業をしているときに問題となるのが、作業者1は、拡大されたハンド7又は微細部品8を見ながら作業を行っているので、作業者1には微細部品8の変形量が大きく見えてしまう。すると、作業者1は、挿入するのに必要な力をマスタアーム2に加えることができず、微細部品8をしっかり挿入できないことがある。このような問題に対して、求めた比(d/d)を力情報に掛けて力情報補正部114で補正し、補正された情報に基づき作業者1に力を提示することによって、力センサ5で取得した力情報(図18中のF)より小さい力(図18中のF)をマスタアーム2及びディスプレイ7を介して作業者1に提示することとなる。そのため、作業者1は、接触度合が小さいと判断し、より大きな力で微細部品8をコネクタ9に接触させようとするため、挿入に必要な力をマスタアーム2に加えることができる。この例のように、作業を行うときに適切な力を印加することが必要な作業の場合において、比をd/dにより求めることによって、変形情報に応じた適切な力を印加することができる。
(II)画像を縮小して作業を行う場合
画像を縮小して場合について、図19を用いて説明する。図19は、撮像装置6で縮小して撮像した画像をディスプレイ7に映しており、作業者1はその画像を見ながらマスタアーム2を操作して作業を行う。このように作業をしているときに問題となるのが、作業者1は、縮小されたハンド7又は微細部品8を見ながら作業を行っているので、作業者1には微細部品8の変形量があまり見えず、作業に必要な力以上を印加してしまい、微細部品8又はコネクタ9に過負荷をかけてしまうことがある。このような問題に対して、求めた比(d/d)を力情報に掛けて力情報補正部114で補正し、マスタアーム2及びディスプレイ7を介して作業者1に力を提示することによって、力センサ5で取得した力情報(図19中のF)より大きい力(図18中のF)を提示することとなる。そのため、作業者1は、接触度合が大きいと判断し、より小さな力で微細部品8をコネクタ9に接触させようとするため、過負荷の生じない力をマスタアーム2に加えることができる。この例のように、作業を行うときに過負荷を加えてはいけない作業の場合において、比をd/dにより求めることによって、変形情報に応じた適切な力を印加することができる。
上述したように求めた比(d/d)に対して、ゲインαを力情報補正部114で掛けて、求められた値を、取得した力情報に力情報補正部114で掛けることによって、補正力情報を力情報補正部114で生成する。ここで、比の求め方の選択又はゲインαは、作業者1がマスタ入出力IF119を用いて力情報補正部114に入力することができる。
力情報補正部114は、生成した補正力情報と時間情報とを力情報提示部115に出力する。
なお、力補正のタイミングについて、作業開始時から作業終了時まで力補正を力情報補正部114で行う。また、求めた比(d/d)を用いて、力補正をするかしないかを力情報補正部114で判断することも可能である。一例として、求めた比(d/d)が、ある範囲(0.8〜1.2)を超えたと力情報補正部114で判断したときに力情報補正部114で補正を行い、前記範囲内であると力情報補正部114で判断したときは力情報補正部114で補正を行わないとすることもできる。このように、範囲を設けて力補正するかしないかを力情報補正部114で判断することによって、測定誤差又は推定誤差などの影響を省くことができ、力の補正が必要な作業時に力情報補正部114で補正をかけることができる。
また、力補正の他の作業への適用例として、図20、及び図21を用いて拡大する場合と縮小する場合を説明する。
(III)画像を拡大して作業を行う場合
画像を拡大して作業を行う場合について、図20を用いて説明する。図20は、スレーブアーム3が柔軟対象物14をハンド4で把持して運ぶ作業を行っている。そのとき、撮像装置6で拡大して撮像した画像をディスプレイ7に映しており、作業者1はその画像を見ながらマスタアーム2を操作し作業を行う。このように作業をしているときに問題となるのが、作業者1は、拡大されたハンド4又は柔軟対象物14を見ながら作業を行っているので、柔軟対象物14の変形量が作業者1には大きく見え、把持するのに必要な把持力を作業者1がマスタアーム2に加えることができず、柔軟対象物14をハンド4でしっかり把持できないことがある。このような問題に対して、求めた比(d/d)を力情報に掛けて力情報補正部114で補正し、マスタアーム2及びディスプレイ7を介して作業者1に力を提示することによって、力センサ5で取得した力情報より小さい力を提示することとなる。そのため、作業者1は、接触度合が小さいと判断し、より大きな力で微細部品8をコネクタ9に接触させようとするため、把持に必要な力をマスタアーム2に加えることができる。この例のように、作業を行うときに適切な力を印加することが必要な作業の場合において、比をd/dにより求めることによって、変形情報に応じた適切な力を印加することができる。
(IV)画像を縮小して作業を行う場合
画像を縮小して場合について、図21を用いて説明する。図21は、スレーブアーム3のハンド4で柔軟対象物14を剛体被対象物15に対して貼り付ける作業を行っている。そのとき、撮像装置6で縮小して撮像した画像をディスプレイ7に映しており、作業者1はその画像を見ながらマスタアーム2を操作し作業を行う。このように作業をしているときに問題となるのが、作業者1は、縮小されたハンド4又は柔軟対象物14を見ながら作業を行っているので、作業者1には柔軟対象物14の変形量があまり見えず、貼り付ける作業に必要な力以上を印加してしまい、柔軟対象物14又は剛体被対象物15に過負荷をかけてしまうことがある。このような問題に対して、求めた比(d/d)を力情報に掛けて力情報補正部114で補正し、マスタアーム2及びディスプレイ7を介して作業者1に力を提示することによって、力センサ5で取得した力情報より大きい力を提示することとなる。そのため、作業者1は、接触度合が大きいと判断し、より小さな力で柔軟対象物14を剛体被対象物15に接触させようとするため、過負荷の生じない力をマスタアーム2に加えることができる。この例のように、作業を行うときに過負荷を加えてはいけない作業の場合において、比をd/dにより求めることによって、変形情報に応じた適切な力を印加することができる。
なお、前記説明では、力情報補正部114により力情報の大きさを補正したが、力情報の更新周期を力情報補正部114で補正する方法も可能である。上述した説明では、一定周期(例えば、1msec)で力情報を更新している。それに対して、力情報補正部114で更新周期を速くしたり又は遅くしたり変更することもできる。具体的には、力情報の大きさを大きくしたい場合には、力情報の大きさを変えずに、力情報補正部114で力情報の更新周期を遅くする。より具体的には、力情報の大きさを2倍にしたい場合には、例えば更新周期を2倍にする。一方、力情報の大きさを小さくしたい場合には、力情報の大きさを変えずに、力情報補正部114で力情報の更新周期を速くする。より具体的には、力情報の大きさを1/2倍にしたい場合には、例えば更新周期を1/2倍にする。
力情報の更新周期を変更することが、力情報の大きさを変更することと同じ効果が得られる理由について、図22のグラフを用いて説明する。図22は、横軸が時間情報を表し、縦軸が力情報を表し、力情報の時系列データを表す。横軸の数字は時間情報を表す。力情報における黒丸は更新周期が1msecのデータを表し、白丸は更新周期が2msecのデータを表す。力情報をFと表すと、更新周期が1msecの場合はk=1,2,3,・・・であり、更新周期が2msecの場合はk=2,4,6,・・・である。力情報の更新周期毎の変位をΔFと表す。例えば、時間情報が2のときの力情報の更新周期毎の変位ΔFについて、更新周期が1msecのときはΔF=F−Fとして力情報補正部114で算出し、更新周期が2msecのときはΔF=F−Fとして力情報補正部114で算出する。よって、更新周期が1msecのΔFと比較して、更新周期が2msecのΔFは力情報の変位が大きくなる。この例のように、更新周期を遅くすると力情報の変位が大きくなるので、作業者1は力情報が大きくなったように感じる。これは、作業者1が力覚を感じるときに力の変位を感じることに起因する。
このように力情報を補正する際に、力情報の大きさを補正するのではなく、力情報の更新周期を力情報補正部114で補正することも可能である。補正する際に力情報の大きさは変化させないので、力情報を大きく変化させすぎてしまうことがない。また、力情報の大きさを補正することができないシステムの場合においても、力情報の大きさを補正することと同様の効果を得ることができる。
力情報を補正する大きさに関して、拡大率が1で力情報を補正せずそのまま補正力情報とする場合を基準に、大きくする、小さくする、と表現する。
また、その基準値について、作業を行う前にキャリブレーションを行って設定することができる。つまり、作業を行う前に作業者1がマスタアーム2を操作し、基準値を設定することができる。操作中に力情報を補正し、適切に操作できる補正量のときの補正力情報を基準値として設定する。基準値は、作業者1がマスタ入出力IF119を用いて、入力することができる。このようにキャリブレーションを行うことによって、個人差又はマスタアームの差などを吸収することができる。
また、補正力情報を生成する際の補正量について、上限値又は下限値の閾値を設定することができる。閾値は、作業者1がマスタ入出力IF119を用いて、入力することができる。このように閾値を設定することによって、補正力情報を小さく補正しすぎて作業者1が力を感じられなくなること、又は、補正力情報を大きく補正しすぎて作業者1が大きな力に耐えられなくなることを防ぐことができる。
補正方法についても、線形に補正するだけでなく、多項式、双曲線、又は、対数など様々な補正方法を選択することができる。補正方法は、作業者1がマスタ入出力IF119を用いて、選択することができる。このように補正方法を選択することによって、作業者1の力の知覚が線形に変化しない場合においても対応することができる。
また、補正量を対象物の硬さ、又は、柔らかさで変更することができる。対象物の硬さを対象物の材料などから検出し、硬さに応じて補正量を調整する。例えば、柔らかくなるほど補正量を大きくする。このように補正量を調整することによって、対象物の硬さ、又は、柔らかさによらず、均一の作業を行うことができる。
(力情報提示部115)
力情報提示部115は、力情報補正部114より補正力情報と時間情報とが入力される。力情報提示部115では、取得した補正力情報を、マスタアーム2を介して作業者1に提示するために、補正力情報をマスタアーム2が出力できるように指令値を生成する。
指令値の生成方法について説明する。マスタアーム2として力制御可能なアームを使用する場合は、補正力情報をそのまま指令値として力情報提示部115で用いる。マスタアーム2として力制御ができず、位置制御が可能なアームを使用する場合は、フックの法則を用いて補正力情報を位置情報に力情報提示部115で変換し、変換した位置情報を力情報提示部115で指令値とする。
力情報提示部115は、生成したマスタアーム2への指令値を、サンプリング周期毎に、マスタ入出力IF119及びマスタモータドライバ120を介してマスタアーム2に出力する。
<スレーブ制御装置本体部の説明>
スレーブ制御装置本体部107は、スレーブ動作情報取得部116と、力情報取得部117と、スレーブ制御部118とで構成されている。
(スレーブ動作情報取得部116)
スレーブ動作情報取得部116は、スレーブ入出力IF121からスレーブアーム3の位置情報及び姿勢情報と、スレーブ入出力IF121に内蔵されたタイマからの時間情報とが入力される。また、スレーブ動作情報取得部116は、スレーブ入出力IF121から取得した位置情報を時間情報で微分することによって、速度情報を取得する。また、スレーブ動作情報取得部116は、姿勢情報を時間情報で微分することによって、角速度情報を取得する。スレーブ動作情報取得部116で取得する時間情報と、位置情報と、姿勢情報と、速度情報と、角速度情報とは、図5と同様の形式である。
スレーブ動作情報取得部116は、取得したスレーブアーム3の位置情報と、姿勢情報と、速度情報と、角速度情報と、時間情報とを変形情報算出部113に出力する。これらの位置情報と、姿勢情報と、速度情報と、角速度情報とでスレーブアーム3の動作情報(スレーブ動作情報)を構成する。
(力センサ5)
力センサ5は、図1に示すように、スレーブアーム3のハンド4の手首部に設置され、対象物が被対象物に接触した際に生じる反力を測定する。ここでは、力3軸トルク3軸の計6軸計測することができる力センサを使用する。なお、1軸以上計測可能な力センサなら任意の力センサを使用することができる。また、力センサ5は、例えば、ひずみゲージ式の力覚センサを用いることによって実現する。
力センサ5で計測した力情報は、力情報取得部117に出力する。
(力情報取得部117)
力情報取得部117は、力センサ5から力情報と、スレーブ入出力IF121に内蔵されたタイマからの時間情報とが入力される。図23に、力情報と、時間情報とを示す。
なお、力情報取得部117は、スレーブ入出力IF121を介して力センサ5から力情報を取得することも可能である。
力情報取得部117は、取得した力情報と、時間情報とを力情報補正部114に出力する。
(スレーブ制御部118)
スレーブ制御部118は、マスタ動作情報補正部112から、補正マスタ動作情報と、時間情報とが入力される。スレーブ制御部118は、取得した補正マスタ動作情報に従い、スレーブアーム3が移動できるように、指令値を生成する。
ここで、スレーブ制御部118による指令値の生成方法について説明する。スレーブ制御部118で取得した補正マスタ動作情報がハンド4の移動量に関する情報であるので、まず、スレーブアーム3のハンド4の座標系において、取得した移動量分移動する位置及び姿勢をスレーブ制御部118で算出する。スレーブ制御部118で算出したハンド4座標系における位置及び姿勢について、スレーブアーム3のベース座標系における位置及び姿勢にスレーブ制御部118で変換する。次いで、変換したスレーブアーム3のベース座標系における位置及び姿勢に移動するような指令値をスレーブ制御部118で生成する。
スレーブ制御部118は、生成したスレーブアーム3への指令値を、サンプリング周期毎に、スレーブ入出力IF121及びスレーブモータドライバ122を介して、スレーブアーム3に出力する。
<マスタ周辺装置の説明>
マスタ周辺装置108は、マスタ入出力IF119と、マスタモータドライバ120とで構成されている。
(マスタ入出力IF119)
マスタ入出力IF119は、力情報提示部115から入力された指令値をマスタモータドライバ120に出力する。また、マスタ入出力IF119は、マスタアーム2の各関節軸のエンコーダから入力された値から、マスタアーム2の位置情報及び姿勢情報をエンコーダ内部の演算部(図示せず)で求め、位置情報及び姿勢情報とマスタ入出力IF119に内蔵されたタイマからの時間情報とを、マスタ入出力IF119からマスタ動作情報取得部110に出力する。マスタ入出力IF119に内蔵されたタイマからの時間情報を、撮像情報取得部111に出力する。また、マスタ入出力IF119は、図24に示すように、入力部119Aと出力部119Bとによって構成される。入力部119Aは、入力IFとなっており、キーボード又はマウス又はタッチパネル又は音声入力などにより作業者1が項目を選択する場合、又は、キーボード又はマウス又はタッチパネル又は音声入力などにより作業者1が数字を入力する場合などに用いられる。出力部119Bは、出力IFとなっており、取得した情報などを外部に出力する場合又はディスプレイ7などに表示する場合などに用いられる。
(マスタモータドライバ120)
マスタモータドライバ120は、マスタ入出力IF119から取得した指令値を基に、マスタアーム2を制御するために、マスタアーム2の各関節軸のモータへの指令値をマスタアーム2に出力する。
<スレーブ周辺装置の説明>
スレーブ周辺装置109は、スレーブ入出力IF121と、スレーブモータドライバ122とで構成されている。
(スレーブ入出力IF121)
スレーブ入出力IF121は、スレーブ制御部118から入力された指令値をスレーブモータドライバ122に出力する。また、スレーブ入出力IF121は、スレーブアーム3の各関節軸のエンコーダから入力された値から、スレーブアーム3の位置情報及び姿勢情報をエンコーダ内部の演算部(図示せず)で求め、位置情報及び姿勢情報とスレーブ入出力IF121に内蔵されたタイマからの時間情報とを、スレーブ入出力IF121からスレーブ動作情報取得部116に出力する。スレーブ入出力IF121に内蔵されたタイマからの時間情報を、力情報取得部117に出力する。また、スレーブ入出力IF121は、マスタ入出力IF119と同様に、図24に示す構成の入力部121Aと出力部121Bとによって構成される。入力部121Aは、入力IFとなっており、キーボード又はマウス又はタッチパネル又は音声入力などにより作業者1が項目を選択する場合、又は、キーボード又はマウス又はタッチパネル又は音声入力などにより作業者1が数字を入力する場合などに用いられる。出力部121Bは、出力IFとなっており、取得した情報などを外部に出力する場合又はディスプレイ7などに表示する場合などに用いられる。
(スレーブモータドライバ122)
スレーブモータドライバ122は、スレーブ入出力IF121から取得した指令値を基に、スレーブアーム3を制御するために、スレーブアーム3の各関節軸のモータへの指令値をスレーブアーム3に出力する。
<マスタアーム2の説明>
マスタアーム2において、マスタ入出力IF119に内蔵されたタイマを利用して、ある一定時間毎(例えば、1msec毎)に、マスタアーム2の動作情報をマスタアーム2の各エンコーダを用いてエンコーダ内部の演算部で求めて、マスタ入出力IF119に出力する。また、マスタアーム2は、マスタモータドライバ120からの指令値に従って制御される。
マスタアーム2は、各関節にモータとエンコーダとが配置されてあり、所望の位置及び姿勢に制御することができる。ここでは、6関節を有する6自由度の多リンクマニピュレータとする。なお、マスタアーム2の関節数及び自由度は、第1実施形態の数に限られるわけではなく、1以上のいかなる数でも可能である。
<スレーブアームの説明>
スレーブアーム3において、スレーブ入出力IF121に内蔵されたタイマを利用して、ある一定時間毎(例えば、1msec毎)に、スレーブアーム3の動作情報をスレーブアーム3の各エンコーダを用いてエンコーダ内部の演算部で求めてスレーブ入出力IF121に出力する。また、スレーブアーム3は、スレーブモータドライバ122からの指令値に従って制御される。
スレーブアーム3は、各関節にモータとエンコーダとがあり、所望の位置及び姿勢に制御することができる。ここでは、スレーブアーム3は、6関節を有する6自由度の多リンクマニピュレータとする。なお、スレーブアーム3の関節数及び自由度は、第1実施形態の数に限られるわけではなく、1以上のいかなる数でも可能である。
<フローチャート>
第1実施形態のマスタスレーブロボット100の操作手順を図25及び図26のフローチャートを用いて説明する。
図25は、第1実施形態のマスタスレーブロボット100の操作の一例を示す。
まず、ステップS201では、作業者1がディスプレイ7に映し出された画像を見ながら、マスタアーム2を把持し、操作し、ステップS202に進む。
次に、ステップS202では、マスタ動作情報補正部112において、取得したマスタ動作情報を補正し、スレーブアーム3が移動するための補正マスタ動作情報を生成し、ステップS203に進む。
次に、ステップS203では、取得した補正マスタ動作情報に従いスレーブアーム3が移動して作業を行い、ステップS204に進む。
次に、ステップS204では、スレーブアーム3の手先に取り付けられた力センサ4で作業時に生じる力情報を検出し、検出した力情報を力情報取得部117で取得し、ステップS205に進む。
次に、ステップS205では、マスタ動作情報と画面上スレーブ動作情報及び画面上柔軟物変形情報の少なくとも1つ以上の情報とに基づいて、力情報取得部117で取得した力情報を力情報補正部114で補正して補正力情報を生成し、ステップS206に進む。
次に、ステップS206では、力情報補正部114で生成した補正力情報に従いマスタアーム2が力提示を行い、作業者1に力が提示される。これで、一連の操作を終了する。
図26では、図25で表されるフローチャートのステップS204の力情報取得と、ステップS205の補正力情報生成と、ステップS206の力提示とについて、詳しく説明する。
まず、ステップS301では、スレーブ動作情報取得部116においてスレーブ動作情報を取得し、撮像情報取得部111において撮像情報を取得し、ステップS302に進む。
次に、ステップS302では、変形情報算出部113において、画面上スレーブ動作情報を算出するかしないかを選択する。画面上スレーブ動作情報を算出すると変形情報算出部113で選択する場合はステップS303に進み、画面上スレーブ動作情報を算出しないと変形情報算出部113で選択する場合はステップS306に進む。ステップS302での判断(選択)基準の一例としては、マスタアーム2の制御装置104において、画像処理を行うことができると変形情報算出部113で判断する場合はステップS306に進み、画像処理を行うことができないと変形情報算出部113で判断する場合はステップS303に進む。
また、他の判断基準の例としては、画面上での変形量が小さい(変形量が閾値より小さい)と変形情報算出部113で判断する場合はステップS303に進み、画面上での変形量が大きい(変形量が閾値より大きい)と変形情報算出部113で判断する場合はステップS306に進む。
次に、ステップS303では、変形情報算出部113において、スレーブ動作情報と撮像情報とを用いて、画面上でのスレーブアーム3の動作情報である画面上スレーブ動作情報を生成し、ステップS304に進む。
次に、ステップS304では、変形情報算出部113において、画面上柔軟物変形情報を算出するかしないかを選択する。画面上柔軟物変形情報を算出すると変形情報算出部113で選択する場合はステップS305に進み、画面上柔軟物変形情報を算出しないと変形情報算出部113で選択する場合はステップS308に進む。
次に、ステップS305では、変形情報算出部113において、撮像情報を用いて、画像処理を行い、画面上での柔軟物の変形情報である画面上柔軟物変形情報を生成し、ステップS315に進む。
次に、ステップS315では、変形情報算出部113において、画面上スレーブ動作情報と画面上柔軟物変形情報との加重平均を算出し、算出した加重平均を変形情報として生成し、ステップS308に進む。
次に、ステップS306では、変形情報算出部113において、画面上柔軟物変形情報を算出するかしないかを選択する。画面上柔軟物変形情報を算出すると変形情報算出部113で選択する場合はステップS307に進み、画面上柔軟物変形情報を算出しないと変形情報算出部113で選択する場合はステップS302に戻る。
次に、ステップS307では、変形情報算出部113において、撮像情報を用いて、画像処理を行い、画面上での柔軟物の変形情報である画面上柔軟物変形情報を生成し、ステップS308に進む。
次に、ステップS308では、マスタ動作情報取得部110においてマスタ動作情報を取得し、力情報取得部117において力情報を取得し、ステップS309に進む。
次に、ステップS309では、力情報補正部114において、力情報取得部117から取得した力情報に対して、マスタ動作情報と画面上スレーブ動作情報又は画面上柔軟物変形情報との比を掛け、画面上の情報に補正した補正力情報を生成し、ステップS310に進む。
次に、ステップS310では、力情報提示部115において、力情報補正部114から取得した補正力情報に従いマスタアーム2への指令値を生成し、マスタアーム2で力提示を行い、作業者1に力が提示される。
《第1実施形態の効果》
画面上の動作情報又は変形情報に対応して力情報を力情報補正部114で補正し、力提示を力情報提示部115で行うことによって、作業者1が作業に必要な力を加えることができ、作業を正確に行うことができる。すなわち、作業者1の操作及び作業者1が見ている映像に対応した力提示を行うことができ、作業者1が見ている画像と作業者1が行っている操作とがさらに違和感なく対応させることができて、正確に作業を行うことができる。
(第2実施形態)
本発明の第2実施形態における、マスタスレーブロボット100Bの制御装置101Bを含むマスタスレーブロボット100Bの概要について説明する。図27は、本発明の第2実施形態における、マスタスレーブロボット100Bのブロック図を示す。本発明の第2実施形態のマスタロボット102Bにおけるマスタアーム2と、マスタ周辺装置108と、マスタ制御装置106Bのうちのマスタ動作情報取得部110と撮像情報取得部111とマスタ動作情報補正部112と力情報補正部114と力情報提示部115と、スレーブロボット103とは第1実施形態と同様であるので、共通の参照符号を付して共通部分の説明は省略し、異なる部分についてのみ、以下、詳細に説明する。
(変形情報算出部123)
変形情報算出部123は、第1実施形態の変形情報算出部113に代えてマスタアーム2の制御装置104Bに備えられ、表示情報取得部の別の例として機能し、第1実施形態における変形情報算出部113の機能に加えて、柔軟物が変形するときの形状を検出し、形状に応じて画面上柔軟物変形情報を算出する機能を有する。
図15Cに示す例の場合の第1実施形態における変形情報算出部113での画面上柔軟物変形情報の算出方法について、図28Aを用いて説明する。画面上の柔軟被対象物13の縁Agを検出し、変形していないときの縁Bgからの変形した距離Cg(距離をrとする)を画面上柔軟物変形情報として検出する。
次に、第2実施形態における変形情報算出部123での画面上柔軟物変形情報の算出方法について、図28Bを用いて説明する。
まず、図28Aの場合と同様に、画面上の柔軟被対象物13の縁Agを変形情報算出部123で検出し、変形していないときの縁Bgからの変形した距離Cg(距離をrとする)を変形情報算出部123で検出する。
次に、変形していないときの画面上の柔軟被対象物13の縁Bgと変形後の画面上の柔軟被対象物13の縁Agとで囲まれる変形した面積Dg(面積をSとする)を変形情報算出部123で検出する。また、距離Cgの面積EgをS=r と変形情報算出部123で求める。そこで、距離Cgの面積Egに対する変形した面積Dgの割合をrDC=S/Sと変形情報算出部123で求める。変形情報算出部123において、この割合が、ある任意の定数aDC(例えば、0.5)のときに1となるように定数aDCで割る。任意の定数は、作業者1がマスタ入出力IF19を用いて変形情報算出部123に入力する。このようにして求めた割合r=rDC/aDCを距離rに掛けたr・rを画面上柔軟物変形情報として変形情報算出部123で算出する。
このように、面積を考慮した距離を変形情報算出部123で算出する効果について、図29A及び図29Bを用いて説明する。図29Aと図29Bとは、変形した距離Cgは同じであるが、変形した面積Dgが異なる。第1実施形態における変形情報算出部113での画面上柔軟物変形情報の算出方法では、作業者1はどちらの場合も同様の力提示を受ける。しかしながら、実際には、図29Aの場合と図29Bの場合とでは、剛体対象物12の挿入の仕方、及び、柔軟被対象物13の粘性などが異なり、作業者1には異なった力情報を提示する必要がある。具体的には、図29Aの方が、図29Bと比較して変形している面積が大きい。そのため、作業者1は、図29Aの場合の方が、柔軟被対象物13を柔らかく感じ、必要な力を加えることができずに作業を終了してしまう。よって、図29Aの方が力情報を小さく補正して、作業者1に提示することによって、作業に必要な力を作業者1が加えることができる。このように、第2実施形態における変形情報算出部123での画面上柔軟物変形情報の算出方法のように、変形面積を考慮することによって、材質の違い又は挿入操作の違いを力提示で表現することができる。
なお、変形情報算出部123から出力された撮像画像情報が表示部126に入力される。表示部126では、入力された撮像画像情報をディスプレイ7に表示する。
<フローチャート>
第2実施形態のマスタスレーブロボット100Bの操作手順を図30のフローチャートを用いて説明する。
第2実施形態のマスタスレーブロボット100Bの操作の一例は図25と同様である。ここでは、図25で表されるフローチャートのステップS204の力情報取得と、ステップS205の補正力情報生成と、ステップS206の力提示とについて、図30を用いて説明する。
まず、ステップS301では、スレーブ動作情報取得部116においてスレーブ動作情報を取得し、撮像情報取得部111において撮像情報を取得し、ステップS302に進む。
次に、ステップS302では、変形情報算出部123において、画面上スレーブ動作情報を算出するかしないかを選択する。画面上スレーブ動作情報を算出すると変形情報算出部123で選択する場合はステップS303に進み、画面上スレーブ動作情報を算出しないと変形情報算出部123で選択する場合はステップS306に進む。ステップS302での判断(選択)基準の一例としては、マスタアーム2の制御装置104Bにおいて、画像処理を行うことができると変形情報算出部123で判断する場合はステップS306に進み、画像処理を行うことができないと変形情報算出部123で判断する場合はステップS303に進む。
また、他の判断基準の例としては、画面上での変形量が小さい(変形量が閾値より小さい)と変形情報算出部123で判断した場合はステップS303に進み、画面上での変形量が大きい(変形量が閾値より大きい)と変形情報算出部123で判断した場合はステップS306に進む。
次に、ステップS303では、変形情報算出部123において、スレーブ動作情報と撮像情報とを用いて、画面上でのスレーブアーム3の動作情報である画面上スレーブ動作情報を生成し、ステップS304に進む。
次に、ステップS304では、変形情報算出部123において、画面上柔軟物変形情報を算出するかしないかを選択する。画面上柔軟物変形情報を算出すると変形情報算出部123で選択する場合はステップS311に進み、画面上柔軟物変形情報を算出しないと変形情報算出部123で選択する場合はステップS308に進む。
次に、ステップS311では、変形情報算出部123において、撮像情報を用いて、画像処理を行い、画面上での柔軟物の変形面積を考慮した画面上柔軟物変形情報を生成し、ステップS315に進む。
次に、ステップS315では、変形情報算出部113において、画面上スレーブ動作情報と画面上柔軟物変形情報との加重平均を算出し、算出した加重平均を変形情報として生成し、ステップS308に進む。
次に、ステップS306では、変形情報算出部123において、画面上柔軟物変形情報を算出するかしないかを選択する。画面上柔軟物変形情報を算出すると変形情報算出部123で選択する場合はステップS312に進み、画面上柔軟物変形情報を算出しないと変形情報算出部123で選択する場合はステップS302に戻る。
次に、ステップS312では、変形情報算出部123において、撮像情報を用いて、画像処理を行い、画面上での柔軟物の変形面積を考慮した画面上柔軟物変形情報を生成し、ステップS308に進む。
次に、ステップS308では、マスタ動作情報取得部110においてマスタ動作情報を取得し、力情報取得部117において力情報を取得し、ステップS309に進む。
次に、ステップS309では、力情報補正部114において、力情報取得部117から取得した力情報に対して、マスタ動作情報と画面上スレーブ動作情報又は画面上柔軟物変形情報との比を掛け、画面上の情報に補正した補正力情報を生成し、ステップS310に進む。
次に、ステップS310では、力情報提示部115において、力情報補正部114から取得した補正力情報に従いマスタアーム2への指令値を生成し、マスタアーム2で力提示を行い、作業者1に力が提示される。
《第2実施形態の効果》
画面上の変形面積を考慮した変形情報を変形情報算出部123で算出し、作業者1の作業方法又は柔軟物の材質に対応して力情報を力情報補正部114で補正し、力提示を力情報提示部115で行うことによって、作業を正確に行うことができる。
(第3実施形態)
本発明の第3実施形態における、マスタスレーブロボット100Cの制御装置101Cを含むマスタスレーブロボット100Cの概要について説明する。図31は、本発明の第3実施形態における、マスタスレーブロボット100Cのブロック図を示す。本発明の第3実施形態のマスタロボット102Cにおけるマスタアーム2と、マスタ周辺装置108と、マスタ制御装置106Cのうちのマスタ動作情報取得部110と撮像情報取得部111とマスタ動作情報補正部112と変形情報算出部113と力情報提示部115と、スレーブロボット103とは第1実施形態と同様であるので、共通の参照符号を付して共通部分の説明は省略し、異なる部分についてのみ、以下、詳細に説明する。
(力情報補正部124)
力情報補正部124は、第1実施形態の力情報補正部114に代えてマスタアーム2の制御装置104Cに備えられ、第1実施形態における力情報補正部114の機能に加えて、画面上におけるスレーブアームの移動又は柔軟物の変形が小さい方向について力情報の補正を行わない機能を有する。
図15Cに示す例の場合の第1実施形態における力情報補正部114での力情報の補正方法について、図32を用いて説明する。図32において、作業者1は、ディスプレイ7の画面上で主にy軸方向とz軸方向との動きを見て、作業を行う。このとき、他の方向であるx軸方向の動きは画面上からは見ることができない。しかしながら、作業者1がx軸方向にマスタアーム2を移動させると、マスタ動作情報に対して、画面上スレーブ動作情報又は画面上柔軟物変形情報が非常に小さな値となるため、x軸方向に関して非常に大きな値に力情報を力情報補正部114で補正し、作業者1に力提示することとなる。作業に対してあまり影響のない軸の力が大きく提示されるため、作業に必要な軸方向の力を作業者1が認識できなくなる。
そこで、第3実施形態における力情報補正部124では、図32のx軸方向のような移動又は変形の変化が画面上から確認することのできない軸に対して、力情報の補正を力情報補正部124では行わないようにしている。
力情報補正部124による力補正を行わない方向の検出方法について、図33A及び図33Bを用いて説明する。図33Aに示す撮像装置6の撮像方向(撮像座標系Σのy軸方向)のスレーブアーム3の移動について、図33Bに示す画面上ではその移動を確認することができない。よって、撮像装置6の撮像方向に対して、スレーブアーム3のハンド座標系Σhsに関して所定の角度(例えば、10度)以内の軸方向には、力情報補正部124による力情報の補正を行わない。図33A及び図33Bの例では、スレーブアーム3のハンド座標系Σhsのx軸方向に関しては、力情報補正部124による力情報の補正を行わない。このように、画面上で移動又は変形が見えにくい方向の力情報の補正を力情報補正部124で行わないことによって、作業を行う方向の力が作業者1に伝わりやすくなる。
<フローチャート>
第3実施形態のマスタスレーブロボット100Cの操作手順を図34のフローチャートを用いて説明する。
第3実施形態のマスタスレーブロボット100Cの操作の一例は図25と同様である。ここでは、図25で表されるフローチャートのステップS204の力情報取得と、ステップS205の補正力情報生成と、ステップS206の力提示とについて、図34を用いて説明する。
まず、ステップS301では、スレーブ動作情報取得部116においてスレーブ動作情報を取得し、撮像情報取得部111において撮像情報を取得し、ステップS302に進む。
次に、ステップS302では、変形情報算出部113において、画面上スレーブ動作情報を算出するかしないかを選択する。画面上スレーブ動作情報を算出すると変形情報算出部113で選択する場合はステップS303に進み、画面上スレーブ動作情報を算出しないと変形情報算出部113で選択する場合はステップS306に進む。ステップS302での判断(選択)基準の一例としては、マスタアーム2の制御装置104Cにおいて、画像処理を行うことができると変形情報算出部113で判断する場合はステップS306に進み、画像処理を行うことができないと変形情報算出部113で判断する場合はステップS303に進む。
また、他の判断基準の例としては、画面上での変形量が小さい(変形量が閾値より小さい)と変形情報算出部113で判断した場合はステップS303に進み、画面上での変形量が大きい(変形量が閾値より大きい)と変形情報算出部113で判断した場合はステップS306に進む。
次に、ステップS303では、変形情報算出部113において、スレーブ動作情報と撮像情報とを用いて、画面上でのスレーブアーム3の動作情報である画面上スレーブ動作情報を生成し、ステップS304に進む。
次に、ステップS304では、変形情報算出部113において、画面上柔軟物変形情報を算出するかしないかを選択する。画面上柔軟物変形情報を算出すると変形情報算出部113で選択する場合はステップS305に進み、画面上柔軟物変形情報を算出しないと変形情報算出部113で選択する場合はステップS308に進む。
次に、ステップS305では、変形情報算出部113において、撮像情報を用いて、画像処理を行い、画面上での柔軟物の変形面積を考慮した画面上柔軟物変形情報を生成し、ステップS315に進む。
次に、ステップS315では、変形情報算出部113において、画面上スレーブ動作情報と画面上柔軟物変形情報との加重平均を算出し、算出した加重平均を変形情報として生成し、ステップS308に進む。
次に、ステップS306では、変形情報算出部113において、画面上柔軟物変形情報を算出するかしないかを選択する。画面上柔軟物変形情報を算出すると変形情報算出部113で選択する場合はステップS307に進み、画面上柔軟物変形情報を算出しないと変形情報算出部113で選択する場合はステップS302に戻る。
次に、ステップS307では、変形情報算出部113において、撮像情報を用いて、画像処理を行い、画面上での柔軟物の変形面積を考慮した画面上柔軟物変形情報を生成し、ステップS308に進む。
次に、ステップS308では、マスタ動作情報取得部110においてマスタ動作情報を取得し、力情報取得部117において力情報を取得し、ステップS313に進む。
次に、ステップS313では、力情報補正部124において、スレーブアーム3のハンド座標系の各軸方向について、撮像装置6の撮像方向に対して、所定の角度(例えば、10度)以内の軸方向はステップS314に進み、所定の角度以内でない軸方向はステップS309に進む。
次に、ステップS314では、所定の角度(例えば、10度)以内の軸方向については、力情報提示部115において、力情報補正部124を介して力情報取得部117から取得しかつ補正していない力情報に従いマスタアーム2への指令値を生成し、マスタアーム2で力提示を行い、作業者1に力が提示される。
次に、ステップS309では、所定の角度以内でない軸方向については、力情報補正部124において、力情報取得部117から取得した力情報に対して、マスタ動作情報と画面上スレーブ動作情報又は画面上柔軟物変形情報との比を掛け、画面上の情報に補正した補正力情報を生成し、ステップS310に進む。
次に、ステップS310では、所定の角度以内でない軸方向については、力情報提示部115において、力情報補正部114から取得した補正力情報に従いマスタアーム2への指令値を生成し、マスタアーム2で力提示を行い、作業者1に力が提示される。
《第3実施形態の効果》
撮像装置から撮像しにくい軸方向の力情報を力情報補正部114で補正しないことによって、力提示が必要な軸方向の力を作業者1に力情報提示部115で適切に提示できるので、作業を正確に行うことができる。
(第4実施形態)
本発明の第4実施形態における、マスタスレーブロボット100Dの制御装置101Dを含むマスタスレーブロボット100Dの概要について説明する。図35は、本発明の第4実施形態における、マスタスレーブロボット100Dのブロック図を示す。本発明の第4実施形態のマスタロボット102Dにおけるマスタアーム2と、マスタ周辺装置108と、マスタ制御装置106Dのうちのマスタ動作情報取得部110とマスタ動作情報補正部112と力情報提示部115と、スレーブロボット103とは第1実施形態と同様であるので、共通の参照符号を付して共通部分の説明は省略し、異なる部分についてのみ、以下、詳細に説明する。
(表示制御部125)
表示制御部125には、撮像装置6から撮像画像情報と、拡大率情報と、撮像装置位置情報と、マスタ入出力IF119に内蔵されたタイマより時間情報とが入力される。撮像画像情報以外の表示制御部125が取得する拡大率情報と、撮像装置位置情報と、時間情報との一例は、図9と同様である。また、撮像画像情報とは、ディスプレイ7に映し出された画像そのもののことを表す。ここで、撮像情報とは、撮像画像情報と、拡大率情報と、撮像装置位置情報とを表す。
表示制御部125は、撮像装置6から取得した撮像画像を拡大又は縮小又はトリミングを行い、表示部126に出力する。表示部126に出力する撮像画像を、撮像画像情報として表示制御部125において更新する。また、拡大又は縮小を行った際の拡大率を、撮像装置6から取得した拡大率情報に表示制御部125で掛けることによって、拡大率情報を表示制御部125において更新する。このようにして得られた撮像画像情報と、拡大率情報と、撮像装置6から取得した撮像装置位置情報と、マスタ入出力IF119に内蔵されたタイマより時間情報とを、表示制御部125から拡大率情報算出部127に出力する。
(表示部126)
表示部126は、表示制御部125から撮像画像情報が入力される。表示部126では、入力された撮像画像情報をディスプレイ7に表示する。
(拡大率情報算出部127)
拡大率情報算出部127は、表示制御部125から撮像画像情報と、拡大率情報と、撮像装置位置情報と、時間情報とが入力される。拡大率情報算出部127では、入力された拡大率情報及び時間情報を、力情報補正部128に出力する。
また、拡大率情報算出部127では、拡大率情報に関して、撮像装置6を設置した位置からスレーブアーム2を撮像した際に、作業者1がスレーブアーム2を直接見た際のスレーブアーム2の移動量とディスプレイ7の画面上でのスレーブアーム2の移動量とが同じ量であるような場合の拡大率を1とする。
なお、ここでは、上述したように、拡大率情報算出部127では、実際のスレーブアーム2の移動量と画面上のスレーブアーム2の移動量とが同じになるときを拡大率1として基準とすることにしたが、他の拡大のときを拡大率1として基準とすることも可能である。例えば、拡大率情報算出部127において、最も縮小しているときを拡大率1とすることによって、柔軟物が柔らかく、大きく変形する場合に大きな力を加えてもらうように誘導することができ、大変有効である。また、拡大率情報算出部127において、最も拡大しているときを拡大率1とすることによって、柔軟物が硬くあまり変形しない場合に大きな力を加えすぎないように防止することができ、有効である。このように、作業又は対象物に応じて、基準を変更することができる。
拡大率情報算出部127は、上述した拡大率情報の基準を変更することを行うことができ、基準を変えた場合は、変更した基準に従い、拡大率情報を更新する。
(力情報補正部128)
力情報補正部128は、第1実施形態の力情報補正部114に代えてマスタアーム2の制御装置104Dに備えられ、第1実施形態における力情報補正部114の機能に加えて、画面上における拡大率情報を用いて力情報を補正する機能を有する。
力情報補正部128は、拡大率情報算出部127から拡大率情報と時間情報とが入力され、力情報取得部117から力情報と時間情報とが入力される。力情報補正部128では、入力された力情報を、拡大率情報を基に補正する。力情報補正部128による補正方法について、以下、説明する。力情報補正部128では、拡大情報の値をmとすると、取得した力情報を1/mに補正する。このように力情報補正部128により補正することによって、拡大して表示する場合は力情報を小さくし、縮小して表示する場合は力情報を大きくすることができる。
(第1実施形態と第4実施形態との関係)
また、第1実施形態における変形情報と第4実施形態における拡大率情報との使い分けについて説明する。第1実施形態における変形情報の画面上柔軟物変形情報を算出する際は、画像処理が必要となる。そのため、マスタアーム2の制御装置104Dにおいて画像処理を行うことができないと拡大率情報算出部127で判断する場合は、第4実施形態における拡大率情報を力情報補正部128で使用することによって、複雑な処理を用いることなく、変形情報の代わりに拡大率情報を使用することができる。
また、第4実施形態では、スレーブ動作情報又はマスタ動作情報を用いずに力情報を力情報補正部128で補正することができ、複雑なシステムを構成せずに、変形情報の代わりに拡大率情報を使用することができる。
また、上述した選択指針の他に、第1実施形態における変形量を算出する際に、閾値(例えば、1mm)を設定し、その閾値を超えていないと変形情報算出部113で判断する場合は、第4実施形態における拡大率情報を使用することも可能である。このように選択することによって、変形量が計測しにくいところは拡大率情報を使用することができる。また、この閾値を設定し、自動的に選択することも可能である。
なお、この実施形態でも、先の実施形態と同様に、変形情報算出部113から出力された撮像画像情報が表示部126に入力される。表示部126では、入力された撮像画像情報をディスプレイ7に表示する。
<フローチャート>
第4実施形態のマスタスレーブロボット100Dの操作手順を図36のフローチャートを用いて説明する。
第4実施形態のマスタスレーブロボット100Dの操作の一例は図25と同様である。ここでは、図25で表されるフローチャートのステップS204の力情報取得と、ステップS205の補正力情報生成と、ステップS206の力提示とについて、図36を用いて説明する。
まず、ステップS321では、表示制御部125において、撮像情報を取得し、ステップS322に進む。
次に、ステップS322では、拡大率情報算出部127において、表示制御部125から取得した拡大率情報を基に拡大率情報を生成し、ステップS323に進む。
次に、ステップS323では、力情報取得部117において力情報を取得し、ステップS309に進む。
次に、ステップS309では、力情報補正部128において、力情報取得部117から取得した力情報に対して、拡大率情報又は変形情報のどちらか1つの情報を用いて、補正した補正力情報を生成し、ステップS310に進む。
次に、ステップS310では、力情報提示部115において、力情報補正部128から取得した補正力情報に従いマスタアーム2への指令値を生成し、マスタアーム2で力提示を行い、作業者1に力が提示される。
《第4実施形態の効果》
画像処理などの複雑な処理を行う必要がなく、簡単な構成のマスタスレーブロボット100Dの制御装置101Dの力情報補正部128で力情報の補正を行うことができる。また、変形情報が画面上で見えにくい状態でも、力情報補正部128で適切に力情報の補正を行うことができる。
なお、本発明の各実施形態におけるマスタスレーブロボット100、100B、100C、100Dの制御装置101、101B、101C、101Dにおける各構成要素は、マスタロボット102とスレーブロボット103とのいずれのロボットにおいても、構成することが可能である。すなわち、言い換えれば、「マスタロボット102のマスタ制御装置106、106B、106C、106Dの構成要素がスレーブ制御装置107内に備えられていても、逆に、スレーブ制御装置107内の構成要素がマスタ制御装置106、106B、106C、106D内に備えられていてもよい。
(変形例)
なお、第1実施形態又は第2実施形態においては、マスタロボット102、102Bを操作する作業者1が画面を見ながらスレーブロボット103を操作するときに、画面に表示されている柔軟物の変形量によってフィードバックする力を変更するものである。このとき、比(d/d)に対してゲインαを掛けた値でフィードバックする力の補正を力情報補正部114で行っている。
一般に、作業者1が、ある作業を行うときには、画面内での被対象物の表示のされ方によって、作業者1の力の感じ方が異なる。しかしながら、同じ挿入作業である場合には、表示され方が異なっても、同じ力で挿入される方が、品質のばらつきが少なくなる。一方で、力の感じ方は、作業者1によって異なり、個人差もある。
そこで、力の個人差を補正するため、事前に、同一の作業に対して、作業者1がどれくらい力の感じ方が異なるかを事前にキャリブレーションしておくことが有効である。このキャリブレーションを行うことは、本発明の第1又は第2実施形態においては、上記ゲインαを決定することに相当する。
マスタスレーブロボットの制御装置の構成の例を図37に示す。図37のマスタスレーブロボットの制御装置の構成においては、図2のマスタスレーブロボット100の制御装置101の構成に対して、さらに、拡大率変更マスタ情報蓄積部3101と、補正力設定部3102とを追加したものである。なお、この変形例でも、先の実施形態と同様に、変形情報算出部113から出力された撮像画像情報が表示部126に入力される。表示部126では、入力された撮像画像情報をディスプレイ7に表示する。
ここで、拡大率変更マスタ情報蓄積部3101は、同一作業に対して拡大率が異なる画像を作業者1に表示した場合のマスタ動作情報(マスタ動作情報取得部110で取得した姿勢情報)を拡大率が異なる作業毎に蓄積する。補正力設定部3102は、拡大率変更マスタ動作蓄積部3101で蓄積されている複数のマスタ動作情報から、力情報補正部114での補正力情報を計算して補正する力情報を設定する。
例えば、図13に示したマスタスレーブロボット100を使って作業を行う場合には、図3A又は図3Bに示した場合で、スレーブアーム3にかかる力がどれくらい異なるかを事前に計測しておく。図3Aのように広域を表示した映像の場合には、撮像されている被対象物の変形情報が小さいため、スレーブアーム3に多くの力がかかる操作となり、一方で、図3Bのように拡大した映像を表示した場合には、撮像されている被対象物の変形情報が大きく映り、作業者1はスレーブアーム3の動作を抑制する傾向がある。このように、同一の作業者1が同一の作業に対して、拡大率の異なる映像を表示された場合に、異なる力で作業をしてしまうことがあり、品質のばらつきにつながってしまう。そこで、事前に拡大率が異なる映像に対して、作業者1の力の入り方がどれくらい異なるかを事前に計測しておき、その差分を補正するように、補正力設定部3102で補正する。例えば、図3Aのように広域映像を表示した場合には、被対象物に作用する力が平均4.8Nとなり(図3C参照)、これに対して、図3Bのように詳細映像を表示した場合には、被対象物に作用する力が平均2.3Nとなっている(図3D参照)。そこで、補正力設定部3102においては、この2.5Nの差分(=4.8N−2.3N)が生じないように、マスタアーム2にフィードバックする力を、詳細映像を表示した場合には小さく設定する。この場合、作業者1は詳細映像が表示されている場合には、接触度合いが小さいと判断し、さらに、大きな力で接触させようとする。このように、表示される映像の違いによって、作業のばらつきがなくなるように、マスタアーム2への力を補正するものである。
なお、上記例では、2種類の拡大率で表示する映像に対して、スレーブアーム3にかかる力を測定している。さらに、詳細に設定するためには、3つ以上の拡大率を用いて表示することで、より正確な補正が可能になる。
なお、上記例では、拡大率を変更した映像を提示しているが、撮像する方向に対して、作業者1の力の入れ方が変わる場合もある。そこで、各撮像する方向に対して、作業者1の力の入れ方を計測することで、撮像方向に対する力の補正が可能になる。
前記以外に、以下のような補正の仕方もある。
例えば、拡大率が異なる場合に、スレーブアームに作用する力が同じになるように補正する場合がある。
すなわち、マスタスレーブロボット100の制御装置101において、拡大率変更マスタ情報蓄積部3101では、拡大率が異なる場合に、スレーブアーム3に外部から加えられた力情報を取得する力情報取得部117で取得した力情報を蓄積する。次いで、補正力設定部3102で、拡大率が異なる画像を表示したときに、力情報が近づくように、補正力を設定する。
また、異なる方向からの画像で補正力を設定する場合もある。図38のブロック図を用いて説明する。なお、この変形例でも、先の実施形態と同様に、変形情報算出部113から出力された撮像画像情報が表示部126に入力される。表示部126では、入力された撮像画像情報をディスプレイ7に表示する。
すなわち、作業者1が同一作業に対して、異なる方向からの画像を表示したときにマスタ動作情報取得部110で取得した姿勢情報を、方向が異なる作業毎に蓄積する方向変更マスタ情報蓄積部3103を制御装置101に新たに備える。この方向変更マスタ情報蓄積部3103で蓄積された情報に基づいて、力情報補正部114での補正力情報を補正力設定部3102で計算して設定する。
さらに、方向が異なる場合に、スレーブアームに作用する力が同じになるように補正する場合もある。
すなわち、マスタスレーブロボット100の制御装置101において、方向変更マスタ情報蓄積部3103を新たに備える。この方向変更マスタ情報蓄積部3103では、方向が異なる場合に、スレーブアーム3に外部から加えられた力情報を取得する力情報取得部117で取得した力情報を蓄積する。次いで、補正力設定部3102では、方向が異なる画像を表示したときに、力情報が近づくように、補正力を設定する。
なお、本発明を第1〜第4実施形態及び変形例に基づいて説明してきたが、本発明は、前記の第1〜第4実施形態及び変形例に限定されないのはもちろんである。以下のような場合も本発明に含まれる。
前記マスタスレーブロボット100、100B、100C、100Dの各制御装置101,101B、101C、101Dの一部又は全部は、具体的には、マイクロプロセッサ、ROM、RAM、ハードディスクユニット、ディスプレイユニット、キーボード、マウスなどから構成されるコンピュータシステムである。前記RAM又はハードディスクユニットには、コンピュータプログラムが記憶されている。前記マイクロプロセッサが、前記コンピュータプログラムにしたがって動作することにより、各部は、その機能を達成する。ここでコンピュータプログラムは、所定の機能を達成するために、コンピュータに対する指令を示す命令コードが複数個組み合わされて構成されたものである。
例えば、ハードディスク又は半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをCPU等のプログラム実行部が読み出して実行することによって、各構成要素が実現され得る。なお、前記実施形態又は変形例における制御装置を構成する要素の一部又は全部を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、柔軟物8に対して作業を行なうスレーブアーム3と、前記スレーブアームを人1が遠隔より操作するマスタアーム2とを備えるマスタスレーブロボット100を使用して、撮像装置6で撮像されて表示部7に表示された前記作業の状態を前記人が見ながら、前記作業を行う、マスタスレーブロボットの制御プログラムであって、
コンピュータに、
前記スレーブアームに外部から加えられた力情報を取得する力情報取得部117と、
前記作業を表示する前記表示部での拡大率情報を取得する表示情報取得部113,123と、
前記表示情報取得部から取得した前記拡大率情報が大きければ大きいほど、前記力情報取得部から取得した前記力情報を小さく補正することにより補正力情報を生成する力情報補正部114,124と、
前記力情報補正部で生成された前記補正力情報を前記マスタアームに提示する力情報提示部115と、
として機能させるためのマスタスレーブロボットの制御プログラムである。
また、このプログラムは、サーバなどからダウンロードされることによって実行されてもよく、所定の記録媒体(例えば、CD−ROMなどの光ディスク、磁気ディスク、又は、半導体メモリなど)に記録されたプログラムが読み出されることによって実行されてもよい。
また、このプログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
なお、前記様々な実施形態又は変形例のうちの任意の実施形態又は変形例を適宜組み合わせることにより、それぞれの有する効果を奏するようにすることができる。
本発明は、作業者が見ている画像に応じた力提示を受けることができ、産業用、家庭用、又は医療用等に適用可能な、マスタスレーブロボットの制御装置及び制御方法、ロボット、マスタスレーブロボットの制御プログラム、並びに、マスタスレーブロボットの制御用集積電子回路として有用である。
1 作業者
2 マスタアーム
3 スレーブアーム
4 ハンド
5 力センサ
6 撮像装置
7 ディスプレイ
8 微細部品
9 挿入口(コネクタ)
10 機器
11 作業台
12 剛体対象物
13 柔軟被対象物
14 柔軟対象物
15 剛体被対象物
100、100B、100C、100D マスタスレーブロボット
101、101B、101C、101D マスタスレーブロボットの制御装置
102、102B、102C、102D マスタロボット
103 スレーブロボット
104、104B、104C、104D マスタアームの制御装置
105 スレーブアームの制御装置
106、106B、106C、106D マスタ制御装置
107 スレーブ制御装置
108 マスタ周辺装置
109 スレーブ周辺装置
110 マスタ動作情報取得部
111 撮像情報取得部
112 マスタ動作情報補正部
113、123 変形情報算出部
114、124、128 力情報補正部
125 表示制御部
126 表示部
127 拡大率情報算出部
115 力情報提示部
116 スレーブ動作情報取得部
117 力情報取得部
118 スレーブ制御部
119 マスタ入出力IF
120 マスタモータドライバ
121 スレーブ入出力IF
122 スレーブモータドライバ
3101 拡大率変更マスタ情報蓄積部
3102 補正力設定部
3103 方向変更マスタ情報蓄積部

Claims (17)

  1. 対象物を把持して、前記対象物を被対象物に挿入する作業を行なうスレーブアームと、前記スレーブアームを遠隔より操作するマスタアームとを備えるマスタスレーブロボットを使用して、撮像装置で撮像されて表示部に表示された前記作業の状態の画像に基づいて、前記作業が行われる、マスタスレーブロボットの制御装置であって、
    前記スレーブアームに外部から加えられた力情報を取得する力情報取得部と、
    前記作業を表示する前記表示部での拡大率情報を取得する表示情報取得部と、
    前記表示情報取得部から取得した前記拡大率情報の拡大率が小さければ小さいほど、前記力情報取得部から取得した前記力情報を大きく補正することにより補正力情報を生成する力情報補正部と、
    前記力情報補正部で生成された前記補正力情報を前記マスタアームに提示する力情報提示部と、
    を備えるマスタスレーブロボットの制御装置。
  2. 前記力情報補正部は、前記表示情報取得部から取得した前記拡大率情報の拡大率が大きければ大きいほど、前記力情報取得部から取得した前記力情報を小さく補正することにより補正力情報を生成する、請求項1に記載のマスタスレーブロボットの制御装置。
  3. 前記対象物は柔軟物であり、
    前記表示情報取得部は、前記表示部上において、前記スレーブアームの作業により変形した前記柔軟物の変形情報を前記拡大率情報の拡大率として算出する変形情報算出部である、請求項1又は2に記載のマスタスレーブロボットの制御装置。
  4. 前記表示情報取得部において、前記表示部上において、前記スレーブアームの作業により変形した前記柔軟物の変形情報として、前記柔軟物が変形している範囲の長さを算出して使用する、
    請求項3に記載のマスタスレーブロボットの制御装置。
  5. 前記表示情報取得部において、前記表示部上において、前記スレーブアームの作業により変形した前記柔軟物の変形情報として、前記柔軟物が変形している範囲の面積を算出して使用する、
    請求項3に記載のマスタスレーブロボットの制御装置。
  6. 前記マスタアームの位置と、姿勢と、速度と、角速度との少なくとも1つ以上のマスタ動作情報を取得するマスタ動作情報取得部をさらに備え、
    前記力情報補正部は、
    前記マスタ動作情報より前記マスタアームの移動量dbを算出し、
    前記変形情報算出部より算出された前記柔軟物の変形量ddを取得し、
    前記移動量dbを前記変形量ddにより除算し、
    除算した結果(db/dd)に補正係数及び前記力情報の力を乗算することにより前記補正力情報を生成する、
    請求項3〜5のいずれか1つに記載のマスタスレーブロボットの制御装置。
  7. 前記力情報補正部において、前記力情報を補正する際の前記拡大率情報の拡大率と前記力情報の力の基準となる大きさを決定する、請求項1〜6のいずれか1つに記載のマスタスレーブロボットの制御装置。
  8. 前記力情報補正部において、前記柔軟物の柔らかさに応じて補正量を変更する請求項3〜7のいずれか1つに記載のマスタスレーブロボットの制御装置。
  9. 前記力情報補正部は、前記拡大率情報の拡大率が大きければ大きいほど、前記力情報取得部から取得した前記力情報を小さく補正して前記補正力情報を生成するとき、前記力情報の力の大きさを小さく補正して前記補正力情報を生成すること、又は、前記力情報の更新周期を速くして前記補正力情報を生成することのどちらかを行う、請求項2〜7のいずれか1つに記載のマスタスレーブロボットの制御装置。
  10. 請求項1〜9のいずれか1つに記載のマスタスレーブロボットの制御装置と、
    前記マスタスレーブロボットとを備える、ロボット。
  11. 対象物を把持して、前記対象物を被対象物に挿入する作業を行なうスレーブアームと、前記スレーブアームを遠隔より操作するマスタアームとを備えるマスタスレーブロボットを使用して、撮像装置で撮像されて表示部に表示された前記作業の状態の画像に基づいて、前記作業が行われる、マスタスレーブロボットの制御方法であって、
    前記スレーブアームに外部から加えられた力情報を力情報取得部で取得し、
    前記作業を表示する前記表示部での拡大率情報を表示情報取得部で取得し、
    前記表示情報取得部から取得した前記拡大率情報の拡大率が小さければ小さいほど、前記力情報取得部から取得した前記力情報を大きく補正することにより補正力情報を力情報補正部で生成し、
    前記力情報補正部で生成された前記補正力情報を前記マスタアームに力情報提示部で提示する、
    マスタスレーブロボットの制御方法。
  12. 前記力情報補正部は、前記表示情報取得部から取得した前記拡大率情報の拡大率が大きければ大きいほど、前記力情報取得部から取得した前記力情報を小さく補正することにより補正力情報を生成する、請求項11に記載のマスタスレーブロボットの制御方法。
  13. 対象物を把持して、前記対象物を被対象物に挿入する作業を行なうスレーブアームと、前記スレーブアームを遠隔より操作するマスタアームとを備えるマスタスレーブロボットを使用して、撮像装置で撮像されて表示部に表示された前記作業の状態の画像に基づいて、前記作業が行われる、マスタスレーブロボットの制御プログラムであって、
    コンピュータに、
    前記スレーブアームに外部から加えられた力情報を力情報取得部で取得するステップと、
    前記作業を表示する前記表示部での拡大率情報を表示情報取得部で取得するステップと、
    前記表示情報取得部から取得した前記拡大率情報の拡大率が小さければ小さいほど、前記力情報取得部から取得した前記力情報を大きく補正することにより補正力情報を力情報補正部で生成するステップと、
    前記力情報補正部で生成された前記補正力情報を前記マスタアームに力情報提示部で提示するステップと、
    を実現させるためのマスタスレーブロボットの制御プログラム。
  14. 前記力情報補正部は、前記表示情報取得部から取得した前記拡大率情報の拡大率が大きければ大きいほど、前記力情報取得部から取得した前記力情報を小さく補正することにより補正力情報を生成する、請求項13に記載のマスタスレーブロボットの制御プログラム。
  15. 対象物を把持して、前記対象物を被対象物に挿入する作業を行なうスレーブアームと、前記スレーブアームを遠隔より操作するマスタアームとを備えるマスタスレーブロボットを使用して、撮像装置で撮像されて表示部に表示された前記作業の状態の画像に基づいて、前記作業が行われる、マスタスレーブロボットの制御用集積電子回路であって、
    前記スレーブアームに外部から加えられた力情報を取得する力情報取得部と、
    前記作業を表示する前記表示部での拡大率情報を取得する表示情報取得部と、
    前記表示情報取得部から取得した前記拡大率情報の拡大率が小さければ小さいほど、前記力情報取得部から取得した前記力情報を大きく補正することにより補正力情報を生成する力情報補正部と、
    前記力情報補正部で生成された前記補正力情報を前記マスタアームに提示する力情報提示部と、
    を備えるマスタスレーブロボットの制御用集積電子回路。
  16. 前記力情報補正部は、前記表示情報取得部から取得した前記拡大率情報の拡大率が大きければ大きいほど、前記力情報取得部から取得した前記力情報を小さく補正することにより補正力情報を生成する、請求項15に記載のマスタスレーブロボットの制御用集積電子回路。
  17. 対象物を把持して、前記対象物を被対象物に挿入する作業を行なうスレーブアームと、前記スレーブアームを遠隔より操作するマスタアームとを備えるマスタスレーブロボットを使用して、撮像装置で撮像されて表示部に表示された前記作業の状態の画像に基づいて、前記作業が行われる、マスタスレーブロボットの制御装置であって、
    前記スレーブアームに外部から加えられた力情報を取得する力情報取得部と、
    前記作業を表示する前記表示部での拡大率情報を取得する表示情報取得部と、
    前記表示情報取得部から取得した前記拡大率情報の拡大率が小さければ小さいほど、前記力情報取得部から取得した前記力情報を大きく補正して生成される補正力情報を前記マスタアームに提示する力情報提示部と、
    を備えるマスタスレーブロボットの制御装置。
JP2014123175A 2013-06-24 2014-06-16 マスタスレーブロボットの制御装置及び制御方法、ロボット、マスタスレーブロボットの制御プログラム、並びに、マスタスレーブロボットの制御用集積電子回路 Active JP6473919B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014123175A JP6473919B2 (ja) 2013-06-24 2014-06-16 マスタスレーブロボットの制御装置及び制御方法、ロボット、マスタスレーブロボットの制御プログラム、並びに、マスタスレーブロボットの制御用集積電子回路

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2013131632 2013-06-24
JP2013131632 2013-06-24
JP2014123175A JP6473919B2 (ja) 2013-06-24 2014-06-16 マスタスレーブロボットの制御装置及び制御方法、ロボット、マスタスレーブロボットの制御プログラム、並びに、マスタスレーブロボットの制御用集積電子回路

Publications (2)

Publication Number Publication Date
JP2015027724A JP2015027724A (ja) 2015-02-12
JP6473919B2 true JP6473919B2 (ja) 2019-02-27

Family

ID=52111542

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014123175A Active JP6473919B2 (ja) 2013-06-24 2014-06-16 マスタスレーブロボットの制御装置及び制御方法、ロボット、マスタスレーブロボットの制御プログラム、並びに、マスタスレーブロボットの制御用集積電子回路

Country Status (2)

Country Link
US (1) US9415516B2 (ja)
JP (1) JP6473919B2 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9840007B1 (en) * 2014-08-25 2017-12-12 X Development Llc Robotic operation libraries
KR102523779B1 (ko) 2015-06-09 2023-04-20 인튜어티브 서지컬 오퍼레이션즈 인코포레이티드 수술 절차 아틀라스를 갖는 수술 시스템의 구성
JP6017642B1 (ja) * 2015-07-17 2016-11-02 ファナック株式会社 ロボット動作の教示作業支援装置および教示作業支援方法
US9815198B2 (en) * 2015-07-23 2017-11-14 X Development Llc System and method for determining a work offset
US10016892B2 (en) * 2015-07-23 2018-07-10 X Development Llc System and method for determining tool offsets
WO2017033352A1 (ja) * 2015-08-25 2017-03-02 川崎重工業株式会社 産業用遠隔操作ロボットシステム
US9789610B1 (en) * 2015-09-02 2017-10-17 X Development Llc Safe path planning for collaborative robots
US10912619B2 (en) 2015-11-12 2021-02-09 Intuitive Surgical Operations, Inc. Surgical system with training or assist functions
US11844584B2 (en) * 2015-11-23 2023-12-19 Sina Robotics and Medical Innovators Co. Ltd Robotic system for tele-surgery
US10422714B2 (en) * 2015-12-08 2019-09-24 Empire Technology Development Llc Sensor management based on surface type
JP6977634B2 (ja) * 2018-03-13 2021-12-08 オムロン株式会社 外観検査装置、外観検査方法及びプログラム

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60123285A (ja) 1983-12-02 1985-07-01 株式会社日立製作所 ロボットの力検出方法
JPS6133878A (ja) * 1984-07-25 1986-02-17 株式会社日立製作所 マニプレ−タの制御装置
JPH0829509B2 (ja) 1986-12-12 1996-03-27 株式会社日立製作所 マニピユレ−タの制御装置
EP0776739B1 (en) * 1992-01-21 2003-04-23 Sri International Surgical System
JP3668269B2 (ja) 1995-01-10 2005-07-06 オリンパス株式会社 体腔内手術用マニピュレータ装置
JPH08318479A (ja) 1995-05-19 1996-12-03 Nippondenso Co Ltd 遠隔操縦システム
JPH09136277A (ja) 1995-11-15 1997-05-27 Nippon Telegr & Teleph Corp <Ntt> 薄片挿入装置
JP2000052289A (ja) * 1998-08-03 2000-02-22 Kagawa Univ 微小操作のためのセンシング方式と操作方式およびそ の装置
US6084371A (en) * 1999-02-19 2000-07-04 Lockheed Martin Energy Research Corporation Apparatus and methods for a human de-amplifier system
US6424885B1 (en) * 1999-04-07 2002-07-23 Intuitive Surgical, Inc. Camera referenced control in a minimally invasive surgical apparatus
US7198630B2 (en) * 2002-12-17 2007-04-03 Kenneth I. Lipow Method and apparatus for controlling a surgical robot to mimic, harmonize and enhance the natural neurophysiological behavior of a surgeon
US8079950B2 (en) * 2005-09-29 2011-12-20 Intuitive Surgical Operations, Inc. Autofocus and/or autoscaling in telesurgery
JP5032716B2 (ja) * 2010-08-31 2012-09-26 パナソニック株式会社 マスタースレーブロボットの制御装置及び制御方法、並びに、制御プログラム
KR101800189B1 (ko) * 2012-04-30 2017-11-23 삼성전자주식회사 수술 로봇의 힘 제어 장치 및 방법

Also Published As

Publication number Publication date
US20140379132A1 (en) 2014-12-25
US9415516B2 (en) 2016-08-16
JP2015027724A (ja) 2015-02-12

Similar Documents

Publication Publication Date Title
JP6473919B2 (ja) マスタスレーブロボットの制御装置及び制御方法、ロボット、マスタスレーブロボットの制御プログラム、並びに、マスタスレーブロボットの制御用集積電子回路
JP6410022B2 (ja) マスタスレーブロボットの制御装置及び制御方法、ロボット、マスタスレーブロボットの制御プログラム、並びに、マスタスレーブロボットの制御用集積電子回路
JP6410023B2 (ja) マスタスレーブロボットの制御装置及び制御方法、ロボット、マスタスレーブロボットの制御プログラム、並びに、マスタスレーブロボットの制御用集積電子回路
JP6504541B2 (ja) マスタスレーブロボットの制御装置及び制御方法、マスタスレーブロボット、マスタスレーブロボットの制御プログラム、並びに、マスタスレーブロボットの制御用集積電子回路
JP6112300B2 (ja) マスタースレーブロボットの制御装置及び制御方法、マスタースレーブロボット、並びに、制御プログラム
JP5257335B2 (ja) 3次元視覚センサにおける計測有効領域の表示方法および3次元視覚センサ
CN111482959A (zh) 机器人运动视觉系统的自动手眼标定系统与方法
JP4677281B2 (ja) 画像処理方法、画像処理装置
US10427298B2 (en) Robot system displaying information for teaching robot
JP5523392B2 (ja) キャリブレーション装置及びキャリブレーション方法
JP6026746B2 (ja) ワークの組み立て手順演算方法、組み立て手順演算プログラム、部品の製造方法及び自動組立ロボット
CN109531604B (zh) 进行校准的机器人控制装置、测量系统以及校准方法
JP5806105B2 (ja) パラメータ補正方法および制御システム
JP2009087161A (ja) 画像処理装置、画像処理方法
US20110037839A1 (en) Industrial robot, and methods for determining the position of an industrial robot relative to an object
JPH06131442A (ja) 3次元虚像造形装置
EP3944228A1 (en) Electronic device, method for controlling electronic device, program, and storage medium
JPWO2018012110A1 (ja) 処理装置、システム、および制御方法
WO2021200438A1 (ja) 較正システム、情報処理システム、ロボット制御システム、較正方法、情報処理方法、ロボット制御方法、較正プログラム、情報処理プログラム、較正装置、情報処理装置、及びロボット制御装置
JP2005165665A (ja) 仮想物体の操作補助装置、方法、コンピュータプログラム、及びコンピュータ読み取り可能な記録媒体
JP2017113815A (ja) 対象物をロボットを用いて把持するロボットシステムの画像表示方法
JP2007293412A (ja) 情報処理方法および装置
JP7381718B2 (ja) オフラインシミュレーションシステム
JP2792842B2 (ja) ロボット作業教示方法および装置
WO2023073959A1 (ja) 作業支援装置及び作業支援方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161227

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170912

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171107

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180508

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180705

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190108

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190115

R151 Written notification of patent or utility model registration

Ref document number: 6473919

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151