Robot control device

JPWO2024166264A5Pending Publication Date: 2025-10-22
View PDF -1 Cites -1 Cited by

Patent Information

Application Number
JP2024575961
Authority / Receiving Office
JP · JP
Patent Type
Applications
Filing Date
2025-05-14
Publication Date
2025-10-22
Patent Text Reader

Abstract

This robot control device comprises an operation control unit that controls an operation of a robot. The control device is provided with a storage unit that stores a physical characteristic of an operator, and a region-setting unit that, according to the physical characteristic, sets a specific region which limits the operation of the robot.
Need to check novelty before this filing date? Find Prior Art

Description

Robot control device

[0001] The present disclosure relates to a control device for a robot.

[0002] In the prior art, there is known a robotic device in which a worker works in collaboration with the robot. In the robotic device in which a worker works in collaboration with the robot, the robot and the worker can work together without providing a safety fence around the robot to separate the robot from the worker. For example, there is known a robotic device in which the robot and the worker work together to transport a workpiece.

[0003] In a robotic device that works in collaboration with a worker, a control system is known in which the robot changes its position and posture according to the worker's height or posture to make the worker's work easier. For example, when a robot transports a workpiece together with a worker, the robot can change the height at which the workpiece is transported according to the worker's height, making the worker's work easier. As a result, the worker's work efficiency is improved.

[0004] International Publication No. WO2017 / 203937A1 Japanese Patent Application Laid-Open No. 2019-98455 International Publication No. WO2022 / 039115A1

[0005] In a robotic device that works in collaboration with a worker, there is a risk that the robot may come into contact with the worker. The robotic device can be configured to stop the robot when the worker comes into contact with the robotic device. For example, the robot's control device can stop the robot when it detects an external force acting on the robot, thereby ensuring the safety of the worker.

[0006] However, depending on the worker's body part, it may be preferable for the robot not to come into contact with that worker's body part. Therefore, a robot's operation program can be created so that the robot does not reach specific body parts of a single worker. However, the physical characteristics of workers, such as their physique, vary depending on the worker. Therefore, when a different worker collaborates with a robotic device, the body parts of the worker that the robot reaches may change. Furthermore, even if an operation program is created by setting teaching points taking into account the worker's physique, the movement path between the teaching points cannot be determined until the robot is actually operated. Therefore, there is a problem in that it is not possible to guarantee that the robot will not come into contact with the worker's body part. Thus, there is a need for control that prevents the robot from coming into contact with specific body parts of a worker.

[0007] A robot control device according to one aspect of the present disclosure includes a motion control unit that controls the motion of the robot, a memory unit that stores the physical characteristics of a worker, and an area setting unit that sets a specific area that restricts the motion of the robot in accordance with the physical characteristics.

[0008] 1 is a schematic diagram of a robot device according to a first embodiment. FIG. 2 is a block diagram of a robot device equipped with a control device according to the first embodiment. FIG. 3 is a block diagram of an area setting unit included in the processing unit of the control device. FIG. 4 is a perspective view of a body area, a working area, and a specific area that are set in the first embodiment. FIG. 5 is a main image for controlling the operation of the robot device in relation to contact with the robot device in the first embodiment. FIG. 6 is a main image explaining the operation when setting the working area. FIG. 7 is an image for selecting a method for acquiring the height of a worker. FIG. 8 is an image for manipulating data related to the height of a worker. FIG. 9 is an image for inputting a password for manipulating the height of a worker. FIG. 10 is an image for manually driving the robot device to detect the height of a worker. FIG. 11 is a schematic perspective view of the robot device when manually driving the robot device. FIG. 12 is an image for selecting a model of the robot device according to the first embodiment. FIG. 13 is an image for setting the body height of the main image for controlling the operation of the robot device in the first embodiment. FIG. 14 is a block diagram of a processing unit of a control device according to a second embodiment. FIG. 15 is a block diagram of a program operation unit according to the second embodiment. FIG. 16 is a main image for controlling the operation of the robot device in relation to contact with the robot device in the second embodiment. FIG. 17 is a main image after a simulation of the robot device has been performed. FIG. 18 is a schematic side view of the robot device explaining modification of the operation program. 10 is a perspective view of a body region, a working region, and a specific region in the third embodiment; FIG. 11 is a main image for controlling the operation of the robot device in relation to contact with the robot device in the third embodiment; FIG. 12 is an image for selecting a method for acquiring the height of a body part of a worker; and FIG. 13 is another image for setting the height of a body part of the main image for controlling the operation of the robot device in the third embodiment.

[0009] 1 to 12, a robot control device according to a first embodiment will be described. The robot device according to this embodiment comprises a robot including a plurality of components, a work tool attached to the robot, and a robot control device that controls the robot and the work tool.

[0010] FIG. 1 is a schematic diagram of a robot device according to this embodiment. FIG. 2 is a block diagram of the robot device according to this embodiment. Referring to FIGS. 1 and 2, the robot device 3 includes a work tool 5 that performs a predetermined task, and a robot 1 that moves the work tool 5. The robot device 3 includes a control device 2 that controls the robot device 3. The work tool 5 in this embodiment is a hand that grips and releases a workpiece. The work tool 5 is not limited to a hand, and any device can be used depending on the task performed by the robot device 3. For example, a welding torch that performs arc welding, or a laser welder that performs laser welding, can be used as the work tool.

[0011] The robot 1 of this embodiment is an articulated robot including multiple joints. The robot 1 includes a base 14 fixed to the upper surface of a platform 18 as an installation surface, and a swivel base 13 rotatably supported on the base 14. The robot 1 also includes an upper arm 11 and a lower arm 12. The lower arm 12 is rotatably supported on the swivel base 13. The upper arm 11 is rotatably supported on the lower arm 12. The upper arm 11 rotates around a drive axis parallel to the direction in which the upper arm 11 extends. The robot 1 also includes a wrist 15 rotatably supported on the upper arm 11. The wrist 15 also includes a rotatably formed flange 16. A work tool 5 is fixed to the flange 16. As described above, the robot 1 of this embodiment includes multiple components. The multiple components are connected to each other via joints.

[0012] The robot of this embodiment is configured as a collaborative robot that works in collaboration with a worker. A robot device equipped with a collaborative robot can have a function to limit the robot's movement when a worker comes into contact with the robot. For example, the collaborative robot can be equipped with a force sensor that detects an external force acting on the robot. A control device detects the external force acting on the robot based on the output of the force sensor. The control device has a function to stop the robot or move the robot to a safe location when the external force exceeds a limit value. The robot is not limited to this form, and any robot that can change the position and posture of a work tool can be used.

[0013] The robot 1 of this embodiment includes a robot drive unit 21 having a drive motor that drives components such as the upper arm 11. The work tool 5 includes a work tool drive unit 22 having a drive motor, cylinder, or the like for driving the work tool 5.

[0014] The robot control device 2 includes a control device main body 40 and a teaching pendant 26 that allows the operator to operate the control device main body 40. The control device main body 40 includes an arithmetic processing device (computer) having a CPU (Central Processing Unit) as a processor. The arithmetic processing device has RAM (Random Access Memory) and ROM (Read Only Memory), etc., connected to the CPU via a bus. The robot 1 and work tool 5 are driven based on operation commands from the control device 2. The robot device 3 automatically performs work based on an operation program 69.

[0015] The control device main body 40 includes a storage unit 42 that stores any information related to the robot device 3. The storage unit 42 can be configured with a non-transitory storage medium capable of storing information. For example, the storage unit 42 can be configured with a storage medium such as a volatile memory, a non-volatile memory, a magnetic storage medium, or an optical storage medium. An operation program 69 created in advance to perform an operation of the robot 1 is stored in the storage unit 42.

