JP2022187926A - 操作システム、および、操作方法 - Google Patents

操作システム、および、操作方法 Download PDF

Info

Publication number
JP2022187926A
JP2022187926A JP2021096184A JP2021096184A JP2022187926A JP 2022187926 A JP2022187926 A JP 2022187926A JP 2021096184 A JP2021096184 A JP 2021096184A JP 2021096184 A JP2021096184 A JP 2021096184A JP 2022187926 A JP2022187926 A JP 2022187926A
Authority
JP
Japan
Prior art keywords
motion
unit
operator
time
robot
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.)
Pending
Application number
JP2021096184A
Other languages
English (en)
Inventor
孝英 吉池
Takahide Yoshiike
クリストファー ギャリー
Garry Christopher
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.)
Honda Motor Co Ltd
Original Assignee
Honda Motor 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 Honda Motor Co Ltd filed Critical Honda Motor Co Ltd
Priority to JP2021096184A priority Critical patent/JP2022187926A/ja
Priority to US17/824,956 priority patent/US11640203B2/en
Publication of JP2022187926A publication Critical patent/JP2022187926A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/014Hand-worn input/output arrangements, e.g. data gloves
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/015Input arrangements based on nervous system activity detection, e.g. brain waves [EEG] detection, electromyograms [EMG] detection, electrodermal response detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B17/00Monitoring; Testing
    • H04B17/10Monitoring; Testing of transmitters
    • H04B17/101Monitoring; Testing of transmitters for measurement of specific parameters of the transmitter or components thereof
    • H04B17/104Monitoring; Testing of transmitters for measurement of specific parameters of the transmitter or components thereof of other parameters, e.g. DC offset, delay or propagation times
    • 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/40151Time delay, problems caused by time delay between local and remote
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/01Indexing scheme relating to G06F3/01
    • G06F2203/011Emotion or mood input determined on the basis of sensed human body parameters such as pulse, heart rate or beat, temperature of skin, facial expressions, iris, voice pitch, brain activity patterns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/24Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]

Abstract

【課題】操作性を向上することができる操作システムおよび操作方法を提供する。【解決手段】予測部は操作者の生体信号から、現在から予測時間の経過後の予測時刻における当該操作者の動作の予測値を、所定の機械学習モデルを用いて定め、制御部は、前記予測値に基づいてロボットの動作を制御し、予測時間設定部は、前記操作者の動作の現在値から前記ロボットの動作までの遅延時間に基づいて前記予測時間を定める。本実施形態は、操作システムまたは操作方法として実施することができる。【選択図】図1

Description

