Program creation device and robot control device

By designing the current calculation, voltage drop calculation, circuit configuration, comparison, output and modification units in the program generation device, the steps and alarm problems caused by voltage drop in robot operation are solved, and effective error correction and production efficiency improvement are achieved.

JP7674480B2Active Publication Date: 2025-05-09FANUC LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
JP2023528854
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2021-06-16
Publication Date
2025-05-09
Estimated Expiration
2041-06-16

AI Technical Summary

Technical Problem

During the robot operation, when the motor drive current suddenly increases, the voltage drops instantaneously due to the impedance of the transformer, which cannot meet the driving current required by the motor, resulting in the robot operation being lost and the position error increases. When the preset threshold value exceeds, the control system determines that it is abnormal, outputs an alarm and stops the robot.

Method used

A program generation device is designed, including a current computing unit, a voltage drop computing unit, a circuit configuration unit, a comparison unit, an output unit and a modification unit. The device calculates the driving current and voltage drop, compares whether the threshold is exceeded, and outputs a relaxed operation when it exceeds the threshold, modifying the target operation to avoid the robot's step loss caused by voltage drop.

Benefits of technology

Effectively detect and predict abnormal situations caused by voltage drop in robot operation, and modify operating procedures to avoid alarms and robot pauses, improve production efficiency, and reduce downtime caused by robot stop in production lines.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007674480000001
    Figure 0007674480000001
  • Figure 0007674480000002
    Figure 0007674480000002
  • Figure 0007674480000003
    Figure 0007674480000003
Patent Text Reader

Abstract

The present invention provides: a program generation device provided with a function to identify a robot movement causing an inconvenient voltage drop and present a movement for easing said robot movement or automatically ease said robot movement; and a robot control device. This program generation device comprises: an electric current calculation unit which calculates the value of a driving electric current to be supplied to a motor in order to cause a robot to operate in accordance with a movement program; a drop voltage calculation unit which calculates an amount of instantaneous drop voltage in an electric circuit between the motor and an equipment power supply for supplying an electric current to the motor, on the basis of the calculated value of the driving electric current and the configuration of the electric circuit; a comparison unit which compares the calculated amount of instantaneous drop voltage with a predetermined first threshold value; and an output unit which outputs a target movement or an easing movement in the case where the amount of instantaneous drop voltage has exceeded the first threshold value and / or a correction unit which corrects a target movement to an easing movement in the movement program.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present invention relates to a program generating device and a robot control device for a robot. [Background technology]

[0002] In robots and NC machines, a technique is known for protecting a motor from overload using the current flowing through the motor and its integrated value (see, for example, Patent Document 1).In addition, a technique is known for identifying when a motor has been locked due to an overload or when the motor's operation is heavy by a drop in the motor voltage, and outputting an overload signal (see, for example, Patent Document 2).

[0003] Meanwhile, in a machining system using a machine tool and a robot, a technique is known that displays the executed program lines and the pre-read program lines when an alarm occurs in the machine tool (see, for example, Patent Document 3). [Prior art documents] [Patent documents]

[0004] [Patent Document 1] Japanese Patent Application Publication No. 05-056557 [Patent Document 2] Special Publication No. 10-505216 [Patent Document 3] JP 2010-277425 A Summary of the Invention [Problem to be solved by the invention]

[0005] In order to make a robot perform high-speed or high-torque operations such as rapid acceleration or carrying heavy objects, it is necessary to pass a large drive current to motors such as servo motors that drive each axis of the robot. At this time, the voltage supplied to the motor drops momentarily due to impedances of a transformer, which is a component of the robot control device, an external device that uses a facility power supply common to the robot, and a power transmission cable for supplying power from the facility power supply to the robot and the external device. If this voltage drop is greater than a certain level, the motor cannot receive the necessary current, and the robot cannot follow the command, resulting in a deviation between the commanded position and the actual position, and an increase in the position error corresponding to the difference between the commanded position and the actual position. If this position error exceeds a preset threshold, the robot's control system (control device, etc.) determines this to be an abnormality and outputs an alarm to stop the robot. [Means for solving the problem]