[0016] The control device main body 40 is equipped with an operation control unit 43 that controls the operation of the robot 1 and the work tool 5. The operation control unit 43 sends operation commands to the robot drive unit 44 for driving the robot 1 based on an operation program 69. The robot drive unit 44 includes an electrical circuit that drives the drive motor, and supplies electricity to the robot drive device 21 based on the operation commands. The operation control unit 43 also sends operation commands to the work tool drive unit 45 for driving the work tool drive device 22. The work tool drive unit 45 includes an electrical circuit that drives the motor, etc., and supplies electricity, etc. to the work tool drive device 22 based on the operation commands.

[0017] The operation control unit 43 corresponds to a processor that operates in accordance with the instructions written in the operation program 69 and other instructions. The processor is configured to be able to read information stored in the storage unit 42. The processor reads the operation program 69 and performs the control defined in the operation program 69, thereby functioning as the operation control unit 43.

[0018] The robot 1 includes a state detector for detecting the position and posture of the robot 1. In this embodiment, the state detector includes a position detector 23 attached to the drive motor of each drive shaft of the robot drive device 21. The position detector 23 can be configured, for example, by an encoder that detects the rotational position of the output shaft of the drive motor. The position and posture of the robot 1 are detected based on the output of each position detector 23.

[0019] A reference coordinate system 91 that remains stationary even when the position and posture of the robot 1 change is set in the robot device 3. In the example shown in Fig. 1, the origin of the reference coordinate system 91 is located on the base unit 14 of the robot 1. The reference coordinate system 91 is also called a world coordinate system. In the reference coordinate system 91, the position of the origin is fixed, and further, the orientation of the coordinate axes is fixed.

[0020] A tool coordinate system 92 having an origin set at an arbitrary position on the work tool 5 is set for the robot device 3. The position and orientation of the tool coordinate system 92 change along with the work tool 5. In this embodiment, the origin of the tool coordinate system 92 is set at the tool tip point of the work tool 5. The position of the robot 1 corresponds to the position of the origin of the tool coordinate system 91 in the reference coordinate system 91. The orientation of the robot 1 corresponds to the orientation of the tool coordinate system 92 with respect to the reference coordinate system 91.

[0021] The teaching pendant 26 is connected to the control device main body 40 via a communication device. The teaching pendant 26 includes an input unit 27 for inputting information about the robot device 3. The input unit 27 is composed of input members such as a keyboard, buttons, and dials. The teaching pendant 26 also includes a display unit 28 for displaying information about the robot device 3. The display unit 28 can be composed of a display panel capable of displaying information, such as a liquid crystal display panel or an organic EL (Electro Luminescence) display panel. The information displayed on the display unit 28 is operated by operating the input unit 27. Note that if the teaching pendant 26 is equipped with a touch panel type display panel, the display panel functions as both the input unit and the display unit.

[0022] The robot device 3 of this embodiment includes a camera 6 as a sensor for acquiring physical characteristics of a worker. The camera 6 of this embodiment is a camera that acquires two-dimensional images. The camera 6 is supported by a support member 19, and its position and orientation are fixed.

[0023] The control device main body 40 in this embodiment includes a processing unit 51 that performs control to limit the movement of the robot 1 in accordance with the physical characteristics of the worker. The processing unit 51 includes an area setting unit 52 that sets a specific area in which the movement of the robot is limited in accordance with the physical characteristics of the worker. The physical characteristics of the worker are stored in the memory unit 42.

[0024] 3 is a block diagram of the region setting unit 52 according to this embodiment. The region setting unit 52 includes a body region setting unit 52a that sets a body region according to the physical characteristics of the worker. The region setting unit 52 also includes a work region setting unit 52b that sets a work region around the robot 1 in which the worker 89 performs work.

[0025] Here, the physical characteristics of the worker refer to the characteristics of the body of the worker who works in collaboration with the robot 1. The physical characteristics of the worker include the height of predetermined parts of the worker's body. For example, the physical characteristics include the worker's height, face height, chest height, abdomen height, upper leg height (the part of the leg above the knee), and lower leg height (the part of the leg below the knee). Furthermore, the physical characteristics are not limited to the height of predetermined parts of the body, but may also be the position of the boundary between the right half and the left half of the body. In other words, the physical characteristics may be the position of a boundary surface extending in the vertical direction. Furthermore, the physical characteristics may include the size of each part.

[0026] 2 , the processing unit 51 includes a state detection unit 55 that detects the state of the robot 1. The state detection unit 55 can detect the position and posture of the robot 1. For example, the state detection unit 55 detects the position and posture of the robot 1 based on the output of the position detector 23. Alternatively, the state detection unit 55 may detect the position and posture of the robot 1 based on an operation command output by the operation control unit 43. Furthermore, the state detection unit 55 can detect the moving speed of the robot 1 in a predetermined part based on the position and posture of the robot 1.

[0027] The processing unit 51 includes a model generation unit 53 that generates a three-dimensional model of the robot device 3. The model generation unit 53 generates a three-dimensional model of the robot device 3, including a model of the robot 1 and a model of the work tool 5, based on three-dimensional shape data of the components of the robot device 3 stored in the storage unit 42. As the three-dimensional shape data, for example, shape data output from a CAD (Computer Aided Design) device can be used. The three-dimensional shape data is stored in the storage unit 42.

[0028] Alternatively, a three-dimensional model of the robot device 3 may be generated in advance and stored in the storage unit 42. For example, a simple three-dimensional model of a work tool can be generated by combining models of a sphere, a hemisphere, a cylinder, a rectangular parallelepiped, and the like. The simple model can be formed large so that the actual work tool is included within the model. Alternatively, a simple model of the robot may be generated by combining geometric shapes. Such a simple model can be generated by operating a teaching pendant.

[0029] The processing unit 51 includes a movement determination unit 56 that determines whether a predetermined part of the robot device 3 has entered a specific area while the robot 1 is operating. The movement determination unit 56 in this embodiment determines whether a predetermined part of the robot device 3 has entered a specific area based on a three-dimensional model of the robot device.

[0030] The processing unit 51 includes a manual control unit 59 that generates commands to manually drive the robot 1 in response to the operation of the worker 89. The operation program 69 may include a program to make the robot device 3 automatically perform a task, as well as a program executed by the manual control unit 59 that is necessary to manually operate the robot device 3 using the teaching pendant 26. The operation commands generated by the manual control unit 59 of the processing unit 51 are sent to the operation control unit 43. The operation control unit 43 drives the robot 1 based on the operation commands. Note that, when the robot 1 is being driven based on the operation commands generated by the manual control unit 59, the operation control unit 43 may perform control to stop the robot 1 if the robot 1 is about to touch the head or the like of the worker.

[0031] The processing unit 51 includes a feature acquisition unit 58 that acquires physical features of the worker 89 who works in collaboration with the robot 1. The feature acquisition unit 58 of the processing unit 51 has a function of calculating height as a physical feature based on the position and posture of the robot 1. The processing unit 51 also includes a command generation unit 57 that generates a command to modify the movement of the robot 1 in accordance with the determination of the movement determination unit 56. The processing unit 51 includes a display control unit 54 that controls the image displayed on the display unit 28 of the teaching pendant 26.

[0032] Each of the above-mentioned units, processing unit 51, region setting unit 52, model generation unit 53, display control unit 54, state detection unit 55, movement determination unit 56, command generation unit 57, feature acquisition unit 58, and manual control unit 59, corresponds to a processor that operates according to a predetermined program. Also, referring to Fig. 3, each of the body region setting unit 52a and working region setting unit 52b corresponds to a processor that operates according to a predetermined program. The processor functions as each unit by reading the program stored in storage unit 42 and performing the control defined in the program.

[0033] In the control device 2 of this embodiment, the area setting unit 52 sets an area where the head 89a of the worker 89 may be present as the specific area. The operation determination unit 56 then determines whether or not at least one component of the robot device 3 (e.g., the robot 1, the work tool 5 attached to the robot 1, and the workpiece) has entered the specific area. If at least one component of the robot device 3 has entered the specific area, the command generation unit 57 executes control to stop the robot 1.

