Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP7577017B2 - CONTROL DEVICE, ROBOT SYSTEM, CONTROL METHOD, AND PROGRAM - Google Patents
[go: Go Back, main page]

JP7577017B2 - CONTROL DEVICE, ROBOT SYSTEM, CONTROL METHOD, AND PROGRAM - Google Patents

CONTROL DEVICE, ROBOT SYSTEM, CONTROL METHOD, AND PROGRAM Download PDF

Info

Publication number
JP7577017B2
JP7577017B2 JP2021060904A JP2021060904A JP7577017B2 JP 7577017 B2 JP7577017 B2 JP 7577017B2 JP 2021060904 A JP2021060904 A JP 2021060904A JP 2021060904 A JP2021060904 A JP 2021060904A JP 7577017 B2 JP7577017 B2 JP 7577017B2
Authority
JP
Japan
Prior art keywords
robot
unit
effector
information
motion
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
JP2021060904A
Other languages
Japanese (ja)
Other versions
JP2022156954A (en
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.)
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 JP2021060904A priority Critical patent/JP7577017B2/en
Priority to PCT/JP2022/012089 priority patent/WO2022209924A1/en
Priority to US18/280,959 priority patent/US20240149458A1/en
Priority to EP22780144.6A priority patent/EP4316747A4/en
Publication of JP2022156954A publication Critical patent/JP2022156954A/en
Application granted granted Critical
Publication of JP7577017B2 publication Critical patent/JP7577017B2/en
Priority to US19/290,401 priority patent/US20250360626A1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Manipulator (AREA)

Description

本発明は、制御装置、ロボットシステム、制御方法、および、プログラムに関する。 The present invention relates to a control device, a robot system, a control method, and a program.

従来から、操作者の動作を受け付け、受け付けた動作に従ってロボットを制御するロボットシステムが提案されている。例えば、特許文献1に記載のロボットシステムは、ロボットを操作する第1ユーザの姿勢を示す第1ユーザ姿勢情報を取得し、第1ユーザ姿勢情報に基づいてロボットの姿勢を変化させる前の変化前姿勢を示す変化前姿勢情報を取得する。当該ロボットシステムは、変化前姿勢情報と、変化前姿勢情報が示す変化前姿勢をロボットがしている時点で、第1ユーザ姿勢情報に基づいて、第1ユーザの姿勢とは異なる標的姿勢をロボットの姿勢に決定する。また、特許文献1に記載のロボットシステムは、ユーザ装置からネットワークを介して第1ユーザ姿勢情報の基礎とするユーザ情報を取得する。 Conventionally, robot systems have been proposed that accept the actions of an operator and control a robot in accordance with the accepted actions. For example, the robot system described in Patent Document 1 acquires first user posture information indicating the posture of a first user operating the robot, and acquires pre-change posture information indicating a pre-change posture before the posture of the robot is changed based on the first user posture information. The robot system determines a target posture different from the posture of the first user as the posture of the robot based on the first user posture information at the time when the robot is in the pre-change posture information and the pre-change posture indicated by the pre-change posture information. The robot system described in Patent Document 1 also acquires user information on which the first user posture information is based from the user device via a network.

特許第6476358号公報Patent No. 6476358

ロボットシステムにおいて、操作者の動作に対して遅滞なくロボットに追従させることは、作業の効率化および負担の軽減を図るために重要である。しかしながら、操作者の動作に基づくロボットの制御や動作情報の通信において、遅延を完全に取り除くことはできない。他方、ロボットの動作の遅延(追従遅れ)は、操作者に違和感を与え、作業速度の低下や作業の失敗となる要因となり、作業効率の低下を招く。 In a robot system, having the robot follow the operator's movements without delay is important for improving work efficiency and reducing the operator's burden. However, it is impossible to completely eliminate delays in controlling the robot based on the operator's movements and in communicating operation information. On the other hand, delays in the robot's movements (tracking delays) make the operator feel uncomfortable, slowing down work speed and causing work to fail, resulting in reduced work efficiency.

本発明の態様は上記の点に鑑みてなされたものであり、操作感を向上することができる制御装置、ロボットシステム、制御方法、および、プログラムを提供することを課題の一つとする。 The present invention has been made in consideration of the above points, and one of its objectives is to provide a control device, robot system, control method, and program that can improve the operability.

(1)本発明は上記の課題を解決するためになされたものであり、本発明の一態様は、少なくともロボットの動作を示す動作情報と、少なくとも操作者の手の位置を示す操作情報に基づき、現時刻から所定の予測時間後の予測時刻までの前記ロボットの効果器の予測軌道を定める軌道予測部と、前記予測軌道に基づいて制御指令を生成する制御指令生成部と、少なくとも前記ロボットの動作環境を示す環境情報と、前記操作情報に基づき、前記ロボットの動作状況を推定する動作状況推定部と、を備え、前記軌道予測部は前記動作状況に基づいて前記予測時間を定める制御装置である。 (1) The present invention has been made to solve the above-mentioned problems, and one aspect of the present invention includes a trajectory prediction unit that determines a predicted trajectory of an effector of the robot from a current time to a predicted time after a predetermined predicted time based on operation information that indicates at least a robot's operation and operation information that indicates at least the position of an operator's hand, a control command generation unit that generates a control command based on the predicted trajectory, and an operation status estimation unit that estimates an operation status of the robot based on environmental information that indicates at least an operational environment of the robot and the operation information, wherein the trajectory prediction unit is a control device that determines the predicted time based on the operation status .

(2)本発明の他の態様は、(1)の制御装置であって、前記予測軌道をなす時刻ごとの前記効果器の目標位置を与える前記ロボットの動作機構の変位の目標値に基づいて前記動作機構に対する操作量を定める駆動制御部を備え、前記動作状況推定部は、
前記動作状況に基づいて、前記目標値の利得を定めてもよい。
(2) Another aspect of the present invention is the control device according to (1) , further comprising a drive control unit that determines an amount of operation for the movement mechanism of the robot based on a target value of a displacement of the movement mechanism of the robot that provides a target position of the effector for each time of the predicted trajectory, and the movement status estimating unit:
The target gain may be determined based on the operating conditions.

(3)本発明の他の態様は、(2)の制御装置であって、前記駆動制御部は、前記効果器の現在位置を与える前記変位の出力値と前記目標値との偏差と第1利得に基づく第1成分と、前記目標値と第2利得に基づく第2成分を合成して前記操作量を定め、前記動作状況推定部は、前記動作状況に基づいて、前記第1利得と前記第2利得を定めてもよい。 (3) Another aspect of the present invention is the control device of (2) , wherein the drive control unit determines the manipulated variable by combining a first component based on a deviation between the displacement output value giving the current position of the effector and the target value and a first gain, and a second component based on the target value and a second gain, and the operation status estimation unit may determine the first gain and the second gain based on the operation status.

(4)本発明の他の態様は、(1)から(3)のいずれかの制御装置であって、前記動作状況推定部は、さらに前記ロボットを操作する操作者の状況を示す操作者情報に基づいて前記動作状況を推定してもよい。 (4) Another aspect of the present invention is a control device of any of (1) to (3) , wherein the operation status estimation unit may further estimate the operation status based on operator information indicating a status of an operator operating the robot.

(5)本発明の他の態様は、コンピュータに(1)から(3)のいずれかの制御装置として機能させるためのプログラムであってもよい。 (5) Another aspect of the present invention may be a program for causing a computer to function as a control device according to any one of (1) to (3) .

(6)本発明の他の態様は、(1)から(3)のいずれかの制御装置と前記ロボットを備えるロボットシステムであってもよい。 (6) Another aspect of the present invention may be a robot system including the control device according to any one of (1) to (3) and the robot.

(7)本発明の他の態様は、制御装置における制御方法であって、少なくともロボットの動作を示す動作情報と、少なくとも操作者の手の位置を示す操作情報に基づき、現時刻から所定の予測時間後の予測時刻までの前記ロボットの効果器の予測軌道を定める第1ステップと、前記予測軌道に基づいて制御指令を生成する第2ステップと、少なくとも前記ロボットの動作環境を示す環境情報と、前記操作情報に基づき、前記ロボットの動作状況を推定する第3ステップと、を有し、前記第1ステップは、前記動作状況に基づいて前記予測時間を定めるステップを有する制御方法である。 (7) Another aspect of the present invention is a control method in a control device, comprising : a first step of determining a predicted trajectory of an effector of the robot from a current time to a predicted time after a predetermined predicted time based on operation information indicating at least a robot operation and operation information indicating at least a position of an operator's hand; a second step of generating a control command based on the predicted trajectory; and a third step of estimating an operation status of the robot based on environmental information indicating at least an operating environment of the robot and the operation information, wherein the first step includes a step of determining the predicted time based on the operation status .

上述した(1)、(5)、(6)、(7)の構成によれば、現時刻より後の予測時刻までの効果器の予測軌道に基づいて生成された制御指令に従ってロボットの効果器が駆動されるため、操作がロボット20の動作に反映されるまでの遅延が低減または解消される。操作者にとり操作感が向上するため、作業効率の向上と負担軽減を両立することができる。 According to the above-mentioned configurations (1), (5), (6), and (7) , the effector of the robot is driven according to a control command generated based on the predicted trajectory of the effector from the current time to a predicted time after the current time, thereby reducing or eliminating the delay until the operation is reflected in the operation of the robot 20. Since the operability for the operator is improved, it is possible to achieve both improved work efficiency and reduced burden.

上述した(1)、(5)、(6)、(7)の構成によれば、ロボットの動作環境と操作状況から推定されるロボットの動作状況に応じて予測時間が定まる。そのため、動作状況に応じて操作感の向上と制御される効果器の位置の正確性のバランスが調整される。 According to the above-mentioned configurations (1), (5), (6), and (7) , the predicted time is determined according to the robot's operating environment and the robot's operating status estimated from the operating status, so that the balance between the improvement of the operability and the accuracy of the position of the effector to be controlled is adjusted according to the operating status.

上述した(2)の構成によれば、動作状況に応じて動作機構に対する操作量に対する目標値の寄与が調整される。そのため、動作状況に応じて操作者の操作に対する効果器の動作の感受性が調整される。 According to the above-mentioned configuration (2) , the contribution of the target value to the amount of operation of the operating mechanism is adjusted in accordance with the operating situation. Therefore, the sensitivity of the operation of the effector to the operation by the operator is adjusted in accordance with the operating situation.

上述した(3)の構成によれば、動作状況に応じてフィードバック項とフィードフォワード項とのバランスが調整される。そのため、動作状況に応じて、操作者の操作に対する効果器の動作の感受性と正確性とのバランスが調整される。 According to the above-mentioned configuration (3) , the balance between the feedback term and the feedforward term is adjusted according to the operating situation. Therefore, the balance between the sensitivity and accuracy of the operation of the effector organ in response to the operation of the operator is adjusted according to the operating situation.

上述した(4)の構成によれば、さらに操作者の状況を参照して動作状況が的確に推定される。そのため、ロボットによる作業効率と作業負担の軽減がさらに促進される。 According to the above-mentioned configuration (4) , the operating status can be accurately estimated by further referring to the status of the operator, which further improves the work efficiency and reduces the work burden of the robot.

第1の実施形態に係るロボットシステムの構成例を示す概略ブロック図である。1 is a schematic block diagram illustrating a configuration example of a robot system according to a first embodiment. 第1の実施形態に係る制御装置の一部の機能構成例を示すブロック図である。2 is a block diagram showing an example of a functional configuration of a portion of a control device according to the first embodiment; FIG. 第1の実施形態に係る制御装置のハードウェア構成例を示す概略ブロック図である。FIG. 2 is a schematic block diagram illustrating an example of a hardware configuration of a control device according to the first embodiment. 第1の実施形態に係る動作制御処理の一例を示すフローチャートである。5 is a flowchart illustrating an example of an operation control process according to the first embodiment. 第2の実施形態に係るロボットシステムの構成例を示す概略ブロック図である。FIG. 11 is a schematic block diagram illustrating a configuration example of a robot system according to a second embodiment. 第2の実施形態に係る制御装置の一部の機能構成例を示すブロック図である。FIG. 11 is a block diagram showing an example of a functional configuration of a portion of a control device according to a second embodiment. 第2の実施形態に係る動作制御処理の一例を示すフローチャートである。13 is a flowchart illustrating an example of an operation control process according to the second embodiment.

<第1の実施形態>
以下、図面を参照しながら本発明の第1の実施形態について説明する。
図1は、本実施形態に係るロボットシステムS1の構成例を示す概略ブロック図である。
ロボットシステムS1は、ユーザである操作者の動作に従ってロボット20の動作を制御することができる制御システムである。また、ロボットシステムS1は、操作に応じてロボット20の動作を操縦する操縦システムでもある。ロボット20は、効果器(end-effector、エンドエフェクタ、ロボットハンド、手先効果器、作用器、などとも呼ばれる)を備える。効果器は、他の物体に機械的に作用して影響を及ぼす部材である。効果器は、複数の指部を有し、他の物体を把持または解放可能とする機構を備える。個々の指部は、操作者の対応する指の動きに応じて動作可能とする。これにより、各種の作業が実現される。
First Embodiment
Hereinafter, a first embodiment of the present invention will be described with reference to the drawings.
FIG. 1 is a schematic block diagram showing an example of the configuration of a robot system S1 according to this embodiment.
The robot system S1 is a control system that can control the operation of the robot 20 according to the operation of an operator who is a user. The robot system S1 is also a manipulation system that manipulates the operation of the robot 20 according to the operation. The robot 20 is equipped with an effector (also called an end-effector, robot hand, end effector, effector, etc.). The effector is a member that mechanically acts on and affects other objects. The effector has a plurality of fingers and is equipped with a mechanism that can grasp or release other objects. Each finger can be operated according to the movement of the corresponding finger of the operator. This allows various tasks to be realized.