本発明は、操作システム、および、操作方法に関する。
操作者の動作を受け付け、受け付けた動作に応じてロボットを駆動する操作システムが提案されている。操作システムは、操作者の動作を通信により遠隔地に所在するロボットに伝達する遠隔操縦システムとして構成されることもある。かかる操作システムでは、通信遅延、制御遅延などにより、ロボットの動作は操作者の動作よりも遅延する。ロボットの動作は、カメラ等により撮像され、ヘッドマウンテッドディスプレイ、据え置き型のモニタ画面などを用いて操作者に提示される。この際にも、撮像時のサンプリング、通信遅延などにより映像の遅延が発生する。操作者は、提示画像を視認して次の動作を定める。画像を視認して把握された動作に遅延が生ずると、操作者は自身の操作を遅くせざるを得ないことがある。その場合には、操作効率が低下し、操作者はロボットの操作に対する自己主体感を得られないことがある。
特開2001-54507号公報
しかしながら、特許文献1に記載の手法でも、ロボットの動作が操作者の動作よりも遅延する。操作者の動作速度が変化すると、ある時点におけるロボットの動作は、操作者の動作とは異なることになる。このことは、操作効率を低下させ、自己主体感を妨げる要因となりうる。
また、操作システムが適用される環境や操作者の嗜好によっても、遅延に対する違和感の度合いや許容性が異なることがある。
本発明の態様は上記の点に鑑みてなされたものであり、操作性を向上することができる操作システム、および、操作方法を提供することを課題の一つとする。
(1)本発明は上記の課題を解決するためになされたものであり、本発明の一態様は、操作者の生体信号から、現在から予測時間の経過後の予測時刻における当該操作者の動作の予測値を、所定の機械学習モデルを用いて定める予測部と、前記予測値に基づいてロボットの動作を制御する制御部と、前記操作者の動作の現在値から前記ロボットの動作までの遅延時間に基づいて前記予測時間を定める予測時間設定部と、を備える操作システムである。
(2)本発明の他の態様は、(1)の操作システムであって、前記予測時間設定部は、前記動作の現在値と前記ロボットの動作環境を示す画像を用いて、前記遅延時間を検出してもよい。
(3)本発明の他の態様は、(1)または(2)の操作システムであって、前記ロボットの動作環境を示す画像を撮影する撮影部を備えてもよい。
(4)本発明の他の態様は、(3)の操作システムであって、前記予測時間設定部は、前記予測部から前記制御部への伝送と、前記撮影部から前記予測時間設定部への伝送に係る伝送遅延を検出し、前記伝送遅延に基づいて前記予測時間を定めてもよい。
(5)本発明の他の態様は、(1)から(4)のいずれかの操作システムであって、前記予測時間設定部は、前記予測時間の設定画面を表示部に表示させ、操作信号に基づいて前記予測時間を設定してもよい。
(6)本発明の他の態様は、(1)から(5)のいずれかの操作システムであって、少なくとも前記ロボットの動作環境を示す画像と前記操作者の動作を示す動作信号に基づいて当該操作者の第2動作を推定する推定部を備えてもよい。前記制御部は、さらに前記第2動作に基づいて前記ロボットの動作を制御してもよい。
(7)本発明の他の態様は、(1)から(6)のいずれかの操作システムであって、生体信号から操作者の動作までの遅延時間で遅延させた前記生体信号から前記機械学習モデルを用いて定まる前記操作者の動作の予測値と、前記操作者の動作の実測値との差分がより低減するように前記機械学習モデルのパラメータを定めるモデル学習部を備えてもよい。
(8)本発明の他の態様は、操作システムにおける操作方法であって、操作者の生体信号から、現在から予測時間の経過後の予測時刻における当該操作者の動作の予測値を、所定の機械学習モデルを用いて定める第1ステップと、前記予測値に基づいてロボットの動作を制御する第2ステップと、予測時間設定部が、前記操作者の動作の現在値から前記ロボットの動作までの遅延時間に基づいて前記予測時間を定める第3ステップと、を有する操作方法である。
上述した(1)、(8)の構成によれば、操作者の動作からロボットの動作までの遅延時間に基づいて定められた予測時間の経過後の予測時刻における、操作者の動作の予測値に基づいてロボットの動作が制御される。遅延時間の変動に応じて制御対象とするロボットの動作の時刻を調整することができるため、遅延時間の変動を低減または解消できる。そのため、操作性を向上することができる。ひいては、操作の自己主体感を向上させることができる。
上述した(2)の構成によれば、操作者の動作から、その動作がロボットの動作に反映したことが操作者に伝達されるまでの遅延時間に基づいてロボットの動作が制御される。操作者が実感できる遅延に基づく制御がなされるため、ロボットの操作性を向上することができる。
上述した(3)の構成によれば、操作者がロボットから隔絶された場所に所在していても、ロボットの動作環境を視認しながら、その動作を制御することができる。
上述した(4)の構成によれば、予測部から制御部への伝送と、撮影部から予測時間設定部への伝送に係る伝送遅延に基づいてロボットの動作が制御される。通信環境やトラフィックなどにより著しく変動しうる伝送遅延を補償することで、ロボットの操作性を向上することができる。
上述した(5)の構成によれば、操作者が任意に予測時間を設定することができる。そのため、操作者の嗜好や作業内容に応じた予測時間に基づいてロボットの動作を制御することができる。
上述した(6)の構成によれば、操作者の動作とロボットの動作環境から操作者が意図する動作が第2動作として推定される。ロボットに対する操作に第2動作が補われることで、ロボットの動作に操作者の意図が反映される。そのため、ロボットに対する操作性がさらに向上する。
上述した(7)の構成によれば、検出された生体信号に基づく動作が得られる予想時刻よりも遅延時間に相当する時間だけ先行した時刻に、その動作の予測値が得られる。そのため、遅延時間の範囲内で動作の予測値に基づいてロボット20の動作を制御するタイミングを調整することができる。
第1の実施形態に係る操作システムの構成例を示す概略ブロック図である。 EMGと操作者動作の例を示す図である。 第2の実施形態に係る操作システムの構成例を示す概略ブロック図である。 第3の実施形態に係る操作システムの構成例を示す概略ブロック図である。 第4の実施形態に係る操作システムの構成例を示す概略ブロック図である。 モデル学習システムの構成例を示す概略ブロック図である。 機械学習モデルの構成例を示す図である。 ハードウェアの構成例を示す図である。 生体信号、操作者動作、および、ロボット動作の知覚の例を示す図である。 生体信号、操作者動作、および、ロボット動作の知覚の他の例を示す図である。 操作者動作の推定例を示す図である。
<第1の実施形態>
以下、図面を参照しながら第1の実施形態について説明する。
図1は、本実施形態に係る操作システムS1aの構成例を示す概略ブロック図である。
操作システムS1aは、操作者の生体信号から、予測時刻における当該操作者の動作の予測値を、所定の機械学習モデルを用いて定める。予測時刻は、その時点(現在)から所定の予測時間の経過後における時刻に相当する。操作システムS1aは、予測値に基づいてロボット20の動作を制御する。操作者は、自身が動作することにより、ロボット20の位置や形状を操作することができる。操作システムS1aは、操作者の動作の現在値からロボットの動作までの遅延時間に基づいて予測時間を定める。
操作システムS1aは、操作装置10a、ロボット20、および、撮影部30を含んで構成される。操作装置10aとロボット20とは、伝送路Cを経由して、各種のデータを無線または有線で相互に送受信可能に接続される。伝送路Cは、データバス(基線)に限られず、その一部または全部に通信ネットワークを含んで構成されてもよい。
撮影部30は、自部の視野内のロボット20とその周囲を示す画像を撮影する。画像には、ロボット20の動作環境が表される。撮影部30は、撮影した画像を示す画像データを操作装置10aに伝送路Cを経由して送信する。撮影部30は、例えば、ディジタルビデオカメラである。
操作装置10aは、ユーザである操作者の動作を直接または間接的に受け付け、受け付けた動作を示す動作信号をロボット20に提供する。操作装置10aは、操作者に生じる生体信号を検出し、検出した生体信号から操作者自身の予測時刻における予測値を示す動作信号を生成する。操作装置10aは、検出部110、予測部120、表示部140、および、予測時間設定部170を含んで構成される。
操作装置10aは、人体に装着可能とする装着具を備え、いわゆるウェアラブルデバイス(wearable device)として構成されてもよい。装着部には、前述の機能部をなす部材が設置される。例えば、操作装置10aは、装着具として手袋とヘッドバンド(head band)を備える。手袋は、人体の一部である手部に装着可能とする。手袋には検出部110が設置され、データグローブ(data glove)として構成される。データグローブの数は、1個または2個である。個々のデータグローブは、ロボット20を構成するマニピュレータの操作に用いられる。データグローブの個数は、マニピュレータの数と等しくてもよい。ヘッドバンドは、人体の一部である頭部に装着可能とする。ヘッドバンドは、人体の一部である頭部に装着可能とする。ヘッドバンドには、表示部140が装着され、ヘッドマウンテッドディスプレイ(HMD:Head Mounted Display)として構成されてもよい。
検出部110は、操作者に生ずる生体信号を検出する生体信号検出部を備える。検出部110は、検出した生体信号を予測部120に出力する。検出部110は、例えば、生体信号として筋電信号(EMG:Electromyogram)を取得する。筋電信号は、生体の一部をなす上腕部と手部における筋電位の時間変化、即ち、時刻ごとの筋電位を示す。筋電図は、筋電信号の一形態に相当する。本実施形態では、検出部110は、表面電極を含んで構成される。表面電極によれば、生体の表面に装着することで非侵襲的に筋電信号を取得することができる。検出部110は、検出した筋電位に所定の前処理を実行し、処理後の筋電位を示す筋電信号を予測部120に出力してもよい。
検出部110は、さらに操作者の動作を検出する動作検出部を備える。検出部110は、検出した動作を示す動作信号を予測時間設定部170に出力する。検出部110は、例えば、操作者の各部位の位置を検出するための加速度センサを備える。検出対象とする部位は、複数の部位には、少なくとも掌と各指の節が含まれる。複数の部位には、さらに手首が含まれてもよい。個々の加速度センサは、データグローブに設置されてもよい。個々の加速度センサは、データグローブが操作者の手部に装着されたときに、加速度の検出対象とする部位に接する位置に設置されればよい。
検出部110は、加速度センサに代え、操作者の体躯の画像を撮影する撮影部と、撮影した画像を用いて光学的に操作者の部位ごとの位置を検出する動作検出部を備えてもよい(モーションキャプチャ)。但し、操作者の部位ごとに、所定の波長の成分を有する光を反射するマーカを貼付しておく。
予測部120は、検出部110から入力される生体信号に基づいて、所定の機械学習モデルを用いて現在よりも所定の予測時間の経過後の時刻である予測時刻における操作者の動作を予測値として予測する。動作は、時刻ごとの姿勢の時系列で表される。予測部120は、予測した予測値を示す動作信号をロボット20に送信する。本実施形態では、予測時間は可変であり予測時間設定部170により設定される。予測時間の最大値は、操作者における生体信号の発生から動作の発生までの遅延時間となる。この遅延時間は、電気力学的遅延(EMD:Electromechanical Delay)と呼ばれることがある。予測時間の最小値は、0となる。
操作者の動作として、例えば、関節動作(joint motion)が用いられてもよい。関節動作は、筋骨格動力学モデル(muscle dynamics model)に基づいて各時刻における人体の複数の部位のうち相互に接続される2つの部位からなる対ごとに、その2つの部位がなす角度を用いて表現される。筋骨格動力学モデルは、人体の姿勢もしくは動作を示す人体モデルの一種である。複数の部位には、手首、掌、および各指の節が含まれる。節は、指の一部をなす部位であって、一端または両端に他の部位と関節を介して接続される部位である。操作者の動作として、関節動作に代えて、または、関節動作とともに、個々のデータグローブが装着される一部の部位(例えば、手首)の位置または部位間の重心が代表位置として含まれてもよい。機械学習モデルは、例えば、ニューラルネットワーク、ランダムフォレストなど、生体信号から動作を推定することができる数理モデルであれば、いかなる種類の数理モデルであってもよい。
一般に、筋電位の発生(発火)から筋張力の発揮により動作が生じるまでに所定の遅延が生ずる。この遅延に係る遅延時間が、上記のEMDに相当する。本願では、この遅延時間を遅延時間ΔTと呼ぶことがある。図2に示す例では、EMGは時刻Tにおいて筋電位の発生が開始され、その遅延時間ΔTの経過後の時刻T+ΔTから動作が開始される(曲線Rm)。後述するように、生体信号を解析することで、現実の動作が生ずる前に動作(曲線Pm)を予測することができる。遅延時間ΔTは、典型的には、100ms~300ms程度である。
表示部140は、撮影部30から画像データを受信する。表示部140は、受信した画像データに基づく画像を表示するディスプレイを備える。操作者は、表示部140に表される画像を視認することで、ロボット20の動作状況を確認することができる。
予測時間設定部170には、検出部110から動作信号が入力され、撮影部30から画像データを受信する。予測時間設定部170は、動作信号を遅延させ、遅延させた動作信号に示される操作者の動作(主に、手首から手部)と画像データに示されるロボット20の動作との相互相関を遅延時間ごとに算出し、最も大きい相互相関を与える遅延時間を特定する。予測時間設定部170は、特定した遅延時間から所定のオフセット時間を差し引いて予測時間を定める。オフセット時間は、遅延時間から差し引いて定まる予測時間が0以上であって、上記の最大値以下となるように、予め設定しておく。これにより、操作者の動作からロボット20の動作に反映されるまでの遅延時間に基づいて予測時間が定まる。
なお、予測時間設定部170は、相互相関を算出する際、動作信号に示される操作者の動作と画像データに示されるロボット20の動作を、それぞれ正規化してもよい。正規化において、予測時間設定部170は、所定の人体モデル(例えば、筋骨格動力学モデル)を用いて動作信号に示される操作者の動作ならびに画像データに示されるロボット20の動作が関節動作(joint motion)としてモデル化される。動作は、各時刻における姿勢の時系列となる。筋骨格動力学モデルによれば、姿勢は、複数の部位(または部材)と、相互に接続する2個の部位からなる部位の対ごとに、2個の部位がなす角度で表現される。予測時間設定部170は、定めた予測時間を予測部120に設定する。予測部120は、設定された予測時間を操作者の動作の予測値の推定に用いる。
ロボット20は、操作装置10aから提供される動作信号に基づいて動作する。ロボット20は、複数の部材を含んで構成され、相互に隣接する2個の部材(本明細書では、「部材対」と呼ぶことがある)間の角度を可変にするアクチュエータ(actuator)を備え、ロボット20全体としての位置ならびに姿勢を可変とする。アクチュエータは、各2個の部材を接続する関節ごとに設置される。ロボット20は、提供された動作信号に示される操作者の動作に対応する動作を再現する。ロボット20は、1個のマニピュレータ(manipulator)を有する単腕ロボットであってもよいし、2個のマニピュレータを有する双腕ロボットであってもよい。各1個のマニピュレータには、1個のロボットアーム(robot arm)と1個のエンドエフェクタ(end effector)が含まれる。エンドエフェクタは、ロボットハンド(robot hand)とも呼ばれる。例えば、ロボット20が双腕ロボットであり、操作者が右腕を前方に突き出す場合を仮定する。この場合、ロボット20は、操作者の右手に対応するエンドエフェクタが正面方向に進行するようにロボットアームを動作させる。操作者が左手を握る場合には、ロボット20は、操作者の左手に対応するエンドエフェクタをなす複数の指部を、それぞれの先端が互いに向き合うように変形させる。
ロボット20は、制御部210と駆動部220を含んで構成される。
制御部210は、操作装置10aから提供される動作信号に基づいてロボット20の動作を制御する。制御部210は、例えば、動作信号に示される動作に従ってエンドエフェクタが移動するように、ロボット20をなす部材の位置および姿勢を制御する。より具体的には、制御部210は、例えば、動作信号に示される操作者の代表位置に対応するロボット座標系での位置に変換し、エンドエフェクタの位置の目標値として設定する。制御部210は、関節動作で示される個々の部位の位置に対応するロボット座標系での位置を、その部位に対応するロボット20の部材の位置の目標値として設定してもよい。制御部210は、公知の逆運動学問題(inverse kinematic problem)を解いてエンドエフェクタ、またはその部材が目標位置に到達するまでの期間における部材対ごとになす角度を目標値として定める。制御部210は、定めた目標値を示す制御信号を駆動部220に出力する。
駆動部220は、部材対ごとにアクチュエータと制御器を含んで構成される。制御器は、その時点における部材対がなす角度の現在値が制御信号に示される角度の目標値に近づくようにアクチュエータを駆動させる。制御器は、現在値と目標値との残差が小さくなるように制御する手法であれば、いかなる手法を用いることができる。制御器は、例えば、PID制御器、PD制御器などのいずれであってもよい。
なお、制御部210は、部材対ごとの目標値としてトルクを設定してもよい。その場合、駆動部220をなす制御器は、その時点における部材対に与えているトルクの現在値が制御信号に示される角度の目標値に近づくようにアクチュエータを駆動させる。
図1に示す例では、操作者が動作し、その動作がロボット20の動作に反映され、ロボット20の動作を示す画像が表示部140に表示されるまでに加わる遅延には、次の要因が掲げられる。
(1)伝送遅延(communication delay)ΔT: 伝送遅延ΔTは、操作者の動作を示す動作信号が予測部120から制御部210に伝達されるまでの時間である。従来方式では、検出部110が操作者の動作を示す動作信号を取得し、取得した動作信号をロボット20に提供していた。
(2)制御遅延(control delay)ΔT: 制御遅延ΔTは、動作信号の取得からロボット20の動作に反映されるまでの時間である。図9に示す例では、操作者動作からロボット動作までの時間が伝送遅延ΔTと制御遅延ΔTの合計値に相当する。
(3)監視遅延(monitoring delay)T: 監視遅延ΔTは、ロボット20の動作を示す画像を撮影部30が撮影し、撮影した画像を示す画像データが生成されるまでの時間である。
(4)伝送遅延ΔT: 伝送遅延ΔTは、画像データが撮影部30から表示部140に伝達されるまでの時間である。図9に示す例では、ロボット動作からロボット動作の認識までの時間が監視遅延ΔTと伝送遅延ΔTの合計値に相当する。よって、従来方式のように操作装置10aが操作者の動作を示す動作信号を取得する場合には、総遅延時間ΣTは、それらの総和ΔT+ΔT+ΔT+ΔTとなる。
これに対し、本実施形態では、予測部120は、検出部110が検出した生体信号を用いてその時点から予測時間ΔT後における動作を予測し、予測した動作を示す動作信号をロボット20に提供する。そのため、操作がロボット動作に反映され、操作者に認識されるまでの遅延時間が予測時間ΔTにより相殺される。図10に示す例では、生体信号としてEMGから予測された操作者動作からロボット動作までの期間が、伝送遅延ΔTと制御遅延ΔTの合計値から予測時間ΔTが差し引かれた時間ΔT+ΔT-ΔTに相当する。予測時間ΔTの最大値は、遅延時間ΔT(EMD)となる。但し、予測時間ΔTを一例として200msとしている。従って、総遅延時間ΣTは、従来方式における総遅延時間から予測時間ΔTが差し引かれた時間ΔT+ΔT+ΔT+ΔT-ΔTに低減される。また、その他の要因による遅延時間の変動に関わらず、総遅延時間が一定に保たれる。そのため、操作者による操作性が向上し、ロボット20の動作に対する自己主体感を向上させることができる。
<第2の実施形態>
次に、第2の実施形態について、上記の実施形態との差異点を主として説明する。上記の実施形態と共通の処理、構成については、特に断らない限り同一の符号を付してその説明を援用する。
図3は、本実施形態に係る操作システムS1bの構成例を示す概略ブロック図である。
操作システムS1bは、操作装置10b、ロボット20、および撮影部30を含んで構成される。操作装置10bは、検出部110、予測部120、表示部140、予測時間設定部170、および、操作部180を含んで構成される。
予測時間設定部170は、予測時間の設定画面を表示部140に表示させ、操作部180から入力される操作信号に基づいて予測時間を定める。より具体的には、予測時間設定部170は、自部に予め設定された設定画面を示す設定画面データを読み出し、読み出した設定画面データを表示部140に出力する。表示部140は、予測時間設定部170から入力される設定画面データに基づく設定画面(図示せず)を表示する。即ち、予測時間設定部170、表示部140、および、操作部180とで予測時間を設定するためのユーザインタフェース(UI:User Interface)が実現される。
設定画面は、予測時間の設定欄を含んで構成される。予測時間設定部170は、その時点で設定されている予測時間を表示させる。予測時間設定部170は、操作部180から入力される操作信号で設定欄が指示された後、操作信号で指示される数値を設定欄に表示させ、指示される数値を予測時間として定める。予測時間設定部170は、定めた予測時間を予測部120に出力する。
操作部180は、ユーザである操作者による操作を受け付け、受け付けた操作に応じた操作信号を生成し、生成した操作信号を予測時間設定部170に出力する。操作部180は、主に、操作装置10bに対する操作を受け付ける。操作部180は、例えば、ボタン、レバー、つまみ、などの専用の部材を含んで構成されてもよいし、タッチセンサ、マウス、などの汎用の部材を含んで構成されてもよい。操作部180は、例えば、ヘッドマウンテッドディスプレイの一部に設置されてもよい。
よって、操作者は、予測時間の嗜好、ロボット20に対する操作内容などに応じて操作により所望の予測時間を設定することができる。そのため、ロボット20に対する操作性を向上させることができる。
<第3の実施形態>
次に、第3の実施形態について、上記の実施形態との差異点を主として説明する。上記の実施形態と共通の処理、構成については、特に断らない限り同一の符号を付してその説明を援用する。
図4は、本実施形態に係る操作システムS1cの構成例を示す概略ブロック図である。
操作システムS1cは、操作装置10c、ロボット20、および撮影部30を含んで構成される。操作装置10cは、検出部110、予測部120、表示部140、および、予測時間設定部170を含んで構成される。予測時間設定部170は、計測部190を備える。
計測部190は、予測部120から制御部210への伝送遅延ΔTと、撮影部30から予測時間設定部170への伝送遅延ΔT’を計測する。伝送遅延ΔT’は、撮影部30から表示部140への伝送遅延ΔTとほぼ等しい。予測時間設定部170は、計測した伝送遅延ΔTと伝送遅延ΔT’の和ΔT+ΔT’を総伝送遅延として算出し、算出した総伝送遅延から所定の第2のオフセット値を差し引いて予測時間を定める。予測時間設定部170は、定めた予測時間を予測部120に設定する。但し、総伝送遅延から第2のオフセット値を差し引いて得られる予測時間が、0以上であって、上記の最大値以下となるように、第2のオフセットを予め設定しておく。これにより、伝送路Cにおける通信環境やトラフィックにより有意に変動しうる伝送遅延が補償される。そのため、伝送遅延に関わらず操作性を向上させることができる。
なお、計測部190は、所定の通信プロトコル(例えば、ICMP:Internet Control Message Protocolなど)を用いて伝送遅延ΔTと伝送遅延ΔT’を計測することができる。例えば、計測部190は、所定の試験信号を制御部210に予測部120を経由して送信し、制御部210から予測部120を経由して試験信号が受信されるまでの時間を第1往復遅延時間として計測する。計測部190は、第1往復遅延時間を2で除算して伝送遅延ΔTを定めることができる。また、計測部190は、所定の試験信号を撮影部30に送信し、撮影部30から試験信号が受信されるまでの時間を第2往復遅延時間として計測する。計測部190は、第2往復遅延時間を2で除算して伝送遅延ΔT’を定めることができる。
<第4の実施形態>
次に、第4の実施形態について、上記の実施形態との差異点を主として説明する。上記の実施形態と共通の処理、構成については、特に断らない限り同一の符号を付してその説明を援用する。
図4は、本実施形態に係る操作システムS1dの構成例を示す概略ブロック図である。
操作システムS1dは、操作装置10d、ロボット20、および撮影部30を含んで構成される。操作装置10dは、検出部110、予測部120、表示部140、推定部150、統合部160、および、予測時間設定部170を含んで構成される。
検出部110は、検出した操作者の動作を示す動作信号を推定部150に出力する。
推定部150には、検出部110から動作信号が入力され、撮影部30から画像データが入力される。推定部150は、動作信号と画像データに基づいて操作者がなしうる第2動作を推定する(意図推定、intention estimation)。第2動作は、画像データに示されるロボット20の動作環境のもとで操作者が意図する可能性が、他の動作よりも高い動作である。第2動作は、主に予測部120により推定される大局的な動作(例えば、手部の移動)よりも微細な動作である。第2動作には、例えば、個々の指の動作、手部の位置と方向の一方もしくは両方の微調整などが含まれる。推定部150は、推定した第2動作を示す第2動作信号を統合部160に出力する。
推定部150は、例えば、ロボット20のエンドエフェクタが、その大きさよりも物体に近接する領域に進入する状況を示す画像データと、複数の指の動作の開始を示す動作信号が入力されるとき、第2動作として、それぞれの指の先端が向き合う動作を推定する。このような状況では、操作者は自身の手を握ることでエンドエフェクタに物体を把持させる可能性が高い。推定部150は、例えば、ロボット20のエンドエフェクタがテーブル上に置かれた物体を把持した状況を示す画像データと、複数の指の動作の開始を示す動作信号が入力されるとき、第2動作として、それぞれの指の先端が退け合う動作を推定する。このような状況では、操作者は自身の各指を広げることでエンドエフェクタに対し、把持している物体から放させる可能性が高い。
検出部110は、操作者の視線方向を検出してもよい。検出部110は、検出した視線方向を示す視線情報を予測部120に出力する。検出部110は、例えば、操作者の視線方向を検出するための視線検出部(eye tracker)を備える。視線検出部は、例えば、ヘッドマウンテッドディスプレイに装着されてもよい。視線検出部は、ヘッドマウンテッドディスプレイが操作者の頭部に装着されたときに、視線の検出対象とする両眼の瞳の像を取得できる部位に設置されればよい。
検出部110は、さらに操作者の頭部の向きと位置を検出するための加速度センサを備えてもよい。検出部110は、検出した向きと位置を示す操作者位置情報を予測部120に出力する。検出部110は、例えば、操作者の頭部の向きと位置を検出するための6軸加速度センサを備える。6軸加速度センサは、三次元空間における互いに直交する三方向それぞれの加速度と、三方向それぞれの軸加速度を検出する。検出部110は、検出された三方向の軸加速度を二階積分して向きを定めることができる。検出部110は、検出された三方向の加速度を二階積分して位置を定めることができる。加速度センサは、ヘッドマウンテッドディスプレイが操作者の頭部に装着されたときに、加速度もしくは軸加速度の検出対象とする頭部の額面に接する位置に設置されればよい。
推定部150は、検出部110から入力される視線情報をさらに用いて、第2動作を定めてもよい。推定部150は、視線情報に示される視線方向を関心方向として推定する。関心方向は、操作者が関心を有する方向を意味する。推定部150は、検出部110から入力される操作者位置情報と撮影部30の位置、向きならびに視野に基づいて、視線情報に示される視線方向を撮影部30の位置ならびに向きを基準とするロボット環境座標系における方向に変換し、変換した方向を関心方向として定めることができる。推定部150は、画像データに示される画像に複数の物体の像が含まれる場合、複数の物体のうち、関心方向にその像が表れる物体を関心物体として判定することができる。推定部150は、動作信号、画像データ、および、関心物体に基づいて第2動作を定め、関心物体以外の物体を無視してもよい。これにより、関心物体以外の操作者が意図しない物体に対する第2動作の無用な推定が回避される。
推定部150には、例えば、入力情報とする画像データと動作信号と、出力情報とする第2動作との関係を示す第2動作データを予め設定しておく。推定部150は、自部への入力情報に対応する第2動作を、第2動作データを参照して定めることができる。推定部150には、第2機械学習モデルを用いて、入力情報とする画像データと動作信号から、出力情報とする第2動作を推定するためのパラメータセットを予め設定しておいてもよい。推定部150は、設定したパラメータセットのもとで第2機械学習モデルを用いて、入力情報に基づいて第2動作を定めることができる。入力情報には、さらに視線情報が含まれてもよい。
予測部120は、自部が予測した予測値を示す動作信号を、ロボット20に代え統合部160に出力する。
統合部160には、予測部120から動作信号が入力され、推定部150から第2動作信号が入力される。統合部160は、動作信号が示す動作である第1動作と第2動作信号が示す第2動作とを統合し統合動作を構成する。第1動作と第2動作が矛盾せず整合する限り、統合動作も関節動作として表現される。統合部160は、構成した統合動作を示す動作信号をロボット20に出力する。
なお、統合部160は、第1動作と第2動作に矛盾が生ずる場合、もしくは、第1動作と第2の動作の実行により悪影響が予想される場合には、いずれか一方を選択し、他方を棄却してもよい。例えば、第1動作が示す操作者の手の動きが、物体を把持しているエンドエフェクタがテーブルから離れる方向への物体への動きに対応し、第2動作が指の先端を退け合う動作(物体の把持状態からの解放に対応)である場合には、統合部160は、第1動作を選択し、第2動作を棄却してもよい。その場合には、エンドエフェクタが物体を把持しながらテーブルから離れるときに、第2動作により物体が脱落することが回避される。また、第1動作が静止していた手の動きの開始を示し(エンドエフェクタの始動に対応)、第2動作が指の先端を向かい合わせる動作の途中(物体の把持の過程に対応)を示す場合には、統合部160は、第1動作を棄却し、第2動作を優先してもよい。その場合には、エンドエフェクタにより物体の把持が完了しない状態で移動することが回避される。
統合部160には、例えば、第1動作と第2動作と、それぞれの選択の要否を示す選択データを予め設定しておいてもよい。統合部160は、選択データを参照して、第1動作と第2動作の要否をそれぞれ特定する。統合部160は、第1動作と第2動作のそれぞれが要と特定するとき、第1動作と第2動作を統合した統合動作を示す動作信号を生成し、生成した動作信号をロボット20に出力する。統合部160は、第1動作と第2動作の一方の動作を要と特定し、他方の動作を否と特定するとき、一方の動作を示す動作信号を生成し、生成した動作信号をロボット20に出力する。統合部160は、第1動作と第2動作のいずれの動作も否と特定するとき、いずれの動作を示す動作信号も生成しない。
ロボット20の制御部210には、操作装置10bから提供される動作信号に基づいてロボット20の動作を制御する。制御部210には、統合動作を示す動作信号が入力されることがある。その場合、制御部210には、生体信号により推定された動作と、動作環境に応じて推定された第2動作を組み合わせた動作が指示され、駆動部220に対し、かかる動作を指令する。例えば、推定された動作として大局的な動作が指示され、第2動作として微細な動作が指示される。大局的な動作は、例えば、比較的移動速度が高い手首の並進運動などがある。第2動作として、物体に対する個々の指部の位置合わせ、把持、把持状態からの解放などがある。そのため、操作者はロボット20の動作環境において、より操作者の意図に沿ったきめの細かい動作を指示することができる。
(モデル学習)
次に、機械学習モデルの学習について説明する。図6は、モデル学習システムS2の構成例を示す概略ブロック図である。モデル学習システムS2は、予測部120が用いる機械学習モデルの学習を行うためのシステムである。当該機械学習モデルは、予測部120に入力される生体信号と、設定される予測時間に対して、現在から予測時間の経過後の予測時刻における動作を示す動作信号が、現在において出力できるように学習されればよい。
モデル学習システムS2は、動作検出部112、生体信号検出部114、および、モデル学習部40を含んで構成される。動作検出部112は、人体の動作を検出する。生体信号検出部114は、人体に生ずる生体信号を検出する。動作の検出対象とする人体は、操作者以外の人物の人体でもよいが、操作者自身の人体の方が望ましい。モデル学習部40は、検出された生体信号に基づいて機械学習モデルを用いて推定される動作(出力2)と、検出された動作(出力1)との差の大きさが、より小さくなるように(最小化)機械学習モデルのパラメータセットを定める。この構成によりモデル学習部40は、既知の生体信号と動作信号からなるデータペアを複数個含む訓練データ(supervised data)を用いて、機械学習モデルが学習される(教師あり学習(supervised training))。
動作検出部112は、上記の検出部110と同様に人体の動作を検出する。動作検出部112は、例えば、操作者の体躯を示す画像を撮影する撮影部と、撮影部が撮影した画像を用いて光学的に操作者の部位ごとの位置を検出する動作解析部を備える。動作検出部112は、検出した人体の動作を示す動作信号をモデル学習部40に出力する。
生体信号検出部114は、上記の検出部110と同様に人体に生ずる生体信号を検出する。生体信号検出部114は、例えば、生体信号感知部114a、生体信号取得部114b、および前処理部114cを備える。
生体信号感知部114aは、人体の所定の部位に設置または近接され、その部位に生ずる生体信号を感知する。生体信号感知部114aは、例えば、上記の表面電極に相当する。
生体信号取得部114bは、生体信号感知部114aが感知した生体信号を取得する。生体信号取得部114bは、取得した生体信号を前処理部114cに出力する。生体信号取得部114bは、例えば、EMGキャプチャである。EMGキャプチャは、例えば、生体信号感知部114aに生じた電位を増幅し、増幅した電位を示す生体信号を取得する。
前処理部114cは、生体信号取得部114bから入力される生体信号に対して前処理を行い、前処理により得られた処理後の生体信号をモデル学習部40に出力する。前処理には、例えば、整流(rectification)とフィルタリング(filtering)の一方または両方が含まれる。整流は、各時刻における電位が所定の電位の閾値(例えば、0V)以上であるとき、その電位を処理後の生体信号の電位とし、各時刻における電位が所定の電位の閾値未満であるとき、その閾値を処理後の生体信号の電位とする処理である。フィルタリングは、生体信号として予め定めた有意な周波数帯域の成分を維持し、それ以外の周波数帯域の成分を抑圧もしくは除去する処理である。これにより、生体信号に混入されるノイズが除去される。
モデル学習部40は、遅延部410、運動解析部420、および、パラメータ更新部430を含んで構成される。
遅延部410は、生体信号検出部114から入力される生体信号を予め定めた一定の遅延量(例えば、200ms)で遅延させる。遅延部410は、遅延後の生体信号をパラメータ更新部430に出力する。一定の遅延量は、生体信号の発生から動作の発生までの遅延時間ΔT、つまり、EMDであってもよい。この遅延は、制御可能とする予測時間の最大値を与える。
運動解析部420は、動作検出部112から入力された動作信号に示す動作を、公知の筋骨格動力学モデルに基づいて解析し、解析された動作を示す動作信号をパラメータ更新部430に出力する。運動解析部420は、例えば、入力された動作信号から人体を構成する複数の部位のそれぞれの位置を特定し、相互に接続される2個の部位からなる対ごとに、2個の部位がなす角度を定める。運動解析部420は、定めた角度を示す動作信号を生成することができる。
パラメータ更新部430は、遅延部410から入力される生体信号を入力情報として用いて、所定の機械学習モデルを用いて出力情報として推定される人体の動作の推定値と、運動解析部420から入力される動作信号に示される人体の観測値との差の大きさが、より小さくなるように機械学習モデルのパラメータセットを再帰的に(regressively)更新する。観測値、推定値が、図示の出力1、出力2にそれぞれ相当する。観測値と推定値との差の大きさを示す損失関数(loss function)は、例えば、差分二乗和(SSD:Sum of Squared Differences)、交差エントロピー(cross entropy)などのいずれであってもよい。
パラメータ更新部430は、更新されるパラメータセットの更新を、予め設定された回数繰り返してもよいし、パラメータセットが一定値に収束するまで繰り返してもよい。パラメータ更新部430は、例えば、パラメータセットを構成する一部または全部のパラメータの更新前後の値の差の大きさが所定の大きさの閾値以下となったか否かに基づいて、収束したか否かを判定することができる。パラメータ更新部430は、更新により定めたパラメータセットを上記の予測部120に設定する。パラメータ更新部430において用いられる機械学習モデルは、予測部120において用いられる機械学習モデルと同種の数理モデルであればよい。予測部120は、入力された生体信号を設定された予測時間で遅延させ、遅延させた生体信号を機械学習モデルに入力することで、現在から予測時間経過後の予測時刻における動作を示す動作信号が機械学習モデルから得ることができる。
なお、動作検出部112および生体信号検出部114として、上記の検出部110が用いられてもよいし、検出部110とは別個に設けられてもよい。また、モデル学習部40は、操作システムS1a-S1dのいずれか、または、いずれにも備わっていてもよいし、操作システムS1a-S1dのいずれとも独立の機器において実現されてもよい。
また、モデル学習部40が、操作システムS1a-S1dのいずれか、または、いずれにも備わる場合には、ロボット20に対する操作中に、検出部110から入力される生体信号と、動作信号を用いて、機械学習モデルのモデルパラメータを更新してもよい(オンライン学習)。これにより、生体信号に基づいて推定される動作予測値が現在の動作の予測値に近づくように校正されるので、さらに動作信号の予測精度を向上させることができる。
(機械学習モデル)
次に、機械学習モデルの一例について説明する。図7は、ニューラルネットワークの一種であるCNN(Convolutional Neural Network、畳み込みニューラルネットワーク)の構成例を示す。CNNは、いわゆる深層学習(deep learning)に用いられる機械学習モデルの代表例である。CNNは、1層の入力層(input layer)、複数の中間層(intermediate layer, hidden layer)および1層の出力層(output layer)を備える。図5に例示されるCNNは、入力層Il、L層(Lは、2以上の整数)の中間層Ml-1~Ml-L、および出力層Olを備える。各層は、それぞれ所定数の節点(ノード(node))を備える。複数の中間層には少なくとも1層の畳み込み層と1層のプーリング層が含まれる。
入力層Ilの各節点は、自部に入力される入力値を次の層の少なくとも1つの節点に出力する。例えば、予測部120、パラメータ更新部430では、生体信号を構成する所定期間(例えば、10-100ms)内の個々のサンプル値が、そのサンプル値に対応する節点に入力される。
出力層Olの各節点は、直前の層の少なくとも1つの節点から入力される入力値を外部に出力する。予測部120、パラメータ更新部430は、動作を表現する個々の要素値(例えば、部位間の角度)が、その要素値に対応する節点から出力される。
畳み込み層(convolution layer)には、カーネル数(number of kernels)が予め設定される。カーネル数とは、それぞれ入力値に対する処理(例えば、演算)に用いるカーネルの個数に相当する。カーネル数は、通例、入力値の個数よりも少ない。カーネルとは、一度に1つの出力値を算出するための処理単位を指す。ある層において算出される出力値は、次の層への入力値として用いられる。カーネルは、フィルタとも呼ばれる。カーネルサイズ(kernel size)とは、カーネルにおける一回の処理に用いられる入力値の数を示す。カーネルサイズは、通例、2以上の整数となる。
畳み込み層は、複数の節点のそれぞれに直前の層から入力される入力値に対してカーネルごとに畳み込み演算を行って畳み込み値(convolved value)を算出し、算出した畳み込み値とバイアス値(bias)を加算して補正値(corrected value)を算出する層である。畳み込み層は、算出した補正値に対する所定の活性化関数(activation function)の関数値を算出し、算出した出力値を次の層に出力する。なお、畳み込み層の各節点には直前の層から1個または複数の入力値が入力され、各節点における畳み込み値の算出のために、それぞれの入力値に対して独立な畳み込み係数が用いられる。畳み込み係数、バイアス値および活性化関数のパラメータは、1セットのモデルパラメータの一部となる。
活性化関数として、例えば、正規化線形ユニット(rectified linear unit)、シグモイド関数(sigmoid function)などが利用できる。正規化線形ユニットは、所定の閾値(例えば、0)以下の入力値に対する出力値として、その閾値に定め、所定の閾値を超える入力値をそのまま出力する関数である。従って、この閾値は1セットのモデルパラメータの一部となりうる。また、畳み込み層については、直前の層の節点からの入力値の参照の要否、次の層の節点への出力値の出力の要否も、1セットのモデルパラメータの一部となりうる。
プーリング層(pooling layer)は、直前の層の複数の節点からそれぞれ入力される入力値から1つの代表値を定め、定めた代表値を出力値として次の層に出力する節点を有する層である。代表値は、例えば、最大値、平均値、最頻値など複数の入力値を統計的に代表する値が用いられる。プーリング層にはストライド(stride)を予め設定しておく。ストライドとは、1つの節点に対して入力値を参照する直前の層の相互に隣接する節点の範囲を示す。そのため、プーリング層は、直前の層からの入力値を、より低い次元に縮約(ダウンサンプリング, down-sampling)して出力値を次の層に提供する層とみなすこともできる。
次に、機械学習モデルを用いた操作者動作の推定例について説明する。図11は、操作者動作の推定例を示す図である。図11の縦軸、横軸は、それぞれ動作、時刻を示す。区間Aは、モデル学習に用いた生体信号から機械学習モデルを用いて推定された動作の推定値と、その動作の観測値を示す。推定値は、観測値とほぼ等しい値をとる。推定値は観測値よりも遅延時間ΔT(EMD)に相当する時間だけ先行する。これは、現在よりも遅延時間に相当する予測時間の経過後の予測時刻における動作が予測されていることを示す。モデル学習において機械学習モデルへの入力情報とする生体信号に予測時間に相当する遅延を加えて、出力情報とする動作と同期をとったためである。区間Bは、モデル学習に用いなかった生体信号から機械学習モデルを用いて推定値と、その動作の観測値を示す。推定値には、誤差が加わるが、観測値と同様の時間経過に対する変化傾向を有する。推定値は観測値よりも遅延時間に相当する時間だけ先行するが、その周期と振幅は観測値と同様となる。
見方を変えると、図11は、検出された生体信号に基づく動作が得られる予想時刻よりも遅延時間ΔTに相当する時間だけ先行した時刻に、その動作の予測値が得られることを示す。予測部120は、上記の実施形態において遅延時間ΔTの範囲内で予測時間を調整することで、動作の予測値に基づいてロボット20の動作を制御するタイミングを調整することができる。より具体的には、予測部120は、入力された検出信号に対して、上記の機械学習モデルを用いて得られた動作信号(遅延時間ΔTだけ先行)に対して、遅延時間ΔTから予測時間の時間差に相当する時間だけ遅延させ、遅延させた動作信号を制御部210に出力すればよい。
なお、上記の説明では、生体信号としてEMGを用いる場合を例にしたが、これには限られない。人体の動作と相関を有し、その動作に先行して発生する生体信号であれば適用可能である。かかる生体信号として、例えば、脳波(EEG:Electroencephalograph)を用いることができる。その場合、検出部110は、非侵襲的に脳波を検出するためのブレインマシンインタフェース(BMI、Brain Machine Interface)として構成されてもよい。BMIは、脳の活動により生ずる電位の変化を検出するための頭皮上電極を備える。頭皮上電極は、ヘッドマウンテッドディスプレイに設置されてもよい。頭皮上電極は、操作者がヘッドマウンテッドディスプレイを装着したときに、操作者の頭皮に接触する位置に設置されればよい。
以上に説明したように、上記の実施形態に係る操作システムS1a、S1b、S1c、S1dは、操作者の生体信号から、現在から予測時間の経過後の予測時刻における当該操作者の動作の予測値を、所定の機械学習モデルを用いて定める予測部120と、予測値に基づいてロボット20の動作を制御する制御部210と、操作者の動作の現在値からロボット20の動作までの遅延時間に基づいて予測時間を定める予測時間設定部170と、を備える。
この構成によれば、操作者の動作からロボット20の動作までの遅延時間に基づいて定められた予測時間の経過後の予測時刻における、操作者の動作の予測値に基づいてロボット20の動作が制御される。遅延時間の変動に応じて制御対象とするロボット20の動作の時刻を調整することができるため、遅延時間の変動を低減または解消できる。そのため、ロボット20の操作性を向上することができる。
また、予測時間設定部170は、操作者の動作の現在値とロボット20の動作環境を示す画像を用いて、前記遅延時間を検出してもよい。
この構成によれば、操作者の動作から、その動作がロボット20の動作に反映したことが操作者に伝達されるまでの遅延時間に基づいてロボット20の動作が制御される。操作者が実感できる遅延に基づく制御がなされるため、ロボット20の操作性を向上することができる。
また、操作システムS1a、S1b、S1c、S1dは、ロボットの動作環境を示す画像を撮影する撮影部30を備えてもよい。
この構成によれば、操作者がロボット20から隔絶された場所に所在していても、ロボット20の動作環境を視認しながら、その動作を制御することができる。
また、予測時間設定部170は、予測部120から制御部210への伝送と、撮影部30から予測時間設定部170への伝送に係る伝送遅延を検出し、検出した伝送遅延に基づいて予測時間を定めてもよい。
この構成によれば、予測部120から制御部210への伝送と、撮影部30から予測時間設定部170への伝送に係る伝送遅延に基づいてロボット20の動作が制御される。通信環境やトラフィックなどにより著しく変動しうる伝送遅延を補償することで、ロボット20の操作性を向上することができる。
また、予測時間設定部170は、予測時間の設定画面を表示部140に表示させ、操作信号に基づいて予測時間を設定してもよい。
この構成によれば、操作者が任意に予測時間を設定することができる。そのため、操作者の嗜好や作業内容に応じた予測時間に基づいてロボット20の動作を制御することができる。
また、操作装置10dは、少なくともロボットの動作環境を示す画像と操作者の動作を示す動作信号に基づいて当該操作者の第2動作を推定する推定部150を備えてもよい。制御部210は、第2動作に基づいてロボット20の動作を制御してもよい。
この構成によれば、操作者の動作とロボット20の動作環境から操作者が意図する動作が第2動作として推定される。ロボット20に対する操作に第2動作が補われることで、ロボット20の動作に操作者の意図が反映される。そのため、ロボット20に対する操作性がさらに向上する。
また、操作装置10a、10b、10c、10dは、生体信号から操作者の動作までの遅延時間で遅延させた生体信号から機械学習モデルを用いて定まる操作者の動作の予測値と、操作者の動作の実測値との差分がより低減するように機械学習モデルのパラメータを定めるモデル学習部40を備えてもよい。
この構成によれば、検出された生体信号に基づく動作が得られる予想時刻よりも遅延時間に相当する時間だけ先行した時刻に、その動作の予測値が得られる。そのため、遅延時間の範囲内で動作の予測値に基づいてロボット20の動作を制御するタイミングを調整することができる。
以上、図面を参照してこの発明の実施形態について説明してきたが、具体的な構成は上述のものに限られることはなく、この発明の要旨を逸脱しない範囲内において様々な設計変更等をすることが可能である。
例えば、操作システムS1a、S1b、S1c、S1dにおいて、撮影部30および表示部140の一方または両方が省略されていてもよい。また、伝送路Cには、通信ネットワークが含まれなくてもよい。かかる構成であっても、操作者がロボット20に比較的近接し、ロボット20の動作環境を目視することができれば、許容されうる。
操作装置10a、10b、10c、10dが制御部210を備える代わりに、ロボット20において制御部210が省略されてもよい。
予測部120は、検出部110と有線または無線で各種のデータを伝送可能に接続されていれば、操作装置10a、10b、10c、10dにおいて検出部110が省略されてもよい。
また、操作装置10a、10b、10c、10dは、モデル学習部40を備えてもよい。
操作装置10a、10b、10c、10dは、必ずしも人体に装着可能に構成されていなくてもよい。操作装置10a、10b、10c、10dは、例えば、据置型であってもよい。
上記の機器(例えば、操作装置10a、10b、10c、10d、ロボット20、モデル学習装置)は、専用の部材を含むハードウェアで実現されてもよいし、汎用の部材を含むコンピュータとして構成されてもよい。図8に例示されるコンピュータ50は、プロセッサ52、ドライブ部56、入出力部58、ROM62、およびRAM64を含んで構成される。
プロセッサ52は、個々の機器の機能を発揮させるための処理や、その機器を構成する各部の機能を制御する。プロセッサ52は、例えば、CPU(Central Processing Unit)である。
ドライブ部56は、記憶媒体54を固定してもよい、着脱可能としてもよい。ドライブ部56は、記憶媒体54に記憶されている各種のデータを読み取り、または、各種のデータを記憶媒体54に記憶する。ドライブ部56は、例えば、半導体ドライブ(SSD:Solid State Drive)、ハードディスクドライブ(HDD:Hard Disk Drive)である。記憶媒体54は、例えば、フラッシュメモリ、ハードディスクなどの不揮発性メモリ(non-volatile memory)である。
入出力部58は、他の機器との間で無線または有線で各種のデータを入力または出力する。入出力部58は、他の機器と通信ネットワークを経由して、各種のデータを入出力可能に接続してもよい。入出力部58は、例えば、入出力インタフェース、通信インタフェースなどのいずれか、または、それらの組合せのいずれであってもよい。
ROM(Read Only Memory)62は、個々の機器の各部が実行する各種の処理を指示する命令が記述されたプログラム、その実行のためのパラメータなどの各種のデータ、各部により取得された各種のデータを永続的に記憶する記憶媒体である。なお、本願では、プログラムに記述された命令で指示される処理を実行することを、「プログラムを実行する」、「プログラムの実行」などと呼ぶことがある。
RAM(Random Access memory)64は、主にプロセッサ52の作業領域として用いられる記憶媒体である。プロセッサ52は、その起動に応じてROM62に記憶されたプログラムとパラメータをRAM64に記録する。そして、プロセッサ52は、その実行により得られた演算結果、取得したデータなどをRAM64に一時的に記録する。
なお、上記の機器は、それぞれ、その内部にコンピュータシステムを備えてもよい。例えば、上記のプロセッサ52は、コンピュータシステムの構成要素となりうる。上述した各処理の過程は、プログラムの形式でコンピュータ読み取り可能な記憶媒体に記憶され、このプログラムをコンピュータが読み出して実行することによって、それらの処理が行われる。コンピュータシステムは、OS(Operation System)、デバイスドライバ、ユーティリティプログラムなどのソフトウェアや周辺機器等のハードウェアを含むものとする。図6に示すハードウェアは、かかるハードウェアの例示である。また、「コンピュータ読み取り可能な記憶媒体」とは、磁気ディスク、光磁気ディスク、ROM、RAM、半導体メモリ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに、コンピュータ読み取り可能な記憶媒体、とは、インターネット等のネットワークや電話回線等の通信回線を用いてプログラムを送信する場合に用いる通信線など、短時間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリなど、一定時間プログラムを保持しているものも含んでもよい。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。
また、上記の機器の一部、または全部を、LSI(Large Scale Integration)等の集積回路として実現してもよい。上記の機器の各機能ブロックは個別にプロセッサ化してもよいし、一部、または全部を集積してプロセッサ化してもよい。また、集積回路化の手法はLSIに限らず専用回路、または汎用プロセッサで実現してもよい。また、半導体技術の進歩によりLSIに代替する集積回路化の技術が出現した場合、当該技術による集積回路を用いてもよい。
S1a、S1b、S1c、S1d…操作システム、S2…モデル学習システム、10a、10b、10c、10d…操作装置、20…ロボット、30…撮影部、40…モデル学習部、50…コンピュータ、52…プロセッサ、54…記憶媒体、56…ドライブ部、58…入出力部、62…ROM、64…RAM、110…検出部、112…動作検出部、114…生体信号検出部、114a…生体信号感知部、114b…生体信号取得部、114c…前処理部、120…予測部、140…表示部、150…推定部、160…統合部、170…予測時間設定部、180…操作部、190…計測部、210…制御部、220…駆動部、410…遅延部、420…運動解析部、430…パラメータ更新部

