Robot system, robot control device, and teaching device
The robot system addresses the challenge of balancing load and safety during emergency stops by setting stop parameters for controlled deceleration and braking, achieving reduced load and improved safety.
Patent Information
- Application Number
- JP2024087766
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-05-30
- Publication Date
- 2025-12-11
AI Technical Summary
Conventional robot systems face challenges in balancing the load on robot arm parts with safety during emergency stops, as decelerating at a large rate increases load but decelerating at a small rate increases the stopping distance, compromising safety.
A robot system with an acquisition unit, determination unit, and drive control unit that sets stop parameters based on conditions for emergency stops, allowing for controlled deceleration rates and braking distances to manage load and safety.
The system enables emergency stops that reduce load on robot arm parts while ensuring safety by adjusting deceleration rates and braking distances according to user-defined priorities, enhancing operational accuracy and safety.
Smart Images

Figure 2025180431000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to a robot system, a robot control device, and a teaching device. [Background technology]
[0002] As described in Patent Document 1, a robot system includes a robot having a robot arm and a robot control device that transmits operation command signals to the robot arm. In this robot system, the robot control device transmits operation command signals to the robot via a broadband network. This allows the robot to be remotely controlled. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Special Publication No. 2008-532107 Summary of the Invention [Problem to be solved by the invention]
[0004] In such robot systems, the robot may need to be stopped in an emergency. In the robot system of Patent Document 1, if the robot arm is decelerated at a relatively large deceleration rate during an emergency stop, the robot can be stopped quickly, but the load on each part of the robot arm increases. On the other hand, if the robot arm is decelerated at a relatively small deceleration rate, the distance required to stop the robot, i.e., the braking distance, increases, reducing safety. As such, in conventional robot systems, it is difficult to reduce the load on each part of the robot arm while improving safety when stopping the robot arm. [Means for solving the problem]
[0005] The robot system of the present invention includes: an acquisition unit that acquires stop parameter information related to stop parameters corresponding to conditions related to the stopping of a predetermined portion of a robot arm when the robot arm makes an emergency stop; a determination unit that determines whether or not to make an emergency stop of the robot arm during operation of the robot arm; and a drive control unit that, when the determination unit determines that the robot arm should be brought to an emergency stop, executes a stopping operation based on the stop parameter information.
[0006] The robot control device of the present invention includes: a receiving unit that receives stop parameter information related to stop parameters corresponding to conditions related to the stop of a predetermined portion on a robot arm when the robot arm is brought to an emergency stop; a determination unit that determines whether or not to make an emergency stop of the robot arm during operation of the robot arm; and a drive control unit that, when the determination unit determines that the robot arm should be brought to an emergency stop, executes a stopping operation based on the stop parameter information.
[0007] The teaching device of the present invention includes: an acquisition unit that acquires stop parameter information related to stop parameters corresponding to conditions related to the stopping of a predetermined portion on a robot arm when the robot arm makes an emergency stop; and a transmitting unit that controls the operation of the robot arm, determines whether or not to bring the robot arm to an emergency stop while the robot arm is in operation, and, if it is determined that the robot arm should be brought to an emergency stop, transmits the stop parameter information acquired by the acquiring unit to a robot control device that executes a stop operation based on the stop parameter information. [Brief explanation of the drawings]
[0008] [Figure 1] 1 is a schematic configuration diagram of a robot system according to a first embodiment of the present invention. [Figure 2] FIG. 2 is a block diagram of the robot system shown in FIG. [Figure 3]2 is a diagram illustrating an example of a hardware configuration of the robot system shown in FIG. 1. [Figure 4] FIG. 2 is a schematic diagram for explaining the trajectory of a control point of a robot arm. [Figure 5] FIG. 10 is a diagram for explaining an emergency stop operation of a robot arm, and is a schematic diagram for explaining the trajectory of a control point. [Figure 6] 2 is a flowchart illustrating an example of a control operation performed by the robot system shown in FIG. 1. [Figure 7] 10A and 10B are schematic diagrams for explaining the trajectory of a control point of a robot arm included in a robot system according to a second embodiment of the present invention. DETAILED DESCRIPTION OF THE INVENTION
[0009] DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS A robot system, a robot control device, and a teaching device according to the present invention will be described in detail below based on embodiments shown in the accompanying drawings.
[0010] First Embodiment FIG. 1 is a schematic configuration diagram of a robot system according to a first embodiment of the present invention. FIG. 2 is a block diagram of the robot system shown in FIG. 1. FIG. 3 is an example of a hardware configuration of the robot system shown in FIG. 1. FIG. 4 is a schematic diagram for explaining the trajectory of a control point of a robot arm. FIG. 5 is a diagram for explaining an emergency stop operation of the robot arm, and is a schematic diagram for explaining the trajectory of a control point. FIG. 6 is a flowchart for explaining an example of a control operation performed by the robot system shown in FIG. 1.
[0011] 1 corresponds to the vertical direction, and the upper side in Fig. 1 is also referred to as "upper" and the lower side as "lower." Regarding the robot arm 72, the first arm 73, and the second arm 74, the right side in Fig. 1 is referred to as the "base end" and the left side is referred to as the "tip end."
[0012] In this specification, "vertical" means not only when the object is vertical but also when it is slightly tilted from the vertical, for example, within ±10°. In this specification, "parallel" means not only when two objects are parallel but also when they are slightly tilted from the parallel, for example, within ±10°.
[0013] As shown in FIGS. 1 and 2, the robot system 1 includes a robot 7, a robot control device 3 that controls the driving of each part of the robot 7, a teaching device 40, and a command device 50.
[0014] The robot 7 in this embodiment is a SCARA robot, and is used for tasks such as holding, transporting, assembling, processing, and inspecting workpieces such as electronic components. However, the uses and types of tasks of the robot 7 are not limited to those described above. Furthermore, the robot 7 may be a robot other than a SCARA robot, such as a six-axis articulated robot or a dual-arm robot.
[0015] 1, the robot 7 has a base 71 and a robot arm 72 rotatably connected to the base 71. The robot arm 72 has a first arm 73 whose base end is connected to the base 71 and rotates around a first rotation axis J1 that is vertical to the base 71, and a second arm 74 whose base end is connected to a tip end of the first arm 73 and rotates around a second rotation axis J2 that is vertical to the first arm 73.
[0016] Furthermore, as shown in FIG. 1, the robot control device 3 is built into the base 71, but this configuration is not limited thereto, and the robot control device 3 may be configured as a separate device from the robot 7.
[0017] A work head 75 is provided at the tip of the second arm 74. The work head 75 has a spline nut 751 and a ball screw nut 752 that are coaxially arranged at the tip of the second arm 74, and a spline shaft 753 that is inserted through the spline nut 751 and the ball screw nut 752. The spline shaft 753 is rotatable relative to the second arm 74 about a third rotation axis J3 that is its central axis and extends along the vertical direction, and is also movable up and down in the direction along the third rotation axis J3.
[0018] A control point TCP is set at the lower end of the spline shaft 753. The control point TCP is a reference point for controlling the operation of the robot arm 72. The robot control device 3 grasps the position of the control point TCP in an arbitrary coordinate system, and controls the driving of the first joint unit 4K, the second joint unit 6K, the first drive mechanism 791, and the second drive mechanism 792 so that the control point TCP is located at a desired position.
[0019] An end effector 76 is attached to the lower end of the spline shaft 753. The end effector 76 is detachable from the spline shaft 753, and an end effector suitable for the intended work is selected as appropriate.
[0020] The robot 7 has a first joint 4K that rotatably connects the base 71 and the first arm 73, and this first joint 4K is equipped with a motor unit 4 that rotates the first arm 73 around a first rotation axis J1 relative to the base 71.
[0021] The robot 7 also has a second joint 6K that rotatably connects the first arm 73 and the second arm 74, and this second joint 6K is equipped with a motor unit 6 that rotates the second arm 74 around a second rotation axis J2 relative to the first arm 73.
[0022] The robot 7 also includes a first drive mechanism 791 that rotates the spline nut 751 to rotate the spline shaft 753 about the third rotation axis J3, and a second drive mechanism 792 that rotates the ball screw nut 752 to raise and lower the spline shaft 753 in a direction along the third rotation axis J3, i.e., in the vertical direction. The second drive mechanism 792 is installed below the first drive mechanism 791. The first drive mechanism 791 includes a motor 793, and the second drive mechanism 792 includes a motor 794. As shown in FIG. 2 , the motors 793 and 794 are electrically connected to the robot control device 3. The current supply conditions, such as the current supply pattern, current supply timing, and current supply amount, of the motors 793 and 794 are controlled by the robot control device 3.
[0023] The motor unit 4 includes a motor 41 and a power transmission mechanism (not shown) that includes, for example, a reducer. The motor unit 6 includes a motor 61 and a power transmission mechanism (not shown) that includes, for example, a reducer.
[0024] The motor 41 generates a driving force that rotates the first arm 73 relative to the base 71. The motor 61 generates a driving force that rotates the second arm 74 relative to the first arm 73. There are no particular limitations on the motors 41 and 61, but it is preferable that they are servo motors such as AC servo motors or DC servo motors.
[0025] As shown in FIG. 2, the motors 41 and 61 are electrically connected to the robot control device 3. Although not shown, the motors 41 and 61 each include a stator, a rotor that rotates inside the stator, and a case that houses these components. The stator is arranged along the inner circumference of the case and has windings such as three-phase windings. The stator generates a magnetic field when electricity is passed through the windings, for example, when three-phase AC electricity is passed through the windings. In the motors 41 and 61, the robot control device 3 controls the current flow pattern, timing, amount of electricity, etc., of the windings provided in the stators.
[0026] Furthermore, the motors 793, 794, 41 and 61 each have a built-in motor driver (not shown).
[0027] The motors 793 and 794 may be the same as the motors 41 and 61, or may be motors of different types or configurations.
[0028] The power transmission mechanism provided in the motor units 4 and 6 transmits the driving force of the motor, which is the power source, to the adjacent arm, and includes, for example, at least one of a reducer, a pulley, an endless belt, etc. The reducer is not particularly limited, but an eccentric oscillation type, a planetary gear type, a wave gear type, etc. can be used.
[0029] In such a robot system 1, the robot arm 72 may be brought to an emergency stop while it is moving. Causes of an emergency stop include, for example, when another object approaches or collides with the robot arm 72, or when an abnormality occurs in the reception of command values during real-time control as described below. This will be described in detail later.
[0030] When the robot arm 72 is brought to an emergency stop, slowing the robot arm 72 at a relatively large deceleration rate allows it to stop quickly, but this increases the load on each part of the robot arm 72, particularly the first joint 4K, the second joint 6K, and their surrounding areas. On the other hand, slowing the robot arm 72 at a relatively small deceleration rate increases the distance it takes to stop, i.e., the braking distance, thereby reducing safety. Thus, when stopping the robot arm 72, it is difficult to reduce the load on each part of the robot arm 72 while also increasing safety. However, in the present invention, by appropriately setting stop parameters, which are the conditions for an emergency stop according to the situation, it is possible to achieve both of these goals, particularly by weighting them according to their priority. This will be explained below.
[0031] First, we will explain the teaching device 40 and the command device 50. The teaching device 40 and the command device 50 are separate devices. However, this configuration is not limiting, and the teaching device 40 and the command device 50 may be configured as a single device having the functions described below.
[0032] As shown in FIG. 2, the teaching device 40 has an acquiring unit 410 and a transmitting unit 420 as functional units.
[0033] The acquisition unit 410 is a part that acquires stop parameter information relating to stop parameters input by the user, for example.
[0034] The stopping parameters are parameters that correspond to the conditions for stopping a specific part on the robot arm 72, i.e., the control point TCP, when the robot arm 72 makes an emergency stop, and mainly include the deceleration rate K of the speed of the control point TCP and the allowable braking distance Lmax, which will be described later.
[0035] The stop parameter information includes information on the deceleration rate K of the speed of the control point TCP (a predetermined portion on the robot arm 72) when the robot arm 72 makes an emergency stop, and information on the allowable braking distance Lmax until the robot arm 72 stops. In other words, the stop parameter information is information on the allowable deceleration rate and braking distance when the robot arm 72 makes an emergency stop. For example, when the user inputs the values of the deceleration rate K and the allowable braking distance Lmax using an input device (not shown), the acquisition unit 410 acquires this information.
[0036] The allowable braking distance Lmax is the value of the allowable braking distance. The braking distance is the distance that the control point TCP (a predetermined part on the robot arm 72) moves from when the robot arm 72 starts to decelerate until it stops.
[0037] By setting such deceleration rate K and allowable braking distance Lmax, the user can specify the behavior of the robot arm 72 when making an emergency stop.
[0038] The stop parameter information acquired by the acquisition unit 410 is transmitted to the robot control device 3 by the transmission unit 420.
[0039] As shown in FIG. 2, the command device 50 has, as functional units, an operation program acquisition unit 510, a point data generation unit 520, a real-time command generation unit 530, and a transmission unit 540.
[0040] The operation program acquisition unit 510 acquires information about the operation program executed by the robot arm 72. The operation program includes position information of the control points TCP over time, i.e., point data, and information about the speed of the control points TCP between each piece of point data.
[0041] The point data generating unit 520 converts the point data included in the operation program acquired by the operation program acquiring unit 510 into point data in a coordinate system set for the robot 7.
[0042] The real-time command generating unit 530 generates a plurality of drive signals (hereinafter referred to as "motion cycle command values") for the robot arm 72 from each piece of point data generated by the point data generating unit 520.
[0043] Specifically, as shown in FIG. 4, in the robot system 1, the robot arm 72 is driven from a state in which the control point TCP is located at a target position P1 (in this case, the starting point) to a next target position P2. Next, from a state in which the control point TCP is located at the target position P2, the robot arm 72 is driven so that the control point TCP is located at a next target position P3. By repeating this operation, the robot system 1 drives the robot arm 72 so that the control point TCP passes through the target positions P1, P2, P3, P4, and P5 in sequence. In this case, the position information of the target positions P1, P2, P3, P4, and P5 is each point data. Furthermore, the command value for moving the control point TCP from the target position P1 to the target position P2, the command value for moving the control point TCP from the target position P2 to the target position P3, the command value for moving the control point TCP from the target position P3 to the target position P4, and the command value for moving the control point TCP from the target position P4 to the target position P5 are each a command value of a motion cycle.
[0044] That is, the command value of the first motion cycle causes the robot arm 72 to move from target position P1 to target position P2, and the command value of the next motion cycle causes the robot arm 72 to move from target position P2 to target position P3. By repeating this operation, the control point TCP can be moved from target position P1 to target position P5. The command values of these motion cycles are sequentially transmitted from the command device 50 and stored in the memory area 32 of the robot control device 3 each time. For example, when the control point TCP is located at target position P1, the command value of the motion cycle for the next target position P2 is transmitted from the command device 50 and stored in the memory area 32. In this way, the robot control device 3 drives the robot arm 72 while receiving command values of multiple motion cycles from the command device 50 in real time. In such real-time control, the robot control device 3 does not know the final target position, but the control performed by the robot control device 3 can be simplified and the robot arm 72 can be controlled flexibly.
[0045] The transmitting unit 540 transmits the command values of the multiple motion periods generated by the real-time command generating unit 530 to the robot control device 3.
[0046] As shown in Figure 2, the robot control device 3 has, as functional units, a receiving unit 31, a memory area 32, a real-time command receiving unit 33, a trajectory plan generating unit 34, a motion unit 35, a drive control unit 36, and a judgment unit 37.
[0047] The receiving unit 31 receives stop parameter information relating to stop parameters from the teaching device 40. The received stop parameter information is stored in the storage area 32.
[0048] The real-time command receiving unit 33 receives command values for a plurality of motion periods from the command device 50. The received command values for a plurality of motion periods are stored in the storage area 32.
[0049] The trajectory plan generating unit 34 reads out the stop parameter information stored in the storage area 32 and generates a trajectory plan for when the robot arm 72 makes an emergency stop.
[0050] The motion unit 35 reads out the command value of the motion cycle from the storage area 32 and transmits the latest command value to the drive control unit 36 .
[0051] The drive control unit 36 drives each part of the robot arm 72 based on the command value of the motion cycle received from the motion unit 35. The command value of the motion cycle includes a position command for a target position, and converts the position command into information on the angle of each joint of the robot arm 72 to drive each part of the robot arm 72.
[0052] In this way, the robot control device 3 drives the robot arm 72 while receiving command values for a plurality of motion cycles in real time from the command device 50. This simplifies the control performed by the robot control device 3 and enables flexible control of the robot arm 72.
[0053] The determination unit 37 determines whether or not to make an emergency stop of the robot arm 72 while the robot arm 72 is in operation. If the determination unit 37 determines that the robot arm 72 should be made an emergency stop, the drive control unit 36 executes a stop operation based on the stop parameter information.
[0054] The determination unit 37 determines to make an emergency stop of the robot arm 72 when an abnormality occurs in the reception of the command values stored in the storage area 32. That is, the determination unit 37 determines to make an emergency stop of the robot arm 72 when the drive control unit 36 does not acquire information on the next target position during real-time control. This allows an emergency stop to be made when the drive control unit 36 does not acquire information on the next target position, thereby improving safety.
[0055] The robot control device 3, teaching device 40, and command device 50 can be realized as an example of a hardware configuration as shown in Fig. 3. Each of the robot control device 3, teaching device 40, and command device 50 has at least one processor, memory, and I / O interface. The control unit, storage unit, and communication unit are connected to each other so that they can communicate with each other, for example, via a bus.
[0056] The processor is configured, for example, by a CPU (Central Processing Unit), and reads and executes various programs stored in memory.
[0057] The memory stores various programs executed by the processor, etc. Examples of memory include volatile memory such as RAM (Random Access Memory), non-volatile memory such as ROM (Read Only Memory), and removable external storage devices.
[0058] The I / O interface is compatible with communication means such as a wired LAN (Local Area Network), a wireless LAN, etc. This allows signals to be transmitted and received between the robot control device 3, the teaching device 40, and the command device 50, or between them and external devices. In this case, communication may be performed via a server (not shown), or via a network such as the Internet.
[0059] Next, the operation of emergency stopping the robot arm 72 will be described with reference to FIG. FIG. 5 shows the trajectory of the control point TCP. The control point TCP moves from the bottom to the top in FIG. 5. That is, the target position P n-1 and target position P n The order of n is an integer of 2 or more.
[0060] The control point TCP is the target position P n A case where the determination unit 37 determines to make an emergency stop when the vehicle is located at position 1 will be described.
[0061] In this case, an emergency stop is performed so that the braking distance of the control point TCP is equal to or less than the allowable braking distance Lmax included in the stop parameter information. Specifically, the braking distance La, which is the estimated braking distance, is calculated based on the deceleration rate K of the speed of the control point TCP included in the stop parameter information and the current speed of the control point TCP. In other words, the deceleration rate K is used to calculate the braking distance La when the robot arm 72 makes an emergency stop.
[0062] If this braking distance La is equal to or less than the allowable braking distance Lmax, an emergency stop is performed using the deceleration rate K. This allows for an emergency stop without exceeding the allowable braking distance Lmax. On the other hand, if the calculated braking distance La exceeds the allowable braking distance Lmax, i.e., if La > Lmax, the robot arm 72 is brought to an emergency stop using a deceleration rate Ka greater than the deceleration rate K. The deceleration rate Ka is a relatively large deceleration rate that is set in advance and is a value that can sufficiently reduce the braking distance, i.e., a value that can ensure high safety. This deceleration rate Ka is stored in the memory area 32 as a set value.
[0063] In addition, when La>Lmax, the configuration is not limited to bringing the robot arm 72 to an emergency stop using the deceleration rate Ka, but may also be a configuration in which the deceleration rate is recalculated so as to result in the allowable braking distance Lmax or any allowable braking distance shorter than that.
[0064] As described above, in the present invention, the braking distance of the control point TCP does not exceed the allowable braking distance Lmax set by the user, and the robot arm 72 can be stopped within the allowable braking distance Lmax. For example, in cases where prioritizing reducing the load on each part of the robot arm 72, particularly the first joint 4K, the second joint 6K, and their surrounding areas, over operational accuracy and safety, the user can set a relatively long allowable braking distance Lmax. This allows the robot arm 72 to be safely stopped in an emergency while sufficiently reducing the load on each part. On the other hand, in cases where higher operational accuracy and safety are required, the user can set a relatively short allowable braking distance Lmax. This allows the robot arm 72 to be stopped quickly in an emergency, and excellent operational accuracy and safety can be ensured without placing excessive load on each part of the robot arm 72. As described above, according to the present invention, the user can set stop parameters, which can prevent excessive load from being placed on each part of the robot arm 72 during an emergency stop, improve operational accuracy, and enhance safety. In particular, an appropriate emergency stop operation can be performed according to the respective priorities of reducing the load on each part of the robot arm 72, improving operational accuracy, and ensuring safety, depending on the set stop parameters.
[0065] In this embodiment, the stopping parameters are set by the user, but this is not limited to this. For example, the stopping parameters may be automatically set in the robot control device 3, the teaching device 40, the command device 50, or other external devices according to various conditions.
[0066] 5, the movement direction of the control point TCP in the emergency stop operation (hereinafter referred to as "stop operation") is an extension of the direction of movement. n (n is an integer of 2 or more) and the target position P n The target position P obtained one time before n-1The robot arm 72 is moved so that the control point TCP moves to an extension of the line segment connecting these. This prevents excessive direction changes during the stopping operation and prevents excessive load from being applied to each part of the robot arm 72. This is particularly effective in real-time control, since the robot control device 3 does not know the final target position.
[0067] As described above, the robot system 1 includes the acquisition unit 410 that acquires stop parameter information related to stop parameters corresponding to conditions for stopping a predetermined portion of the robot arm 72, i.e., the control point TCP, when the robot arm 72 is to be stopped in an emergency; the determination unit 37 that determines whether to make an emergency stop of the robot arm 72 while the robot arm 72 is in operation; and the drive control unit 36 that executes a stop operation based on the stop parameter information when the determination unit 37 determines that the robot arm 72 should be stopped in an emergency. This allows the robot arm 72 to be stopped in an emergency according to the user's intentions in accordance with the set stop parameters. In other words, it is possible to prevent excessive load from being placed on each part of the robot arm 72 during an emergency stop and to improve work accuracy and safety. In particular, it is possible to perform an appropriate stop operation according to the respective priorities, such as reducing the load on each part of the robot arm 72, improving work accuracy, and ensuring safety.
[0068] In this embodiment, the case where the robot control device 3 does not know the final target position of the robot arm 72, that is, so-called real-time control is performed, has been described. However, the present invention is not limited to this, and control may also be performed where the robot control device 3 knows the final target position of the robot arm 72.
[0069] Furthermore, although the predetermined portion of the robot arm 72 has been described as the control point TCP, the present invention is not limited to this, and the predetermined portion of the robot arm 72 may be a portion other than the control point TCP, such as a specific portion on the second arm 74, the work head 75, or the end effector 76.
[0070] The stop parameter information includes information on the deceleration rate K of the speed of the control point TCP, which is a predetermined part when the robot arm 72 makes an emergency stop, and information on the allowable braking distance Lmax until the robot arm 72 stops. This allows for a more appropriate stopping operation.
[0071] The stop parameter information may include only one of information on the deceleration rate K of the speed of the control point TCP and information on the allowable braking distance Lmax until the vehicle stops. The stop parameter information may also include information on other parameters, such as the speed of the control point TCP and the time until the vehicle stops.
[0072] When the determination unit 37 determines that the robot arm 72 should be brought to an emergency stop, the drive control unit 36 calculates the braking distance La when the robot arm is brought to an emergency stop using the deceleration rate K, and if the calculated La is La>Lmax, the drive control unit 36 brings the robot arm 72 to an emergency stop using a deceleration rate Ka that is greater than the deceleration rate K. This allows for a more appropriate stopping operation.
[0073] Note that the present invention is not limited to the above configuration. For example, when the determination unit 37 determines that the robot arm 72 should be brought to an emergency stop, the drive control unit 36 may be configured to make the emergency stop using the deceleration rate K without calculating the braking distance La required for the robot arm to make an emergency stop.
[0074] In addition, when the judgment unit 37 judges that the robot arm 72 should be brought to an emergency stop, the drive control unit 36 may be configured to calculate a deceleration rate Kx such that the braking distance La is equal to or less than the allowable braking distance Lmax, and to make the emergency stop using the deceleration rate Kx.
[0075] The drive control unit 36 acquires information on the target position to which a predetermined portion, i.e., the control point TCP, will next move, and repeats the operation of moving the robot arm 72 multiple times based on the acquired information on the target position, and the determination unit 37 determines that an emergency stop should be made to the robot arm 72 if the drive control unit 36 does not acquire information on the target position. This allows an emergency stop to be made when the drive control unit 36 does not acquire information on the next target position, thereby improving safety.
[0076] The criteria by which the judgment unit 37 judges to make an emergency stop of the robot arm 72 are not limited to those described above, and may be other conditions, such as whether the movement speed of the robot arm 72 is equal to or less than a predetermined value.
[0077] Furthermore, as described above, when the determination unit 37 determines that the robot arm 72 should be stopped urgently, the drive control unit 36 determines the target position P n (n is an integer of 2 or more) and the target position P n The target position P obtained one time before n-1 The robot arm 72 is moved on an extension of the line segment connecting these. This prevents excessive direction changes during the stopping operation and prevents excessive loads from being applied to each part of the robot arm 72. This is particularly effective in real-time control, since the robot control device 3 does not know the final target position.
[0078] The drive control unit 36 is not limited to the above configuration, and may set the target position P n The target position P obtained one time before n-1 The direction may be deviated from the extension of the line segment connecting the points.
[0079] The robot control device 3 also includes a receiver 31 that receives stop parameter information related to stop parameters corresponding to conditions for stopping a predetermined portion of the robot arm 72, i.e., a control point TCP, when the robot arm 72 is to be stopped in an emergency; a determination unit 37 that determines whether to make an emergency stop of the robot arm 72 while the robot arm 72 is in operation; and a drive control unit 36 that executes a stop operation based on the stop parameter information when the determination unit 37 determines that the robot arm 72 should be stopped in an emergency. This allows the robot arm 72 to be stopped in accordance with the user's intentions in accordance with the set stop parameters. In other words, it is possible to prevent excessive load from being placed on each part of the robot arm 72 in the event of an emergency stop, and to improve work accuracy and safety. In particular, it is possible to perform an appropriate emergency stop operation according to the respective priorities, such as reducing the load on each part of the robot arm 72, improving work accuracy, and ensuring safety.
[0080] The teaching device 40 also includes an acquisition unit 410 that acquires stop parameter information related to stop parameters corresponding to conditions for stopping a predetermined portion of the robot arm 72, i.e., a control point TCP, on the robot arm 72 when the robot arm 72 is stopped in an emergency. The acquisition unit 420 also includes a transmission unit 420 that transmits the stop parameter information acquired by the acquisition unit 410 to the robot control device 3, which controls the operation of the robot arm 72, determines whether to make an emergency stop of the robot arm 72 while the robot arm 72 is in operation, and, if it determines to make an emergency stop of the robot arm 72, executes a stopping operation based on the stop parameter information. This allows the robot arm 72 to be stopped in accordance with the user's intentions in accordance with the set stop parameters. In other words, this prevents excessive load from being placed on each part of the robot arm 72 during an emergency stop, and improves work accuracy and safety. In particular, it allows an appropriate stopping operation to be performed in accordance with the respective priorities of reducing the load on each part of the robot arm 72, improving work accuracy, and ensuring safety.
[0081] Next, the control operation performed by the robot system 1 will be described with reference to the flowchart shown in FIG.
[0082] First, in step S1, it is determined whether real-time control is enabled or not. The determination in this step is made based on an operation performed by the user on a switching operation screen (not shown) for switching real-time control ON / OFF.
[0083] If it is determined in step S1 that the parameter is valid (S1: YES), the stop parameters are read in step S2. That is, the acquisition unit 410 of the teaching device 40 acquires the stop parameter information input by the user, and the transmission unit 420 transmits it to the robot control device 3.
[0084] Next, in step S3, a status check is performed. That is, the drive control unit 36 of the robot control device 3 checks and executes the command from the command device 50, and the determination unit 37 determines whether or not to perform an emergency stop.
[0085] Next, in step S3, if it is determined that control should be started, the command values of the motion cycle received by the receiving unit 31 and stored in the storage area 32 are sequentially executed (step S4). Note that, in step S3, if it is determined that deceleration should be started, the process proceeds to step S6.
[0086] In step S4, if there is a command value for the next motion cycle (step S4: data present), in step S11, the command value for the motion cycle is updated and executed. Thereafter, in step S12, it is determined whether the work is complete. This determination is made based on whether a completion signal has been received from the command device 50.
[0087] In step S4, if there is no command value for the next motion cycle (step S4: no data), in step S5, the status is changed to deceleration start, that is, emergency stop, in other words, a stopping operation is started.
[0088] Next, in step S6, a deceleration trajectory is calculated. That is, in the emergency stop operation, the drive control unit 36 calculates the deceleration trajectory based on the target position P n (n is an integer of 2 or more) and the target position P n The target position P obtained one time before n-1 The trajectory is determined so that the robot arm 72 moves along the extension of the line segment connecting the points 1 and 2.
[0089] Next, in step S7, a travel distance calculation is performed, i.e., a braking distance La, which is an estimated braking distance, is calculated based on the deceleration rate K of the speed of the control point TCP included in the stop parameter information and the current speed of the control point TCP (see FIG. 5).
[0090] Next, in step S8, it is determined whether or not the braking distance La is within the range of the stopping parameters, that is, whether or not the braking distance La is equal to or less than the allowable braking distance Lmax, in other words, whether or not Lmax≧La.
[0091] In step S8, if it is determined that the braking distance La is equal to or less than the allowable braking distance Lmax (step S8: YES), the process proceeds to step S11. On the other hand, in step S8, if it is determined that the braking distance La exceeds the allowable braking distance Lmax, that is, if it is determined that the braking distance La is not within the range of the stop parameters (step S8: NO), the process proceeds to step S9.
[0092] In step S9, the current value is held. That is, the current value is updated as the command value for the motion cycle, and an immediate stop is performed using a deceleration rate Ka that is greater than the deceleration rate K. Then, when the stopping operation is completed, in step S10, the status is changed to control end and the program is terminated.
[0093] On the other hand, in step S11, the command value of the motion cycle is updated. That is, when the process moves from step S8 to step S11, the braking distance La and deceleration rate K calculated in step S7 are used to perform an emergency stop.
[0094] Next, in step S12, it is determined whether the work is complete, i.e., whether the program is to be completed. If it is determined in step S12 that the program is to be completed (step S12: YES), the process ends. If it is determined that the program is not to be completed (step S12: NO), the process returns to step S3, and the subsequent steps are repeated in order.
[0095] By performing such control, the robot arm 72 can be stopped based on the stopping parameters set by the user, which prevents excessive load from being applied to each part of the robot arm 72 in the event of an emergency stop, and improves work accuracy and safety.
[0096] Second Embodiment FIG. 7 is an enlarged partial cross-sectional view of an arm base of a second arm in a robot system according to a second embodiment of the present invention.
[0097] Hereinafter, a second embodiment of the robot and robot system of the present invention will be described with reference to FIG. 7. The following description will focus on the differences from the first embodiment, and a description of similar points will be omitted.
[0098] As shown in FIG. 7, a first area A1 and a second area A2 different from the first area A1 are set as operating areas of the robot arm 72. The first area A1 and the second area A2 are adjacent to each other. The control point TCP of the robot arm 72 is movable within the first area A1 and the second area A2, and is also movable between the first area A1 and the second area A2. In other words, the movable area of the robot arm 72 includes the first area A1 and the second area A2. The first area A1 and the second area A2 are adjacent to each other in the horizontal direction and are arranged in this order from top to bottom in FIG. 7.
[0099] A first stop parameter and a second stop parameter are set for each of the first area A1 and the second area A2. The first stop parameter information includes the first stop parameter, and the second stop parameter information includes the second stop parameter. The first stop parameter and the second stop parameter are set separately.
[0100] The user inputs first stop parameter information related to the first stop parameter corresponding to the first area A1 and second stop parameter information related to the second stop parameter corresponding to the second area A2, and the acquisition unit 410 of the teaching device 40 acquires the first stop parameter information and second stop parameter information. Then, the transmission unit 420 transmits the first stop parameter information and second stop parameter information to the robot control device 3. The reception unit 31 of the robot control device 3 receives the first stop parameter information and second stop parameter information.
[0101] The first stop parameter information includes information on the deceleration rate K and the allowable braking distance Lmax as first stop parameters, and the second stop parameter information includes information on the deceleration rate K and the allowable braking distance Lmax as second stop parameters.
[0102] The first stop parameter information and the second stop parameter information have different values for the deceleration rate K and the allowable braking distance Lmax.
[0103] Note that either the deceleration rate K or the allowable braking distance Lmax may be the same value between the first stop parameter information and the second stop parameter information.
[0104] The robot control device 3 performs a stopping operation based on the first stop parameter information and the second stop parameter information. Specifically, if the judgment unit 37 determines that an emergency stop should be performed when the control point TCP is located within the first area A1, the robot control device 3 performs a stopping operation in the same manner as in the first embodiment using the first stop parameter information. On the other hand, if the judgment unit 37 determines that an emergency stop should be performed when the control point TCP is located within the second area A2, the robot control device 3 performs a stopping operation in the same manner as in the first embodiment using the second stop parameter information.
[0105] For example, a case will be described in which an obstacle other than the robot arm 72 is present in the first area A1, and an obstacle other than the robot arm 72 is not present in the second area A2. In this case, by setting the value of the deceleration rate K in the first stop parameter information to be relatively large and the allowable braking distance Lmax to be relatively short, safety in the first area A1 can be further improved. On the other hand, by setting the value of the deceleration rate K in the second stop parameter information to be relatively small and the allowable braking distance Lmax to be relatively long, it is possible to more effectively prevent excessive load from being applied to each part of the robot arm 72 during the stopping operation.
[0106] In addition to the above, even when performing work in which the robot arm 72 is gripping a workpiece in the second area A2 and is not gripping a workpiece in the first area A1, by setting the first stop parameter information and the second stop parameter information in the same manner as above, safety can be further improved in the first area A1 because the robot arm 72 can stop with a short braking distance, and in the second area, it is possible to prevent or suppress the workpiece from being unintentionally released from its grip due to deceleration associated with the stopping operation.
[0107] As described above, according to this embodiment, it is possible to consider what kind of emergency stop operation is appropriate depending on the area where the control point TCP is located. That is, for each of the first area A1 and the second area A2, an appropriate stop operation can be performed according to the respective priorities, such as reducing the burden on each part of the robot arm 72, improving work accuracy, and ensuring safety. The user can set the first stop parameter information and the second stop parameter information for each of the first area A1 and the second area A2, taking the above priorities into consideration. Therefore, a more appropriate stop operation can be performed depending on the operating position of the robot arm 72.
[0108] As described above, the robot system 1 has a first area A1 and a second area A2 different from the first area A1 as movable areas of the robot arm 72, and the acquisition unit 410 acquires, from the stop parameter information, first stop parameter information related to the first area A1 and second stop parameter information related to the second area A2. This allows the user to set the first stop parameter information and the second stop parameter information while taking into account what kind of emergency stop operation is appropriate depending on the area where the control point TCP is located. Therefore, appropriate stop operations can be performed for each of the first area A1 and the second area A2, resulting in more appropriate stop operations overall.
[0109] Furthermore, when the determination unit 37 determines that the robot arm 72 should be brought to an emergency stop when the control point TCP, which is a predetermined part of the robot arm 72, is located in the first area A1, the drive control unit 36 executes the stopping operation based on the first stop parameter information, and when the determination unit 37 determines that the robot arm 72 should be brought to an emergency stop when the control point TCP of the robot arm 72 is located in the second area A2, the drive control unit 36 executes the stopping operation based on the second stop parameter information. This makes it possible to execute appropriate stopping operations for each of the first area A1 and the second area A2, and as a result, it is possible to execute more appropriate stopping operations overall.
[0110] The first area A1 and the second area A2 may be set to be offset from each other in the vertical direction in FIG. 1 (the direction perpendicular to the paper surface in FIG. 7).
[0111] In addition, in the above embodiment, the movable area of the robot arm 72 is described as including two areas, the first area A1 and the second area A2, but the present invention is not limited to this and may include three or more areas, and stopping parameters may be set for each of the areas.
[0112] In the above embodiment, the drive control unit 36 included in the robot control device 3 converts the position command received from the command device 50 into angle information for each joint of the robot arm 72 based on the motion cycle command value, and drives each part of the robot arm 72. However, the present invention is not limited to this configuration. For example, the command device 50 may calculate an angle command indicating angle information for each joint of the robot arm 72 and transmit the angle command to the robot control device 3 as a motion cycle command value. In this case, the robot control device 3 does not need to convert the angle command into angle information for each joint of the robot arm 72, and may not store the angle command, which is the motion cycle command value, in the storage area 32. If the storage area 32 does not store the motion cycle command value, the receiving unit 31 may sequentially execute the received motion cycle command values after determining that control has started in step S3 of the flowchart shown in FIG. 6.
[0113] While the robot system, robot control device, and teaching device of the present invention have been described above based on the illustrated embodiments, the present invention is not limited to these, and the configurations of the components in the robot system, robot control device, and teaching device can be replaced with any configuration having the same function. Furthermore, any other components or functional units may be added to the robot system, robot control device, and teaching device. [Explanation of symbols]
[0114] 1...robot system, 3...robot control device, 4...motor unit, 4K...first joint unit, 6...motor unit, 6K...second joint unit, 7...robot, 31...receiving unit, 32...storage area, 33...real-time command receiving unit, 34...trajectory plan generating unit, 35...motion unit, 36...drive control unit, 37...judgment unit, 40...teaching device, 41...motor, 50...command device, 61...motor, 71...base, 72...robot arm, 73...first arm, 74...second arm, 75...work head, 76...end effector, 410...acquisition unit, 420...transmission unit, 510...operation program acquisition unit, 520...point data generation unit, 530...real-time command generation unit, 540...transmission unit, 751...spline nut, 752...ball screw nut, 753...spline shaft, 791...first drive mechanism, 792...second drive mechanism, 793...motor, 794...motor, A1...first area, A2...second area, J1...first rotation axis, J2...second rotation axis, J3...third rotation axis, La...braking distance, Lmax...allowable braking distance, P1...target position, P2...target position, P3...target position, P4...target position, P5...target position, P n ...Target position, P n-1 …Target position, TCP…Control point
Claims
1. an acquisition unit that acquires stop parameter information related to stop parameters corresponding to conditions related to the stop of a predetermined portion on the robot arm when the robot arm makes an emergency stop; a determination unit that determines whether or not to make an emergency stop of the robot arm during operation of the robot arm; a drive control unit that, when the judgment unit judges that the robot arm should be brought to an emergency stop, executes a stopping operation based on the stop parameter information.
2. The robot system according to claim 1 , wherein the stop parameter information includes information on a deceleration rate K of the speed of the predetermined portion when the robot arm makes an emergency stop and information on an allowable braking distance Lmax until the robot arm stops.
3. 3. The robot system according to claim 2, wherein, when the determination unit determines that the robot arm should be brought to an emergency stop, the drive control unit calculates a braking distance La when the robot arm is brought to an emergency stop using the deceleration rate K, and when La > Lmax, brings the robot arm to an emergency stop using a deceleration rate Ka greater than the deceleration rate K.
4. the drive control unit acquires information about a target position to which the predetermined portion will next move, and repeats an operation of moving the robot arm multiple times based on the acquired information about the target position, 4. The robot system according to claim 1, wherein the determining unit determines to bring the robot arm to an emergency stop when the drive control unit does not acquire the information on the target position.
5. When the determination unit determines that the robot arm should be brought to an emergency stop, the drive control unit determines the last acquired target position P n (n is an integer of 2 or more) and the target position P n The target position P obtained one time before n-1 5. The robot system according to claim 4, wherein the robot arm is moved along an extension of a line segment connecting the above two points.
6. The robot arm has a movable area including a first area and a second area different from the first area, The robot system according to claim 1 , wherein the acquisition unit acquires, from the stop parameter information, first stop parameter information relating to the first region and second stop parameter information relating to the second region.
7. 7. The robot system of claim 6, wherein the drive control unit executes the stopping operation based on the first stop parameter information when the judgment unit determines that the robot arm should be brought to an emergency stop when the predetermined portion of the robot arm is located in the first area, and executes the stopping operation based on the second stop parameter information when the judgment unit determines that the robot arm should be brought to an emergency stop when the predetermined portion of the robot arm is located in the second area.
8. a receiving unit that receives stop parameter information related to stop parameters corresponding to conditions related to the stop of a predetermined portion on the robot arm when the robot arm makes an emergency stop; a determination unit that determines whether or not to make an emergency stop of the robot arm during operation of the robot arm; a drive control unit that, when the judgment unit judges that the robot arm should be brought to an emergency stop, executes a stopping operation based on the stop parameter information.
9. an acquisition unit that acquires stop parameter information related to stop parameters corresponding to conditions related to the stop of a predetermined portion on the robot arm when the robot arm makes an emergency stop; a transmitting unit that controls the operation of the robot arm, determines whether or not to make an emergency stop of the robot arm while the robot arm is operating, and, if it is determined that the robot arm should be made an emergency stop, transmits the stop parameter information acquired by the acquiring unit to a robot control device that performs a stop operation based on the stop parameter information.
Citation Information
Patent Citations
Mobile video conferencing platform with automatic shut-off
JP2008532107A