本実施形態に係るロボットシステムS1は、ロボット20の動作環境を示す環境情報と、操作状況を示す操作情報に基づき、ロボット20の動作状況を推定する。後述するように、動作状況の推定の際、ロボットシステムS1は、駆動センサ26から取得された駆動状態情報や操作者の視線情報なども用いてもよい。ロボットシステムS1は、動作状況に対応する制御特性を示す特性パラメータに基づいてロボット20の効果器を目標位置に動作させるための制御指令を生成する。ロボットシステムS1は、生成した制御指令に基づいてロボット20の動作を制御する。
本願では、動作状況とは、主にロボット20が行う動作の形態、つまり、タスクまたは動作モードとの意味を含む。動作状況は、例えば、操作しようとする作業の種類、作業に係る物体との位置関係、物体の種類もしくは特徴などを要素として含みうる。動作状況は、いずれかの要素、または、いずれかの要素の組み合わせを含んで定義されてもよい。操作情報が共通であっても、動作状況に応じてロボット20の効果器を移動させる目標位置が異なることもある。
The robot system S1 according to this embodiment estimates the motion status of the robot 20 based on environmental information indicating the motion environment of the robot 20 and operation information indicating the operation status. As described below, when estimating the motion status, the robot system S1 may also use drive state information acquired from the drive sensor 26 and gaze information of the operator. The robot system S1 generates a control command for operating the effector of the robot 20 to a target position based on characteristic parameters indicating control characteristics corresponding to the motion status. The robot system S1 controls the motion of the robot 20 based on the generated control command.
In the present application, the operation situation mainly includes the form of the operation performed by the robot 20, that is, the task or operation mode. The operation situation may include, for example, the type of work to be performed, the positional relationship with an object related to the work, the type or characteristics of the object, and the like as elements. The operation situation may be defined to include any element or a combination of any elements. Even if the operation information is common, the target position to which the effector of the robot 20 is moved may differ depending on the operation situation.

ロボットシステムS1は、ロボット20、表示装置50、操作装置70、および、環境情報取得部80を備える。ロボット20は、1個以上のマニピュレータ(manipulator)を備える。マニピュレータは、ロボットアームとも呼ばれる。個々のマニピュレータは、複数の分節(segment)を備え、これらの分節が相互に連結されている。その複数の分節には、1個の効果器が含まれる。効果器は、マニピュレータの一端に接続され、物体に接触して作用を及ぼす部材である。ロボット20の動作機構は、その複数の分節のうち2個の分節を含む分節対ごとに関節を備えるとともに、関節ごとにアクチュエータを備える。アクチュエータにより各2個の分節間のなす角度を変化させることで、効果器の位置を移動させることができる。以下の説明では、マニピュレータの個数が1個である場合(単腕型)を主とするが、2個以上となってもよい。また、ロボット20は、所定の位置に固定される据置型であってもよいし、自身の位置を移動することができる可動型であってもよい。以下の説明では、ロボット20が据置型である場合を主とする。 The robot system S1 includes a robot 20, a display device 50, an operating device 70, and an environmental information acquisition unit 80. The robot 20 includes one or more manipulators. The manipulator is also called a robot arm. Each manipulator includes a plurality of segments, which are connected to one another. Each of the plurality of segments includes one effector. The effector is a member that is connected to one end of the manipulator and that contacts an object to exert an action. The operating mechanism of the robot 20 includes a joint for each pair of segments including two of the plurality of segments, and an actuator for each joint. The position of the effector can be moved by changing the angle between each pair of segments using the actuator. In the following description, the case where the number of manipulators is one (single-arm type) is mainly described, but the number of manipulators may be two or more. The robot 20 may be a stationary type that is fixed to a predetermined position, or a mobile type that can move its own position. The following explanation focuses mainly on the case where the robot 20 is a stationary type.

ロボット20の制御装置30は、表示装置50、操作装置70、および、環境情報取得部80と無線または有線で各種の情報を入出力可能に接続される。
表示装置50と操作装置70は、ロボット20と環境情報取得部80と物理的に離れた空間に所在してもよい。その場合、表示装置50と操作装置70は、制御装置30と通信ネットワークを経由して接続される遠隔操作システムとして構成されてもよい。
The control device 30 of the robot 20 is connected to the display device 50, the operation device 70, and the environmental information acquisition unit 80 wirelessly or via wires so as to be able to input and output various types of information.
The display device 50 and the operation device 70 may be located in a space physically separated from the robot 20 and the environmental information acquisition unit 80. In that case, the display device 50 and the operation device 70 may be configured as a remote operation system connected to the control device 30 via a communication network.

ロボット20は、駆動部24、駆動センサ26、電源28、および、制御装置30を備える。
駆動部24は、関節ごとにアクチュエータを備え、制御装置30の駆動制御部40から入力される制御指令に従って動作する。個々のアクチュエータは、いわゆるモータに相当し、制御指令で指示される駆動量の目標値に従い自部に連結される2個の分節のなす角度を変化させる。
駆動センサ26は、駆動部24によるロボット20の駆動状態を検出し、検出した駆動状態を示す駆動状態情報を制御装置30に出力する。駆動センサ26は、例えば、関節ごとに2個の分節のなす角度を検出するロータリエンコーダを含んで構成される。
The robot 20 includes a drive unit 24 , a drive sensor 26 , a power source 28 , and a control device 30 .
The drive unit 24 includes an actuator for each joint, and operates according to a control command input from a drive control unit 40 of the control device 30. Each actuator corresponds to a so-called motor, and changes the angle between the two segments connected to the drive unit 24 according to a target value of the drive amount specified by the control command.
The drive sensor 26 detects the drive state of the robot 20 by the drive unit 24, and outputs drive state information indicating the detected drive state to the control device 30. The drive sensor 26 includes, for example, a rotary encoder that detects the angle between two segments for each joint.

電源28は、ロボット20に備わる各構成部に電力を供給する。電源28は、例えば、電源端子、二次電池、および、電圧変換器を備える。電源端子は、電力線を接続可能とし、外部から電力が供給され、供給される電力を二次電池または電圧変換器に供給する。
二次電池は、電源端子を用いて供給される電力を蓄積する。二次電池は、電圧変換器を経由して各構成部に電力を供給可能とする。電圧変換器は、電源端子または電源端子から供給される電力の電圧を各構成部で要求される所定の電圧に変換し、それぞれ電圧を変換した電力を各構成部に供給する。
The power supply 28 supplies power to each component of the robot 20. The power supply 28 includes, for example, a power supply terminal, a secondary battery, and a voltage converter. The power supply terminal allows a power line to be connected, receives power from an external source, and supplies the supplied power to the secondary battery or the voltage converter.
The secondary battery stores power supplied via a power supply terminal. The secondary battery is capable of supplying power to each component via a voltage converter. The voltage converter converts the voltage of the power supply terminal or the power supplied from the power supply terminal to a predetermined voltage required by each component, and supplies each component with the converted voltage.

次に、本実施形態に係る制御装置30の機能構成について、図1と図2を参照しながら説明する。図2は、本実施形態に係る制御装置30の一部の機能構成例を示すブロック図である。制御装置30は、情報取得部32、動作状況推定部34、目標位置推定部36、制御指令生成部38、駆動制御部40、通信部42、および、記憶部44を備える。
情報取得部32は、操作者の状況およびロボット20の状況に関する各種の情報を取得する。例えば、情報取得部32は、表示装置50から視線情報と第1操作者動作情報を取得する。視線情報と第1操作者動作情報は、操作者の状況を示す操作者情報を構成する。視線情報は、ある時刻における操作者の少なくとも一方の眼の視線方向を示す情報である。第1操作者動作情報は、操作者の頭部の動作を示す情報である。頭部の動作は、時刻ごとの頭部の方向ならびに位置で表わされる。本願では、視線情報と第1操作者動作情報を操作者情報と総称することがある。
Next, the functional configuration of the control device 30 according to this embodiment will be described with reference to Fig. 1 and Fig. 2. Fig. 2 is a block diagram showing an example of the functional configuration of a portion of the control device 30 according to this embodiment. The control device 30 includes an information acquisition unit 32, an operation status estimation unit 34, a target position estimation unit 36, a control command generation unit 38, a drive control unit 40, a communication unit 42, and a storage unit 44.
The information acquisition unit 32 acquires various information related to the status of the operator and the status of the robot 20. For example, the information acquisition unit 32 acquires gaze information and first operator movement information from the display device 50. The gaze information and the first operator movement information constitute operator information indicating the status of the operator. The gaze information is information indicating the gaze direction of at least one eye of the operator at a certain time. The first operator movement information is information indicating the movement of the operator's head. The head movement is represented by the direction and position of the head for each time. In the present application, the gaze information and the first operator movement information may be collectively referred to as operator information.

情報取得部32は、第2操作者動作情報を操作装置70から取得する。第2操作者動作情報は、操作者による操作に係る身体の動作を示す情報である。第2操作者動作情報は、ロボット20に対する操作状況を示す操作情報を構成する。第2操作者動作情報は、操作者の身体部位として、主に手部の動作を示す情報が含まれる。手部の動作には、少なくとも2本の指部の動作が含まれる。第2操作者動作情報には、手部の動作の他、手首の動作を示す情報が含まれてもよい。手首の動作は、その手首の代表位置を用いて表されもよいし、さらにその姿勢の情報が含まれてもよい。身体部位の動作は、時刻ごとの身体部位の位置の情報を用いて表される。本願では、第2操作者動作情報を操作情報と呼ぶことがある。 The information acquisition unit 32 acquires second operator motion information from the operation device 70. The second operator motion information is information indicating body motion related to operation by the operator. The second operator motion information constitutes operation information indicating the operation status of the robot 20. The second operator motion information includes information mainly indicating hand motion as the body part of the operator. The hand motion includes motion of at least two fingers. The second operator motion information may include information indicating wrist motion in addition to hand motion. The wrist motion may be represented using a representative position of the wrist, and may further include posture information. The motion of the body part is represented using information on the position of the body part at each time. In this application, the second operator motion information may be referred to as operation information.

情報取得部32は、環境情報取得部80から環境情報を取得する。環境情報は、ロボット20の動作環境を示す。環境情報には、ロボット20の動作環境を示す画像を示す画像データと、ロボット20の動作環境に分布する物体までの距離を示す距離データが含まれる。
情報取得部32は、駆動センサ26から駆動状態情報を取得する。駆動状態情報は、ロボット20の姿勢を示す姿勢情報とみなすこともできる。各時刻の駆動状態情報の時系列は、ロボット20の動作を示すロボット動作情報に相当する。情報取得部32は、取得した各種の情報を記憶部44に記憶する。
The information acquiring unit 32 acquires environmental information from the environmental information acquiring unit 80. The environmental information indicates the operating environment of the robot 20. The environmental information includes image data indicating an image showing the operating environment of the robot 20, and distance data indicating distances to objects distributed in the operating environment of the robot 20.
The information acquisition unit 32 acquires driving state information from the driving sensor 26. The driving state information can also be considered as posture information indicating the posture of the robot 20. The time series of the driving state information at each time corresponds to robot operation information indicating the operation of the robot 20. The information acquisition unit 32 stores the acquired various information in the storage unit 44.

動作状況推定部34は、記憶部44から、その時点において最新の環境情報と操作情報を読み出し、読み出した環境情報と操作情報に基づいて、ロボット20の動作状況を推定する。動作状況推定部34は、ロボット20の動作状況を推定するため、例えば、所定の機械学習モデルを用いる。動作状況推定部34には、環境情報と操作情報が入力情報として入力されるとき、出力情報として、その入力情報に対応する既知の動作状況の信頼度を1とし、その他の動作状況の候補に対する信頼度を0とする出力情報が得られるように訓練データを用いて学習されたパラメータセットを予め設定しておく。訓練データは、入力情報と既知の出力情報の組を多数含んで構成される。パラメータセットは、訓練データ全体として入力情報から推定される出力情報の推定値と既知の出力情報との差が最小化されるように学習される。その場合、機械学習モデルから得られる個々の動作状況に対する信頼度が0から1の間となる実数値として定まりうる。動作状況推定部34は、動作状況の候補ごとに算出された信頼度が所定の信頼度よりも高く、かつ、最大となる動作状況の候補がロボット20の動作状況として特定することができる。動作状況として、例えば、ロボット20の動作環境に所在している複数の物体のうち、その時点における操作情報が示す手部の動作方向に最も近い方向に所在する物体(目標物体)への接近、その時点において効果器に接している物体の作用の形態(例えば、把持、解放、摩擦、等)、などが判定される。 The operation status estimation unit 34 reads the latest environmental information and operation information at that time from the storage unit 44, and estimates the operation status of the robot 20 based on the read environmental information and operation information. The operation status estimation unit 34 uses, for example, a predetermined machine learning model to estimate the operation status of the robot 20. When the environmental information and operation information are input as input information to the operation status estimation unit 34, a parameter set learned using training data is set in advance so that output information in which the reliability of a known operation status corresponding to the input information is 1 and the reliability of other candidate operation statuses is 0 is obtained as output information. The training data is composed of many pairs of input information and known output information. The parameter set is learned so that the difference between the estimated value of the output information estimated from the input information and the known output information is minimized as the entire training data. In that case, the reliability of each operation status obtained from the machine learning model can be determined as a real value between 0 and 1. The motion situation estimation unit 34 can identify the motion situation candidate for which the reliability calculated for each candidate motion situation is higher than a predetermined reliability and is the highest as the motion situation of the robot 20. As the motion situation, for example, the approach to an object (target object) that is located in the direction closest to the motion direction of the hand indicated by the operation information at that time among multiple objects located in the motion environment of the robot 20, the form of action of the object in contact with the effector at that time (e.g., grasping, release, friction, etc.) and the like are determined.