Claims (8)

  1. 操作者の生体信号から、現在から予測時間の経過後の予測時刻における当該操作者の動作の予測値を、所定の機械学習モデルを用いて定める予測部と、
    前記予測値に基づいてロボットの動作を制御する制御部と、
    前記操作者の動作の現在値から前記ロボットの動作までの遅延時間に基づいて前記予測時間を定める予測時間設定部と、を備える
    操作システム。
  2. 前記予測時間設定部は、前記動作の現在値と前記ロボットの動作環境を示す画像を用いて、前記遅延時間を検出する
    請求項1に記載の操作システム。
  3. 前記ロボットの動作環境を示す画像を撮影する撮影部を備える
    請求項1または請求項2に記載の操作システム。
  4. 前記予測時間設定部は、
    前記予測部から前記制御部への伝送と、前記撮影部から前記予測時間設定部への伝送に係る伝送遅延を検出し、
    前記伝送遅延に基づいて前記予測時間を定める
    請求項3に記載の操作システム。
  5. 前記予測時間設定部は、
    前記予測時間の設定画面を表示部に表示させ、
    操作信号に基づいて前記予測時間を設定する
    請求項1から請求項4のいずれか一項に記載の操作システム。
  6. 少なくとも前記ロボットの動作環境を示す画像と前記操作者の動作を示す動作信号に基づいて当該操作者の第2動作を推定する推定部を備え、
    前記制御部は、さらに前記第2動作に基づいて前記ロボットの動作を制御する
    請求項1から請求項5のいずれか一項に記載の操作システム。
  7. 生体信号から操作者の動作までの遅延時間で遅延させた前記生体信号から前記機械学習モデルを用いて定まる前記操作者の動作の予測値と、前記操作者の動作の実測値との差分がより低減するように前記機械学習モデルのパラメータを定めるモデル学習部を備える
    請求項1から請求項6のいずれか一項に記載の操作システム。
  8. 操作システムにおける操作方法であって、
    操作者の生体信号から、現在から予測時間の経過後の予測時刻における当該操作者の動作の予測値を、所定の機械学習モデルを用いて定める第1ステップと、
    前記予測値に基づいてロボットの動作を制御する第2ステップと、
    予測時間設定部が、前記操作者の動作の現在値から前記ロボットの動作までの遅延時間に基づいて前記予測時間を定める第3ステップと、
    を有する操作方法。