[0006] One aspect of the present disclosure is a program generation device that generates an operation program for controlling a robot that operates by driving at least one motor, the program generation device including: a current calculation unit that calculates a value of a drive current to be supplied to the motor to operate the robot in accordance with the operation program; a voltage drop calculation unit that calculates an instantaneous voltage drop in the electric circuit based on the value of the drive current calculated by the current calculation unit and a configuration of the electric circuit from an equipment power source that supplies current to the motor to the motor; a comparison unit that compares the instantaneous voltage drop calculated by the voltage drop calculation unit with a predetermined first threshold; an output unit that outputs a target action or a mitigation action when the instantaneous voltage drop exceeds the first threshold; and at least one of a correction unit that corrects the target action to a mitigation action in the operation program.

[0007] Another aspect of the present disclosure is a robot control device that controls a robot that operates by driving at least one motor based on an operation program, the robot control device including a voltage measurement unit that measures a voltage value at an inlet, an outlet, or inside the robot control device when a drive current for operating the robot according to the operation program is supplied to the motor, and a comparison unit that compares the voltage value measured by the voltage measurement unit with a predetermined second threshold value, and when the voltage value is lower than the second threshold value, a correction unit that calculates an impedance of a system including the robot based on a value of a drive current supplied to the motor and a value of the voltage measured by the voltage measurement unit, generates a mitigation action using the impedance and the second threshold value, and corrects a target action in the operation program to the mitigation action; and an output unit that outputs the mitigation action. and at least one of the above. Effect of the Invention

[0008] According to the present disclosure, it is possible to detect or predict excessive voltage drops when a robot is operated based on a predetermined program, and further to identify the actions that cause the voltage drops, thereby efficiently correcting the corresponding action statements in the program. [Brief description of the drawings]

[0009] [Figure 1] FIG. 1 is a block diagram of a robot system according to an embodiment. [Figure 2A] FIG. 2 is a block diagram showing an example of electrical connections between devices around the robot control device. [Figure 2B] FIG. 11 is a block diagram showing another example of electrical connections between devices around the robot control device. [Diagram 3] 4 is a flowchart illustrating an example of processing performed by a program generating device according to a first embodiment. [Figure 4] 11 is a flowchart illustrating an example of processing performed by a program generating device according to a second embodiment of the present invention. [Diagram 5] 13 is a flowchart illustrating an example of processing performed by a program generating device according to a third embodiment. [Figure 6] 13 is a flowchart illustrating an example of processing performed by a program generating device according to a fourth embodiment. [Figure 7] 13 is a flowchart showing an example of processing by a robot control device according to a fifth embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0010] 1 is a block diagram of a robot system including a robot control device according to a preferred embodiment. The robot system 10 includes at least one robot 12, such as an industrial vertical articulated robot, and at least one robot control device 14 (usually the same number as the number of robots 12) that is communicatively connected to the robot 12 via wired or wireless communication and controls the robot 12. The robot control device 14 is also communicatively connected to a program generating device 16 that generates a robot program for controlling the operation of the robot 12 via wired or wireless communication.

[0011] The robot control device 14 is configured to control the robot 12 based on a given robot program, and includes a processor, memory, etc. for implementing the functions of each unit of the control device 14 described below. The program generation device 16 is, for example, a personal computer (PC) that is independent of the robot control device 14 and includes a processor, memory, etc. for implementing the functions of each unit of the program generation device 16 described below.

[0012] 2A shows an example of the electrical device connection relationship around the robot controller 14, specifically, the electrical circuit from the facility power supply to the robot's motor. The robot 12 has at least one motor, such as a servo motor 20 that drives each axis of the robot 12 and a motor 22 that drives an additional axis, and a drive current is supplied to the motors 20 and 22 from a facility power supply 24, shown in schematic form, via the robot controller 14 through a power transmission cable 23. The facility power supply 24 is also electrically connected to external devices 26, such as an I / F (interface) board, a transformer, a machine tool, a signaling device, and a maintenance device, in addition to the robot controller 14, and supplies power to the external devices 26 as well.

[0013] The robot control device 14 has a transformer 28 that transforms the input voltage to the control device 14, an amplifier / converter unit 30 that converts AC to DC, an amplifier / inverter unit 32 that converts DC to AC, and a DC link 34 for inputting the DC converted by the amplifier / converter unit 30 to the amplifier / inverter unit 32.

