WO2018212225A1 - 感覚付与装置、ロボット制御システム、ロボット制御方法及びプログラム - Google Patents

感覚付与装置、ロボット制御システム、ロボット制御方法及びプログラム Download PDF

Info

Publication number
WO2018212225A1
WO2018212225A1 PCT/JP2018/018883 JP2018018883W WO2018212225A1 WO 2018212225 A1 WO2018212225 A1 WO 2018212225A1 JP 2018018883 W JP2018018883 W JP 2018018883W WO 2018212225 A1 WO2018212225 A1 WO 2018212225A1
Authority
WO
WIPO (PCT)
Prior art keywords
robot
state information
unit
operator
sensation
Prior art date
Application number
PCT/JP2018/018883
Other languages
English (en)
French (fr)
Inventor
チャリス ラサンタ フェルナンド
▲すすむ▼ 舘
元紀 佐野
孝太 南澤
Original Assignee
Telexistence株式会社
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 Telexistence株式会社 filed Critical Telexistence株式会社
Priority to JP2019518832A priority Critical patent/JP7034494B2/ja
Priority to EP18802159.6A priority patent/EP3626403A4/en
Priority to CN201880032636.0A priority patent/CN110678300A/zh
Publication of WO2018212225A1 publication Critical patent/WO2018212225A1/ja
Priority to US16/684,624 priority patent/US11541546B2/en

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/02Sensing devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J3/00Manipulators of master-slave type, i.e. both controlling unit and controlled unit perform corresponding spatial movements
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1689Teleoperation