JP2021096184A 2021-06-08 2021-06-08 操作システム、および、操作方法 Pending JP2022187926A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2021096184A JP2022187926A (ja) 2021-06-08 2021-06-08 操作システム、および、操作方法
US17/824,956 US11640203B2 (en) 2021-06-08 2022-05-26 Operation system and operation method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021096184A JP2022187926A (ja) 2021-06-08 2021-06-08 操作システム、および、操作方法

Publications (1)

Publication Number Publication Date
JP2022187926A true JP2022187926A (ja) 2022-12-20

Family

ID=84284088

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021096184A Pending JP2022187926A (ja) 2021-06-08 2021-06-08 操作システム、および、操作方法

Country Status (2)

Country Link
US (1) US11640203B2 (ja)
JP (1) JP2022187926A (ja)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4348577B2 (ja) 1999-08-17 2009-10-21 ソニー株式会社 筋電位情報を利用したモーションキャプチャー装置とその制御方法、並びにこれを用いた電気刺激装置、力触覚呈示装置とこれらの制御方法
US9278453B2 (en) * 2012-05-25 2016-03-08 California Institute Of Technology Biosleeve human-machine interface
EP3064130A1 (en) * 2015-03-02 2016-09-07 MindMaze SA Brain activity measurement and feedback system
US11327566B2 (en) * 2019-03-29 2022-05-10 Facebook Technologies, Llc Methods and apparatuses for low latency body state prediction based on neuromuscular data