動作状況推定部34は、記憶部44から、その時点において最新の操作者情報を読み出し、環境情報と操作情報の他、さらに操作者情報に基づいて、ロボット20の動作状況を推定してもよい。操作者情報は、操作者の頭部の動きも考慮した視線方向を示す。そのため、動作状況を推定する際に、操作者情報により操作者が関心を有する事象が生じた方向がさらに考慮される。動作状況推定部34には、機械学習モデルに環境情報と操作情報の他、操作者情報が入力情報として入力されるとき、出力として、その入力情報に対応する既知の動作状況の信頼度が1とし、その他の動作状況の候補に対する信頼度が0とする出力情報が得られるように訓練データを用いて、上記のように学習されたパラメータセットを予め設定しておく。
なお、動作状況推定部34は、記憶部44から、その時点において最新の駆動状態情報を読み出し、さらに駆動状態情報に基づいて、ロボット20の動作状況を推定してもよい。駆動状態情報は、ロボット20の姿勢やその時間変化を示す。そのため、動作状況を推定する際に、ロボット20の姿勢がさらに考慮される。動作状況推定部34には、機械学習モデルに環境情報と操作情報の他、駆動状態情報が入力情報として入力されるとき、出力として、その入力情報に対応する既知の動作状況の信頼度が1とし、その他の動作状況の候補に対する信頼度が0とする出力情報が得られるように訓練データを用いて、上記のように学習されたパラメータセットを予め設定しておく。
The motion situation estimation unit 34 may read the latest operator information at that time from the storage unit 44, and estimate the motion situation of the robot 20 based on the operator information in addition to the environmental information and the operation information. The operator information indicates the line of sight direction taking into account the movement of the operator's head. Therefore, when estimating the motion situation, the direction in which an event in which the operator is interested occurs is further taken into consideration based on the operator information. The motion situation estimation unit 34 pre-sets a parameter set learned as described above using training data so that, when the environmental information, operation information, and operator information are input as input information to the machine learning model, output information in which the reliability of a known motion situation corresponding to the input information is 1 and the reliability of other motion situation candidates is 0 is obtained as an output.
The operation status estimation unit 34 may read out the latest driving state information at that time from the storage unit 44, and further estimate the operation status of the robot 20 based on the driving state information. The driving state information indicates the posture of the robot 20 and its change over time. Therefore, when estimating the operation status, the posture of the robot 20 is further taken into consideration. In the operation status estimation unit 34, a parameter set learned as described above is set in advance using training data so that when driving state information is input as input information to the machine learning model in addition to environmental information and operation information, output information in which the reliability of a known operation status corresponding to the input information is 1 and the reliability of other operation status candidates is 0 is obtained as output.

動作状況推定部34は、推定した動作状況に対応する特性パラメータを定める。特性パラメータは、効果器の動作に対する制御特性に関するパラメータである。特性パラメータには、例えば、収束判定パラメータ、目的関数の因子ごとの重み係数のいずれか、または、それらの組が含まれる。記憶部44には、動作状況ごとに特性パラメータを示す特性パラメータテーブルを予め記憶しておく。動作状況推定部34は、特性パラメータテーブルを参照し、推定した動作状況に対応する特性パラメータを特定し、特定した特性パラメータを制御指令生成部38に出力する。 The operation status estimation unit 34 determines characteristic parameters corresponding to the estimated operation status. The characteristic parameters are parameters related to the control characteristics for the operation of the effector. The characteristic parameters include, for example, a convergence determination parameter, a weighting coefficient for each factor of the objective function, or a combination of these. The memory unit 44 stores in advance a characteristic parameter table indicating characteristic parameters for each operation status. The operation status estimation unit 34 refers to the characteristic parameter table, identifies characteristic parameters corresponding to the estimated operation status, and outputs the identified characteristic parameters to the control command generation unit 38.

収束判定パラメータは、効果器の位置が目標位置に収束したか否かを判定するための収束判定条件を示すパラメータである。収束判定条件の強度は、収束される位置(本願では、「収束位置」と呼ぶことがある)の目標位置に対する拘束の度合い、言い換えれば、目標位置に対する正確性に相当する。収束判定パラメータとして、例えば、目標位置からの距離の閾値が利用可能である。目標位置からの距離の閾値が小さいほど、収束判定条件が強いことを示す。動作状況推定部34は、制御対象となる効果器の位置の追従性を要する動作状況ほど、強い収束判定条件を示す収束判定パラメータを設定してもよい。追従性とは、目標位置に対して効果器の位置を正確に制御できる特性、もしくは、正確な制御を要する特性、つまり、正確性を意味する。かかる動作状況には、例えば、効果器が繊細な物体が設置され目標位置に十分近接している状況、操作情報で指示される動作が微細な状況、などがある。 The convergence judgment parameter is a parameter indicating a convergence judgment condition for judging whether the position of the effector has converged to the target position. The strength of the convergence judgment condition corresponds to the degree of constraint of the converged position (sometimes referred to as the "convergence position" in this application) with respect to the target position, in other words, the accuracy with respect to the target position. For example, a threshold value of the distance from the target position can be used as the convergence judgment parameter. The smaller the threshold value of the distance from the target position, the stronger the convergence judgment condition. The operation situation estimation unit 34 may set a convergence judgment parameter indicating a stronger convergence judgment condition for an operation situation requiring tracking of the position of the effector to be controlled. Tracking means a characteristic that allows the position of the effector to be accurately controlled with respect to the target position, or a characteristic that requires accurate control, that is, accuracy. Such operation situations include, for example, a situation where a delicate object is installed in which the effector is sufficiently close to the target position, a situation where the operation instructed by the operation information is delicate, etc.

逆運動学計算は、目標位置から個々の関節の変位、つまり角度と角加速度の一方または両方を定める解析手法であり、逆運動学解析とも呼ばれる。なお、逆動力学計算は、複数の分節が接続されてなるリンク機構において、個々の関節の運動(つまり角度と角加速度の一方または両方の時間変化)を実現するための関節の駆動力を定める解析手法であり、逆動力学解析とも呼ばれる。そのため、逆運動学計算は、逆動力学計算とも密接に関連する。本実施形態では、逆運動学計算に係る特性パラメータに、逆動力学計算に係る特性パラメータが含まれることがある。
他方、収束判定条件が強いほど、逆運動学計算の解が存在しない可能性や、解が存在しても、その解が安定しない可能性が高くなる傾向がある。そこで、動作状況推定部34は制御対象となる効果器の位置の柔軟性が許容される動作状況ほど、弱い収束判定条件(例えば、目標位置から離間)を示す収束判定パラメータを設定してもよい。柔軟性とは、目標位置からの効果器の位置の乖離が許容される特性を意味する。柔軟性は、確実に制御可能とする特性、つまり、安全性を意味する。柔軟性が許容される動作状況には、例えば、目標位置までの経路の周辺に複数の物体が分布している場合、などがある。
Inverse kinematics calculation is an analytical method for determining the displacement of each joint from a target position, that is, either or both of the angle and angular acceleration, and is also called inverse kinematics analysis. Note that inverse dynamics calculation is an analytical method for determining the driving force of a joint for realizing the motion of each joint (that is, the time change of either or both of the angle and angular acceleration) in a link mechanism in which multiple segments are connected, and is also called inverse dynamics analysis. Therefore, inverse kinematics calculation is closely related to inverse dynamics calculation. In this embodiment, characteristic parameters related to inverse kinematics calculation may include characteristic parameters related to inverse dynamics calculation.
On the other hand, the stronger the convergence judgment condition, the higher the possibility that no solution of the inverse kinematics calculation exists, or that even if a solution exists, the higher the possibility that the solution is unstable. Therefore, the motion situation estimation unit 34 may set a convergence judgment parameter indicating a weaker convergence judgment condition (e.g., distance from the target position) for a motion situation in which flexibility of the position of the effector to be controlled is permitted. Flexibility means a characteristic that allows deviation of the position of the effector from the target position. Flexibility means a characteristic that allows reliable control, that is, safety. An example of a motion situation in which flexibility is permitted is a case in which multiple objects are distributed around the path to the target position.

目的関数は、逆運動学計算においてロボット20の動作の最適解を公知の手法を用いて数値的に求める(最適化問題)ために用いられる。つまり、目的関数は、効果器を目標位置に動作させるための負荷の大きさを定量的に示す関数であり、複数種類の因子を含み、それらの因子を合成して構成される。重み係数は、個々の因子の目的関数に対する寄与を示す。負荷とは、制御に係るコストを意味する。複数の因子には、時刻ごとの制御誤差の大きさが1つの因子として含まれる。制御誤差の大きさは、例えば、最終的な目標位置と収束との誤差の大きさ(距離)で表される。制御誤差に対する重み係数が大きいほど、目標位置に対する効果器の追従性が高くなるように制御される。目的関数には、効果器の現在位置から収束位置までの到達時間、現在から収束位置に至るまでのジャークの大きさ、現在から収束位置に至るまでの電力量、収束位置に至るまでのロボット20の運動量、現在のロボット20の姿勢と効果器が収束位置に位置する時点でのロボット20の姿勢との差分の大きさ、などのいずれか、または、組み合わせが因子として含まれてもよい。本願では、最適化とは、目的関数の関数値をより小さくする解を探索すると意味を含み、絶対的に関数値を最小とすることに限られない。従って、関数値が一時的に増加することもありうる。 The objective function is used to numerically obtain the optimal solution for the operation of the robot 20 in the inverse kinematics calculation using a known method (optimization problem). In other words, the objective function is a function that quantitatively indicates the magnitude of the load for operating the effector to the target position, and includes multiple types of factors, and is composed of these factors. The weighting coefficient indicates the contribution of each factor to the objective function. The load means the cost related to control. The multiple factors include the magnitude of the control error at each time as one factor. The magnitude of the control error is expressed, for example, by the magnitude (distance) of the error between the final target position and the convergence. The larger the weighting coefficient for the control error, the higher the tracking ability of the effector to the target position is controlled. The objective function may include any one or a combination of factors, such as the arrival time from the current position of the effector to the convergence position, the magnitude of the jerk from the current position to the convergence position, the amount of power from the current position to the convergence position, the momentum of the robot 20 until the convergence position, the magnitude of the difference between the current posture of the robot 20 and the posture of the robot 20 at the time when the effector is located at the convergence position, etc. In this application, optimization means searching for a solution that reduces the function value of the objective function, and is not limited to absolutely minimizing the function value. Therefore, the function value may temporarily increase.

従って、動作状況推定部34は、制御対象となる効果器の位置の追従性を要する動作状況ほど、制御誤差に対する重み係数が大きくなるように設定してもよい。動作状況推定部34は、制御対象となる効果器の位置の柔軟性が許容される動作状況ほど、制御誤差に対する重み係数が小さくなるように設定してもよい。動作状況推定部34は、制御対象となる効果器の位置の連続性を要する動作状況ほど、ジャークの大きさに対する重み係数が大きくなるように設定してもよい。 Therefore, the operation situation estimation unit 34 may set the weighting coefficient for the control error to be larger for an operation situation requiring more tracking of the position of the effector to be controlled. The operation situation estimation unit 34 may set the weighting coefficient for the control error to be smaller for an operation situation allowing more flexibility in the position of the effector to be controlled. The operation situation estimation unit 34 may set the weighting coefficient for the magnitude of the jerk to be larger for an operation situation requiring more continuity in the position of the effector to be controlled.

動作状況推定部34は、推定した動作状況に対応する駆動制御パラメータを定める。駆動制御パラメータは、ロボット20を構成する各分節の駆動に対する制御特性に関するパラメータである。駆動制御パラメータは、駆動制御部40をなす制御器が、各関節を駆動するアクチュエータに対する操作量を定める際に用いられる。記憶部44には、動作状況ごとに駆動制御パラメータを示す駆動制御パラメータテーブルを予め記憶しておく。動作状況推定部34は、駆動制御パラメータテーブルを参照し、推定した動作状況に対応する駆動制御パラメータを特定し、特定した駆動制御パラメータを駆動制御部40に出力する。
例えば、制御器が、PID(Proportional-Integral-Differential)制御器である場合には、比例ゲイン(proportional gain)、積分ゲイン(integral gain)、および、微分ゲイン(differential gain)が駆動制御パラメータに含まれる。比例ゲインは、操作量の一成分である比例項を、その時点(現在)における目標値と出力値の偏差に乗じて算出するための利得である。積分ゲインは、操作量の他の成分である積分項を、その時点までの偏差の積分値に乗じて算出するための利得である。微分ゲインは、操作量のさらに他の成分である微分項を、その時点における偏差の微分値に乗じて算出するための利得である。動作状況推定部34は、例えば、追従性を要する動作状況ほど、他の種類の利得よりも微分ゲインが相対的に大きくなるように個々の利得を定めてもよい。動作状況推定部34は、例えば、柔軟性を要する動作状況ほど、他の種類よりも積分ゲインが相対的に大きくなるように個々の利得を定める。
The motion situation estimating unit 34 determines drive control parameters corresponding to the estimated motion situation. The drive control parameters are parameters related to the control characteristics for driving each segment constituting the robot 20. The drive control parameters are used when a controller constituting the drive control unit 40 determines the operation amount for the actuator that drives each joint. A drive control parameter table indicating drive control parameters for each motion situation is stored in advance in the storage unit 44. The motion situation estimating unit 34 refers to the drive control parameter table to identify drive control parameters corresponding to the estimated motion situation, and outputs the identified drive control parameters to the drive control unit 40.
For example, when the controller is a PID (Proportional-Integral-Differential) controller, the drive control parameters include a proportional gain, an integral gain, and a differential gain. The proportional gain is a gain for multiplying a proportional term, which is one component of the manipulated variable, by the deviation between the target value and the output value at that time (present). The integral gain is a gain for multiplying an integral term, which is another component of the manipulated variable, by the integral value of the deviation up to that time. The differential gain is a gain for multiplying a differential term, which is yet another component of the manipulated variable, by the differential value of the deviation at that time. The operation status estimation unit 34 may determine each gain such that the differential gain is relatively larger than other types of gains, for example, in an operation status requiring more tracking ability. The operation status estimation unit 34 determines each gain such that the integral gain is relatively larger than other types of gains, for example, in an operation status requiring more flexibility.

