WO2023200011A1 - 遠隔制御システム、ロボットの遠隔制御方法及び遠隔制御プログラム - Google Patents
遠隔制御システム、ロボットの遠隔制御方法及び遠隔制御プログラム Download PDFInfo
- Publication number
- WO2023200011A1 WO2023200011A1 PCT/JP2023/015227 JP2023015227W WO2023200011A1 WO 2023200011 A1 WO2023200011 A1 WO 2023200011A1 JP 2023015227 W JP2023015227 W JP 2023015227W WO 2023200011 A1 WO2023200011 A1 WO 2023200011A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- robot
- user
- remote control
- contact
- operating
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 83
- 230000000638 stimulation Effects 0.000 claims abstract description 20
- 230000008569 process Effects 0.000 claims description 71
- 230000006870 function Effects 0.000 claims description 24
- 230000015541 sensory perception of touch Effects 0.000 claims description 20
- 238000001514 detection method Methods 0.000 claims description 19
- 230000003213 activating effect Effects 0.000 claims description 7
- 230000033001 locomotion Effects 0.000 description 46
- 238000003384 imaging method Methods 0.000 description 30
- 238000012545 processing Methods 0.000 description 28
- 238000010586 diagram Methods 0.000 description 7
- 238000012546 transfer Methods 0.000 description 7
- 230000008859 change Effects 0.000 description 5
- 230000036544 posture Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 4
- 239000012636 effector Substances 0.000 description 3
- 238000012790 confirmation Methods 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000033764 rhythmic process Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000004936 stimulating effect Effects 0.000 description 1
- 210000000707 wrist Anatomy 0.000 description 1
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J3/00—Manipulators of master-slave type, i.e. both controlling unit and controlled unit perform corresponding spatial movements
Definitions
- the technology disclosed herein relates to a remote control system, a robot remote control method, and a remote control program.
- Patent Document 1 discloses a remote control system that includes a robot and an operating device that are physically located apart from each other.
- an image of the robot is displayed on a display device.
- the user remotely controls the robot by operating the operating device while viewing the display device.
- the user checks the status of the robot via the display device. Therefore, the accuracy with which the user can confirm the robot's situation depends on the quality of the image displayed on the display device. If image quality is improved to increase confirmation accuracy, there will be a delay in the image displayed on the display device, which may cause a time lag in confirming the robot's situation.
- the technology disclosed herein has been developed in view of this point, and its purpose is to enable a user to accurately judge the situation of a robot when remotely controlling the robot.
- the remote control system disclosed herein includes a robot, an operating device that receives input from a user, a display device that presents an image of the robot to the user, a tactile device that provides stimulation to the user's tactile sense, and a control device that receives input from a user. a controller for controlling the robot based on input to the device, the controller activating the haptic device when the robot contacts another object.
- the robot remote control system disclosed herein includes a robot, an operating device that receives input from a user, a display device that presents an image of the robot to the user, and a tactile device that provides stimulation to the user's tactile sense. and a control device that causes the robot to perform a task including a plurality of steps based on an input to the operating device, the control device controlling the tactile sense upon completion of at least one of the plurality of steps. Activate the device.
- the remote control method for a robot disclosed herein is a remote control method for a robot that controls the robot via an operating device, which includes receiving input from a user via the operating device, and controlling the robot via the operating device. operating the robot based on an input; presenting an image of the operating robot to the user via a display device; and stimulating the user's tactile sense when the robot comes into contact with another object. activating a haptic device to
- the remote control program disclosed herein enables a computer to realize a function of controlling a remote control system that includes a robot, an operating device that receives input from a user, and a tactile device that provides stimulation to the user's tactile sense.
- a remote control program having a function of accepting input from a user via the operating device, a function of operating the robot based on the input to the operating device, and a case where the robot comes into contact with another object. and a function of operating a tactile device that provides stimulation to the user's tactile sense.
- the user can accurately judge the situation of the robot.
- the user can accurately judge the robot's situation.
- the user can accurately judge the situation of the robot.
- FIG. 1 is a schematic diagram showing the configuration of a remote control system according to an embodiment.
- FIG. 2 is a schematic front view of the hand 2.
- FIG. 3 is a diagram showing a schematic hardware configuration of the control device 6.
- FIG. 4 is a functional block diagram of the control device 6.
- FIG. 5 is a flowchart of remote control.
- FIG. 6 is a flowchart of remote control according to a modification.
- FIG. 1 is a schematic diagram showing the configuration of a remote control system 100 according to an embodiment.
- the remote control system 100 includes a robot 1, an operating device 4 that receives input from a user, a display device 52 that presents an image of the robot 1 to the user, a tactile device 8 that provides stimulation to the user's tactile sense, and an operating device. and a control device 6 that controls the robot 1 based on input to the robot 4.
- the operating device 4, the display device 52, and the haptic device 8 are arranged at the first site S1 where the user is present.
- the robot 1 is placed at a second site S2 different from the first site S1.
- the control device 6 realizes remote control between the operating device 4 and the robot 1.
- the operating device 4 functions as a master device, and the robot 1 functions as a slave device.
- the remote control system 100 may further include an imaging device 51 that photographs the robot 1.
- the imaging device 51 is arranged at the second site S2.
- the display device 52 displays images captured by the imaging device 51.
- the user remotely controls the robot 1 via the operating device 4 and causes the robot 1 to perform a predetermined task.
- the imaging device 51 images the robot 1, and the display device 52 displays the captured image.
- the user operates the operating device 4 while checking the image of the robot 1 displayed on the display device 52.
- the user is given tactile stimulation from the haptic device 8 at appropriate timing. By receiving tactile stimulation from the tactile device 8, the user can learn that a predetermined event has occurred during remote operation.
- the work performed by the robot 1 does not include teaching work and teaching confirmation and correction work. Therefore, the operating device 4 does not include a teach pendant.
- Robot 1 is an industrial robot.
- the robot 1 includes a robot arm 11 and a hand 2 connected to the robot arm 11 and provided with fingers 22 for opening and closing operations.
- the robot arm 11 changes the position and posture of the hand 2.
- the robot arm 11 is a vertically articulated robot arm.
- the robot arm 11 includes a plurality of links 12, joints 13 connecting the plurality of links 12, a servo motor 14 (see FIG. 3) that rotationally drives the plurality of joints 13, and an encoder that detects the rotational position of the servo motor 14. 31 (see FIG. 3).
- a link 12 located at one end of the robot arm 11 is connected to the base 10 via a joint 13 so as to be rotatable around a rotation axis extending in the vertical direction.
- the robot arm 11 may be a horizontal multi-joint type, a parallel link type, a rectangular coordinate type, a polar coordinate type robot arm, or the like.
- the hand 2 is an end effector of the robot arm 11.
- the hand 2 is connected to the tip of the robot arm 11.
- the hand 2 is connected to one of the plurality of links 12 at the end opposite to the link 12 connected to the base 10 .
- the hand 2 can take various postures depending on the movement of the robot arm 11.
- FIG. 2 is a schematic front view of the hand 2.
- the hand 2 has a hand body 21 and two fingers 22 provided on the hand body 21.
- the hand main body 21 is rotatably connected to the link 12 of the robot arm 11 around a predetermined rotation axis A.
- the two fingers 22 are arranged side by side in a predetermined opening/closing direction X.
- the two fingers 22 are arranged symmetrically with respect to a central axis Z that is substantially orthogonal to the opening/closing direction X.
- the center axis Z is aligned with the rotation axis A substantially on a straight line.
- the two fingers 22 perform an opening/closing operation in the opening/closing direction X.
- the fingers 22 extend in a direction intersecting the opening/closing direction X. Specifically, the finger 22 extends substantially parallel to the central axis Z.
- the hand 2 further includes a servo motor 23 that causes the two fingers 22 to perform opening/closing operations, and an encoder 32 that detects the rotational position of the servo motor 23.
- the remote control system 100 further includes a sensor 3 that detects the force acting on the robot 1.
- the sensor 3 includes a contact force sensor 33 that detects the force acting on the finger 22 from the surface on which the workpiece W is placed.
- the contact force sensor 33 is provided on the hand 2, as shown in FIG. Specifically, the contact force sensor 33 is provided at a portion of the hand 2 that connects to the robot arm 11 .
- the contact force sensor 33 detects a force in the direction of the central axis Z of at least two fingers 22, that is, in the direction of the rotation axis A of the hand 2 with respect to the link 12.
- the contact force sensor 33 detects forces in the directions of three orthogonal axes including the direction of the central axis Z of the finger 22 and moments around the three axes.
- the hand 2 When gripping the workpiece W, the hand 2 usually moves in the direction of the central axis Z and comes into contact with the surface on which the workpiece W is placed. That is, the contact force sensor 33 detects the contact force acting on the finger 22 from the surface on which the workpiece W is placed. Note that the contact force sensor 33 may detect only force in one, two, or three axes. Contact force sensor 33 is an example of a first sensor.
- the encoder 31 and the encoder 32 are included in the sensor 3. Although details will be described later, if the deviation between the current rotational position of the servo motor 14 detected by the encoder 31 and the target rotational position is large, the robot arm 11 is in contact with another object, that is, the robot 1 An external force is acting on the Similarly, if the deviation between the current rotational position of the servo motor 23 and the target rotational position detected by the encoder 32 is large, the finger 22 is in contact with another object, that is, an external force is acting on the robot 1. are doing. That is, the encoder 31 and the encoder 32 each also function as a sensor that detects the force acting on the robot 1.
- the encoder 32 corresponds to a second sensor that detects the force acting on the finger 22 from the workpiece W in the opening/closing direction X of the finger 22.
- the operating device 4 includes an input section 41 through which a user performs input operations.
- the input section 41 includes a direction key 41a, a first input button 41b, a second input button 41c, a third input button 41d, and a fourth input button 41e.
- the operating device 4 receives input for remotely controlling the robot 1, and outputs operating information, which is input information, to the control device 6.
- the operating device 4 allows various operation inputs by combinations of the direction key 41a, the first input button 41b, the second input button 41c, the third input button 41d, and the fourth input button 41e.
- the user when operating the robot arm 11, the user can input movement of the hand 2 in the direction corresponding to the direction key 41a among the front, back, right, and left directions by operating the direction key 41a. At this time, the user can input vertical movement of the hand 2 using the second input button 41c and the fourth input button 41e.
- the user When operating the finger 22, the user inputs a closing motion of the finger 22 by operating the first input button 41b, and inputs an opening motion of the finger 22 by operating the third input button 41d. I can do it.
- the user can input a desired command by selecting one command from the command options displayed on the display device 52 using the direction key 41a and deciding on the command using the first input button 41b. I can do it.
- the imaging device 51 is arranged at the second site S2. Specifically, the imaging device 51 is attached to the tip of the robot arm 11. The imaging device 51 photographs the robot 1, specifically, the hand 2. The imaging device 51 outputs the captured image to the control device 6.
- the display device 52 is arranged at a position where the user can view it while operating the operating device 4.
- the display device 52 displays images taken by the imaging device 51 and transmitted from the control device 6.
- the display device 52 assists the user who operates the operating device 4 by displaying captured images of the robot 1.
- the haptic device 8 includes, for example, a voice coil motor 81.
- the haptic device 8 is, for example, worn on the user's wrist.
- the haptic device 8 generates vibrations by operating the voice coil motor 81.
- the tactile device 8 provides stimulation to the user's tactile sense through the vibration of the voice coil motor 81 .
- the haptic device 8 can change the vibration mode.
- the vibration mode includes amplitude, frequency, repetition period or rhythm, and the like.
- the haptic device 8 can adjust the amplitude, ie, the magnitude of vibration, by adjusting the current applied to the voice coil motor 81.
- the haptic device 8 can adjust the magnitude of vibration in three levels.
- the haptic device 8 can alternatively generate a first vibration that is relatively small, a second vibration that is larger than the first vibration, and a third vibration that is larger than the second vibration.
- the first vibration, the second vibration, and the third vibration may be continuous vibrations or may be intermittent vibrations.
- the vibration modes of the first vibration, second vibration, and third vibration may be unified or may be different from each other.
- the haptic device 8 may adjust the frequency of vibration in addition to or instead of the amplitude. Furthermore, the haptic device 8 can generate an alarm vibration in addition to the first vibration, second vibration, and third vibration. For example, the amplitude of the alarm vibration is larger than the first vibration, the second vibration, and the third vibration, and the vibration mode of the alarm vibration is different from the first vibration, the second vibration, and the third vibration.
- the robot 1 , the sensor 3 , the operating device 4 , the imaging device 51 , the display device 52 , and the tactile device 8 are connected to the control device 6 .
- the control device 6 operates the robot 1 based on operation information from the operating device 4. Specifically, the control device 6 causes the robot 1 to perform a task including a plurality of steps based on input to the operating device 4. For example, the control device 6 causes the robot 1 to perform picking work for the work W. In this example, the control device 6 does not perform force control and position control of the operating device 4 based on the state of the robot 1.
- the control device 6 performs so-called unilateral control, which controls the robot 1 in one direction based on operation information from the operating device 4 .
- the control device 6 transmits the captured image from the imaging device 51 to the display device 52. Furthermore, the control device 6 controls the haptic device 8 according to the situation of the robot 1. Specifically, the control device 6 presents the state of contact of the robot 1 with another object to the user's tactile sense via the tactile device 8 . In this way, the control device 6 controls the robot 1, presents the photographed image, and controls the haptic device 8 in parallel.
- FIG. 3 is a diagram showing a schematic hardware configuration of the control device 6.
- the control device 6 includes a main control device 60 and a robot control device 7.
- the main controller 60 transmits and receives information, commands, data, etc. to and from the robot controller 7.
- the main controller 60 receives a signal from the operating device 4 and outputs a command to the robot controller 7.
- the robot control device 7 applies current to the servo motor 14 or 23 based on the command.
- the robot control device 7 receives a signal from the encoder 31 or 32 and performs feedback control on the servo motor 14 or 23.
- the robot control device 7 receives signals from the encoder 31 , the encoder 32 and the contact force sensor 33 , and an image signal from the imaging device 51 , and outputs the received signals to the main control device 60 .
- the main control device 60 outputs the image signal from the imaging device 51 to the display device 52.
- Main controller 60 controls haptic device 8 based on signals from encoder 32 and contact force sensor 33 .
- the robot control device 7 includes a control section 71, a storage section 72, and a memory 73.
- the main controller 60 includes a control section 61, a storage section 62, and a memory 63.
- the control unit 71 controls the entire robot control device 7.
- the control unit 61 controls the main control device 60 as a whole.
- the control unit 71 and the control unit 61 each perform various calculation processes.
- each of the control unit 71 and the control unit 61 is formed of a processor such as a CPU (Central Processing Unit).
- Each of the control unit 71 and the control unit 61 may be formed of an MCU (Micro Controller Unit), an MPU (Micro Processor Unit), an FPGA (Field Programmable Gate Array), a PLC (Programmable Logic Controller), a system LSI, etc. .
- the storage unit 72 stores programs executed by the control unit 71 and various data.
- the storage unit 62 stores programs executed by the control unit 61 and various data. Specifically, the storage unit 62 stores a remote control program 62a.
- Each of the storage unit 72 and the storage unit 62 is formed of a nonvolatile memory, an HDD (Hard Disc Drive), an SSD (Solid State Drive), or the like.
- the memory 73 and the memory 63 each temporarily store data and the like.
- each of the memory 73 and the memory 63 is formed of volatile memory.
- FIG. 4 is a functional block diagram of the control device 6.
- the control unit 61 implements various functions by reading the remote control program 62a from the storage unit 62 into the memory 63 and developing it. Specifically, the control section 61 functions as an input processing section 64 , a command position generation section 65 , a command angle conversion section 66 , an image processing section 67 , and a haptic control section 68 .
- the control unit 71 implements various functions by reading programs from the storage unit 72 into the memory 73 and developing them. Specifically, the control section 71 functions as a sensor processing section 74 , an operation control section 75 , and an imaging control section 76 .
- the input processing unit 64 switches between a first mode in which the robot arm 11 is operated and a second mode in which the finger 22 is operated, based on the operation information from the operating device 4. For example, when the user operates the direction key 41a, the first input button 41b, or the second input button 41c, a mode switching command is input from the operating device 4 to the input processing unit 64.
- the input processing unit 64 generates the command speed of the operation target in the current mode based on the operation information from the operation device 4.
- the user inputs the moving direction of the hand 2 by operating the direction key 41a or the like.
- the input processing unit 64 generates a commanded speed of the hand 2 based on the movement direction input from the operating device 4 .
- the commanded speed is a so-called speed vector, and is defined by the moving direction and speed.
- the speed is assumed to be constant.
- the input processing unit 64 generates the command speed of the hand 2 based on the moving direction and speed input from the operating device 4.
- the user inputs the moving direction of the finger 22, that is, the opening direction or the closing direction, by operating the direction key 41a or the like.
- the input processing unit 64 generates a commanded speed of the finger 22 based on the movement direction input from the operating device 4 .
- the commanded speed is a so-called speed vector, and is defined by the moving direction and speed.
- the speed is assumed to be constant.
- the input processing unit 64 generates the command speed of the finger 22 based on the moving direction and speed input from the operating device 4.
- the command position generation unit 65 converts the command speed generated by the input processing unit 64 into a command position.
- the command position generation unit 65 converts the command position of the hand 2 in the first mode, and converts the command position of the finger 22 in the second mode.
- the commanded position of the hand 2 includes not only the position of the hand 2 but also the posture of the hand 2. Note that even when the fingers 22 open and close, the posture of the fingers 22 with respect to the hand body 21 does not change, so the commanded position of the fingers 22 does not include the posture of the fingers 22.
- the command angle converter 66 converts the command position converted by the command position generator 65 into a command angle position of the servo motor.
- the command angle conversion unit 66 obtains the angular position of each servo motor 14 corresponding to the command position of the hand 2 as the command angular position.
- the command angle converter 66 determines the angular position of the servo motor 23 corresponding to the command position of the finger 22 as the command angular position.
- the command angle converter 66 outputs the obtained command angle position to the robot control device 7.
- the sensor processing unit 74 receives detection signals, that is, detection results, from the encoder 31, the encoder 32, and the contact force sensor 33.
- the sensor processing section 74 outputs detection signals from the encoder 31 and the encoder 32 to the operation control section 75. Furthermore, the sensor processing unit 74 outputs detection signals from the encoder 31 , the encoder 32 , and the contact force sensor 33 to the main controller 60 .
- the motion control unit 75 receives the command angular position from the main controller 60 and operates the robot 1 according to the command angular position. Specifically, upon receiving the commanded angular position of the servo motor 14, the operation control unit 75 determines a current command value for realizing the commanded angular position. The operation control unit 75 operates the robot arm 11 by applying a current corresponding to the current command value to the servo motor 14 . At this time, the operation control section 75 performs feedback control of the current applied to the servo motor 14 based on the detection signal of the encoder 31 from the sensor processing section 74 . This causes the hand 2 to move to the commanded position.
- the operation control unit 75 determines a current command value for realizing the commanded angular position.
- the operation control unit 75 operates the finger 22 by applying a current corresponding to the current command value to the servo motor 23 .
- the operation control section 75 performs feedback control of the current applied to the servo motor 23 based on the detection signal of the encoder 32 from the sensor processing section 74 . This moves the finger 22 to the commanded position.
- the imaging control unit 76 outputs a command to the imaging device 51 to cause the imaging device 51 to execute imaging.
- the imaging control unit 76 receives a photographed image from the imaging device 51 and transmits the photographed image to the main control device 60.
- the image processing unit 67 transfers the photographed image, that is, the image signal, received from the imaging device 51 to the display device 52. At this time, the image processing unit 67 may perform predetermined image processing on the captured image.
- the haptic control unit 68 controls the haptic device 8. Specifically, the haptic control unit 68 determines whether the robot 1 has come into contact with another object, and vibrates the haptic device 8 if contact has occurred. The tactile control unit 68 determines the occurrence of contact based on the detection results of the sensor 3 including the encoder 31, the encoder 32, and the contact force sensor 33.
- the contact force sensor 33 detects the contact force that the hand 2 receives from another object. Since the contact force sensor 33 detects at least the force in the direction of the central axis Z of the finger 22, it detects the contact force when the finger 22 contacts another object in the direction of the central axis Z.
- the tactile control unit 68 determines that the finger 22 is in contact with another object when the contact force detected by the contact force sensor 33 is greater than or equal to a predetermined first threshold value.
- the first threshold value is a contact force value that allows it to be determined that the hand 2 is in contact with another object, and is a relatively small value.
- the haptic control unit 68 determines the deviation between the current angular position of the corresponding servo motor 14 of the robot arm 11 and the commanded angular position.
- the deviation in the angular position of the servo motor 14 corresponds to the contact force that the robot arm 11 experiences from other objects.
- the haptic control unit 68 determines that the robot arm 11 is in contact with another object when the deviation of the angular position is greater than or equal to a predetermined second threshold.
- the second threshold value is a deviation value corresponding to a contact force that is sufficient to determine that the robot arm 11 has contacted another object.
- the haptic control unit 68 determines the deviation between the current angular position of the servo motor 23 of the hand 2 and the commanded angular position based on the detection result of the encoder 32.
- the deviation in the angular position of the servo motor 23 corresponds to the contact force that the finger 22 receives from another object in the opening/closing direction X.
- the haptic control unit 68 determines that the finger 22 is in contact with another object when the deviation of the angular position is larger than a predetermined third threshold.
- the third threshold value is a value of the deviation corresponding to the gripping force of the workpiece W by the fingers 22.
- the haptic control unit 68 determines that the finger 22 is in contact with another object.
- the tactile control unit 68 recognizes the contacts detected by each of the encoder 31, encoder 32, and contact force sensor 33 as separate contacts. That is, the haptic control unit 68 determines the type of contact by the robot 1 based on which of the encoder 31, the encoder 32, and the contact force sensor 33 detects the contact. For example, if a contact is detected by each of the encoder 31 and the contact force sensor 33, the haptic control unit 68 determines that two different types of contact are occurring.
- the haptic control unit 68 activates the haptic device 8.
- the haptic control unit 68 operates the haptic device 8 for each different type of contact. Specifically, the haptic control unit 68 changes the operating mode of the haptic device 8 according to the number of types of contact occurring simultaneously. If one type of contact is occurring, the haptic control unit 68 outputs a command to the haptic device 8 to generate a first vibration. If two types of contact are occurring, the haptic control unit 68 outputs a command to the haptic device 8 to generate a second vibration. If three types of contact are occurring, the haptic control unit 68 outputs a command to the haptic device 8 to generate a third vibration. In either case, regardless of the type of contact, the haptic control unit 68 makes a judgment based only on the number of types of contact and outputs a corresponding command.
- the haptic control unit 68 determines the magnitude of the contact force of the robot 1 and changes the operating mode of the haptic device 8 according to the magnitude of the contact force. Specifically, the haptic control unit 68 detects when the robot 1 contacts another object with a contact force large enough to forcibly stop the operation of the robot 1 (hereinafter referred to as "strong contact”). I'm monitoring to see if there are any.
- strong contact is contact with a contact force that is greater than the contact force when it is determined that contact has occurred based on the detection results of each sensor.
- the tactile control unit 68 determines that a strong contact by the finger 22 has occurred.
- the haptic control unit 68 determines that a strong contact of the robot arm 11 has occurred.
- the haptic control unit 68 determines that strong contact by the finger 22 in the opening/closing direction X has occurred.
- the first upper limit, the second upper limit, and the third upper limit are values each corresponding to a contact force large enough to forcibly stop the operation of the robot 1.
- the tactile control unit 68 outputs a command to the tactile device 8 to generate an alarm vibration.
- the vibration mode of the alarm vibration is different from the first vibration, the second vibration, and the third vibration.
- FIG. 5 is a flowchart of remote control.
- the picking operation is an operation in which the robot 1 picks up the work W placed in the container C from a predetermined starting state and transfers it to the tray T.
- the picking operation includes a first movement process in which the hand 2 is moved to the picking position, a gripping process in which the hand 2 is made to grip the workpiece W, and a second movement process in which the hand 2 gripping the workpiece W is moved to the transfer position. , and a release step of releasing the grip of the workpiece W by the hand 2.
- images of the robot 1 taken by the imaging device 51 are displayed on the display device 52.
- the user operates the operating device 4 while viewing the captured image of the robot 1 displayed on the display device 52.
- Displaying the image of the robot 1 on the display device 52 corresponds to presenting an image of the robot 1 in action to the user via the display device 52.
- step S101 the user inputs an operation to the operating device 4.
- operation information is input from the operating device 4 to the control unit 61.
- the input processing unit 64 of the control unit 61 receives operation information from the operating device 4 .
- Step S101 corresponds to receiving input from the user via the operating device 4.
- step S102 the control unit 61 causes the robot 1 to perform an operation according to the operation information.
- the input processing unit 64 generates a command speed according to operation information from the operating device 4.
- the command position generation unit 65 converts the command speed into a position command.
- the command angle conversion section 66 converts the position command into a command angular position, and outputs the converted command angular position to the operation control section 75 .
- the operation control unit 75 outputs a current for realizing the commanded angular position to the corresponding servo motor 14 or 23.
- the operation control unit 75 performs feedback control of the applied current based on the detection signal of the encoder 31 or 32. In this way, the robot 1 executes operations according to the user's operations on the operating device 4.
- Step S102 corresponds to operating the robot 1 based on the input to the operating device 4.
- step S103 the control unit 61 determines whether the robot 1 has contacted another object.
- the control unit 61 determines whether the robot 1 has contacted another object based on the detection results of the encoder 31, the encoder 32, and the contact force sensor 33. Specifically, when the contact force detected by the contact force sensor 33 is greater than or equal to the first threshold, when the deviation of the angular position of the servo motor 14 determined based on the detection result of the encoder 31 is greater than or equal to the second threshold, or when the encoder If the deviation of the angular position of the servo motor 23 determined based on the detection result of 32 is equal to or greater than the third threshold value, the haptic control unit 68 determines that contact has occurred.
- control unit 61 returns to step S101 and repeats the processing from step S101.
- the robot 1 continuously operates in response to the user's operation of the operating device 4.
- step S104 the control unit 61 determines whether the contact that has occurred is a strong contact. Specifically, if the contact force used in the determination in step S103, the deviation in the angular position of the servo motor 14, or the deviation in the angular position of the servo motor 23 is greater than or equal to the corresponding upper limit value, the haptic control unit 68 , the tactile control unit 68 determines that strong contact has occurred.
- the haptic control unit 68 outputs a command to generate an alarm vibration to the haptic device 8 in step S105.
- the haptic device 8 generates an alarm vibration.
- the user can know from the alarm vibration of the haptic device 8 that the robot 1 is in contact with another object with a large contact force. Thereby, the user can stop the operation of the robot 1 or operate the robot 1 so as to eliminate contact with the robot 1.
- the control unit 61 may forcibly stop the robot 1.
- the haptic control unit 68 determines the number N of types of contacts occurring simultaneously (hereinafter referred to as "number N of contacts") in step S106. If the number of contacts N is 1, the haptic control unit 68 outputs a command to generate the first vibration to the haptic device 8 in step S107. When the number of contacts N is 2, the haptic control unit 68 outputs a command to generate the second vibration to the haptic device 8 in step S108. If the number of contacts N is 3, the haptic control unit 68 outputs a command to generate the third vibration to the haptic device 8 in step S109. The haptic device 8 generates vibrations according to the command. Steps S105, S107, S108, and S109 correspond to activating the tactile device 8 that provides stimulation to the user's tactile sense when the robot 1 comes into contact with another object.
- the haptic device 8 when the robot 1 comes into contact with another object while the robot 1 is operating, the haptic device 8 generates vibrations to notify the user of the occurrence of the contact.
- the user can recognize the occurrence of contact by the vibration of the haptic device 8.
- the user can determine what kind of contact is occurring from the image of the robot 1 displayed on the display device 52.
- a task may include steps that involve contact upon completion.
- the user may be notified of an unexpected contact in a portion that cannot be confirmed on the display device 52. You can know that contact has occurred. Furthermore, if the vibration of the haptic device 8 at that time is an alarm vibration, it can be known that the unexpected contact is accompanied by a relatively large contact force. Thereby, the user can make the robot 1 take an avoidance action.
- the user first causes the robot 1 to perform the first movement process. Specifically, the user operates the operating device 4 to set the first mode. The user moves the hand 2 toward the grasping position by operating the direction key 41a and, if necessary, the second input button 41c or the fourth input button 41e while viewing the display device 52.
- the gripping position is the position of the workpiece W in the container C. Steps S101, S102, and S103 are repeated, and the hand 2 gradually moves from the starting position toward the gripping position. Basically, the user determines whether the hand 2 has reached the gripping position based on the image on the display device 52.
- the contact force sensor 33 detects the contact force (step S103). Since the number of contacts N at this time is 1, the haptic control unit 68 causes the haptic device 8 to generate the first vibration (step S107).
- the user senses the first vibration of the haptic device 8
- the user can determine whether the finger 22 has touched the bottom surface of the container C or the like based on the operation details of the operating device 4 and the image of the robot 1 on the display device 52.
- the fingers 22 contact the bottom surface of the container C, the hand 2 has almost reached the gripping position, so the user releases the contact with the fingers 22 and stops the movement of the robot 1.
- the user can recognize from the image on the display device 52 that the hand 2 has approached the container C, and can also know from the vibration of the haptic device 8 that contact with the robot 1 has occurred. . This allows the user to eliminate accidental contact with the fingers 22 and accurately determine that the fingers 22 have almost reached the grasping position.
- the user causes the robot 1 to perform the gripping process.
- the user operates the operating device 4 to switch from the first mode to the second mode.
- the user causes the finger 22 to perform a closing action by continuing to press the first input button 41b.
- Steps S101, S102, and S103 are repeated, and the finger 22 approaches the workpiece W.
- the tactile control unit 68 detects the contact of the finger 22 based on the detection result of the encoder 32 (step S103).
- the number of contacts N becomes 1.
- the haptic control unit 68 causes the haptic device 8 to generate a first vibration (step S107).
- the user can know that the finger 22 has touched the workpiece W.
- the user can determine whether the finger 22 is in contact with the user based on the operation content of the operating device 4 and the image of the robot 1 on the display device 52. Therefore, when the user senses the first vibration of the haptic device 8, the user determines that the grasping process has been completed and the user stop movement. Therefore, the contact at this time almost never reaches a strong contact.
- the user can recognize from the image on the display device 52 that the finger 22 has approached the workpiece W, and can also know from the vibration of the haptic device 8 that contact with the robot 1 has occurred. . Thereby, the user can accurately determine the completion of the grasping process based on the vibration of the haptic device 8.
- the user When the grasping process is completed, the user causes the robot 1 to perform the second movement process.
- the user operates the operating device 4 to switch from the second mode to the first mode.
- the user moves the hand 2 toward the transfer position by operating the direction key 41a and, if necessary, the second input button 41c or the fourth input button 41e while viewing the display device 52.
- Steps S101, S102, and S103 are repeated, and the hand 2 gradually moves from the gripping position to the transfer position.
- the detection of the contact of the finger 22 based on the encoder 32 continues, so the haptic device 8 continues to generate the first vibration.
- the contact force sensor 33 detects the contact force that the finger 22 receives from the bottom surface of the tray T via the workpiece W (step S103).
- the number of contacts N increases from 1 to 2, and the haptic control unit 68 causes the haptic device 8 to generate a second vibration (step S108).
- the user can determine whether the workpiece W is in contact with the workpiece W based on the operation details of the operating device 4 and the image of the robot 1 on the display device 52. Therefore, when the user senses the second vibration of the tactile device 8, the user determines that the second movement step is complete and the robot Stop the movement of 1. Therefore, the contact at this time almost never reaches a strong contact.
- contact of the workpiece W with the bottom surface of the tray T may not be confirmed from the image on the display device 52. Even in such a case, the user can recognize from the image on the display device 52 that the workpiece W has approached the bottom surface of the tray T, and can also recognize from the vibration of the tactile device 8 that contact with the robot 1 has occurred. You can get it. Thereby, the user can accurately determine the completion of the second movement step based on the vibration of the haptic device 8.
- the user causes the robot 1 to execute the release step.
- the user operates the operating device 4 to switch from the first mode to the second mode.
- the user causes the finger 22 to perform an opening motion by continuing to press the third input button 41d.
- Steps S101, S102, and S103 are repeated, and the finger 22 is separated from the workpiece W.
- the contact force based on the encoder 32 becomes zero.
- the contact force acting on the finger 22 from the bottom surface of the tray T via the workpiece W also becomes zero.
- the haptic control section 68 stops the vibration of the haptic device 8. Since the haptic device 8 stops vibrating, the user can know that the contact with the finger 22 has been removed.
- the user can determine whether to release the contact with the finger 22 based on the operation details of the operating device 4 and the image of the robot 1 on the display device 52, so when the user senses the first vibration of the haptic device 8, the user can determine that the release process is complete and release the finger. Stop the movement of 22.
- the user can know that the contact of the robot 1 with the other object is eliminated by reducing or eliminating the vibration of the haptic device 8. Thereby, the user can accurately determine the completion of the release process by reducing or eliminating the vibration of the haptic device 8.
- the picking work is completed. Note that the picking work may be completed by returning the robot 1 to the starting state after the release process.
- the haptic device 8 generates an alarm vibration to notify the user of the occurrence of the contact with the robot 1. It can encourage you to take evasive action. In other words, when an unexpected contact occurs, a relatively large contact force may act on the robot 1 because the user does not immediately stop the operation of the robot 1. In particular, if a portion of the robot 1 that is not displayed on the display device 52 is in contact with another object, the user cannot know from the display device 52 that a contact has occurred, so a relatively large contact force may be applied. Likely to happen.
- the tactile control unit 68 When the tactile control unit 68 detects a contact with a large contact force, it determines that a strong contact has occurred in step S104, and causes the tactile device 8 to generate an alarm vibration in step S105. This allows the user to know the occurrence of contact between the robot 1, which cannot be detected by the display device 52, and allows the user to quickly resolve the contact between the robot 1 and the robot 1.
- the remote control system 100 notifies the user of the occurrence of contact by the robot 1 through the user's sense of touch using the haptic device 8.
- the user determines the cause of the contact based on the operation of the operating device 4, the image of the robot 1 on the display device 52, the vibration mode, and the like. If the contact is related to completing a step, the user moves on to the next step. If the contact is unexpected, the user stops the operation of the robot 1 or causes the robot 1 to perform a contact cancellation operation. In other words, the user can accurately judge the situation of the robot 1.
- the number of contacts N will never reach 3.
- the haptic device 8 generates the third vibration.
- the operating device 4 continuously inputs the continuous motion of the robot 1, that is, the motion trajectory. That is, the robot 1 operates while the input from the operating device 4 continues, and stops when the input from the operating device 4 stops.
- the operation input from the operating device 4 is not limited to this.
- a command may be input from the operating device 4, and the control device 6 may autonomously control the robot 1 to cause the robot 1 to perform an operation according to the command.
- the user inputs multiple commands corresponding to multiple processes to the operating device 4.
- the plurality of commands are an execution command for the first movement process, an execution command for the gripping process, an execution command for the second movement process, and an execution command for the release process.
- execution commands for each process may be assigned to the first input button 41b, second input button 41c, third input button 41d, and fourth input button 41e of the operating device 4.
- commands for each process are displayed as options on the display device 52, one command is selected using the direction key 41a, and the command is determined using the first input button 41b, whereby a desired command is controlled from the operating device 4.
- Device 6 may be input.
- the control device 6 causes the robot 1 to execute a process corresponding to a command input to the operating device 4.
- the input processing unit 64 determines the process to be executed based on the operation information from the operating device 4.
- the command position generation unit 65 generates a trajectory of the robot 1 for realizing an operation corresponding to the determined process.
- the trajectory of the robot 1 may be generated based on preset teaching information, or may be generated by modifying the trajectory thus generated using an image captured by the imaging device 51.
- the command position generation unit 65 sequentially outputs command positions for realizing the generated trajectory of the robot 1 to the command angle conversion unit 66.
- the control contents of the command angle converter 66 and the motion control section 75 are the same as in the case of continuous motion input described above.
- the user inputs an execution command for the first movement step via the operating device 4.
- the control unit 61 operates the robot 1 so that the hand 2 moves from the starting position to the grasping position.
- the user waits for the first movement process to be completed.
- the hand 2 reaches the gripping position, the fingers 22 come into contact with the bottom surface of the container C.
- the contact force sensor 33 detects the contact force, and the haptic device 8 generates a first vibration. Even if it is difficult for the user to judge whether the first movement process is complete based only on the image of the robot 1 on the display device 52, the user can accurately know the completion of the first movement process by the vibration of the haptic device 8.
- the user When the user learns that the first movement process is completed, the user inputs a grasping process execution command via the operating device 4.
- the control unit 61 causes the finger 22 to perform a closing operation. After inputting the grasping process execution command, the user waits for the grasping process to be completed.
- the vibration of the haptic device 8 switches from the first vibration to the second vibration. It is difficult for the user to determine whether or not the fingers 22 have gripped the workpiece W with a predetermined gripping force only from the image of the robot 1 on the display device 52. The user can accurately know from the vibration of the tactile device 8 that the grasping of the workpiece W by the fingers 22 has been completed.
- the user inputs an execution command for the second movement process via the operating device 4.
- the control unit 61 operates the robot 1 so that the hand 2 moves from the container C to the tray T.
- the user waits for the second movement process to be completed.
- the finger 22 separates from the bottom surface of the container C, so the number of contacts N decreases from 2 to 1, and the vibration of the haptic device 8 switches from the second vibration to the first vibration.
- the hand 2 reaches the tray T transfer position, the fingers 22 come into contact with the bottom surface of the tray T. Since the number of contacts N increases from 1 to 2, the vibration of the haptic device 8 switches from the first vibration to the second vibration. Even if it is difficult for the user to judge the completion of the second movement process based only on the image of the robot 1 on the display device 52, the user can accurately know the completion of the second movement process by the vibration of the haptic device 8.
- the control unit 61 causes the finger 22 to perform an opening operation. After the user inputs the execution command for the release process, the user waits for the release process to be completed.
- the vibration of the haptic device 8 switches from the second vibration to the first vibration. It is difficult for the user to determine the separation of the finger 22 from the workpiece W only from the image of the robot 1 on the display device 52. The user can accurately know from the vibration of the tactile device 8 that the release of the grip on the workpiece W by the fingers 22 has been completed.
- the user can know the completion of each step by the vibration of the haptic device 8. Therefore, the user does not need to wait for the completion of a process unnecessarily, and can smoothly move on to the next process.
- the remote control system 100 includes the robot 1, the operating device 4 that receives input from the user, and the display device 52 that presents an image of the robot 1 to the user. , a tactile device 8 that applies stimulation to the user's tactile sense, and a control device 6 that controls the robot 1 based on input to the operating device 4. Activate the haptic device 8.
- the contact between the robot 1 and another object which is difficult to judge based on only the image of the robot 1 on the display device 52, is detected by the actuation of the haptic device 8.
- This allows the user to accurately understand the information.
- the delay in images displayed on the display device is also reduced. In this way, the user can accurately judge the situation of the robot 1.
- the control device 6 controls the robot to perform work including a plurality of steps based on the input to the operating device 4. and activates the haptic device 8 when the robot 1 comes into contact with another object upon completion of at least one of the plurality of steps.
- the user can accurately know the completion of the process.
- the haptic device 8 notifies the user of the occurrence of contact by the robot 1.
- the user can accurately determine that the contact is the contact of the robot 1 at the completion of the process.
- the operating device 4 receives input of a plurality of commands corresponding to a plurality of steps, and the control device 6 The robot is caused to execute a process corresponding to a command input to the device 4.
- a command is input via the operating device 4, and the control device 6 causes the robot 1 to execute a process corresponding to the input command.
- the user is notified of the contact of the robot 1 upon completion of the step by actuation of the haptic device 8. That is, the user can input a command via the operating device 4, wait for the completion of the process, and accurately know the completion of the process by operating the haptic device 8. As a result, the user can smoothly move on to the next step without having to wait unnecessarily for the completion of the step.
- the control device 6 controls the operation mode of the haptic device 8 according to the number of types of contacts occurring simultaneously. change.
- the control device 6 can notify the user of the number of types of contacts occurring simultaneously by the vibration mode of the haptic device 8. Even if a contact has already occurred and the haptic device 8 is activated, the user can know that a new type of contact will occur or that some of the contacts that have already occurred will be cancelled. .
- the control device 6 determines the type of contact of the robot 1, The haptic device 8 is activated for each type of contact.
- control device 6 can distinguish each type of contact even if multiple types of contact occur simultaneously.
- the control device 6 determines the magnitude of the contact force of the robot 1. Then, the operating mode of the haptic device 8 is changed depending on the magnitude of the contact force.
- the operating mode of the haptic device 8 is changed depending on the magnitude of the contact force.
- the user can also know the magnitude of the contact force.
- the remote control system 100 according to any one of the first to sixth aspects further includes a sensor 3 that detects a force acting on the robot 1, and a control device 6 determines the contact of the robot 1 with another object based on the detection result of the sensor 3.
- control device 6 determines the contact of the robot 1 based on the detection result of the sensor 3.
- the robot 1 is provided with a robot arm 11 and fingers 22 that perform opening/closing operations, and is connected to the robot arm 11.
- the control device 6 causes the robot 1 to perform picking work of the workpiece W
- the sensor 3 includes a contact force sensor 33 that detects the force acting on the finger 22 from the surface on which the workpiece W is placed. (first sensor) and an encoder 32 (second sensor) that detects the force acting on the finger 22 from the workpiece W in the opening/closing direction of the finger 22.
- the fingers 22 of the hand 2 come into contact with the surface on which the workpiece W is placed, or the fingers 22 grip the workpiece W. That is, in the picking operation, the finger 22 contacts the device several times, and the finger 22 contacts the device at the timing when a part of the steps are completed. That is, in the picking operation, by notifying the user of the touch of the finger 22 using the tactile device 8, it is possible to notify the user that the process is substantially completed.
- the remote control system 100 includes a robot 1, an operating device 4 that receives input from a user, and a display device 52 that presents an image of the robot 1 to the user. , a tactile device 8 that provides stimulation to the user's tactile sense, and a control device 6 that causes the robot 1 to perform a task that includes a plurality of steps based on input to the operating device 4.
- the haptic device 8 is activated upon completion of at least one step of the steps of.
- the user when remotely controlling the robot 1 using the operating device 4, the user can accurately know through the operation of the tactile device 8 that a process that is difficult to judge from the image of the robot 1 on the display device 52 has been completed. be able to. Furthermore, since there is no need to improve the image quality of the display device 52 in order to increase the accuracy of determining whether the robot 1 completes a process, the delay in images displayed on the display device is also reduced. In this way, the user can accurately judge the situation of the robot 1.
- the control device 6 operates the haptic device 8 based on whether the process is completed. Then, the control device 6 determines the completion of the process based on whether or not contact with the robot 1 has occurred. In the above-mentioned picking operation, the contact status of the robot 1 changes when the process is completed. Therefore, activating the haptic device 8 based on a touch of the robot 1 is equivalent to activating the haptic device 8 based on the completion of a process. However, there are some operations in which the contact status of the robot 1 does not necessarily change upon completion of the process. In that case, the control device 6 may operate the haptic device 8 when the process is completed even if the robot 1 does not make contact.
- step S104 the control unit 61 determines whether the robot 1 has contacted another object during the operation of the robot 1, but determines whether a strong contact has occurred in step S104.
- the process in step S104 is the same as the flowchart in FIG. 5, and if strong contact has occurred, the haptic control unit 68 outputs a command to generate an alarm vibration to the haptic device 8 in step S105.
- the control unit 61 determines whether the process is completed in step S206.
- the control unit 61 operates the robot 1 based on the input to the operating device 4 by repeating steps S101 and S102.
- the control unit 61 can determine completion of a process using various methods. As one method, the control unit 61 determines the completion of the process based on whether or not contact with the robot 1 has occurred. Some of the steps involve contact by the robot 1 upon completion. The control unit 61 can determine the completion of such a process based on the contact of the robot 1. For processes whose completion cannot be determined based on contact by the robot 1, the control unit 61 may determine completion based on an external signal, for example, an input from a user via the operating device 4. When the process is completed, the control unit 61 causes the haptic device 8 to generate vibrations in step S207. At this time, the control unit 61 may change the vibration mode of the haptic device 8 according to the number of contacts N, as described above.
- a robot remote control method for controlling the robot 1 via the operating device 4 includes receiving an input from a user via the operating device 4, and inputting the input to the operating device 4. , to present an image of the robot 1 in motion to the user via the display device 52 , and to provide stimulation to the user's tactile sense when the robot 1 comes into contact with another object. activating the haptic device 8 to
- the contact between the robot 1 and another object which is difficult to judge based on only the image of the robot 1 on the display device 52, is detected by the actuation of the haptic device 8.
- This allows the user to accurately understand the information.
- the delay in images displayed on the display device is also reduced. In this way, the user can accurately judge the situation of the robot 1.
- the remote control program 62a is a remote control program 62a that includes a robot 1, an operating device 4 that receives input from a user, and a tactile device 8 that provides stimulation to the user's tactile sense.
- This is a program for causing the control unit 61 (computer) to realize the function of controlling the control system 100, and has a function of accepting input from the user via the operating device 4 and controlling the robot 1 based on the input to the operating device 4.
- the control unit 61 has a function of operating the tactile device 8 and a function of operating the tactile device 8 that provides stimulation to the user's tactile sense when the robot 1 comes into contact with another object.
- the user when remotely controlling the robot 1 via the operating device 4, the user can accurately perceive the contact between the robot 1 and another object by operating the haptic device 8. Thereby, the user can accurately judge the situation of the robot 1.
- the configuration of the remote control system 100 described above is only an example, and is not limited thereto.
- the work performed by the robot 1 is not limited to picking work.
- the work performed by the robot 1 may be a processing work.
- the end effector of the robot arm 11 is not limited to the hand 2. The end effector may be changed depending on the work that the robot 1 performs.
- the robot 1 is not limited to an industrial robot.
- the robot 1 may be a medical robot.
- the sensor 3 that detects the force acting on the robot 1 is not limited to the encoder 31, the encoder 32, and the contact force sensor 33. Force sensors other than these may also be provided. Further, the sensor 3 only needs to include at least one of the encoder 31, the encoder 32, and the contact force sensor 33, and does not need to include a part of the encoder 31, the encoder 32, and the contact force sensor 33. In addition, instead of the encoder 31 or the encoder 32, a current sensor that detects the current of the servo motor 14, a torque sensor that detects the torque of the servo motor 14, a current sensor that detects the current of the servo motor 23, or a current sensor that detects the current of the servo motor 23 may be used. It may also be a torque sensor or the like that detects torque. The force acting on the robot 1 can be detected based on the deviation between the current value and the target value of current or torque.
- the imaging device 51 is not limited to the one attached to the robot arm 11.
- the imaging device 51 may be fixedly placed at a position where it can photograph the robot 1.
- the operating device 4 may have an operating section such as a joystick.
- the operating device 4 may have an operating section such as a touch panel.
- the input from the operating device 4 may include not only the direction of movement of the robot 1 but also the speed of movement of the robot 1.
- the speed of movement may be input by tilting the joystick.
- the haptic device 8 is not limited to the above configuration.
- the haptic device 8 may be worn by the user in any manner as long as it can stimulate the user's sense of touch.
- the haptic device 8 may be built into the operating device 4.
- the vibration actuator of the haptic device 8 is not limited to the voice coil motor 81.
- the vibration actuator of the haptic device 8 may be of the eccentric rotating mass type or the piezo type.
- the haptic device 8 may have multiple vibration actuators.
- the type of contact made by the robot 1 may be notified to the user by changing the combination of the plurality of vibration actuators according to various contacts made by the robot 1. For example, the user may be informed of the type of contact made by the robot 1 and the like using illusionary tactile technology.
- the vibrations caused by the haptic device 8 are not limited to the first vibration, second vibration, third vibration, and alarm vibration.
- the contact that can occur with the robot 1 may vary depending on the configuration of the robot 1, the work of the robot 1, and the like.
- the vibration of the haptic device 8 can be set to correspond to the contact of the robot 1 that is assumed depending on the configuration of the robot 1, the work of the robot 1, and the like.
- the vibration caused by the haptic device 8 may be changed in two or more stages.
- the technology of the present disclosure may be a non-transitory computer-readable recording medium in which the remote control program 62a is recorded. Further, the remote control program 62a may be one that can be distributed via a transmission medium such as the Internet.
- the flowchart is just an example. Steps in the flowchart may be changed, replaced, added, omitted, etc. as appropriate. Furthermore, the order of steps in the flowchart may be changed, or serial processing may be processed in parallel.
- the functions achieved by the components described herein include general-purpose processors, special-purpose processors, integrated circuits, and ASICs (Application Specific Integrated Circuits) programmed to perform the described functions. It may be implemented in circuitry or processing circuitry, including a Central Processing Unit (CPU), conventional circuitry, and/or combinations thereof.
- a processor includes transistors and other circuits and is considered a circuit or an operational circuit.
- the processor may be a programmed processor that executes a program stored in memory.
- a circuit, unit or means is hardware that is programmed to perform or performs the functions described.
- the hardware may be any hardware disclosed herein or programmed to perform or known to perform the described functions. good.
- the circuit, means or unit is a combination of hardware and software used to configure the hardware and/or processor. be.
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Manipulator (AREA)
Abstract
遠隔制御システム100は、ロボット1と、ユーザからの入力を受け付ける操作装置4と、ロボット1の画像をユーザに提示する表示装置52と、ユーザの触覚に刺激を付与する触覚デバイス8と、操作装置4への入力に基づいてロボット1を制御する制御装置6とを備えている。制御装置6は、ロボット1が他の物体に接触した場合に触覚デバイス8を作動させる。
Description
ここに開示された技術は、遠隔制御システム、ロボットの遠隔制御方法及び遠隔制御プログラムに関する。
従来より、操作装置を介してロボットを遠隔制御する技術が知られている。例えば、特許文献1には、物理的に互いに離間した位置に配置されたロボットと操作装置とを備えた遠隔制御システムが開示されている。この遠隔制御システムでは、ロボットの画像が表示装置に表示される。ユーザは、表示装置を観ながら操作装置を操作することによって、ロボットを遠隔操作する。
前述のような遠隔制御システムにおいては、ユーザは、表示装置を介してロボットの状況を確認する。そのため、ユーザがロボットの状況を確認できる精度は、表示装置に表示される画像の画質に依存する。確認精度を高めるために画質を向上させると、表示装置に表示される画像に遅延が生じ、ロボットの状況確認にタイムラグが生じる虞がある。
ここに開示された技術は、かかる点に鑑みてなされたものであり、その目的とするところは、ロボットの遠隔制御においてユーザがロボットの状況を的確に判断できるようにすることにある。
ここに開示された遠隔制御システムは、ロボットと、ユーザからの入力を受け付ける操作装置と、前記ロボットの画像をユーザに提示する表示装置と、ユーザの触覚に刺激を付与する触覚デバイスと、前記操作装置への入力に基づいて前記ロボットを制御する制御装置とを備え、前記制御装置は、前記ロボットが他の物体に接触した場合に前記触覚デバイスを作動させる。
また、ここに開示されたロボットの遠隔制御システムは、ロボットと、ユーザからの入力を受け付ける操作装置と、前記ロボットの画像をユーザに提示する表示装置と、ユーザの触覚に刺激を付与する触覚デバイスと、前記操作装置への入力に基づいて、複数の工程が含まれる作業を前記ロボットに実行させる制御装置とを備え、前記制御装置は、前記複数の工程の少なくとも1つの工程の完了時に前記触覚デバイスを作動させる。
ここに開示されたロボットの遠隔制御方法は、操作装置を介してロボットを制御するロボットの遠隔制御方法であって、前記操作装置を介したユーザからの入力を受け付けることと、前記操作装置への入力に基づいて前記ロボットを動作させることと、動作する前記ロボットの画像を表示装置を介してユーザに提示することと、前記ロボットが他の物体に接触した場合に、ユーザの触覚に刺激を付与する触覚デバイスを作動させることとを含む。
ここに開示された遠隔制御プログラムは、ロボットと、ユーザからの入力を受け付ける操作装置と、ユーザの触覚に刺激を付与する触覚デバイスとを備えた遠隔制御システムを制御する機能をコンピュータに実現させるための遠隔制御プログラムであって、前記操作装置を介したユーザからの入力を受け付ける機能と、前記操作装置への入力に基づいて前記ロボットを動作させる機能と、前記ロボットが他の物体に接触した場合に、ユーザの触覚に刺激を付与する触覚デバイスを作動させる機能とをコンピュータに実現させる。
前記遠隔制御システムによれば、ユーザがロボットの状況を的確に判断できる。
前記ロボットの遠隔制御方法によれば、ユーザがロボットの状況を的確に判断できる。
前記遠隔制御プログラムによれば、ユーザがロボットの状況を的確に判断できる。
以下、例示的な実施形態を図面に基づいて詳細に説明する。図1は、実施形態に係る遠隔制御システム100の構成を示す模式図である。
遠隔制御システム100は、ロボット1と、ユーザからの入力を受け付ける操作装置4と、ロボット1の画像をユーザに提示する表示装置52と、ユーザの触覚に刺激を付与する触覚デバイス8と、操作装置4への入力に基づいてロボット1を制御する制御装置6とを備えている。操作装置4、表示装置52及び触覚デバイス8は、ユーザがいる第1サイトS1に配置されている。ロボット1は、第1サイトS1とは別の第2サイトS2に配置されている。制御装置6は、操作装置4とロボット1との間で遠隔制御を実現する。操作装置4は、マスタ装置として機能し、ロボット1は、スレーブ装置として機能する。
遠隔制御システム100は、ロボット1を撮影する撮像装置51をさらに備えていてもよい。撮像装置51は、第2サイトS2に配置されている。表示装置52は、撮像装置51による撮影画像を表示する。
遠隔制御システム100によれば、ユーザは操作装置4を介してロボット1を遠隔操作し、ロボット1に所定の作業を実行させる。このとき、撮像装置51は、ロボット1を撮像し、その撮像画像を表示装置52が表示する。ユーザは、表示装置52に表示されたロボット1の画像を確認しながら操作装置4を操作する。それに加えて、ユーザは、適宜のタイミングで触覚デバイス8から触覚への刺激を与えられる。ユーザは、触覚デバイス8から触覚刺激を与えられることによって、所定の事象が発生したことを遠隔操作中に知得することができる。
尚、本開示において、ロボット1が行う作業は、ティーチング作業並びに教示の確認及び修正作業を含まない。したがって、操作装置4は、ティーチペンダントを含まない。
[ロボット]
ロボット1は、産業用ロボットである。ロボット1は、ロボットアーム11と、開閉動作を行う指22が設けられ、ロボットアーム11に連結されたハンド2とを有している。
ロボット1は、産業用ロボットである。ロボット1は、ロボットアーム11と、開閉動作を行う指22が設けられ、ロボットアーム11に連結されたハンド2とを有している。
ロボットアーム11は、ハンド2の位置及び姿勢を変更する。ロボットアーム11は、垂直多関節型のロボットアームである。ロボットアーム11は、複数のリンク12と、複数のリンク12を接続する関節13と、複数の関節13を回転駆動するサーボモータ14(図3参照)と、サーボモータ14の回転位置を検出するエンコーダ31(図3参照)とを有している。例えば、ロボットアーム11の一端部に位置するリンク12は、関節13を介して、鉛直方向に延びる回転軸回りに回転可能にベース10に連結されている。尚、ロボットアーム11は、水平多関節型、パラレルリンク型、直角座標型、又は極座標型のロボットアーム等であってもよい。
ハンド2は、ロボットアーム11のエンドエフェクタである。ハンド2は、ロボットアーム11の先端に連結されている。具体的には、ハンド2は、複数のリンク12のうちベース10に連結されているリンク12とは反対側の端部のリンク12に連結されている。ハンド2は、ロボットアーム11の動作によって様々な姿勢をとることができる。
図2は、ハンド2の模式的な正面図である。ハンド2は、ハンド本体21と、ハンド本体21に設けられた2本の指22を有している。ハンド本体21は、ロボットアーム11のリンク12に対して所定の回転軸A回りに回転可能に連結されている。2本の指22は、所定の開閉方向Xに並んで配置されている。具体的には、2本の指22は、開閉方向Xに略直交する中心軸Zに対して対称に配置されている。中心軸Zは、回転軸Aと略直線上に並んでいる。2本の指22は、開閉方向Xへ開閉動作を行う。指22は、開閉方向Xと交差する方向に延びている。具体的には、指22は、中心軸Zと略平行に延びている。ハンド2は、2本の指22に開閉動作を行わせるサーボモータ23と、サーボモータ23の回転位置を検出するエンコーダ32とをさらに有している。
遠隔制御システム100は、ロボット1に作用する力を検出するセンサ3をさらに備えている。センサ3は、ワークWが置かれた面から指22に作用する力を検出する接触力センサ33を含んでいる。接触力センサ33は、図2に示すように、ハンド2に設けられている。具体的には、接触力センサ33は、ハンド2のうちロボットアーム11と連結部に設けられている。接触力センサ33は、少なくとも2本の指22の中心軸Zの方向、即ち、リンク12に対するハンド2の回転軸Aの方向の力を検出する。具体的には、接触力センサ33は、指22の中心軸Zの方向を含む直交する3軸方向の力と該3軸回りのモーメントを検出する。ワークWを把持する際には、ハンド2は、通常、中心軸Zの方向へ移動して、ワークWが置かれた面に接触する。つまり、接触力センサ33は、ワークWが置かれた面から指22に作用する接触力を検出する。尚、接触力センサ33は、1軸、2軸又は3軸方向の力のみを検出してもよい。接触力センサ33は、第1センサの一例である。
また、エンコーダ31及びエンコーダ32は、センサ3に含まれる。詳しくは後述するが、エンコーダ31によって検出されるサーボモータ14の現在の回転位置と目標回転位置との偏差が大きい場合には、ロボットアーム11が他の物体に接触している、即ち、ロボット1に外力が作用している。同様に、エンコーダ32によって検出されるサーボモータ23の現在の回転位置と目標回転位置との偏差が大きい場合には、指22が他の物体に接触している、すなわち、ロボット1に外力が作用している。つまり、エンコーダ31及びエンコーダ32はそれぞれ、ロボット1に作用する力を検出するセンサとしても機能する。ここで、エンコーダ32は、指22の開閉方向XへワークWから指22に作用する力を検出する第2センサに相当する。
[操作装置]
操作装置4は、図1に示すように、ユーザが入力操作を行う入力部41を有している。入力部41は、方向キー41aと、第1入力ボタン41bと、第2入力ボタン41cと、第3入力ボタン41dと、第4入力ボタン41eとを含んでいる。操作装置4は、ロボット1を遠隔操作するための入力を受け付け、入力された情報である操作情報を制御装置6へ出力する。
操作装置4は、図1に示すように、ユーザが入力操作を行う入力部41を有している。入力部41は、方向キー41aと、第1入力ボタン41bと、第2入力ボタン41cと、第3入力ボタン41dと、第4入力ボタン41eとを含んでいる。操作装置4は、ロボット1を遠隔操作するための入力を受け付け、入力された情報である操作情報を制御装置6へ出力する。
操作装置4は、方向キー41a、第1入力ボタン41b、第2入力ボタン41c、第3入力ボタン41d及び第4入力ボタン41eの組み合わせによって、様々な操作入力を可能とする。例えば、ロボットアーム11を動作させる場合には、ユーザは、方向キー41aを操作することによって、ハンド2を前後左右のうち方向キー41aに対応する方向への移動を入力することができる。このとき、ユーザは、第2入力ボタン41c及び第4入力ボタン41eによって、ハンド2の上下への移動を入力することができる。指22を動作させる場合には、ユーザは、第1入力ボタン41bを操作することによって指22の閉動作を入力し、第3入力ボタン41dを操作することによって指22の開動作を入力することができる。また、方向キー41aによって選択肢を切り替え、決定ボタンとしての第1入力ボタン41b又はキャンセルボタンとしての第3入力ボタン41dによって所定のコマンドを入力することもできる。例えば、ユーザは、表示装置52に表示されたコマンドの選択肢の中から方向キー41aによって一のコマンドを選択して、第1入力ボタン41bによってコマンドを決定することによって、所望のコマンドを入力することができる。
[撮像装置]
撮像装置51は、第2サイトS2に配置されている。具体的には、撮像装置51は、ロボットアーム11の先端部に取り付けられている。撮像装置51は、ロボット1、具体的には、ハンド2を撮影する。撮像装置51は、撮影画像を制御装置6へ出力する。
撮像装置51は、第2サイトS2に配置されている。具体的には、撮像装置51は、ロボットアーム11の先端部に取り付けられている。撮像装置51は、ロボット1、具体的には、ハンド2を撮影する。撮像装置51は、撮影画像を制御装置6へ出力する。
[表示装置]
表示装置52は、ユーザが操作装置4を操作しながら視認できる位置に配置されている。表示装置52は、制御装置6から送信される、撮像装置51による撮影画像を表示する。表示装置52は、ロボット1の撮影画像を表示することによって、操作装置4を操作するユーザを補助する。
表示装置52は、ユーザが操作装置4を操作しながら視認できる位置に配置されている。表示装置52は、制御装置6から送信される、撮像装置51による撮影画像を表示する。表示装置52は、ロボット1の撮影画像を表示することによって、操作装置4を操作するユーザを補助する。
[触覚デバイス]
触覚デバイス8は、例えば、ボイスコイルモータ81を有している。触覚デバイス8は、例えば、ユーザの手首に装着される。触覚デバイス8は、ボイスコイルモータ81の作動によって振動を発生させる。触覚デバイス8は、ボイスコイルモータ81の振動によって、ユーザの触覚に刺激を付与する。
触覚デバイス8は、例えば、ボイスコイルモータ81を有している。触覚デバイス8は、例えば、ユーザの手首に装着される。触覚デバイス8は、ボイスコイルモータ81の作動によって振動を発生させる。触覚デバイス8は、ボイスコイルモータ81の振動によって、ユーザの触覚に刺激を付与する。
触覚デバイス8は、振動態様を変更することができる。振動態様には、振幅、周波数及び繰り返し周期又はリズム等が含まれる。例えば、触覚デバイス8は、ボイスコイルモータ81に印加する電流を調整することによって振幅、即ち、振動の大きさを調整することができる。触覚デバイス8は、振動の大きさを3段階に調整することができる。触覚デバイス8は、比較的小さな振動の第1振動、第1振動よりも大きな第2振動、及び、第2振動よりも大きな第3振動を択一的に発生させることができる。第1振動、第2振動及び第3振動は、連続的な振動であっても、断続的な振動であってもよい。第1振動、第2振動及び第3振動の振動態様は、統一されていてもよいし、互いに異なっていてもよい。尚、触覚デバイス8は、振幅に加えて、又は、振幅に代えて、振動の周波数を調整してもよい。さらに、触覚デバイス8は、第1振動、第2振動及び第3振動に加えて、警報振動を発生させることができる。例えば、警報振動の振幅は、第1振動、第2振動及び第3振動よりも大きく、且つ、警報振動の振動態様は、第1振動、第2振動及び第3振動とは異なる。
[制御装置]
制御装置6には、ロボット1、センサ3、操作装置4、撮像装置51、表示装置52及び触覚デバイス8が接続されている。制御装置6は、操作装置4からの操作情報に基づいてロボット1を動作させる。具体的には、制御装置6は、操作装置4への入力に基づいて、複数の工程が含まれる作業をロボット1に実行させる。例えば、制御装置6は、ワークWのピッキング作業をロボット1に実行させる。この例では、制御装置6は、ロボット1の状態に基づく操作装置4の力制御及び位置制御を行わない。制御装置6は、操作装置4の操作情報に基づいてロボット1を一方通行で制御する、いわゆるユニラテラル制御を行う。
制御装置6には、ロボット1、センサ3、操作装置4、撮像装置51、表示装置52及び触覚デバイス8が接続されている。制御装置6は、操作装置4からの操作情報に基づいてロボット1を動作させる。具体的には、制御装置6は、操作装置4への入力に基づいて、複数の工程が含まれる作業をロボット1に実行させる。例えば、制御装置6は、ワークWのピッキング作業をロボット1に実行させる。この例では、制御装置6は、ロボット1の状態に基づく操作装置4の力制御及び位置制御を行わない。制御装置6は、操作装置4の操作情報に基づいてロボット1を一方通行で制御する、いわゆるユニラテラル制御を行う。
ロボット1の制御と並行して、制御装置6は、撮像装置51からの撮影画像を表示装置52へ送信する。さらに、制御装置6は、ロボット1の状況に応じて、触覚デバイス8を制御する。具体的には、制御装置6は、他の物体へのロボット1の接触状況を触覚デバイス8を介してユーザの触覚に提示する。このように、制御装置6は、ロボット1の制御、撮影画像の提示及び触覚デバイス8の制御を並行して実行する。
図3は、制御装置6の概略的なハードウェア構成を示す図である。制御装置6は、主制御装置60とロボット制御装置7とを有している。主制御装置60は、ロボット制御装置7と情報、指令及びデータ等の送受信を行う。
主制御装置60は、操作装置4からの信号を受信し、ロボット制御装置7へ指令を出力する。ロボット制御装置7は、指令に基づいて、サーボモータ14又はサーボモータ23へ電流を印加する。このとき、ロボット制御装置7は、エンコーダ31又はエンコーダ32から信号を受信して、サーボモータ14又はサーボモータ23をフィードバック制御する。さらに、ロボット制御装置7は、エンコーダ31、エンコーダ32及び接触力センサ33からの信号、並びに、撮像装置51からの画像信号を受信し、受信された信号を主制御装置60へ出力する。主制御装置60は、撮像装置51からの画像信号を表示装置52へ出力する。主制御装置60は、エンコーダ32及び接触力センサ33からの信号に基づいて触覚デバイス8を制御する。
ロボット制御装置7は、制御部71と、記憶部72と、メモリ73とを有している。主制御装置60は、制御部61と、記憶部62と、メモリ63とを有している。
制御部71は、ロボット制御装置7の全体を制御する。制御部61は、主制御装置60の全体を制御する。制御部71及び制御部61はそれぞれ、各種の演算処理を行う。例えば、制御部71及び制御部61のそれぞれは、CPU(Central Processing Unit)等のプロセッサで形成されている。制御部71及び制御部61のそれぞれは、MCU(Micro Controller Unit)、MPU(Micro Processor Unit)、FPGA(Field Programmable Gate Array)、PLC(Programmable Logic Controller)、システムLSI等で形成されていてもよい。
記憶部72は、制御部71で実行されるプログラム及び各種データを格納している。記憶部62は、制御部61で実行されるプログラム及び各種データを格納している。具体的には、記憶部62は、遠隔制御プログラム62aを格納している。記憶部72及び記憶部62のそれぞれは、不揮発性メモリ、HDD(Hard Disc Drive)又はSSD(Solid State Drive)等で形成される。
メモリ73及びメモリ63はそれぞれ、データ等を一時的に格納する。例えば、メモリ73及びメモリ63のそれぞれは、揮発性メモリで形成される。
図4は、制御装置6の機能ブロック図である。制御部61は、記憶部62から遠隔制御プログラム62aをメモリ63に読み出して展開することによって、各種機能を実現する。具体的には、制御部61は、入力処理部64と指令位置生成部65と指令角度変換部66と画像処理部67と触覚制御部68として機能する。制御部71は、記憶部72からプログラムをメモリ73に読み出して展開することによって、各種機能を実現する。具体的には、制御部71は、センサ処理部74と動作制御部75と撮像制御部76として機能する。
入力処理部64は、操作装置4からの操作情報に基づいて、ロボットアーム11を動作させる第1モードと指22を動作させる第2モードとを切り替える。例えば、ユーザが方向キー41a、第1入力ボタン41b又は第2入力ボタン41cを操作することによって、モードの切り替え指令が操作装置4から入力処理部64へ入力される。
入力処理部64は、操作装置4からの操作情報に基づいて、現在のモードの動作対象の指令速度を生成する。
具体的には、第1モードの場合には、ユーザは、方向キー41a等を操作することによってハンド2の移動方向を入力する。入力処理部64は、操作装置4から入力される移動方向に基づいてハンド2の指令速度を生成する。指令速度は、いわゆる速度ベクトルであり、移動方向と速さとで定義される。ここでは、速さは一定とする。ただし、方向キー41a等の操作によって、ハンド2の移動方向に加えてハンド2の速さが入力されてもよい。その場合、入力処理部64は、操作装置4から入力される移動方向及び速さに基づいてハンド2の指令速度を生成する。
第2モードの場合には、ユーザは、方向キー41a等を操作することによって指22の移動方向、即ち、開方向か閉方向かを入力する。入力処理部64は、操作装置4から入力される移動方向に基づいて指22の指令速度を生成する。指令速度は、いわゆる速度ベクトルであり、移動方向と速さとで定義される。ここでは、速さは一定とする。ただし、方向キー41a等の操作によって、指22の移動方向に加えて指22の速さが入力されてもよい。その場合、入力処理部64は、操作装置4から入力される移動方向及び速さに基づいて指22の指令速度を生成する。
指令位置生成部65は、入力処理部64によって生成された指令速度を指令位置に換算する。指令位置生成部65は、第1モードの場合にはハンド2の指令位置を換算し、第2モードの場合には指22の指令位置を換算する。ここで、ハンド2の指令位置は、ハンド2の位置だけでなく、ハンド2の姿勢も含む。尚、指22が開閉動作しても、ハンド本体21に対する指22の姿勢は変わらないので、指22の指令位置は、指22の姿勢を含まない。
指令角度変換部66は、指令位置生成部65によって換算された指令位置をサーボモータの指令角度位置に変換する。指令角度変換部66は、第1モードの場合には、ハンド2の指令位置に対応する各サーボモータ14の角度位置を指令角度位置として求める。指令角度変換部66は、第2モードの場合には、指22の指令位置に対応するサーボモータ23の角度位置を指令角度位置として求める。指令角度変換部66は、求められた指令角度位置をロボット制御装置7へ出力する。
センサ処理部74は、エンコーダ31、エンコーダ32及び接触力センサ33から検出信号、即ち、検出結果を受け取る。センサ処理部74は、エンコーダ31及びエンコーダ32からの検出信号を動作制御部75へ出力する。さらに、センサ処理部74は、エンコーダ31、エンコーダ32及び接触力センサ33からの検出信号を主制御装置60へ出力する。
動作制御部75は、主制御装置60から指令角度位置を受け取り、指令角度位置に従ってロボット1を動作させる。詳しくは、動作制御部75は、サーボモータ14の指令角度位置を受け取ると、指令角度位置を実現するための電流指令値を求める。動作制御部75は、電流指令値に相当する電流をサーボモータ14へ印加することによって、ロボットアーム11を動作させる。このとき、動作制御部75は、センサ処理部74からのエンコーダ31の検出信号に基づいて、サーボモータ14への印加電流をフィードバック制御する。これにより、ハンド2が指令位置へ移動する。あるいは、動作制御部75は、サーボモータ23の指令角度位置を受け取ると、指令角度位置を実現するための電流指令値を求める。動作制御部75は、電流指令値に相当する電流をサーボモータ23へ印加することによって、指22を動作させる。このとき、動作制御部75は、センサ処理部74からのエンコーダ32の検出信号に基づいて、サーボモータ23への印加電流をフィードバック制御する。これにより、指22が指令位置へ移動する。
撮像制御部76は、撮像装置51へ指令を出力して、撮像装置51に撮影を実行させる。撮像制御部76は、撮像装置51から撮影画像を受信し、撮影画像を主制御装置60へ送信する。
画像処理部67は、撮像装置51から受信した撮影画像、即ち、画像信号を表示装置52へ転送する。このとき、画像処理部67は、撮影画像に所定の画像処理を施してもよい。
触覚制御部68は、触覚デバイス8を制御する。具体的には、触覚制御部68は、ロボット1が他の物体に接触したか否かを判定し、接触が発生している場合に触覚デバイス8を振動させる。触覚制御部68は、エンコーダ31、エンコーダ32及び接触力センサ33を含むセンサ3の検出結果に基づいて、接触の発生を判定する。
接触力センサ33は、ハンド2が他の物体から受ける接触力を検出する。接触力センサ33は、少なくとも指22の中心軸Zの方向の力を検出するので、指22が他の物体に中心軸Zの方向に接触する際の接触力を検出する。触覚制御部68は、接触力センサ33によって検出される接触力が所定の第1閾値以上の場合に、指22が他の物体に接触していると判定する。第1閾値は、ハンド2が他の物体に接触していることを判定できる程度の接触力の値であり、比較的小さい値である。
触覚制御部68は、エンコーダ31の検出結果に基づいて、ロボットアーム11の対応するサーボモータ14の現在の角度位置と指令角度位置との偏差を求める。サーボモータ14の角度位置の偏差は、ロボットアーム11が他の物体から受ける接触力に対応する。触覚制御部68は、角度位置の偏差が所定の第2閾値以上の場合に、ロボットアーム11が他の物体に接触していると判定する。第2閾値は、ロボットアーム11が他の物体に接触したと判定できる程度の接触力に相当する偏差の値である。
触覚制御部68は、エンコーダ32の検出結果に基づいて、ハンド2のサーボモータ23の現在の角度位置と指令角度位置との偏差を求める。サーボモータ23の角度位置の偏差は、指22が開閉方向Xにおいて他の物体から受ける接触力に対応する。触覚制御部68は、角度位置の偏差が所定の第3閾値よりも大きい場合に、指22が他の物体に接触していると判定する。第3閾値は、指22によるワークWの把持力に相当する偏差の値である。例えば、指22がワークWを把持する際に指22がワークWに接触すると、指22はそれ以上閉じることができず、サーボモータ23の偏差が増大して第3閾値を超える。このような場合に、触覚制御部68は、指22が他の物体に接触していると判定する。
触覚制御部68は、エンコーダ31、エンコーダ32及び接触力センサ33のそれぞれによって検出される接触を、別々の接触として認識する。つまり、触覚制御部68は、ロボット1の接触の種別を、エンコーダ31、エンコーダ32及び接触力センサ33の何れによって接触が検出されたかに基づいて判別する。例えば、エンコーダ31及び接触力センサ33のそれぞれによって接触が検出されている場合には、触覚制御部68は、異なる2つの種別の接触が発生していると判定する。
他の物体へのロボット1の接触が発生している場合には、触覚制御部68は、触覚デバイス8を作動させる。触覚制御部68は、種別が異なる接触ごとに触覚デバイス8を作動させる。具体的には、触覚制御部68は、同時に発生している接触の種別の数に応じて触覚デバイス8の作動態様を変更する。1つの種別の接触が発生している場合には、触覚制御部68は、第1振動を発生させる指令を触覚デバイス8へ出力する。2つの種別の接触が発生している場合には、触覚制御部68は、第2振動を発生させる指令を触覚デバイス8へ出力する。3つの種別の接触が発生している場合には、触覚制御部68は、第3振動を発生させる指令を触覚デバイス8へ出力する。いずれの場合も、触覚制御部68は、接触の種別にかかわらず、接触の種別の数だけで判断して、対応する指令を出力する。
それに加えて、触覚制御部68は、ロボット1の接触力の大きさを判定し、触覚デバイス8の作動態様を接触力の大きさに応じて変更する。具体的には、触覚制御部68は、ロボット1の動作を強制的に停止させる程度の大きな接触力での他の物体へのロボット1の接触(以下、「強接触」という)が発生していないか監視している。ここで、強接触は、各センサの検出結果に基づいて接触が発生していると判定したときの接触力よりも大きい接触力での接触である。接触力センサ33によって検出される接触力が第1閾値よりも大きい第1上限値以上の場合に、触覚制御部68は、指22の強接触が発生していると判定する。サーボモータ14の角度位置の偏差が第2閾値よりも大きい第2上限値以上の場合に、触覚制御部68は、ロボットアーム11の強接触が発生していると判定する。サーボモータ23の角度位置の偏差が第3閾値よりも大きい第3上限値以上の場合に、触覚制御部68は、開閉方向Xにおいて指22の強接触が発生していると判定する。第1上限値、第2上限値及び第3上限値はそれぞれ、ロボット1の動作を強制的に停止させる程度の大きな接触力に相当する値である。
ロボット1の強接触が発生している場合には、触覚制御部68は、警報振動を発生させる指令を触覚デバイス8へ出力する。警報振動の振動態様は、第1振動、第2振動及び第3振動とは異なる。
[ピッキング作業]
このように構成された遠隔制御システム100の動作をロボット1による具体的な作業としてピッキング作業を例に説明する。図5は、遠隔制御のフローチャートである。ピッキング作業は、ロボット1が所定の開始状態から、コンテナC内に載置されたワークWをピッキングして、トレイTへ移送する作業である。ピッキング作業は、ハンド2をピッキング位置まで移動させる第1移動工程と、ハンド2にワークWを把持させる把持工程と、ワークWを把持した状態のハンド2を移送位置まで移動させる第2移動工程と、ハンド2によるワークWの把持を解除させる解除工程とが含まれる。
このように構成された遠隔制御システム100の動作をロボット1による具体的な作業としてピッキング作業を例に説明する。図5は、遠隔制御のフローチャートである。ピッキング作業は、ロボット1が所定の開始状態から、コンテナC内に載置されたワークWをピッキングして、トレイTへ移送する作業である。ピッキング作業は、ハンド2をピッキング位置まで移動させる第1移動工程と、ハンド2にワークWを把持させる把持工程と、ワークWを把持した状態のハンド2を移送位置まで移動させる第2移動工程と、ハンド2によるワークWの把持を解除させる解除工程とが含まれる。
遠隔制御システム100においては、撮像装置51によるロボット1の撮影画像が表示装置52に表示されている。ユーザは、表示装置52に表示されたロボット1の撮影画像を観ながら操作装置4を操作する。この表示装置52によるロボット1の画像の表示は、動作するロボット1の画像を表示装置52を介してユーザに提示することに相当する。
まず、ステップS101において、ユーザが操作装置4に操作を入力する。ユーザが操作装置4を操作すると、操作装置4から制御部61へ操作情報が入力される。制御部61の入力処理部64は、操作装置4からの操作情報を受信する。ステップS101は、操作装置4を介したユーザからの入力を受け付けることに相当する。
ステップS102において、制御部61は、操作情報に応じた動作をロボット1に実行させる。詳しくは、入力処理部64は、操作装置4からの操作情報に応じた指令速度を生成する。指令位置生成部65は、指令速度を位置指令に換算する。指令角度変換部66は、位置指令を指令角度位置に変換し、変換された指令角度位置を動作制御部75へ出力する。動作制御部75は、指令角度位置を実現するための電流を対応するサーボモータ14又はサーボモータ23へ出力する。動作制御部75は、エンコーダ31又はエンコーダ32の検出信号に基づいて印加電流をフィードバック制御する。こうして、ロボット1は、ユーザの操作装置4の操作に応じた動作を実行する。ステップS102は、操作装置4への入力に基づいてロボット1を動作させることに相当する。
次に、ステップS103において、制御部61は、ロボット1が他の物体に接触したか否かを判定する。制御部61は、エンコーダ31、エンコーダ32及び接触力センサ33の検出結果に基づいて、ロボット1が他の物体に接触したか否かを判定する。詳しくは、接触力センサ33によって検出される接触力が第1閾値以上の場合、エンコーダ31の検出結果に基づいて求められるサーボモータ14の角度位置の偏差が第2閾値以上の場合、又は、エンコーダ32の検出結果に基づいて求められるサーボモータ23の角度位置の偏差が第3閾値以上の場合には、触覚制御部68は、接触が発生していると判定する。
接触が発生していない場合には、制御部61は、ステップS101に戻り、ステップS101からの処理を繰り返す。ステップS101からの処理が所定の制御周期で繰り返されることによって、ロボット1がユーザによる操作装置4の操作に応じて連続的に動作する。
こうしたロボット1の動作中に他の物体へのロボット1の接触が発生すると、制御部61は、ステップS103からステップS104の処理へ進む。ステップS104において、制御部61は、発生している接触が強接触か否かを判定する。具体的には、触覚制御部68は、ステップS103の判定において用いた接触力、サーボモータ14の角度位置の偏差、又は、サーボモータ23の角度位置の偏差が対応する上限値以上の場合には、触覚制御部68は、強接触が発生していると判定する。
強接触が発生している場合には、触覚制御部68は、ステップS105において、警報振動を発生させる指令を触覚デバイス8へ出力する。触覚デバイス8は、警報振動を発生させる。ユーザは、触覚デバイス8の警報振動によって、ロボット1が他の物体に大きい接触力で接触していることを知得することができる。それにより、ユーザは、ロボット1の動作を停止させたり、ロボット1の接触を解消するようにロボット1を動作させたりすることができる。尚、制御部61は、警報振動の発生に加えて、ロボット1を強制的に停止させてもよい。
一方、接触が強接触でない場合には、触覚制御部68は、ステップS106において、同時に発生している接触の種別の数N(以下、「接触数N」という)を判定する。接触数Nが1の場合には、触覚制御部68は、ステップS107において、第1振動を発生させる指令を触覚デバイス8へ出力する。接触数Nが2の場合には、触覚制御部68は、ステップS108において、第2振動を発生させる指令を触覚デバイス8へ出力する。接触数Nが3の場合には、触覚制御部68は、ステップS109において、第3振動を発生させる指令を触覚デバイス8へ出力する。触覚デバイス8は、指令に応じた振動を発生させる。ステップS105、S107、S108及びS109は、ロボット1が他の物体に接触した場合に、ユーザの触覚に刺激を付与する触覚デバイス8を作動させることに相当する。
このように、ロボット1の動作中に他の物体へのロボット1の接触が発生すると、触覚デバイス8が振動を発生させて、ユーザに接触の発生を報知する。ユーザは、触覚デバイス8の振動によって、接触の発生を知得することができる。それに加えて、ユーザは、表示装置52に表示されたロボット1の画像から、どのような接触が発生しているのかを判断することができる。例えば、作業には完了時に接触を伴う工程が含まれる場合がある。ユーザは、操作装置4への操作及び表示装置52の画像に基づいて概ね工程の完了であると予測できるタイミングで接触を知らされると、工程の完了と判断して、次の工程へ移行することができる。あるいは、ユーザは、操作装置4への操作及び表示装置52の画像に基づいても接触が予測できないタイミングで触覚デバイス8によって接触が知らされると、表示装置52では確認できない部分等で予期せぬ接触が発生していることを知ることができる。さらに、そのときの触覚デバイス8の振動が警報振動である場合には、予期せぬ接触が比較的大きな接触力を伴うものであることを知ることができる。それにより、ユーザは、ロボット1に回避動作を取らせることができる。
より詳しくは、ピッキング作業の例では、ユーザは、まずロボット1に第1移動工程を実行させる。具体的には、ユーザは、操作装置4を操作して第1モードに設定する。ユーザは、表示装置52を観ながら、方向キー41a及び、必要であれば第2入力ボタン41c又は第4入力ボタン41eを操作することによって、ハンド2を把持位置へ向けて移動させる。把持位置は、コンテナCのワークWの位置である。ステップS101,S102及びS103が繰り返され、ハンド2は開始位置から把持位置へ向かってしだいに移動していく。基本的には、ユーザは、把持位置へのハンド2の到達を表示装置52の画像に基づいて判断する。仮に、第1移動工程において指22が意図せずコンテナCの底面等に接触した場合には、接触力センサ33が接触力を検出する(ステップS103)。このときの接触数Nは1なので、触覚制御部68は、触覚デバイス8に第1振動を発生させる(ステップS107)。ユーザは、触覚デバイス8の第1振動を感知すると、操作装置4の操作内容及び表示装置52のロボット1の画像からコンテナCの底面等への指22の接触を判断できる。指22がコンテナCの底面等に接触する場合には、ハンド2は概ね把持位置に到達しているので、ユーザは、指22の接触を解消させて、ロボット1の移動を停止させる。
表示装置52の画質又は撮像装置51の画角によっては、表示装置52の画像からはコンテナCの底面への指22の接触を確認できない場合もある。そのような場合であっても、ユーザは、ハンド2がコンテナCに接近したことを表示装置52の画像から認識すると共に、ロボット1の接触が発生したことを触覚デバイス8の振動から知得できる。これにより、ユーザは、偶発的な指22の接触を解消すると共に、指22が把持位置へ概ね到達したことを的確に判断できる。
第1移動工程が完了すると、ユーザは、ロボット1に把持工程を実行させる。ユーザは、操作装置4を操作して、第1モードから第2モードに切り替える。例えば、ユーザは、第1入力ボタン41bを押し続けることによって、指22に閉動作を実行させる。ステップS101,S102及びS103が繰り返され、指22はワークWへ接近していく。やがて、指22がワークWに接触して、接触力が所定の把持力に達すると、触覚制御部68がエンコーダ32の検出結果に基づいて指22の接触を検出する(ステップS103)。指22がワークWに接触することによって接触数Nが1になる。触覚制御部68は、触覚デバイス8に第1振動を発生させる(ステップS107)。ユーザは、触覚デバイス8の振動を感知することによって、ワークWへの指22の接触が発生したことを知得することができる。ユーザは、操作装置4の操作内容及び表示装置52のロボット1の画像から指22の接触を判断できるので、触覚デバイス8の第1振動を感知すると、把持工程の完了を判断し、指22の移動を停止させる。そのため、このときの接触は、強接触に達することはほとんどない。
表示装置52の画質又は撮像装置51の画角によっては、表示装置52の画像からは指22によるワークWの把持を確認できない場合もある。そのような場合であっても、ユーザは、指22がワークWに接近したことを表示装置52の画像から認識すると共に、ロボット1の接触が発生したことを触覚デバイス8の振動から知得できる。これにより、ユーザは、把持工程の完了を触覚デバイス8の振動によって的確に判断できる。
把持工程が完了すると、ユーザは、ロボット1に第2移動工程を実行させる。ユーザは、操作装置4を操作して、第2モードから第1モードへ切り替える。ユーザは、表示装置52を観ながら、方向キー41a及び、必要であれば第2入力ボタン41c又は第4入力ボタン41eを操作することによって、ハンド2を移送位置へ向けて移動させる。ステップS101,S102及びS103が繰り返され、ハンド2は把持位置から移送位置へ向かってしだいに移動していく。ハンド2がワークWを保持している間は、エンコーダ32に基づく指22の接触の検出が継続するので、触覚デバイス8は第1振動を継続して発生させる。
ハンド2が移送位置に到達すると、ワークWがトレイTの底面に載置される。これにより、接触力センサ33が、トレイTの底面からワークWを介して指22が受ける接触力を検出する(ステップS103)。接触数Nが1から2に増加し、触覚制御部68は、触覚デバイス8に第2振動を発生させる(ステップS108)。ユーザは、操作装置4の操作内容及び表示装置52のロボット1の画像からワークWの接触を判断できるので、触覚デバイス8の第2振動を感知すると、第2移動工程の完了を判断し、ロボット1の移動を停止させる。そのため、このときの接触は、強接触に達することはほとんどない。
表示装置52の画質又は撮像装置51の画角によっては、表示装置52の画像からはトレイTの底面へのワークWの接触を確認できない場合もある。そのような場合であっても、ユーザは、ワークWがトレイTの底面に接近したことを表示装置52の画像から認識すると共に、ロボット1の接触が発生したことを触覚デバイス8の振動から知得できる。これにより、ユーザは、第2移動工程の完了を触覚デバイス8の振動によって的確に判断できる。
第2移動工程が完了すると、ユーザは、ロボット1に解除工程を実行させる。ユーザは、操作装置4を操作して、第1モードから第2モードに切り替える。例えば、ユーザは、第3入力ボタン41dを押し続けることによって、指22に開動作を実行させる。ステップS101,S102及びS103が繰り返され、指22はワークWから離間する。指22がワークWから離間すると、エンコーダ32に基づく接触力が零になる。それに加えて、トレイTの底面からワークWを介して指22に作用する接触力も零になる。触覚制御部68は、触覚デバイス8の振動を停止させる。ユーザは、触覚デバイス8の振動が停止するので、指22の接触が解消されたことを知得することができる。ユーザは、操作装置4の操作内容及び表示装置52のロボット1の画像から指22の接触の解消を判断できるので、触覚デバイス8の第1振動を感知すると、解除工程の完了を判断し、指22の移動を停止させる。
表示装置52の画質又は撮像装置51の画角によっては、指22が大きく開かないと、表示装置52の画像からワークWの把持の解除を確認できない場合もある。そのような場合であっても、ユーザは、他の物体へのロボット1の接触が解消されたことを触覚デバイス8の振動が低減又は解消されることによって知得できる。これにより、ユーザは、解除工程の完了を触覚デバイス8の振動の低減又は解消によって的確に判断できる。
解除工程が完了すると、ピッキング作業が完了する。尚、解除工程の後にロボット1を開始状態に戻すことをもってピッキング作業の完了としてもよい。
それに加えて、このようなピッキング作業中に予期せぬロボット1の接触が発生した場合には、触覚デバイス8が警報振動を発生させることによって、ロボット1の接触の発生をユーザに知らせ、ユーザに回避動作を取ることを促すことができる。つまり、予期せぬ接触が発生した場合、ユーザはロボット1の動作を即座には停止させないので、比較的大きな接触力がロボット1に作用し得る。特に、ロボット1のうち表示装置52に表示されていない部分が他の物体に接触している場合には、ユーザは接触の発生を表示装置52から知ることができないので、比較的大きな接触力が発生しやすい。触覚制御部68は、大きな接触力の接触を検出すると、ステップS104において強接触が発生したと判定して、ステップS105において触覚デバイス8に警報振動を発生させる。これにより、ユーザは、表示装置52では知り得ないロボット1の接触の発生を知得することができ、ロボット1の接触を早期に解消させることができる。
このように、遠隔制御システム100は、ロボット1の接触の発生を、触覚デバイス8によってユーザの触覚を介してユーザに報知する。ユーザは、操作装置4の操作、表示装置52のロボット1の画像及び振動態様等に基づいて接触の原因を判断する。接触が工程の完了に関連するものであれば、ユーザは次の工程へ移行する。接触が予期せぬものである場合には、ユーザは、ロボット1の動作を停止させたり、ロボット1に接触の解消動作を行わせたりする。つまり、ユーザは、ロボット1の状況を的確に判断することができる。
尚、前述のピッキング作業が適切に実行される限り、接触数Nが3になることはない。しかし、ロボット1の作業によっては接触数Nが3となる状況も発生し得る。その場合には、触覚デバイス8は、第3振動を発生させる。
また、前述の説明では、操作装置4は、ロボット1の連続的な動作、即ち、動作軌跡を連続的に入力している。つまり、ロボット1は、操作装置4からの入力が継続している間は動作し、操作装置4からの入力が停止すると停止する。しかし、操作装置4からの操作入力はこれに限定されない。例えば、操作装置4からコマンドが入力され、制御装置6が自律的にロボット1を制御して、ロボット1にコマンドに応じた動作を実行させてもよい。
例えば、ピッキング作業では、操作装置4は、複数の工程に対応する複数のコマンドをユーザから入力される。複数のコマンドは、第1移動工程の実行コマンド、把持工程の実行コマンド、第2移動工程の実行コマンド及び解除工程の実行コマンドである。例えば、操作装置4の第1入力ボタン41b、第2入力ボタン41c、第3入力ボタン41d及び第4入力ボタン41eに各工程の実行コマンドが割り当てられていてもよい。あるいは、表示装置52に各工程のコマンドが選択肢として表示され、方向キー41aによって一のコマンドが選択され、第1入力ボタン41bによってコマンドが決定されることによって、所望のコマンドが操作装置4から制御装置6入力されてもよい。
制御装置6は、操作装置4に入力されたコマンドに対応する工程をロボット1に実行させる。具体的には、入力処理部64は、操作装置4からの操作情報に基づいて、実行する工程を判別する。指令位置生成部65は、判別された工程に対応する動作を実現するためのロボット1の軌跡を生成する。ロボット1の軌跡は、予め設定されたティーチング情報に基づいて生成されてもよいし、そのように生成された軌跡を撮像装置51による撮影画像によって修正して生成されてもよい。指令位置生成部65は、生成されたロボット1の軌跡を実現するための指令位置を指令角度変換部66へ逐次出力する。指令角度変換部66及び動作制御部75の制御内容は、前述の連続的な動作入力の場合と同様である。
コマンド入力によるピッキング作業について具体的に説明すると、まず、ユーザは、操作装置4を介して第1移動工程の実行コマンドを入力する。制御部61は、ハンド2が開始位置から把持位置へ移動するようにロボット1を動作させる。ユーザは、第1移動工程の実行コマンドを入力した後は、第1移動工程の完了を待機する。ハンド2が把持位置に到達すると、指22がコンテナCの底面に接触する。接触力センサ33が接触力を検出し、触覚デバイス8が第1振動を発生させる。ユーザは、表示装置52のロボット1の画像だけでは第1移動工程の完了の判断が困難であっても、触覚デバイス8の振動によって第1移動工程の完了を的確に知得することができる。
ユーザは、第1移動工程の完了を知得すると、操作装置4を介して把持工程の実行コマンドを入力する。制御部61は、指22に閉動作を実行させる。ユーザは、把持工程の実行コマンドを入力した後は、把持工程の完了を待機する。指22がワークWに接触し、所定の把持力でワークWを把持する状態になると、触覚デバイス8の振動が第1振動から第2振動に切り替わる。ユーザは、表示装置52のロボット1の画像だけでは、指22が所定の把持力でワークWを把持したか否かを判定することが困難である。ユーザは、触覚デバイス8の振動によって、指22によるワークWの把持が完了したことを的確に知得することができる。
ユーザは、把持工程の完了を知得すると、操作装置4を介して第2移動工程の実行コマンドを入力する。制御部61は、ハンド2がコンテナCからトレイTへ移動するようにロボット1を動作させる。ユーザは、第2移動工程の実行コマンドを入力した後は、第2移動工程の完了を待機する。第2移動工程において、指22がコンテナCの底面から離間するので、接触数Nが2から1に減少して、触覚デバイス8の振動が第2振動から第1振動に切り替わる。ハンド2がトレイTの移送位置に到達すると、指22がトレイTの底面に接触する。接触数Nが1から2に増加するので、触覚デバイス8の振動が第1振動から第2振動に切り替わる。ユーザは、表示装置52のロボット1の画像だけでは第2移動工程の完了の判断が困難であっても、触覚デバイス8の振動によって第2移動工程の完了を的確に知得することができる。
ユーザは、第2移動工程の完了を知得すると、操作装置4を介して解除工程の実行コマンドを入力する。制御部61は、指22に開動作を実行させる。ユーザは、解除工程の実行コマンドを入力した後は、解除工程の完了を待機する。指22がワークWから離間すると、触覚デバイス8の振動が第2振動から第1振動に切り替わる。ユーザは、表示装置52のロボット1の画像だけでは、ワークWからの指22の離間を判定することが困難である。ユーザは、触覚デバイス8の振動によって、指22によるワークWの把持の解除が完了したことを的確に知得することができる。
ピッキング作業を繰り返す場合には、ユーザは、操作装置4を介して第1移動工程の実行コマンドを再び入力する。一方、ユーザが操作装置4を介して終了コマンドを入力すると、ピッキング作業が終了する。
このように、コマンド入力に基づいてピッキング作業が実行される場合であっても、ユーザは、各工程の完了を触覚デバイス8の振動によって知得することができる。そのため、ユーザが工程の完了を不要に待機することがなくなり、次の工程へスムーズに移行することができる。
以上のように、本開示の技術の第1の側面では、遠隔制御システム100は、ロボット1と、ユーザからの入力を受け付ける操作装置4と、ロボット1の画像をユーザに提示する表示装置52と、ユーザの触覚に刺激を付与する触覚デバイス8と、操作装置4への入力に基づいてロボット1を制御する制御装置6とを備え、制御装置6は、ロボット1が他の物体に接触した場合に触覚デバイス8を作動させる。
この構成によれば、操作装置4を介してロボット1を遠隔制御する際に、表示装置52のロボット1の画像だけでは判断が困難なロボット1と他の物体との接触を触覚デバイス8の作動によってユーザが的確に知得することができる。また、ロボット1の接触を判断する精度を高めるために表示装置52の画質等と向上させる必要がないため、表示装置に表示される画像の遅延も低減される。このように、ユーザは、ロボット1の状況を的確に判断できる。
さらに、本開示の技術の第2の側面では、第1の側面に係る遠隔制御システム100において、制御装置6は、操作装置4への入力に基づいて、複数の工程が含まれる作業をロボット1に実行させ、複数の工程の少なくとも1つの工程の完了時にロボット1が他の物体に接触した場合に触覚デバイス8を作動させる。
この構成によれば、ユーザは、工程の完了を的確に知得することができる。つまり、表示装置52のロボット1の画像だけではロボット1の接触を正確に判断できない場合であっても、触覚デバイス8がユーザにロボット1の接触の発生を知らせる。ユーザは、自身による操作装置4の操作及び表示装置52の画像を合わせて考慮することによって、その接触が工程の完了時のロボット1の接触であることを的確に判断することができる。
また、本開示の技術の第3の側面では、第2の側面に係る遠隔制御システム100において、操作装置4は、複数の工程に対応する複数のコマンドの入力を受け付け、制御装置6は、操作装置4に入力されたコマンドに対応する工程をロボットに実行させる。
この構成によれば、操作装置4を介してコマンドが入力され、制御装置6は、入力されたコマンドに対応する工程をロボット1に実行させる。複数の工程のうち完了時にロボット1の接触を伴う工程は、工程の完了時のロボット1の接触が触覚デバイス8の作動によってユーザに知らされる。つまり、ユーザは、操作装置4を介してコマンドを入力して工程の完了を待機し、触覚デバイス8の作動によって工程の完了を的確に知得することができる。その結果、ユーザは、工程の完了を不要に待機することなく、次の工程にスムーズに移行することができる。
さらに、本開示の技術の第4の側面では、第3の側面に係る遠隔制御システム100において、制御装置6は、同時に発生している接触の種別の数に応じて触覚デバイス8の作動態様を変更する。
この構成によれば、制御装置6は、触覚デバイス8の振動態様によって、同時に発生している接触の種別の数をユーザに知らせることができる。既に接触が発生して触覚デバイス8が作動している場合でも、ユーザは、新たな種別の接触が発生したり、既に発生している接触の一部が解消したりすることを知ることができる。
また、本開示の技術の第5の側面では、第1の側面乃至第3の側面の何れか1つに係る遠隔制御システム100において、制御装置6は、ロボット1の接触の種別を判別し、種別が異なる接触ごとに触覚デバイス8を作動させる。
この構成によれば、制御装置6は、複数の種別の接触が同時に発生していても、それぞれの種別の接触を判別することができる。
また、本開示の技術の第6の側面では、第1の側面乃至第5の側面の何れか1つに係る遠隔制御システム100において、制御装置6は、ロボット1の接触力の大きさを判定し、触覚デバイス8の作動態様を接触力の大きさに応じて変更する。
この構成によれば、触覚デバイス8の作動態様が接触力の大きさに応じて変更される。ユーザは、接触の発生に加えて、接触力の大きさも知得することができる。
本開示の技術の第7の側面では、第1の側面乃至第6の側面の何れか1つに係る遠隔制御システム100は、ロボット1に作用する力を検出するセンサ3をさらに備え、制御装置6は、他の物体へのロボット1の接触をセンサ3の検出結果に基づいて判定する。
この構成によれば、制御装置6は、センサ3の検出結果に基づいてロボット1の接触を判定する。
また、本開示の技術の第8の側面では、第7の側面に係る遠隔制御システム100において、ロボット1は、ロボットアーム11と、開閉動作を行う指22が設けられ、ロボットアーム11に連結されたハンド2とを有し、制御装置6は、ワークWのピッキング作業をロボット1に実行させ、センサ3は、ワークWが置かれた面から指22に作用する力を検出する接触力センサ33(第1センサ)と、指22の開閉方向へワークWから指22に作用する力を検出するエンコーダ32(第2センサ)とを含む。
この構成によれば、ピッキング作業の作業中においては、ワークWが置かれた面にハンド2の指22が接触したり、指22がワークWを把持したりする。つまり、ピッキング作業においては、指22の接触が何度か発生し、その指22の接触は一部の工程の完了のタイミングで発生する。つまり、ピッキング作業においては、指22の接触を触覚デバイス8によってユーザに報知することによって、実質的に工程の完了をユーザに知らせることができる。
観点を変えると、本開示の技術の第9の側面では、遠隔制御システム100は、ロボット1と、ユーザからの入力を受け付ける操作装置4と、ロボット1の画像をユーザに提示する表示装置52と、ユーザの触覚に刺激を付与する触覚デバイス8と、操作装置4への入力に基づいて、複数の工程が含まれる作業をロボット1に実行させる制御装置6とを備え、制御装置6は、複数の工程の少なくとも1つの工程の完了時に触覚デバイス8を作動させる。
この構成によれば、操作装置4によってロボット1を遠隔制御する際に、表示装置52のロボット1の画像だけでは判断が困難な工程の完了を、触覚デバイス8の作動によってユーザが的確に知得することができる。また、ロボット1の工程の完了を判断の精度を高めるために表示装置52の画質等と向上させる必要がないため、表示装置に表示される画像の遅延も低減される。このように、ユーザは、ロボット1の状況を的確に判断できる。
この場合、制御装置6は、工程が完了したか否かに基づいて触覚デバイス8を作動させる。そして、制御装置6は、ロボット1の接触が発生したか否かに基づいて工程の完了を判定する。前述のピッキング作業においては、工程の完了時にロボット1の接触状況が変化する。そのため、ロボット1の接触に基づいて触覚デバイス8を作動させることは、工程の完了に基づいて触覚デバイス8を作動させることに等しい。しかし、工程の完了時に必ずしもロボット1の接触状況が変化しない作業もある。その場合、制御装置6は、ロボット1の接触が発生していなくても工程が完了した場合には、触覚デバイス8を作動させてもよい。
その場合の遠隔制御のフローチャートを図6に示す。図6のフローチャートでは、図5のフローチャートからステップS103、S106、S107、S108及びS109が省略され、代わりにステップS206及びS207が追加されている。詳しくは、制御部61は、ロボット1の動作中にロボット1が他の物体に接触したか否かを判定せず、ステップS104において強接触が発生したか否かを判定する。ステップS104の処理は、図5のフローチャートと同じであり、強接触が発生している場合は、触覚制御部68は、ステップS105において、警報振動を発生させる指令を触覚デバイス8へ出力する。制御部61は、ロボット1の接触を監視する代わりに、ステップS206において工程が完了したか否かを判定する。強接触が発生せず且つ工程が完了していない限りは、制御部61は、ステップS101及びS102を繰り返すことによって、操作装置4への入力に基づいてロボット1を動作させる。制御部61は、工程の完了を様々な手法で判定し得る。その1つの手法として、制御部61は、ロボット1の接触が発生したか否かによって工程の完了を判定する。複数の工程には、完了時にロボット1の接触を伴うものがある。制御部61は、そのような工程の完了を、ロボット1の接触に基づいて判定することができる。ロボット1の接触に基づいて完了を判定できない工程については、制御部61は、外部からの信号、例えば、操作装置4を介したユーザからの入力等に基づいて完了を判定してもよい。そして、工程が完了した場合には、制御部61は、ステップS207において、触覚デバイス8に振動を発生させる。このとき、制御部61は、前述のように、接触数Nに応じて触覚デバイス8の振動態様を変更してもよい。
本開示における技術の第10の側面では、操作装置4を介してロボット1を制御するロボットの遠隔制御方法は、操作装置4を介したユーザからの入力を受け付けることと、操作装置4への入力に基づいてロボット1を動作させることと、動作するロボット1の画像を表示装置52を介してユーザに提示することと、ロボット1が他の物体に接触した場合に、ユーザの触覚に刺激を付与する触覚デバイス8を作動させることとを含む。
この構成によれば、操作装置4を介してロボット1を遠隔制御する際に、表示装置52のロボット1の画像だけでは判断が困難なロボット1と他の物体との接触を触覚デバイス8の作動によってユーザが的確に知得することができる。また、ロボット1の接触を判断する精度を高めるために表示装置52の画質等と向上させる必要がないため、表示装置に表示される画像の遅延も低減される。このように、ユーザは、ロボット1の状況を的確に判断できる。
また、本開示における技術の第11の側面では、遠隔制御プログラム62aは、ロボット1と、ユーザからの入力を受け付ける操作装置4と、ユーザの触覚に刺激を付与する触覚デバイス8とを備えた遠隔制御システム100を制御する機能を制御部61(コンピュータ)に実現させるためのプログラムであって、操作装置4を介したユーザからの入力を受け付ける機能と、操作装置4への入力に基づいてロボット1を動作させる機能と、ロボット1が他の物体に接触した場合に、ユーザの触覚に刺激を付与する触覚デバイス8を作動させる機能とを制御部61に実現させる。
この構成によれば、操作装置4を介してロボット1を遠隔制御する際に、ロボット1と他の物体との接触を触覚デバイス8の作動によってユーザが的確に知得することができる。それにより、ユーザは、ロボット1の状況を的確に判断できる。
《その他の実施形態》
以上のように、本出願において開示する技術の例示として、前記実施形態を説明した。しかしながら、本開示における技術は、これに限定されず、適宜、変更、置き換え、付加、省略などを行った実施の形態にも適用可能である。また、前記実施形態で説明した各構成要素を組み合わせて、新たな実施の形態とすることも可能である。また、添付図面および詳細な説明に記載された構成要素の中には、課題解決のために必須な構成要素だけでなく、前記技術を例示するために、課題解決のためには必須でない構成要素も含まれ得る。そのため、それらの必須ではない構成要素が添付図面や詳細な説明に記載されていることをもって、直ちに、それらの必須ではない構成要素が必須であるとの認定をするべきではない。
以上のように、本出願において開示する技術の例示として、前記実施形態を説明した。しかしながら、本開示における技術は、これに限定されず、適宜、変更、置き換え、付加、省略などを行った実施の形態にも適用可能である。また、前記実施形態で説明した各構成要素を組み合わせて、新たな実施の形態とすることも可能である。また、添付図面および詳細な説明に記載された構成要素の中には、課題解決のために必須な構成要素だけでなく、前記技術を例示するために、課題解決のためには必須でない構成要素も含まれ得る。そのため、それらの必須ではない構成要素が添付図面や詳細な説明に記載されていることをもって、直ちに、それらの必須ではない構成要素が必須であるとの認定をするべきではない。
前述の遠隔制御システム100の構成は、一例に過ぎず、これに限定されるものではない。例えば、ロボット1が実行する作業は、ピッキング作業に限定されない。ロボット1が実行する作業は加工作業であってもよい。また、ロボットアーム11のエンドエフェクタは、ハンド2に限定されない。エンドエフェクタは、ロボット1が実行する作業に応じて変更され得る。
また、ロボット1は、産業用ロボットに限定されない。例えば、ロボット1は、医療用ロボットであってもよい。
ロボット1に作用する力を検出するセンサ3は、エンコーダ31、エンコーダ32及び接触力センサ33に限定されない。これら以外の力センサをさらに設けてもよい。また、センサ3は、エンコーダ31、エンコーダ32及び接触力センサ33の少なくとも1つを含んでいればよく、エンコーダ31、エンコーダ32及び接触力センサ33の一部を含まなくてもよい。また、エンコーダ31又はエンコーダ32に代えて、サーボモータ14の電流を検出する電流センサ、サーボモータ14のトルクを検出するトルクセンサ、サーボモータ23の電流を検出する電流センサ、又は、サーボモータ23のトルクを検出するトルクセンサ等であってもよい。電流又はトルクの現在値と目標値との偏差に基づいてロボット1に作用する力を検出することができる。
撮像装置51は、ロボットアーム11に取り付けられているものに限定されない。撮像装置51は、ロボット1を撮影できる位置に固定的に配置されていてもよい。
操作装置4に関し、前述の構成は一例である。操作装置4は、ジョイスティックのような操作部を有していてもよい。操作装置4は、タッチパネル等の操作部を有していてもよい。操作装置4による入力は、ロボット1の移動方向に加えて、ロボット1の移動の速さも含まれていてもよい。例えば、ジョイスティックのような操作部を有する操作装置4の場合、ジョイスティックの傾きによって移動の速さが入力されてもよい。
触覚デバイス8は、前述の構成に限定されない。触覚デバイス8は、ユーザの触覚に刺激を付与できる限り、任意の態様でユーザに装着され得る。触覚デバイス8は、操作装置4に内蔵されていてもよい。また、触覚デバイス8の振動アクチュエータは、ボイスコイルモータ81に限定されない。触覚デバイス8の振動アクチュエータは、偏心回転質量方式又はピエゾ方式であってもよい。
触覚デバイス8は、複数の振動アクチュエータを有していてもよい。ロボット1の様々な接触に応じて複数の振動アクチュエータの組み合わせを変更することによって、ロボット1の接触の種別をユーザに知らせてもよい。例えば、錯触覚の技術を利用して、ロボット1の接触の種別等を判別可能にユーザに知らせてもよい。
触覚デバイス8による振動は、第1振動、第2振動、第3振動及び警報振動に限定されない。ロボット1の構成及びロボット1の作業等に応じて、ロボット1に発生し得る接触は変化し得る。ロボット1の構成及びロボット1の作業等に応じて想定されるロボット1の接触に対応するように、触覚デバイス8の振動が設定され得る。例えば、触覚デバイス8による振動は、2段階又は4段階以上で変更されてもよい。
前述のブロック図は一例であり、複数のブロックを1つのブロックとして実現したり、1つのブロックを複数のブロックに分割したり、一部の機能を別のブロックに移したりしてもよい。
本開示の技術は、遠隔制御プログラム62aが記録された非一時的なコンピュータ読み取り可能な記録媒体であってもよい。また、遠隔制御プログラム62aは、インターネット等の伝送媒体を介して流通させることができるものであってもよい。
フローチャートは、一例に過ぎない。フローチャートにおけるステップを適宜、変更、置き換え、付加、省略等を行ってもよい。また、フローチャートにおけるステップの順番を変更したり、直列的な処理を並列的に処理したりしてもよい。
本明細書中に記載されている構成要素により実現される機能は、当該記載された機能を実現するようにプログラムされた、汎用プロセッサ、特定用途プロセッサ、集積回路、ASICs(Application Specific Integrated Circuits)、CPU(a Central Processing Unit)、従来型の回路、及び/又はそれらの組合せを含む、回路(circuitry)又は演算回路(processing circuitry)において実装されてもよい。プロセッサは、トランジスタ及びその他の回路を含み、回路又は演算回路とみなされる。プロセッサは、メモリに格納されたプログラムを実行する、プログラマブルプロセッサ(programmed processor)であってもよい。
本明細書において、回路(circuitry)、ユニット、手段は、記載された機能を実現するようにプログラムされたハードウェア、又は実行するハードウェアである。当該ハードウェアは、本明細書に開示されているあらゆるハードウェア、又は、当該記載された機能を実現するようにプログラムされた、又は、実行するものとして知られているあらゆるハードウェアであってもよい。
当該ハードウェアが回路(circuitry)のタイプであるとみなされるプロセッサである場合、当該回路、手段、又はユニットは、ハードウェアと、当該ハードウェア及び又はプロセッサを構成する為に用いられるソフトウェアの組合せである。
Claims (11)
- ロボットと、
ユーザからの入力を受け付ける操作装置と、
前記ロボットの画像をユーザに提示する表示装置と、
ユーザの触覚に刺激を付与する触覚デバイスと、
前記操作装置への入力に基づいて前記ロボットを制御する制御装置とを備え、
前記制御装置は、前記ロボットが他の物体に接触した場合に前記触覚デバイスを作動させる遠隔制御システム。 - 請求項1に記載の遠隔制御システムにおいて、
前記制御装置は、
前記操作装置への入力に基づいて、複数の工程が含まれる作業を前記ロボットに実行させ、
前記複数の工程の少なくとも1つの工程の完了時に前記ロボットが他の物体に接触した場合に前記触覚デバイスを作動させる遠隔制御システム。 - 請求項2に記載の遠隔制御システムにおいて、
前記操作装置は、前記複数の工程に対応する複数のコマンドの入力を受け付け、
前記制御装置は、前記操作装置に入力されたコマンドに対応する工程を前記ロボットに実行させる遠隔制御システム。 - 請求項3に記載の遠隔制御システムにおいて、
前記制御装置は、同時に発生している接触の種別の数に応じて前記触覚デバイスの作動態様を変更する遠隔制御システム。 - 請求項1に記載の遠隔制御システムにおいて、
前記制御装置は、前記ロボットの接触の種別を判別し、前記種別が異なる接触ごとに前記触覚デバイスを作動させる遠隔制御システム。 - 請求項1に記載の遠隔制御システムにおいて、
前記制御装置は、前記ロボットの接触力の大きさを判定し、前記触覚デバイスの作動態様を前記接触力の大きさに応じて変更する遠隔制御システム。 - 請求項1に記載の遠隔制御システムにおいて、
前記ロボットに作用する力を検出するセンサをさらに備え、
前記制御装置は、他の物体への前記ロボットの接触を前記センサの検出結果に基づいて判定する遠隔制御システム。 - 請求項7に記載の遠隔制御システムにおいて、
前記ロボットは、ロボットアームと、開閉動作を行う指が設けられ、前記ロボットアームに連結されたハンドとを有し、
前記制御装置は、ワークのピッキング作業を前記ロボットに実行させ、
前記センサは、前記ワークが置かれた面から前記指に作用する力を検出する第1センサと、前記指の開閉方向へ前記ワークから前記指に作用する力を検出する第2センサとを含む遠隔制御システム。 - ロボットと、
ユーザからの入力を受け付ける操作装置と、
前記ロボットの画像をユーザに提示する表示装置と、
ユーザの触覚に刺激を付与する触覚デバイスと、
前記操作装置への入力に基づいて、複数の工程が含まれる作業を前記ロボットに実行させる制御装置とを備え、
前記制御装置は、前記複数の工程の少なくとも1つの工程の完了時に前記触覚デバイスを作動させる遠隔制御システム。 - 操作装置を介してロボットを制御するロボットの遠隔制御方法であって、
前記操作装置を介したユーザからの入力を受け付けることと、
前記操作装置への入力に基づいて前記ロボットを動作させることと、
動作する前記ロボットの画像を表示装置を介してユーザに提示することと、
前記ロボットが他の物体に接触した場合に、ユーザの触覚に刺激を付与する触覚デバイスを作動させることとを含むロボットの遠隔制御方法。 - ロボットと、
ユーザからの入力を受け付ける操作装置と、
ユーザの触覚に刺激を付与する触覚デバイスとを備えた遠隔制御システムを制御する機能をコンピュータに実現させるための遠隔制御プログラムであって、
前記操作装置を介したユーザからの入力を受け付ける機能と、
前記操作装置への入力に基づいて前記ロボットを動作させる機能と、
前記ロボットが他の物体に接触した場合に、ユーザの触覚に刺激を付与する触覚デバイスを作動させる機能とをコンピュータに実現させるための遠隔制御プログラム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022067838A JP2023157744A (ja) | 2022-04-15 | 2022-04-15 | 遠隔制御システム、ロボットの遠隔制御方法及び遠隔制御プログラム |
JP2022-067838 | 2022-04-15 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2023200011A1 true WO2023200011A1 (ja) | 2023-10-19 |
Family
ID=88329709
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2023/015227 WO2023200011A1 (ja) | 2022-04-15 | 2023-04-14 | 遠隔制御システム、ロボットの遠隔制御方法及び遠隔制御プログラム |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP2023157744A (ja) |
WO (1) | WO2023200011A1 (ja) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS61188092A (ja) * | 1985-02-14 | 1986-08-21 | 日本電気株式会社 | マニプレ−タシステム |
JP2010269418A (ja) * | 2009-05-22 | 2010-12-02 | Ihi Corp | ロボット制御装置およびその制御方法 |
JP2015071220A (ja) * | 2013-09-06 | 2015-04-16 | パナソニックIpマネジメント株式会社 | マスタスレーブロボットの制御装置及び制御方法、ロボット、マスタスレーブロボットの制御プログラム、並びに、マスタスレーブロボットの制御用集積電子回路 |
WO2017033362A1 (ja) * | 2015-08-25 | 2017-03-02 | 川崎重工業株式会社 | 遠隔操縦マニピュレータシステム及びその運転方法 |
JP2018039099A (ja) * | 2016-09-09 | 2018-03-15 | ザ ボード オブ トラスティーズ オブ ザ レランド スタンフォード ジュニア ユニバーシティー | ワークの接触状態推定装置及び接触状態推定方法 |
JP2018192599A (ja) * | 2017-05-19 | 2018-12-06 | 川崎重工業株式会社 | 接触検知器、ハンド、ロボット、及びロボットシステム |
JP2020131378A (ja) * | 2019-02-21 | 2020-08-31 | セイコーエプソン株式会社 | ハンドおよびロボット |
-
2022
- 2022-04-15 JP JP2022067838A patent/JP2023157744A/ja active Pending
-
2023
- 2023-04-14 WO PCT/JP2023/015227 patent/WO2023200011A1/ja unknown
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS61188092A (ja) * | 1985-02-14 | 1986-08-21 | 日本電気株式会社 | マニプレ−タシステム |
JP2010269418A (ja) * | 2009-05-22 | 2010-12-02 | Ihi Corp | ロボット制御装置およびその制御方法 |
JP2015071220A (ja) * | 2013-09-06 | 2015-04-16 | パナソニックIpマネジメント株式会社 | マスタスレーブロボットの制御装置及び制御方法、ロボット、マスタスレーブロボットの制御プログラム、並びに、マスタスレーブロボットの制御用集積電子回路 |
WO2017033362A1 (ja) * | 2015-08-25 | 2017-03-02 | 川崎重工業株式会社 | 遠隔操縦マニピュレータシステム及びその運転方法 |
JP2018039099A (ja) * | 2016-09-09 | 2018-03-15 | ザ ボード オブ トラスティーズ オブ ザ レランド スタンフォード ジュニア ユニバーシティー | ワークの接触状態推定装置及び接触状態推定方法 |
JP2018192599A (ja) * | 2017-05-19 | 2018-12-06 | 川崎重工業株式会社 | 接触検知器、ハンド、ロボット、及びロボットシステム |
JP2020131378A (ja) * | 2019-02-21 | 2020-08-31 | セイコーエプソン株式会社 | ハンドおよびロボット |
Also Published As
Publication number | Publication date |
---|---|
JP2023157744A (ja) | 2023-10-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Pastor et al. | Towards associative skill memories | |
JP5180414B2 (ja) | ロボットアームの制御装置及び制御方法、ロボット、ロボットアーム制御プログラム、並びに、集積電子回路 | |
CN110709211B (zh) | 机器人***和机器人***的控制方法 | |
JP4568795B2 (ja) | ロボットアームの制御装置及び制御方法、ロボット、ロボットアームの制御プログラム、並びに、集積電子回路 | |
WO2017033381A1 (ja) | ロボットシステム | |
Laghi et al. | Shared-autonomy control for intuitive bimanual tele-manipulation | |
Peer et al. | Multi-fingered telemanipulation-mapping of a human hand to a three finger gripper | |
US20170249561A1 (en) | Robot learning via human-demonstration of tasks with force and position objectives | |
US9919424B1 (en) | Analog control switch for end-effector | |
JP2019018340A (ja) | 作業用ロボット、作業用ロボットの制御方法 | |
JP7339806B2 (ja) | 制御システム、ロボットシステム及び制御方法 | |
Devine et al. | Real time robotic arm control using hand gestures with multiple end effectors | |
JP6322949B2 (ja) | ロボット制御装置、ロボットシステム、ロボット、ロボット制御方法及びロボット制御プログラム | |
Lii et al. | Toward a task space framework for gesture commanded telemanipulation | |
JP2015186834A (ja) | ロボット制御装置、把持部制御装置、ロボット、把持部、ロボット制御方法、及びプログラム | |
JP2018089736A (ja) | マスタスレーブシステム | |
Osswald et al. | Mechanical system and control system of a dexterous robot hand | |
WO2023200011A1 (ja) | 遠隔制御システム、ロボットの遠隔制御方法及び遠隔制御プログラム | |
Zhou et al. | A bilateral dual-arm teleoperation robot system with a unified control architecture | |
WO2020032263A1 (ja) | ロボットシステム | |
SaLoutos et al. | Fast reflexive grasping with a proprioceptive teleoperation platform | |
Laaksonen et al. | Embodiment independent manipulation through action abstraction | |
Kramberger et al. | Adapting learning by demonstration for robot based part feeding applications | |
JP7185749B2 (ja) | ロボットシステム及びロボットシステムの制御方法 | |
WO2023200012A1 (ja) | 遠隔制御システム、遠隔制御方法及び遠隔制御プログラム |
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: 23788428 Country of ref document: EP Kind code of ref document: A1 |