[0034] 4 is a schematic perspective view illustrating the body region, work region, and specific region set by the region setting unit 52 of this embodiment. Referring to FIGS. 1 to 4, the region setting unit 52 sets a specific region SR that restricts the movement of the robot 1 in accordance with the physical characteristics of the worker 89.

[0035] The top of the head 89a of the worker 89 corresponds to the height BH of the worker 89. In the control device 2 of this embodiment, the physical feature of the worker 89 is the height BH of the worker 89. The region setting unit 52 sets the specific region SR in accordance with the height BH of the worker 89. The region setting unit 52 can set each region using, for example, coordinate values ​​in the reference coordinate system 91 of the robot 1.

[0036] The body region setting unit 52a of the region setting unit 52 sets a body region BR1, which is a region where the head 89a, which is a body part of the worker 89, is located. The body region setting unit 52a acquires the height BH of the worker 89. The body region setting unit 52a sets the body region BR1 where the head 89a is expected to move, based on the worker's height BH.

[0037] Because the worker 89 walks around along the floor surface during work, it can be assumed that the head 89a moves horizontally. Therefore, in this embodiment, the body region BR1 is set to have a rectangular parallelepiped shape extending horizontally. That is, the height of the body region BR1 is constant and is set to extend in the X-axis and Y-axis directions of the reference coordinate system 91. The body region setting unit 52a can set the height of the upper surface of the body region BR1 to a height obtained by adding a predetermined margin to the height BH. Furthermore, the body region setting unit 52a can set the height of the lower surface of the body region BR1 to a height obtained by subtracting the predetermined length of the head 89a from the height BH. The width of the body region BR1 can be set, for example, within a range of 20 cm to 30 cm.

[0038] The body region BR1 can be set within a predetermined space. In this embodiment, the body region BR1 can be set within a movable range that the robot apparatus 3 can reach. The movable range that the robot apparatus 3 can reach can be determined in advance and stored in the storage unit 42. The movable range that the robot apparatus 3 can reach can be set using coordinate values ​​in a reference coordinate system 91.

[0039] The body region BR1 can be set to any shape and any size. For example, when the worker crouches or stands, the body region may include a region extending vertically so as to correspond to the region through which the head moves. The body region BR1 can be set so as to always include the worker's head when the worker moves. Furthermore, the body region BR1 may be set to an area above the height of the underside of the head so as to include the region above the worker's head.

[0040] Next, the work area setting section 52b of the area setting unit 52 sets the work area WR. The work area WR is an area where each part of the worker 89 may be present when the worker 89 performs work. The work area setting section 52b can set the work area WR in response to the worker's operation of the teaching pendant 26. In this embodiment, the work area WR is formed in a rectangular parallelepiped shape, but is not limited to this shape. A work area of ​​any shape and any size can be set in response to the area in which the worker moves.

[0041] The working area setting unit 52b may be configured to set multiple working areas WR. For example, the control device 2 may be configured to set multiple working areas WR in response to input from the worker. The working area setting unit 52b may then set the multiple working areas as valid or invalid based on a signal from an external device or the like while the robot device 3 is actually performing work. Alternatively, the working area setting unit 52b may be configured to select two or more working areas from the multiple working areas and add them together to calculate the overall working area.

[0042] For example, there are cases where a worker performs work while standing or crouching. The work area setting unit 52b can receive a signal indicating that the worker is standing from an external device and select a work area where the upper surface is higher. Also, the work area setting unit 52b can receive a signal indicating that the worker is crouching from an external device and select a work area where the upper surface is lower than the above-mentioned work area.

[0043] Furthermore, in this embodiment, the body area is set based on the height from the floor, but this is not limiting. The body area may also be set at a position relative to the work area. For example, the body area setting unit can acquire the work area and set a predetermined percentage (e.g., 20%) of the work area in the height direction above the work area as the body area. Note that the predetermined percentage may be determined according to the height of the worker. This body area setting method allows the body area to be set relatively in accordance with the work area when the work area is changed.

[0044] The region setting unit 52 sets the region where the body region BR1 and the working region WR overlap as the specific region SR. This control makes it possible to limit the region where a predetermined part of the worker is present. This makes it possible to prevent the specific region SR from becoming too large, thereby reducing the amount of calculation required by the processing unit of the control device. Note that the region setting unit may set the body region as the specific region without setting a working region.

[0045] 5 shows images displayed on the display unit of the teaching pendant in this embodiment. Image 71 is a main image for controlling the operation of the robot device 3 in relation to contact between the worker 89 and the robot device 3. Image 71 allows the operator's height and the work area to be set. Portion 72 of image 71 is a portion operated when setting the worker's height in order to set a specific area. Portion 73 of image 71 is a portion operated when setting the work area.

[0046] In part 72 of image 71, the worker's height, which is one of the worker's physical characteristics, can be manually input. The worker's height is displayed in a text box 72a of part 72. A worker who works collaboratively with the robot device 3 selects the text box 72a as an input area. The worker inputs the worker's height into the text box 72a by operating the input unit 27 of the teaching operation panel 26. The body area setting unit 52a of the area setting unit 52 can then set the body area BR1 based on the worker's height.

[0047] Next, the worker working with the robot device 3 sets the work area. Figure 6 shows the main screen used when setting the work area. The worker sets the work area by operating portion 73 of image 71. Referring to Figure 4, the work area WR in this embodiment is a rectangular parallelepiped area. Referring to Figure 6, the worker selects a method for setting the work area by operating list box 73a of portion 73. In this example, a rectangular parallelepiped work area is selected. The positions of two diagonal points P1 and P2 of the rectangular parallelepiped are then displayed in text boxes 73b and 73c, which are set using coordinate values ​​in the reference coordinate system 91.

[0048] A worker working in collaboration with the robot device manually inputs the coordinate values ​​of diagonal points P1 and P2 of the working area WR in portion 73 of image 71. By inputting the coordinate value of diagonally arranged point P1 and the coordinate value of point P2 opposite point P1 in text boxes 73b and 73c, the working area setting unit 52b of the area setting unit 52 can set the working area WR. Alternatively, the coordinate values ​​of diagonal points P1 and P2 of the working area WR may be automatically set according to the position of the robot 1 at that time, for example, by operating the input unit 27 of the teaching pendant 26.

[0049] In this embodiment, a rectangular parallelepiped is selected as the work area, but this is not a limitation. The work area can be set to a predetermined shape by combining any three-dimensional shape, such as a rectangular parallelepiped, a cylinder, a sphere, or a polygonal pyramid. Furthermore, while the work area is set in a reference coordinate system here, this is not a limitation. The work area can be set in any predetermined coordinate system. The work area setting unit 52b can set the work area WR based on values ​​input by the worker. The region setting unit 52 can then set the specific region SR based on the body region BR1 and the work area WR. The coordinate values ​​displayed in the text boxes 73b and 73c may also be based on any predetermined coordinate system. The values ​​related to the height and work area input by the worker may or may not be stored in a memory unit.

[0050] The control device 2 of this embodiment performs control to stop the robot device 3 when it is determined that at least some of the components of the robot device 3 have entered a specific area SR while the robot device 3 is performing actual work.

[0051] The state detection unit 55 can detect the operating state of the robot 1 while the robot device 3 is operating to perform actual work. The model generation unit 53 then generates a 3D model corresponding to the current state of the robot device 3. The model generation unit 53 can place 3D models of the robot 1 and work tool 5 in a virtual space corresponding to the reference coordinate system 91, based on the position and posture of the robot 1 acquired by the state detection unit 55. The model generation unit 53 can also generate a 3D model of the specific region SR.

[0052] The movement determination unit 56 determines whether or not at least a part of a component included in the robot apparatus 3 enters the specific region SR while the robot 1 is being driven.

[0053] In particular, the movement determination unit 56 determines whether at least a portion of the model of the robot 1 is interfering with the model of the specific region SR. If at least a portion of the model of the robot 1 is interfering with the model of the specific region SR, it can be determined that the robot device 3 is entering the specific region SR. Furthermore, the movement determination unit 56 determines whether the model of the work tool 5 attached to the robot 1 is interfering with the model of the specific region SR. In this way, if it is determined that at least one of the model of the robot 1 and the model of the work tool 5 is interfering with the specific region SR, it can be determined that at least a portion of the robot device 3 is entering the specific region SR.

