(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023140732
(43)【公開日】2023-10-05
(54)【発明の名称】力提示装置、システム、方法及びプログラム
(51)【国際特許分類】
B25J 3/00 20060101AFI20230928BHJP
【FI】
B25J3/00 A
【審査請求】未請求
【請求項の数】16
【出願形態】OL
(21)【出願番号】P 2022046718
(22)【出願日】2022-03-23
(71)【出願人】
【識別番号】315014671
【氏名又は名称】東京ロボティクス株式会社
(74)【代理人】
【識別番号】100098899
【弁理士】
【氏名又は名称】飯塚 信市
(74)【代理人】
【識別番号】100163865
【弁理士】
【氏名又は名称】飯塚 健
(72)【発明者】
【氏名】加藤 健太
【テーマコード(参考)】
3C707
【Fターム(参考)】
3C707AS01
3C707BS26
3C707HS27
3C707JS02
3C707JS03
3C707JT05
3C707JU02
3C707JU12
3C707KS21
3C707KS34
3C707KT01
3C707KT06
3C707LS14
3C707LV02
3C707LV24
3C707MS03
3C707MS27
3C707MT08
(57)【要約】 (修正有)
【課題】力提示装置において、力提示の開始後に突如予期しない力が提示されることを防止すること。
【解決手段】力提示手段において提示される力である提示力を演算する、提示力演算部と、力の提示の開始を示す力提示開始信号を検出する、力提示開始信号検出部と、前記力提示開始信号が検出された場合、所定の補正条件に応じて、前記提示力を補正して補正提示力を生成する、提示力補正部と、前記補正提示力に対応する力を提示するよう前記力提示手段を制御する、制御部と、を備える、力提示装置が提供される。
【選択図】
図3
【特許請求の範囲】
【請求項1】
力提示手段において提示される力である提示力を演算する、提示力演算部と、
力の提示の開始を示す力提示開示信号を検出する、力提示開始信号検出部と、
前記力提示開始信号が検出された場合、所定の補正条件に応じて、前記提示力を補正して補正提示力を生成する、提示力補正部と、
前記補正提示力に対応する力を提示するよう前記力提示手段を制御する、制御部と、
を備える、力提示装置。
【請求項2】
前記提示力は、発生原因の異なる複数の提示力を含み、
前記補正条件は、前記発生原因毎に設定される、請求項1に記載の力提示装置。
【請求項3】
前記提示力は、ユーザーに前記力提示手段が干渉することを防止するための反発力を含む、請求項1に記載の力提示装置。
【請求項4】
前記提示力は、ユーザーの身体が可動限界姿勢に至ることを防止するための反発力を含む、請求項1に記載の力提示装置。
【請求項5】
前記提示力は、前記力提示手段が可動限界姿勢に至ることを防止するための反発力を含む、請求項1に記載の力提示装置。
【請求項6】
前記補正条件は、前記提示力を経時的に補正する条件である、請求項1に記載の力提示装置。
【請求項7】
前記補正条件は、前記提示力の最大値を経時的に増加させる条件である、請求項6に記載の力提示装置。
【請求項8】
前記補正条件は、前記提示力の提示比率を経時的に増加させる条件である、請求項6に記載の力提示装置。
【請求項9】
前記補正条件は、前記提示力が閾値以下となるまで所定値に維持し、かつ、前記提示力が閾値以下となった後に前記提示力を提示する条件である、前記請求項1に記載の力提示装置。
【請求項10】
前記力提示手段は、力を検出可能に構成され、
前記補正条件は、前記力提示手段に働く力が所定条件を満たすまで、前記提示力を所定値に維持する条件である、請求項1に記載の力提示装置。
【請求項11】
前記力提示手段は、ユーザーの姿勢又は動作を入力可能に構成され、
前記力提示手段への入力に基づいて、前記力提示装置と接続される従動装置に関する制御目標値を生成する、目標値生成部と、
前記従動装置における力覚情報を取得する、力覚情報取得部と、を含み、
前記提示力演算部は、前記力覚情報に基づいて、前記提示力を演算する、
請求項1に記載の力提示装置。
【請求項12】
前記力提示手段は、ユーザーの姿勢又は動作を入力可能に構成され、
前記力提示手段への入力に基づいて、仮想現実空間内の仮想物体の制御情報を生成する、仮想物体制御情報生成部と、
前記仮想物体に働く仮想力覚情報を取得する、仮想力覚情報取得部と、を含み、
前記提示力演算部は、前記仮想力覚情報に基づいて前記提示力を演算する、
請求項1に記載の力提示装置。
【請求項13】
前記力提示手段は、多関節ロボットアームを含む、請求項1に記載の力提示装置。
【請求項14】
力提示手段において提示される力である提示力を演算する、提示力演算部と、
力の提示の開始を示す力提示開示信号を検出する、力提示開始信号検出部と、
前記力提示開始信号が検出された場合、所定の補正条件に応じて、前記提示力を補正して補正提示力を生成する、提示力補正部と、
前記補正提示力に対応する力を提示するよう前記力提示手段を制御する、制御部と、
を備える、力提示システム。
【請求項15】
力提示手段において提示される力である提示力を演算する、提示力演算ステップと、
力の提示の開始を示す力提示開示信号を検出する、力提示開始信号検出ステップと、
前記力提示開始信号が検出された場合、所定の補正条件に応じて、前記提示力を補正して補正提示力を生成する、提示力補正ステップと、
前記補正提示力に対応する力を提示するよう前記力提示手段を制御する、制御ステップと、
を備える、力提示方法。
【請求項16】
力提示手段において提示される力である提示力を演算する、提示力演算ステップと、
力の提示の開始を示す力提示開示信号を検出する、力提示開始信号検出ステップと、
前記力提示開始信号が検出された場合、所定の補正条件に応じて、前記提示力を補正して補正提示力を生成する、提示力補正ステップと、
前記補正提示力に対応する力を提示するよう前記力提示手段を制御する、制御ステップと、
を備える、力提示プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、力提示装置、特に、バイラテラル遠隔操作システム、仮想現実(VR)システム等において利用される力提示装置等に関する。
【背景技術】
【0002】
近年、遠隔地の装置又は仮想現実空間内の仮想装置等に働く力をユーザーに対して提示するシステムについて研究開発が進められている。
【0003】
この種のシステムの例として、特許文献1には、スレーブマニピュレータに働く力をマスターマニピュレータにおいて提示するシステムが開示されている。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
ところで、この種の力提示装置においては、装置の使用にあたって力提示を開始する処理を行うことが必要である。しかしながら、従前の力提示装置においては、力提示の開始処理直後にユーザーに対して突如予期しない力が提示されるおそれがあった。
【0006】
例えば、遠隔地のフォロワー(又はスレーブ)装置が重たい物体を把持している状態において、リーダー(又はマスター)装置において力提示を開始してしまうと、力提示の開始直後に突如予期しない力がユーザーに対して提示されるおそれがあった。
【0007】
また、ユーザー又はリーダー装置そのものの保護を目的として、リーダー装置においてその姿勢等に応じて発生する仮想壁等による反発力が設定されている場合がある。この場合、力提示開始直後のリーダー装置の姿勢によっては、力提示開始直後にユーザーに対して突如予期しない力が提示されるおそれがあった。
【0008】
本発明は上述の技術的背景に鑑みてなされたものであり、その目的は、力提示装置において、力提示の開始後に突如予期しない力が提示されることを防止することにある。
【課題を解決するための手段】
【0009】
上述の技術的課題は、以下の構成を有する力提示装置及びシステム、並びに、その制御方法及びプログラム等により解決することができる。
【0010】
すなわち、本発明に係る力提示装置は、力提示手段において提示される力である提示力を演算する、提示力演算部と、力の提示の開始を示す力提示開示信号を検出する、力提示開始信号検出部と、前記力提示開始信号が検出された場合、所定の補正条件に応じて、前記提示力を補正して補正提示力を生成する、提示力補正部と、前記補正提示力に対応する力を提示するよう前記力提示手段を制御する、制御部と、を備えている。
【0011】
このような構成によれば、ユーザーには力提示の開始に応じて補正された力が提示される。そのため、力提示の開始後に突如予期しない力が提示されることを防止することができる。
【0012】
前記提示力は、発生原因の異なる複数の提示力を含み、前記補正条件は、前記発生原因毎に設定される、ものであってもよい。
【0013】
このような構成によれば、発生原因の性質に応じて適切な補正条件を設定することができる。
【0014】
前記提示力は、ユーザーに前記力提示手段が干渉することを防止するための反発力を含む、ものであってもよい。
【0015】
このような構成によれば、ユーザーへの力提示手段の干渉を防止することができる。
【0016】
前記提示力は、ユーザーの身体が可動限界姿勢に至ることを防止するための反発力を含む、ものであってもよい。
【0017】
このような構成によれば、ユーザーの身体の保護を図ることができる。
【0018】
前記提示力は、前記力提示手段が可動限界姿勢に至ることを防止するための反発力を含む、ものであってもよい。
【0019】
このような構成によれば、力提示手段の破損を防止することができる。
【0020】
前記補正条件は、前記提示力を経時的に補正する条件である、ものであってもよい。
【0021】
このような構成によれば、時間の経過に応じて補正内容を変更する制御を行うことができる。
【0022】
前記補正条件は、前記提示力の最大値を経時的に増加させる条件であってもよい。
【0023】
このような構成によれば、提示力の最大値を経時的に増加させることができるので、漸次的に提示力を大きくすることができ、力提示の開始後に突如予期しない力が提示されることを防止することができる。
【0024】
前記補正条件は、前記提示力の提示比率を経時的に増加させる条件であってもよい。
【0025】
このような構成によれば、提示力を経時的に増加させることができるので、漸次的に提示力を大きくすることができ、力提示の開始後に突如予期しない力が提示されることを防止することができる。
【0026】
前記補正条件は、前記提示力が閾値以下となるまで所定値に維持し、かつ、前記提示力が閾値以下となった後に前記提示力を提示する条件であってもよい。
【0027】
このような構成によれば、提示力が閾値以下となるまで所定値に維持されるので、力提示の開始後に突如予期しない力が提示されることを防止することができる。また、所定値に維持されることから、提示力が発生していることをユーザーに対して示すことができる。
【0028】
前記力提示手段は、力を検出可能に構成され、前記補正条件は、前記力提示手段に働く力が所定条件を満たすまで、前記提示力を所定値に維持する条件であってもよい。
【0029】
このような構成によれば、力提示手段に働く力が所定条件を満たすまで、提示力は所定値に維持される。そのため、例えば、力提示手段からユーザーの手等が離れている状態で力が提示されること等を防止することができ、安全性を高めることができる。
【0030】
前記力提示手段は、ユーザーの姿勢又は動作を入力可能に構成され、前記力提示手段への入力に基づいて、前記力提示装置と接続される従動装置に関する制御目標値を生成する、目標値生成部と、前記従動装置における力覚情報を取得する、力覚情報取得部と、を含み、前記提示力演算部は、前記力覚情報に基づいて、前記提示力を演算する、ものであってもよい。
【0031】
このような構成によれば、力提示装置と従動装置とから構成される所謂リーダー・フォロワー(又はマスタースレーブ)システムにおいて、従動装置において得られる力覚情報に基づく提示力について補正を行うことができる。なお、接続の語は、有線及び/又は無線の接続を含み、LAN、インターネット等のネットワークを介した接続も含む。
【0032】
前記力提示手段は、ユーザーの姿勢又は動作を入力可能に構成され、前記力提示手段への入力に基づいて、仮想現実空間内の仮想物体の制御情報を生成する、仮想物体制御情報生成部と、前記仮想物体に働く仮想力覚情報を取得する、仮想力覚情報取得部と、を含み、前記提示力演算部は、前記仮想力覚情報に基づいて前記提示力を演算する、ものであってもよい。
【0033】
このような構成によれば、仮想現実(VR)システムにおいて、仮想力覚情報に基づく提示力について補正を行うことができる。
【0034】
前記力提示手段は、多関節ロボットアームを含む、ものであってもよい。
【0035】
このような構成によれば、多関節ロボットアームを介してユーザーに対して力を提示することができる。
【0036】
別の側面から見た本発明は力提示システムであり、力提示手段において提示される力である提示力を演算する、提示力演算部と、力の提示の開始を示す力提示開示信号を検出する、力提示開始信号検出部と、前記力提示開始信号が検出された場合、所定の補正条件に応じて、前記提示力を補正して補正提示力を生成する、提示力補正部と、前記補正提示力に対応する力を提示するよう前記力提示手段を制御する、制御部と、を備えている。
【0037】
別の側面から見た本発明は力提示方法であり、力提示手段において提示される力である提示力を演算する、提示力演算ステップと、力の提示の開始を示す力提示開示信号を検出する、力提示開始信号検出ステップと、前記力提示開始信号が検出された場合、所定の補正条件に応じて、前記提示力を補正して補正提示力を生成する、提示力補正ステップと、前記補正提示力に対応する力を提示するよう前記力提示手段を制御する、制御ステップと、を備えている。
【0038】
別の側面から見た本発明は力提示プログラムであり、力提示手段において提示される力である提示力を演算する、提示力演算ステップと、力の提示の開始を示す力提示開示信号を検出する、力提示開始信号検出ステップと、前記力提示開始信号が検出された場合、所定の補正条件に応じて、前記提示力を補正して補正提示力を生成する、提示力補正ステップと、前記補正提示力に対応する力を提示するよう前記力提示手段を制御する、制御ステップと、を備えている。
【発明の効果】
【0039】
本発明によれば、力提示装置において、力提示の開始後に突如予期しない力が提示されることを防止することができる。
【図面の簡単な説明】
【0040】
【
図1】
図1は、バイラテラル遠隔操作システムの全体構成図である。
【
図2】
図2は、バイラテラル遠隔操作システムに係る機能ブロック図である。
【
図3】
図3は、力の提示処理に関するゼネラルフローチャートである。
【
図5】
図5は、力の演算処理に関する詳細フローチャートである。
【
図7】
図7は、F
cylinderの概念図である。
【
図8】
図8は、F
cylinderの算出に関係する各変数の関係性を示す説明図である。
【
図9】
図9は、F
fоllоwerとF
sphereに適用されるf
maxと時間tとの関係性を示す説明図である。
【
図10】
図10は、F
cylinderに適用されるf
maxと時間tとの関係性を示す説明図である。
【
図12】
図12は、仮想力提示システムに係る機能ブロック図である。
【
図13】
図13は、補正条件の一例を示す表である(変形例1)。
【
図14】
図14は、F
fоllоwerと、F
sphereに適用される再現比率と時間tとの関係性を示す説明図である(変形例1)。
【
図15】
図15は、F
cylinderに適用される再現比率と時間tとの関係性を示す説明図である(変形例1)。
【
図16】
図16は、補正条件の一例を示す表である(変形例2)。
【
図17】
図17は、提示される力と時間tとの関係性を示す説明図である(変形例2)。
【
図18】
図18は、多関節ロボットアームの手先外力と時間t、多関節ロボットアームにおいて提示される力と時間tとの関係性を示す説明図である(変形例3)。
【発明を実施するための形態】
【0041】
以下、本発明の好適な実施の形態について添付の図面を参照しつつ詳細に説明する。
【0042】
(1.第1の実施形態)
第1の実施形態として、本発明を、リーダー装置10とフォロワー装置50とから成り、双方向に情報を送信可能に構成された、バイラテラル遠隔操作システム100に対して適用する例について説明する。
【0043】
本実施形態においては、複数の装置が協調動作するシステムにおいて、他の装置を制御する装置をリーダー装置と称し、他の装置により制御されて従動する装置をフォロワー装置と称する。なお、この種の装置の称呼はこれに限定されず、リーダー装置をマスター装置と称してもよく、フォロワー装置をスレーブ装置と称してもよい。また、システム全体をマスタースレーブシステムと称してもよい。
【0044】
(1.1 システムの構成)
図1は、本実施形態に係るバイラテラル遠隔操作システム100の全体構成図である。バイラテラル遠隔操作システム100は、リーダー装置10と、フォロワー装置50を含む、リーダー装置10とフォロワー装置50の間はネットワーク30を介して接続されている。
【0045】
本実施形態において、リーダー装置10は、一対の多関節ロボットアーム12L、12Rを含んでいる。多関節ロボットアーム12L、12Rはその付け根が固定されると共に、先端はユーザーの手先と連結可能に構成される。また、各関節には、サーボモータと、角度や力等の検出センサが備えられている。
【0046】
従って、後述するように、ユーザーはその手先を動かすことで多関節ロボットアーム12L、12Rに対して姿勢や動作の入力を行うことができる。また、ユーザーは、後述するように、多関節ロボットアーム12L、12Rを介して力の提示を受けることができる。すなわち、多関節ロボットアーム12は力提示手段及び操作入力手段として機能する。なお、このような機能を含むことから、リーダー装置10を力提示装置と呼んでもよい。
【0047】
リーダー装置10は、ユーザーの頭部に装着されるヘッドマウントディスプレイ11を含んでいる。ヘッドマウントディスプレイ11には、フォロワー装置50に設けられたカメラにて取得された動画像が表示される。
【0048】
ユーザーの足元には2組のフットスイッチ14、15が設けられている。このように足元に設けられたスイッチであれば、ユーザーの手が操作入力のためにふさがっていても、適切な切り替え操作を行うことができる。
【0049】
第1のフットスイッチ14は、多関節ロボットアーム12L、12Rを動作準備状態とするか否かを切り替えるスイッチであり、すなわち、サーボモータのON/OFFを切り替えるサーボモータ電源切替装置である。
【0050】
第2のフットスイッチ15は、リーダー装置10において多関節ロボットアーム12L、12Rを介して実際にユーザーに対して力の提示を開始するか否かを切り替えるスイッチであり、すなわち、力提示開始情報入力装置である。
【0051】
なお、同図において図示されていないものの、リーダー装置10の内部には、情報処理部、通信ユニット等が設けられており、後述の種々の情報処理を行う。
【0052】
本実施形態において、フォロワー装置50は、中央の胴部と、胴部の天面に設けられた頭部51と、胴部の左右から延びるフォロワー装置用多関節ロボットアーム52L、52Rを備えたフォロワーロボットである。
【0053】
フォロワー装置用多関節ロボットアーム52L、52Rの各関節には、サーボモータと、角度や力を検出するセンサが設けられている。後述するように、フォロワー装置用多関節ロボットアーム52L、52Rは、リーダー装置10への操作入力に応じて従動する。
【0054】
頭部51の内部にカメラが設けられており、フォロワー装置50の周辺環境を撮影可能に構成されている。この動画像は、ネットワーク30を介してリーダー装置10へと送られてヘッドマウントディスプレイ11の表示部上に表示される。
【0055】
なお、同図において図示されていないものの、フォロワー装置50の内部には、情報処理部、通信ユニット等が設けられており、後述の種々の情報処理を行う。
【0056】
ネットワーク30は、本実施形態においてインターネットでありリーダー装置10を遠隔地にあるフォロワー装置50と接続するものである。なお、本発明はこのような構成に限定されず、ネットワーク30は、LAN等であってもよい。また、リーダー装置10とフォロワー装置50の物理的距離や配置は限定されない。さらに、接続は有線であってもよいし無線であってもよい。
【0057】
図2は、バイラテラル遠隔操作システム100に係る機能ブロック図である。同図左側にはリーダー装置10が描かれ、同図右側には、フォロワー装置50が描かれている。
【0058】
なお、同機能ブロック図は、後述の力の補正に関わる一部の構成について示すものであってその他の一部の構成が省略されている点に留意されたい。例えば、同図には、フォロワー装置50のカメラにおいて取得された動画像をリーダー装置10のヘッドマウントディスプレイ11で表示する構成等が省略して記載されている点に留意されたい。
【0059】
リーダー装置10は、目標値演算部167を備えている。目標値演算部167は、多関節ロボットアーム12の各関節のセンサ情報を取得して多関節ロボットアーム12の現在姿勢を取得する。その後、フォロワー装置用多関節ロボットアーム52の各関節の目標値を演算する処理を行い、演算結果をフォロワー装置50のアーム制御部551へと提供する。
【0060】
アーム制御部551は、取得した目標値に基づいて、フォロワー装置用多関節ロボットアーム52を制御する。この制御により、フォロワー装置用多関節ロボットアーム52は、リーダー装置10の多関節ロボットアーム12に従動するように制御される。
【0061】
力覚情報演算部553は、フォロワー装置用多関節ロボットアーム52の各関節のセンサ情報を取得して力覚情報を演算する。力覚情報演算部553は、演算した力覚情報をリーダー装置10の力演算部161へと提供する。
【0062】
力演算部161は、当該力覚情報、後述の各種の力、多関節ロボットアーム12の姿勢等の情報に基づいて、ユーザーへと提示する力を演算する。演算した力は力補正部162へと提供される。
【0063】
力補正部162は、力提示開始情報入力装置15により力提示が開始されたときに有効化される。力補正部162は、補正条件記憶部163から読み出した補正条件に従って、提示する力を補正する処理を行い、補正された力をアーム制御部165へと提供する。
【0064】
アーム制御部165は、補正された力をユーザーへと提示するよう多関節ロボットアーム12を制御する。これにより、フォロワー装置50のフォロワー装置用多関節ロボットアーム52に働く力をリーダー装置10の多関節ロボットアーム12において再現することができる。
【0065】
なお、サーボモータ電源切替装置14は、多関節ロボットアーム12の各サーボの電源を切り替えるよう機能する。
【0066】
以上で示した構成は例示にすぎず、構成は様々に変更することができる。従って、例えば、各装置の機能を本実施形態において示した装置以外の装置にて実現してもよい。また、力提示手段は、多関節ロボットアーム12に限定されない。従って、例えば、ユーザーに対して力を提示できる他の装置を採用してもよい。
【0067】
(1.2 システムの動作)
図3は、リーダー装置10における力の提示処理に関するゼネラルフローチャートである。
【0068】
多関節ロボットアーム12の各関節に設けられたサーボモータは初期状態においてOFF状態にある。この状態において、処理が開始すると、リーダー装置10は、サーボモータ電源切替装置14においてON状態への切り替え指令が生成されるまで待機する(S11NO)。
【0069】
なお、サーボモータ電源切替装置14は、第1のフットスイッチ14であり、ユーザーが足で操作することにより切り替え指令が生成される。
【0070】
サーボモータ電源切替装置14においてON状態への切り替え指令が生成され、サーボモータ電源がON状態となると(S11YES)、リーダー装置10は、力提示開始情報入力装置15において力提示開始情報が生成されるまで待機状態となる(S12NO)。
【0071】
なお、力提示開始情報入力装置15は、第2のフットスイッチ15であり、ユーザーが足で操作することにより力提示開始情報が生成される。
【0072】
力提示開始情報入力装置15において力提示開始情報が生成されると(S12YES)、ユーザーへの力提示処理が開始される。なお、このときの力提示開始の時刻は記録され、後述の補正時間の基準となる。
【0073】
力提示処理が開始すると、力補正部162は、補正条件記憶部163から補正条件を読み出す処理を行う(S13)。
【0074】
図4は、読み出される補正条件の一例を示す表である。同図から明らかな通り、補正条件は、後述の処理にて用いられる補正パラメータを含んでいる。
【0075】
本実施形態において、補正対象となる力は、フォロワー装置50において観測された力覚情報に基づく力Ffоllоwer、ユーザーの身体の関節が伸びきった可動限界姿勢となることを防止するための反発力Fsphere、及び、多関節ロボットアーム12がユーザーの身体に干渉することを防止するための反発力Fcylinderの3種類である。これらの力にはそれぞれ初期値([N])、終端値([N])及び補正時間T([sec])が設定されている。例えば、Ffоllоwerの初期値は0[N]、終端値は30[N]、補正時間は5[sec]に設定されている。
【0076】
図3に戻り、補正条件の読み出し処理の後、力演算部161は、フォロワー装置50の力覚情報演算部553において生成された力覚情報を取得する処理を行う(S15)。力演算部161は、力覚情報を取得すると、各種の力の演算処理を行う(S16)。
【0077】
図5は、力の演算処理に関する詳細フローチャートである。同図から明らかな通り、処理が開始すると、3つの力、F
fоllоwer、F
sphere、F
cylinderの演算処理が並行して実行される(S161、S162、S163)。
【0078】
Ffоllоwerの算出処理(S161)について説明する。フォロワー装置50の手先(又はTCP(Tool Center Point))に働く外力は、以下の数式の通り表される。
【0079】
【0080】
ただし、Jはヤコビ行列、τsensはフォロワー装置50の各関節におけるトルクセンサ値を表している。また、
【0081】
【数2】
は、フォロワー装置50の手先に働く外力を表している。また、同力は、力の成分のみを含む3次元ベクトルであり、モーメント成分を含まない。
【0082】
この力を、以下の数式により、リーダー装置10の多関節ロボットアーム12の手先力へと変換することで、フォロワー装置50において観測された力覚情報に基づく力Ffоllоwerが算出される。
【0083】
【0084】
ただし、Tはフォロワー装置50からリーダー装置10への変換行列を表している。
【0085】
次に、Fsphereの算出処理(S162)について説明する。上述の通り、Fsphereは、ユーザーの腕の関節が伸びきった限界姿勢に至ることを防止するための反発力である。
【0086】
図6は、F
sphereの概念図である。同図から明らかな通り、本実施形態においては、ユーザーの肩の辺りを中心(C)として半径rの仮想的な球状壁が設けられている。この仮想球状壁より外側に多関節ロボットアーム12の手先位置を移動させようとすると、ユーザーの腕の関節が伸びきってしまうことを防止するため、多関節ロボットアーム12の手先(TCP)に対して半径中心方向への反発力F
sphereが働くよう構成されている。
【0087】
具体的には、力Fsphereは、以下の数式により算出される。
【0088】
【0089】
ただし、sは力の大きさを表し、具体的には以下の数式で表される。
【0090】
【0091】
ここで、
【0092】
【数6】
は、反発力の最大値を表し、aは反発力が最大となるときの多関節ロボットアーム12の手先(TCP)の中心からの距離を表している。また、lは、多関節ロボットアーム12の手先(TCP)の中心からの距離を表している。
【0093】
また、qは力の単位ベクトルを表し、具体的には以下の数式で表される。
【0094】
【0095】
ただし、
【0096】
【数8】
は、仮想球状壁の原点へのベクトルを表し、
【0097】
【数9】
は、多関節ロボットアーム12の手先(TCP)位置へのベクトルを表している。なお、力のトルク成分は0としている。
【0098】
なお、本実施形態においては、ユーザーの身体の保護を目的として仮想球状壁とそれに伴う反発力を設定した。しかしながら、本発明はこのような構成に限定されない。従って、例えば、多関節ロボットアーム12の破損防止を目的として、多関節ロボットアーム12の各関節が伸びきって限界姿勢となることを防止するよう仮想球状壁とそれに伴う中心方向への反発力を設定してもよい。この場合、多関節ロボットアーム12の付け根の近傍に球の中心を設定してもよい。
【0099】
最後に、Fcylinderの算出処理(S163)について説明する。上述の通り、Fcylinderは、多関節ロボットアーム12がユーザーの身体へと干渉することを防止するために働く反発力を表している。
【0100】
図7は、F
cylinderの概念図である。同図から明らかな通り、本実施形態においては、ユーザーの周囲には、その頭部と胴部を包含する程度の大きさの半径rの仮想的な円筒壁が設けられている。この円筒壁より内側に多関節ロボットアーム12の手先(TCP)位置を移動させようとすると、多関節ロボットアーム12がユーザーの身体へと干渉することを防止するため、多関節ロボットアーム12の手先(TCP)に対して半径方向外側への反発力F
cylinderが働くよう構成されている。
【0101】
具体的には、力Fcylinderは、以下の数式により算出される。
【0102】
【0103】
ただし、sは力の大きさを表し、具体的には以下の数式で表される。
【0104】
【0105】
ここで、
【0106】
【数12】
は、反発力の最大値を表し、aは反発力が最大となるときの多関節ロボットアーム12の手先(TCP)の中心線からの距離を表している。また、lは、多関節ロボットアーム12の手先(TCP)から中心線へと下した垂線の長さを表している。
【0107】
また、qは力の単位ベクトルを表し、具体的には以下の数式で表される。
【0108】
【0109】
ただし、
【0110】
【数14】
は、多関節ロボットアーム12の手先位置(TCP)へのベクトルを表している。また、hは、原点から、手先位置から中心線へと下した垂線と中心線との交点へと向かうベクトルであり、具体的には次式で表される。
【0111】
【0112】
ただし、dは、中心線上の原点から中心線に沿って設定される単位ベクトルである。なお、
図8は、F
cylinderの算出に関係する各変数の関係性を示す説明図である。
【0113】
各力の演算処理が完了すると、力の演算処理(S16)は終了する。
【0114】
図3に戻り、力の演算処理が完了すると、力補正部162は、既に読み出している補正条件、演算された各力、及び力提示開始からの時間に基づいて、力の種別毎に補正処理を実行する(S17)。本実施形態においては、力補正部162は、力の値を、後述の線形増加するf
maxの値によりクリップする処理を行う。
【0115】
より詳細には、力補正部162は、Ffоllоwerに関し、以下の数式より補正した力(Fcоrrect)を生成する。
【0116】
【0117】
同様に、力補正部162は、Fsphereに関し、以下の数式より補正した力(Fcоrrect)を生成する。
【0118】
【0119】
さらに、力補正部162は、Fcylinderに関し、以下の数式より補正した力(Fcоrrect)を生成する。
【0120】
【0121】
ただし、本実施形態において、fmaxの値は、線形増加関数であり、パラメータは補正条件に応じて決定される。
【0122】
また、本実施形態においては、Ffоllоwerを、モーメント成分を含まず、3次元の力成分のみを含むベクトルとして構成したが、本発明はこのような構成に限定されない。従って、モーメント成分についても、数式1、3及び16と同様の数式を適用し補正を行ってもよい。この場合、数式16では、Ffоllоwerから力成分のみを抽出してベクトルの絶対値の算出を行ってもよい。
【0123】
図9は、F
fоllоwerと、F
sphereに適用されるf
maxと時間tとの関係性を示す説明図である。
【0124】
同図から明らかな通り、fmaxの初期値は0[N]であり、その後5秒間かけて30[N]へと線形増加する。
【0125】
図10は、F
cylinderに適用されるf
maxと時間tとの関係性を示す説明図である。
【0126】
同図から明らかな通り、fmaxの初期値は10[N]であり、その後2秒間かけて50[N]へと線形増加する。
【0127】
このような構成によれば、発生原因の性質に応じて適切な補正条件を設定することができる。
【0128】
また、このような構成によれば、提示力の最大値を経時的に増加させることができるので、漸次的に提示力を大きくすることができ、力提示の開始後に突如予期しない力が提示されることを防止することができる。
【0129】
さらに、このような構成によれば、ユーザーの身体への危険へとつながり得る力については急峻な立ち上がりとし、かつ、最大提示力も大きく設定することで、より安全性を向上させることができる。
【0130】
なお、本実施形態においては、Ffоllоwerと、Fsphereに適用される補正条件は同一としたが、本発明はこのような構成に限定されない。従って、各力に別異の補正条件を適用してもよい。
【0131】
図3に戻り、力の補正処理が完了すると、アーム制御部165は、力補正部162において生成された各F
cоrrectの値に基づいて合力を生成し、ユーザーに対して当該合力を提示するよう多関節ロボットアーム12を制御する処理を実行する(S18)。
【0132】
多関節ロボットアーム12の制御処理の後、所定時間Tが経過したか否かが判定され、所定時間Tが経過していないと判定された場合(S19NO)、再び、一連の処理が実行される(S15~S19)。
【0133】
一方、所定時間Tが経過したと判定された場合(S19YES)、処理は終了する。なお、この後は、補正処理は行われず力演算部において演算された力がそのまま多関節ロボットアーム12を介してユーザーへと提示される。
【0134】
このような構成によれば、ユーザーには力提示の開始に応じて補正された力が提示される。そのため、力提示の開始後に突如予期しない力が提示されることを防止することができる。
【0135】
(2.第2の実施形態)
第2の実施形態として、本発明を、仮想力提示システム80に対して適用する例について説明する。
【0136】
(2.1 システムの構成)
図11は、仮想力提示システム80の全体構成図である。同図から明らかな通り、仮想力提示システム80のハードウェア構成は、第1の実施形態のリーダー装置10と略同一である。すなわち、仮想力提示システム80は、ヘッドマウントディスプレイ81、多関節ロボットアーム82L、82R、サーボモータ電源切替装置14、及び、力提示開始情報入力装置15を備えている。また、図示しない情報処理部が仮想力提示システム80内に配置されている。
【0137】
ユーザーは、第1の実施形態と同様に、多関節ロボットアーム82を介してユーザーの姿勢や動作を入力することができ、また、力の提示を受けることができる。
【0138】
図12は、仮想力提示システム80に係る機能ブロック図である。同図から明らかな通り、仮想力提示システム80の機能ブロックの基本的構成は、第1の実施形態に係る機能ブロック図(
図2)と略同一である。
【0139】
ただし、本実施形態においては、フォロワー装置50に代えて、仮想空間内に多関節ロボットアーム82の動作に従動する仮想装置が配置されている点が異なる。ユーザーは、表示制御部873によりヘッドマウントディスプレイ81に表示される動画像を介してこの仮想装置を確認することができる。
【0140】
ユーザーが多関節ロボットアーム82を操作すると、目標値演算部867において姿勢の目標値が演算される。仮想装置制御部871は、この目標値に応じて仮想空間内において仮想装置を制御する。この制御により仮想装置は多関節ロボットアーム82に従動する。
【0141】
仮想空間内には仮想装置以外に物体が配置されており、仮想装置を介してそれらの物体に仮想的に接触できるように構成されている。仮想装置が物体に接触したとき、仮想力覚情報演算部872は、仮想的な力覚情報を生成する。力演算部861は、この仮想的な力覚情報を取得する。
【0142】
なお、本実施形態においては、仮想装置を制御する構成としたが、制御対象は装置に限定されない。従って、仮想空間上で人間や動物等の生物を動かすような構成であってもよい。
【0143】
(2.2 システムの動作)
仮想力提示システム80の動作は、第1の実施形態に係るシステムの動作(
図3)と略同一であるので、詳細な説明は省略する。
【0144】
すなわち、本実施形態にあっても、力提示開始情報の入力の後(S11~S12)、仮想装置にて発生する仮想的な力覚情報に基づく力(Ffоllоwerに相当)、ユーザーの腕の関節が伸びきった可動限界姿勢へと至ることを防止するための反発力Fsphere、及び、多関節ロボットアーム12がユーザーへと干渉することを防止するための反発力Fcylinderを算出する(S13~S16)。その後、それらの力を補正して補正後の力Fcоrrectを生成し(S17)、それらの合力を多関節ロボットアーム82を介してユーザーへと提示する(S18)。これらの一連の処理を所定時間だけ繰り返す(S19)。なお、補正条件は第1の実施形態と同一である。
【0145】
このような構成によれば、仮想現実(VR)システムにおいて、仮想力覚情報に基づく提示力についても補正を行うことができる。
【0146】
(3.変形例)
本発明は様々に変形して実施することができる。
【0147】
上述の実施形態においては、線形増加する値により各力をクリップすることにより各力の補正を行い、そのためのパラメータを補正条件とした。しかしながら、本発明はそのような構成に限定されない。従って、例えば、各力に掛け合わせる値の比率、すなわち、再現比率を変更することにより、予期しない力の提示を防止してもよい。
【0148】
図13は、本変形例に係る補正条件の一例を示す表である。同図から明らかな通り、各力には、初期比率と補正時間T([sec])が設定されている。例えば、F
fоllоwerの初期比率は0、補正時間は5[sec]に設定されている。
【0149】
図14は、本変形例に係る、F
fоllоwerと、F
sphereに適用される再現比率と時間tとの関係性を示す説明図である。同図から明らかな通り、再現比率αの初期値は0であり、その後、5秒間かけて1へと到達する。
【0150】
図15は、本変形例に係る、F
cylinderに適用される再現比率と時間tとの関係性を示す説明図である。同図から明らかな通り、再現比率αの初期値は0.3であり、その後、2秒間かけて1へと到達する。
【0151】
このような構成によれば、提示力を経時的に増加させることができるので、漸次的に提示力を大きくすることができ、力提示の開始後に突如予期しない力が提示されることを防止することができる。
【0152】
また、補正時間を定義しない構成としてもよい。例えば、力が所定のしきい値を下回るまではクリップ値へと固定し、所定のしきい値を下回った後に力をそのまま提示する構成とすることにより、予期しない力の提示を防止してもよい。
【0153】
図16は、本変形例に係る補正条件の一例を示す表である。同図から明らかな通り、各力についてしきい値([N])とクリップ値([N])が設定されている。例えば、F
fоllоwerのしきい値は0[N]、クリップ値は5[N]に設定されている。
【0154】
図17は、本変形例に係る提示される力と時間tとの関係性を示す説明図である。同図から明らかな通り、矢印で示す時間までは補正前の力が閾値以上であるため、補正後の力はクリップ値に制限されている。一方、矢印で示す時間において補正前の力がしきい値を下回るため、ここから補正前の力がそのまま提示されることとなる。
【0155】
このような構成によれば、提示力が閾値以下となるまで所定値に維持されるので、力提示の開始後に突如予期しない力が提示されることを防止することができる。また、所定のクリップ値に維持されることから、提示力が発生していることをユーザに対して示すことができる。
【0156】
さらに、力提示の開始処理時にユーザーが多関節ロボットアーム12の手先(TCP)を把持していない可能性もある。この場合において、多関節ロボットアーム12において力提示が行われると危険を伴うおそれがある。そこで、多関節ロボットアーム12の手先(TCP)において所定のしきい値を超える外力が働いているか否かを検出し、しきい値を超える外力が働いていないと判定される間は所定のクリップ値に制限し、しきい値を超える外力が働いていると判定された後から所定の力を提示してもよい。
【0157】
図18は、本変形例に係る、多関節ロボットアーム12の手先外力と時間t、並びに、多関節ロボットアーム12において提示される力と時間tとの関係性を示す説明図である。同図上段には、多関節ロボットアーム12において提示される補正後の力、同図下段には、多関節ロボットアーム12の手先(TCP)に働く外力が示されている。
【0158】
同図下段から明らかな通り、時刻t1までは多関節ロボットアーム12の手先に働く外力はしきい値を超えていない。そのため、同期間(0~t1)において多関節ロボットアーム12において提示される力は所定のクリップ値である。
【0159】
一方、時刻t1において多関節ロボットアーム12の手先に働く外力が閾値を超えている。そのため、この時刻t1から各力をそのまま提示する処理が実行される。
【0160】
このような構成によれば、操作入力部に働く力が所定条件を満たすまで、提示力は所定値に維持される。そのため、例えば、操作入力部からユーザーの手等が離れている状態で力が提示されること等を防止することができ、安全性を高めることができる。
【0161】
以上、本発明の実施形態について説明したが、上記実施形態は本発明の適用例の一部を示したに過ぎず、本発明の技術的範囲を上記実施形態の具体的構成に限定する趣旨ではない。また、上記の実施形態は、矛盾が生じない範囲で適宜組み合わせ可能である。
【産業上の利用可能性】
【0162】
本発明は、ロボットアーム等の力提示装置等を製造する産業において利用可能である。
【符号の説明】
【0163】
10 リーダー装置
11 ヘッドマウントディスプレイ
12 多関節ロボットアーム
14 サーボモータ電源切替装置
15 力提示開始情報入力装置
30 ネットワーク
50 フォロワー装置
51 頭部
52 フォロワー装置用多関節ロボットアーム
100 バイラテラル遠隔操作システム
80 仮想力提示システム
81 ヘッドマウントディスプレイ
82 多関節ロボットアーム
84 サーボモータ電源切替装置
85 力提示開始情報入力装置