Definitions

  • the present invention relates to a sensation imparting device, a robot control system, a robot control method, and a program.
  • Teleexistence is known as a field of virtual reality. Teleexistence is also said to be a technology that gives people a sense of remote presence or remote presence. Tele-existence provides an environment in which a user can perform an operation on an object or a person in real time while making the user feel as if an object or person located in a remote place is nearby.
  • a high-speed network In order to operate a robot in real time through tele-distance through a network, a high-speed network is required, and the network is required to have a very low latency and no data loss. However, depending on the network through which data is transmitted, a transmission delay may occur or data may be lost.
  • a streaming algorithm that dynamically controls the rate is used to temporarily store the data and stream in a buffer. By storing them in the memory, it is possible to reduce the effects of transmission delay and data loss. Further, by using a streaming protocol such as WebRTC (Web Real-Time Communication) or HLS (HTTP Live Streaming), high-quality audio and video media can be transmitted in one direction in synchronization.
  • WebRTC Web Real-Time Communication
  • HLS HTTP Live Streaming
  • two or more streaming media were synchronized in two ways between multiple endpoints on the Internet.
  • the plurality of media are, for example, motion data, sound, video, or data indicating tactile sensation.
  • the robot in the tele-existence, if there is a delay between the operation of the robot operator and the operation of the robot, the robot may be difficult to control. For example, if the delay is large, the situation assumed by the operator and the situation viewed by the operator via the imaging device provided in the robot do not match, resulting in dizziness for the operator. This makes it difficult for the operator to continue control of the robot.
  • the delay is, for example, a delay that occurs in data communication via a network, a delay that occurs when data encoding and decoding processes are performed, and an A / D (Analog to Digital) conversion process that is performed on data.
  • the generated delay for example, delay due to sampling), the mechanical delay (mechanical delay), and the like.
  • the present invention has been made in consideration of such circumstances, and an object of the present invention is to provide a sensory imparting device, a robot control system, and a robot control method capable of improving the operability in teleexistence.
  • the sense imparting device includes: a transmission unit that transmits operator state information indicating a state of an operator who operates a robot toward the robot; and robot state information indicating the state of the robot.
  • a reception unit that receives from the robot, a sensation imparting unit that imparts a predetermined sensation to the operator, and a period from when the transmission unit transmits the operator state information to when the reception unit receives the robot state information.
  • the sensation imparting unit is controlled to impart a sensation based on the robot state information to the operator, and the delay time is longer than the predetermined time
  • a control unit that controls the sensation imparting unit to impart a sensation based on virtual state information indicating the estimated state of the robot to the operator.
  • the control unit controls the sensation providing unit to provide the operator with a sensation based on the robot state information received by the receiving unit after giving the sensation based on the virtual state information to the operator. May be.
  • the control unit is between a first sense based on the virtual state information and a second sense based on the robot state information received by the receiving unit after giving the operator a sense based on the virtual state information.
  • the sensation imparting unit may be controlled so as to impart a sensation of interpolating between the first sensation and the second sensation to the operator.
  • the buffer unit After temporarily storing the one or more robot state information received by the receiving unit, the buffer unit further sequentially outputs the one or more robot state information to the sense applying unit, the control unit, When the amount of the one or more robot state information accumulated in the buffer unit is less than a threshold value, the sensation providing unit may be controlled so as to give a sense based on virtual state information to the operator. .
  • the buffer unit After temporarily storing the one or more robot state information received by the receiving unit, the buffer unit further sequentially outputs the one or more robot state information to the sense applying unit, the control unit, The buffer unit is temporarily stored in the buffer unit so that the fluctuation amount of the delay time required from the transmission unit transmitting the operator state information to the reception unit receiving the robot state information is within a predetermined range.
  • the amount of the robot state information stored may be controlled.
  • the control unit includes a storage unit that stores a plurality of virtual state information corresponding to the robots in different states, and adds virtual state information selected from the plurality of virtual state information based on the operator state information.
  • the sensation imparting unit may be controlled to impart a sense based on the operator.
  • the storage unit stores the plurality of virtual state information including virtual images corresponding to images captured by the robot in different states, and the control unit includes the operator state among the plurality of virtual state information.
  • the sensation providing unit may be controlled so as to give the operator a sense based on virtual state information including the virtual image corresponding to the position of the robot specified based on the operation content indicated by the information.
  • the control unit selects one virtual state information from the plurality of virtual state information, and the state of the operator indicated by the previous operator state information and the operation indicated by the latest operator state information The state of the robot after the operation by the operator is estimated, and one virtual state information corresponding to the estimated state of the robot is selected. Good.
  • the control unit stores sensory history information indicating sensory content based on the robot state information given to the sensory imparting unit in the storage unit, and the sensory history information stored immediately before is stored in the sensory content indicated by the sensory history information. Based on the plurality of virtual state information, virtual state information used for giving a sense to the operator may be selected.
  • the control unit identifies a delay factor from when the transmission unit transmits the operator state information to when the reception unit receives the robot state information, and based on the identified factor, the storage unit
  • the sensation providing unit is controlled so as to give the operator a sensation based on the virtual state information stored in the network, or a sensation based on the virtual state information received via the network is given to the operator. It may be determined whether to control the sense imparting unit.
  • the robot control system includes a sensation imparting device that transmits operator status information indicating a status of an operator who operates the robot to the network, and the operator status information received via the network.
  • a robot control device that controls the robot based on the network, and a management device that can communicate with the robot control device and the sensory imparting device via the network.
  • the sensation imparting apparatus includes: a transmission unit that transmits operator state information indicating a state of an operator who operates the robot toward the robot; and a reception unit that receives robot state information indicating the state of the robot from the robot; A sensation imparting unit that imparts a predetermined sensation to the operator, and a delay time required from when the transmission unit transmits the operator state information to when the reception unit receives the robot state information.
  • the sensation imparting unit is controlled to impart a sensation based on the robot state information to the operator, and when the delay time is longer than the predetermined time, the estimated robot A control unit that controls the sensation imparting unit to impart a sensation based on virtual state information indicating a state to the operator.
  • the management device includes a delay specifying unit that specifies the delay time, and a notification unit that notifies the control unit of the delay time specified by the delay specifying unit.
  • the delay identifying unit identifies a factor causing the delay time, and the notifying unit determines whether the delay identified by the delay identifying unit is a transmission delay of the network. Instructing the operator to give a sensation based on the virtual state information, and the control unit of the sensation giving device gives the sensation to give the operator a sensation based on the virtual state information.
  • the unit may be controlled.
  • the notifying unit instructs the robot control device to transmit virtual state information to the sensation imparting device when the factor specified by the delay specifying unit is an operation delay of the robot;
  • the control unit of the sensation imparting device may control the sensation imparting unit so as to impart a sensation based on the virtual state information received from the robot control device to the operator.
  • the robot control method includes a step of transmitting, to the robot, operator state information indicating a state of an operator who operates the robot, which is executed by a computer, and transmitting the operator state information. And determining whether or not a delay time required to receive the robot state information indicating the state of the robot is equal to or less than a predetermined time, and when the delay time is equal to or less than the predetermined time, Giving the operator a sense based on the robot state information, and giving the operator a sense based on virtual state information indicating the estimated state of the robot when the delay time is longer than the predetermined time. And a step of performing.
  • the operability in teleexistence can be improved.
  • 1 is a block diagram showing a schematic configuration of a robot system according to an embodiment of the present invention. It is a block diagram which shows the schematic structure of the terminal device which concerns on one Embodiment of this invention. 1 is a block diagram illustrating a schematic configuration of a robot control apparatus according to an embodiment of the present invention. It is a figure for demonstrating the adjustment method of the delay time by the buffer in the terminal device and robot control apparatus which concern on one Embodiment of this invention. It is a block diagram which shows the image of the virtual robot in the robot system which concerns on one Embodiment of this invention. It is a figure for demonstrating the virtual state information provided in the robot system which concerns on one Embodiment of this invention.
  • FIG. 1 is a block diagram showing a schematic configuration of a robot system 1 according to an embodiment of the present invention.
  • the robot system 1 includes n terminal devices 21-1 to 21-n (n is an integer of 2 or more), n robots 31-1 to 31-n, and n robot controls. Devices 41-1 to 41-n and a network 51.
  • the network 51 is, for example, the Internet, but may be any other network.
  • a wired network may be used, a wireless network may be used, or a network including both wired and wireless may be used.
  • FIG. 1 shows n users 11-1 to 11-n and n robots 31-1 to 31-n (n is an integer of 1 or more).
  • Each of the robots 31-1 to 31-n is, for example, a humanoid robot as a whole or a partially humanoid robot.
  • a partially humanoid robot is a robot in which a part of the whole is a humanoid and the other part is not a humanoid, such as an upper body part, a lower body part, or an arm part.
  • Each of the robots 31-1 to 31-n may be any other form of robot.
  • the robots 31-1 to 31-n may have, for example, a ROS (Robot Operating System) function.
  • ROS Robot Operating System
  • the respective users 11-1 to 11-n are associated with the respective terminal devices 21-1 to 21-n.
  • the robots 31-1 to 31-n and the robot control devices 41-1 to 41-n are associated with each other.
  • the respective terminal devices 21-1 to 21-n are associated with the respective robot control devices 41-1 to 41-n.
  • one user 11-i i is an arbitrary integer between 1 and n
  • one terminal device 21-i i is an arbitrary integer between 1 and n
  • one robot. 31-i is associated with one robot control device 41-i.
  • the n terminal devices 21-1 to 21-n have equivalent functions
  • the n robot control devices 41-1 to 41-n have equivalent functions
  • the n robots 31-1 to 31-n have equivalent functions.
  • the n users 11-1 to 11-n are different people, but have equivalent functions in that they operate the corresponding robots 31-1 to 31-n. Therefore, hereinafter, a combination of one user 11-1, one terminal device 21-1, one robot 31-1, and one robot control device 41-1 will be described as an example.
  • FIG. 2 is a block diagram showing a schematic configuration of the terminal device 21-1 according to the embodiment of the present invention.
  • the terminal device 21-1 functions as a sensation imparting device that detects the state of the user 11-1 and gives various sensations to the user 11-1.
  • the feeling that the terminal device 21-1 gives to the user 11-1 is arbitrary, but is, for example, visual, auditory, tactile, or force sense.
  • the terminal device 21-1 gives the user 11-1 a sense based on the state of the robot 31-1 acquired via the robot control device 41-1.
  • the terminal device 21-1 includes a detection unit 111, a buffer 112, a communication unit 113, a sense giving unit 114, and a control unit 115.
  • the communication unit 113 includes a transmission unit 131 and a reception unit 132.
  • the control unit 115 includes a storage unit 151 including a ROM (Read Only Memory) and a RAM (Random Access Memory).
  • the detecting unit 111 detects the state of the user 11-1.
  • the state detected by the detection unit 111 is, for example, the movement of the finger of the user 11-1, the movement of the trunk of the user 11-1, or the movement of the user's eyes (for example, the line of sight).
  • the detection unit 111 includes, for example, a sensor that detects the state of the detection target.
  • the detection unit 111 includes a head sensor, a finger sensor, and a torso sensor.
  • the head sensor is provided in, for example, a head mounted display that provides video and sound to the user 11-1.
  • a head mounted display has a sensor which detects a motion of a user's eyes (for example, line of sight), for example. The sensor may detect the left eye movement and the right eye movement separately.
  • the sensor is, for example, a sensor that is attached to the user 11-1, but may be a sensor that is not attached to the user 11-1.
  • the sensor that is not attached to the user 11-1 is, for example, an imaging device (for example, a camera) that captures part or all of the image (for example, video) of the user 11-1.
  • the buffer 112 is a memory that temporarily stores data.
  • the buffer 112 has a function of temporarily storing data to be transmitted by the transmission unit 131 and a function of temporarily storing data received by the reception unit 132. Different buffers may be provided for each of these two functions.
  • the buffer 112 temporarily stores the one or more robot state information received by the receiving unit 132, and then sequentially outputs the one or more robot state information to the sense applying unit 114.
  • the robot state information is information indicating the state of the robot 31-1, for example, information indicating an image captured by the robot 31-1, pressure detected by the robot 31-1, or temperature detected by the robot 31-1. is there.
  • the buffer 112 temporarily stores the operator status information indicating the status of the operator detected by the detection unit 111, and then sequentially outputs one or more pieces of operator status information to the transmission unit 131.
  • the operator state information is information indicating the position of the body of the user 11-1 detected using, for example, a sensor attached to the body of the user 11-1.
  • the communication unit 113 communicates with the robot control device 41-1 corresponding to the terminal device 21-1.
  • the communication unit 113 communicates with the robot control device 41-1 via the network 51.
  • the communication unit 113 communicates with WebRTC.
  • the communication unit 113 can perform communication at a high frame rate with low delay, for example, using WebRTC.
  • the transmission unit 131 acquires operator state information indicating the state of the user 11-1 who operates the robot 31-1 from the buffer 112, and transmits the acquired operator state information to the robot 31-1. Specifically, the transmission unit 131 transmits the transmission target data including the operator state information to the robot control device 41-1.
  • the receiving unit 132 receives robot state information indicating the state of the robot 31-1 as data transmitted from the robot control device 41-1.
  • the receiving unit 132 inputs the received robot state information to the buffer 112.
  • the sense imparting unit 114 gives the user 11-1 a sense based on the robot state information received by the receiving unit 132. That is, the sensation imparting unit 114 imparts a sensation corresponding to the robot state information indicating the state of the robot 31-1 received by the receiving unit 132 to the user 11-1.
  • the sense imparting unit 114 includes, for example, a device that imparts a sense to the user 11-1.
  • the sensation imparting unit 114 is a video display that displays video (Video) to give the user 11-1 vision, and a speaker that outputs sound (Audio) to give the user 11-1 hearing.
  • An operation generator for generating pressure or vibration may be provided to give haptics to the user 11-1.
  • the video display and the speaker are provided in a head device (for example, a head mounted display).
  • the device that gives a sense to the user 11-1 may be a device that is attached to the user 11-1, or may be a device that is not attached to the user 11-1.
  • the detection unit 111 and the sensation imparting unit 114 may be partly or wholly included in the same device.
  • the control unit 115 performs various controls in the terminal device 21-1.
  • the control unit 115 includes, for example, a CPU (Central Processing Unit) and a storage unit 151 that stores data.
  • the control unit 115 performs various controls by executing the program stored in the storage unit 151 using the parameters stored in the storage unit 151.
  • control unit 115 can adjust the length of time for temporarily storing data to be transmitted in the buffer 112, and temporarily store the received data in the buffer 112. It is possible to adjust the length of time to do.
  • the terminal device 21-1 may be composed of a plurality of devices.
  • the terminal device 21-1 includes two or more detection units 111, buffers 112, communication units 113, sense imparting units 114, and control units 115 shown in FIG. It may be distributed and provided in the equipment. Further, the transmission unit 131 and the reception unit 132 may be provided in different devices.
  • the terminal device 21-1 may be configured using a device including the detection unit 111, a device including the sense imparting unit 114, and a device including the buffer 112, the communication unit 113, and the control unit 115.
  • the device including the detection unit 111 and the device including the sense imparting unit 114 may be partially or entirely integrated.
  • FIG. 3 is a block diagram showing a schematic configuration of the robot control device 41-1 according to the embodiment of the present invention.
  • the robot control device 41-1 includes a communication unit 211, a buffer 212, a robot drive unit 213, a detection unit 214, and a control unit 215.
  • the communication unit 211 includes a reception unit 231 and a transmission unit 232.
  • the control unit 215 includes a CPU and a storage unit 251 including a ROM and a RAM.
  • the communication unit 211 communicates with the terminal device 21-1 corresponding to the robot control device 41-1. In the present embodiment, the communication unit 211 communicates via the network 51. The communication unit 211 communicates with WebRTC, for example.
  • the receiving unit 231 receives data such as operator status information transmitted from the terminal device 21-1.
  • the transmission unit 232 transmits data such as robot state information to be transmitted to the terminal device 21-1.
  • the buffer 212 is a memory that temporarily stores data.
  • the buffer 212 has a function of temporarily storing robot state information to be transmitted by the transmission unit 232 and a function of temporarily storing operator state information received by the reception unit 231. Yes.
  • the buffer 212 may have different buffers for each of these two functions.
  • the robot driving unit 213 drives the driving unit of the robot 31-1 corresponding to the robot control device 41-1 based on the operator state information received from the terminal device 21-1.
  • the driving unit of the robot 31-1 is, for example, a driving unit that drives the head, a driving unit that drives the finger unit, or a driving unit that drives the torso.
  • the detecting unit 214 detects the movement of the robot 31-1.
  • the movement detected by the detection unit 214 is, for example, the movement of the finger of the robot 31-1, the movement of the trunk of the robot 31-1, or the movement of the eyes (for example, the line of sight) of the robot 31-1.
  • the detection unit 214 includes, for example, a sensor that detects the state of the detection target.
  • the detection unit 214 includes a head sensor, a finger sensor, and a torso sensor.
  • the head sensor is, for example, an imaging device (camera) that captures an image or a microphone that inputs sound.
  • the detection unit 214 may separately process a video corresponding to the left eye and a video corresponding to the right eye.
  • the sensor may be a sensor that is mounted on the robot 31-1, or a sensor that is not mounted on the robot 31-1.
  • the sensor that is not attached to the robot 31-1 is an imaging device that is installed near the robot 31-1 and captures an image (for example, video), for example.
  • Various types of data are captured by sampling using A / D conversion, for example.
  • the data detected by the detection unit 214 becomes the robot state information to be transmitted.
  • the robot drive unit 213 and the detection unit 214 may be, for example, a part or all of a common device.
  • the control unit 215 performs various controls in the robot control device 41-1.
  • the control unit 215 includes, for example, a CPU and a storage unit 251 that stores data.
  • the control unit 215 performs various controls by executing a program stored in the storage unit 251 using, for example, parameters stored in the storage unit 251.
  • the control unit 215 can adjust the length of time for temporarily storing data such as the robot status information to be transmitted in the buffer 212, and the received operator status information. It is possible to adjust the length of time for temporarily storing data such as.
  • the robot control device 41-1 may be composed of a plurality of devices.
  • the communication unit 211, the buffer 212, the robot drive unit 213, the detection unit 214, and the control unit 215 shown in FIG. It may be distributed and provided in the above devices.
  • the reception unit 231 and the transmission unit 232 may be provided in different devices.
  • the robot control device 41-1 may be configured using a device including the robot drive unit 213, a device including the detection unit 214, and a device including the communication unit 211, the buffer 212, and the control unit 215.
  • the device including the robot drive unit 213 and the device including the detection unit 214 may be partially or entirely integrated.
  • the terminal device 21-1 detects the state of the user 11-1 by the detection unit 111, and transmits operator state information including the detected data to the robot control device 41-1 via the network 51.
  • the robot control device 41-1 receives the operator status information transmitted from the terminal device 21-1 via the network 51, and controls the robot 31-1 by the robot drive unit 213 based on the received operator status information. Drive.
  • the robot 31-1 operates by being driven by the robot drive unit 213 of the robot control device 41-1.
  • the robot control device 41-1 detects the state of the robot 31-1 by the detection unit 214, and transmits the robot state information including the detected data to the terminal device 21-1 via the network 51.
  • the terminal device 21-1 receives the robot state information transmitted from the robot control device 41-1 via the network 51, and based on the received robot state information, the sensation imparting unit 114 sends the information to the user 11-1. Give a sense.
  • the terminal device 21-1 and the robot control device 41-1 are associated before being used by the user 11-1 or when being used by the user 11-1.
  • the terminal device 21-1 stores address information of the robot control device 41-1 corresponding to the own device (the terminal device 21-1), and the robot control device 41-1 stores the own device (the robot control device 41).
  • the address information of the terminal device 21-1 corresponding to -1) is stored.
  • the terminal device 21-1 and the robot control device 41-1 corresponding to each other use the stored address information, for example, by including the address information in the signal to be transmitted, thereby making each other a communication partner. connect.
  • FIG. 4 is a diagram for explaining a delay time adjustment method using a buffer in the terminal device 21-1 and the robot control device 41-1 according to the embodiment of the present invention.
  • FIG. 4 shows a user 11-1, head device 311 which is a component of the terminal device 21-1, finger devices 312-1 to 312-2, torso devices 313-1 to 313-2, and a terminal device.
  • FIG. 4 shows a robot 31-1, a visual device 411, acoustic devices 412-1 to 412-2, finger devices 413-1 to 413-2, which are components of the robot control device 41-1, and a robot.
  • a buffer 212 which is a component of the control device 41-1, is shown.
  • the user 11-1 wears the head device 311 on the head, wears the finger device 312-1 on the finger of the right hand, and wears the finger device 312-2 on the finger of the left hand.
  • the torso equipment 313-1 is attached to the right torso and the torso equipment 313-2 is attached to the left torso.
  • the head device 311 includes a visual unit 331 at a position corresponding to both eyes of the user 11-1, and includes an acoustic unit 332-1 at a position corresponding to the right ear of the user 11-1.
  • the sound unit 332-2 is provided at a position corresponding to one left ear.
  • the head device 311 is, for example, a head mounted display.
  • the visual unit 331 processes data for each of the right eye and the left eye.
  • the head device 311, the finger devices 312-1 to 312-2, and the torso devices 313-1 to 313-2 have the function of the detection unit 111 of the terminal device 21-1.
  • the head device 311 detects the movement of the head.
  • the finger units 312-1 to 312-2 detect the movement of the left and right fingers.
  • the torso devices 313-1 to 313-2 detect the movement of the torso.
  • the terminal device 21-1 moves the user 11-1 based on the movement of each part detected by the head device 311, the finger devices 312-1 to 312-2, and the torso devices 313-1 to 313-2. Realizes a motion capture function that detects (change in posture).
  • the user 11-1 has left and right torso devices 313-1 to 313-2 separately, but the user 11-1 has replaced the left and right torso devices 313-1 to 313-2.
  • one trunk device may be provided.
  • FIG. 4 is an example, and the detection unit 111 may be any other device that detects the state of the user, for example, a touch panel that detects the operation content using a human finger or the like. May be.
  • the finger units 312-1 to 312-2, the torso devices 313-1 to 313-2, the visual unit 331, and the acoustic units 332-1 to 332-2 are functions of the sensory unit 114 of the terminal device 21-1. have.
  • the finger unit devices 312-1 to 312-2 have a function of giving a tactile sensation to each finger.
  • the torso devices 313-1 to 313-2 have a function of giving a sense of touch to the torso.
  • the visual unit 331 has a function of giving vision to both eyes (left and right eyes) of the user 11-1, and displays, for example, an image.
  • the sound units 332-1 to 332-2 have a function of giving hearing to both ears (left and right ears) of the user 11-1, and output sound, for example.
  • FIG. 4 is an example, and the sense imparting unit 114 may be any device that imparts another sense to the user.
  • the robot 31-1 is equipped with a visual device 411 at a position corresponding to both eyes of a person, and an acoustic device 412-1 is mounted at a position corresponding to the right ear of the person, and corresponds to the left ear of the person.
  • the acoustic device 412-2 is attached at the position
  • the finger device 413-1 is attached at a position corresponding to the finger of the right hand of the person
  • the finger device 413- is installed at a position corresponding to the finger of the left hand of the person. 2 is installed.
  • the visual device 411, the sound devices 412-1 to 412-2, and the finger devices 413-1 to 413-2 have the function of the detection unit 214 of the robot control device 41-1.
  • the visual device 411 has an imaging device, for example, and generates video data as data relating to vision.
  • the visual device 411 processes video data for each of the right eye and the left eye.
  • the acoustic devices 412-1 to 412-2 generate acoustic data as data relating to hearing.
  • the finger unit devices 413-1 to 413-2 generate data related to the sense of touch of each finger.
  • the tactile sense data is data indicating the hardness of the place touched by the finger units 413-1 to 413-2 and the degree of unevenness.
  • the detection unit 214 may include a device that can be attached to and detached from the robot 31-1.
  • the detection unit 214 may include a device that is integrated with the robot 31-1 and cannot be attached or detached. In this case, the device may be regarded as a part of the robot 31-1.
  • the communication unit 113 and the control unit 115 of the terminal device 21-1 are not shown.
  • the communication unit 211, the robot drive unit 213, and the control unit 215 of the robot control device 41-1 are not shown.
  • the buffer 112 and the buffer 212 are each shown as a single unit.
  • the buffer 112 is not necessarily limited to this configuration, and the buffer 112 is provided in the terminal device 21-1.
  • the robot controller 41-1 is provided.
  • the operator state information indicating the state of the user 11-1 detected by the detecting unit 111 of the terminal device 21-1 is transmitted from the robot control device 41 by the transmission session P1, the transmission session P2, and the transmission session P3. -1 to the control unit 215 or the robot drive unit 213.
  • the transmission session P1 is a session from the control unit 115 or the detection unit 111 of the terminal device 21-1 to the buffer 112 of the terminal device 21-1.
  • the transmission session P2 is a session from the buffer 112 of the terminal device 21-1 to the buffer 212 of the robot control device 41-1.
  • the transmission session P3 is a session from the buffer 212 of the robot controller 41-1 to the controller 215 or the robot driver 213 of the robot controller 41-1.
  • the robot state information indicating the states of the robots 31-1 to 31-n detected by the detection unit 214 of the robot control device 41-1 is transmitted from the terminal device 21- through the transmission session P11, the transmission session P12, and the transmission session P13. 1 control unit 115 or sensation imparting unit 114.
  • the transmission session P11 is a session up to the buffer 212 of the robot control device 41-1.
  • the transmission session P12 is a session from the buffer 212 of the robot control device 41-1 to the buffer 112 of the terminal device 21-1.
  • the transmission session P13 is a session from the buffer 112 of the terminal device 21-1 to the control unit 115 or the sense imparting unit 114 of the terminal device 21-1.
  • data transmission between the buffer 112 of the terminal device 21-1 and the buffer 212 of the robot control device 41-1 is performed by the communication unit 113 of the terminal device 21-1 and the communication unit 211 of the robot control device 41-1. This is performed via the network 51.
  • the first session is a session including transmission sessions P1 to P3 from the terminal device 21-1 to the robot control device 41-1.
  • operator state information indicating the state of the user 11-1 is transmitted.
  • the operator state information is information including data indicating, for example, the user's eye movement, finger movement, or torso movement.
  • the second session is a session including transmission sessions P11 to P13 from the robot control device 41-1 to the terminal device 21-1.
  • robot state information including video data, acoustic data, and tactile data indicating the state of the robot 31-1 is transmitted.
  • the robot 31-1 operates according to the movement of the user 11-1.
  • the user 11-1 looks at the image at the position of the robot 31-1, listens to the sound, and feels the tactile sensation to perform the operation.
  • the robot 31-1 and the user 11-1 repeat these operations.
  • the robot system 1 compensates for a delay in bidirectional communication in the first session and the second session.
  • the control unit 115 allows the fluctuation amount of the delay time required from when the transmission unit 131 transmits the user 11-1 state information to when the reception unit 132 receives the robot state information falls within a predetermined range.
  • the amount of robot state information temporarily stored in the buffer 112 is controlled.
  • the robot system 1 performs each of the first session and the second session in order to realize the synchronized movement between the user 11-1 side and the robot 31-1 side. To compensate for different delay times.
  • the total delay time of transmission sessions P1 to P3 from the user 11-1 side (terminal device 21-1) to the robot 31-1 side (robot control device 41-1) is represented by LatM.
  • the total delay time of the transmission sessions P11 to P13 from the robot 31-1 side (robot control device 41-1) to the user 11-1 side (terminal device 21-1) is represented by LatN.
  • the delay time of the transmission session P1 is represented by LatMu
  • the delay time of the transmission session P3 is represented by LatMr
  • the delay time of the transmission session P11 is represented by LatNr
  • the delay time of the transmission session P13 is represented by LatNu.
  • the delay time in the mechanism for detecting the movement of the user 11-1 (in this embodiment, the terminal device 21-1) is expressed as LatMm
  • the mechanism for driving the robot 31-1 in this embodiment, the robot control device 41.
  • the delay time in -1) is expressed as LatNm.
  • Formula (1) and Formula (2) hold.
  • LatM LatMu + LatMr + LatMm (1)
  • LatN LatNr + LatNu + LatNm (2)
  • the robot system 1 includes the buffer 112 on the user 11-1 side which is one side of the network 51, and the buffer 212 on the robot 31-1 side which is the other side of the network 51.
  • the delay time of the data in each of the buffer 112 and the buffer 212 can be adjusted. That is, the robot system 1 can adjust the delay time on each of the user 11-1 side and the robot 31-1 side.
  • control unit 115 of the terminal device 21-1 controls the data delay time in the buffer 112 in real time so that Expression (4) is satisfied.
  • control unit 215 of the robot control device 41-1 controls the data delay time in the buffer 212 in real time so that Expression (5) is satisfied.
  • the control unit 115 of the terminal device 21-1 makes the difference between the delay time LatMu of the transmission session P1 and the delay time LatNu of the transmission session P13 to be within a predetermined first time so that Expression (4) holds. Control the delay time. Further, so that Expression (5) is satisfied, the control unit 215 of the robot control device 41-1 has a difference between the delay time LatMr of the transmission session P3 and the delay time LatNr of the transmission session P11 within a predetermined second time. To control the delay time.
  • the predetermined first time and the predetermined second time are, for example, the maximum values of the time during which the user 11-1 does not interfere with the operation of the robot 31-1.
  • video data transmitted from the robot control device 41-1 to the terminal device 21-1 is transmitted in a larger amount than other media data (acoustic data, tactile data, etc.). It takes time.
  • the control unit 115 and the control unit 215 have a predetermined range in which a difference in round-trip delay time (RTT) between the user 11-1 side and the robot 31-1 side is within a predetermined range.
  • the delay time in the buffer 112 and the buffer 212 is controlled so as to be within the range (within a predetermined time).
  • the predetermined time is determined based on video data that requires the longest transmission time, and is, for example, 40 ms.
  • the control unit 115 and the control unit 215 may pass (pass through) the buffer 112 and the buffer 212 without giving the delay time for the data of the media whose delay time is within the predetermined time.
  • the terminal device 21 is configured to give a virtual feeling to the user 11-1.
  • the terminal device 21 causes the user 11-1 to visually recognize a virtual visual image generated by estimating an image visually recognized by the robot 31-1 as a virtual sensation.
  • the virtual sensation is not limited to virtual vision, but may be other sensations such as virtual auditory sense, virtual tactile sense, or virtual haptic sense.
  • FIG. 5 is a block diagram showing an image of a configuration for giving a virtual sense in the robot system 1 according to an embodiment of the present invention.
  • FIG. 5 shows the user 11-1 wearing the head device 311 and the like, and the virtual robot 711.
  • the virtual robot 711 is a robot that can provide a virtual feeling with the data stored in the buffer 112 of the terminal device 21-1, and includes a computer that virtually reproduces the situation of the robot 31-1.
  • the control unit 115 of the terminal device 21-1 operates as if data is being transmitted to the virtual robot 711.
  • the control unit 115 transmits the robot state information.
  • the sensation imparting unit 114 is controlled so as to impart a sensation based on this to the user 11-1 as the operator.
  • the control unit 115 gives the user 11-1 a sense based on the virtual state information indicating the estimated state of the robot 31-1.
  • the virtual state information includes data indicating vision, hearing, touch, and force.
  • FIG. 6A is a diagram for explaining the operation of the robot system 1 when the delay time is less than the predetermined time.
  • FIG. 6B is a diagram for explaining the operation of the robot system 1 when the delay time is longer than a predetermined time.
  • robot state information is given to the user 11-1 via the buffer 112 of the terminal device 21-1.
  • the terminal device 21-1 to the user 11-1 store, for example, the storage unit 151. Virtual state information is given to the user 11-1.
  • FIG. 6A when the delay time is small enough not to hinder the operation of the user 11-1, robot state information is given to the user 11-1 via the buffer 112 of the terminal device 21-1.
  • the terminal device 21-1 to the user 11-1 store, for example, the storage unit 151. Virtual state information is given to the user 11-1.
  • FIG. 6A is a diagram for explaining the operation of the robot system 1 when the delay time is less than the predetermined time.
  • FIG. 6B is a diagram for explaining the operation of the robot system 1 when the delay time is
  • control unit 115 senses that at least a part of virtual state information stored in the storage unit 151 corresponding to virtual robots in different states is given to the user 11-1.
  • the granting unit 114 is controlled. Specifically, the control unit 115 controls the sensation imparting unit 114 to impart a sensation based on virtual state information selected from a plurality of virtual state information based on the operator state information to the user 11-1.
  • the storage unit 151 stores a plurality of pieces of virtual state information including virtual images corresponding to images taken by the robots 31-1 in different states.
  • the virtual image is a captured image generated in advance by an imaging device attached to the visual device 411 included in the robot 31-1 or another equivalent robot, and the state of the robot at the time of imaging (for example, the position of each part of the robot). Is associated.
  • the control unit 115 determines the sensation based on the virtual state information including a virtual image corresponding to the position of the robot 31-1 specified based on the operation content indicated by the operator state information from among the plurality of virtual state information.
  • the sensation imparting unit 114 is controlled so as to be imparted.
  • the control unit 115 selects the state of the user 11-1 indicated by the previous operator state information and the user 11-1 indicated by the latest operator state information.
  • the state of the robot 31-1 after the operation by the user 11-1 is estimated based on the above state.
  • the control unit 115 selects one virtual state information corresponding to the estimated state of the robot 31-1. In this way, even if the robot state information transmitted from the robot control device 41-1 is delayed, the control unit 115 has a sense based on the virtual state information before the reception unit 132 receives the robot state information. It can be given to the operator. Therefore, the user 11-1 can easily operate the robot 31-1.
  • the control unit 115 extracts the image of the robot 31-1 included in the image as the robot state information provided to the user 11-1 immediately before, and replaces the extracted image with the image of the robot indicated by the virtual state information.
  • the image may be provided to the user 11-1.
  • the control unit 115 displays an image including an image of a virtual robot trying to grab the object to the user 11-1. Can be provided.
  • the control unit 115 may cause the storage unit 151 to store sensory history information indicating the content of the sensation based on the robot state information given to the sensation giving unit 114.
  • the control unit 115 uses the virtual state information used for giving a sense to the operator from a plurality of virtual state information based on the content of the sensation indicated by the sensation history information stored in the storage unit 151 immediately before. select.
  • the control unit 115 selects virtual state information in which the amount of change from the sense indicated by the sense history information stored immediately before is within a predetermined range. In this way, since the feeling given to the user 11-1 does not change abruptly, the terminal device 21-1 can prevent the user 11-1 from feeling uncomfortable.
  • the control unit 115 controls the sensation imparting unit 114 to impart a sensation based on the robot state information received by the receiving unit 132 to the user 11-1 after giving the sensation based on the virtual state information to the user 11-1. .
  • the control unit 115 indicates that the movement of the robot 31-1 within the delay time required from the transmission unit 131 transmitting the operator state information to the reception unit 132 receiving the robot state information is When it is determined that 11-1 is smaller than the perceivable amount, a sense based on the actual state of the robot 31-1 is given to the user 11-1.
  • the control unit 115 stops providing the first sensation based on the virtual state information, and adds the robot state information to the robot state information. It switches to grant of the 2nd sense based. In this way, when the movement of the robot 31-1 stops, the user 11-1 can grasp the actual state of the robot 31-1.
  • the state indicated by the virtual state information and the actual state of the robot 31-1 are not always completely the same. Therefore, when the provision of the first sense based on the virtual state information is stopped and the second sense based on the robot state information is started, the difference between the first sense and the second sense is large, and the user 11-1 feels uncomfortable. There is a case to hold. Therefore, the control unit 115 is between the first sense based on the virtual state information and the second sense based on the robot state information received by the receiving unit 132 after giving the user 11-1 a sense based on the virtual state information. When there is a difference greater than or equal to a predetermined size, the sensation providing unit 114 may be controlled so as to give the user 11-1 a sense of interpolating between the first sense and the second sense.
  • control unit 115 generates a plurality of virtual state information for interpolating between the first sense and the second sense, and controls the sense imparting unit 114 so as to gradually reach the second sense from the first sense.
  • the control unit 115 gradually increases the image of the fingertip of the robot 31-1 included in the position corresponding to the first sensation in the image provided to the user 11-1.
  • a plurality of virtual images are provided to the user 11-1 so as to move toward a position corresponding to the second sense. In this way, the control unit 115 can prevent the user 11-1 from feeling uncomfortable due to a sudden change in the given feeling.
  • the control unit 115 gives the user 11-1 a sense based on the robot state information, and the one or more accumulated in the buffer 112
  • the sense imparting unit 114 may be controlled so as to impart a sense based on the virtual state information to the user 11-1.
  • the control unit 115 may specify a cause of a delay from when the transmission unit 131 transmits the user 11-1 state information to when the reception unit 132 receives the robot state information. Based on the identified factor, the control unit 115 controls the sensation providing unit 114 so as to give the user 11-1 a sensation based on the virtual state information stored in the storage unit 151, or receives it via the network 51. It is determined whether to control the sensation imparting unit 114 so as to impart a sensation based on the virtual state information to the user 11-1.
  • the virtual state information received via the network 51 is, for example, a robot controller 41-1 that monitors the state of the robot 31-1, and generates virtual state information based on the state of the robot 31-1, or a server on the cloud Virtual state information provided from
  • the robot control device 41-1 or the server on the cloud is stored in the storage unit 151. It is considered that the virtual state information can be generated with higher accuracy than the virtual state information (that is, closer to the actual state of the robot 31-1). Therefore, the control unit 115 uses the virtual state information provided from the robot control device 41-1 or the server on the cloud when the delay time in the network 51 is equal to or less than the threshold value, so that the actual robot 31-1 A feeling close to the state can be given to the user 11-1.
  • control unit 115 of the terminal device 21-1 and the control unit 215 of the robot control device 41-1 communicate information on processing delay time on their own side via the network 51.
  • the processing delay time is the time from when the user 11-1 operates until the terminal device 21-1 transmits the operator status information, and after the robot 31-1 changes state, the robot control device 41-1 This is the time until the robot status information is transmitted.
  • the control unit 115 and the control unit 215 specify the value of the round-trip delay time RTT between the user 11-1 side and the robot 31-1 side based on the acquired other delay time. Based on the value of the specified delay time, the control unit 115 determines whether to give the user 11-1 a sense based on the virtual state information or to give the user 11-1 a sense based on the robot state information.
  • the robot system 1 may control the robot 31-1 based on the virtual operator state information generated by estimating the state of the user 11-1. For example, a delay time from when the transmission unit 131 of the terminal device 21-1 transmits the operator state information until the operator state information reaches the reception unit 231 of the robot control device 41-1 is greater than or equal to a predetermined threshold. In some cases, the control unit 215 of the robot control device 41-1 controls the robot 31-1 based on the virtual operator state information.
  • the virtual operator status information is information generated by, for example, estimating the latest status of the operator based on one or more previous operator status information. By doing so, the response of the robot 31-1 to the operation performed by the user 11-1 can be accelerated, and the operability is further improved.
  • the virtual operator state information used by the control unit 215 may be virtual operator state information selected from a plurality of virtual operator state information stored in the storage unit 251, and may be computer graphics (CG: CG). It may be virtual operator state information generated based on the model of the user 11-1 generated by Computer Graphics.
  • the second session from the robot control device 41-1 toward the terminal device 21-1 includes video data, acoustic data, and tactile data.
  • the delay time of the data of each medium may be different.
  • the delay time of video data is the longest.
  • the control unit 115 of the terminal device 21-1 and the control unit 215 of the robot control device 41-1 refer to the time information given to each image frame included in the video data with reference to the delay time. Use as a value.
  • control unit 215 of the robot control device 41-1 includes acoustic data and tactile data in each image frame for transmitting video data.
  • time information can be related also to the acoustic data and tactile data which are not provided with time information.
  • control unit 215 of the robot control device 41-1 may synchronize video data, acoustic data, and tactile data using a time stamp.
  • the control unit 215 of the robot control device 41-1 gives a time stamp indicating the time to the data or communication frame of each medium.
  • control unit 115 of the terminal device 21-1 and the control unit 215 of the robot control device 41-1 may use a clock signal supplied from a common clock source as a clock when referring to the time stamp.
  • a common clock source for example, one provided by a third party may be used, and provided by an arbitrary device (for example, a server that is a management device connected to the network 51) provided in the robot system 1. Things may be used.
  • FIG. 7 is a block diagram showing a schematic configuration of communication frames F1 to Fj (j is an integer of 2 or more) according to an embodiment of the present invention.
  • FIG. 7 shows a plurality of (j) consecutive communication frames F1 to Fj transmitted from the robot control device 41-1.
  • each of the communication frames F1 to Fj includes video data, imaged sound data, and imaged tactile data.
  • the video data includes, for example, left-eye video data and right-eye video data.
  • the acoustic data includes, for example, left ear acoustic data and right ear acoustic data.
  • the tactile data includes, for example, fingertip data.
  • each of the communication frames F1 to Fj information of serial numbers (frame numbers) that are consecutive in the order of transmission is included.
  • the terminal device 21-1 and the robot control device 41-1 can specify the timing of each of the communication frames F1 to Fj based on such serial number (frame number) information.
  • a communication packet may be used instead of the communication frame.
  • the control unit 115 and the control unit 215 respond to the fact that the timeout time has passed even if a part of the communication frames F1 to Fj is lost in the second session from the robot control device 41-1 to the terminal device 21-1. Thus, it is possible to discard data or perform retransmission control in units of communication frames including data of all media (video, sound, and touch).
  • the control unit 115 and the control unit 215 may retransmit the corresponding data when the delay time is equal to or smaller than the predetermined threshold, and discard the corresponding data when the delay time is larger than the predetermined threshold.
  • control unit 215 of the robot control device 41-1 can compensate for any intermediate data by interpolating the data using the data stored in the buffer 212.
  • the control unit 215 of the robot control device 41-1 can estimate and reproduce lost data based on other data that has not been lost, for example, even when some data has been lost. It is.
  • Such interpolation may be applied to any one or both of the data of the first session and the data of the second session, for example.
  • the robot system 1 can realize high-quality robot control by compensating for the delay using the buffer 112 and the buffer 212 in teleexistence.
  • the robot system 1 temporarily stores the operator state information and the robot state information in the buffer 112 and the buffer 212, so that the transmission unit 131 transmits the operator state information and the reception unit 132 receives the robot state information.
  • the amount of variation in delay time required for reception can be suppressed within a predetermined range. This makes it easier for the user 11-1 who uses the robot system 1 to operate the robot 31-1.
  • the robot system 1 is based on the virtual state information when the delay time required from the transmission unit 131 transmitting the operator state information to the reception unit 132 receiving the robot state information is longer than a predetermined time. A feeling is given to the user 11-1. Since the robot system 1 has such a configuration, even when the delay time of data transmission in the network 51 is long, a sense corresponding to the state of the robot 31-1 after the user 11-1 operates. Time to obtain can be shortened. As a result, the user 11-1 can comfortably control the robot 31-1.
  • the robot system 1 may control the delay time in each of the buffer 112 on the user 11-1 side and the buffer 212 on the robot 31-1 side in another manner.
  • the robot system 1 predetermines bi-directional data (first session data, second session data) in each of the buffer 112 on the user 11-1 side and the buffer 212 on the robot 31-1 side. It may be controlled to hold only the period and output the data every predetermined period.
  • the predetermined period is determined according to the medium having the longest delay time. In this example, the predetermined period is determined based on the delay time of the video data transmitted from the robot control device 41-1 to the terminal device 21-1. .
  • the number of users 11-1 to 11-n, the number of terminal devices 21-1 to 21-n, the number of robot control devices 41-1 to 41-n, and the number of robots 31-1 to 31-n are: , Each may be any number.
  • the number of users 11-1 to 11-n and the number of robots 31-1 to 31-n may be the same or different.
  • the configuration in which the terminal device 21-1 is provided with the control unit 115 that controls the buffer 112 and the delay time in the buffer 112 on the user 11-1 side is shown, but as another configuration example One or both of the buffer 112 and the delay time control function in the buffer 112 may be provided in a control device different from the terminal device 21-1.
  • the configuration in which the robot control device 41-1 is provided with the control unit 215 for controlling the delay time in the buffer 212 and the buffer 212 is shown on the robot 31-1 side. It is not limited to the configuration. As another configuration example, one or both of the buffer 212 and the delay time control function in the buffer 212 may be provided in a control device different from the terminal device 21-1.
  • the user 11-1 detects one or more data of video, sound, touch, etc. by the terminal device 21-1 and transmits it to the robot 31-1.
  • the robot control device 41-1 may receive the data and reproduce a sensation (sight, hearing, touch, etc.) based on the data.
  • the terminal device 21-1 for example, as the detection unit 111, a sensor (for example, an imaging device (camera)) that detects an image, a sensor (for example, a microphone) that detects sound, and a sensor (for example, a tactile sensor) , Pressure sensor).
  • the robot control device 41-1 includes a sensory reproduction unit that reproduces a sensory sense based on data such as video, sound, and touch received from the terminal device 21-1.
  • the function of the sensory reproduction unit may be provided in the robot drive unit 213, for example, or may be provided separately from the robot drive unit 213. A part or all of the functions of the sensory reproduction unit may be attached to the robot 31-1.
  • the sensory reproduction unit in this case is, for example, an image display that reproduces an image, a speaker that reproduces sound, a generator (motion generator) such as a pressure that reproduces a tactile sense, and the like.
  • a plurality of users may control one common robot.
  • the terminal devices 21-1 to 21-3 of the three users 11-1 to 11-3 control the robot 31-1 by communicating with the robot control device 41-1 in a time division manner.
  • the robot 31-1 has a plurality of movable parts, and the three users 11-1 to 11-3 each control different movable parts.
  • the plurality of movable parts are, for example, a plurality of arms.
  • FIG. 8 is a block diagram showing a schematic configuration of time-division communication frames Z1 to Z6 according to an embodiment of the present invention.
  • FIG. 8 shows a plurality of continuous communication frames Z1 to Z6.
  • the terminal device 21-1 of the first user 11-1 communicates with the robot control device 41-1 using the first communication frame Z1.
  • the terminal device 21-2 of the second user 11-2 communicates with the robot control device 41-1 using the second communication frame Z2.
  • the terminal device 21-3 of the third user 11-3 communicates with the robot control device 41-3 using the third communication frame Z3.
  • the plurality of terminal devices 21-1 to 21-3 communicate with the common robot control device 41-1 in a time-sharing manner, thereby controlling the common robot 31-1.
  • one user may control a plurality of robots.
  • a case where one user 11-1 controls three robots 31-1 to 31-3 is shown.
  • the terminal device 21-1 of one user 11-1 communicates with the three robot control devices 41-1 to 41-3 in a time-sharing manner, so that the three robots 31-1 to 31-31. -3 is controlled.
  • the terminal device 21-1 of one user 11-1 communicates with the robot control device 41-1 of the first robot 31-1 using the first communication frame Z1.
  • the terminal device 21-1 communicates with the robot control device 41-2 of the second robot 31-2 using the second communication frame Z2.
  • the terminal device 21-1 communicates with the robot control device 41-3 of the third robot 31-3 using the third communication frame Z3.
  • one terminal device 21-1 communicates with the plurality of robot control devices 41-1 to 41-3 in a time-sharing manner, thereby controlling the plurality of robots 31-1 to 31-3.
  • the robot system 1 may further include a management device connected to the terminal devices 21-1 to 21-n and the robot control devices 41-1 to 41-n via the network 51.
  • the management device is, for example, a server.
  • the management device 61 is connected to the network 51 and relays communication performed between the terminal devices 21-1 to 21-n and the robot control devices 41-1 to 41-n. That is, the management device 61 receives signals transmitted from the terminal devices 21-1 to 21-n to the network 51, transmits the signals to the destination robot control devices 41-1 to 41-n, and Then, a signal transmitted from the robot control device 41-1 to 41-n to the network 51 is received, and the signal is transmitted to the destination terminal device 21-1 to 21-n.
  • the robot system 1 includes the management device 61 on the cloud, and manages communication performed between the terminal devices 21-1 to 21-n and the robot control devices 41-1 to 41-n. Also good.
  • the management device 61 stores information on the addresses of the corresponding terminal devices 21-1 to 21-n and robot control devices 41-1 to 41-n, and based on the information on the addresses, Relay signals communicated between the two.
  • the management device 61 may have a machine learning function, and may correct operations for the users 11-1 to 11-n to control the robots 31-1 to 31-n based on the results of machine learning.
  • the terminal device 21-1 has a function of adjusting the buffer 112 and the delay time of data in the buffer 112. Also, the robot control device 41-1 has a function of adjusting the buffer 212 and the data delay time in the buffer 212. Any one or both of these two functions may be provided in the management device 61.
  • the management device 61 includes a buffer 112 and a function for adjusting the data delay time in the buffer 112 (in this example, for convenience of explanation, it is referred to as function C1). Good. In this case, the terminal device 21-1 may not have such a function C1.
  • the management device 61 adjusts a buffer 212 and a function for adjusting a data delay time in the buffer 212 (in this example, for convenience of explanation, it is referred to as a function C2). You may prepare. In this case, the robot control device 41-1 does not have to include such a function C2.
  • the management device 61 may include both the function C1 and the function C2.
  • the management device 61 includes the function C1 or the function C2.
  • a data communication delay from the terminal device 21-1 to the robot control device 41-1 via the network 51 is a data communication delay from the robot control device 41-1 to the terminal device 21-1. If smaller than that, a configuration in which the terminal device 21-1 includes the function C1 and the management device 61 includes the function C2 may be used.
  • FIG. 9 is a diagram showing a management device 61 capable of communicating with the terminal device 21-1 and the robot control device 41-1 via the network 51.
  • the management device 61 includes a delay specifying unit 611 and a notification unit 612. Based on the time when the operator status information is received from the terminal device 21-1, and the time when the robot status information is received from the robot control device 41-1, the delay specifying unit 611 determines that the operation status information The delay time from when the robot is transmitted until the robot state information is received is specified.
  • the notification unit 612 notifies the control unit 115 of the terminal device 21-1 of the delay time specified by the delay specification unit 611.
  • the control unit 115 may determine to give the user 11-1 a sense based on the virtual state information based on an instruction from the management device.
  • the delay specifying unit 611 of the management device specifies the factor causing the delay time
  • the notifying unit 612 is a terminal device when the factor specified by the delay specifying unit 611 is a transmission delay of the network 51.
  • 21-1 is instructed to give the user 11-1 a sense based on the virtual state information.
  • the control unit 115 controls the sense imparting unit 114 so as to impart a sense based on the virtual state information to the user 11-1.
  • control unit 115 gives a sense based on the virtual state information based on an instruction from the management apparatus, and thus based on information more suitable for the delay state of the network 51 out of the virtual state information or the robot state information. A feeling can be imparted.
  • FIG. 10 is a diagram showing the robot system 1 in which the robot control device 41-1 provides virtual state information to the user 11-1.
  • the robot control device 41-1 provides the terminal device 21-1 with virtual state information selected from a plurality of virtual state information stored in the storage unit 251. Since the robot system 1 has such a configuration, even if the terminal device 21-1 does not store the virtual state information, the terminal device 21-1 gives a sense based on the virtual state information to the user 11-1. Can be granted.
  • a terminal device (terminal devices 21-1 to 21-n in the example of FIG. 1) sends data related to users (users 11-1 to 11-n in the example of FIG. 1) to a network ( In the example of FIG. 1, the data is transmitted to the robot control device (in the example of FIG. 1, the robot control devices 41-1 to 41-n) via the network 51). Then, the robot control device controls the robot (the robots 31-1 to 31-n in the example of FIG. 1) based on the data.
  • the robot control device transmits data related to the robot to the terminal device via the network, and the terminal device gives the user a sense based on the data.
  • At least one of the terminal device and the robot control device includes a buffer for storing at least one of transmission target data and received data (buffers 112 and 212 in the examples of FIGS. 2 and 3), and a buffer.
  • a control unit control units 115 and 215 in the examples of FIGS. 2 and 3) for controlling the delay time of stored data. Since the robot system 1 has such a configuration, the robot system 1 can adjust the data transmission delay so as not to hinder the user's operation of the robot. Can be improved.
  • the control unit when transmitting the transmission target data and the received data, sets a predetermined transmission delay time between the network and the user or between the network and the robot within a predetermined range. Control.
  • the data related to the user includes data related to the movement of the user
  • the data related to the robot includes image data, acoustic data, and tactile data in the robot
  • the robot control device includes image data, acoustic data, and tactile data.
  • data is interpolated using data stored in the buffer for at least one of the terminal device and the robot control device.
  • the terminal device gives a user a sense based on the robot state information when a delay time required from receiving the operator state information to receiving the robot state information is a predetermined time or less, When the delay time is longer than a predetermined time, the user is given a sense based on virtual state information indicating the estimated state of the robot.
  • the terminal device By operating the terminal device in this way, even when the delay time is long, the user can quickly have a sense corresponding to the state of the robot, so that the operability is improved.
  • a computer-readable recording medium for realizing the function of each device for example, terminal devices 21-1 to 21-n or robot control devices 41-1 to 41-n
  • Processing may be performed by recording the program in a (storage medium), causing the computer system to read and execute the program recorded in the recording medium.
  • the “computer system” here may include an operating system (OS) or hardware such as a peripheral device.
  • the “computer-readable recording medium” is a writable nonvolatile memory such as a flexible disk, a magneto-optical disk, a ROM, or a flash memory, a portable medium such as a DVD (Digital Versatile Disc), and a built-in computer system.
  • a storage device such as a hard disk.
  • the recording medium may be, for example, a recording medium that can be attached to and detached from a computer.
  • the recording medium may be a recording medium that temporarily records data, for example.
  • the “computer-readable recording medium” refers to a volatile memory (for example, DRAM (DRAM) inside a computer system that becomes a server or a client when a program is transmitted through a network such as the Internet or a communication line such as a telephone line. (Such as Dynamic Random Access Memory)).
  • DRAM Dynamic Random Access Memory
  • the above program may be transmitted from a computer system storing the program in a storage device or the like to another computer system via a transmission medium or by a transmission wave in the transmission medium.
  • the “transmission medium” for transmitting the program refers to a medium having a function of transmitting information, such as a network (communication network) such as the Internet or a communication line (communication line) such as a telephone line.
  • the above program may be for realizing a part of the functions described above. Further, the above program may be a so-called difference file (difference program) that can realize the above-described functions in combination with a program already recorded in the computer system.
  • difference file difference program
  • Body device 331 ... visual part, 332-1 to 332-2 ... acoustic part, 411 ... visual equipment, 412-1 to 412-2 ... acoustic equipment, 711 ... virtual robot, F1 to Fj, Z1 to Z6 ... communication frame, P1 to P3, P 1 ⁇ P13 ... transmission session

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Human Computer Interaction (AREA)
  • Manipulator (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

端末装置21は、ロボットを操作するユーザ11の状態を示す操作者状態情報をロボットに向けて送信する送信部131と、ロボットの状態を示すロボット状態情報をロボットから受信する受信部132と、ユーザ11に所定の感覚を付与する感覚付与部114と、送信部131が操作者状態情報を送信してから受信部132がロボット状態情報を受信するまでに要する遅延時間が所定の時間以下である場合に、ロボット状態情報に基づく感覚をユーザ11に付与するように感覚付与部114を制御し、遅延時間が所定の時間よりも長い場合に、推定されたロボットの状態を示す仮想状態情報に基づく感覚をユーザ11に付与するように感覚付与部114を制御する制御部115と、を有する。

Description

感覚付与装置、ロボット制御システム、ロボット制御方法及びプログラム
 本発明は、感覚付与装置、ロボット制御システム、ロボット制御方法及びプログラムに関する。
 バーチャルリアリティの一分野として、テレイグジスタンス(Telexistence)が知られている。テレイグジスタンスは、人に遠隔臨場感又は遠隔存在感を抱かせる技術であるとも言われる。テレイグジスタンスは、遠隔地にある物又は人が近くにあるかのようにユーザに感じさせながら、ユーザにより物又は人に対する操作をリアルタイムに行う環境を提供する。
 ネットワークを介してテレイグジスタンスによりリアルタイムにロボットを操作するためには、高速なネットワークが必要であり、ネットワークにはレイテンシー(latency)が非常に低いこと及びデータの消失が生じないことが求められる。しかしながら、データが伝送されるネットワークによっては、伝送遅延が発生したりデータの消失が発生したりする場合がある。
 転送されるデータが一方向に伝送され、かつ転送されるデータが1つのデータである場合には、動的にレートを制御するストリーミングのアルゴリズムを使用して、そのデータ及びストリームをバッファに一時的に記憶させることで、伝送遅延及びデータの消失の影響を軽減できる。また、WebRTC(Web Real-Time Communication)又はHLS(HTTP Live Streaming)といったストリーミングのプロトコルを用いることで、高品質な音響及び映像のメディアを同期して一方向に送信することが可能である。
特公昭62-29196号公報
Charith Lasantha Fernando, Masahiro Furukawa, Tadatoshi Kurogi, Sho Kamuro, Katsunari Sato, Kouta Minamizawa and Susumu Tachi,"Design of TELESAR V for Transferring Bodily Consciousness in Telexistence", 2012 IEEE/RSJ International Conference on Intelligent Robots and Systems(Portugal), October 7-12, 2012.
 テレイグジスタンスにおいては、ユーザがあたかもロボットの中にいるかのような感覚でロボットを操作できるようにするために、インターネット上の複数のエンドポイントの間で、複数のストリーミングのメディアを双方向に同期して送信又は受信することが要求される。複数のメディアは、例えば、動きのデータ、音響、映像、又は触覚を示すデータなどである。
 従来の技術では、テレイグジスタンスにおいて、ロボットの操作者が操作を行ってからロボットが動作するまでに遅延が生じた場合、ロボットの制御が困難になる場合があった。例えば、遅延が大きいと、操作者が想定している状況と、ロボットに設けられた撮像装置を介して操作者が視認する状況とが一致していないことで、操作者にめまいが生じてしまい、操作者がロボットの制御を継続することが困難になってしまう。遅延は、例えば、ネットワークを介したデータ通信において発生する遅延、データのエンコード及びデコードの処理が行われることによって発生する遅延、データについてA/D(Analog to Digital)変換の処理が行われることによって発生する遅延(例えば、サンプリングによる遅延)、機械的な遅延(メカ的な遅延)などである。
 本発明は、このような事情を考慮してなされたものであり、テレイグジスタンスにおける操作性を向上させことができる感覚付与装置、ロボット制御システム及びロボット制御方法を提供することを課題とする。
 本発明の第1の態様の感覚付与装置は、ロボットを操作する操作者の状態を示す操作者状態情報を前記ロボットに向けて送信する送信部と、前記ロボットの状態を示すロボット状態情報を前記ロボットから受信する受信部と、前記操作者に所定の感覚を付与する感覚付与部と、前記送信部が前記操作者状態情報を送信してから前記受信部が前記ロボット状態情報を受信するまでに要する遅延時間が所定の時間以下である場合に、前記ロボット状態情報に基づく感覚を前記操作者に付与するように前記感覚付与部を制御し、前記遅延時間が前記所定の時間よりも長い場合に、推定された前記ロボットの状態を示す仮想状態情報に基づく感覚を前記操作者に付与するように前記感覚付与部を制御する制御部と、を有する。
 前記制御部は、前記仮想状態情報に基づく感覚を前記操作者に付与した後に、前記受信部が受信した前記ロボット状態情報に基づく感覚を前記操作者に付与するように前記感覚付与部を制御してもよい。
 前記制御部は、前記仮想状態情報に基づく第1感覚と、前記仮想状態情報に基づく感覚を前記操作者に付与した後に前記受信部が受信した前記ロボット状態情報に基づく第2感覚との間に所定の大きさ以上の差がある場合、前記第1感覚と前記第2感覚との間を補間する感覚を前記操作者に付与するように前記感覚付与部を制御してもよい。
 前記受信部が受信した一以上の前記ロボット状態情報を一時的に記憶した後に、前記一以上のロボット状態情報を順次、前記感覚付与部に出力するバッファ部をさらに有し、前記制御部は、前記バッファ部に蓄積された前記一以上のロボット状態情報の量が閾値未満になった場合に、仮想状態情報に基づく感覚を前記操作者に付与するように前記感覚付与部を制御してもよい。
 前記受信部が受信した一以上の前記ロボット状態情報を一時的に記憶した後に、前記一以上のロボット状態情報を順次、前記感覚付与部に出力するバッファ部をさらに有し、前記制御部は、前記送信部が前記操作者状態情報を送信してから前記受信部が前記ロボット状態情報を受信するまでに要する遅延時間の変動量が所定の範囲内に収まるように、前記バッファ部に一時的に記憶する前記ロボット状態情報の量を制御してもよい。
 前記制御部は、それぞれ異なる状態の前記ロボットに対応する複数の前記仮想状態情報を記憶する記憶部を有し、前記操作者状態情報に基づいて前記複数の仮想状態情報から選択した仮想状態情報に基づく感覚を前記操作者に付与するように前記感覚付与部を制御してもよい。
 前記記憶部は、それぞれ異なる状態の前記ロボットが撮影した画像に相当する仮想画像を含む前記複数の仮想状態情報を記憶し、前記制御部は、前記複数の仮想状態情報のうち、前記操作者状態情報が示す操作内容に基づいて特定される前記ロボットの位置に対応する前記仮想画像が含まれる仮想状態情報に基づく感覚を前記操作者に付与するように前記感覚付与部を制御してもよい。
 前記制御部は、前記複数の仮想状態情報から一の仮想状態情報を選択するために、直前の前記操作者状態情報が示す前記操作者の状態と、最新の前記操作者状態情報が示す前記操作者の状態とに基づいて、前記操作者が操作をした後に前記ロボットがどのような状態になっているかを推定し、推定した前記ロボットの状態に対応する一の仮想状態情報を選択してもよい。
 前記制御部は、前記感覚付与部に付与させた前記ロボット状態情報に基づく感覚の内容を示す感覚履歴情報を前記記憶部に記憶させ、直前に記憶させた前記感覚履歴情報が示す感覚の内容に基づいて、前記複数の仮想状態情報から、前記操作者に感覚を付与するために用いる仮想状態情報を選択してもよい。
 前記制御部は、前記送信部が前記操作者状態情報を送信してから前記受信部が前記ロボット状態情報を受信するまでの遅延の要因を特定し、特定した前記要因に基づいて、前記記憶部に記憶された前記仮想状態情報に基づく感覚を前記操作者に付与するように前記感覚付与部を制御するか、ネットワークを介して受信した前記仮想状態情報に基づく感覚を前記操作者に付与するように前記感覚付与部を制御するかを決定してもよい。
 本発明の第2の態様のロボット制御システムは、ロボットを操作する操作者の状態を示す操作者状態情報をネットワークに送信する感覚付与装置と、前記ネットワークを介して受信した前記操作者状態情報に基づいて前記ロボットを制御するロボット制御装置と、前記ネットワークを介してロボット制御装置及び前記感覚付与装置と通信可能な管理装置と、を備える。前記感覚付与装置は、ロボットを操作する操作者の状態を示す操作者状態情報を前記ロボットに向けて送信する送信部と、前記ロボットの状態を示すロボット状態情報を前記ロボットから受信する受信部と、前記操作者に所定の感覚を付与する感覚付与部と、前記送信部が前記操作者状態情報を送信してから前記受信部が前記ロボット状態情報を受信するまでに要する遅延時間が所定の時間以下である場合に、前記ロボット状態情報に基づく感覚を前記操作者に付与するように前記感覚付与部を制御し、前記遅延時間が前記所定の時間よりも長い場合に、推定された前記ロボットの状態を示す仮想状態情報に基づく感覚を前記操作者に付与するように前記感覚付与部を制御する制御部と、を有する。前記管理装置は、前記遅延時間を特定する遅延特定部と、前記遅延特定部が特定した前記遅延時間を前記制御部に通知する通知部と、を有する。
 前記遅延特定部は、前記遅延時間が発生している要因を特定し、前記通知部は、前記遅延特定部が特定した前記要因が前記ネットワークの伝送遅延である場合に、前記感覚付与装置に対して、前記仮想状態情報に基づく感覚を前記操作者に付与するように指示し、前記感覚付与装置の前記制御部は、前記仮想状態情報に基づく感覚を前記操作者に付与するように前記感覚付与部を制御してもよい。
 前記通知部は、前記遅延特定部が特定した前記要因が前記ロボットの動作遅延である場合に、前記ロボット制御装置に対して、仮想状態情報を前記感覚付与装置に送信するように指示し、前記感覚付与装置の前記制御部は、前記ロボット制御装置から受信した前記仮想状態情報に基づく感覚を前記操作者に付与するように前記感覚付与部を制御してもよい。
 本発明の第3の態様のロボット制御方法は、コンピュータが実行する、ロボットを操作する操作者の状態を示す操作者状態情報を前記ロボットに向けて送信するステップと、前記操作者状態情報を送信してから前記ロボットの状態を示すロボット状態情報を受信するまでに要する遅延時間が所定の時間以下であるか否かを判定するステップと、前記遅延時間が前記所定の時間以下である場合に、前記ロボット状態情報に基づく感覚を前記操作者に付与し、前記遅延時間が前記所定の時間よりも長い場合に、推定された前記ロボットの状態を示す仮想状態情報に基づく感覚を前記操作者に付与するステップと、を有する。
 本発明の第4の態様のプログラムは、コンピュータに、ロボットを操作する操作者の状態を示す操作者状態情報を前記ロボットに向けて送信するステップと、前記操作者状態情報を送信してから前記ロボットの状態を示すロボット状態情報を受信するまでに要する遅延時間が所定の時間以下であるか否かを判定するステップと、前記遅延時間が前記所定の時間以下である場合に、前記ロボット状態情報に基づく感覚を前記操作者に付与し、前記遅延時間が前記所定の時間よりも長い場合に、推定された前記ロボットの状態を示す仮想状態情報に基づく感覚を前記操作者に付与するステップと、を実行させる。
 本発明によれば、テレイグジスタンスにおける操作性を向上させることができる。
本発明の一実施形態に係るロボットシステムの概略的な構成を示すブロック図である。 本発明の一実施形態に係る端末装置の概略的な構成を示すブロック図である。 本発明の一実施形態に係るロボット制御装置の概略的な構成を示すブロック図である。 本発明の一実施形態に係る端末装置及びロボット制御装置におけるバッファによる遅延時間の調整方法を説明するための図である。 本発明の一実施形態に係るロボットシステムにおける仮想的なロボットのイメージを示すブロック図である。 本発明の一実施形態に係るロボットシステムにおいて提供される仮想状態情報について説明するための図である。 本発明の一実施形態に係るロボットシステムにおいて提供される仮想状態情報について説明するための図である。 本発明の一実施形態に係る通信フレームの概略的な構成を示すブロック図である。 本発明の一実施形態に係る時分割の通信フレームの概略的な構成を示すブロック図である。 ネットワークを介して端末装置及びロボット制御装置と通信可能な管理装置を示す図である。 本発明の一実施形態に係るロボットシステムにおいて提供される仮想状態情報について説明するための図である。
 以下、図面を参照し、本発明の実施形態について説明する。
 [ロボットシステムの概要]
 図1は、本発明の一実施形態に係るロボットシステム1の概略的な構成を示すブロック図である。
 ロボットシステム1は、n(nは2以上の整数であるとする。)個の端末装置21-1~21-nと、n個のロボット31-1~31-nと、n個のロボット制御装置41-1~41-nと、ネットワーク51と、を備える。ネットワーク51は、例えば、インターネットであるが、他の任意のネットワークであってもよい。ネットワーク51は、例えば、有線のネットワークが用いられてもよく、無線のネットワークが用いられてもよく、又は、有線と無線の両方を含むネットワークが用いられてもよい。
 図1には、n人のユーザ11-1~11-nと、n個のロボット31-1~31-n(nは1以上の整数)を示している。ロボット31-1~31-nのそれぞれは、例えば、全体が人型のロボット、又は、部分的に人型のロボットである。部分的に人型のロボットは、例えば、上半身の部分、下半身の部分、又は腕の部分などのように、全体の一部分が人型であり、他の部分が人型ではないロボットである。ロボット31-1~31-nのそれぞれは、他の任意の形態のロボットであってもよい。なお、ロボット31-1~31-nは、例えば、ROS(Robot Operating System)の機能を有してもよい。
 ここで、図1の例では、それぞれのユーザ11-1~11-nと、それぞれの端末装置21-1~21-nと、が対応付けられている。また、図1の例では、それぞれのロボット31-1~31-nと、それぞれのロボット制御装置41-1~41-nと、が対応付けられている。また、図1の例では、それぞれの端末装置21-1~21-nと、それぞれのロボット制御装置41-1~41-nと、が対応付けられている。このように、図1の例では、1人のユーザ11-i(iは1以上n以下の任意の整数であるとする。)と、1個の端末装置21-iと、1個のロボット31-iと、1個のロボット制御装置41-iとが対応付けられている。
 本実施形態では、n個の端末装置21-1~21-nは同等の機能を有しており、n個のロボット制御装置41-1~41-nは同等の機能を有しており、n個のロボット31-1~31-nは同等の機能を有している。また、n人のユーザ11-1~11-nは、それぞれ異なる人であるが、対応するそれぞれのロボット31-1~31-nを操作するという点では同等の機能を有している。このため、以下では、1人のユーザ11-1、1個の端末装置21-1、1個のロボット31-1、及び1個のロボット制御装置41-1の組み合わせを例として説明する。
[端末装置の概要]
 図2は、本発明の一実施形態に係る端末装置21-1の概略的な構成を示すブロック図である。端末装置21-1は、ユーザ11-1の状態を検出するとともに、ユーザ11-1に対して各種の感覚を付与する感覚付与装置として機能する。端末装置21-1がユーザ11-1に付与する感覚は任意であるが、例えば視覚、聴覚、触覚、又は力覚である。端末装置21-1は、ロボット制御装置41-1を介して取得したロボット31-1の状態に基づく感覚をユーザ11-1に付与する。
 端末装置21-1は、検出部111と、バッファ112と、通信部113と、感覚付与部114と、制御部115を備える。通信部113は、送信部131と、受信部132を備える。制御部115は、ROM(Read Only Memory)及びRAM(Random Access Memory)を含む記憶部151を備える。
 検出部111は、ユーザ11-1の状態を検出する。検出部111により検出される状態は、例えば、ユーザ11-1の指の動き、ユーザ11-1の胴体の動き、又はユーザの目(例えば、視線)の動きである。
 検出部111は、例えば、検出対象の状態を検出するセンサーを有する。一例として、検出部111は、頭部用のセンサー、指部用のセンサー、及び胴部用のセンサーを備える。頭部用のセンサーは、例えば、ユーザ11-1に対して映像及び音響を提供するヘッドマウントディスプレイに備えられている。ヘッドマウントディスプレイは、例えば、ユーザの目(例えば、視線)の動きを検出するセンサーを有する。当該センサーは、左目の動きと右目の動きとを別々に検出してもよい。
 センサーは、例えば、ユーザ11-1に装着されるセンサー形態のセンサーであるが、ユーザ11-1に装着されない形態のセンサーであってもよい。ユーザ11-1に装着されない形態のセンサーは、例えば、ユーザ11-1の一部又は全部の画像(例えば映像)を撮像する撮像装置(例えばカメラ)である。
 バッファ112は、データを一時的に記憶するメモリである。本実施形態では、バッファ112は、送信部131による送信対象のデータを一時的に記憶する機能と、受信部132により受信されたデータを一時的に記憶する機能を有している。なお、これら2つの機能のそれぞれに対して異なるバッファが備えられてもよい。バッファ112は、受信部132が受信した一以上のロボット状態情報を一時的に記憶した後に、一以上のロボット状態情報を順次、感覚付与部114に出力する。ロボット状態情報は、ロボット31-1の状態を示す情報であり、例えば、ロボット31-1が撮影した画像、ロボット31-1が検出した圧力、又はロボット31-1が検出した温度を示す情報である。
 また、バッファ112は、検出部111が検出した操作者の状態を示す操作者状態情報を一時的に記憶した後に、一以上の操作者状態情報を順次、送信部131に出力する。操作者状態情報は、例えば、ユーザ11-1が身体に装着したセンサーを用いて検出されたユーザ11-1の身体の位置を示す情報である。
 通信部113は、端末装置21-1に対応するロボット制御装置41-1との間で通信する。通信部113は、ネットワーク51を介してロボット制御装置41-1との間で通信する。また、通信部113は、WebRTCにより通信する。通信部113は、WebRTCにより、例えば、低遅延で、ハイフレームレートで通信することが可能である。
 送信部131は、バッファ112からロボット31-1を操作するユーザ11-1の状態を示す操作者状態情報を取得し、取得した操作者状態情報をロボット31-1に向けて送信する。具体的には、送信部131は、操作者状態情報を含む送信対象のデータをロボット制御装置41-1に送信する。
 受信部132は、ロボット制御装置41-1から送信されたデータとして、ロボット31-1の状態を示すロボット状態情報を受信する。受信部132は、受信したロボット状態情報をバッファ112に入力する。
 感覚付与部114は、受信部132により受信されたロボット状態情報に基づく感覚をユーザ11-1に与える。すなわち、感覚付与部114は、受信部132が受信したロボット31-1の状態を示すロボット状態情報に対応する感覚をユーザ11-1に付与する。
 感覚付与部114は、例えば、ユーザ11-1に感覚を付与する機器を有する。一例として、感覚付与部114は、ユーザ11-1に視覚を付与するために映像(Video)を表示する映像表示器、ユーザ11-1に聴覚を付与するために音響(Audio)を出力するスピーカー、ユーザ11-1に触覚(Haptics)を付与するために圧力又は振動を発生させる動作発生器を備えてもよい。映像表示器及びスピーカーは、例えば、頭部の機器(例えば、ヘッドマウントディスプレイ)に備えられる。ユーザ11-1に感覚を付与する機器は、ユーザ11-1に装着される機器であってもよく、ユーザ11-1に装着されない機器であってもよい。検出部111と感覚付与部114は、一部又は全部が同一の機器に含まれていてもよい。
 制御部115は、端末装置21-1における各種の制御を行う。制御部115は、例えば、CPU(Central Processing Unit)、及びデータを記憶する記憶部151を備える。制御部115は、例えば、記憶部151に記憶されたパラメーターを使用して、記憶部151に記憶されたプログラムを実行することで、各種の制御を行う。
 本実施形態では、制御部115は、送信対象のデータをバッファ112により一時的に記憶する時間の長さを調整することが可能であり、また、受信されたデータをバッファ112により一時的に記憶する時間の長さを調整することが可能である。
 ここで、端末装置21-1は、複数の機器から構成されてもよく、例えば、図2に示される検出部111、バッファ112、通信部113、感覚付与部114及び制御部115を2個以上の機器に分散して備えてもよい。また、送信部131と受信部132とが別の機器に備えられてもよい。一例として、端末装置21-1は、検出部111を備える機器と、感覚付与部114を備える機器と、バッファ112と通信部113と制御部115を備える機器を用いて構成されてもよい。また、検出部111を備える機器と、感覚付与部114を備える機器とは、一部又は全部が一体化されてもよい。
[ロボット制御装置の概要]
 図3は、本発明の一実施形態に係るロボット制御装置41-1の概略的な構成を示すブロック図である。ロボット制御装置41-1は、通信部211と、バッファ212と、ロボット駆動部213と、検出部214と、制御部215と、を備える。通信部211は、受信部231と、送信部232と、を備える。制御部215は、CPUと、ROM及びRAMを含む記憶部251と、を備える。
 通信部211は、ロボット制御装置41-1に対応する端末装置21-1との間で通信する。本実施形態では、通信部211はネットワーク51を介して通信する。通信部211は、例えばWebRTCにより通信する。受信部231は、端末装置21-1から送信された操作者状態情報等のデータを受信する。送信部232は、送信対象のロボット状態情報等のデータを端末装置21-1に送信する。
 バッファ212は、データを一時的に記憶するメモリである。本実施形態では、バッファ212は、送信部232による送信対象のロボット状態情報を一時的に記憶する機能と、受信部231により受信された操作者状態情報を一時的に記憶する機能を有している。なお、バッファ212は、これら2つの機能のそれぞれに対して異なるバッファを有してもよい。
 ロボット駆動部213は、端末装置21-1から受信された操作者状態情報に基づいて、ロボット制御装置41-1に対応するロボット31-1の駆動部を駆動させる。ここで、ロボット31-1の駆動部は、例えば、頭部を駆動させる駆動部、指部を駆動させる駆動部、又は胴部を駆動させる駆動部である。
 検出部214は、ロボット31-1の動きを検出する。検出部214が検出する動きは、例えば、ロボット31-1の指の動き、ロボット31-1の胴体の動き、又はロボット31-1の目(例えば、視線)の動きである。
 検出部214は、例えば、検出対象の状態を検出するセンサーを有する。一例として、検出部214は、頭部用のセンサー、指部用のセンサー、胴部用のセンサーを備える。頭部用のセンサーは、例えば、映像を撮像する撮像装置(カメラ)、又は音響を入力するマイクである。検出部214は、例えば、左目に対応する映像と右目に対応する映像とを別々に処理してもよい。
 センサーは、ロボット31-1に装着される形態のセンサーであってもよく、ロボット31-1に装着されない形態のセンサーであってもよい。ロボット31-1に装着されない形態のセンサーは、例えば、ロボット31-1の付近に設置されて、画像(例えば、映像)を撮像する撮像装置である。各種のデータは、例えば、A/D変換を用いたサンプリングにより取り込まれる。本実施形態では、検出部214により検出されたデータが、送信対象のロボット状態情報となる。なお、ロボット駆動部213と検出部214は、例えば、一部又は全部が共通の機器であってもよい。
 制御部215は、ロボット制御装置41-1における各種の制御を行う。制御部215は、例えば、CPUと、データを記憶する記憶部251と、を備える。制御部215は、例えば記憶部251に記憶されたパラメーターを使用して、記憶部251に記憶されたプログラムを実行することで、各種の制御を行う。本実施形態では、制御部215は、送信対象のロボット状態情報等のデータをバッファ212に一時的に記憶する時間の長さを調整することが可能であり、また、受信された操作者状態情報等のデータをバッファ212に一時的に記憶する時間の長さを調整することが可能である。
 ここで、ロボット制御装置41-1は複数の機器から構成されてもよく、例えば、図3に示される通信部211、バッファ212、ロボット駆動部213、検出部214、及び制御部215が2個以上の機器に分散されて備えられてもよい。また、受信部231と送信部232とが別の機器に備えられてもよい。一例として、ロボット制御装置41-1は、ロボット駆動部213を備える機器と、検出部214を備える機器と、通信部211とバッファ212と制御部215を備える機器を用いて構成されてもよい。また、ロボット駆動部213を備える機器と、検出部214を備える機器とは、一部又は全部が一体化されてもよい。
[端末装置及びロボット制御装置における動作の概要]
 端末装置21-1は、ユーザ11-1の状態を検出部111により検出し、検出されたデータを含む操作者状態情報を、ネットワーク51を介してロボット制御装置41-1に送信する。ロボット制御装置41-1は、端末装置21-1から送信された操作者状態情報をネットワーク51を介して受信し、受信された操作者状態情報に基づいてロボット駆動部213によりロボット31-1を駆動させる。ロボット31-1は、ロボット制御装置41-1のロボット駆動部213により駆動されて動作する。
 ロボット制御装置41-1は、ロボット31-1の状態を検出部214により検出し、検出されたデータを含むロボット状態情報を、ネットワーク51を介して端末装置21-1に送信する。端末装置21-1は、ロボット制御装置41-1から送信されたロボット状態情報をネットワーク51を介して受信し、受信されたロボット状態情報に基づいて感覚付与部114によりユーザ11-1に対して感覚を付与する。
 ここで、本実施形態では、ユーザ11-1により使用される前に、又はユーザ11-1により使用される際に、端末装置21-1とロボット制御装置41-1とが対応付けられる。端末装置21-1には自装置(当該端末装置21-1)に対応するロボット制御装置41-1のアドレスの情報が記憶され、ロボット制御装置41-1には自装置(当該ロボット制御装置41-1)に対応する端末装置21-1のアドレスの情報が記憶される。そして、互いに対応する端末装置21-1とロボット制御装置41-1が、記憶されたアドレスの情報を使用して、例えば当該アドレスの情報を送信対象の信号に含めることで、互いを通信相手として通信する。
[端末装置及びロボット制御装置におけるバッファによる遅延時間の調整]
 図4は、本発明の一実施形態に係る端末装置21-1及びロボット制御装置41-1におけるバッファによる遅延時間の調整方法を説明するための図である。図4は、ユーザ11-1と、端末装置21-1の構成部である頭部機器311、指部機器312-1~312-2、胴部機器313-1~313-2と、端末装置21-1の構成部であるバッファ112を示している。また、図4は、ロボット31-1と、ロボット制御装置41-1の構成部である視覚機器411、音響機器412-1~412-2、指部機器413-1~413-2と、ロボット制御装置41-1の構成部であるバッファ212を示している。
 ユーザ11-1は、頭部に頭部機器311を装着しており、右手の指に指部機器312-1を装着しており、左手の指に指部機器312-2を装着しており、右の胴部に胴部機器313-1を装着しており、左の胴部に胴部機器313-2を装着している。頭部機器311は、ユーザ11-1の両目に対応する位置に視覚部331を備えており、ユーザ11-1の右耳に対応する位置に音響部332-1を備えており、ユーザ11-1の左耳に対応する位置に音響部332-2を備えている。頭部機器311は、例えばヘッドマウントディスプレイである。視覚部331は、右目と左目のそれぞれごとにデータを処理する。
 ここで、頭部機器311、指部機器312-1~312-2、及び胴部機器313-1~313-2は、端末装置21-1の検出部111の機能を有している。頭部機器311は、頭部の動きを検出する。指部機器312-1~312-2は、左右それぞれの指の動きを検出する。胴部機器313-1~313-2は、胴部の動きを検出する。端末装置21-1は、頭部機器311、指部機器312-1~312-2、及び胴部機器313-1~313-2が検出した各部の動きに基づいて、ユーザ11-1の動き(姿勢の変化)を検出するモーションキャプチャの機能を実現する。
 なお、図4の例では、ユーザ11-1が左右の胴部機器313-1~313-2を別々に備えるが、ユーザ11-1が左右の胴部機器313-1~313-2の代わりに、1個の胴部機器を備えてもよい。また、図4は一例であり、検出部111としては、ユーザの状態を検出する他の任意の機器が用いられてもよく、例えば、人の指などを用いた操作内容を検出するタッチパネルが用いられてもよい。
 指部機器312-1~312-2、胴部機器313-1~313-2、視覚部331、及び音響部332-1~332-2は、端末装置21-1の感覚付与部114の機能を有している。指部機器312-1~312-2は、それぞれの指に触覚を与える機能を有している。胴部機器313-1~313-2は、胴部に触覚を与える機能を有している。視覚部331は、ユーザ11-1の両目(左右それぞれの目)に視覚を与える機能を有しており、例えば映像を表示する。音響部332-1~332-2は、ユーザ11-1の両耳(左右それぞれの耳)に聴覚を与える機能を有しており、例えば音響を出力する。図4は一例であり、感覚付与部114は、ユーザに他の感覚を付与する任意の機器であってもよい。
 ロボット31-1は、人における両目に対応する位置に視覚機器411が装着されており、人における右耳に対応する位置に音響機器412-1が装着されており、人における左耳に対応する位置に音響機器412-2が装着されており、人における右手の指に対応する位置に指部機器413-1が装着されており、人における左手の指に対応する位置に指部機器413-2が装着されている。
 ここで、視覚機器411、音響機器412-1~412-2、及び指部機器413-1~413-2は、ロボット制御装置41-1の検出部214の機能を有している。視覚機器411は、例えば、撮像装置を有しており、視覚に関するデータとして、映像データを生成する。本実施形態では、視覚機器411は、右目と左目のそれぞれごとに映像のデータを処理する。音響機器412-1~412-2は、聴覚に関するデータとして音響データを生成する。
 指部機器413-1~413-2は、それぞれの指の触覚に関するデータを生成する。触覚に関するデータは、指部機器413-1~413-2が触れた場所の硬さ及び凹凸の程度を示すデータである。検出部214は、ロボット31-1と着脱可能な機器を含んでもよい。また、他の構成例として、検出部214は、ロボット31-1と一体化されて着脱できない機器を含んでもよい。この場合、当該機器はロボット31-1の一部であると捉えられてもよい。
 なお、図4の例では、端末装置21-1の通信部113及び制御部115については、図示を省略している。また、図4の例では、ロボット制御装置41-1の通信部211、ロボット駆動部213、制御部215については、図示を省略している。また、図4の例では、説明の便宜上、バッファ112とバッファ212をそれぞれ単体で示しているが、必ずしもこの構成に限られず、バッファ112は端末装置21-1に備えられており、バッファ212はロボット制御装置41-1に備えられている。
 図4の例では、端末装置21-1の検出部111により検出されたユーザ11-1の状態を示す操作者状態情報は、伝送セッションP1、伝送セッションP2及び伝送セッションP3により、ロボット制御装置41-1の制御部215又はロボット駆動部213に伝えられる。伝送セッションP1は、端末装置21-1の制御部115又は検出部111から端末装置21-1のバッファ112までのセッションである。伝送セッションP2は、端末装置21-1のバッファ112からロボット制御装置41-1のバッファ212までのセッションである。伝送セッションP3は、ロボット制御装置41-1のバッファ212からロボット制御装置41-1の制御部215又はロボット駆動部213までのセッションである。
 また、ロボット制御装置41-1の検出部214により検出されたロボット31-1~31-nの状態を示すロボット状態情報は、伝送セッションP11、伝送セッションP12及び伝送セッションP13により、端末装置21-1の制御部115又は感覚付与部114に伝えられる。伝送セッションP11は、ロボット制御装置41-1のバッファ212までのセッションである。伝送セッションP12は、ロボット制御装置41-1のバッファ212から端末装置21-1のバッファ112までのセッションである。伝送セッションP13は、端末装置21-1のバッファ112から端末装置21-1の制御部115又は感覚付与部114までのセッションである。
 ここで、端末装置21-1のバッファ112とロボット制御装置41-1のバッファ212との間のデータ伝送は、端末装置21-1の通信部113とロボット制御装置41-1の通信部211によって、ネットワーク51を介して行われる。
 図4に示されるように、本実施形態では、端末装置21-1とロボット制御装置41-1との間における双方向のデータ通信として、主に2つのセッションがある。第1のセッションは、端末装置21-1からロボット制御装置41-1に向かう伝送セッションP1~P3を含むセッションである。第1のセッションにおいては、例えば、ユーザ11-1の状態を示す操作者状態情報が伝送される。操作者状態情報は、例えば、ユーザの目の動き、指の動き、又は胴の動きを示すデータを含む情報である。
 第2のセッションは、ロボット制御装置41-1から端末装置21-1に向かう伝送セッションP11~P13を含むセッションである。第2のセッションにおいては、例えば、ロボット31-1の状態を示す映像データ、音響データ、及び触覚データを含むロボット状態情報が伝送される。
 ロボット31-1はユーザ11-1の動きに合わせて動作する。ユーザ11-1はロボット31-1の位置における映像を見て音響を聞いて触覚を感じて動作を行う。ロボット31-1及びユーザ11-1は、これらの動作を繰り返す。
 本実施形態のロボットシステム1は、第1のセッション及び第2のセッションにおける双方向通信の遅延を補償する。制御部115は、例えば、送信部131がユーザ11-1状態情報を送信してから受信部132がロボット状態情報を受信するまでに要する遅延時間の変動量が所定の範囲内に収まるように、バッファ112に一時的に記憶するロボット状態情報の量を制御する。ここで、例えば、ユーザ11-1の側とロボット31-1の側とで、それぞれのセッションに関して異なる遅延時間が存在する場合がある。このような場合、ロボットシステム1は、ユーザ11-1の側とロボット31-1の側とで同期が取られた動きを実現するために、第1のセッション及び第2のセッションのそれぞれに対して異なる大きさの遅延時間を補償する。
 本例では、ユーザ11-1の側(端末装置21-1)からロボット31-1の側(ロボット制御装置41-1)に向かう伝送セッションP1~P3の合計遅延時間をLatMで表す。また、ロボット31-1の側(ロボット制御装置41-1)からユーザ11-1の側(端末装置21-1)に向かう伝送セッションP11~P13の合計遅延時間をLatNで表す。また、伝送セッションP1の遅延時間をLatMuで表し、伝送セッションP3の遅延時間をLatMrで表し、伝送セッションP11の遅延時間をLatNrで表し、伝送セッションP13の遅延時間をLatNuで表す。
 また、ユーザ11-1の動きを検出する機構(本実施形態では、端末装置21-1)における遅延時間をLatMmで表し、ロボット31-1を駆動させる機構(本実施形態では、ロボット制御装置41-1)における遅延時間をLatNmで表す。この場合、式(1)及び式(2)が成り立つ。
[数1]
 LatM = LatMu + LatMr + LatMm ・・(1)
[数2]
 LatN = LatNr + LatNu + LatNm ・・(2)
 ユーザ11-1の側(一例として、端末装置21-1の制御部115の側)からロボット31-1の側を見た場合における、伝送セッションP1~P3及び伝送セッションP11~P13を含む全体的なラウンドトリップディレイタイム(ラウンドトリップの遅延時間)をRTTで表すと、式(3)が成り立つ。
[数3]
 RTT = LatM + LatN ・・(3)
 このRTTが大きくなると、ユーザ11-1はめまいを感じて気分が悪くなる場合がある。RTTの変動量が大きい場合にも、ユーザ11-1は気分が悪くなる場合がある。
 そこで、本実施形態のロボットシステム1は、ネットワーク51の一方側であるユーザ11-1の側にバッファ112を備えるとともに、当該ネットワーク51の他方側であるロボット31-1の側にバッファ212を備え、バッファ112及びバッファ212のそれぞれにおけるデータの遅延時間を調整できるように構成されている。すなわち、ロボットシステム1は、ユーザ11-1の側とロボット31-1の側とのそれぞれにおいて、遅延時間を調整できる。
 ユーザ11-1の側では、式(4)が成り立つように、端末装置21-1の制御部115が、バッファ112におけるデータの遅延時間をリアルタイムで制御する。ロボット31-1の側では、式(5)が成り立つように、ロボット制御装置41-1の制御部215が、バッファ212におけるデータの遅延時間をリアルタイムで制御する。
[数4]
 LatMu ~ LatNu ・・(4)
[数5]
 LatMr ~ LatNr ・・(5)
 ここで、式(4)及び式(5)において、「~」は同じ又は近いことを表す。つまり、式(4)が成り立つように、端末装置21-1の制御部115は、伝送セッションP1の遅延時間LatMuと伝送セッションP13の遅延時間LatNuとの差が所定の第1時間以内になるように遅延時間を制御する。また、式(5)が成り立つように、ロボット制御装置41-1の制御部215は、伝送セッションP3の遅延時間LatMrと伝送セッションP11の遅延時間LatNrとの差が所定の第2時間以内になるように遅延時間を制御する。所定の第1時間及び所定の第2時間は、例えば、ユーザ11-1によるロボット31-1の操作に支障が生じない時間の最大値である。
 ここで、本例では、ロボット制御装置41-1から端末装置21-1に送信される映像のデータが、他のメディアのデータ(音響のデータ、触覚のデータなど)と比べて、多くの伝送時間を要するとする。制御部115及び制御部215は、メディアの種類によらず、ユーザ11-1の側とロボット31-1の側との間の往復の遅延時間(本例では、RTT)の差が所定の範囲内(所定の時間内)に収まるように、バッファ112及びバッファ212における遅延時間を制御する。当該所定の時間は、最も長い伝送時間を要する映像のデータに基づいて定められており、例えば40msである。制御部115及び制御部215は、遅延時間の差が当該所定の時間内に収まっているメディアのデータについては、遅延時間を与えずにバッファ112及びバッファ212を通過(パススルー)させてもよい。
[仮想的な感覚の付与]
 ユーザ11-1の側とロボット31-1の側との間の往復の遅延時間の変動を抑制することにより操作性が向上するとしても、遅延時間が長いと、ユーザ11-1が違和感を抱くことがある。特に、ユーザ11-1が操作をしてから、ユーザ11-1の操作に応じて変化した後の姿勢でロボット31-1が撮影した映像をユーザ11-1が視認するまでの遅延時間が長いと、ユーザ11-1がめまいを感じやすくなる。そこで、端末装置21は、仮想的な感覚をユーザ11-1に付与することができるように構成されている。以下、端末装置21が仮想的な感覚として、ロボット31-1が視認している画像を推定することにより生成された仮想的な視認画像をユーザ11-1に視認させる実施の形態を例示する。仮想的な感覚は仮想的な視覚に限らず、仮想的な聴覚、仮想的な触覚、又は仮想的な力覚等の他の感覚であってもよい。
 図5は、本発明の一実施形態に係るロボットシステム1において仮想的な感覚を付与する構成のイメージを示すブロック図である。図5は、頭部機器311などを装着したユーザ11-1と、仮想ロボット711とを示している。仮想ロボット711は、端末装置21-1のバッファ112に記憶されたデータにより仮想的な感覚を提供可能なロボットであり、ロボット31-1の状況を仮想的に再現するコンピュータを備える。本例では、端末装置21-1の制御部115は、あたかも仮想ロボット711との間でデータを送信しているかのように動作する。
 制御部115は、送信部131が操作者状態情報を送信してから受信部132がロボット状態情報を受信するまでに要する遅延時間(例えばRTT)が所定の時間以下である場合に、ロボット状態情報に基づく感覚を操作者としてのユーザ11-1に付与するように感覚付与部114を制御する。一方、制御部115は、遅延時間が所定の時間よりも長い場合に、推定されたロボット31-1の状態を示す仮想状態情報に基づく感覚をユーザ11-1に付与するように感覚付与部114を制御する。仮想状態情報は、ロボット状態情報と同様に、視覚、聴覚、触覚及び力覚を示すデータを含む。
 図6Aは、遅延時間が所定の時間未満である場合のロボットシステム1の動作について説明するための図である。図6Bは、遅延時間が所定の時間よりも長い場合のロボットシステム1の動作について説明するための図である。図6Aに示すように、ユーザ11-1の操作に支障がない程度に遅延時間が小さい場合、端末装置21-1のバッファ112を介してロボット状態情報がユーザ11-1に付与される。これに対して、図6Bに示すようにユーザ11-1の操作に支障が生じる程度に遅延時間が長い場合、端末装置21-1からユーザ11-1には、例えば記憶部151に記憶された仮想状態情報がユーザ11-1に付与される。以下、端末装置21-1が仮想状態情報を付与する動作の詳細を説明する。
 制御部115は、例えば記憶部151に記憶された、それぞれ異なる状態の仮想的なロボットに対応する複数の仮想状態情報のうち少なくとも一部の仮想状態情報をユーザ11-1に付与するように感覚付与部114を制御する。具体的には、制御部115は、操作者状態情報に基づいて複数の仮想状態情報から選択した仮想状態情報に基づく感覚をユーザ11-1に付与するように感覚付与部114を制御する。
 より具体的には、記憶部151は、それぞれ異なる状態のロボット31-1が撮影した画像に相当する仮想画像を含む複数の仮想状態情報を記憶している。仮想画像は、予めロボット31-1が有する視覚機器411又は同等の他のロボットに装着された撮像装置により生成された撮像画像であり、撮像した時点のロボットの状態(例えばロボットの各部の位置)を示す情報が関連づけられている。制御部115は、複数の仮想状態情報のうち、操作者状態情報が示す操作内容に基づいて特定されるロボット31-1の位置に対応する仮想画像が含まれる仮想状態情報に基づく感覚を操作者に付与するように感覚付与部114を制御する。
 制御部115は、複数の仮想状態情報から一の仮想状態情報を選択するために、直前の操作者状態情報が示すユーザ11-1の状態と、最新の操作者状態情報が示すユーザ11-1の状態とに基づいて、ユーザ11-1が操作をした後にロボット31-1がどのような状態になっているかを推定する。そして、制御部115は、推定したロボット31-1の状態に対応する一の仮想状態情報を選択する。このようにすることで、制御部115は、ロボット制御装置41-1から送信されるロボット状態情報が遅延したとしても、受信部132がロボット状態情報を受信する前に仮想状態情報に基づく感覚を操作者に付与することができる。したがって、ユーザ11-1がロボット31-1を操作しやすくなる。
 制御部115は、直前にユーザ11-1に提供していたロボット状態情報としての画像に含まれるロボット31-1の画像を抽出し、抽出した画像を仮想状態情報が示すロボットの画像に置換した画像をユーザ11-1に提供してもよい。このようにすることで、制御部115は、例えばロボット31-1が物体をつかむ動作をしている場合に、物体をつかもうとしている仮想的なロボットの画像を含む画像をユーザ11-1に提供することができる。
 制御部115は、感覚付与部114に付与させたロボット状態情報に基づく感覚の内容を示す感覚履歴情報を記憶部151に記憶させてもよい。この場合、制御部115は、直前に記憶部151に記憶させた感覚履歴情報が示す感覚の内容に基づいて、複数の仮想状態情報から、操作者に感覚を付与するために用いる仮想状態情報を選択する。制御部115は、例えば、直前に記憶させた感覚履歴情報が示す感覚からの変化量が所定の範囲内に収まる仮想状態情報を選択する。このようにすることで、ユーザ11-1に付与される感覚が急激に変化しないので、端末装置21-1はユーザ11-1が違和感を抱かないようにすることができる。
 制御部115は、仮想状態情報に基づく感覚をユーザ11-1に付与した後に、受信部132が受信したロボット状態情報に基づく感覚をユーザ11-1に付与するように感覚付与部114を制御する。具体的には、制御部115は、例えば送信部131が操作者状態情報を送信してから受信部132がロボット状態情報を受信するまでに要する遅延時間内のロボット31-1の動きが、ユーザ11-1が感知可能な量よりも小さいと判定した場合に、ロボット31-1の実際の状態に基づく感覚をユーザ11-1に付与する。より具体的には、制御部115は、遅延時間内のロボット状態情報の変化量が閾値未満であると判定した場合に、仮想状態情報に基づく第1感覚の付与を停止し、ロボット状態情報に基づく第2感覚の付与に切り替える。このようにすることで、ロボット31-1の動きが停止した時点で、ユーザ11-1が、ロボット31-1の実際の状態を把握することができる。
 ここで、仮想状態情報が示す状態と、実際のロボット31-1の状態とが完全に一致しているとは限らない。したがって、仮想状態情報に基づく第1感覚の付与を停止してロボット状態情報に基づく第2感覚の付与を開始すると、第1感覚と第2感覚との差が大きく、ユーザ11-1が違和感を抱く場合がある。そこで、制御部115は、仮想状態情報に基づく第1感覚と、仮想状態情報に基づく感覚をユーザ11-1に付与した後に受信部132が受信したロボット状態情報に基づく第2感覚との間に所定の大きさ以上の差がある場合、第1感覚と第2感覚との間を補間する感覚をユーザ11-1に付与するように感覚付与部114を制御してもよい。
 制御部115は、例えば第1感覚と第2感覚との間を補間するための複数の仮想状態情報を生成し、第1感覚から徐々に第2感覚に至るように感覚付与部114を制御する。第1感覚及び第2感覚が視覚である場合、制御部115は、ユーザ11-1に提供する画像における第1感覚に対応する位置に含まれていたロボット31-1の指先の画像が、徐々に第2感覚に対応する位置に向けて移動するように、複数の仮想的な画像をユーザ11-1に提供する。このようにすることで、制御部115は、付与される感覚が急激に変化することによりユーザ11-1が違和感を抱くことを防止できる。
 制御部115は、バッファ112に蓄積された一以上のロボット状態情報の量が閾値以上である場合、ロボット状態情報に基づく感覚をユーザ11-1に付与し、バッファ112に蓄積された一以上のロボット状態情報の量が閾値未満になった場合に、仮想状態情報に基づく感覚をユーザ11-1に付与するように感覚付与部114を制御してもよい。このようにすることで、バッファ112に一時的に記憶するロボット状態情報の量を少なくした状態でロボット状態情報の伝送遅延が発生したとしても、ユーザ11-1に対して仮想状態情報に基づく感覚を付与することができる。したがって、送信部131が操作者状態情報を送信してから受信部132がロボット状態情報を受信するまでに要する遅延時間を小さくすることが可能になり、ユーザ11-1がロボット31-1を制御しやすくなる。
 制御部115は、送信部131がユーザ11-1状態情報を送信してから受信部132がロボット状態情報を受信するまでの遅延の要因を特定してもよい。制御部115は、特定した要因に基づいて、記憶部151に記憶された仮想状態情報に基づく感覚をユーザ11-1に付与するように感覚付与部114を制御するか、ネットワーク51を介して受信した仮想状態情報に基づく感覚をユーザ11-1に付与するように感覚付与部114を制御するかを決定する。ネットワーク51を介して受信した仮想状態情報は、例えば、ロボット31-1の状態を監視し、ロボット31-1の状態に基づいて仮想状態情報を生成するロボット制御装置41-1又はクラウド上のサーバから提供される仮想状態情報である。
 ロボット制御装置41-1又はクラウド上のサーバの処理能力又は記憶容量が端末装置21-1よりも優れている場合、ロボット制御装置41-1又はクラウド上のサーバは、記憶部151に記憶された仮想状態情報よりも高精度の(すなわち、実際のロボット31-1の状態により近い)仮想状態情報を生成することができると考えられる。そこで、制御部115は、ネットワーク51における遅延時間が閾値以下である場合にロボット制御装置41-1又はクラウド上のサーバから提供される仮想状態情報を使用することで、実際のロボット31-1の状態に近い感覚をユーザ11-1に付与することできる。
 なお、端末装置21-1の制御部115とロボット制御装置41-1の制御部215とは、ネットワーク51を介して、自己の側における処理遅延時間の情報を互いに通信する。処理遅延時間は、ユーザ11-1が操作してから端末装置21-1が操作者状態情報を送信するまでの時間、及びロボット31-1が状態を変化させてからロボット制御装置41-1がロボット状態情報を送信するまでの時間である。制御部115及び制御部215は、取得した他方の遅延時間に基づいて、ユーザ11-1の側とロボット31-1の側との往復の遅延時間RTTの値を特定する。制御部115は、特定した遅延時間の値に基づいて、仮想状態情報に基づく感覚をユーザ11-1に付与するか、ロボット状態情報に基づく感覚をユーザ11-1に付与するかを決定する。
 また、ロボットシステム1は、ユーザ11-1の状態を推定して生成された仮想操作者状態情報に基づいてロボット31-1を制御してもよい。例えば、端末装置21-1の送信部131が操作者状態情報を送信してから、当該操作者状態情報がロボット制御装置41-1の受信部231に届くまでの遅延時間が所定の閾値以上である場合、ロボット制御装置41-1の制御部215は、仮想操作者状態情報に基づいてロボット31-1を制御する。仮想操作者状態情報は、例えば、直前の一以上の操作者状態情報に基づいて操作者の最新の状態を推定することにより生成された情報である。このようにすることで、ユーザ11-1が行った操作に対するロボット31-1のレスポンスを早めることができるので、操作性がさらに向上する。
 なお、制御部215が使用する仮想操作者状態情報は、記憶部251に記憶された複数の仮想操作者状態情報から選択された仮想操作者状態情報であってもよく、コンピュータグラフィックス(CG:Computer Graphics)により生成されたユーザ11-1のモデルに基づいて生成された仮想操作者状態情報であってもよい。
[ネットワークにおけるマルチストリームのデータの同期]
 本実施形態では、ロボット制御装置41-1から端末装置21-1に向かう第2のセッションは、映像データ、音響データ、及び触覚データを含む。それぞれのメディアのデータの処理速度に応じて、それぞれのメディアのデータの遅延時間が異なり得る。これらのメディアのなかで、映像のデータの遅延時間が最も大きい。このため、本実施形態では、端末装置21-1の制御部115及びロボット制御装置41-1の制御部215は、映像データに含まれる各画像フレームに付与されている時間情報を遅延時間の参照値として使用する。
 一例として、ロボット制御装置41-1の制御部215は、音響データ及び触覚データを、映像データを伝送する画像フレームのそれぞれに含める。このようにすることで、時間情報が付与されていない音響データ及び触覚データにも時間情報を関連づけることができる。
 他の例として、ロボット制御装置41-1の制御部215は、タイムスタンプを用いて、映像データと音響データと触覚データを同期させてもよい。この場合、ロボット制御装置41-1の制御部215は、各メディアのデータ又は通信フレームに、時刻を表すタイムスタンプを付与する。また、端末装置21-1の制御部115及びロボット制御装置41-1の制御部215は、タイムスタンプを参照する際におけるクロックとして、共通クロック源から供給されるクロック信号を用いてもよい。共通クロック源としては、例えば、第三者により提供されるものが用いられてもよく、ロボットシステム1が備える任意の装置(例えば、ネットワーク51に接続された管理装置であるサーバ)により提供されるものが用いられてもよい。
 図7は、本発明の一実施形態に係る通信フレームF1~Fj(jは2以上の整数であるとする)の概略的な構成を示すブロック図である。図7は、ロボット制御装置41-1から送信される連続した複数(j個)の通信フレームF1~Fjを示している。
 本実施形態では、通信フレームF1~Fjの通信速度が、60[fps(フレーム/秒)]であるとする。通信フレームF1の送信時刻T1を0[ms]とすると、通信フレームFjの送信時刻Tjは約{16.6666×(j-1)}[ms]となる。それぞれの通信フレームF1~Fjには、映像データ、イメージ化された音響データ、イメージ化された触覚データが含まれる。映像データには、例えば、左目の映像のデータ及び右目の映像データが含まれる。音響データには、例えば、左耳の音響データ及び右耳の音響データが含まれる。触覚のデータには、例えば、指先のデータが含まれる。
 それぞれの通信フレームF1~Fjには、送信される順に連続した通し番号(フレーム番号)の情報が含められている。端末装置21-1及びロボット制御装置41-1は、このような通し番号(フレーム番号)の情報に基づいて、それぞれの通信フレームF1~Fjのタイミングを特定することが可能である。なお、通信フレームの代わりに、通信パケットが用いられてもよい。
 制御部115及び制御部215は、ロボット制御装置41-1から端末装置21-1に向かう第2のセッションにおいて通信フレームF1~Fjの一部が損失しても、タイムアウト時間が経過したことに応じて、すべてのメディア(映像、音響、触覚)のデータを含む通信フレームの単位で、データを破棄したり再送制御をしたりすることが可能である。制御部115及び制御部215は、遅延時間が所定の閾値以下である場合に該当するデータを再送し、遅延時間が所定の閾値よりも大きい場合に該当するデータを破棄してもよい。
[動きのバッファリング]
 端末装置21-1とロボット制御装置41-1との間で送受信するデータは、伝送中に消失してしまう場合がある。このような場合にもユーザ11-1が意図したとおりにロボット31-1が動作するように、またユーザ11-1の操作性を向上させるために、端末装置21-1の制御部115は、バッファ112に記憶されたデータを用いて消失したデータを補間してもよい。これにより、端末装置21-1の制御部115は、例えば、一部のデータが消失した場合においても、消失していない他のデータに基づいて消失したデータを推定して再現することができる。
 同様に、ロボット制御装置41-1の制御部215は、バッファ212に記憶されたデータを用いて、データを補間することによって、任意の中間的なデータを補償することができる。これにより、ロボット制御装置41-1の制御部215は、例えば、一部のデータが消失した場合においても、消失していない他のデータに基づいて消失したデータを推定して再現することが可能である。このような補間は、例えば、第1のセッションのデータと第2のセッションのデータとのうちの任意の一方又は両方に適用されてもよい。
[ロボットシステム1の構成及び動作のまとめ]
 以上のように、本実施形態に係るロボットシステム1は、テレイグジスタンスにおいて、バッファ112及びバッファ212を用いて、遅延を補償することで、高品質なロボット制御を実現することができる。ロボットシステム1は、例えば操作者状態情報及びロボット状態情報を一時的にバッファ112及びバッファ212に蓄積させることで、送信部131が操作者状態情報を送信してから受信部132がロボット状態情報を受信するまでに要する遅延時間の変動量を所定の範囲内に抑えることができる。このようにすることで、ロボットシステム1を使用するユーザ11-1がロボット31-1を操作しやすくなる。
 また、ロボットシステム1は、送信部131が操作者状態情報を送信してから受信部132がロボット状態情報を受信するまでに要する遅延時間が所定の時間よりも長い場合に、仮想状態情報に基づく感覚をユーザ11-1に付与する。ロボットシステム1がこのような構成を有することで、ネットワーク51におけるデータ伝送の遅延時間が長い場合であっても、ユーザ11-1が操作をしてからロボット31-1の状態に応じた感覚を得るまでの時間を短縮することができる。その結果、ユーザ11-1が快適にロボット31-1を制御することができるようになる。
 なお、ロボットシステム1は、ユーザ11-1の側のバッファ112及びロボット31-1の側のバッファ212のそれぞれにおける遅延時間を他の態様で制御してもよい。一例として、ロボットシステム1は、ユーザ11-1の側のバッファ112及びロボット31-1の側のバッファ212のそれぞれにおいて、双方向のデータ(第1セッションのデータ、第2セッションのデータ)を所定期間だけ保持して、当該所定期間ごとに当該データを出力するように制御されてもよい。当該所定期間は、例えば、最も遅延時間が長いメディアに応じて決定され、本例では、ロボット制御装置41-1から端末装置21-1に送信される映像データの遅延時間に基づいて決定される。
 ここで、ユーザ11-1~11-nの数、端末装置21-1~21-nの数、ロボット制御装置41-1~41-nの数,ロボット31-1~31-nの数は、それぞれ、任意の数であってもよい。例えば、ユーザ11-1~11-nの数とロボット31-1~31-nの数とは同じであってもよく、異なっていてもよい。
 また、本実施形態では、ユーザ11-1の側において、バッファ112及びバッファ112における遅延時間を制御する制御部115が端末装置21-1に備えられた構成を示したが、他の構成例として、バッファ112と、バッファ112における遅延時間の制御機能との一方又は両方が、端末装置21-1とは別の制御装置に備えられてもよい。
 同様に、本実施形態では、ロボット31-1の側において、バッファ212及びバッファ212における遅延時間を制御する制御部215がロボット制御装置41-1に備えられた構成を示したが、このような構成に限らない。他の構成例として、バッファ212と、バッファ212における遅延時間の制御機能との一方又は両方が、端末装置21-1とは別の制御装置に備えられてもよい。
 ここで、ロボットシステム1において、ユーザ11-1の側で端末装置21-1により映像、音響、触覚などのうちの1以上のデータを検出してロボット31-1の側へ送信し、ロボット31-1の側でロボット制御装置41-1により当該データを受信して当該データに基づく感覚(視覚、聴覚、触覚など)を再現してもよい。この場合、端末装置21-1は、例えば、検出部111として、映像を検出するセンサー(例えば、撮像装置(カメラ))、音響を検出するセンサー(例えば、マイク)、触覚を検出するセンサー(例えば、圧力センサー)などを備える。
 また、ロボット制御装置41-1は、例えば、端末装置21-1から受信された映像、音響、触覚などのデータに基づく感覚を再現する感覚再現部を備える。感覚再現部の機能は、例えば、ロボット駆動部213に備えられてもよく、ロボット駆動部213とは別に備えられてもよい。感覚再現部の機能の一部又は全部が、ロボット31-1に装着されてもよい。この場合の感覚再現部は、例えば、映像を再現する映像表示器、音響を再現するスピーカー、触覚を再現する圧力などの発生器(動作発生器)などである。
[変形例1]
 ロボットシステム1においては、複数のユーザが1個の共通のロボットを制御してもよい。一例として、3人のユーザ11-1~11-3が1個のロボット31-1を制御する場合を示す。本例では、3人のユーザ11-1~11-3のそれぞれの端末装置21-1~21-3が、時分割でロボット制御装置41-1と通信することで、ロボット31-1を制御する。例えば、ロボット31-1が複数の可動部分を備えており、3人のユーザ11-1~11-3が、それぞれ、異なる可動部分を制御する。複数の可動部分は、例えば、複数のアームである。
 図8は、本発明の一実施形態に係る時分割の通信フレームZ1~Z6の概略的な構成を示すブロック図である。図8は、複数の連続した通信フレームZ1~Z6を示している。本例では、例えば、1人目のユーザ11-1の端末装置21-1は、1番目の通信フレームZ1を用いてロボット制御装置41-1と通信する。2人目のユーザ11-2の端末装置21-2は、2番目の通信フレームZ2を用いてロボット制御装置41-1と通信する。3人目のユーザ11-3の端末装置21-3は、3番目の通信フレームZ3を用いてロボット制御装置41-3と通信する。このように複数の端末装置21-1~21-3が時分割で共通のロボット制御装置41-1と通信することで、共通のロボット31-1を制御する。
[変形例2]
 ロボットシステム1においては、1人のユーザが複数のロボットを制御してもよい。一例として、1人のユーザ11-1が3個のロボット31-1~31-3を制御する場合を示す。本例では、1人のユーザ11-1の端末装置21-1が、3個のロボット制御装置41-1~41-3と時分割で通信することで、3個のロボット31-1~31-3を制御する。
 図8の例を利用して説明する。本例では、例えば、1人のユーザ11-1の端末装置21-1は、1番目の通信フレームZ1を用いて1個目のロボット31-1のロボット制御装置41-1と通信する。端末装置21-1は、2番目の通信フレームZ2を用いて2個目のロボット31-2のロボット制御装置41-2と通信する。端末装置21-1は、3番目の通信フレームZ3を用いて3個目のロボット31-3のロボット制御装置41-3と通信する。このように1個の端末装置21-1が時分割で複数のロボット制御装置41-1~41-3と通信することで、複数のロボット31-1~31-3を制御する。
[変形例3]
 ロボットシステム1は、ネットワーク51を介して端末装置21-1~21-n、およびロボット制御装置41-1~41-nに接続された管理装置をさらに備えていてもよい。管理装置は例えばサーバである。
 管理装置61は、ネットワーク51に接続され、端末装置21-1~21-nとロボット制御装置41-1~41-nとの間で行われる通信を中継する。つまり、管理装置61は、端末装置21-1~21-nからネットワーク51に送信された信号を受信して、当該信号をその宛先のロボット制御装置41-1~41-nに送信し、また、ロボット制御装置41-1~41-nからネットワーク51に送信された信号を受信して、当該信号をその宛先の端末装置21-1~21-nに送信する。
 このように、ロボットシステム1は、クラウド上に管理装置61を備えて、端末装置21-1~21-nとロボット制御装置41-1~41-nとの間で行われる通信を管理してもよい。例えば、管理装置61は、互いに対応する端末装置21-1~21-nとロボット制御装置41-1~41-nのそれぞれのアドレスの情報を記憶して、当該アドレスの情報に基づいて、これらの間で通信される信号を中継する。管理装置61は、機械学習の機能を備えて、機械学習の結果に基づいて、ユーザ11-1~11-nがロボット31-1~31-nを制御する操作を補正してもよい。
 図2から図6までを参照しながら説明した実施形態では、端末装置21-1がバッファ112及び当該バッファ112におけるデータの遅延時間を調整する機能を有していた。また、ロボット制御装置41-1がバッファ212及び当該バッファ212におけるデータの遅延時間を調整する機能を有していた。これら2つの機能のうちの任意の一方又は両方が管理装置61に備えられてもよい。
 一例として、管理装置61は、端末装置21-1の代わりに、バッファ112及び当該バッファ112におけるデータの遅延時間を調整する機能(この例において、説明の便宜上、機能C1という。)を備えてもよい。この場合、端末装置21-1では、このような機能C1を備えなくてもよい。
 他の例として、管理装置61は、ロボット制御装置41-1の代わりに、バッファ212及び当該バッファ212におけるデータの遅延時間を調整する機能(この例において、説明の便宜上、機能C2という。)を備えてもよい。この場合、ロボット制御装置41-1では、このような機能C2を備えなくてもよい。
 さらに、他の例として、管理装置61は、機能C1と機能C2の両方を備えてもよい。特に、通信の遅延が小さい場合、管理装置61が機能C1又は機能C2を備えることが好ましいと考えられる。例えば、端末装置21-1からロボット制御装置41-1へのネットワーク51を介したデータ通信の遅延が、ロボット制御装置41-1から端末装置21-1へのネットワーク51を介したデータ通信の遅延よりも小さい場合には、端末装置21-1が機能C1を備えて、管理装置61が機能C2を備える構成が用いられてもよい。
 図9は、ネットワーク51を介して端末装置21-1及びロボット制御装置41-1と通信可能な管理装置61を示す図である。管理装置61は、遅延特定部611と、通知部612とを有する。遅延特定部611は、端末装置21-1から操作者状態情報を受信した時刻と、ロボット制御装置41-1からロボット状態情報を受信した時刻とに基づいて、端末装置21-1が操作状態情報を送信してからロボット状態情報を受信するまでの遅延時間を特定する。通知部612は、遅延特定部611が特定した遅延時間を端末装置21-1の制御部115に通知する。
 制御部115は、管理装置からの指示に基づいて仮想状態情報に基づく感覚をユーザ11-1に付与することを決定してもよい。この場合、管理装置の遅延特定部611は、遅延時間が発生している要因を特定し、通知部612は、遅延特定部611が特定した要因がネットワーク51の伝送遅延である場合に、端末装置21-1の制御部115に対して、仮想状態情報に基づく感覚をユーザ11-1に付与するように指示する。制御部115は、通知部612からの指示に基づいて、仮想状態情報に基づく感覚をユーザ11-1に付与するように感覚付与部114を制御する。このように、制御部115は、管理装置からの指示に基づいて仮想状態情報に基づく感覚を付与することで、仮想状態情報又はロボット状態情報のうち、ネットワーク51の遅延状態により適した情報に基づく感覚を付与することができる。
 なお、通知部612は、遅延特定部611が特定した要因がロボットの動作遅延である場合に、ロボット制御装置41-1に対して、仮想状態情報を端末装置21-1に送信するように指示してもよい。図10は、ロボット制御装置41-1が仮想状態情報をユーザ11-1に提供するロボットシステム1を示す図である。ロボット制御装置41-1は、例えば記憶部251に記憶された複数の仮想状態情報から選択した仮想状態情報を端末装置21-1に提供する。ロボットシステム1がこのような構成を有することで、端末装置21-1が仮想状態情報を記憶していない場合であっても、端末装置21-1が仮想状態情報に基づく感覚をユーザ11-1に付与することができる。
[実施形態のまとめ]
 ロボットシステム1においては、端末装置(図1の例では、端末装置21-1~21-n)が、ユーザ(図1の例では、ユーザ11-1~11-n)に関するデータを、ネットワーク(図1の例では、ネットワーク51)を介してロボット制御装置(図1の例では、ロボット制御装置41-1~41-n)に送信する。そして、ロボット制御装置が当該データに基づいてロボット(図1の例では、ロボット31-1~31-n)を制御する。
 また、ロボット制御装置がロボットに関するデータを、ネットワークを介して端末装置に送信し、端末装置が当該データに基づいてユーザに感覚を付与する。端末装置とロボット制御装置との少なくとも一方は、送信対象のデータと受信されたデータとの少なくとも一方のデータを記憶するバッファ(図2、図3の例では、バッファ112、212)と、バッファにより記憶されるデータの遅延時間を制御する制御部(図2、図3の例では、制御部115、215)と、を備える。ロボットシステム1がこのような構成を有することにより、ロボットシステム1は、ユーザによるロボットの操作に支障が生じないように、データの伝送遅延を調整することができるので、テレイグジスタンスにおけるロボットの操作性を向上させることができる。
 一構成例として、制御部は、送信対象のデータと受信されたデータを伝送する際に、ネットワークとユーザとの間又はネットワークとロボットとの間における所定の伝送の遅延時間を所定の範囲内に制御する。
 一構成例として、ユーザに関するデータは、ユーザの動きに関するデータを含み、ロボットに関するデータは、ロボットにおける画像データ、音響データ、触覚データを含み、ロボット制御装置は、画像データと、音響データと、触覚データを共通の通信フレームに含めて通信する。一構成例として、端末装置とロボット制御装置との少なくとも一方について、バッファに記憶されたデータを用いてデータを補間する。
 一構成として、端末装置は、操作者状態情報を送信してからロボット状態情報を受信するまでに要する遅延時間が所定の時間以下である場合に、ロボット状態情報に基づく感覚をユーザに付与し、遅延時間が所定の時間よりも長い場合に、推定されたロボットの状態を示す仮想状態情報に基づく感覚をユーザに付与する。端末装置がこのように動作することで、遅延時間が長い場合においてもユーザがロボットの状態に応じた感覚を速やかに抱くことができるので、操作性が向上する。
 以上に示した実施形態に係る各装置(例えば、端末装置21-1~21-n又はロボット制御装置41-1~41-nなど)の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体(記憶媒体)に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより、処理を行ってもよい。
 なお、ここでいう「コンピュータシステム」とは、オペレーティング・システム(OS:Operating System)又は周辺機器等のハードウェアを含むものであってもよい。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、フラッシュメモリ等の書き込み可能な不揮発性メモリ、DVD(Digital Versatile Disc)等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。なお、記録媒体としては、例えば、コンピュータと着脱可能な記録媒体であってもよい。また、記録媒体としては、例えば、一時的にデータを記録する記録媒体であってもよい。
 さらに、「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワーク又は電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(例えばDRAM(Dynamic Random Access Memory))のように、一定時間プログラムを保持しているものも含むものとする。
 また、上記のプログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、又は伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)又は電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。
 また、上記のプログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、上記のプログラムは、前述した機能をコンピュータシステムに既に記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。
 以上、本発明の実施形態について図面を参照して詳述したが、具体的な構成はこの実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等も含まれる。