[0054] When the operation determination unit 56 determines that at least a portion of the robot device 3 has entered the specific region SR, the command generation unit 57 transmits a command to stop the robot 1 to the operation control unit 43. In response to the command from the command generation unit 57, the operation control unit 43 performs control to stop the robot 1. Alternatively, in response to the command from the command generation unit 57, the operation control unit 43 performs control to stop the supply of power to the driving motor.

[0055] In this way, the control device 2 of this embodiment sets a specific area SR in which the head 89a of the worker 89 moves, and performs control to stop the robot device 3 when at least a part of the robot device 3 enters this specific area SR. After the robot device 3 is stopped based on the determination of the operation determination unit 56, the worker performing the collaborative work can manually modify the operation program 69 of the robot device 3.

[0056] By controlling the robot device 3 to stop based on the physical characteristics of the worker 89 performing the actual work, it is possible to prevent the robot 1 or work tool 5 from coming into contact with specific parts of the worker's body, such as the head 89a. When the robot device 3 is moving at a slow speed, it may be acceptable for the robot to come into contact with parts of the worker's body, such as the thighs. However, it is preferable that the robot or work tool not come into contact with the worker's head.

[0057] An operation program can be created to avoid areas where specific body parts are present for a single worker. However, because other workers have different heights, it is difficult to know at what height of the body part the robot will operate. This also creates a problem of difficulty for the control device to distinguish. However, as described above, the control device of this embodiment sets specific areas according to the physical characteristics of the worker who will work collaboratively with the robot device. Then, by stopping the robot device when it enters a specific area, it is possible to avoid the robot or work tool coming into contact with specific body parts of the worker.

[0058] In this embodiment, it is determined whether a predetermined portion of the model of the robot device has entered the model of the specific area, but this is not limiting. The model generation unit may further create a model of the workpiece held by the work tool. The operation determination unit may then determine whether the workpiece has entered the specific area. If it is determined that the workpiece has entered the specific area, the command generation unit may execute control to stop the robot device.

[0059] Referring to Fig. 5, the worker's height as a physical characteristic can be manually input in portion 72 of image 71, but this is not limiting. Another operation for a worker working in collaboration with the robot device 3 to set height as a physical characteristic will be described. A button 72b for setting height is displayed in portion 72 of image 71. Fig. 7 shows an image for setting the worker's height. Referring to Figs. 5 and 7, when the worker presses button 72b, image 78 is displayed on display unit 28. Image 78 includes buttons 78a, 78b, and 78c.

[0060] Button 78a is a button for recording the worker's height or for obtaining the current worker's height from a plurality of heights that have already been recorded. FIG. 8 shows an image displaying a database of worker heights. Image 79 is an image that is displayed when the worker presses button 78a shown in FIG. 7. Buttons 79a to 79f are displayed on image 79. The names of the workers are displayed on each of buttons 79a to 79d. Furthermore, buttons 79e and 79f are buttons for which the heights of workers have not been registered.

[0061] The names and heights of the workers displayed on each of the buttons 79a to 79f are stored in the memory unit 42. The worker can set the height by pressing the button for the worker's name. That is, the height stored in the memory unit 42 can be displayed in the text box 72a in the portion 72 in FIG. 5. Even if the worker does not have the height memorized, the worker can set the height by selecting the worker's name.

[0062] In this embodiment, the operator may also be the operator creating the program. In this case, by setting the height of each operator in portion 72 of image 71 in Fig. 5 and executing the operation program, the operator creating the program can check whether the operation program will operate appropriately for the operator.

[0063] To change the worker's height stored in the memory unit 42, one of the worker's name buttons 79a to 79d is pressed and held down. FIG. 9 shows an image displayed when changing the worker's height. Referring to FIGS. 8 and 9, by pressing and holding down the worker's name button, the display control unit 54 displays image 80 superimposed on image 79. Image 80 is a screen for entering a password for registering or changing the height. For example, the password of the control device administrator can be used. By entering the password in text box 80a and pressing button 80b, the worker's height can be changed and stored in the memory unit 42.

[0064] Similarly, when setting a new worker's name and height, the worker presses and holds button 79e in image 79 in FIG. 8 . When the worker inputs a password in image 80 shown in FIG. 9 , an image for inputting the worker's name and height is displayed. The worker can input the name and height and store them in memory unit 42. Alternatively, the system may be configured so that when the worker inputs the name, the height displayed in text box 72a in portion 72 in FIG. 5 can be stored. By this operation, the set name is displayed on button 79e in FIG. 8 .

[0065] In this way, the worker can select a worker and input the worker's height by operating the input unit 27. The worker can store the height as a physical characteristic in the memory unit 42 by operating the input unit 27. The worker can easily set the worker's height by selecting the name button. The body region setting unit 52a of the region setting unit 52 can set the body region BR1 based on the set height.

[0066] Another method for setting the height is for the worker to manually drive the robot 1 and set the worker's height based on the position and posture of the robot 1. Fig. 10 shows an image in which the worker's height is set by manually driving the robot. Referring to Figs. 7 and 10, when the worker working in collaboration with the robot device 3 presses button 78b in image 78, the display control unit 54 displays image 81 superimposed on image 78, as shown in Fig. 10. Image 81 includes a button 81a for detecting the height of the tool tip of the robot device 3 when the robot 1 is manually driven.

[0067] Also, for example, an operation program 69 may be provided that sets the worker's height when the upper arm 11, lower arm 12, etc. of the robot 1 are driven. In this case, when the upper arm 11, lower arm 12, etc. of the robot 1 move in the height direction and the work tool 5 reaches the vicinity of the worker's head, the worker can operate a stop button on the image 81 or touch the robot 1 to stop the robot 1, and the height of the work tool 5 at the time of stoppage can be recorded as the worker's height.

[0068] FIG. 11 is a schematic perspective view of the robot device when an operator is manually operating the robot. Referring to FIGS. 2 and 11, the manual control unit 59 can drive the robot 1 in response to the operator's operation of the input unit 27 of the teaching pendant 26. Alternatively, the control device 2 may have a direct teach function. The operator grasps a gripper disposed on the robot to directly change the position and orientation of the robot. The manual control unit 59 calculates the force applied to the gripper based on the output of a force sensor disposed on the robot. The manual control unit 59 can change the position and orientation of the robot based on the direction and magnitude of the applied force.

[0069] In this way, the worker 89 can manually change the position and posture of the robot 1. In this example, the worker 89 adjusts the position and posture of the robot 1 so that the position of the origin of the tool coordinate system 92 is at a height corresponding to the worker's neck. When the worker presses the button 81 a on the image 81, the feature acquisition unit 58 acquires the position and posture of the robot 1 from the state detection unit 55. The feature acquisition unit 58 calculates the worker's height, which is a physical feature of the worker, based on the position and posture of the robot 1 when the robot 1 is manually driven. The feature acquisition unit 58 can calculate the worker's neck height based on the position of the robot 1 in the reference coordinate system 91 and a predetermined height from the floor to the origin of the reference coordinate system 91. The feature acquisition unit 58 can calculate the worker's height by adding a predetermined head width to the neck height.

[0070] 10, the display control unit 54 displays the height calculated by the feature acquisition unit 58 in a text box 81b of an image 81. The worker can check the height by looking at the text box 81b. The worker sets the height by pressing a button 81c of the image 81. The image 71 shown in FIG. 5 is displayed, and the measured height is displayed in a text box 72a of a portion 72.