Also Published As

Publication number Publication date
US20220391014A1 (en) 2022-12-08
US11640203B2 (en) 2023-05-02

Similar Documents

Publication Publication Date Title
US11534246B2 (en) User input device for use in robotic surgery
US20190228330A1 (en) Handstate reconstruction based on multiple inputs
US10755096B2 (en) 3D gaze control of robot for navigation and object manipulation
JP6738481B2 (ja) ロボットシステムの動作の実行
US11344374B2 (en) Detection of unintentional movement of a user interface device
Duan et al. Design of a multimodal EEG-based hybrid BCI system with visual servo module
EP0634031B1 (en) Apparatus and method for eye tracking interface
WO2019147996A1 (en) Calibration techniques for handstate representation modeling using neuromuscular signals
Maimon-Mor et al. Towards free 3D end-point control for robotic-assisted human reaching using binocular eye tracking
Krausz et al. Intent prediction based on biomechanical coordination of EMG and vision-filtered gaze for end-point control of an arm prosthesis
CN108646915B (zh) 结合三维视线跟踪和脑机接口控制机械臂抓取物体的方法和系统
Romeo et al. Method for automatic slippage detection with tactile sensors embedded in prosthetic hands
CN113632176A (zh) 用于基于神经肌肉数据的低等待时间身体状态预测的方法和装置
Tostado et al. 3D gaze cursor: Continuous calibration and end-point grasp control of robotic actuators
Dwivedi et al. A shared control framework for robotic telemanipulation combining electromyography based motion estimation and compliance control
Al-Yacoub et al. Effective human-robot collaboration through wearable sensors
Penaloza et al. Towards intelligent brain-controlled body augmentation robotic limbs
JP2022187925A (ja) 操作システム、および、操作方法
Boru et al. Novel technique for control of industrial robots with wearable and contactless technologies
Gardner et al. An unobtrusive vision system to reduce the cognitive burden of hand prosthesis control
Folgheraiter et al. A Multimodal Brain-arm Interface for Operation of Complex Robotic Systems and Upper Limb Motor Recovery.
JP2012101284A (ja) 人の動作における意図推定装置
JP2022187926A (ja) 操作システム、および、操作方法
CN114845618A (zh) 计算机辅助手术系统、手术控制设备和手术控制方法
Moradi et al. Integrating Human Hand Gestures with Vision Based Feedback Controller to Navigate a Virtual Robotic Arm

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20231128