1…ロボットシステム、11-1~11-n…ユーザ、21-1~21-n…端末装置、31-1~31-n…ロボット、41-1~41-n…ロボット制御装置、51…ネットワーク、111、214…検出部、112、212…バッファ、113、211…通信部、114…感覚付与部、115、215…制御部、151、251…記憶部、131、232…送信部、132、231…受信部、213…ロボット駆動部、311…頭部機器、312-1~312-2、413-1~413-2…指部機器、313-1~313-2…胴部機器、331…視覚部、332-1~332-2…音響部、411…視覚機器、412-1~412-2…音響機器、711…仮想ロボット、F1~Fj、Z1~Z6…通信フレーム、P1~P3、P11~P13…伝送セッション

Claims (15)

  1.  ロボットを操作する操作者の状態を示す操作者状態情報を前記ロボットに向けて送信する送信部と、
     前記ロボットの状態を示すロボット状態情報を前記ロボットから受信する受信部と、
     前記操作者に所定の感覚を付与する感覚付与部と、
     前記送信部が前記操作者状態情報を送信してから前記受信部が前記ロボット状態情報を受信するまでに要する遅延時間が所定の時間以下である場合に、前記ロボット状態情報に基づく感覚を前記操作者に付与するように前記感覚付与部を制御し、前記遅延時間が前記所定の時間よりも長い場合に、推定された前記ロボットの状態を示す仮想状態情報に基づく感覚を前記操作者に付与するように前記感覚付与部を制御する制御部と、
     を有する感覚付与装置。
  2.  前記制御部は、前記仮想状態情報に基づく感覚を前記操作者に付与した後に、前記受信部が受信した前記ロボット状態情報に基づく感覚を前記操作者に付与するように前記感覚付与部を制御する、
     請求項1に記載の感覚付与装置。
  3.  前記制御部は、前記仮想状態情報に基づく第1感覚と、前記仮想状態情報に基づく感覚を前記操作者に付与した後に前記受信部が受信した前記ロボット状態情報に基づく第2感覚との間に所定の大きさ以上の差がある場合、前記第1感覚と前記第2感覚との間を補間する感覚を前記操作者に付与するように前記感覚付与部を制御する、
     請求項2に記載の感覚付与装置。
  4.  前記受信部が受信した一以上の前記ロボット状態情報を一時的に記憶した後に、前記一以上のロボット状態情報を順次、前記感覚付与部に出力するバッファ部をさらに有し、
     前記制御部は、前記バッファ部に蓄積された前記一以上のロボット状態情報の量が閾値未満になった場合に、仮想状態情報に基づく感覚を前記操作者に付与するように前記感覚付与部を制御する、
     請求項1から3のいずれか一項に記載の感覚付与装置。
  5.  前記受信部が受信した一以上の前記ロボット状態情報を一時的に記憶した後に、前記一以上のロボット状態情報を順次、前記感覚付与部に出力するバッファ部をさらに有し、
     前記制御部は、前記送信部が前記操作者状態情報を送信してから前記受信部が前記ロボット状態情報を受信するまでに要する遅延時間の変動量が所定の範囲内に収まるように、前記バッファ部に一時的に記憶する前記ロボット状態情報の量を制御する、
     請求項1から3のいずれか一項に記載の感覚付与装置。
  6.  前記制御部は、それぞれ異なる状態の前記ロボットに対応する複数の前記仮想状態情報を記憶する記憶部を有し、前記操作者状態情報に基づいて前記複数の仮想状態情報から選択した仮想状態情報に基づく感覚を前記操作者に付与するように前記感覚付与部を制御する、
     請求項1から5のいずれか一項に記載の感覚付与装置。
  7.  前記記憶部は、それぞれ異なる状態の前記ロボットが撮影した画像に相当する仮想画像を含む前記複数の仮想状態情報を記憶し、
     前記制御部は、前記複数の仮想状態情報のうち、前記操作者状態情報が示す操作内容に基づいて特定される前記ロボットの位置に対応する前記仮想画像が含まれる仮想状態情報に基づく感覚を前記操作者に付与するように前記感覚付与部を制御する、
     請求項6に記載の感覚付与装置。
  8.  前記制御部は、前記複数の仮想状態情報から一の仮想状態情報を選択するために、直前の前記操作者状態情報が示す前記操作者の状態と、最新の前記操作者状態情報が示す前記操作者の状態とに基づいて、前記操作者が操作をした後に前記ロボットがどのような状態になっているかを推定し、推定した前記ロボットの状態に対応する一の仮想状態情報を選択する、
     請求項6又は7に記載の感覚付与装置。
  9.  前記制御部は、前記感覚付与部に付与させた前記ロボット状態情報に基づく感覚の内容を示す感覚履歴情報を前記記憶部に記憶させ、直前に記憶させた前記感覚履歴情報が示す感覚の内容に基づいて、前記複数の仮想状態情報から、前記操作者に感覚を付与するために用いる仮想状態情報を選択する、
     請求項6から8のいずれか一項に記載の感覚付与装置。
  10.  前記制御部は、前記送信部が前記操作者状態情報を送信してから前記受信部が前記ロボット状態情報を受信するまでの遅延の要因を特定し、特定した前記要因に基づいて、前記記憶部に記憶された前記仮想状態情報に基づく感覚を前記操作者に付与するように前記感覚付与部を制御するか、ネットワークを介して受信した前記仮想状態情報に基づく感覚を前記操作者に付与するように前記感覚付与部を制御するかを決定する、
     請求項7から9のいずれか一項に記載の感覚付与装置。
  11.  ロボットを操作する操作者の状態を示す操作者状態情報をネットワークに送信する感覚付与装置と、
     前記ネットワークを介して受信した前記操作者状態情報に基づいて前記ロボットを制御するロボット制御装置と、
     前記ネットワークを介してロボット制御装置及び前記感覚付与装置と通信可能な管理装置と、
     を備え、
     前記感覚付与装置は、
      ロボットを操作する操作者の状態を示す操作者状態情報を前記ロボットに向けて送信する送信部と、
      前記ロボットの状態を示すロボット状態情報を前記ロボットから受信する受信部と、
      前記操作者に所定の感覚を付与する感覚付与部と、
      前記送信部が前記操作者状態情報を送信してから前記受信部が前記ロボット状態情報を受信するまでに要する遅延時間が所定の時間以下である場合に、前記ロボット状態情報に基づく感覚を前記操作者に付与するように前記感覚付与部を制御し、前記遅延時間が前記所定の時間よりも長い場合に、推定された前記ロボットの状態を示す仮想状態情報に基づく感覚を前記操作者に付与するように前記感覚付与部を制御する制御部と、
     を有し、
     前記管理装置は、
      前記遅延時間を特定する遅延特定部と、
      前記遅延特定部が特定した前記遅延時間を前記制御部に通知する通知部と、
     を有するロボット制御システム。
  12.  前記遅延特定部は、前記遅延時間が発生している要因を特定し、
     前記通知部は、前記遅延特定部が特定した前記要因が前記ネットワークの伝送遅延である場合に、前記感覚付与装置に対して、前記仮想状態情報に基づく感覚を前記操作者に付与するように指示し、
     前記感覚付与装置の前記制御部は、前記仮想状態情報に基づく感覚を前記操作者に付与するように前記感覚付与部を制御する、
     請求項11に記載のロボット制御システム。
  13.  前記通知部は、前記遅延特定部が特定した前記要因が前記ロボットの動作遅延である場合に、前記ロボット制御装置に対して、仮想状態情報を前記感覚付与装置に送信するように指示し、
     前記感覚付与装置の前記制御部は、前記ロボット制御装置から受信した前記仮想状態情報に基づく感覚を前記操作者に付与するように前記感覚付与部を制御する、
     請求項12に記載のロボット制御システム。
  14.  コンピュータが実行する、
     ロボットを操作する操作者の状態を示す操作者状態情報を前記ロボットに向けて送信するステップと、
     前記操作者状態情報を送信してから前記ロボットの状態を示すロボット状態情報を受信するまでに要する遅延時間が所定の時間以下であるか否かを判定するステップと、
     前記遅延時間が前記所定の時間以下である場合に、前記ロボット状態情報に基づく感覚を前記操作者に付与し、前記遅延時間が前記所定の時間よりも長い場合に、推定された前記ロボットの状態を示す仮想状態情報に基づく感覚を前記操作者に付与するステップと、
     を有するロボット制御方法。
  15.  コンピュータに、
     ロボットを操作する操作者の状態を示す操作者状態情報を前記ロボットに向けて送信するステップと、
     前記操作者状態情報を送信してから前記ロボットの状態を示すロボット状態情報を受信するまでに要する遅延時間が所定の時間以下であるか否かを判定するステップと、
     前記遅延時間が前記所定の時間以下である場合に、前記ロボット状態情報に基づく感覚を前記操作者に付与し、前記遅延時間が前記所定の時間よりも長い場合に、推定された前記ロボットの状態を示す仮想状態情報に基づく感覚を前記操作者に付与するステップと、
     を実行させるためのプログラム。
     
     