目標位置推定部36は、その時点において最新の環境情報と操作情報を読み出し、読み出した環境情報と操作情報に基づいて、ロボット20の効果器の目標位置を推定する。目標位置推定部36は、推定した目標位置を示す目標位置情報を制御指令生成部38に出力する。
目標位置推定部36は、目標位置を推定するため、例えば、機械学習モデルを用いる。動作状況推定部34における機械学習モデルと区別するため、動作状況推定部34における機械学習モデル、目標位置推定部36における機械学習モデルを、それぞれ第1機械学習モデル、第2機械学習モデルと呼ぶことがある。
The target position estimation unit 36 reads out the latest environmental information and operation information at that time, and estimates the target position of the effector of the robot 20 based on the read environmental information and operation information. The target position estimation unit 36 outputs target position information indicating the estimated target position to the control command generation unit 38.
The target position estimation unit 36 uses, for example, a machine learning model to estimate the target position. To distinguish it from the machine learning model in the operation situation estimation unit 34, the machine learning model in the operation situation estimation unit 34 and the machine learning model in the target position estimation unit 36 may be called a first machine learning model and a second machine learning model, respectively.

目標位置推定部36には、機械学習モデルに環境情報と操作情報が入力情報として入力されるとき、その入力情報に対応する目標位置に係る出力情報として得られるように学習されたパラメータセットを予め設定しておく。
目標位置として、物体の表面のうち経験的に効果器により作用される可能性が高い位置が設定される。目標位置は、物体の形状に依存しうる。直径よりも高さの方が大きい縦長の円柱の場合に対しては、底面の中心、表面の中心、および高さ方向の中間点の横断面のうち、最も効果器に近接する位置が目標位置となる可能性が高くなることがある。機械学習モデルからの出力情報は、目標位置の座標を示す情報であってもよいし、これには限られない。出力情報には、例えば、目標位置が設定される物体、その物体の種類、形状、ならびに、方向、および、その物体における目標位置が設置される位置、などを示す情報が含まれてもよい。目標位置推定部36は、その出力情報から目標位置の座標を定めることができる。
The target position estimation unit 36 is preset with a parameter set that has been learned so that when environmental information and operation information are input as input information to the machine learning model, output information related to the target position corresponding to the input information is obtained.
As the target position, a position on the surface of the object that is empirically likely to be acted on by the effector is set. The target position may depend on the shape of the object. In the case of a vertically elongated cylinder whose height is greater than its diameter, the position closest to the effector among the center of the bottom surface, the center of the surface, and the cross section of the midpoint in the height direction may be more likely to be the target position. The output information from the machine learning model may be, but is not limited to, information indicating the coordinates of the target position. The output information may include, for example, information indicating the object on which the target position is set, the type, shape, and direction of the object, and the position on the object where the target position is set. The target position estimation unit 36 can determine the coordinates of the target position from the output information.

また、目標位置推定部36は、記憶部44から、その時点において最新の操作者情報を読み出し、環境情報と操作情報の他、さらに操作者情報に基づいて、目標位置を推定してもよい。そのため、操作者情報により操作者が関心を有する事象が生じた方向も考慮した目標位置が推定される。但し、目標位置推定部36には、機械学習モデルに環境情報と操作情報の他、操作者情報が入力情報として入力されるとき、その入力情報に対応する目標位置の座標値が出力情報として得られるように学習されたパラメータセットを予め設定しておく。 The target position estimation unit 36 may also read the latest operator information at that time from the storage unit 44, and estimate the target position based on the operator information in addition to the environmental information and operation information. Therefore, the target position is estimated based on the operator information, taking into consideration the direction in which an event of interest to the operator occurred. However, a parameter set that has been learned so that when the operator information is input as input information to the machine learning model in addition to the environmental information and operation information, the coordinate value of the target position corresponding to the input information is obtained as output information is set in advance in the target position estimation unit 36.

但し、目標位置推定部36は、必ずしも第2機械学習モデルを用いて目標位置を推定しなくてもよい。例えば、動作状況推定部34から通知される動作状況が効果器の継続的な並進運動を伴わない動作状況である場合には、目標位置推定部36は第2機械学習モデルを用いて目標位置を推定しない。かかる動作状況には、例えば、静止、回転、物体の把持、解放、物体表面の摩擦などがある。目標位置推定部36は、第2機械学習モデルを用いて、目標位置を推定しない場合には、操作情報で示される操作者の手部の位置を目標位置として採用してもよい。
なお、目標位置推定部36は、第1機械学習モデル、第2機械学習モデルとして、例えば、ニューラルネットワーク、ランダムフォレスト、などの数理モデルを利用することができる。
However, the target position estimation unit 36 does not necessarily need to estimate the target position using the second machine learning model. For example, when the motion situation notified by the motion situation estimation unit 34 is a motion situation that does not involve continuous translational motion of the effector, the target position estimation unit 36 does not estimate the target position using the second machine learning model. Such motion situations include, for example, stillness, rotation, gripping and releasing an object, and friction on the surface of an object. When the target position estimation unit 36 does not estimate the target position using the second machine learning model, the target position estimation unit 36 may adopt the position of the operator's hand indicated by the operation information as the target position.
The target position estimation unit 36 can use mathematical models such as a neural network and a random forest as the first machine learning model and the second machine learning model.

制御指令生成部38は、目標位置推定部36から入力される目標位置情報が示す目標位置に向けて、現在位置から効果器を移動させるための動作指令を生成する。「目標位置に向けて」または「目標位置に向かう」とは、目標位置への移動を目的とするが、目標位置への到達が保証されないという意味を含む。制御指令生成部38は、記憶部44に記憶された駆動状態情報を読み出し、駆動状態情報が示す各関節の角度と各分節の寸法に基づいて、効果器の現在位置を算出することができる。制御指令生成部38は、駆動状態情報が示す各関節の角度と各分節の寸法に加え、各関節の角速度に基づいて、効果器の速度を算出することができる。制御指令生成部38は、動作状況推定部34から入力される特性パラメータと駆動状態情報(ロボット動作情報)に基づいて公知の逆運動学計算を行い、収束位置に効果器を移動させるように各関節の角度を定める。制御指令生成部38は、定めた各関節の角度(関節角度)を示す動作指令(関節指令)を駆動制御部40に出力する。 The control command generating unit 38 generates an operation command for moving the effector from the current position toward the target position indicated by the target position information input from the target position estimating unit 36. "Towards the target position" or "towards the target position" includes the meaning that the purpose is to move to the target position, but reaching the target position is not guaranteed. The control command generating unit 38 can read the drive state information stored in the memory unit 44 and calculate the current position of the effector based on the angle of each joint and the dimension of each segment indicated by the drive state information. The control command generating unit 38 can calculate the speed of the effector based on the angle of each joint and the dimension of each segment indicated by the drive state information, as well as the angular velocity of each joint. The control command generating unit 38 performs a known inverse kinematic calculation based on the characteristic parameters and drive state information (robot operation information) input from the operation status estimating unit 34, and determines the angle of each joint so as to move the effector to the convergence position. The control command generating unit 38 outputs an operation command (joint command) indicating the determined angle of each joint (joint angle) to the drive control unit 40.

特性パラメータに収束判定パラメータが含まれる場合、制御指令生成部38は、逆運動学計算において、目標位置から収束判定パラメータで示される領域内におけるいずれかの位置を収束位置と定め、効果器38の移動を停止してもよい。制御指令生成部38は、効果器の現在位置が収束したか否かを判定する際、例えば、効果器の現在位置が、目標位置から特性パラメータで示される所定の距離の閾値以内であるか否かを判定する。効果器の位置が収束したと判定するとき、制御指令生成部38は、動作停止を示す制御指令を生成し、駆動制御部40に出力する。駆動制御部40は、制御指令生成部38から動作停止を示す制御指令が入力されるとき、個々の関節に対する目標値の更新を停止し、固定する。収束位置においては、制御指令生成部38は効果器の速度をゼロとする拘束条件、または、駆動制御部40は各関節の角速度をゼロとする拘束条件を課してもよい。 When the characteristic parameters include a convergence judgment parameter, the control command generation unit 38 may determine, in the inverse kinematics calculation, any position within the region from the target position indicated by the convergence judgment parameter as the convergence position and stop the movement of the effector 38. When determining whether the current position of the effector has converged, the control command generation unit 38 may, for example, determine whether the current position of the effector is within a predetermined distance threshold indicated by the characteristic parameter from the target position. When determining that the position of the effector has converged, the control command generation unit 38 generates a control command indicating the stop of operation and outputs it to the drive control unit 40. When the drive control unit 40 receives a control command indicating the stop of operation from the control command generation unit 38, it stops updating the target values for each joint and fixes them. At the convergence position, the control command generation unit 38 may impose a constraint condition that the velocity of the effector is zero, or the drive control unit 40 may impose a constraint condition that the angular velocity of each joint is zero.

収束特性パラメータに目的関数の因子ごとの重み係数が含まれる場合には、制御指令生成部38は、逆運動学計算において、その重み係数と対応する因子を用いて合成される目的関数に基づいて最適化計算を行う。目的関数は、例えば、因子と、その重み係数との積の因子間の総和(加重和)で算出される。最適化計算において、制御指令生成部38は、目標位置または収束位置に効果器が到着するまでに生ずる負荷を示す目的関数が極力小さくなるように再帰的に各関節の角度を算出してもよい。 When the convergence characteristic parameters include weighting coefficients for each factor of the objective function, the control command generator 38 performs optimization calculations based on the objective function synthesized using the factors corresponding to the weighting coefficients in the inverse kinematics calculation. The objective function is calculated, for example, as the sum (weighted sum) of factors that are the products of the factors and their weighting coefficients. In the optimization calculations, the control command generator 38 may recursively calculate the angles of each joint so that the objective function, which indicates the load generated until the effector reaches the target position or convergence position, is minimized.

なお、目標位置推定部36から目標位置情報が取得されない場合には、制御指令生成部38は、操作情報で示される手部の位置を目標位置として採用してもよい。制御指令生成部38は、逆運動学計算を行って、採用した目標位置に向けて現在位置から効果器を移動させるための各関節の角度を目標値とする動作指令を生成する。 When target position information is not acquired from the target position estimation unit 36, the control command generation unit 38 may adopt the position of the hand indicated by the operation information as the target position. The control command generation unit 38 performs inverse kinematic calculations to generate a motion command with the angle of each joint as the target value for moving the effector from the current position toward the adopted target position.

駆動制御部40は、制御指令生成部38から入力される制御指令、動作状況推定部34から入力される駆動制御パラメータ、および、記憶部44から読み出した駆動状態情報(ロボット動作情報)に基づいて駆動指令を定める。より具体的には、駆動制御部40は、制御指令で示される関節ごとの角度を目標値として制御するための操作量を算出し、算出した操作量示す制御指令を定める制御器を含んで構成される。駆動制御部40は、定めた制御指令を駆動部24に出力する。制御器は、駆動状態情報が示す角度を出力値とし、その制御器に設定された制御方式に従って、目標値と出力値との偏差に駆動制御パラメータを作用して操作量を算出する。PID制御器は、偏差、偏差の時間積分値、偏差の時間微分値にそれぞれ比例ゲイン、積分ゲイン、微分ゲインを乗じて得られる乗算値の総和を操作量として算出する。 The drive control unit 40 determines the drive command based on the control command input from the control command generation unit 38, the drive control parameters input from the operation status estimation unit 34, and the drive state information (robot operation information) read from the storage unit 44. More specifically, the drive control unit 40 includes a controller that calculates the amount of operation for controlling the angle of each joint indicated by the control command as a target value, and determines the control command indicating the calculated amount of operation. The drive control unit 40 outputs the determined control command to the drive unit 24. The controller sets the angle indicated by the drive state information as an output value, and calculates the amount of operation by applying the drive control parameters to the deviation between the target value and the output value according to the control method set in the controller. The PID controller calculates the sum of the multiplication values obtained by multiplying the deviation, the time integral value of the deviation, and the time derivative value of the deviation by the proportional gain, the integral gain, and the derivative gain, respectively, as the amount of operation.

通信部42は、ロボット20の各構成部と、他の構成部(即ち、表示装置50、操作装置70、および、環境情報取得部80)との間で無線または有線で各種の情報を送受信する。通信部42は、例えば、入出力インタフェース、通信インタフェースなどを含んで構成される。
記憶部44は、制御装置30における各種の処理に用いられるデータ、制御装置30が取得した各種のデータなどを一時的または恒常的に記憶する。記憶部44は、例えば、RAM(Random Access Memory)、ROM(Read Only memory)などの記憶媒体を含んで構成される。
The communication unit 42 wirelessly or wiredly transmits and receives various information between each component of the robot 20 and other components (i.e., the display device 50, the operation device 70, and the environmental information acquisition unit 80). The communication unit 42 includes, for example, an input/output interface, a communication interface, and the like.
The storage unit 44 temporarily or permanently stores data used for various processes in the control device 30, various data acquired by the control device 30, etc. The storage unit 44 includes a storage medium such as a RAM (Random Access Memory) or a ROM (Read Only Memory).