[0014] The robot controller 14 further includes a voltage measuring device for measuring voltages associated with the controller 14, and specifically includes at least one of a first sensor 38 for measuring the voltage at the controller inlet, a second sensor 40 for measuring the voltage at the controller outlet, and a third sensor 42 for measuring the voltage inside the controller (here, the voltage at the DC link 34).

[0015] Fig. 2B shows another example of electrical device connection relationships around the robot control device 14. In Fig. 2B, unlike Fig. 2A in which the control device 14 and the external device 26 are connected in parallel, the facility power supply 24, the external device 26, and the control device 14 are connected in series, and other parts may be the same as those in Fig. 2A.

[0016] Since the transformer 28 has a certain impedance, when a current flows through the transformer 28, an instantaneous voltage drop occurs in the voltage supplied to the motors 20, 22. In addition, when a current flows through the power transmission cables 23 of various thicknesses or the external device 26 connected to the common facility power source 24, an instantaneous voltage drop may occur in the voltage supplied to the motors 20, 22. This instantaneous voltage drop is easily affected by the impedance of the external device 26, particularly in the case of FIG. 2B. These instantaneous voltage drops make it impossible to supply the necessary current to the servo motor 20, etc., and the robot 12 cannot move in accordance with the command, causing a deviation between the commanded position and the actual position. When the position error based on this deviation exceeds a predetermined allowable value, the robot control device 14 is configured to determine this as an abnormality and output an alarm to stop the robot 12. The means for outputting the alarm here include any means by which the operator can recognize the alarm, such as displaying the alarm on a display, sound, or vibration of an object worn by the operator. Such an alarm shutdown of the robot 12 can lead to problems such as a significant drop in production efficiency, particularly when the robot 12 is used on a production line. In the following embodiment, therefore, a process for preventing an alarm shutdown of the robot 12 due to an instantaneous voltage drop will be described.

[0017] Example 1 3 is a flowchart showing an example of processing in the program generating device 16 as the first embodiment. Note that the processing and calculation in the program generating device 16 may be considered as a simulation that can be executed offline, and there is no need to actually operate the robot system. This also applies to the second to fourth embodiments described later.

[0018] First, in step S11, a drive current I to be passed through the servo motor 20 etc., which is necessary to execute a certain action statement in the robot program, is calculated. Next, in step S12, an instantaneous voltage drop ΔVt0 caused by the drive current I flowing through the transformer 28 is calculated using the impedance value (usually known) of the transformer 28 etc.

[0019] In the next step S13, it is determined whether the instantaneous voltage drop amount ΔVt0 calculated in S12 exceeds a predetermined first threshold value L1. If it does not exceed the threshold value, the process returns to step S11 and processes the next action statement. Although not shown in the flowchart, if there is no action statement to be processed, the process ends without returning to step S11. This also applies to Examples 2 to 5 described later.

[0020] In step S13, if the instantaneous voltage drop amount ΔVt0 exceeds the first threshold L1, the voltage drop may prevent the robot from following commands, causing the position error to exceed the allowable value and the robot to stop with an alarm. In other words, the first threshold L1 is preset to a value that estimates that, if ΔVt0 exceeds L1, there is a high probability that the position error of the robot 12 caused by the voltage drop will exceed the allowable value. In this case, the process proceeds to step S14, and the corresponding action statement (program line) is output together with a warning (for example, displayed on a display or notified by voice).

[0021] In the next step S15, a mitigation operation is generated to make the instantaneous voltage drop ΔVt0 equal to or less than L1, and is output (for example, displayed on a display or notified by voice). This mitigation operation can be obtained, for example, by lowering the robot's moving speed or acceleration to a certain rate (for example, 80%). If ΔVt0 does not become equal to or less than L1 even when lowered to a certain rate, the same process may be repeated (for example, 80% x 80%).

[0022] The worker or the like can know from the output (display) of step S14 that there is an action (statement) that should be mitigated, and can therefore revise or change the action statement of the robot program so as not to cause a voltage drop that would cause an alarm by correcting the action statement or teaching the robot, etc. Also, the worker or the like can know from the output (display) of step S15 how to mitigate that action, and can therefore more efficiently revise or change the robot program.