[0071] Alternatively, referring to FIG. 10 , the button 81 a may be a button for starting manual operation. The display control unit 54 may intermittently display the height according to the manual operation of the robot device 3. When the worker presses the button 81 a, the manual control unit 59 starts manual operation of the robot device 3. The worker 89 changes the position and posture of the robot 1. The feature acquisition unit 58 calculates the height of the worker 89 based on the position and posture of the robot 1 at predetermined intervals. The display control unit 54 displays the height calculated by the feature acquisition unit 58 in a text box 81 b of the image 81. When the position and posture of the robot 1 reach the desired position and posture, the manual operation of the robot device 3 is stopped. The worker can set the height by pressing the button 81 c of the image 81.

[0072] In this embodiment, the robot is driven so that the tool tip point is positioned at the height of the worker's neck, but this is not limiting. For example, the robot device may be driven so that the center of the robot flange is at the height of the top of the worker's head. The feature acquisition unit can calculate the worker's height based on the body part of the worker to which the component parts of the robot device are aligned.

[0073] Next, the characteristic acquisition unit 58 can acquire the worker's physical characteristics based on the output of the sensor as another control for acquiring the worker's height. With reference to Figures 2 and 7, the worker can set the worker's height based on the image captured by the camera 6 by pressing the button 78c. The button 78c is a button for measuring the worker's height using the camera 6 as a sensor disposed in the robot device 3.

[0074] 1 and 2, the camera 6 is fixed at a position where it captures an image of the head of the worker 89. The position and orientation of the camera 6 in this embodiment are fixed. The feature acquisition unit 58 in this embodiment is configured to be able to perform image processing. The worker 89 can place a scale indicating his / her height in the background of the head 89a. The camera 6 then captures an image of the head 89a of the worker 89 and the scale indicating his / her height.

[0075] The feature acquisition unit 58 can detect the outline of the head by performing image processing. The outline of the worker's head can be detected by, for example, a pattern matching method. The feature acquisition unit 58 can then detect the worker's height based on the position of the top of the worker's head and the image of the scale in the background of the head. The height is then entered in a text box 72a in a portion 72 of an image 71 shown in FIG. 5 .

[0076] Alternatively, a mark that can be detected by image processing can be prepared in advance. The mark is placed at the height of the worker. Then, an image of the mark and a scale indicating the worker's height can be captured by a camera. This method does not require detecting the worker's head. An example of a mark that can be detected by image processing is a QR code (registered trademark).

[0077] Alternatively, the camera may be attached to a robot. For example, the camera may be fixed to the wrist of the robot. Depending on the worker's height, the position and orientation of the robot may be manually changed so that the worker's head is captured.

[0078] In this embodiment, a camera capturing two-dimensional images is provided as a sensor for acquiring the worker's physical characteristics, but this is not limiting. Any sensor capable of acquiring the worker's physical characteristics can be used. For example, a three-dimensional sensor such as a range sensor capable of acquiring three-dimensional position information, or a light curtain capable of detecting the height of an object can be used as the sensor.

[0079] In this embodiment, in addition to manually inputting the height, the height can be acquired from a database, the robot can be manually driven to measure the height of a body part, or a camera can be used as a sensor to capture an image of a body part and set the height, but this is not a limitation. The control device may be configured to set physical characteristics using at least one method. For example, the present embodiment does not necessarily require a camera. If the worker manually inputs the height, the camera and the characteristic acquisition unit may not necessarily be provided.

[0080] In this embodiment, there is one model of the robot device that determines whether a predetermined portion of the robot device has entered a specific area, but the model is not limited to this. The models of the robot and the work tool can be formed in a changeable manner.

[0081] 12 shows an image for selecting a model of the robot device in this embodiment. Image 83 is an image for setting a three-dimensional model for determining whether a predetermined portion of the robot device 3 has entered a specific area while the robot 1 is operating. Image 83 can be added to image 71 in FIG. 5, for example. Alternatively, image 71 can include a button for selecting a three-dimensional model. A configuration may be adopted in which image 83 is displayed as a pop-up image when the operator presses this button.

[0082] A worker who works in collaboration with a robot device can generate multiple types of 3D models in advance. For example, a robot model including all of the robot's components, a robot model formed of some of the robot's components such as the robot's upper arm and lower arm, and a model of a work tool can be created in advance. The worker can store these models in the storage unit 42 in advance.

[0083] A worker working in collaboration with the robot device can select a 3D model to be used to determine entry into a specific area from list boxes 83a to 83c in the image 83. In this embodiment, multiple 3D models can be selected. In the example shown in FIG. 12, a robot model formed by all of the robot's components is selected in list box 83a. A hand model is selected in list box 83b. The model generation unit 53 of the processing unit 51 generates a 3D model that combines the robot model and the hand model. The motion determination unit 56 can determine whether at least one of the robot model and the hand model will enter a specific area.

[0084] Furthermore, by switching the model of the robot device, it is possible to change the predetermined part of the robot device used to determine whether or not the robot has entered a specific area. For example, when a robot model consisting only of models of the robot's upper and lower arms is used, the motion determination unit can determine whether or not at least one of the robot's upper and lower arms has entered a specific area. For example, when a work tool is not included in the three-dimensional model, it is possible to set the system so that determination of whether or not the work tool has entered a specific area is not performed.

[0085] The above-described embodiment is not limited to image 71 in FIG. 5 . As an alternative example, FIG. 13 shows another image for setting a body part to be displayed on the display unit. Image 85 shown in FIG. 13 is an image displayed instead of image 71 in FIG. 5 . Image 85 is configured so that the height of the body part shown in person image 85b can be set in text box 85a. The worker's height is calculated based on the height set in text box 85a. In image 85, by pressing button 85c, the body height can be set from a database, based on the position and posture of the robot device, or based on a camera image. The worker sets the height and body region using image 85. The working region setting unit automatically sets the working region. For example, the entire movable range of the robot 1 or a predetermined region is set as the working region. The region setting unit sets the intersection of the body region and the working region as a specific region.

[0086] In the above-described embodiment, the movement determination unit determines whether or not at least a portion of the robot apparatus has entered the specific area, but the present invention is not limited to this. The movement determination unit may determine that at least a portion of the robot apparatus is likely to enter the specific area. For example, a sensor may be disposed to detect entry into a preliminary area surrounding the specific area, and when a portion of the robot apparatus has entered the preliminary area, it may be determined that the robot apparatus is likely to enter the specific area.

[0087] Second Embodiment A robot control device according to a second embodiment will be described with reference to Figs. 14 to 18. The configuration of the robot 1 according to this embodiment is the same as that of the robot 1 according to the first embodiment (see Fig. 1). The robot control device according to this embodiment performs a simulation before the robot device actually performs a task. Then, if there is a risk of contact between the robot device and a worker performing a collaborative task, the operation program for driving the robot is modified.

[0088] 14 is a block diagram of the processing unit of the robot control device of this embodiment. The processing unit 65 included in the control device main body of the robot control device of this embodiment includes a program operation unit 60 that verifies and corrects the operation program 69. The other configurations of the processing unit 65 are the same as the configuration of the processing unit 51 in the first embodiment (see FIG. 2). Each unit of the processing unit 65 and the program operation unit 60 corresponds to a processor that operates according to a predetermined program. The processor functions as each unit by reading the program and performing the control defined in the program.

[0089] A block diagram of the program operation unit of this embodiment is shown in Fig. 15. Referring to Figs. 14 and 15, the program operation unit 60 performs a simulation of the robot device 3 based on an operation program 69 and a three-dimensional model of the robot device, and automatically corrects the operation program 69.

[0090] The program operation unit 60 includes a simulation execution unit 61 that executes a simulation of the operation of the robot device 3 based on a predetermined operation program 69 of the robot device 3. The simulation execution unit 61 executes a simulation of the robot device 3 by changing the position and posture of the three-dimensional model generated by the model generation unit 53 based on the operation program 69. For example, the simulation execution unit 61 acquires the position and posture of the robot 1 at teaching points defined in the operation program 69 and calculates the position and posture of each component of the robot device 3. The simulation execution unit 61 acquires models of the component members of the robot device 3 from the model generation unit 53 and places the model of the robot device 3 in a three-dimensional virtual space based on the position and posture of each component member. The simulation execution unit 61 also sets a model of the specific area SR in the three-dimensional virtual space based on the height and working area of ​​the worker.