表示装置50は、表示部52、視線検出部54、動作検出部56、制御部58、および、通信部60を含んで構成される。表示装置50は、使用者である操作者の頭部に装着可能な支持部材を備え、ヘッドマウンテッドディスプレイ(HMD:Head Mounted Display)として構成されてもよい。 The display device 50 includes a display unit 52, a gaze detection unit 54, a motion detection unit 56, a control unit 58, and a communication unit 60. The display device 50 may be equipped with a support member that can be attached to the head of the user (operator), and may be configured as a head mounted display (HMD).

表示部52は、環境情報取得部80から制御装置30を経由し、通信部60を用いて画像データを受信する。表示部52は、受信した画像データに基づき、ロボット20の動作環境を示す画像を表示する。表示部52は、操作者の頭部に装着されるとき、その画面が両眼の正面に対面する位置に配置されてもよい。
視線検出部54は、操作者の一方また両方の眼の視線方向を検出する視線センサを含んで構成される。視線検出部54は、各時刻において検出した視線方向を示す視線情報を制御装置30に通信部60を用いて送信する。視線検出部54は、操作者の頭部に装着されるとき、少なくとも一方の眼に露出される位置に配置されてもよい。
動作検出部56は、操作者の頭部の動作を検出し、検出した動作を示す第1操作者動作情報を制御装置30に通信部60を用いて送信する。動作検出部56は、例えば、操作者の動作を検出するための加速度センサを含んで構成される。
The display unit 52 receives image data from the environmental information acquisition unit 80 via the control device 30 using the communication unit 60. Based on the received image data, the display unit 52 displays an image showing the operating environment of the robot 20. When the display unit 52 is worn on the head of the operator, the display unit 52 may be disposed in a position where the screen faces directly in front of both eyes.
The gaze detection unit 54 includes a gaze sensor that detects the gaze direction of one or both eyes of the operator. The gaze detection unit 54 transmits gaze information indicating the gaze direction detected at each time to the control device 30 using the communication unit 60. The gaze detection unit 54 may be disposed at a position exposed to at least one eye when worn on the operator's head.
The motion detection unit 56 detects a motion of the head of the operator, and transmits first operator motion information indicating the detected motion to the control device 30 using the communication unit 60. The motion detection unit 56 is configured to include, for example, an acceleration sensor for detecting the motion of the operator.

制御部58は、表示装置50の機能を制御する。制御部58は、CPU(Central Processing Unit)などのプロセッサを含んで構成される。
通信部60は、制御装置30と各種の情報を送受信する。通信部60は、通信インタフェースを含んで構成される。
The control unit 58 controls the functions of the display device 50. The control unit 58 includes a processor such as a CPU (Central Processing Unit).
The communication unit 60 transmits and receives various information to and from the control device 30. The communication unit 60 includes a communication interface.

操作装置70は、動作検出部72、制御部74、および、通信部76を備える。操作装置70は、使用者である操作者の手部に装着可能な支持部材を備え、データグローブ(data glove)として構成されてもよい。
動作検出部72は、操作者の手部の動作を検出し、検出した動作を示す第2操作者動作情報を制御装置30に通信部76を用いて送信する。動作検出部72は、例えば、操作者の手部の動作を検出するための加速度センサを含んで構成される。操作装置70には、さらに手首トラッカが接続されてもよい。手首トラッカは、操作者の手首に装着可能な支持部材と、手首の動作を検出するための加速度センサを含んで構成される。手首の動作を検出する加速度センサは、動作検出部72の一部を構成する。第2操作者動作情報は、手首の動作を示す情報を含めて制御装置30に送信される。
The operation device 70 includes a motion detection unit 72, a control unit 74, and a communication unit 76. The operation device 70 includes a support member that can be worn on the hand of an operator who is a user, and may be configured as a data glove.
The motion detection unit 72 detects the motion of the operator's hand, and transmits second operator motion information indicating the detected motion to the control device 30 using the communication unit 76. The motion detection unit 72 is configured to include, for example, an acceleration sensor for detecting the motion of the operator's hand. A wrist tracker may be further connected to the operation device 70. The wrist tracker is configured to include a support member that can be attached to the operator's wrist, and an acceleration sensor for detecting the wrist motion. The acceleration sensor that detects the wrist motion constitutes a part of the motion detection unit 72. The second operator motion information is transmitted to the control device 30 including information indicating the wrist motion.

制御部74は、操作装置70の機能を制御する。制御部74は、CPUなどのプロセッサを含んで構成される。
通信部76は、制御装置30と各種の情報を送受信する。通信部76は、通信インタフェースを含んで構成される。
なお、動作検出部72は、表示装置50の通信部60と接続可能とし。通信部60を経由して第2操作者動作情報を制御装置に送信してもよい。その場合には、制御部74と通信部76が省略されてもよい。
The control unit 74 controls the functions of the operation device 70. The control unit 74 includes a processor such as a CPU.
The communication unit 76 transmits and receives various information to and from the control device 30. The communication unit 76 includes a communication interface.
The motion detection unit 72 may be connectable to the communication unit 60 of the display device 50. The second operator motion information may be transmitted to the control device via the communication unit 60. In that case, the control unit 74 and the communication unit 76 may be omitted.

環境情報取得部80は、撮影部82、測距部84、および、通信部86を備える。環境情報取得部80は、ロボット20の筐体に設置されてもよいし、ロボット20と別個の位置に設置されてもよい。
撮影部82は、ロボット20から所定範囲内の動作環境における画像を撮影する。動作環境には、ロボット20の効果器が到達可能とする範囲が含まれる。撮影される画像にはロボット20の像の全体が必ずしも含まれるとは限らない。撮影部82は、所定時間ごとに画像を撮影するディジタルビデオカメラである。撮影部82は、撮影した画像を示す画像データを制御装置30に通信部86を経由して送信する。
The environmental information acquisition unit 80 includes an image capture unit 82, a distance measurement unit 84, and a communication unit 86. The environmental information acquisition unit 80 may be installed in the housing of the robot 20, or may be installed in a location separate from the robot 20.
The photographing unit 82 photographs an image of the operating environment within a predetermined range from the robot 20. The operating environment includes the range that the effector of the robot 20 can reach. The photographed image does not necessarily include the entire image of the robot 20. The photographing unit 82 is a digital video camera that photographs images at predetermined time intervals. The photographing unit 82 transmits image data showing the photographed image to the control device 30 via the communication unit 86.

測距部84は、ロボット20から所定範囲内の動作環境における物体の表面までの距離を測定する。測距部84は、例えば、送波部、受波部、距離検出部を備える。送波部は、赤外線などの波動を送出する。送波部は、例えば、発光ダイオードを含んで構成される。受波部は、物体の表面において反射により生じた反射波を受波する。受波部は、例えば、フォトダイオードを含んで構成される。反射波は、送波部から送出された波動は、物体の表面に入射波として入射したことに応じて生ずる。距離検出部は、送出波と反射波との位相差を検出し、検出した位相差に基づいて物体の表面までの距離を定めることができる。距離検出部は、画像の各画素に対応する方向ごとに定めた距離を示す距離データを制御装置30に通信部86を経由して送信する。なお、距離の計測に用いられる波動は、赤外線に限られず、ミリ波、超音波、などであってもよい。
通信部86は、制御装置30と各種の情報を送受信する。通信部86は、通信インタフェースを含んで構成される。
なお、環境情報取得部80がロボット20の筐体に設置され、ロボット20の他の機能部と各種の情報を送受信できる場合には、通信部86が省略されてもよい。
The distance measuring unit 84 measures the distance from the robot 20 to the surface of an object in the operating environment within a predetermined range. The distance measuring unit 84 includes, for example, a wave transmitting unit, a wave receiving unit, and a distance detecting unit. The wave transmitting unit transmits waves such as infrared rays. The wave transmitting unit includes, for example, a light emitting diode. The wave receiving unit receives reflected waves generated by reflection on the surface of the object. The wave receiving unit includes, for example, a photodiode. The reflected waves are generated in response to the wave transmitted from the wave transmitting unit being incident on the surface of the object as an incident wave. The distance detecting unit detects the phase difference between the transmitted wave and the reflected wave, and can determine the distance to the surface of the object based on the detected phase difference. The distance detecting unit transmits distance data indicating the distance determined for each direction corresponding to each pixel of the image to the control device 30 via the communication unit 86. Note that the wave used to measure the distance is not limited to infrared rays, and may be millimeter waves, ultrasonic waves, or the like.
The communication unit 86 transmits and receives various information to and from the control device 30. The communication unit 86 includes a communication interface.
In addition, if the environmental information acquisition unit 80 is installed in the housing of the robot 20 and can send and receive various information with other functional units of the robot 20, the communication unit 86 may be omitted.

(ハードウェア構成)
次に、本実施形態に係る制御装置30のハードウェア構成例について説明する。
図3は、本実施形態に係る制御装置30のハードウェア構成例を示す概略ブロック図である。制御装置30は、プロセッサ102、ROM104、RAM106、補助記憶部108、および、入出力部110を含んで構成されるコンピュータとして機能する。プロセッサ102、ROM104、RAM106、補助記憶部108および入出力部110は、相互に各種のデータを入出力可能に接続される。
(Hardware configuration)
Next, an example of the hardware configuration of the control device 30 according to the present embodiment will be described.
3 is a schematic block diagram showing an example of a hardware configuration of the control device 30 according to the present embodiment. The control device 30 functions as a computer including a processor 102, a ROM 104, a RAM 106, an auxiliary storage unit 108, and an input/output unit 110. The processor 102, the ROM 104, the RAM 106, the auxiliary storage unit 108, and the input/output unit 110 are connected to each other so as to be able to input and output various data.

プロセッサ102は、例えば、ROM104に記憶されたプログラムや各種のデータを読み出し、当該プログラムを実行して、制御装置30の各部の機能を実現するための処理や、その機能を制御するための処理を実行する。プロセッサ102は、例えば、CPUである。
なお、本願では、プログラムに記述された各種の命令(コマンド)で指示された処理を実行することを、「プログラムの実行」または「プログラムを実行する」などと呼ぶことがある。
The processor 102, for example, reads out programs and various data stored in the ROM 104, and executes the programs to execute processes for realizing the functions of each part of the control device 30 and processes for controlling the functions. The processor 102 is, for example, a CPU.
In this application, the execution of processes instructed by various commands written in a program may be referred to as "executing a program" or "running a program."

ROM104は、例えば、プロセッサ102が実行するためのプログラムを記憶する。
RAM106は、例えば、プロセッサ102で用いられる各種データ、プログラムを一時的に保存する作業領域として機能する。
補助記憶部108は、各種のデータを永続的に記憶する。補助記憶部108には、制御装置30が取得したデータを記憶する。補助記憶部108は、例えば、HDD(Hard Disk Drive)、SSD(Solid State Drive)などの記憶媒体を備える。
The ROM 104 stores, for example, a program to be executed by the processor 102 .
The RAM 106 functions as a working area for temporarily storing various data and programs used by the processor 102, for example.
The auxiliary storage unit 108 permanently stores various types of data. The auxiliary storage unit 108 stores data acquired by the control device 30. The auxiliary storage unit 108 includes a storage medium such as a hard disk drive (HDD) or a solid state drive (SSD).

入出力部110は、例えば、他の機器と無線または有線で各種のデータ入出力可能とする。入出力部110は、他の機器とネットワークを経由して接続されてもよい。入出力部は、例えば、入出力インタフェースと通信インタフェースの一方または両方を備える。
なお、表示装置50、操作装置70、および環境情報取得部80も、図3に例示されるハードウェア構成と同様のハードウェア構成を備え、各装置としての機能を実現するコンピュータとして構成されてもよい。
The input/output unit 110 is capable of wirelessly or wiredly inputting and outputting various types of data to and from other devices. The input/output unit 110 may be connected to other devices via a network. The input/output unit includes, for example, one or both of an input/output interface and a communication interface.
The display device 50, the operation device 70, and the environmental information acquisition unit 80 may also have a hardware configuration similar to the hardware configuration illustrated in FIG. 3, and may be configured as a computer that realizes the functions of each device.

(動作制御処理)
次に、本実施形態に係る動作制御処理の一例について説明する。図4は、本実施形態に係る動作制御処理の一例を示すフローチャートである。
(ステップS102)動作状況推定部34は、その時点において最新の環境情報、操作情報および視線情報を取得し、これらに基づいてロボット20の動作状況を推定する。
(ステップS104)動作状況推定部34は、特性パラメータテーブルおよび駆動制御パラメータテーブルを参照し、推定した動作状況に対応する特性パラメータおよび駆動制御パラメータをそれぞれ定める。
(Operation Control Processing)
Next, an example of the operation control process according to the present embodiment will be described with reference to a flowchart shown in FIG.
(Step S102) The motion status estimation unit 34 acquires the latest environmental information, operation information, and gaze information at that time, and estimates the motion status of the robot 20 based on these.
(Step S104) The operation status estimation unit 34 refers to the characteristic parameter table and the drive control parameter table, and determines the characteristic parameters and the drive control parameters corresponding to the estimated operation status, respectively.

(ステップS106)目標位置推定部36は、その時点において最新の環境情報、操作情報および視線情報を取得し、これらに基づいてロボット20の効果器の目標位置を推定する。
(ステップS108)制御指令生成部38は、定めた特性パラメータに基づいて現在位置から目標位置に向けて効果器を移動させるための制御指令を生成する。
(ステップS110)駆動制御部40は、駆動制御パラメータを用い、各関節の角度を制御指令に示される目標値に制御する駆動指令を生成する。
(Step S106) The target position estimation unit 36 acquires the latest environmental information, operation information, and gaze information at that time point, and estimates the target position of the effector of the robot 20 based on these.
(Step S108) The control command generator 38 generates a control command for moving the effector from the current position to the target position based on the determined characteristic parameters.
(Step S110) The drive control unit 40 uses the drive control parameters to generate drive commands for controlling the angles of the joints to target values indicated in the control commands.

