(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023083925
(43)【公開日】2023-06-16
(54)【発明の名称】遠隔作業装置
(51)【国際特許分類】
B25J 3/00 20060101AFI20230609BHJP
【FI】
B25J3/00 A
【審査請求】未請求
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2021197932
(22)【出願日】2021-12-06
(71)【出願人】
【識別番号】507250427
【氏名又は名称】日立GEニュークリア・エナジー株式会社
(74)【代理人】
【識別番号】110000350
【氏名又は名称】ポレール弁理士法人
(72)【発明者】
【氏名】長井 隆浩
(72)【発明者】
【氏名】小林 亮介
(72)【発明者】
【氏名】平野 克彦
(72)【発明者】
【氏名】上野 克宜
【テーマコード(参考)】
3C707
【Fターム(参考)】
3C707AS01
3C707AS06
3C707AS12
3C707AS32
3C707BT05
3C707BT12
3C707CS08
3C707DS01
3C707ES01
3C707JT05
3C707JU02
3C707JU03
3C707JU12
3C707KS34
3C707KX19
3C707LU08
3C707WA17
(57)【要約】
【課題】過酷環境下においても広い範囲の接触反力をオペレータに提示することができる遠隔作業装置を提供する。
【解決手段】本発明による遠隔作業装置は、作業ロボット7と制御部と力覚提示インターフェース2を備える。作業ロボット7は、指部71と手首部7300を備えるハンド部73を備える。手首部7300は、指部71が固定され、並置された複数のシリンダ7301とベース7302を備える。シリンダ7301は、伸縮可能でベース7302に回転可能に接続されている。制御部は、シリンダ7301を伸縮させる手首部制御部64、シリンダ長を計測するシリンダ長センサ66、シリンダ7301を伸縮させる荷重を計測する制御入力センサ65、手首部7300の姿勢を算出する手首部姿勢算出部51、シリンダ荷重を算出するシリンダ荷重算出部52、及び手首部7300の姿勢とシリンダ荷重からハンド部73の接触反力を算出する反力算出部53を備える。
【選択図】
図2
【特許請求の範囲】
【請求項1】
オペレータに操作される作業ロボットと、
前記作業ロボットを制御する制御部と、
前記作業ロボットが得た力覚情報を前記オペレータに提示する力覚提示インターフェースと、
を備え、
前記作業ロボットは、指部と手首部とを備えるハンド部と、一端部に前記ハンド部を備えるアーム部とを備え、
指部は、手首部の一端部に固定されており、作業対象物に接触可能であり、
前記手首部は、前記指部が固定された先端部と、並列に配置された複数のシリンダと、前記アーム部に固定されたベースと、を備え、
前記シリンダは、荷重の付加により伸縮可能であり、一端部が前記先端部に回転可能に接続されているとともに、他端部が前記ベースに回転可能に接続されており、
前記制御部は、前記シリンダに荷重を付加して前記シリンダを伸縮させる手首部制御部と、
前記シリンダの長さであるシリンダ長を計測するシリンダ長センサと、
前記シリンダを伸縮させる荷重を計測する制御入力センサと、
前記シリンダ長センサが計測した前記シリンダ長に基づいて前記手首部の姿勢を算出する手首部姿勢算出部と、
前記制御入力センサの信号から前記シリンダに加わる荷重であるシリンダ荷重を算出するシリンダ荷重算出部と、
前記手首部姿勢算出部が算出した前記手首部の姿勢と、前記シリンダ荷重算出部が算出した前記シリンダ荷重から、前記ハンド部の接触反力を算出する反力算出部と、
前記反力算出部が算出した前記接触反力を表示する出力部と、
を備え、
前記力覚提示インターフェースは、前記反力算出部が算出した前記接触反力を前記オペレータに提示する、
ことを特徴とする遠隔作業装置。
【請求項2】
前記手首部の姿勢は、前記シリンダが伸縮して前記ベースに対して回転し、前記指部の前記ベースからの距離が変化することで、変化する、
請求項1に記載の遠隔作業装置。
【請求項3】
前記制御部は、前記オペレータが指定した前記接触反力の計測範囲を満たす前記シリンダ長を算出するシリンダ長算出部を備え、
前記手首部制御部は、前記シリンダの長さが前記シリンダ長算出部が算出した前記シリンダ長になるように、前記シリンダに荷重を付加し、
前記ハンド部は、前記シリンダの長さが前記シリンダ長算出部が算出した前記シリンダ長の状態で、前記指部が前記作業対象物に接触する、
請求項1に記載の遠隔作業装置。
【請求項4】
前記力覚提示インターフェースは、前記反力算出部が算出した前記接触反力を、前記オペレータが知覚する力と振動の少なくとも一方として前記オペレータに提示する、
請求項1に記載の遠隔作業装置。
【請求項5】
前記出力部は、前記反力算出部が算出した前記接触反力の大きさと方向を表示する、
請求項1に記載の遠隔作業装置。
【請求項6】
前記シリンダは、油圧、水圧、空気圧、電流、及び電圧のうち少なくとも1つの作用により伸縮する、
請求項1に記載の遠隔作業装置。
【請求項7】
前記制御入力センサは、油圧、水圧、空気圧、電流、及び電圧のうち少なくとも1つを計測するセンサである、
請求項1に記載の遠隔作業装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、遠隔作業を実施する遠隔作業装置に関する。
【背景技術】
【0002】
人間の立ち入りが困難な災害現場等の過酷環境では、遠隔地にいるオペレータが遠隔作業装置を操作して作業を実施することがある。この際、オペレータが作業状態(例えば、物体の把持状態や、部品の嵌込み状態等)を把握するために、遠隔作業装置には、視覚情報だけでなく力覚情報をオペレータに提示することが求められる。オペレータは、遠隔作業として、例えば、運搬や加工等の大きな反力(100N程度)が生じる作業と、組立でのネジ締め等の微細な反力(0.1N程度)が生じる作業を実施することがある。このため、遠隔作業装置には、広範囲の反力を計測できることが求められる。すなわち、遠隔作業装置には、様々な作業においてオペレータが作業対象物との接触状態を把握できるように、広範囲の接触反力をオペレータに提示することが求められる。
【0003】
従来の遠隔作業装置には、反力計測用のセンサを搭載しているものがある。また、特許文献1には、反力を計測できる従来の装置の例が記載されている。特許文献1に記載されたリンク作動装置では、装置の先端部に作用する様々な方向からの接触反力を、パラレルリンクの駆動部にかかるトルクから推定する。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献1に記載された装置などの従来の遠隔作業装置では、接触反力の計測範囲が一定であるか狭いので、様々な作業に対応するのが困難である。従来の遠隔作業装置において、様々な作業に対応する広い計測範囲を確保するためには、多くのセンサを搭載する必要がある。しかし、従来の遠隔作業装置では、多くのセンサを備えるとサイズが大きくなり、例えば過酷環境での作業に適さないという課題を有する。
【0006】
本発明の目的は、過酷環境下においても、広い範囲の接触反力をオペレータに提示することができる遠隔作業装置を提供することである。
【課題を解決するための手段】
【0007】
本発明による遠隔作業装置は、オペレータに操作される作業ロボットと、前記作業ロボットを制御する制御部と、前記作業ロボットが得た力覚情報を前記オペレータに提示する力覚提示インターフェースと、を備える。前記作業ロボットは、指部と手首部とを備えるハンド部と、一端部に前記ハンド部を備えるアーム部とを備える。指部は、手首部の一端部に固定されており、作業対象物に接触可能である。前記手首部は、前記指部が固定された先端部7304と、並列に配置された複数のシリンダと、前記アーム部に固定されたベースとを備える。前記シリンダは、荷重の付加により伸縮可能であり、一端部が前記先端部に回転可能に接続されているとともに、他端部が前記ベースに回転可能に接続されている。前記制御部は、前記シリンダに荷重を付加して前記シリンダを伸縮させる手首部制御部と、前記シリンダの長さであるシリンダ長を計測するシリンダ長センサと、前記シリンダを伸縮させる荷重を計測する制御入力センサと、前記シリンダ長センサが計測した前記シリンダ長に基づいて前記手首部の姿勢を算出する手首部姿勢算出部と、前記制御入力センサの信号から前記シリンダに加わる荷重であるシリンダ荷重を算出するシリンダ荷重算出部と、前記手首部姿勢算出部が算出した前記手首部の姿勢と、前記シリンダ荷重算出部が算出した前記シリンダ荷重から、前記ハンド部の接触反力を算出する反力算出部と、前記反力算出部が算出した前記接触反力を表示する出力部とを備える。前記力覚提示インターフェースは、前記反力算出部が算出した前記接触反力を前記オペレータに提示する。
【発明の効果】
【0008】
本発明によると、過酷環境下においても、広い範囲の接触反力をオペレータに提示することができる遠隔作業装置を提供することができる。
【図面の簡単な説明】
【0009】
【
図1】本発明の実施例による遠隔作業装置の構成を示す図である。
【
図3】本発明の実施例による遠隔作業装置の制御構成を示すブロック図である。
【
図4】本発明の実施例による遠隔作業装置を用いた遠隔作業の手順を示すフロー図である。
【
図5】
図4に示したステップ1002とステップ1003の処理を詳しく説明するフロー図である。
【
図6】本実施例において、ハンド部の接触反力を算出する計算処理に関する幾何関係を示す図である。
【
図7】本実施例において、シリンダの伸縮と手首部の姿勢と分解能との関係の例を示す図である。
【
図8A】シリンダの長さが伸長している場合の、接触反力とシリンダ荷重との関係の例を示す図である。
【
図8B】シリンダの長さが収縮している場合の、接触反力とシリンダ荷重との関係の例を示す図である。
【発明を実施するための形態】
【0010】
本発明による遠隔作業装置は、ハンド部を有する作業ロボットを備え、ハンド部の作業対象物との接触状態を把握できるように、接触反力をオペレータに提示することができる。ハンド部は、並列に配置された複数のシリンダを備え、シリンダの長さを調整することで、接触反力に対するシリンダに加わる荷重の比を変化させることができ、広い範囲の接触反力をオペレータに提示することができる。また、本発明による遠隔作業装置は、必要とするセンサの数が少ないので、作業ロボットのサイズが小さく、例えば人間の立ち入りが困難な災害現場等の過酷環境での作業に用いることができる。
【0011】
以下、本発明の実施例による遠隔作業装置を、図面を参照して説明する。本実施例では、遠隔作業装置が備える作業ロボットが、接触反力の計測範囲を調節して作業対象物を把持する作業を行う場合を例示して、遠隔作業装置の構成を説明する。なお、以下では、接触反力のことを単に反力と呼ぶ場合もある。
【0012】
図1は、本実施例による遠隔作業装置の構成を示す図である。本実施例による遠隔作業装置は、作業ロボット7、制御部、コントローラ3、及び力覚提示インターフェース2を備える。遠隔作業装置の制御部は、作業ロボット制御装置6、データ処理装置5、及び操作装置4を備える。
【0013】
作業ロボット7は、作業環境1000に配置されており、オペレータ1に操作されて作業を実施する。作業環境1000には、作業ロボット7が作業を実施する対象の物体である作業対象物8が存在する。
【0014】
作業ロボット7は、移動機構72と、アーム部74と、ハンド部73を備える。移動機構72は、作業ロボット7を移動させるための任意の機構で構成することができ、例えばクローラ(無限軌道)を備えることができる。アーム部74は、その一端部にハンド部73を備えるとともに、リンクと関節を備えてハンド部73を移動させる。
【0015】
ハンド部73は、作業対象物8に対して作業を実施する要素である。本実施例では、ハンド部73は、指部71と、手首部7300を備える。
【0016】
指部71は、手首部7300の一端部に固定されており、作業対象物8に接触し、作業対象物8を把持する。
【0017】
手首部7300は、後述するベースによりアーム部74に接続し、指部71をアーム部74に接続する。
【0018】
なお、本実施例では、一例として、ハンド部73が指部71を備え、指部71が作業対象物8に接触して作業対象物8を把持する構成について説明するが、ハンド部73の構成は、これに限定しない。例えば、ハンド部73は、指部71の代わりに加工ツールを備え、加工ツールで作業対象物8に接触し作業対象物8に対して切断や切削等の加工を行うこともできる。
【0019】
【0020】
図2は、ハンド部73の構成を示す図である。ハンド部73は、指部71と手首部7300を備える。
【0021】
指部71は、手首部7300の一端部に固定されており、作業対象物8に接触可能であり、作業対象物8を把持することができる。作業ロボット7は、ハンド部73の指部71が作業対象物8に接触すると、作業対象物8との接触点から接触反力を受ける。
【0022】
手首部7300は、先端部7304と、複数のシリンダ7301と、ベース7302と、関節部7303を備える。
【0023】
先端部7304は、手首部7300の一端部に位置する。先端部7304の一端部には、指部71が固定されている。先端部7304の他端部には、並列に配置された複数のシリンダ7301が回転可能に接続されている。
【0024】
複数のシリンダ7301は、互いに並んで配置されている。シリンダ7301のそれぞれは、内部に摺動部材(例えばピストン)を備え、荷重の付加により摺動部材が移動することにより伸縮可能である。シリンダ7301は、一端部が先端部7304に回転可能に接続されており、他端部がベース7302に回転可能に接続されている。シリンダ7301は、先端部7304との接続部を中心として先端部7304に対して回転可能であり、ベース7302との接続部を中心としてベース7302に対して回転可能である。シリンダ7301は、荷重が加えられて伸縮すると、先端部7304に対して回転して先端部7304との接続角度が変化し、ベース7302に対して回転してベース7302との接続角度が変化する。
【0025】
本実施例では、シリンダ7301のそれぞれに配管7305が接続されており、配管7305によって供給された油の圧力によりシリンダ7301に荷重が付加されて、シリンダ7301が伸縮するものとする。なお、シリンダ7301は、油圧により伸縮するものに限られず、水圧及び空気圧などの圧力の作用や、電流及び電圧などの電気の作用で伸縮してもよい。すなわち、シリンダ7301を伸縮させる荷重は、例えば、油圧、水圧、空気圧、電流、及び電圧のうち少なくとも1つの作用による荷重とすることができる。
【0026】
配管7305は、シリンダ7301と制御入力センサ65を接続し、シリンダ7301とシリンダ長センサ66を接続する。制御入力センサ65とシリンダ長センサ66については、後述する。
【0027】
ベース7302は、アーム部74(
図1)に固定されている。ベース7302は、手首部7300をアーム部74に接続する部材であり、シリンダ7301を回転可能に接続している。
【0028】
関節部7303は、シリンダ7301をベース7302に対して回転可能に接続するための受動関節である。関節部7303は、シリンダ7301の長さに応じて、ベース7302と先端部7304との間を円滑に接続する部材である。
【0029】
シリンダ7301は、長さが変化すると、関節部7303を中心としてベース7302に対して回転し、先端部7304をベース7302に対して円滑に移動させ、指部71をアーム部74に対して円滑に移動させる。
【0030】
図1に戻って、本実施例による遠隔作業装置の構成を説明する。
【0031】
作業ロボット制御装置6は、作業ロボット7を制御する装置であり、作業ロボット7に対してデータを送受信可能である。作業ロボット制御装置6は、シリンダ長センサ66と制御入力センサ65(
図2)を備える。シリンダ長センサ66は、作業ロボット7が備えるハンド部73のシリンダ7301の長さ(シリンダ長)を計測する。制御入力センサ65は、ハンド部73を制御するための入力、すなわちシリンダ7301を伸縮させる荷重(例えば、シリンダ7301に加わる圧力)を計測する。
【0032】
データ処理装置5は、作業ロボット制御装置6に接続されている。データ処理装置5は、例えば、作業ロボット制御装置6が計測した情報から作業ロボット7が得た接触反力を算出する。
【0033】
操作装置4は、オペレータ1が遠隔作業装置を操作するための装置であり、入力部を備える。入力部は、例えばキーボードやマウスなどで構成することができる。オペレータ1は、作業ロボット7を操作するのに必要な情報を入力部から入力することができる。
【0034】
コントローラ3は、オペレータ1が作業ロボット7への操作を入力する装置である。コントローラ3を用いたオペレータ1の操作入力は、コントローラ3から操作装置4へ出力される。作業ロボット7の作業を管理し監視するオペレータ1は、コントローラ3を用いて操作装置4へ作業指示を入力することで、作業ロボット7を操作する。
【0035】
力覚提示インターフェース2は、作業ロボット7が得た力覚情報(作業対象物8から受けた接触反力や作業対象物8への触覚)をオペレータ1に提示するインターフェースである。データ処理装置5が算出した接触反力は、力覚情報に変換されて力覚提示インターフェース2に出力される。力覚提示インターフェース2は、オペレータ1に力を加えたり振動を与えたりすることによって力覚を感知させて、接触反力などの力覚情報をオペレータ1に提示する。力覚提示インターフェース2は、公知の構成を備えることができる。
【0036】
図3は、本実施例による遠隔作業装置の制御構成を示すブロック図である。
【0037】
操作装置4は、操作入力部40、目標値算出部41、データ送受信部42、反力計測範囲入力部43、及び力覚情報出力部44を備える。
【0038】
操作入力部40は、コントローラ3を用いたオペレータ1の操作入力を操作装置4へ入力する。
【0039】
目標値算出部41は、オペレータ1の操作入力から作業ロボット7の動作目標値(例えば、移動機構72による移動方向と移動距離や、アーム部74とハンド部73の移動方向など)を算出し、算出した動作目標値を出力する。
【0040】
データ送受信部42は、データ処理装置5との間のデータの送受信を管理する。
【0041】
反力計測範囲入力部43は、オペレータ1が指定した接触反力の計測範囲を操作装置4へ入力する。オペレータ1は、実施する作業に応じて、接触反力の計測範囲を指定する。
【0042】
力覚情報出力部44は、オペレータ1に提示する力覚情報(例えば、接触反力)を力覚提示インターフェース2に出力する。また、力覚情報出力部44は、画面を備え、オペレータ1が作業ロボット7を操作するのに必要な情報や、作業ロボット制御装置6が計測した作業ロボット7の情報や、データ処理装置5が算出した値などを画面に表示することができる。
【0043】
データ処理装置5は、データ送受信部50、手首部姿勢算出部51、シリンダ荷重算出部52、反力算出部53、及び力覚情報算出部54を備える。
【0044】
データ送受信部50は、操作装置4との間と作業ロボット制御装置6との間のデータの送受信を管理する。例えば、データ送受信部50は、作業ロボット7の動作目標値を操作装置4から作業ロボット制御装置6に送信する。
【0045】
手首部姿勢算出部51は、作業ロボット制御装置6が備えるシリンダ長センサ66の信号から、シリンダ長センサ66が計測したシリンダ7301の長さ(シリンダ長)に基づいて手首部7300の姿勢を算出する。手首部7300の姿勢とは、指部71の位置(アーム部74すなわちベース7302からの距離と角度)であり、シリンダ長によって決まる。手首部姿勢算出部51は、シリンダ7301のそれぞれの長さから、手首部7300の姿勢を算出することができる。手首部7300の姿勢は、シリンダ7301が伸縮してベース7302に対して回転し、指部71のベース7302からの距離と角度が変化することで、変化する。
【0046】
シリンダ荷重算出部52は、作業ロボット制御装置6が備える制御入力センサ65の信号から、シリンダ7301に加わる荷重(シリンダ荷重)を算出する。
【0047】
反力算出部53は、手首部姿勢算出部51が算出した手首部7300の姿勢と、シリンダ荷重算出部52が算出したシリンダ荷重から、ハンド部73の接触反力を算出する。ハンド部73の接触反力は、後述する
図6を用いて説明するように、それぞれのシリンダ7301のシリンダ荷重を合成して得られる。
【0048】
力覚情報算出部54は、反力算出部53が算出した接触反力を、力覚提示インターフェース2がオペレータ1に提示する力覚情報に変換する。
【0049】
作業ロボット制御装置6は、データ送受信部60、目標値算出部61、ロボット制御部62、シリンダ長算出部63、手首部制御部64、制御入力センサ65、及びシリンダ長センサ66を備える。
【0050】
データ送受信部60は、データ処理装置5との間のデータの送受信を管理する。
【0051】
目標値算出部61は、データ処理装置5から送信された作業ロボット7の動作目標値を基に、作業ロボット7の指部71とアーム部74と移動機構72の目標制御値を算出する。例えば、目標値算出部61は、アーム部74の関節でのリンクの角度の目標値や、移動機構72のクローラの回転速度の目標値を算出する。
【0052】
ロボット制御部62は、目標値算出部61が算出した目標制御値に基づき、作業ロボット7のアーム部74と移動機構72を制御する。
【0053】
シリンダ長算出部63は、反力計測範囲入力部43が入力した接触反力の計測範囲から、この計測範囲を満たすシリンダ7301の長さ(シリンダ長)を算出する。シリンダ長算出部63は、反力計測範囲入力部43が入力した、すなわちオペレータ1が指定した接触反力の計測範囲から、接触反力がこの計測範囲に含まれるような手首部7300の姿勢(手首部7300の姿勢の範囲)を求め、求めた姿勢を実現するためのシリンダ長を求めることができる。
【0054】
手首部制御部64は、ハンド部73、すなわち手首部7300と指部71を制御する。手首部制御部64は、シリンダ長算出部63が算出したシリンダ長に基づき、シリンダ7301に荷重を付加してシリンダ7301を伸縮させて、手首部7300を制御する。本実施例では、手首部制御部64は、配管7305によってシリンダ7301に油を供給して、シリンダ7301を伸縮させる。また、手首部制御部64は、指部71が作業対象物8を把持したり放したりするように、指部71を制御する。
【0055】
制御入力センサ65は、既に述べたように、ハンド部73を制御するための入力、すなわちシリンダ7301を伸縮させる荷重(例えば、シリンダ7301に加わる圧力)を計測する。制御入力センサ65により、ハンド部73の状態(例えば、手首部7300の姿勢)を知ることができる。制御入力センサ65は、シリンダ7301に加わる荷重として、例えば、油圧、水圧、空気圧、電流、及び電圧のうち少なくとも1つを計測することができる。すなわち、制御入力センサ65は、圧力センサ、電流センサ、及び電圧センサのうち少なくとも1つで構成することができる。さらに、制御入力センサ65は、カメラを備え、カメラで撮影したシリンダ7301の画像を取得してもよい。
【0056】
シリンダ長センサ66は、既に述べたように、ハンド部73のシリンダ7301の長さ(シリンダ長)を計測する。シリンダ長センサ66は、既存のセンサを用いて構成することができる。また、シリンダ長センサ66は、カメラを備え、カメラでシリンダ7301の画像を撮影することでシリンダ長を計測してもよい。
【0057】
作業ロボット7は、既に述べたように、移動機構72と、アーム部74と、指部71と手首部7300を有するハンド部73を備える。
【0058】
図4は、本実施例による遠隔作業装置を用いた遠隔作業の手順を示すフロー図である。
図4では、一例として、オペレータ1が遠隔作業装置を用いて作業対象物8を運搬する作業を実施する例を説明する。遠隔作業装置の作業ロボット7は、作業対象物8を把持して運搬する。
【0059】
ステップ1001で、オペレータ1は、作業対象物8を把握し、接触反力の計測範囲を遠隔作業装置に入力する。オペレータ1は、例えば、操作装置4を用いて、接触反力の計測範囲を数値で入力する。
【0060】
ステップ1002で、遠隔作業装置は、オペレータ1が入力した計測範囲に応じて、作業ロボット7のハンド部73を制御する。作業ロボット制御装置6のシリンダ長算出部63は、オペレータ1が入力した計測範囲を基に、ハンド部73のシリンダ7301の長さ(シリンダ長)を定める。これにより、作業ロボット7のハンド部73が作業対象物8に接触するときの、手首部7300の姿勢(すなわち、指部71のベース7302からの距離)が定められる。ステップ1002については、
図5を用いて詳しく説明する。
【0061】
ステップ1003で、遠隔作業装置は、作業ロボット7で作業対象物8に接触し、このときの接触反力を出力する。作業ロボット7のハンド部73は、ステップ1002で定められた手首部7300の姿勢で指部71が作業対象物8に接触し、指部71で作業対象物8を把持する。遠隔作業装置は、作業ロボット7が作業対象物8に接触したときの接触反力を反力算出部53で求め、求めた接触反力を操作装置4の力覚情報出力部44の画面に表示したり力覚提示インターフェース2で提示したりすることで、接触反力を出力する。ステップ1003については、
図5を用いて詳しく説明する。
【0062】
ステップ1004で、オペレータ1は、ステップ1003で出力された接触反力を、ステップ1001で入力した計測範囲と比較し、接触反力が計測範囲に含まれているか否かを判断する。オペレータ1は、例えば、操作装置4の力覚情報出力部44の画面に表示された接触反力を見て、接触反力が入力した計測範囲に含まれているか否かを判断する。接触反力が計測範囲に含まれていない場合は、ステップ1005に進む。接触反力が計測範囲に含まれている場合は、ステップ1006に進む。
【0063】
ステップ1005で、オペレータ1は、接触反力が入力した計測範囲に含まれていないので、作業ロボット7を作業対象物8から離す。作業ロボット7は、作業対象物8から離れて、作業対象物8に接触しない位置に移動する。そして、ステップ1001に戻り、オペレータ1は、接触反力の計測範囲を遠隔作業装置に再度入力する。オペレータ1は、作業ロボット7が別の作業対象物8を把持するように、ステップ1005で作業ロボット7を移動させてもよい。
【0064】
ステップ1006で、オペレータ1は、接触反力が入力した計測範囲に含まれているので、作業ロボット7で作業対象物8を把持して運搬する。
【0065】
なお、
図4には、一例として、作業ロボット7が作業対象物8を把持して運搬する作業を行う例を示した。作業ロボット7は、作業対象物8に対する他の作業、例えば、作業対象物8に対して切断や切削等の加工を行う作業も、
図4に示したフローと同様のフローで行うことができる。
【0066】
図5は、
図4に示したステップ1002とステップ1003の処理を詳しく説明するフロー図である。ステップ1002とステップ1003の処理は、本実施例による遠隔作業装置が実行する。
【0067】
初めに、ステップ1002の処理について説明する。
【0068】
ステップ10021で、作業ロボット制御装置6は、
図4のステップ1001で入力された接触反力の計測範囲から、接触反力に対するシリンダ荷重の比をシリンダ長算出部63で算出する。なお、接触反力に対するシリンダ荷重(シリンダ7301に加わる荷重)の比のことを、「接触反力に対するシリンダ荷重の分解能」とも呼ぶ。
【0069】
制御入力センサ65は、計測範囲が定まっており、この計測範囲内の値の荷重しか計測できない。そこで、シリンダ長算出部63は、ステップ1001で入力された接触反力の計測範囲が、制御入力センサ65の荷重の計測範囲に含まれるように、接触反力に対するシリンダ荷重の比(分解能)を算出する。例えば、シリンダ長算出部63は、入力された接触反力の下限の値が制御入力センサ65の計測範囲の下限の値になり、入力された接触反力の上限の値が制御入力センサ65の計測範囲の上限の値になるように、分解能を算出(より正確には、分解能の範囲を設定)する。
【0070】
ステップ10022で、シリンダ長算出部63は、算出した分解能(接触反力に対するシリンダ荷重の比)から手首部7300の姿勢を算出する。分解能(接触反力に対するシリンダ荷重の比)が定まると、後述する
図7と
図8Aと
図8Bに示すように、手首部7300の姿勢(すなわち、指部71の位置)が定まる。
【0071】
ステップ10023で、シリンダ長算出部63は、算出した手首部7300の姿勢を実現するシリンダ長を算出する。既に述べたように、手首部7300の姿勢は、指部71の位置のことであり、シリンダ長によって定まる。なお、
図4のステップ1001では、接触反力の計測範囲が入力されているので、シリンダ長算出部63は、この計測範囲を満たすシリンダ長を算出する。すなわち、シリンダ長算出部63は、この計測範囲に対応するシリンダ長の範囲のうちの任意の値をシリンダ長として算出する。
【0072】
ステップ10024で、手首部制御部64は、シリンダ7301の長さがシリンダ長算出部63が算出したシリンダ長になるように、手首部7300を制御する。シリンダ7301は、手首部制御部64によって荷重が加えられることで、算出されたシリンダ長になるように伸縮する。
【0073】
次に、ステップ1003の処理について説明する。
【0074】
ステップ10031で、作業ロボット制御装置6は、アーム部74とハンド部73を制御して、ハンド部73の指部71が作業対象物8を把持できるように、指部71を作業対象物8に接触させる。ハンド部73は、シリンダ7301の長さがシリンダ長算出部63が算出したシリンダ長の状態で、指部71が作業対象物8に接触する。
【0075】
ステップ10032で、データ処理装置5は、指部71が作業対象物8に接触しているときの手首部7300についての情報を、制御入力センサ65とシリンダ長センサ66から取得する。制御入力センサ65は、シリンダ7301を伸縮させている荷重(例えば、シリンダ7301に加わっている圧力)を制御入力として計測する。シリンダ長センサ66は、シリンダ7301の長さ(シリンダ長)を計測する。データ処理装置5は、制御入力センサ65から制御入力を取得し、シリンダ長センサ66からシリンダ長を取得する。
【0076】
ステップ10033で、データ処理装置5の手首部姿勢算出部51は、シリンダ長センサ66が計測したシリンダ長から手首部7300の姿勢を算出する。シリンダ7301の長さ(シリンダ長)が決まると、手首部7300の姿勢(指部71の位置)が定まる。
【0077】
ステップ10034で、データ処理装置5のシリンダ荷重算出部52は、制御入力センサ65から取得した制御入力から、シリンダ7301に加わる荷重(シリンダ荷重)を算出する。
【0078】
ステップ10035で、データ処理装置5の反力算出部53は、手首部姿勢算出部51が算出した手首部7300の姿勢と、シリンダ荷重算出部52が算出したシリンダ荷重から、ハンド部73の接触反力を算出する。
【0079】
ステップ10036で、データ処理装置5の力覚情報算出部54は、反力算出部53が算出した接触反力を、力覚提示インターフェース2がオペレータ1に提示する力覚情報に変換する。
【0080】
ステップ10037で、力覚提示インターフェース2は、力覚情報算出部54が変換した力覚情報(接触反力)をオペレータ1に提示し、操作装置4は、反力算出部53が算出した接触反力を力覚情報出力部44の画面に表示する。力覚提示インターフェース2は、例えば、接触反力をオペレータ1が知覚する力と振動の少なくとも一方としてオペレータ1に提示することができる。力覚情報出力部44は、例えば、接触反力の大きさと方向を表示することができる。
【0081】
図6は、本実施例での作業ロボット7において、ハンド部73の接触反力を算出する計算処理に関する幾何関係を示す図である。
図6には、一例として、手首部7300が、並列に配置された3本のシリンダ7301を備える構成を示している。3本のシリンダ7301のそれぞれは、一端部が先端部7304に接続されており、他端部がベース7302に接続されている。
図6には、先端部7304の基準点7304aとベース7302の基準点7302aを黒丸で示している。基準点7304aは、先端部7304の内部の点であり、任意に定めることができる。基準点7302aは、ベース7302の内部の点であり、任意に定めることができる。
【0082】
図6を用いて、
図5に示したステップ10033とステップ10035での計算処理に関する幾何関係を説明する。
【0083】
図6において、xは、ベース7302の基準点7302aから先端部7304の基準点7304aまでのベクトルを表す。このベクトルxは、先端部7304のベース7302からの相対位置、すなわち指部71の位置(手首部7300の姿勢)を表す。r
iは、各シリンダ7301に加わる荷重(シリンダ荷重)の方向ベクトルを表す。b
iは、ベース7302の基準点7302aから各シリンダ7301の他端部(ベース7302と各シリンダ7301との接続部)までのベクトルを表す。t
iは、各シリンダ7301の一端部(先端部7304と各シリンダ7301との接続部)から先端部7304の基準点7304aまでのベクトルを表す。l
iは、各シリンダ7301の長さ(シリンダ長)を表す。iは、シリンダ7301の識別子(i=1、2、3)である。
【0084】
ステップ10033において、手首部姿勢算出部51は、シリンダ長liから手首部7300の姿勢を算出する。
【0085】
式(1)は、先端部7304のベース7302からの相対位置(ベクトルx)を算出する式である。手首部姿勢算出部51は、式(1)を用いて、先端部7304のベース7302からの相対位置xを算出する。相対位置xは、手首部7300の姿勢を表す。
x=bi+liri+ti (1)
式(1)において、biとtiは、既知の値であり、riは、手首部7300の構造とliの値(シリンダ長)に依存して定まる値である。なお、式(1)では、i=1からi=3までの合計をxとする。
【0086】
ステップ10035において、反力算出部53は、手首部7300の姿勢(より正確には、相対位置xを与えるシリンダ荷重の方向ベクトルri)とシリンダ荷重の大きさから、ハンド部73の接触反力を算出する。
【0087】
式(2)は、各シリンダ7301のシリンダ荷重の方向ベクトルriとシリンダ荷重の大きさから、接触反力Fを算出する式である。
F=p1r1+p2r2+p3r3 (2)
式(2)において、Fは、接触反力を表すベクトルであり、pi(i=1、2、3)は、シリンダ荷重の大きさである。ハンド部73の接触反力Fは、それぞれのシリンダ7301のシリンダ荷重を合成して得られる。各シリンダ7301に加わる荷重(シリンダ荷重)は、接触反力Fの分散圧力である。
【0088】
図7は、本実施例での作業ロボット7において、シリンダ7301の伸縮と指部71の位置(すなわち、手首部7300の姿勢)と分解能との関係の例を示す図である。
図7には、左から右に向けて、シリンダ7301が次第に収縮していく様子を示している。
【0089】
シリンダ7301が収縮していくと、指部71とベース7302との距離が短くなっていき、シリンダ7301に加わる荷重(シリンダ荷重)の大きさp
iが大きくなっていく。すなわち、シリンダ7301が収縮していくと(
図7の左から右に変化してくと)、接触反力Fに対するシリンダ荷重p
iの比(接触反力に対するシリンダ荷重の分解能p
i/F)が大きくなっていく。
図7に示すように、シリンダ7301が伸縮すると、手首部7300の姿勢が変化し、分解能p
i/Fも変化する。
【0090】
図8Aと
図8Bは、本実施例での作業ロボット7において、接触反力Fとシリンダ7301に加わる荷重(シリンダ荷重p
i)との関係の例を示す図である。接触反力Fは、それぞれのシリンダ7301のシリンダ荷重p
i(p
1とp
2)に分散される。
【0091】
図8Aは、シリンダ7301の長さが伸長している場合の、接触反力Fとシリンダ荷重p
iの向きとの関係の例を示す図である。
図8Aに示すように、シリンダ7301の長さが伸長していると、接触反力Fとシリンダ荷重p
iの向きとの間の角度が比較的小さいので、接触反力Fに対するシリンダ荷重p
iの比(接触反力に対するシリンダ荷重の分解能p
i/F)は、比較的小さい。
【0092】
本実施例での作業ロボット7では、ハンド部73が大きな力を必要とする作業(例えば、重作業)を実施する場合には、シリンダ7301の長さを伸長させ、接触反力Fに対するシリンダ荷重piの比(分解能pi/F)を小さくすることができる。従来の技術では、大きな接触反力Fを発生させるには、シリンダ荷重piの大きさを大きくする必要がある。すると、シリンダ荷重piの大きさがセンサの計測範囲を超えてしまい、センサでシリンダ荷重piを計測できなくなることがある。本実施例での作業ロボット7では、シリンダ7301の長さを伸長させて(すなわち、手首部7300の姿勢を変えて)シリンダ荷重piの大きさを小さくすることで、センサ(制御入力センサ65)でシリンダ荷重piの大きさを計測できるようにする。
【0093】
図8Bは、シリンダ7301の長さが収縮している場合の、接触反力Fとシリンダ荷重p
iの向きとの関係の例を示す図である。
図8Bに示すように、シリンダ7301の長さが収縮していると、接触反力Fとシリンダ荷重p
iの向きとの間の角度が比較的大きいので、接触反力Fに対するシリンダ荷重p
iの比(接触反力に対するシリンダ荷重の分解能p
i/F)は、比較的大きい。
【0094】
本実施例での作業ロボット7では、ハンド部73が小さな力で行う作業(例えば、繊細な作業)を実施する場合には、シリンダ7301の長さを収縮させ、接触反力Fに対するシリンダ荷重piの比(分解能pi/F)を大きくすることができる。従来の技術では、小さな接触反力Fを発生させるには、シリンダ荷重piの大きさを小さくする必要がある。すると、シリンダ荷重piの大きさがセンサの計測範囲を超えてしまい、センサでシリンダ荷重piを計測できなくなることがある。本実施例での作業ロボット7では、シリンダ7301の長さを収縮させて(すなわち、手首部7300の姿勢を変えて)シリンダ荷重piの大きさを大きくすることで、センサ(制御入力センサ65)でシリンダ荷重piの大きさを計測できるようにする。
【0095】
本実施例による遠隔作業装置は、以上説明したように、シリンダ7301の長さを変えてシリンダ荷重の方向(すなわち、手首部7300の姿勢)を変えることで、接触反力Fに対するシリンダ荷重piの比(分解能pi/F)を変化させることができるので、広い範囲の接触反力Fを算出してオペレータに提示することができる。従来の遠隔作業装置では、接触反力の計測範囲が一定であるので、様々な作業(例えば、重作業や繊細な作業)に対応するのが困難である。本実施例による遠隔作業装置では、接触反力の計測範囲は、ハンド部73のシリンダ7301を伸縮させてシリンダ長を変えることで、幅広く調節できる。
【0096】
また、本実施例による遠隔作業装置では、作業ロボットは、制御入力センサ65とシリンダ長センサ66だけを使用し、使用するセンサの数が少ないので、サイズが小さく、人間の立ち入りが困難な災害現場等の過酷環境でも使用することができる。従来の遠隔作業装置では、接触反力の計測範囲を広げるには、使用するセンサの数を増やす必要があり、作業ロボットのサイズが大きくなって過酷環境での使用が困難である。本実施例による遠隔作業装置は、過酷環境下においても、広い範囲の接触反力を算出してオペレータに提示することができる。
【0097】
なお、本発明は、上記の実施例に限定されるものではなく、様々な変形が可能である。例えば、上記の実施例は、本発明を分かりやすく説明するために詳細に説明したものであり、本発明は、必ずしも説明した全ての構成を備える態様に限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能である。また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、削除したり、他の構成を追加・置換したりすることが可能である。
【符号の説明】
【0098】
1…オペレータ、2…力覚提示インターフェース、3…コントローラ、4…操作装置、5…データ処理装置、6…作業ロボット制御装置、7…作業ロボット、8…作業対象物、40…操作入力部、41…目標値算出部、42…データ送受信部、43…反力計測範囲入力部、44…力覚情報出力部、50…データ送受信部、51…手首部姿勢算出部、52…シリンダ荷重算出部、53…反力算出部、54…力覚情報算出部、60…データ送受信部、61…目標値算出部、62…ロボット制御部、63…シリンダ長算出部、64…手首部制御部、65…制御入力センサ、66…シリンダ長センサ、71…指部、72…移動機構、73…ハンド部、74…アーム部、7300…手首部、7301…シリンダ、7302…ベース、7302a…基準点、7303…関節部、7304…先端部、7304a…基準点、7305…配管、1000…作業環境。