PCT/JP2018/018883 2017-05-17 2018-05-16 感覚付与装置、ロボット制御システム、ロボット制御方法及びプログラム WO2018212225A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2019518832A JP7034494B2 (ja) 2017-05-17 2018-05-16 感覚付与装置、ロボット制御システム、ロボット制御方法及びプログラム
EP18802159.6A EP3626403A4 (en) 2017-05-17 2018-05-16 SENSOR DEVICE, ROBOT CONTROL SYSTEM AND ROBOT CONTROL METHOD, AND PROGRAM
CN201880032636.0A CN110678300A (zh) 2017-05-17 2018-05-16 感觉赋予装置、机器人控制系统、机器人控制方法以及程序
US16/684,624 US11541546B2 (en) 2017-05-17 2019-11-15 Sensation imparting device, robot control system, and robot control method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2017098532 2017-05-17
JP2017-098532 2017-05-17

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US16/684,624 Continuation US11541546B2 (en) 2017-05-17 2019-11-15 Sensation imparting device, robot control system, and robot control method

Publications (1)

Publication Number Publication Date
WO2018212225A1 true WO2018212225A1 (ja) 2018-11-22

Family

ID=64273987

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2018/018883 WO2018212225A1 (ja) 2017-05-17 2018-05-16 感覚付与装置、ロボット制御システム、ロボット制御方法及びプログラム