[0091] The processing unit 51 includes a prediction unit 62 that predicts whether a predetermined part of the robot will enter a specific region when the robot is driven based on the operation program 69. The prediction unit 62 can predict that the robot device 3 will move to a specific position and posture without actually driving the robot device 3 to that position. For example, the prediction unit 62 determines whether a predetermined part of the robot device 3 will enter the specific region SR during the period in which the simulation is being performed.

[0092] The program operation unit 60 includes a program correction unit 63 that corrects the operation program 69 so that a predetermined part of the robot device 3 does not enter a specific area when the robot 1 is driven based on the operation program 69. The program correction unit 63 corrects the operation program 69 based on the results of the simulation. Each unit of the simulation execution unit 61, the prediction unit 62, and the program correction unit 63 corresponds to a processor that operates in accordance with the operation program 69.

[0093] 16 shows an image displayed on the display unit of the teaching pendant in this embodiment. In image 85, portions 74 and 75 are added to image 71 (see FIG. 5) in the first embodiment. Portion 74 of image 85 is a portion that is operated when simulating the robot device 3 or modifying the operation program 69. Portion 75 of image 85 is a portion that displays the results of the simulation of the robot device. In image 85 of this embodiment, by operating portion 74, it is possible to simulate the robot device 3 or modify the operation program 69.

[0094] The worker who creates the operation program 69 determines the worker's reference height when creating the operation program 69. For example, the worker who creates the operation program 69 sets the height of the worker who creates the operation program 69 as the reference height. The worker creates the operation program so that at least a part of the robot device does not enter an area where the head of a worker of the reference height would be present. Alternatively, the worker may create the operation program 69 so that the tool tip point does not enter an area where the head of a worker of the reference height would be present.

[0095] An operator creating an operation program inputs a reference height in a text box 72a in section 72. The operator can select an operation program to actually perform the operation in a list box 74a. In this example, an operation program named "TEST" is selected. When the operator creating an operation program presses button 74d in section 74, the program operation unit 60 associates the reference height set in section 72 with the program displayed in section 74 and stores it in the memory unit 42.

[0096] Next, the worker who will work collaboratively with the robot device performs a simulation and modifies the operation program based on the results of the simulation and as necessary. The worker who will work collaboratively sets the height of the worker who will work collaboratively in section 72. The worker also sets the work area in section 73.

[0097] A worker performing a collaborative task selects an operation program to actually perform the task in a list box 74a of the section 74. In this example, an operation program named "TEST" is selected. When the worker presses the button 74b, the simulation execution unit 61 executes a simulation of the robot device 3 based on the operation program TEST.

[0098] FIG. 17 shows a main image when it is determined that a portion of the robot apparatus 3 will enter the specific area. When the prediction unit 62 determines that a predetermined portion of the robot apparatus 3 will enter the specific area SR, the display unit 28 displays a warning that the predetermined portion of the robot apparatus 3 will enter the specific area SR. More specifically, in this embodiment, when it is determined that at least a portion of the robot apparatus 3 will enter the specific area SR, the display unit 28 displays in the notification box 75a of the portion 75 that the robot apparatus 3 may enter the specific area SR. Furthermore, the display control unit 54 can change the color of the robot status notification box 75a to red, for example. This warning notifies the worker that there is a risk that the robot apparatus 3 will enter the specific area. The worker performing the collaborative work can then manually modify the operation program, for example.

[0099] In the above-described embodiment, the prediction unit 62 determines whether at least a portion of the robot device 3 has entered the specific area based on the results of a simulation of the robot device 3. However, this is not limiting. The prediction unit may extract teaching points set in the operation program and determine whether the positions of the teaching points are located within the specific area. The prediction unit may predict that at least a portion of the robot device 3 will enter the specific area if the position of at least one teaching point is located within the specific area. Alternatively, for example, the prediction unit may determine whether at least a portion of the robot device 3 is likely to enter the specific area while the robot device 3 is operating. If the robot device 3 is likely to enter the specific area, the prediction unit controls the robot device 3 to stop before the robot device 3 enters the specific area, and the operator can check the operation program to identify the teaching points to be corrected.

[0100] Next, the control device 2 of this embodiment can automatically correct the operation program so that a predetermined part of the robot device 3 does not enter a specific area. With reference to Figures 15 and 17, when a worker performing a collaborative task presses button 74c, program correction unit 63 executes control to correct the operation program TEST.

[0101] Figure 18 is a schematic side view of the robot device illustrating a method for correcting an operation program. Figure 18 shows the movement path of the robot device 3 based on the operation program before correction and the movement path of the robot device 3 based on the operation program after correction. Teaching points 95a to 95g are defined in the operation program before correction. Teaching points 96a to 96g are also set in the operation program after correction.

[0102] The operation program 69 is created so that at least a part of the robot device does not enter a specific area where the head of a worker of a standard height is present. However, if the height of the worker actually performing the collaborative work differs from the standard height, the teaching point may be placed inside the area where the head of the worker performing the collaborative work is present.

[0103] 15 and 18, the prediction unit 62 determines whether or not the teaching points 95a to 95g are located inside the specific region SR. If at least one of the teaching points 95a to 95g is located inside the specific region SR, the program correction unit 63 performs control to correct the operation program by changing the positions of the teaching points.

[0104] In this embodiment, the program correction unit 63 sets teaching points 96a to 96c without changing the positions of teaching points 95a to 95c that are located outside the working region WR. The program correction unit 63 changes the positions of pre-correction teaching points 95d to 95g that are located inside the working region WR. The program correction unit 63 executes control to lower the positions of teaching points 95d to 95g, as indicated by arrow 98, and sets them as post-correction teaching points 96d to 96g.

[0105] When teaching points 95d-95g are present within the specific region SR, the program correction unit 63 calculates the difference between the reference height and the height of the worker performing the collaborative task. Then, the program correction unit 63 uses this difference to move the pre-correction teaching points 95d-95g away from the specific region SR, thereby setting the corrected teaching points 96d-96g. In other words, the amount of movement of the teaching points indicated by arrow 98 corresponds to the difference between the reference height described in the operation program and the height of the worker performing the collaborative task. In this example, control is performed to move the teaching points in the direction of the Z axis of the reference coordinate system 91. The program correction unit 63 corrects the positions of teaching points 95d-95g in the operation program to the positions of teaching points 96d-96g.

[0106] In this way, by performing control to automatically correct the operation program, it is possible to prevent the teaching point from being located inside the specific region SR, that is, it is possible to prevent the robot device 3 from entering the specific region SR.

[0107] In the above-described embodiment, the teaching points defined in the operation program are moved by a distance corresponding to the height difference so as not to be positioned within the specific area SR, but this is not limiting. A simulation may be performed using a three-dimensional model of the robot to calculate the distance to move the teaching points. A distance to move the teaching points that prevents the entire robot device from entering the specific area may be calculated, and the position of the teaching points may be corrected by this distance. The corrected operation program can be stored in the memory unit 42 together with the worker's name and height.

[0108] In the above embodiment, the program correction unit changes the positions of the teaching points located within the working area, but this is not limiting. It is also possible to detect the positions of teaching points where at least a part of the robot device enters a specific area, and change the positions of these teaching points.

[0109] The other configurations, actions, and effects are the same as those of the robot control device in the first embodiment, and therefore will not be described repeatedly here.

[0110] (Third embodiment) A robot control device in a third embodiment will be described with reference to Figs. 19 to 22. In the first embodiment, height is used as an example of a physical characteristic of a worker. In this embodiment, the height of any part of the worker's body is used as the physical characteristic of a worker. The configuration of the robot control device in this embodiment is similar to the configuration of the control device of the robot device in the first and second embodiments (see Figs. 1, 2, 3, 14, and 15).