(ステップS112)制御指令生成部38は、効果器の位置が収束したか否かを判定する。制御指令生成部38は、例えば、効果器の現在位置が、目標位置から特性パラメータで示される所定の距離の閾値以内であるか否かにより、収束したか否かを判定することができる。効果器の位置が収束したと判定するとき(ステップS112 YES)、動作の停止を示す制御指令を生成し、駆動制御部40に出力する。これにより、ロボット20の動作を停止させる。その後、図4の処理を終了する。効果器の位置が収束していないと判定するとき(ステップS112 NO)、ステップS102の処理に戻る。 (Step S112) The control command generator 38 determines whether the position of the effector has converged. The control command generator 38 can determine whether the position of the effector has converged, for example, by whether the current position of the effector is within a predetermined distance threshold indicated by the characteristic parameter from the target position. When it is determined that the position of the effector has converged (Step S112 YES), a control command indicating the stop of operation is generated and output to the drive control unit 40. This stops the operation of the robot 20. Then, the processing of FIG. 4 is terminated. When it is determined that the position of the effector has not converged (Step S112 NO), the processing returns to Step S102.

<第2の実施形態>
次に、本発明の第2の実施形態について説明する。以下の説明では、第1の実施形態との差異を主とし、第1の実施形態と共通の機能、構成については、特に断らない限り第1の実施形態に係る説明を援用する。本実施形態に係るロボットシステムの機能構成について、図5の他、図6も参照しながら説明する。図5は、本実施形態に係るロボットシステムS1の構成例を示す概略ブロック図である。図6は、本実施形態に係る制御装置30の一部の機能構成例を示すブロック図である。
Second Embodiment
Next, a second embodiment of the present invention will be described. In the following description, differences from the first embodiment will be mainly described, and functions and configurations common to the first embodiment will be referred to in the description of the first embodiment unless otherwise specified. The functional configuration of the robot system according to this embodiment will be described with reference to FIG. 5 as well as FIG. 6. FIG. 5 is a schematic block diagram showing an example of the configuration of the robot system S1 according to this embodiment. FIG. 6 is a block diagram showing an example of the functional configuration of a part of the control device 30 according to this embodiment.

本実施形態に係るロボットシステムS1は、ロボット20の位置を示す位置情報と、操作状況を示す操作情報に基づき、現時刻から所定の予測時間後の予測時刻までのロボット20の効果器の予測軌道を定める。ロボットシステムS1は、定めた予測軌道に基づいて制御指令を生成する。本実施形態に係るロボットシステムS1は、制御装置30において軌道予測部46をさらに備える。 The robot system S1 according to this embodiment determines a predicted trajectory of the effector of the robot 20 from the current time to a predicted time a predetermined predicted time later, based on position information indicating the position of the robot 20 and operation information indicating the operation status. The robot system S1 generates a control command based on the determined predicted trajectory. The robot system S1 according to this embodiment further includes a trajectory prediction unit 46 in the control device 30.

軌道予測部46は、少なくともその時点におけるロボット20の動作を示すロボット動作情報(駆動状態情報)と操作情報を用いて現在から所定の予測時間後である予測時刻までのロボット20の効果器の動作を示す予測軌道を予測する。操作情報は、効果器に対する加速もしくは減速、または方向変更との組み合わせの要因となる。軌道予測部46は、例えば、現在までの所定期間内の駆動状態情報と操作情報に対して線形予測を行い、予測時刻までの効果器の位置と速度を算出する。軌道予測部46は、予測時刻までの各時刻における効果器の位置の時系列は予測軌道を構成する。予測時間とは、現在から予測時刻までの経過時間を示し、予測のために費やされる時間ではない。 The trajectory prediction unit 46 predicts a predicted trajectory indicating the operation of the effector of the robot 20 from the present to a predicted time after a predetermined predicted time using robot operation information (driving state information) indicating at least the operation of the robot 20 at that time and operation information. The operation information is a factor in the combination with acceleration or deceleration of the effector, or a change in direction. The trajectory prediction unit 46 performs linear prediction on the driving state information and operation information within a predetermined period up to the present, for example, and calculates the position and speed of the effector up to the predicted time. The trajectory prediction unit 46 calculates a predicted trajectory based on the time series of the position of the effector at each time up to the predicted time. The predicted time indicates the elapsed time from the present to the predicted time, and is not the time spent for the prediction.

軌道予測部46は、例えば、カルマンフィルタを用いて効果器の位置を逐次に予測してもよい。カルマンフィルタは、(a)予測ステップおよび(b)更新ステップを有し、それらのステップを順次繰り返す手法である。(a)予測ステップでは、軌道予測部46は、前時刻までの効果器の状態量の時間発展(加重和)と外力とを加算して、現在の効果器の状態量の推定値を算出する。但し、状態量は、位置と速度を要素として有するベクトルである。外力は、速度と加速度を要素として有するベクトルである。速度は、駆動状態情報に示される各関節の角度ならびに角速度と、分節の寸法に基づいて算出される。加速度は、駆動状態情報に示される各関節の角度、各速度ならびに角加速度と、分節の寸法に基づいて算出される。また、軌道予測部46は、前時刻までの状態量の予測誤差の時間発展と誤差の時間発展とを加算して、現在の予測誤差を算出する。(b)更新ステップでは、軌道予測部46は、効果器の現在位置(観測値)から現在における効果器の位置の推定値の差を観測残差して算出する。軌道予測部46は、現在の予測誤差から現在の観測誤差の共分散を算出する。軌道予測部46は、現在の予測誤差と観測残差の共分散からカルマンゲインを算出する。軌道予測部46は、現在の効果器の状態量の推定値と、観測残差とカルマンゲインの積を加算して得られる値に現在の効果器の状態量を更新する。軌道予測部46は、1からカルマンゲインを乗じた観測空間への写像の残差との予測誤差を乗じて得られる値に現在の予測誤差を更新する。 The trajectory prediction unit 46 may, for example, use a Kalman filter to sequentially predict the position of the effector. The Kalman filter has (a) a prediction step and (b) an update step, and is a method of sequentially repeating these steps. In the (a) prediction step, the trajectory prediction unit 46 adds the time evolution (weighted sum) of the state quantity of the effector up to the previous time and the external force to calculate an estimate of the current state quantity of the effector. However, the state quantity is a vector having position and velocity as elements. The external force is a vector having velocity and acceleration as elements. The velocity is calculated based on the angle and angular velocity of each joint indicated in the drive state information and the dimensions of the segment. The acceleration is calculated based on the angle, each velocity, and angular acceleration of each joint indicated in the drive state information and the dimensions of the segment. In addition, the trajectory prediction unit 46 adds the time evolution of the prediction error of the state quantity up to the previous time and the time evolution of the error to calculate the current prediction error. (b) In the update step, the trajectory prediction unit 46 calculates the difference between the current position (observation value) of the effector and the estimated value of the current position of the effector as the observation residual. The trajectory prediction unit 46 calculates the covariance of the current observation error from the current prediction error. The trajectory prediction unit 46 calculates the Kalman gain from the covariance of the current prediction error and the observation residual. The trajectory prediction unit 46 updates the current state quantity of the effector to a value obtained by adding the estimated value of the current state quantity of the effector to the product of the observation residual and the Kalman gain. The trajectory prediction unit 46 updates the current prediction error to a value obtained by multiplying the prediction error of the residual of the mapping from 1 to the observation space multiplied by the Kalman gain.

予測時間は、所定の値(例えば、0.2s-2s)に固定されていてもよいし、可変であってもよい。予測時間として、操作者の動作がロボット20の動作として表れるまでの遅延時間(「追従遅れ」とも呼ばれる)と等しいか、それ以下となる値を設定しておく。予測時間が大きいほど効果器の位置の予測誤差が大きくなり、却って操作性を損なうおそれがある。
予測時間を可変にする場合には、記憶部44に予め動作状況ごとに予測時間を示す予測時間テーブルを記憶させておいてもよい。特に予測時間が遅延時間を超えると操作者の動作よりもロボット20の動作の方が先行するため、予測誤差が著しくなるおそれが生じうる。そのため、遅延時間を予測時間の上限として設定しておいてもよい。動作状況推定部34は、上記の手法を用いてロボット20の動作状況を推定し、予測時間テーブルを参照して、推定した動作状況に対応する予測時間を特定することができる。
The predicted time may be fixed to a predetermined value (for example, 0.2 s to 2 s) or may be variable. The predicted time is set to a value equal to or less than the delay time until the operator's movement is expressed as the movement of the robot 20 (also called the "following delay"). The longer the predicted time, the larger the prediction error of the effector position, which may impair operability.
When the predicted time is variable, a predicted time table showing the predicted time for each operation situation may be stored in advance in the storage unit 44. In particular, if the predicted time exceeds the delay time, the movement of the robot 20 precedes the movement of the operator, which may cause a significant prediction error. Therefore, the delay time may be set as the upper limit of the predicted time. The operation situation estimation unit 34 can estimate the operation situation of the robot 20 using the above method and specify the predicted time corresponding to the estimated operation situation by referring to the predicted time table.

動作状況推定部34は、制御対象となる効果器の位置の正確性が要求される動作状況ほど、より小さい予測時間を設定してもよい。かかる動作状況は、効果器の予測誤差が許容されない代わりに遅延が許容される動作状況である。例えば、操作対象物が微細な物体である場合、操作者の操作が繊細である場合、などが該当する。動作状況推定部34は、効果器の位置の即応性が要求される動作状況ほど、より大きい予測時間を設定してもよい。かかる動作状況として、予測誤差が許容される代わりに操作に対する効果器の応答性が期待される動作状況に適する。例えば、効果器を目標とする物体に向けて大局的に動作させる場合、効果器を他の物体が所在していない空間に退避させる場合、などが該当する。 The operation situation estimation unit 34 may set a smaller prediction time for an operation situation requiring accuracy of the position of the effector to be controlled. Such an operation situation is an operation situation in which prediction error of the effector is not tolerated but delay is tolerated. For example, this applies when the object to be operated is a minute object or when the operator operates delicately. The operation situation estimation unit 34 may set a larger prediction time for an operation situation requiring quick response of the effector's position. This operation situation is suitable for an operation situation in which prediction error is tolerated but responsiveness of the effector to operation is expected. For example, this applies when the effector is operated globally toward the target object, when the effector is retreated to a space where no other objects are present, etc.

動作状況推定部34は、特定した予測時間を示す予測時間情報を軌道予測部46に出力する。軌道予測部46は、動作状況推定部34から入力される予測時間情報に示される予測時間を用いて定まる予測時刻までの効果器の位置と速度を算出する。軌道予測部46は、少なくとも現在から予測時刻までの効果器の位置と速度を示す予測軌道を示す予測軌道情報を制御指令生成部38に出力する。 The operation status estimation unit 34 outputs predicted time information indicating the identified predicted time to the trajectory prediction unit 46. The trajectory prediction unit 46 calculates the position and speed of the effector until the predicted time determined using the predicted time indicated in the predicted time information input from the operation status estimation unit 34. The trajectory prediction unit 46 outputs predicted trajectory information indicating a predicted trajectory indicating at least the position and speed of the effector from the present until the predicted time to the control command generation unit 38.

制御指令生成部38は、目標位置に向けて現在位置から効果器を移動させるための動作指令を生成する際、駆動状態情報に代え、軌道予測部46から入力される予測軌道と、動作状況推定部34から入力される特性パラメータに基づいて公知の逆運動学計算を行い、収束位置に効果器を移動させるように各関節の角度を定める。これに対し、現在までの駆動状態情報は、現在までの各時刻の効果器の位置を示す実軌道とみなすこともできる。補実施形態では、実軌道に代えて予測軌道を用いることで効果器の動作の遅れを補償することができる。 When generating an operation command to move the effector from the current position toward the target position, the control command generation unit 38 performs known inverse kinematic calculations based on the predicted trajectory input from the trajectory prediction unit 46 and the characteristic parameters input from the operation status estimation unit 34 instead of the drive state information, and determines the angles of each joint so as to move the effector to the convergence position. In contrast, the drive state information up to the present can also be considered as an actual trajectory that indicates the position of the effector at each time up to the present. In a supplementary embodiment, the delay in the operation of the effector can be compensated for by using the predicted trajectory instead of the actual trajectory.

また、本実施形態に係る駆動制御部40に備わる制御器は、フィードバック項で算出される第1成分とフィードフォワード項で算出される第2成分を合成して操作量を算出してもよい。フィードバック項とは、目標値と出力値との偏差に基づいて操作量の一部の成分である第1成分を算出する項である。目標値として、目標位置に対応する各関節の角度が用いられる。出力値として、駆動状態情報に示される各関節の角度が用いられる。この出力値は、その時点における効果器の現在位置に対応する。上記のPI制御、PID制御は、第2成分を含めずに第1成分を操作量として定める手法に相当する。つまり、上記の比例項、積分項、および、微分項が、それぞれ第1成分に含まれる。フィードフォワード項とは、出力値を考慮せず、目標値に基づいて操作量の他の成分である第2成分を算出する項である。第2成分は、目標値に比例する第2比例項を含む。第2比例項は、目標値に第2比例ゲインを乗じて得られる。 The controller provided in the drive control unit 40 according to this embodiment may calculate the manipulated variable by combining the first component calculated by the feedback term and the second component calculated by the feedforward term. The feedback term is a term that calculates the first component, which is a component of the manipulated variable, based on the deviation between the target value and the output value. The angle of each joint corresponding to the target position is used as the target value. The angle of each joint indicated in the drive state information is used as the output value. This output value corresponds to the current position of the effector at that time. The above PI control and PID control correspond to a method of determining the first component as the manipulated variable without including the second component. In other words, the above proportional term, integral term, and differential term are each included in the first component. The feedforward term is a term that calculates the second component, which is the other component of the manipulated variable, based on the target value without considering the output value. The second component includes a second proportional term that is proportional to the target value. The second proportional term is obtained by multiplying the target value by the second proportional gain.