[0023] Instead of steps S14 and S15, or in addition to steps S14 and S15, the program generating device 16 may automatically relax or modify the motions (sentences) to be relaxed, and automatically change the robot program based on the relaxation (step S16). In this case, the operator does not need to modify or change the robot program by himself.

[0024] Example 2 4 is a flowchart showing an example of processing in the program generating device 16 as the second embodiment. The second embodiment is generally similar to the first embodiment, but the program generating device 16 can first set the impedance value of the transformer 28 in step S21. The impedance value may be set by an operator or the like via an appropriate input device (keyboard, touch panel, etc.), or may be automatically set by a processor or the like of the program generating device 16 based on past performance or the like.

[0025] Generally, small transformers are low cost, but tend to have high impedance, and therefore the use of a small transformer results in a large instantaneous voltage drop. Therefore, for example, if the instantaneous voltage drop ΔVt0 exceeds L1 with the transformer T0 used in the calculation in Example 1, the frequency with which the instantaneous voltage drop ΔVt1 exceeds L1 can be reduced by selecting a transformer T1 that has a lower impedance (and therefore is larger) than the transformer T0.

[0026] The processes in steps S22 to S27 may be similar to those in steps S11 to S16 in the first embodiment, and therefore detailed description thereof will be omitted. By being able to select transformers with different impedances as in the second embodiment, it is possible to utilize this for the selection of an actual transformer.

[0027] Example 3 5 is a flowchart showing a processing example in the program generating device 16 as a third embodiment. In the third embodiment, in step S31, the impedance of at least one of the power transmission cable 23 and the external device 26 can be set, and therefore a simulation can be performed taking into consideration the influence of one or both of the power transmission cable 23 and the external device 26. Note that the impedance values ​​of the power transmission cable and the external device may be set by an operator or the like via an appropriate input device (keyboard, touch panel, etc.), or may be automatically set by a processor of the program generating device 16 or the like based on past performance or the like.

[0028] The transformer 28 is a component that can significantly affect the amount of instantaneous voltage drop that occurs when a current flows through the servo motor 20, etc., but the power transmission cable 23 and the external device 26 may also cause a non-negligible instantaneous voltage drop depending on their impedances. Therefore, in the third embodiment, first, in step S31, the impedance value of at least one of the power transmission cable 23 and the external device 26 is set. This impedance value can be obtained, for example, from past performance or data.

[0029] Next, in step S32, a drive current I to be passed through the servo motor 20 etc., which is necessary to execute a certain action statement in the robot program, is calculated. Next, in step S33, an instantaneous voltage drop ΔVg due to the transformer 28 and / or the power transmission cable 23 and / or the external device 26 when the drive current I flows through the servo motor 20 etc. is calculated.

[0030] The processes of steps S34 to S37 may be similar to steps S13 to S16 in the first embodiment, and therefore detailed description thereof will be omitted. By making it possible to set the impedance of at least one of the power transmission cable and the external device as in the third embodiment, it is possible to perform a simulation of a system including the power transmission cable and / or the external device that is more realistic.

[0031] Example 4 FIG. 6 is a flow chart showing an example of processing in the program generating device 16 as a fourth embodiment. For example, when a robot is used in a low-temperature environment, the friction torque in each axis increases with an increase in the viscosity of the grease used in each axis of the robot, so a larger drive current is required. Even if there is nothing wrong with the robot itself, a large voltage drop may occur due to the influence of the environmental temperature, causing the robot to stop with an alarm. Therefore, in the fourth embodiment, a simulation can be performed that takes into account the energy loss due to the grease viscosity in each axis of the robot.

[0032] First, in step S41, a temperature such as the operating temperature (ambient temperature) of the robot 12 is set. This set temperature is preferably approximately equal to the temperature of the grease used in the joints of each axis of the robot. The temperature may be set by an operator or the like via an appropriate input device (keyboard, touch panel, etc.), or may be automatically set by a processor of the program generation device 16 based on actual measurements, etc.