[0111] FIG. 19 is a schematic perspective view illustrating the work area, body area, and specific area of ​​this embodiment. In this example, in addition to a head 89a of a worker 89, a chest 89b, an abdomen 89c, an upper leg 89d (the upper part of the feet), and a lower leg 89e (the lower part of the feet) are defined. The body area setting unit 52a sets horizontally extending body areas BR1 to BR5 according to each body part. The body area setting unit 52a can set body areas BR1 to BR5 with a predetermined width based on the height of each body part. For example, each body area can be set with a width of 20 cm to 30 cm in the height direction. In this embodiment, each body area BR1 to BR5 is set within the reach of the robot device 3, including the robot 1 and the work tool 5.

[0112] The body regions of each part may be regions separated by boundaries extending in the vertical direction. In particular, three or more body regions may be set for the worker's body. For example, the body may be divided vertically into three regions: a body region for the main body including the worker's chest, a body region for the right hand, and a body region for the left hand.

[0113] The work area setting unit 52b sets the work area WR, which is the area where the worker 89 works. Then, the area setting unit 52 sets the overlapping areas between each of the body areas BR1 to BR5 and the work area WR as specific areas SR1 to SR5 for each body part. For example, the specific area SR5 is the area corresponding to below the worker's knees. Here, five specific areas SR1 to SR5 are set.

[0114] Figure 20 shows the main image displayed on the display unit of the teaching pendant in this embodiment. Image 76 is the main image for controlling the operation of the robotic device. Image 76 includes a section 77 for setting the heights of multiple characteristic features of the worker. Section 73 operated when setting the working area, section 74 operated when simulating the robotic device, and section 75 displaying a warning about the operation of the robotic device are the same as images 71 and 85, which are the main images of the control device in the first and second embodiments (see Figures 5 and 16). Images 71 and 85 may be omitted.

[0115] Images 77g showing the worker's head body region, chest body region, abdomen body region, upper leg body region, and lower leg body region are displayed in portion 77 of image 76. Each part of image 77g can be selected by the worker operating teaching operation panel 26.

[0116] Text boxes 77a to 77e are displayed as input areas for inputting the height of each part of the worker's body in part 77 of the image 76. The height of the upper surface of each body region or the height of the lower surface of each body region can be input in the text boxes 77a to 77e.

[0117] The height of each body part can be input into text boxes 77a to 77e in the same way as in the height text box 72a (see FIG. 5) of the control device in the first embodiment. As a basic input method, workers performing collaborative work can directly input their height into text boxes 77a to 77e.

[0118] Furthermore, similar to the images of the control device in the first embodiment, it is possible to select the height of a body part from a database, manually drive the robot to set the height of the body part, or set the height by capturing an image of each part using a camera as a sensor.

[0119] Fig. 21 shows an image for setting the height of each body part. Referring to Fig. 20 and Fig. 21, the operator selects a desired body part in image 77g and presses button 77f, thereby displaying image 82. Similar to image 78 of the first embodiment (see Fig. 7), image 82 displays buttons 82a for operating a database of the height of each body part, button 82b for setting the height of the body part by manually driving the robot, and button 82c for setting the height of the body part using an image captured by a camera.

[0120] The operator can set the height of each body part by operating the respective buttons 82a to 82c in the same manner as in the first embodiment. For example, the operator selects the abdomen in image 77g in FIG. 20 and presses button 77f, causing the display control unit 54 to display image 82 shown in FIG. 21. The operator can then set the height of the abdomen by operating the database with button 82a, manually operating the robot with button 82b, or capturing an image with button 82c. The operator can perform this operation for each body part.

[0121] The robot control device of this embodiment can control the movement of the robot device 3 according to each part. For example, the movement determination unit 56 can determine whether a predetermined part of the robot device 3 has entered one of the specific regions SR1 to SR5. In this embodiment, the movement determination unit 56 determines whether at least a part of the robot device 3 has entered at least one of the specific regions SR1 to SR5. If the robot device 3 has entered at least one of the specific regions SR1 to SR5, the command generation unit 57 can execute control to stop the robot device 3.

[0122] Alternatively, some of the multiple specific regions may be selected to determine the entry of the robot device 3. For example, only the specific region SR1 of the head and the specific region SR2 of the chest may be selected. In this case, control can be performed to stop the robot device 3 when a predetermined part of the robot device 3 enters at least one of the specific regions SR1 and SR2.

[0123] Furthermore, this embodiment is not limited to image 76 in FIG. 20 . As an alternative example, FIG. 22 shows another image showing body parts displayed on the display unit. Image 84 shown in FIG. 22 is an image displayed instead of image 76 in FIG. 20 . In image 84, the body parts are divided into detailed sections, such as the area around the shoulder joint and the upper arm. The height of each body part can be set in text boxes 84a to 84i. Furthermore, a desired body part can be selected in image 84j of a person. In this example, the area around the shoulder joint is selected. In image 84, by pressing button 84k, the height of each body part can be set from a database, the position and posture of the robot device, or an image captured by a camera. The worker uses image 84 to set the body area. The working area setting unit automatically sets the working area. For example, the entire movable range of the robot 1 or a predetermined area is set as the working area. The area setting unit sets the intersection of the body area and the working area as a specific area.

[0124] In this embodiment, the program correction unit 63 may correct the operation program so that the teaching point is located in the outermost area of ​​the selected specific area SR where no problems will arise even if the robot device 3 moves.

[0125] The other configurations, actions, and effects are similar to those of the robot control device in the first and second embodiments, and therefore will not be described repeatedly here.

[0126] 19 and 20, a robot control device according to a fourth embodiment will be described. In this embodiment, similar to the third embodiment, multiple body parts are set. In this embodiment, control is performed to drive the robot at a robot speed limit determined in accordance with the body part.

[0127] 19 and 20, a speed limit for the robot's operation can be set for each region of each body part. For example, it can be determined that if the robot's operation speed is slow, it is acceptable for the robot device to come into contact with the worker. In this case, a speed limit for the robot can be set according to a specific region of the body part. The speed of the robot here can be the speed of a predetermined part of the robot. For example, the movement speed of the tool tip point of the robot device can be used.

[0128] The state detection unit 55 can calculate the movement speed of the tool tip point based on the position and posture of the robot 1 acquired at predetermined time intervals. The operation determination unit 56 determines whether the movement speed of the tool tip point exceeds the speed limit set for each part when at least a part of the robot device enters a specific area of ​​each part. When the movement speed of the tool tip point exceeds the speed limit of at least one part, the command generation unit 57 can perform control to stop the robot device.

[0129] For example, when the robot apparatus 3 enters the region of the upper part of the leg, the movement determination unit 56 acquires the speed limit corresponding to the upper part of the leg. The movement determination unit 56 determines whether the moving speed of the tool tip point exceeds the speed limit corresponding to the upper part of the leg. If the moving speed of the tool tip point exceeds the speed limit corresponding to the upper part of the leg, the command generation unit 57 can stop the robot apparatus.

[0130] In this embodiment, when the moving speed of the robot device exceeds a speed limit determined according to the physical characteristics of the robot device, control can be implemented to stop the robot device. This control can reduce the conditions under which the robot device stops, thereby suppressing the robot device from stopping. As a result, the work efficiency of the robot device is improved.

[0131] In this embodiment, the speed of the tool tip point is used as the robot speed, but this is not limited to this. When a three-dimensional model of the robot is used, the speed of any part of the robot can be calculated using the three-dimensional model. For example, the maximum speed at a predetermined point of a robot component located within a specific area of ​​each part can be calculated. Then, if the robot speed exceeds the speed limit, control can be implemented to stop the robot.

[0132] The processing unit of the control device can perform either one of the following controls: a control to stop the robot device when a predetermined portion of the robot device enters a specific area; or a control to stop the robot device when a predetermined portion of the robot device enters a specific area and the moving speed of the robot device exceeds a speed limit determined according to the physical characteristics of the robot device. If the control device is configured to be able to perform both of these controls, for example, an image 76 shown in FIG. 20 can be displayed to select either one of the controls. Alternatively, an image to select either one of the controls can be displayed for each part of the body. The processing unit can perform the control selected by the operator's operation.