そこで、駆動制御パラメータテーブルには、個々の動作状況に対応する駆動制御パラメータとして、第1成分に係る第1利得(上記の比例ゲイン、積分ゲイン、微分ゲインのいずれか、または、これらの組み合わせが該当)の他、第2成分に係る第2利得を含めて設定しておく。第2利得には、第2比例ゲインが含まれる。第2成分には、さらに目標値の時間積分値に比例する第2積分項と目標値の時間微分値に比例する第2微分項の一方または両方を含んでもよい。第2積分項は、目標値に第2積分ゲインを乗じて得られる。第2微分項は、目標値に第2微分ゲインを乗じて得られる。第2利得には、さらに第2積分ゲインと第2微分ゲインの一方または両方が含まれる。そして、動作状況に応じて、第1利得と第2利得の比が異なっていてもよい。例えば、制御対象となる効果器の位置の正確性が要求される動作状況ほど、第2因子に対する第1因子の比を相対的に大きくするように、第1利得と第2利得を定めておけばよい。かかる動作状況においては、フィードバック項が相対的に重視される。また、効果器の位置の即応性が要求される動作状況ほど、第1因子に対する第2因子の比を相対的に大きくするように、第1利得と第2利得を定めておけばよい。かかる動作状況においては、フィードフォワード項が相対的に重視される。 Therefore, in the drive control parameter table, in addition to the first gain (either the proportional gain, integral gain, or differential gain, or a combination of these) related to the first component, the second gain related to the second component is set as a drive control parameter corresponding to each operating situation. The second gain includes the second proportional gain. The second component may further include one or both of a second integral term proportional to the time integral value of the target value and a second differential term proportional to the time differential value of the target value. The second integral term is obtained by multiplying the target value by the second integral gain. The second differential term is obtained by multiplying the target value by the second differential gain. The second gain further includes one or both of the second integral gain and the second differential gain. And the ratio of the first gain to the second gain may differ depending on the operating situation. For example, the first gain and the second gain may be determined so that the ratio of the first factor to the second factor is relatively large as the operating situation requires greater accuracy in the position of the effector to be controlled. In such operating conditions, the feedback term is relatively emphasized. Also, the first gain and the second gain can be determined so that the ratio of the second factor to the first factor is relatively large in operating conditions that require more immediate response in the position of the effector. In such operating conditions, the feedforward term is relatively emphasized.

動作状況推定部34は、駆動制御パラメータテーブルを参照して、推定した動作状況に対応する第1利得と第2利得を含む駆動制御パラメータを特定し、特定した駆動制御パラメータを駆動制御部40に出力する。駆動制御部40は、動作状況推定部34から入力される駆動制御パラメータに示す第1利得と第2利得に基づいて、それぞれ関節ごとに第1因子と第2因子を算出し、算出した第1因子と第2因子を合成して操作量を定める。駆動制御部40は、関節ごとに定めた操作量を示す駆動指令を駆動部24に出力する。
なお、本実施形態に係る制御器は、第1成分を含めずに、第2成分を操作量として定めてもよい。その場合には、第1利得の設定は省略されてもよい。
The motion status estimation unit 34 refers to the drive control parameter table to identify drive control parameters including a first gain and a second gain corresponding to the estimated motion status, and outputs the identified drive control parameters to the drive control unit 40. The drive control unit 40 calculates a first factor and a second factor for each joint based on the first gain and the second gain indicated in the drive control parameters input from the motion status estimation unit 34, and determines the amount of operation by combining the calculated first factor and second factor. The drive control unit 40 outputs a drive command indicating the amount of operation determined for each joint to the drive unit 24.
In addition, the controller according to the present embodiment may determine the second component as the manipulated variable without including the first component. In that case, the setting of the first gain may be omitted.

(動作制御処理)
次に、本実施形態に係る動作制御処理の一例について説明する。図7は、本実施形態に係る動作制御処理の一例を示すフローチャートである。図7に示す処理は、図4に示す処理に対して、さらにステップS122、S124、および、S126の処理を有する。
目標位置推定部36がステップS106の処理を終了した後、ステップS122の処理に進む。
(ステップS122)動作状況推定部34は、予測時間テーブルを参照して、自部が定めた動作状況に対応する予測時間を定める。
(ステップS124)軌道予測部46は、ロボット動作情報と操作情報を用いて、現在から定めた予測時間後である予測時刻までの効果器の予測軌道を推定する。
(ステップS126)制御指令生成部38は、予測軌道と特性パラメータを用いて、目標位置に向けて効果器を移動させる各関節の角度を目標値として示す制御指令を生成する。その後、ステップS110の処理に進む。
(Operation Control Processing)
Next, an example of the operation control process according to the present embodiment will be described. Fig. 7 is a flowchart showing an example of the operation control process according to the present embodiment. The process shown in Fig. 7 further includes steps S122, S124, and S126 in addition to the process shown in Fig. 4.
After the target position estimation unit 36 finishes the process of step S106, the process proceeds to step S122.
(Step S122) The operation status estimation unit 34 refers to the predicted time table and determines a predicted time corresponding to the operation status determined by the operation status estimation unit 34 itself.
(Step S124) The trajectory prediction unit 46 uses the robot movement information and the operation information to estimate a predicted trajectory of the effector from the present to a predicted time that is a set predicted time period.
(Step S126) The control command generator 38 generates a control command indicating the angle of each joint that moves the effector toward the target position as a target value, using the predicted trajectory and the characteristic parameters. Then, the process proceeds to step S110.

なお、ステップS122において、動作状況推定部34は、駆動制御パラメータテーブルを参照して、動作状況に対応する駆動制御パラメータを特定してもよい。
ステップS110において、駆動制御部40は、特定された駆動制御パラメータを用いて、目標値と、目標値と出力値の偏差に基づいて、それぞれ第1因子と、第2因子を算出し、算出した第1因子と第2因子を合成して操作量を定めてもよい。駆動制御部40は、定めた操作量を示す駆動指令を生成し、生成した駆動指令を駆動部24に出力する。
In step S122, the operation status estimating unit 34 may refer to the drive control parameter table to identify the drive control parameters corresponding to the operation status.
In step S110, the drive control unit 40 may use the identified drive control parameters to calculate a first factor and a second factor based on the target value and the deviation between the target value and the output value, and determine the manipulated variable by combining the calculated first factor and second factor. The drive control unit 40 generates a drive command indicating the determined manipulated variable, and outputs the generated drive command to the drive unit 24.

以上に説明したように、上記の実施形態に係る制御装置30は、少なくともロボット20の動作を示す動作情報と、操作状況を示す操作情報に基づき、現時刻から所定の予測時間後の予測時刻までのロボット20の効果器の予測軌道を定める軌道予測部46と、予測軌道に基づいて制御指令を生成する制御指令生成部38と、を備える。
この構成によれば、現時刻より後の予測時刻までの効果器の予測軌道に基づいて生成された制御指令に従ってロボット20の効果器が駆動されるため、操作がロボット20の動作に反映されるまでの遅延(追従遅れ)が低減または解消される。操作者にとり操作感が向上するため、作業効率の向上と負担軽減を両立することができる。
As described above, the control device 30 according to the above embodiment includes a trajectory prediction unit 46 that determines a predicted trajectory of the effector of the robot 20 from the current time to a predicted time a predetermined predicted time later, based on at least operation information indicating the operation of the robot 20 and operation information indicating an operation status, and a control command generation unit 38 that generates a control command based on the predicted trajectory.
According to this configuration, the effector of the robot 20 is driven according to a control command generated based on the predicted trajectory of the effector from the current time to a predicted time after the current time, thereby reducing or eliminating the delay (tracking delay) until the operation is reflected in the operation of the robot 20. Since the feeling of operation is improved for the operator, it is possible to achieve both improved work efficiency and reduced burden.

また、制御装置30は、少なくともロボット20の動作環境を示す環境情報と、操作情報に基づき、ロボット20の動作状況を推定する動作状況推定部34をさらに備えてもよい。軌道予測部46は、動作状況に基づいて予測時間を定めてもよい。
この構成によれば、ロボット20の動作環境と操作状況から推定されるロボット20の動作状況に応じて予測時間が定まる。そのため、動作状況に応じて操作感の向上と制御される効果器の位置の正確性のバランスが調整される。
The control device 30 may further include an operation status estimation unit 34 that estimates an operation status of the robot 20 based on at least environmental information indicating an operation environment of the robot 20 and operation information. The trajectory prediction unit 46 may determine a prediction time based on the operation status.
According to this configuration, the predicted time is determined according to the operating condition of the robot 20 estimated from the operating environment and operation condition of the robot 20. Therefore, the balance between the improvement of the operability and the accuracy of the position of the effector to be controlled is adjusted according to the operating condition.

また、制御装置30は、予測軌道をなす時刻ごとの効果器の目標位置を与えるロボット20の動作機構の変位の目標値に基づいて動作機構に対する操作量を定める駆動制御部40を備えてもよい。動作状況推定部34は、動作状況に基づいて、目標値の利得を定めてもよい。
この構成によれば、動作状況に応じて動作機構に対する操作量に対する目標値の寄与が調整される。そのため、動作状況に応じて操作者の操作に対する効果器の動作の感受性が調整される。
The control device 30 may also include a drive control unit 40 that determines an amount of operation for the movement mechanism based on a target value of the displacement of the movement mechanism of the robot 20 that provides a target position of the effector for each time on the predicted trajectory. The movement status estimator 34 may determine a gain of the target value based on the movement status.
According to this configuration, the contribution of the target value to the amount of operation of the operating mechanism is adjusted in accordance with the operating situation, and therefore the sensitivity of the operation of the effector to the operation by the operator is adjusted in accordance with the operating situation.

また、駆動制御部40は、効果器の現在位置を与える変位の出力値と目標値との偏差と第1利得に基づく第1成分と、目標値と第2利得に基づく第2成分を合成して操作量を定めてもよい。動作状況推定部34は、動作状況に基づいて、第1利得と第2利得を定めてもよい。
この構成によれば、動作状況に応じてフィードバック項とフィードフォワード項とのバランスが調整される。そのため、動作状況に応じて操作者の操作に対する効果器の動作の感受性と正確性とのバランスが調整される。
The drive control unit 40 may determine the manipulated variable by combining a first component based on the deviation between the output value of the displacement that gives the current position of the effector and the target value and the first gain, and a second component based on the target value and the second gain. The operation status estimating unit 34 may determine the first gain and the second gain based on the operation status.
According to this configuration, the balance between the feedback term and the feedforward term is adjusted according to the operating situation, and therefore the balance between the sensitivity and accuracy of the operation of the effector organ in response to the operation of the operator is adjusted according to the operating situation.

また、動作状況推定部34は、さらにロボットを操作する操作者の状況を示す操作者情報に基づいて動作状況を推定してもよい。
この構成によれば、さらに操作者の状況を参照して動作状況が的確に推定される。そのため、ロボットによる作業効率と作業負担の軽減がさらに促進される。
Furthermore, the motion status estimating unit 34 may further estimate the motion status based on operator information indicating the status of the operator operating the robot.
According to this configuration, the operating status can be accurately estimated by further referring to the status of the operator, which further improves the work efficiency and reduces the workload of the robot.

以上、図面を参照してこの発明の実施形態について詳しく説明してきたが、具体的な構成は上述のものに限られることはなく、この発明の要旨を逸脱しない範囲内において様々な設計変更等をすることが可能である。 The above describes in detail an embodiment of the present invention with reference to the drawings, but the specific configuration is not limited to the above, and various design changes can be made without departing from the spirit of the present invention.

上記の実施形態およびその変形例は、矛盾が生じない限り相互に組み合わされてもよいし、その一部が省略されてもよい。
例えば、上記の各実施形態において、目標位置推定部36が省略されてもよいし、さらに、目標位置推定部36により推定された目標位置に基づく処理が省略されてもよい。
第2の実施形態において、予測時間が固定の場合には、動作状況推定部34が省略されてもよいし、さらに、動作状況に基づく処理が省略されてもよい。
The above-described embodiments and their modified examples may be combined with each other as long as no contradiction occurs, or some of them may be omitted.
For example, in each of the above embodiments, the target position estimation unit 36 may be omitted, and further, the processing based on the target position estimated by the target position estimation unit 36 may be omitted.
In the second embodiment, when the predicted time is fixed, the operation status estimating unit 34 may be omitted, and further, the processing based on the operation status may be omitted.

環境情報取得部80において、測距部84は、撮影部82と一体化され、三次元画像撮影部として構成されてもよい。また、環境情報取得部80は、撮影部82と測距部84に代えて、多視点撮影部を備えてもよい。多視点撮影部は、複数の視点を有し、視点ごとに画像を撮影することができる撮影部である。多視点撮影部には、いわゆるステレオカメラが含まれる。多視点撮影部が撮影した視点ごとの画像(多視点画像)により、ロボット20の動作環境が立体的に表現される。目標位置推定部36は、多視点画像を解析することで、ロボット20の動作環境から物体が占める領域を特定することができる。 In the environmental information acquisition unit 80, the distance measurement unit 84 may be integrated with the image capture unit 82 and configured as a three-dimensional image capture unit. The environmental information acquisition unit 80 may also include a multi-viewpoint capture unit instead of the image capture unit 82 and the distance measurement unit 84. The multi-viewpoint capture unit is an image capture unit that has multiple viewpoints and can capture images for each viewpoint. The multi-viewpoint capture unit includes a so-called stereo camera. The operating environment of the robot 20 is represented three-dimensionally by the images for each viewpoint (multi-viewpoint images) captured by the multi-viewpoint capture unit. The target position estimation unit 36 can identify the area occupied by an object from the operating environment of the robot 20 by analyzing the multi-viewpoint images.