[0033] Next, in step S42, the grease viscosity value at the temperature set in S41 and the friction coefficient calculated from this viscosity value are used to calculate the energy loss in each axis when the robot operates according to a predetermined motion statement. Next, in step S43, the drive current for the servo motor 20, etc. is calculated taking into account the energy loss calculated in S42. Next, in step S44, the amount of instantaneous voltage drop ΔVe caused by the drive current calculated in S43 flowing through the control device 14, etc. is calculated.

[0034] The processes in steps S45 to S48 may be similar to steps S13 to S16 in the first embodiment, respectively, and therefore detailed description will be omitted. In general, as the environmental temperature drops, the viscosity of the grease increases, which increases the energy loss of each axis of the robot, and therefore the drive current of the motor also increases, and as a result, the instantaneous voltage drop amount ΔVe tends to increase. According to the fourth embodiment, it is possible to obtain the change in the instantaneous voltage drop amount taking into account the grease viscosity, and therefore it is possible to perform a simulation that also includes the effect of the temperature of the environment in which the robot is used.

[0035] Example 5 The above-mentioned Examples 1 to 4 relate to the calculation processing (simulation) in the program generating device 16, but Example 5, which will be described with reference to Fig. 7, relates to the processing in the robot control device 14. The main difference between Example 5 and Examples 1 to 4 is that in Example 5, a drive current is actually applied to the motor to measure the voltage drop.

[0036] First, in step S51, a drive current for operating the robot 12 according to a predetermined motion statement is actually supplied to the motor. Next, in step S52, at least one of the voltage sensors 38, 40, 42 shown in Fig. 2A or 2B is used to measure the voltage V associated with the control device 14 (specifically, at the inlet, outlet, or inside of the control device 14) when the drive current flows through the motor.

[0037] In the next step S53, it is determined whether the measured voltage V obtained in S52 is below a predetermined second threshold L2. If V is equal to or greater than L2, the process returns to step S51 to process the next action statement (supply of drive current and voltage measurement). Although not shown in the flowchart, if there is no action statement to be processed, the process ends without returning to step S51.

[0038] In step S53, if the measured voltage V is below the second threshold L2, i.e., if the voltage drop exceeds a certain value, it is understood that a voltage drop has occurred such that the robot cannot follow the command, the position error exceeds the allowable value, and the robot issues an alarm and stops. In other words, the second threshold L2 is preset to a value such that, when V is less than L2, it is estimated that there is a high probability that the position error of the robot 12 caused by the voltage drop will exceed the allowable value. In this case, the process proceeds to step S54, and the corresponding action statement (program line) is output together with a warning (for example, displayed on a display or notified by voice).

[0039] In the next step S55, a mitigation operation is generated to make the measured voltage V equal to or greater than L2, and is output (for example, displayed on a display or notified by voice). This mitigation operation can be obtained, for example, by lowering the robot's moving speed or acceleration to a certain rate (for example, 80%). If V does not become equal to or greater than L2 even after lowering it to a certain rate, the same process may be repeated (for example, 80% x 80%).

[0040] The worker etc. can know from the output (display) of step S54 that there is an action (statement) that should be mitigated, and can correct or modify the robot program so as not to cause a voltage drop that would cause an alarm by correcting the action statement or teaching the robot, etc. Also, the worker etc. can know from the output (display) of step S55 how to mitigate that action, and can more efficiently correct or modify the robot program.

[0041] In the fifth embodiment, since the voltage is measured by actually passing a drive current through the motor, it is possible to accurately find conditions that may cause the robot to stop due to an alarm, and to efficiently find mitigation actions to avoid this. In other words, since the actual impedance of the system including the transformer and external devices is found by calculation using the measured voltage (amount of voltage drop) and drive current, it is possible to easily find a drive current value (target current value) that does not cause an undesirable voltage drop by calculation using the calculated impedance and a second threshold value (voltage at which an alarm does not occur).

[0042] Instead of steps S54 and S55, or in addition to steps S54 and S55, the control device 14 may automatically mitigate or correct the motion (sentence) to be mitigated and control the robot 12 based on this (step S56). In this case, the operator does not need to modify or change the robot program himself.

[0043] The above-described embodiments are particularly useful when the robot system 10 is applied to a production line in a factory, etc. Generally, a production line is composed of multiple robots, and each line often performs a series of processes in cooperation with each other, so that if one robot is stopped in an emergency due to an alarm or the like, the entire production line may stop, and production efficiency may decrease significantly.