[0133] The other configurations, actions, and effects are the same as those of the robot control devices in the first to third embodiments, and therefore will not be described repeatedly here.

[0134] The robot control device according to at least one of the above-described embodiments can set an area in which the robot's movements are restricted in accordance with the individual physical characteristics of the worker who will actually perform the work.

[0135] Although the present disclosure has been described in detail, the present disclosure is not limited to the individual embodiments described above. Various additions, substitutions, modifications, partial deletions, etc. are possible in these embodiments without departing from the gist of the present disclosure or the spirit of the present disclosure derived from the content of the claims and their equivalents. These embodiments can also be implemented in combination. For example, in the above-described embodiments, the order of each operation and the order of each process are shown as examples and are not limited to these. The same applies when numerical values ​​or mathematical expressions are used in the description of the above-described embodiments.

[0136] The following notes are disclosed regarding the above-described embodiment and modifications.

[0137] (Note 1) A robot control device 2 comprising: a motion control unit 43 that controls the motion of the robot 1; a memory unit 42 that stores the physical characteristics of the worker 89; and an area setting unit 52 that sets specific areas SR, SR1 to SR5 that restrict the motion of the robot in accordance with the physical characteristics.

[0138] (Supplementary Note 2) A robot control device according to Supplementary Note 1, further comprising an operation determination unit 56 that determines whether a predetermined part of at least one of the robot, the work tool attached to the robot, and the workpiece enters a specific area while the robot is being driven, and the operation control unit stops the robot when the predetermined part enters the specific area.

[0139] (Supplementary Note 3) The control device for a robot according to Supplementary Note 1 or 2, wherein the physical characteristics include heights of body parts of the worker.

[0140] (Supplementary Note 4) The robot control device according to any one of Supplementary Notes 1 to 3, wherein the physical characteristic is a height BH of the worker.

[0141] (Supplementary Note 5) The robot control device according to any one of Supplementary Notes 1 to 4, wherein the region setting unit sets a specific region extending in a horizontal direction.

[0142] (Supplementary Note 6) A robot control device according to any one of Supplementary Notes 1 to 5, comprising an operation determination unit 56 that determines whether a predetermined part of at least one of the robot and a work tool attached to the robot enters a specific area while the robot is being driven, the operation determination unit determines whether the speed of the robot exceeds a speed limit set according to physical characteristics when the predetermined part has entered the specific area, and the operation control unit stops the robot when the speed exceeds the speed limit.

[0143] (Supplementary Note 7) A control device for a robot described in any one of Supplementary Notes 1 to 6, comprising: a prediction unit 62 that predicts whether a predetermined part of the robot will enter a specific area; and a program correction unit 63 that corrects the operation program so that the predetermined part of the robot does not enter the specific area when the robot is driven based on the robot's operation program.

[0144] (Appendix 8) A control device for a robot described in any one of Appendices 1 to 6, comprising: a prediction unit 62 that predicts whether a predetermined part of the robot will enter a specific area; and a display unit 28 that displays that the predetermined part of the robot will enter the specific area when the prediction unit determines that the predetermined part of the robot will enter the specific area.

[0145] (Supplementary Note 9) A control device for a robot according to any one of Supplementary Notes 1 to 6, comprising a prediction unit 62 that predicts whether a predetermined part of the robot will enter the specific area, and stops the robot when the prediction unit 62 determines that the predetermined part of the robot will enter the specific area.

[0146] (Appendix 10) A control device for a robot described in any one of Appendices 1 to 9, comprising: a display unit 28 that displays the physical characteristics of a worker; and an input unit 27 that operates the information displayed on the display unit, wherein the memory unit stores the physical characteristics input by the worker operating the input unit.

[0147] (Supplementary Note 11) A control device for a robot according to any one of Supplementary Notes 1 to 9, comprising: a sensor for acquiring physical characteristics of a worker; and a characteristic acquisition unit 58 for acquiring the physical characteristics, wherein the characteristic acquisition unit acquires the physical characteristics based on an output of the sensor.

[0148] (Supplementary Note 12) A robot control device according to any one of Supplementary Notes 1 to 11, further comprising: a characteristic acquisition unit 58 that acquires physical characteristics of a worker, wherein the characteristic acquisition unit acquires the physical characteristics based on at least one of the position and posture of the robot when the robot is driven.

[0149] (Supplementary Note 13) A control device for a robot described in any one of Supplementary Notes 1 to 12, wherein the area setting unit sets a working area WR in which the worker will work in accordance with the worker's operation, and sets an area where the working area overlaps with body areas BR1 to BR5 according to physical characteristics as a specific area.

[0150] REFERENCE SIGNS LIST 1 Robot 2 Control device 3 Robot device 5 Work tool 6 Camera 23 Position detector 26 Teaching operation panel 27 Input unit 28 Display unit 42 Memory unit 43 Movement control unit 51 Processing unit 52 Area setting unit 55 State detection unit 56 Movement determination unit 57 Command generation unit 58 Feature acquisition unit 59 Manual control unit 60 Program operation unit 62 Prediction unit 63 Program correction unit 69 Movement program 89 Worker BR1 to BR5 Body area WR Work area SR, SR1 to SR5 Specific area BH Height

Claims

1. a motion control unit that controls the motion of the robot; a memory unit that stores the physical characteristics of the worker; A robot control device comprising: an area setting unit that sets a specific area that restricts the robot's movement in accordance with the physical characteristics.

2. an operation determination unit that determines whether or not a predetermined portion of at least one of the robot, the work tool attached to the robot, and the workpiece enters the specific area while the robot is being driven; The robot control device according to claim 1 , wherein the operation control unit stops the robot when the predetermined portion enters the specific area.

3. The robot control device according to claim 1 or 2, wherein the physical characteristics include a height of a body part of the worker.

4. The robot control device according to claim 1 or 2, wherein the physical characteristic is the height of the worker.

5. The robot control device according to claim 1 , wherein the region setting unit sets the specific region extending in a horizontal direction.

6. an operation determination unit that determines whether a predetermined portion of at least one of the robot and a work tool attached to the robot enters the specific area while the robot is being driven; the movement determination unit determines whether or not the speed of the robot exceeds a speed limit determined in accordance with the physical characteristics when the predetermined part enters the specific area; The robot control device according to claim 1 or 2, wherein the operation control unit stops the robot when the speed exceeds the speed limit.

7. a prediction unit that predicts whether a predetermined part of the robot will enter the specific area; 3. The robot control device according to claim 1, further comprising: a program correction unit that corrects the operation program so that, when the robot is driven based on the operation program, a predetermined part of the robot does not enter the specific area.

8. a prediction unit that predicts whether a predetermined part of the robot will enter the specific area; 3. The robot control device according to claim 1, further comprising: a display unit that displays, when the prediction unit determines that a predetermined part of the robot will enter the specific area, that a predetermined part of the robot will enter the specific area.

9. a prediction unit that predicts whether a predetermined part of the robot will enter the specific area; The robot control device according to claim 1 or 2, wherein the robot is stopped when the prediction unit determines that a predetermined part of the robot will enter the specific area.

10. a display unit that displays the physical characteristics of the worker; an input unit for operating information displayed on the display unit, The robot control device according to claim 1 , wherein the storage unit stores the physical characteristics input by the operator operating the input unit.

11. a sensor for acquiring the physical characteristics of the worker; a feature acquisition unit that acquires the physical features, The robot control device according to claim 1 , wherein the characteristic acquisition unit acquires the physical characteristics based on an output of the sensor.

12. a characteristic acquisition unit that acquires the physical characteristics of the worker, The robot control device according to claim 1 , wherein the characteristic acquisition unit acquires the physical characteristics based on at least one of the position and the posture of the robot when the robot is driven.

13. 3. The robot control device according to claim 1, wherein the area setting unit sets a work area in which the worker performs work in accordance with the worker's operation, and sets an area where the body area according to the physical characteristics and the work area overlap as the specific area.