また、表示装置50の一部または全部が省略されてもよい。視線情報が操作者の一方の眼(例えば、左眼)の視線方向を示す場合を主として説明したが、これには限られない。視線情報は、左眼、右眼それぞれの視線方向を示してもよい。ある時刻において一方の眼の視線方向が利用できない場合(例えば、瞬き)には、目標位置推定部36は、注目点を定める際に他方の眼の視線方向を用いてもよい。両眼の視線方向が利用できる場合には、目標位置推定部36は、両眼それぞれの視線方向の線分が交わる交点、もしくは、それらの線分それぞれの最近接点の中点を注視点として定めてもよい。そして、目標位置推定部36は、頭部から注視点への方向を両眼の視線方向を代表する視線方向と定め、定めた視線方向と物体の表面との交点を定めてもよい。定めた交点が目標位置の設定に用いられる。 Also, a part or the whole of the display device 50 may be omitted. Although the gaze information mainly indicates the gaze direction of one of the operator's eyes (e.g., the left eye) in the above description, the present invention is not limited to this. The gaze information may indicate the gaze direction of each of the left eye and the right eye. When the gaze direction of one eye is unavailable at a certain time (e.g., blinking), the target position estimation unit 36 may use the gaze direction of the other eye when determining the point of attention. When the gaze directions of both eyes are available, the target position estimation unit 36 may determine the intersection of the line segments of the gaze directions of each of the two eyes, or the midpoint of the closest point of each of these line segments, as the gaze point. Then, the target position estimation unit 36 may determine the direction from the head to the gaze point as the gaze direction representing the gaze directions of both eyes, and determine the intersection of the determined gaze direction and the surface of the object. The determined intersection is used to set the target position.

ロボット20は、複数のマニピュレータを備えてもよい。複数のマニピュレータは、複数名の操作者の各一方の前腕部ならびに手部に対応してもよい。個々のマニピュレータは、操作者の各一方の前腕部ならびに手部の動作に応じて動作可能とする。制御装置30は、上記の手法を用いてマニピュレータごとに1個の目標位置を定め、定めた目標位置に向けて動作させてもよい。ロボット20は、2個のマニピュレータを備える双腕型ロボットであってもよい。双腕型ロボットに対しては、例えば、一方および他方のマニピュレータが、それぞれ1名の操作者の左手、右手に対応してもよい。 The robot 20 may be equipped with multiple manipulators. The multiple manipulators may correspond to one forearm and one hand of each of multiple operators. Each manipulator can be operated in response to the movement of one forearm and one hand of each of the operators. The control device 30 may determine one target position for each manipulator using the above method and operate the manipulator toward the determined target position. The robot 20 may be a dual-arm robot equipped with two manipulators. For a dual-arm robot, for example, one and the other manipulator may correspond to the left and right hands of one operator, respectively.

S1…ロボットシステム、20…ロボット、24…駆動部、26…駆動センサ、28…電源、30…制御装置、32…情報取得部、34…動作状況推定部、36…目標位置推定部、38…制御指令生成部、40…駆動制御部、42…通信部、44…記憶部、46…軌道予測部、50…表示装置、52…表示部、54…視線検出部、56…動作検出部、58…制御部、60…通信部、70…操作装置、72…動作検出部、74…制御部、76…通信部、80…環境情報取得部、82…撮影部、84…測距部、86…通信部 S1...Robot system, 20...Robot, 24...Drive unit, 26...Drive sensor, 28...Power source, 30...Control device, 32...Information acquisition unit, 34...Operation status estimation unit, 36...Target position estimation unit, 38...Control command generation unit, 40...Drive control unit, 42...Communication unit, 44...Memory unit, 46...Trajectory prediction unit, 50...Display device, 52...Display unit, 54...Gaze detection unit, 56...Movement detection unit, 58...Control unit, 60...Communication unit, 70...Operation device, 72...Movement detection unit, 74...Control unit, 76...Communication unit, 80...Environment information acquisition unit, 82...Photographing unit, 84...Distance measurement unit, 86...Communication unit

Claims (7)

少なくともロボットの動作を示す動作情報と、少なくとも操作者の手の位置を示す操作情報に基づき、現時刻から所定の予測時間後の予測時刻までの前記ロボットの効果器の予測軌道を定める軌道予測部と、
前記予測軌道に基づいて制御指令を生成する制御指令生成部と、
少なくとも前記ロボットの動作環境を示す環境情報と、前記操作情報に基づき、前記ロボットの動作状況を推定する動作状況推定部と、を備え、
前記軌道予測部は
前記動作状況に基づいて前記予測時間を定める
制御装置。
a trajectory prediction unit that determines a predicted trajectory of the effector of the robot from a current time to a predicted time after a predetermined predicted time based on motion information indicating at least a motion of the robot and operation information indicating at least a hand position of an operator;
a control command generating unit that generates a control command based on the predicted trajectory;
a motion status estimation unit that estimates a motion status of the robot based on at least environmental information indicating an operational environment of the robot and the operation information;
The trajectory prediction unit is
The predicted time is determined based on the operating condition.
Control device.
前記予測軌道をなす時刻ごとの前記効果器の目標位置を与える前記ロボットの動作機構の変位の目標値に基づいて前記動作機構に対する操作量を定める駆動制御部を備え、
前記動作状況推定部は、
前記動作状況に基づいて、前記目標値の利得を定める
請求項に記載の制御装置。
a drive control unit that determines an amount of operation for the movement mechanism of the robot based on a target value of a displacement of the movement mechanism of the robot that provides a target position of the effector for each time on the predicted trajectory,
The operation status estimation unit is
The control device according to claim 1 , wherein the gain of the target value is determined based on the operating condition.
前記駆動制御部は、
前記効果器の現在位置を与える前記変位の出力値と前記目標値との偏差と第1利得に基づく第1成分と、前記目標値と第2利得に基づく第2成分を合成して前記操作量を定め、 前記動作状況推定部は、
前記動作状況に基づいて、前記第1利得と前記第2利得を定める
請求項に記載の制御装置。
The drive control unit is
the operation status estimation unit determines the manipulated variable by combining a first component based on a deviation between the output value of the displacement that provides a current position of the effector and the target value and a first gain, and a second component based on the target value and a second gain;
The control device according to claim 2 , wherein the first gain and the second gain are determined based on the operating condition.
前記動作状況推定部は、
さらに前記ロボットを操作する操作者の状況を示す操作者情報に基づいて前記動作状況を推定する
請求項から請求項のいずれか一項に記載の制御装置。
The operation status estimation unit is
The control device according to claim 1 , further comprising: a controller configured to estimate the operation status based on operator information indicating a status of an operator operating the robot.
コンピュータに請求項1から請求項のいずれか一項に記載の制御装置として機能させるためのプログラム。 A program for causing a computer to function as the control device according to any one of claims 1 to 3 . 請求項1から請求項のいずれか一項に記載の制御装置と前記ロボットを備える
ロボットシステム。
A robot system comprising the control device according to any one of claims 1 to 3 and the robot.
制御装置における制御方法であって、
少なくともロボットの動作を示す動作情報と、少なくとも操作者の手の位置を示す操作情報に基づき、現時刻から所定の予測時間後の予測時刻までの前記ロボットの効果器の予測軌道を定める第1ステップと、
前記予測軌道に基づいて制御指令を生成する第2ステップと、
少なくとも前記ロボットの動作環境を示す環境情報と、前記操作情報に基づき、前記ロボットの動作状況を推定する第3ステップと、を有し、
前記第1ステップは、
前記動作状況に基づいて前記予測時間を定めるステップを有する
制御方法。
A control method in a control device, comprising:
a first step of determining a predicted trajectory of an effector of the robot from a current time to a predicted time after a predetermined predicted time based on motion information indicating at least a motion of the robot and operation information indicating at least a hand position of an operator;
a second step of generating control commands based on the predicted trajectory;
and a third step of estimating an operating condition of the robot based on environmental information indicating at least an operating environment of the robot and the operation information,
The first step comprises:
determining the predicted time based on the operating condition;
Control methods.
JP2021060904A 2021-03-31 2021-03-31 CONTROL DEVICE, ROBOT SYSTEM, CONTROL METHOD, AND PROGRAM Active JP7577017B2 (en)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2021060904A JP7577017B2 (en) 2021-03-31 2021-03-31 CONTROL DEVICE, ROBOT SYSTEM, CONTROL METHOD, AND PROGRAM
PCT/JP2022/012089 WO2022209924A1 (en) 2021-03-31 2022-03-16 Robot remote operation control device, robot remote operation control system, robot remote operation control method, and program
US18/280,959 US20240149458A1 (en) 2021-03-31 2022-03-16 Robot remote operation control device, robot remote operation control system, robot remote operation control method, and program
EP22780144.6A EP4316747A4 (en) 2021-03-31 2022-03-16 ROBOT REMOTE CONTROL DEVICE, ROBOT REMOTE CONTROL SYSTEM, ROBOT REMOTE CONTROL METHOD AND PROGRAM
US19/290,401 US20250360626A1 (en) 2021-03-31 2025-08-05 Robot remote operation control device, robot remote operation control system, robot remote operation control method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021060904A JP7577017B2 (en) 2021-03-31 2021-03-31 CONTROL DEVICE, ROBOT SYSTEM, CONTROL METHOD, AND PROGRAM

Publications (2)

Publication Number Publication Date
JP2022156954A JP2022156954A (en) 2022-10-14
JP7577017B2 true JP7577017B2 (en) 2024-11-01

Family

ID=83560047

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021060904A Active JP7577017B2 (en) 2021-03-31 2021-03-31 CONTROL DEVICE, ROBOT SYSTEM, CONTROL METHOD, AND PROGRAM

Country Status (1)

Country Link
JP (1) JP7577017B2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024013895A1 (en) * 2022-07-13 2024-01-18 日本電信電話株式会社 Remote control system, remote control method, and remote control program
JP2024080009A (en) * 2022-12-01 2024-06-13 株式会社小松製作所 Operation system and operation support method
CN116977434B (en) * 2023-08-17 2024-09-24 深圳优立全息科技有限公司 Target behavior tracking method and system based on tracking camera
WO2026069644A1 (en) * 2024-09-30 2026-04-02 ソフトバンク株式会社 Information processing system, information processing method, information processing device, determination method, and determination program

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017196678A (en) 2016-04-25 2017-11-02 国立大学法人 千葉大学 Robot motion control device
JP6476358B1 (en) 2017-05-17 2019-02-27 Telexistence株式会社 Control device, robot control method, and robot control system
WO2019059364A1 (en) 2017-09-22 2019-03-28 三菱電機株式会社 Remote control manipulator system and control device
JP2019217557A (en) 2018-06-15 2019-12-26 株式会社東芝 Remote control method and remote control system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017196678A (en) 2016-04-25 2017-11-02 国立大学法人 千葉大学 Robot motion control device
JP6476358B1 (en) 2017-05-17 2019-02-27 Telexistence株式会社 Control device, robot control method, and robot control system
WO2019059364A1 (en) 2017-09-22 2019-03-28 三菱電機株式会社 Remote control manipulator system and control device
JP2019217557A (en) 2018-06-15 2019-12-26 株式会社東芝 Remote control method and remote control system

Also Published As

Publication number Publication date
JP2022156954A (en) 2022-10-14

Similar Documents

Publication Publication Date Title
JP7577017B2 (en) CONTROL DEVICE, ROBOT SYSTEM, CONTROL METHOD, AND PROGRAM
US20250360626A1 (en) Robot remote operation control device, robot remote operation control system, robot remote operation control method, and program
US9492925B2 (en) Robot controller, robot system, robot, robot control method, and program
US10252424B2 (en) Systems and methods for control of robotic manipulation
US9387589B2 (en) Visual debugging of robotic tasks
US20190283259A1 (en) Robot control method
JP2019509907A (en) Mechanical system control method, mechanical system controller, robot manipulator, and non-transitory computer-readable storage medium
Kim et al. A force reflected exoskeleton-type masterarm for human-robot interaction
CN114952821B (en) Robot motion control method, robot and system
KR20190075098A (en) System and method for directing a robot
WO2021033472A1 (en) Control device, control method, and control program
CN117207190B (en) Accurate robot system that snatchs based on vision and sense of touch fuse
KR20230124657A (en) Coordination of arms and body
JP2022543926A (en) System and Design of Derivative-Free Model Learning for Robotic Systems
JP2006000977A (en) A device for presenting a force action state between robot environments
JP2021035714A (en) Control device, control method, and control program
CN112894827A (en) Mechanical arm motion control method, system and device and readable storage medium
JP7542481B2 (en) CONTROL DEVICE, ROBOT SYSTEM, CONTROL METHOD, AND PROGRAM
Kim et al. An augmented reality-based wearable system for handheld-free and intuitive robot programming
CN120422230A (en) Remote operation control method and system for robot, medium, equipment and program product
CN115113517B (en) Bilateral force feedback method, device, equipment and medium
Kuan et al. Challenges in VR-based robot teleoperation
US12109682B2 (en) Assistance for robot manipulation
JP7845991B2 (en) Computer system and robot control method
Vahrenkamp et al. Planning and execution of grasping motions on a humanoid robot

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20231128

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240521

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240716

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: 20240924

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20241022

R150 Certificate of patent or registration of utility model

Ref document number: 7577017

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150