[0044] It will be easily understood by those skilled in the art that the above-mentioned embodiments can be appropriately combined. For example, by combining all of the embodiments 2 to 4, a highly accurate simulation can be performed for a robot system including a transformer, a power transmission cable, and an external device, taking into account changes in environmental temperature (grease viscosity).

[0045] According to the present disclosure, a robot operation that may cause an excessive voltage drop can be identified and corrected by a simulation using a program generation device, so that an operation that may cause an alarm can be eliminated before starting up a production line or the like that includes a robot. Also, by measuring the internal voltage, input voltage value, or output voltage value of the robot control device, an operation that may cause an alarm indicating that an excessive voltage drop will cause an excessive position error can be identified and corrected at the start-up of the production line, so that the possibility of the robot stopping due to an alarm can be reduced by taking measures such as lowering the speed or acceleration or changing the teaching position before the production line goes into full operation. In either case, this leads to stabilization of the entire system including the robot, and is expected to improve productivity. [Explanation of symbols]

[0046] 10 Robot System 12. Robot 14 Control device 16 Program Generation Device 20 Servo motor 22 Motor 23 Power Cables 24 Equipment power supply 26 External equipment 28 Trans 30 Amplifier / Converter Section 32 Amplifier / inverter section 34 DC Link 38, 40, 42 Voltage sensor

Claims

1. A program generation device that generates an operation program for controlling a robot that operates by driving at least one motor, comprising: a current calculation unit that calculates a value of a drive current to be supplied to the motor in order to operate the robot according to the operation program; a voltage drop calculation unit that calculates an instantaneous voltage drop amount in the electric circuit based on the value of the drive current calculated by the current calculation unit and a configuration of the electric circuit from a facility power source that supplies current to the motor to the motor; a comparison unit that compares the instantaneous voltage drop amount calculated by the voltage drop calculation unit with a predetermined first threshold value; at least one of an output unit that outputs a target action or a mitigation action when the instantaneous voltage drop amount exceeds the first threshold value, and a correction unit that corrects the target action to a mitigation action in the operation program; A program generating device comprising:

2. 2. The program generating device according to claim 1, further comprising a setting unit configured to set an impedance value of a transformer included in the electric circuit when calculating the amount of instantaneous voltage drop.

3. 3. The program generating device according to claim 1, further comprising: a program generating unit configured to be able to set an impedance value of at least one of a power transmission cable and an external device included in the electric circuit when calculating the amount of instantaneous voltage drop.

4. A program generation device according to any one of claims 1 to 3, configured to take into account the amount of energy loss due to the viscosity of grease used on each axis of the robot at the operating temperature of the robot when calculating the value of the drive current.

5. A robot control device that controls a robot that is operated by driving at least one motor based on an operation program, a voltage measuring unit that measures a voltage value at an inlet, an outlet, or inside of the robot control device when a drive current for operating the robot according to the operation program is supplied to the motor; a comparison unit that compares the value of the voltage measured by the voltage measurement unit with a predetermined second threshold value; at least one of a correction unit that calculates an impedance of a system including the robot based on a value of a drive current supplied to the motor and the value of the voltage measured by the voltage measurement unit when the value of the voltage is lower than the second threshold, generates a mitigation action using the impedance and the second threshold, and corrects a target action in the operation program to the mitigation action, and an output unit that outputs the mitigation action; A robot control device comprising:

6. The robot control device according to claim 5 , wherein the correction unit determines a value of a target drive current at which the value of the voltage measured by the voltage measurement unit is equal to or greater than the second threshold value, and automatically generates the mitigation action based on the value of the target drive current.

Citation Information

Patent Citations

  • Over load protecting circuit for movable object driving apparatus

    JP1993056557A

  • motor drive circuit

    JP1998505216A

  • Robot control apparatus for controlling robot that supplies and dismounts work to and from machine tool

    JP2010277425A

  • Motor controller for controlling motor in accordance with voltage drop amount of power supply voltage and machine tool system

    JP2019037018A

  • Controller for machine tool

    JP2020091623A