Country Status (5)

Country Link
US (1) US11541546B2 (ja)
EP (1) EP3626403A4 (ja)
JP (1) JP7034494B2 (ja)
CN (1) CN110678300A (ja)
WO (1) WO2018212225A1 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6644191B1 (ja) * 2018-12-26 2020-02-12 三菱電機株式会社 ロボット制御装置、ロボット制御学習装置、及びロボット制御方法
JP2020089937A (ja) * 2018-12-05 2020-06-11 三菱電機株式会社 ロボット遠隔操作装置
WO2020204072A1 (ja) * 2019-04-03 2020-10-08 Telexistence株式会社 制御装置、ネットワーク制御方法、及びプログラム
JP2022525424A (ja) * 2019-03-18 2022-05-13 ケース ウェスタン リザーブ ユニバーシティ ヒューマンマシン統合システム及び方法
JP2022107578A (ja) * 2020-12-04 2022-07-22 チームグリット 無線操縦玩具の遠隔制御方法及びその装置
WO2024018922A1 (ja) * 2022-07-19 2024-01-25 ソニーグループ株式会社 信号処理装置、信号処理方法、プログラム

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115225682B (zh) * 2021-04-15 2024-01-19 本田技研工业株式会社 管理服务器、远程操作系统、远程操作方法以及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6229196B2 (ja) 1981-01-14 1987-06-24 Kogyo Gijutsuin
JP2001025986A (ja) * 1999-07-12 2001-01-30 Mitsubishi Electric Corp ロボットの遠隔操作装置
JP2005177958A (ja) * 2003-12-24 2005-07-07 Olympus Corp 遠隔操作システム
JP2015047666A (ja) * 2013-09-02 2015-03-16 トヨタ自動車株式会社 遠隔操作装置、及び操作画像表示方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6229196A (ja) 1985-07-31 1987-02-07 株式会社日立製作所 リフロ−はんだ付方法およびその装置
US20110306986A1 (en) * 2009-03-24 2011-12-15 Min Kyu Lee Surgical robot system using augmented reality, and method for controlling same
US9005199B2 (en) * 2010-06-10 2015-04-14 Ethicon Endo-Surgery, Inc. Heat management configurations for controlling heat dissipation from electrosurgical instruments
DE102010062648A1 (de) * 2010-12-08 2012-06-14 Kuka Roboter Gmbh Telepräsenzsystem
WO2016073557A1 (en) * 2014-11-04 2016-05-12 The University Of North Carolina At Chapel Hill Minimal-latency tracking and display for matching real and virtual worlds
US10628996B2 (en) * 2016-03-15 2020-04-21 Magic Leap, Inc. Direct light compensation technique for augmented reality system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6229196B2 (ja) 1981-01-14 1987-06-24 Kogyo Gijutsuin
JP2001025986A (ja) * 1999-07-12 2001-01-30 Mitsubishi Electric Corp ロボットの遠隔操作装置
JP2005177958A (ja) * 2003-12-24 2005-07-07 Olympus Corp 遠隔操作システム
JP2015047666A (ja) * 2013-09-02 2015-03-16 トヨタ自動車株式会社 遠隔操作装置、及び操作画像表示方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CHARITH LASANTHA FERNANDOMASAHIRO FURUKAWATADATOSHI KUROGISHO KAMUROKATSUNARI SATOKOUTA MINAMIZAWASUSUMU TACHI: "Design of TELESAR V for Transferring Bodily Consciousness in Telexistence", 2012 IEEE/RSJ INTERNATIONAL CONFERENCE ON INTELLIGENT ROBOTS AND SYSTEMS(PORTUGAL, 7 October 2012 (2012-10-07)
See also references of EP3626403A4

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020089937A (ja) * 2018-12-05 2020-06-11 三菱電機株式会社 ロボット遠隔操作装置
JP6644191B1 (ja) * 2018-12-26 2020-02-12 三菱電機株式会社 ロボット制御装置、ロボット制御学習装置、及びロボット制御方法
WO2020136769A1 (ja) * 2018-12-26 2020-07-02 三菱電機株式会社 ロボット制御装置、ロボット制御学習装置、及びロボット制御方法
JP2022525424A (ja) * 2019-03-18 2022-05-13 ケース ウェスタン リザーブ ユニバーシティ ヒューマンマシン統合システム及び方法
WO2020204072A1 (ja) * 2019-04-03 2020-10-08 Telexistence株式会社 制御装置、ネットワーク制御方法、及びプログラム
JP2022107578A (ja) * 2020-12-04 2022-07-22 チームグリット 無線操縦玩具の遠隔制御方法及びその装置
WO2024018922A1 (ja) * 2022-07-19 2024-01-25 ソニーグループ株式会社 信号処理装置、信号処理方法、プログラム

Also Published As

Publication number Publication date
JP7034494B2 (ja) 2022-03-14
EP3626403A4 (en) 2021-03-10
EP3626403A1 (en) 2020-03-25
JPWO2018212225A1 (ja) 2020-03-26
US20200078950A1 (en) 2020-03-12
CN110678300A (zh) 2020-01-10
US11541546B2 (en) 2023-01-03

Similar Documents

Publication Publication Date Title
JP7034494B2 (ja) 感覚付与装置、ロボット制御システム、ロボット制御方法及びプログラム
US9900688B2 (en) Beamforming audio with wearable device microphones
WO2017183319A1 (ja) ロボットおよび筐体
US10871822B2 (en) Image generation apparatus, image generation system, and image generation method
JP7239916B2 (ja) 遠隔操作システム、情報処理方法、及びプログラム
US11360545B2 (en) Information processing device, information processing method, and program
JP6044306B2 (ja) 情報処理装置、情報処理システム及びプログラム
US10863277B2 (en) Systems and methods for controlling electronic devices
WO2017183294A1 (ja) アクチュエータ装置
JP2017201742A (ja) 処理装置および画像決定方法
US11810219B2 (en) Multi-user and multi-surrogate virtual encounters
JP6969577B2 (ja) 情報処理装置、情報処理方法、及びプログラム
US11327576B2 (en) Information processing apparatus, information processing method, and program
WO2017183292A1 (ja) 処理装置および画像決定方法
WO2019240276A1 (ja) データ差し替え装置、端末、およびデータ差し替えプログラム
JP2018023464A (ja) ロボットおよび筐体
WO2023017622A1 (ja) 情報処理装置、情報処理方法およびプログラム
WO2017183293A1 (ja) 位相差増幅装置
WO2020204072A1 (ja) 制御装置、ネットワーク制御方法、及びプログラム
Inoue et al. Enhancing bodily expression and communication capacity of telexistence robot with augmented reality
JP2019220147A (ja) データ差し替え装置、端末、およびデータ差し替えプログラム
KR20200026596A (ko) 원격 탐사를 위한 햅틱 상호작용 시스템 및 방법

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18802159

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2019518832

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2018802159

Country of ref document: EP

Effective date: 20191217