Encoder fault diagnosis method, robot monitoring device, and robot system
The encoder fault diagnosis method in robot systems addresses the limitation of stopped motor detection by using power signals and encoder values to diagnose faults, improving safety and reliability.
Patent Information
- Application Number
- JP2021213936
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2021-12-28
- Publication Date
- 2025-11-26
- Estimated Expiration
- 2041-12-28
AI Technical Summary
Existing encoder fault detection methods in robot systems fail to detect encoder faults when the motor's rotating shaft is stopped, limiting the effectiveness of fault detection during motor operation.
A fault diagnosis method for encoders in robot systems that includes acquiring power signals such as pulse width modulated voltages or coil currents, determining motor stop conditions, and diagnosing encoder failures based on encoder values and motor stop signals, even when the motor is stationary.
Enables reliable detection of encoder faults in robot systems, enhancing safety performance by ensuring accurate motor control and preventing unintended operation, even with non-safety certified encoders.
Smart Images

Figure 0007775706000001 
Figure 0007775706000002 
Figure 0007775706000003
Abstract
Description
[Technical Field]
[0001] The present invention relates to a method for diagnosing a fault in an encoder, a robot monitoring device, and a robot system. [Background technology]
[0002] Patent Document 1 discloses a motor control device having an encoder that detects motor operation. This motor control device includes a motor control unit, a drive unit, a cutoff unit, and a safety control unit. The motor control unit generates a command value for motor operation based on an operation command signal for driving the motor and a feedback signal from the encoder. The drive unit supplies a drive current to the motor based on the command value. The cutoff unit cuts off transmission of the drive signal from the motor control unit to the drive unit. When the safety control unit determines that a failure has occurred, it executes a cutoff process for the drive signal via the cutoff unit. This cutoff process is executed based on the result of a comparison between a feedback value calculated from the feedback signal from the encoder and a control calculation value calculated in the process of generating the command value.
[0003] Specifically, if the difference between the feedback value and the control calculation value is outside the allowable range, it means that the feedback signal is not in line with the operating state of the servo motor that it should be in. In this case, the safety control unit described in Patent Document 1 determines that some kind of failure has occurred and executes a cut-off process.
[0004] By providing a safety control unit that executes such a cutoff process, the safety performance of the motor control device can be improved without being restricted by the safety performance of the encoder. [Prior art documents] [Patent documents]
[0005] [Patent Document 1] Japanese Patent Application Publication No. 2018-136696 Summary of the Invention [Problem to be solved by the invention]
[0006] The fault detection method described in Patent Document 1 detects deviation from tracking control by the servo mechanism and determines whether a fault has occurred using a safety control unit. This method works effectively when the motor is running, but has the problem of being unable to detect an encoder fault when the motor's rotating shaft is stopped. [Means for solving the problem]
[0007] A fault diagnosis method for an encoder according to an application example of the present invention includes: A method for diagnosing a fault in an encoder having a function of detecting rotation of a rotation shaft of a motor provided at a joint of a robot arm having a joint and outputting an encoder value, comprising: obtaining a power signal of the motor; obtaining the encoder value; determining that the motor is stopped when the power signal satisfies a stop determination condition for determining that the motor is stopped, and outputting a motor stop signal; determining that the encoder is faulty when the motor stop signal is output and it is determined from the encoder value that the rotary shaft of the motor is rotating; and The power signal is a pulse width modulated voltage supplied to the motor or a coil current flowing through the motor.
[0008] A robot monitoring device according to an application example of the present invention includes: A robot monitoring device for monitoring the operation of a robot including a robot arm having a joint, a motor provided at the joint, and an encoder having a function of detecting rotation of a rotation shaft of the motor and outputting an encoder value, a power signal acquisition unit that acquires a power signal of the motor; an encoder value acquisition unit that acquires the encoder value; a motor stop determination unit that determines that the motor is stopped when the power signal satisfies a stop determination condition for determining that the motor is stopped, and outputs a motor stop signal; an encoder failure determination unit that determines that the encoder is faulty when the motor stop signal is output and it is determined from the encoder value that the rotary shaft of the motor is rotating; Equipped with The power signal is a pulse width modulated voltage supplied to the motor or a coil current flowing through the motor.
[0009] A robot system according to an application example of the present invention includes: The robot; a robot controller for controlling the operation of the robot; A robot monitoring device according to an application example of the present invention; The present invention is characterized by having the following. [Brief explanation of the drawings]
[0010] [Figure 1] FIG. 1 is a perspective view showing a robot system according to a first embodiment. [Figure 2] FIG. 2 is a schematic diagram of the robot shown in FIG. [Figure 3] FIG. 2 is a block diagram showing the main parts of the robot system of FIG. 1. [Figure 4] FIG. 4 is a partially enlarged view of the block diagram shown in FIG. 3. [Figure 5] FIG. 4 is a detailed block diagram of a first joint unit shown in FIG. 3. [Figure 6] 4 is a flowchart illustrating a fault diagnosis method for an encoder according to the first embodiment. [Figure 7] 10A and 10B are diagrams showing examples of waveforms of three-phase drive pulse voltages Vu, Vv, and Vw, waveforms of equivalent voltages EVu, EVv, and EVw, and waveforms of three-phase coil currents CCu, CCv, and CCw. [Figure 8] 10 is a table showing magnetic poles excited in the U-phase coil, V-phase coil, and W-phase coil in an example in which the switching sequence of the switching elements in the inverter section is divided into 12 steps No. 1 to No. 12. [Figure 9] FIG. 10 is a partially enlarged view of a block diagram showing the main parts of a robot system according to a second embodiment. DETAILED DESCRIPTION OF THE INVENTION
[0011] DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, a method for diagnosing a fault in an encoder, a robot monitoring device, and a robot system according to the present invention will be described in detail based on the embodiments shown in the accompanying drawings.
[0012] 1. First embodiment First, a robot system according to a first embodiment will be described.
[0013] Fig. 1 is a perspective view showing a robot system according to a first embodiment, Fig. 2 is a schematic diagram of the robot shown in Fig. 1, and Fig. 3 is a block diagram showing the main parts of the robot system of Fig. 1.
[0014] 1 is used for performing tasks on various types of workpieces (objects), such as transport, assembly, and inspection.
[0015] As shown in FIGS. 1 and 3, the robot system 1 includes a base 4, a robot arm 10, a robot 2 including driving units 401 to 406 and driving control units 301 to 306, and a robot control device 8 that controls the operation of the robot 2.
[0016] 1 and 2 is placed on a horizontal floor 101. The base 4 may be placed on a wall, a ceiling, a stand, or the like instead of the floor 101.
[0017] The robot arm 10 shown in FIGS. 1 and 2 includes a first arm 11, a second arm 12, a third arm 13, a fourth arm 14, a fifth arm 15, and a sixth arm 16. An end effector (not shown) can be detachably attached to the tip of the sixth arm 16, and the end effector can grip a workpiece. The workpiece to be gripped by the end effector is not particularly limited, and examples include electronic components and electronic devices. In this specification, the side of the base 4 relative to the sixth arm 16 is referred to as the "base end side," and the side of the sixth arm 16 relative to the base 4 is referred to as the "tip side."
[0018] The end effector is not particularly limited, but examples thereof include a hand that grips a workpiece, a suction head that sucks a workpiece, and the like.
[0019] A force detection unit (not shown) may be provided between the sixth arm 16 and the end effector. The force detection unit detects the force applied to the end effector. An example of the force detection unit is a six-axis force sensor that can detect force components (translational force components) in each of three mutually orthogonal axes and force components (rotational force components) around each of the three axes.
[0020] Furthermore, in addition to the above, the robot system 1 may also include, for example, an image sensor, a depth sensor, an inertial sensor, an ultrasonic sensor, a light curtain, a millimeter wave radar, a laser scanner, and the like.
[0021] 3 includes a robot controller 81, a robot monitoring device 82, a power cut-off unit 85, and a converter unit 86 connected to an AC power supply 9 via the power cut-off unit 85. As will be described later, the robot control device 8 controls the operation of drive control units 301 to 306 to control the operation of the robot 2.
[0022] 1.1.Robots The robot 2 is a single-arm, six-axis, vertically articulated robot in which a first arm 11, a second arm 12, a third arm 13, a fourth arm 14, a fifth arm 15, and a sixth arm 16 are connected in this order from the base end to the tip end to a base 4. Hereinafter, the first arm 11, the second arm 12, the third arm 13, the fourth arm 14, the fifth arm 15, and the sixth arm 16 will also be referred to as "arms." The lengths of the arms 11 to 16 are not particularly limited and can be set as appropriate.
[0023] 1.1.1.Robot Arm As shown in FIG. 2, the base 4 and the first arm 11 are connected via a first joint 171. The first arm 11 is rotatable relative to the base 4 around a first rotation axis O1 that is parallel to the vertical axis. As shown in FIG. 3, the first joint 171 includes a drive unit 401 having a motor 401M and a reducer (not shown), and an angle sensor 411. The first arm 11 rotates when driven by the drive unit 401. The motor 401M generates a driving force that rotates the first arm 11.
[0024] The first arm 11 and the second arm 12 are connected via a second joint 172. The second arm 12 is rotatable relative to the first arm 11 around a second rotation axis O2 that is parallel to the horizontal plane. As shown in FIG. 3, the second joint 172 includes a drive unit 402 having a motor 402M and a reducer (not shown), and an angle sensor 412. The second arm 12 rotates when driven by the drive unit 402. The motor 402M generates a driving force that rotates the second arm 12.
[0025] The second arm 12 and the third arm 13 are connected via a third joint 173. The third arm 13 is rotatable relative to the second arm 12 around a third rotation axis O3 that is parallel to the horizontal plane. As shown in FIG. 3, the third joint 173 includes a drive unit 403 having a motor 403M and a reducer (not shown), and an angle sensor 413. The third arm 13 rotates when driven by the drive unit 403. The motor 403M generates a driving force that rotates the third arm 13.
[0026] The third arm 13 and the fourth arm 14 are connected via a fourth joint 174. The fourth arm 14 is rotatable relative to the third arm 13 around a fourth rotation axis O4 that is parallel to the central axis of the third arm 13. As shown in FIG. 3, the fourth joint 174 includes a drive unit 404 having a motor 404M and a reducer (not shown), and an angle sensor 414. The fourth arm 14 rotates when driven by the drive unit 404. The motor 404M generates a driving force that rotates the fourth arm 14.
[0027] The fourth arm 14 and the fifth arm 15 are connected via a fifth joint 175. The fifth arm 15 is rotatable relative to the fourth arm 14 around a fifth rotation axis O5 that is perpendicular to the central axis of the fourth arm 14. As shown in FIG. 3, the fifth joint 175 includes a drive unit 405 having a motor 405M and a reducer (not shown), and an angle sensor 415. The fifth arm 15 rotates when driven by the drive unit 405. The motor 405M generates a driving force that rotates the fifth arm 15.
[0028] The fifth arm 15 and the sixth arm 16 are connected via a sixth joint 176. The sixth arm 16 is rotatable relative to the fifth arm 15 around a sixth rotation axis O6 that is parallel to the central axis of the tip of the fifth arm 15. As shown in FIG. 3, the sixth joint 176 includes a motor 406M, a drive unit 406 having a reducer (not shown), and an angle sensor 416. The sixth arm 16 rotates when driven by the drive unit 406. The motor 406M generates a drive force that rotates the sixth arm 16.
[0029] Examples of the angle sensors 411-416 include various encoders such as rotary encoders. The angle sensors 411-416 detect the rotation angle of the output shafts of the motors 401M-406M or the output shafts of the reducers of the driving units 401-406. In this specification, detecting the rotation of the output shafts of the motors 401M-406M or the output shafts of the reducers is referred to as "detecting the rotation of the motor's rotation shaft."
[0030] 1.1.2.Drive unit The motors 401M to 406M of the driving units 401 to 406 include, for example, three-phase brushless motors.
[0031] The reducers of the driving units 401 to 406 may be, for example, planetary gear reducers made up of multiple gears, wave reducers, or the like.
[0032] The driving units 401 to 406 and the angle sensors 411 to 416 are electrically connected to the robot control device 8, respectively.
[0033] The drive control units 301 to 306 are, for example, servo drivers, and control the operations of the drive units 401 to 406 based on operation command values output from the robot control device 8.
[0034] Fig. 4 is a partially enlarged view of the block diagram shown in Fig. 3. Note that Fig. 4 shows in detail only the first joint portion 171 of the first joint portion 171 to the sixth joint portion 176, which are all joint portions located between the arms.
[0035] The first joint 171 is provided with a drive unit 401 including a motor 401M and an angle sensor 411, and a drive control unit 301. The operations of the drive unit 401 and drive control unit 301 will be described below with reference to Fig. 4, but the following description also applies to the drive units 402 to 406 and drive control units 302 to 306.
[0036] 4 includes an encoder 421. The encoder 421 is connected to, for example, the rotation shaft of the motor 401M. The angle sensor 411 may include a plurality of encoders 421. This allows redundancy in the detection of the angular position of the rotation shaft of the motor 401M.
[0037] 4 has a U-phase coil 401u, a V-phase coil 401v, and a W-phase coil 401w. Drive control unit 301 and U-phase coil 401u are connected via a U-phase power line L1u, drive control unit 301 and V-phase coil 401v are connected via a V-phase power line L1v, and drive control unit 301 and W-phase coil 401w are connected via a W-phase power line L1w.
[0038] The encoder 421 may be, for example, a safety encoder or a non-safety encoder. The former safety encoder refers to a certified encoder that meets the safety requirements specified in robot safety standards such as ISO 10218-1:2011 "Robots and robotic devices - Safety requirements for industrial robots - Part 1." These safety requirements require that encoder failures be detected. Note that robot safety standards are not limited to the above standards.
[0039] On the other hand, the latter "non-safety encoder" refers to an encoder that has not been certified to meet such safety requirements. However, non-safety encoders have a proven track record as encoders for servo motors used in robots, so they are stable in quality and inexpensive. Therefore, using a non-safety encoder makes it easy to procure the encoder 421 and ensures stable operation of the robot system 1. Furthermore, according to this embodiment, even when a non-safety encoder is used, a malfunction of the encoder 421 can be detected by the function of the robot monitoring device 82 (described later), thereby sufficiently improving the safety performance of the robot system 1.
[0040] The encoder 421 may be either an absolute encoder or an incremental encoder. An absolute encoder is an encoder that can detect the absolute position of the rotation angle of the rotating shaft. An incremental encoder is an encoder that can detect the positional displacement of the rotation angle of the rotating shaft.
[0041] The encoder 421 outputs an encoder value E representing the angular position of the rotation shaft of the motor 401M as position feedback. The drive control unit 301 and the robot controller 81 receive the encoder value E.
[0042] The robot controller 81 outputs, for example, a motion command value M representing a target angular position of the rotation shaft of the motor 401M to the drive control unit 301. Note that the motion command value M is also output when the target angular position of the rotation shaft of the motor 401M is not changed, that is, when the motor 401M is to be kept stopped.
[0043] 1.1.3. Drive control unit Based on the operation command value M and the encoder value E, the drive control unit 301 generates a drive pulse voltage that controls the drive of the motor 401M so that the encoder value E approaches the target angular position specified by the operation command value M. This drive pulse voltage is then output to the motor 401M, controlling the drive of the motor 401M. As a result, the first joint 171 is controlled to a desired angle, and the attitude of the first arm 11 with respect to the base 4 is controlled to a desired attitude.
[0044] The drive control unit 301 shown in FIG. 4 includes an inverter unit 312 and a control circuit 314.
[0045] The inverter unit 312 is a three-parallel push-pull inverter circuit having six switching elements 313. The six switching elements 313 are controlled to be turned on or off by control signals output from a control circuit 314. This causes the inverter unit 312 to output three-phase drive pulse voltages Vu, Vv, and Vw to the motor 401M.
[0046] The control circuit 314 outputs a control signal to each switching element 313 based on the operation command value M and the encoder value E. In this embodiment, the control signal is a PWM signal for PWM-controlling (pulse width modulation) the inverter unit 312. Specifically, the waveform of the equivalent voltage of the PWM signal is set so that the three-phase drive pulse voltages Vu, Vv, and Vw have a sinusoidal current waveform with a phase difference of 120°. The control circuit 314 controls the on / off timing of the switching elements 313 using such PWM signals. As a result, the switching elements 313 control the current supplied from the converter unit 86, and the three-phase drive pulse voltages Vu, Vv, and Vw are output from the inverter unit 312.
[0047] Due to the phase difference and time change of the three-phase drive pulse voltages Vu, Vv, Vw, coil current flows through U-phase coil 401u, V-phase coil 401v, and W-phase coil 401w, causing the rotor of motor 401M to rotate.
[0048] In this embodiment, the drive control unit 301 includes pulse width detection units 316u, 316v, and 316w.
[0049] The pulse width detector 316u includes a U-phase branch line L2u, an input resistor R1, a shunt resistor R2, a photocoupler PC, an amplifier AMP, and a pulse width measurement unit PWC, and is configured to measure the pulse width PWu of the drive pulse voltage Vu.
[0050] The U-phase branch line L2u is a signal line that connects the U-phase power line L1u of the motor 401M to the ground potential GND. The input side resistor R1 and the shunt resistor R2 are resistive elements that are connected in series in this order from the U-phase power line L1u side on the U-phase branch line L2u.
[0051] The input terminal of the photocoupler PC is connected in parallel with the shunt resistor R2. The photocoupler PC shown in FIG. 4 includes a light-emitting element 316L and a light-receiving element 316P. The light-emitting element 316L emits light based on the potential difference between the driving pulse voltage Vu supplied to the U-phase branch wire L2u and the ground potential GND. The light-receiving element 316P receives the light and generates a photocurrent. The amplifier AMP converts the photocurrent into a voltage signal. This allows a pulse-shaped voltage signal corresponding to the pulse width PWu of the driving pulse voltage Vu to be input to the pulse width measurement unit PWC while electrically isolating the input and output of the photocoupler PC.
[0052] The light-emitting element 316L may be, for example, a light-emitting diode. The light-receiving element 316P may be, for example, a photodiode or a phototransistor. As the photocoupler PC, a bipolar photocoupler having two light-emitting elements 316L as shown in FIG. 4 is preferably used. Alternatively, a digital isolator may be used instead of the photocoupler PC.
[0053] The pulse width measurement unit PWC receives the pulse-shaped voltage signal output from the amplifier AMP and measures the pulse width PWu. This makes it possible to indirectly measure the pulse width PWu of the drive pulse voltage Vu. The pulse width measurement unit PWC may be, for example, a counter that has the function of measuring the pulse width of a voltage signal.
[0054] The pulse width detector 316v includes a V-phase branch line L2v, an input resistor R1, a shunt resistor R2, a photocoupler PC, an amplifier AMP, and a pulse width measurement unit PWC, and is capable of measuring the pulse width PWv of the drive pulse voltage Vv.
[0055] The V-phase branch line L2v is a signal line that connects the V-phase power line L1v of the motor 401M to the ground potential GND. Elements of the pulse width detector 316v other than the V-phase branch line L2v are the same as those of the pulse width detector 316u.
[0056] The pulse width detector 316w includes a W-phase branch line L2w, an input resistor R1, a shunt resistor R2, a photocoupler PC, an amplifier AMP, and a pulse width measurement unit PWC, and is capable of measuring the pulse width PWw of the drive pulse voltage Vw.
[0057] The W-phase branch line L2w is a signal line that connects the W-phase power line L1w of the motor 401M to the ground potential GND. Elements of the pulse width detector 316w other than the W-phase branch line L2w are the same as those of the pulse width detector 316u.
[0058] The pulse width detectors 316u, 316v, and 316w described above output pulse widths PWu, PWv, and PWw measured for the drive pulse voltages Vu, Vv, and Vw to the robot monitor device 82.
[0059] 1.2.Robot Control Device The robot control device 8 includes a robot controller 81 , a robot monitoring device 82 , a power cut-off unit 85 , and a converter unit 86 .
[0060] 1.2.1.Robot Controller As shown in Fig. 3, the robot controller 81 controls the operation of the drive control units 301-306, thereby controlling the operation of the robot 2. Specifically, the robot controller 81 outputs an operation command value M to the drive control units 301-306, as shown in Fig. 4, based on the detection results of the angle sensors 411-416 and a force detection unit, image sensor, depth sensor, etc. (not shown). Then, the robot controller 81 controls the operation conditions of the drive units 401-406, such as angular velocity and rotation angle, via the drive control units 301-306, respectively.
[0061] The hardware configuration of the robot controller 81 is not particularly limited, but in Fig. 3 it has a processor 912, a memory 914, and an external interface 916. These are connected to each other via an internal bus so that they can communicate with each other.
[0062] The processor 912 may be, for example, a CPU (Central Processing Unit). The processor 912 executes various programs stored in the memory 914 to realize the functions of the robot controller 81.
[0063] The processor 912 may be a field-programmable gate array (FPGA), an application-specific integrated circuit (ASIC), or the like.
[0064] Examples of the memory 914 include volatile memory such as RAM (Random Access Memory) and non-volatile memory such as ROM (Read Only Memory). Note that the memory 914 is not limited to being non-removable, and may be removable.
[0065] The memory 914 stores various programs as well as various data received by the external interface 916 and various data output from the robot 2.
[0066] Examples of the external interface 916 include a USB (Universal Serial Bus), RS-232C, a wired LAN (Local Area Network), and a wireless LAN.
[0067] 1.2.2. Robotic Monitoring Device The hardware configuration of the robot monitoring device 82 is not particularly limited, but in Fig. 3 it has a processor 922, a memory 924, and an external interface 926. These are connected to each other so that they can communicate with each other via an internal bus.
[0068] The memory 924 and the external interface 926 are similar to the memory 914 and the external interface 916 described above.
[0069] An example of the processor 922 is a CPU. The processor 922 executes various programs stored in the memory 924 to realize the functions of the robot monitoring device 82. The processor 922 may be an FPGA, an ASIC, or the like.
[0070] The robot monitoring device 82 monitors the operation of the robot 2 independently of the robot controller 81, thereby making it possible to further improve the reliability of the functional safety of the robot system 1.
[0071] 1.2.3.Power cutoff section Figure 5 is a detailed block diagram of the first joint unit 171 shown in Figure 3. The configuration of the first joint unit 171 is similar to the configurations of the second joint unit 172, the third joint unit 173, the fourth joint unit 174, the fifth joint unit 175, and the sixth joint unit 176. Therefore, in the following explanation, the first joint unit 171 will be explained as a representative based on Figures 4 and 5, and explanations of the other joint units will be omitted.
[0072] The power interruption unit 85 is provided on a power supply path 91 that electrically connects the AC power source 9 and the first joint unit 171. The drive control units 301 to 306 each receive power supply from the power supply path 91. Therefore, when the power interruption unit 85 interrupts the power supply path 91, the power supply to the drive control units 301 to 306 is interrupted, and the operation of the drive units 401 to 406 can be stopped.
[0073] 5 cuts off the power supply path 91 based on the cutoff signal B. Therefore, when the power cutoff unit 85 operates, the power supply to all of the drive control units 301 to 306 is cut off.
[0074] 1.2.4.Converter section The converter unit 86 is provided on the power supply path 91 between the power interrupter 85 and the first joint unit 171. The converter unit 86 shown in FIG. 4 is an AC-DC converter that has a bridge diode 862 and a smoothing capacitor 864 and converts AC to DC. The converter unit 86 then supplies the DC voltage to the inverter unit 312. Depending on the type of power source, the converter unit 86 may be omitted or may be replaced with another converter unit.
[0075] 1.3. Functions of the Robot Monitoring Device The robot monitoring device 82 shown in FIG. 5 includes a power signal acquisition unit 822, an encoder value acquisition unit 824, a motor stop determination unit 826, an encoder failure determination unit 828, and a shutoff signal output unit 830.
[0076] The power signal acquisition unit 822 acquires, as power signals, the pulse widths PWu, PWv, and PWw output from the drive control unit 301. Note that the power signals are not limited to the pulse widths PWu, PWv, and PWw, and may be other measurement values as long as they are measurement values of the drive pulse voltages Vu, Vv, and Vw (pulse width modulated voltages).
[0077] The encoder value acquisition unit 824 acquires the encoder value E output from the encoder 421 .
[0078] The motor stop determination unit 826 stores in advance stop determination conditions related to the pulse widths PWu, PWv, and PWw for determining that the motor 401M is stopped. When the pulse widths PWu, PWv, and PWw acquired by the power signal acquisition unit 822 satisfy the stop determination conditions, the motor stop determination unit 826 determines that the motor 401M is stopped. When it is determined that the motor 401M is stopped, the motor stop determination unit 826 outputs a motor stop signal.
[0079] The encoder failure determination unit 828 stores in advance a determination condition for determining that the rotating shaft of the motor 401M is rotating, which is a determination condition related to the encoder value E output from the encoder 421. When the motor stop signal described above is output and it is determined from the encoder value E that the rotating shaft of the motor 401M is rotating, the encoder failure determination unit 828 determines that the encoder 421 is faulty.
[0080] The shutdown signal output unit 830 outputs a shutdown signal B based on the determination result output by the encoder failure determination unit 828.
[0081] In the above explanation, only the robot monitoring device 82 acquires the power signal output from the drive control unit 301 and the encoder value E output from the encoder 421, but the robot monitoring device 82 may also be configured to similarly acquire power signals output from other drive control units 302 to 306 and encoder values output from other encoders.
[0082] 1.4. Encoder fault diagnosis method Next, a fault diagnosis method for an encoder according to the first embodiment will be described. In the following description, a method using the functions of the robot monitoring device 82 described above will be taken as an example. In the following description, a fault diagnosis method for the encoder 421 provided in the first joint 171 will be described as a representative example, but the fault diagnosis method for the encoders provided in the second joint 172 to the sixth joint 176 is similar to the following.
[0083] FIG. 6 is a flowchart for explaining the encoder fault diagnosis method according to the first embodiment.
[0084] The encoder failure diagnosis method shown in FIG. 6 includes a power signal acquisition step S102, an encoder value acquisition step S104, a motor stop determination step S106, an encoder failure determination step S108, and a power cut-off step S110.
[0085] 1.4.1. Power signal acquisition process In the power signal acquisition step S102, the power signal acquisition unit 822 acquires, as power signals, pulse widths PWu, PWv, and PWw of the drive pulse voltages Vu, Vv, and Vw (pulse width modulated voltages) output from the drive control unit 301. Specifically, the power signal acquisition unit 822 acquires the pulse widths PWu, PWv, and PWw detected by the pulse width detection units 316u, 316v, and 316w.
[0086] 1.4.2. Encoder value acquisition process In the encoder value acquisition step S104, the encoder value acquisition unit 824 acquires the encoder value E output from the encoder 421. The encoder value E is rotation information of the rotary shaft of the motor 401M.
[0087] 1.4.3. Motor stop determination process In the motor stop determination step S106, the motor stop determination unit 826 determines whether the pulse widths PWu, PWv, and PWw of the drive pulse voltages Vu, Vv, and Vw satisfy a stop determination condition. The stop determination condition is, for example, a range for the pulse widths PWu, PWv, and PWw, and when satisfied, the motor 401M is considered to be stopped. When the pulse widths PWu, PWv, and PWw satisfy the stop determination condition, the motor stop determination unit 826 determines that the motor 401M has stopped. When it is determined that the motor 401M has stopped, the motor stop determination unit 826 outputs a motor stop signal. On the other hand, when the pulse widths PWu, PWv, and PWw do not satisfy the stop determination condition, the motor stop determination unit 826 determines that the motor 401M is not stopped and is still rotating. In this case, the flow returns to the power signal acquisition step S102. In this case, a fault diagnosis of the encoder 421 may be performed using a method other than the method described above.
[0088] In this embodiment, the stop determination conditions include (a) the interrelationship between pulse widths PWu, PWv, and PWw, and (b) the change over time of pulse widths PWu, PWv, and PWw. The stop determination conditions (a) and (b) will be explained below in order.
[0089] (a) Interrelationship between pulse widths PWu, PWv, and PWw In the drive control unit 301, the inverter unit 312 is PWM controlled by the PWM signal output from the control circuit 314. As a result, three-phase drive pulse voltages Vu, Vv, and Vw that are out of phase with one another are output from the inverter unit 312. Therefore, the three-phase drive pulse voltages Vu, Vv, and Vw have different duty ratios at the same time.
[0090] FIG. 7 is a diagram showing an example of waveforms of three-phase drive pulse voltages Vu, Vv, Vw, waveforms of equivalent voltages EVu, EVv, EVw, and waveforms of three-phase coil currents CCu, CCv, CCw.
[0091] The waveforms of the equivalent voltages EVu, EVv, and EVw shown in FIG. 7 are waveforms that represent the time change of the equivalent voltages converted from the duty ratios calculated from the three-phase drive pulse voltages Vu, Vv, and Vw shown in FIG. 7. As shown in FIG. 7, the waveforms of the three-phase drive pulse voltages Vu, Vv, and Vw are pulse waves whose duty ratios change over time. Since the inverter unit 312 is PWM controlled, this time change changes equivalently into a sine wave, so the waveforms of the equivalent voltages EVu, EVv, and EVw shown in FIG. 7 become sine wave waveforms. This allows the rotor of the motor 401M to rotate smoothly.
[0092] The duty ratio is the ratio of the on-time to the on-off cycle of the drive pulse voltages Vu, Vv, and Vw. Therefore, the larger the duty ratio, the larger the amplitude of the equivalent voltages EVu, EVv, and EVw. If at least two of the drive pulse voltages Vu, Vv, and Vw have different duty ratios at the same time, a coil current will flow through one of the U-phase coil 401u, V-phase coil 401v, and W-phase coil 401w, causing the rotor to rotate.
[0093] Therefore, in the stop determination condition (a), the pulse widths PWu, PWv, and PWw are defined as the duty ratios of the drive pulse voltages Vu, Vv, and Vw detected at the same time by the drive control unit 301. The stop determination condition (a) is the following equation (1) regarding the pulse widths PWu, PWv, and PWw.
[0094] 50%-α <PWu<50%+α、かつ、50%-α<PWv<50%+α、かつ、50%-α<PWw<50%+α … (1)
[0095] The above formula (1) specifies that pulse widths PWu, PWv, and PWw are each approximately 50%. When pulse widths PWu, PWv, and PWw are each approximately 50%, almost no coil current flows through U-phase coil 401u, V-phase coil 401v, or W-phase coil 401w. Therefore, when pulse widths PWu, PWv, and PWw satisfy the above formula (1), it can be determined that motor 401M is stopped. Formula (1) provides a range for the stop determination condition, preventing unintended fluctuations in pulse widths PWu, PWv, and PWw from destabilizing the fault diagnosis process.
[0096] Note that α in the above formula (1) varies depending on various factors, such as the structure and size of the motor 401M. This is because the duty ratio may fluctuate even when the motor 401M is considered to be stopped, and the magnitude of this fluctuation differs depending on these factors. Therefore, α can be found through experiments, simulations, etc. As an example, α is set to 5% or less, and preferably 1% or less.
[0097] (b) Time variation of pulse widths PWu, PWv, and PWw As the three-phase drive pulse voltages Vu, Vv, and Vw change at a predetermined frequency, the coil currents flowing through the U-phase coil 401u, V-phase coil 401v, and W-phase coil 401w change sequentially. In other words, as the coils through which the coil currents flow change, the rotor of the motor 401M rotates.
[0098] Therefore, the amounts of change in pulse widths PWu, PWv, and PWw are defined as TPWu, TPWv, and TPWw, respectively. The stop determination condition (b) is the following equation (2) regarding the amounts of change TPWu, TPWv, and TPWw.
[0099] -β <TPWu<+β、かつ、-β<TPWv<+β、かつ、-β<TPWw<+β … (2)
[0100] The above formula (2) specifies that the variations TPWu, TPWv, and TPWw are minute. If the variations TPWu, TPWv, and TPWw are minute, the coil through which the coil current flows hardly changes, and the rotor of the motor 401M hardly rotates. Therefore, when the variations TPWu, TPWv, and TPWw satisfy the above formula (2), it can be determined that the motor 401M has stopped. The above formula (2) provides a range for the stop determination condition, which prevents the fault diagnosis process from becoming unstable due to unintended fluctuations in the variations TPWu, TPWv, and TPWw.
[0101] Note that β in the above formula (2) is set appropriately depending on the switching sequence in which the coil current changes. Therefore, β can be found through experiments, simulations, etc. As an example, β is set to less than half the minimum step width of the switching sequence. For example, when the change period of the three-phase drive pulse voltages Vu, Vv, and Vw is 360°, the minimum step width is 30°, so β is preferably set to less than 15°.
[0102] FIG. 8 is a table showing the magnetic poles excited in U-phase coil 401u, V-phase coil 401v, and W-phase coil 401w in an example in which the switching sequence of switching elements 313 in inverter unit 312 is divided into 12 steps No. 1 to No. 12. As shown in FIG. 8, the magnetic poles change with each step transition. This corresponds to the rotor rotating 30°. Therefore, it is preferable that the amplitude of the changes TPWu, TPWv, and TPWw required to determine that motor 401M is stopped be less than the minimum step width of the switching sequence.
[0103] The stop determination conditions used in the motor stop determination step S106 may include both of the above (a) and (b).
[0104] Furthermore, the stop determination condition is a condition that assumes that power is being supplied to the motor 401M, and the motor stop determination unit 826 determines that the motor 401M has stopped when this stop determination condition is met. Therefore, even when a non-safety encoder is used as the encoder 421, the motor stop determination unit 826 can detect that the motor 401M has stopped even when power to the motor 401M has not been cut off. This allows the robot monitoring device 82 to implement the SOS (Safely operating stop, stop monitoring) function and the SS2 (Safely stop 2, controlled stop without cut-off) function, which are among the safety functions defined in the European safety standard EN ISO13849-1:2008 Category 3 PLd.
[0105] 1.4.4. Encoder failure determination process In the encoder failure determination step S108, the encoder failure determination unit 828 determines whether it is determined from the encoder value E that the rotary shaft of the motor 401M is rotating. The determination condition at this time is that the encoder value E does not change, but the determination condition is set appropriately taking into account fluctuations in the encoder value E. The fluctuation range can be found, for example, through experiments, simulations, etc.
[0106] When the motor stop signal described above is output and the encoder value E indicates that the rotating shaft of the motor 401M is rotating, the encoder failure determination unit 828 determines that the encoder 421 is faulty. This determination is made because the encoder value E does not reflect the motor stop signal even though it is output. The motor stop signal is a signal output based on the drive pulse voltages Vu, Vv, and Vw that drive the rotation of the rotating shaft of the motor 401M. In other words, the drive pulse voltages Vu, Vv, and Vw are one of the power signals that accurately reflect the rotation state of the motor 401M. Therefore, if the encoder value E does not reflect that the rotating shaft of the motor 401M has stopped even though the motor stop signal is output, it can be said that there is a high probability that the encoder 421 is faulty.
[0107] On the other hand, when the motor stop signal is being output and it is determined from the encoder value E that the rotating shaft of the motor 401M has stopped, the encoder failure determination unit 828 determines that the encoder 421 is normal. In this case, the flow returns to the power signal acquisition step S102. In this case, a failure diagnosis of the encoder 421 may be performed using a method other than this method.
[0108] If a failure in the encoder 421 can be determined using the process described above, it is possible to detect a failure in the encoder 421 even when the rotating shaft of the motor 401M is stopped. Furthermore, the robot monitoring device 82 having such a failure diagnosis function can provide safety functions that meet the safety requirements stipulated in the robot safety standard, even when a non-safety encoder is used as the encoder 421.
[0109] If it is determined that the encoder 421 has failed, the encoder failure determination unit 828 outputs the determination result to the robot controller 81 as necessary. Based on the determination result, the robot controller 81 may notify the user that the encoder 421 has failed.
[0110] 1.4.5. Power cut-off process As shown in FIG. 6, the fault diagnosis method for an encoder according to this embodiment also includes an optional power cut-off step S110.
[0111] In the power cut-off step S110, the cut-off signal output unit 830 outputs the cut-off signal B based on the determination result output from the encoder failure determination unit 828. That is, when the determination result indicates that the encoder 421 has failed, the cut-off signal B is output.
[0112] 5 receives this cutoff signal B and cuts off the power supply line 91. This stops the operation of the driving units 401 to 406. As a result, it is possible to prevent the driving units 401 to 406 from continuing to operate when it has been determined that the encoder 421 has failed, thereby improving the safety performance of the robot system 1.
[0113] 1.5. Advantages of the First Embodiment As described above, the encoder fault diagnosis method according to this embodiment is a method for diagnosing a fault in the encoder 421, which has the function of detecting the rotation of the rotation shaft of the motor 401M provided in the first joint 171 of the robot arm 10 and outputting the encoder value E, and includes a power signal acquisition process S102, an encoder value acquisition process S104, a motor stoppage determination process S106, and an encoder fault determination process S108.
[0114] In a power signal acquisition process S102, pulse widths PWu, PWv, and PWw (power signals based on pulse width modulation signals) of drive pulse voltages Vu, Vv, and Vw supplied to the motor 401M are acquired. In an encoder value acquisition process S104, an encoder value E is acquired. In a motor stop determination process S106, when the pulse widths PWu, PWv, and PWw satisfy a stop determination condition for determining that the motor 401M is stopped, it is determined that the motor 401M is stopped, and a motor stop signal is output. In an encoder failure determination process S108, when a motor stop signal is output and it is determined from the encoder value E that the rotating shaft of the motor 401M is rotating, it is determined that the encoder 421 is faulty.
[0115] With this configuration, even when the rotating shaft of the motor 401M is stopped, it is possible to determine that the motor 401M has stopped based on the drive pulse voltages Vu, Vv, and Vw, without relying on the operation command value M. In other words, the robot monitoring device 82 can confirm that the motor 401M has stopped from the power signal, and can detect a failure in the encoder 421 even when the rotating shaft of the motor 401M is stopped. This makes it possible to realize a robot monitoring device 82 that can provide safety functions that comply with the safety requirements stipulated in the robot safety standard, even when a non-safety encoder is used as the encoder 421. As a result, it is possible to achieve both low cost and high safety performance in the robot system 1.
[0116] Furthermore, it is preferable that motor 401M is a brushless motor driven by three-phase drive pulse voltages Vu, Vv, and Vw, each consisting of a U phase, a V phase, and a W phase. This makes it possible to easily control the drive of motor 401M by adjusting the duty ratio of drive pulse voltages Vu, Vv, and Vw. It is also preferable that motors other than motor 401M are brushless motors.
[0117] Furthermore, in the encoder fault diagnosis method according to this embodiment, the power signal acquired in the power signal acquisition step S102 includes a pulse width PWu of the drive pulse voltage Vu for the U phase, a pulse width PWv of the drive pulse voltage Vv for the V phase, and a pulse width PWw of the drive pulse voltage Vw for the W phase.
[0118] As a result, in the motor stop determination step S106, it can be determined whether or not the motor 401M has stopped based on the power signal that reliably reflects the rotation state of the motor 401M. In other words, since the pulse widths PWu, PWv, and PWw can be said to directly reflect the rotation state of the motor 401M, by using these as determination information, it can be reliably determined whether or not the motor 401M has stopped without referring to the operation command value M. As a result, in the encoder failure determination step S108, the reliability of the determination whether or not the encoder 421 has failed can be improved.
[0119] Furthermore, in the encoder fault diagnosis method according to this embodiment, the power signal acquired in the power signal acquisition step S102 may include the amount of change TPWu in the pulse width PWu of the drive pulse voltage Vu for the U phase, the amount of change TPWv in the pulse width PWv of the drive pulse voltage Vv for the V phase, and the amount of change TPWw in the pulse width PWw of the drive pulse voltage Vw for the W phase.
[0120] As in the case where the power signal includes pulse widths PWu, PWv, and PWw, by including the amounts of change TPWu, TPWv, and TPWw in the pulse widths PWu, PWv, and PWw, it is possible to determine whether the motor 401M has stopped in the motor stop determination step S106 based on the power signal that reliably reflects the rotation state of the motor 401M. This increases the reliability of the determination of whether the encoder 421 has failed in the encoder failure determination step S108.
[0121] Furthermore, the robot monitoring device 82 according to this embodiment monitors the operation of a robot 2, which includes a motor 401M provided in the first joint 171 of the robot arm 10 and an encoder 421 that detects rotation of the rotation shaft of the motor 401M and outputs an encoder value E. The robot monitoring device 82 includes a power signal acquisition unit 822, an encoder value acquisition unit 824, a motor stop determination unit 826, and an encoder failure determination unit 828. The power signal acquisition unit 822 acquires pulse widths PWu, PWv, and PWw (power signals based on pulse-width modulation signals) of drive pulse voltages Vu, Vv, and Vw supplied to the motor 401M. The encoder value acquisition unit 824 acquires the encoder value E. Furthermore, when the pulse widths PWu, PWv, and PWw satisfy a stop determination condition for determining that the motor 401M has stopped, the motor stop determination unit 826 determines that the motor 401M has stopped and outputs a motor stop signal. Furthermore, when a motor stop signal is being output and it is determined from the encoder value E that the rotary shaft of the motor 401M is rotating, the encoder failure determination unit 828 determines that the encoder 421 is at fault.
[0122] With this configuration, it is possible to realize a robot monitoring device 82 that can detect a failure in the encoder 421 even when the rotation shaft of the motor 401M is stopped, without relying on the operation command value M. As a result, it is possible to realize a robot monitoring device 82 that can provide safety functions that comply with the safety requirements stipulated in the robot safety standard, even when a non-safety encoder is used as the encoder 421. As a result, it is possible to achieve both low costs and high safety performance in the robot system 1.
[0123] The robot system 1 according to this embodiment also includes a robot 2, a robot controller 81 that controls the operation of the robot 2, and a robot monitoring device .
[0124] Such a robot system 1 is a system that can provide safety functions that comply with the safety requirements stipulated in the robot safety standard, even when a non-safety encoder is used as the encoder 421. Furthermore, this safety function is realized in the robot monitoring device 82 without relying on the robot controller 81. Therefore, a robot system 1 with high safety performance can be realized.
[0125] 2. Second embodiment Next, a fault diagnosis method for an encoder, a robot monitoring device, and a robot system according to a second embodiment will be described.
[0126] Fig. 9 is a partially enlarged block diagram showing the main parts of a robot system 1A according to the second embodiment. Of the first joint 171 to sixth joint 176, all of which are joints located between the arms, Fig. 9 shows only the first joint 171 in detail. In Fig. 9, the same components as those in the first embodiment are denoted by the same reference numerals.
[0127] The second embodiment will be described below, but the following description will focus on the differences from the first embodiment, and a description of similar points will be omitted.
[0128] The robot system 1A according to the second embodiment is similar to the robot system 1 according to the first embodiment, except that the drive control unit 301A is configured to detect a power signal based on the coil currents CCu, CCv, and CCw flowing through the motor 401M.
[0129] 2.1. Drive control unit The drive control section 301A shown in FIG. 9 includes current value detection sections 317u, 317v, and 317w.
[0130] The current value detector 317u includes a shunt resistor R3, a U-phase current detection line L3u, and an isolated A / D converter ADC, and has a function of measuring a current value Iu of a coil current CCu flowing through the U-phase power line L1u.
[0131] The shunt resistor R3 is a resistive element inserted in the U-phase power line L1u. The isolated A / D converter ADC is connected in parallel with the shunt resistor R3 via the U-phase current detection line L3u. The isolated A / D converter ADC may be, for example, a device incorporating elements such as a ΔΣ modulator, an isolation element (photocoupler), and a digital filter.
[0132] It should be noted that various current sensors, such as a cored current sensor or a coreless current sensor, may be used in place of the shunt resistor R3 and the isolated A / D conversion unit ADC.
[0133] The current value detector 317v includes a shunt resistor R3, a V-phase current detection line L3v, and an isolated A / D converter ADC, and has a function of measuring the current value Iv of the coil current CCv flowing through the V-phase power line L1v.
[0134] The current value detector 317w includes a shunt resistor R3, a W-phase current detection line L3w, and an isolated A / D converter ADC, and has a function of measuring a current value Iw of a coil current CCw flowing through the W-phase power line L1w.
[0135] The current value detectors 317u, 317v, and 317w output the current values Iu, Iv, and Iw of the coil currents CCu, CCv, and CCw to the robot monitor device 82.
[0136] 2.2. Encoder fault diagnosis method Next, a fault diagnosis method for an encoder according to the second embodiment will be described. In the following description, a method using the functions of the robot monitoring device 82 described above will be described as an example with reference to Fig. 6. In the following description, a fault diagnosis method for the encoder 421 provided in the first joint 171 will be described as a representative example, but the fault diagnosis method for the encoders provided in the second joint 172 to the sixth joint 176 is also similar to the method described below.
[0137] 2.2.1. Power signal acquisition process In the power signal acquisition step S102, the power signal acquisition unit 822 acquires, as power signals, the current values Iu, Iv, and Iw of the coil currents CCu, CCv, and CCw output from the drive control unit 301A. Specifically, the power signal acquisition unit 822 acquires the current values Iu, Iv, and Iw detected by the current value detection units 317u, 317v, and 317w.
[0138] 2.2.2. Encoder value acquisition process In the encoder value acquisition step S104, the encoder value acquisition unit 824 acquires the encoder value E output from the encoder 421, as in the first embodiment.
[0139] 2.2.3. Motor stop determination process In the motor stop determination step S106, the motor stop determination unit 826 determines whether the current values Iu, Iv, and Iw of the coil currents CCu, CCv, and CCw satisfy a stop determination condition. The stop determination condition is, for example, a range for the current values Iu, Iv, and Iw, and when satisfied, the motor 401M is considered to be stopped. When the current values Iu, Iv, and Iw satisfy the stop determination condition, the motor stop determination unit 826 determines that the motor 401M has stopped. When it is determined that the motor 401M has stopped, the motor stop determination unit 826 outputs a motor stop signal. On the other hand, when the current values Iu, Iv, and Iw do not satisfy the stop determination condition, the motor stop determination unit 826 determines that the motor 401M has not stopped. In this case, the flow returns to the power signal acquisition step S102. In this case, a fault diagnosis of the encoder 421 may be performed using a method other than the method described above.
[0140] In this embodiment, the stop determination conditions include (c) the interrelationship between the current values Iu, Iv, and Iw, and (d) the time variation of the current values Iu, Iv, and Iw. The stop determination conditions (c) and (d) will be explained below in order.
[0141] (c) Interrelationship between current values Iu, Iv, and Iw In the drive control unit 301A, the inverter unit 312 is PWM-controlled by the PWM signal output from the control circuit 314. As a result, three-phase drive pulse voltages Vu, Vv, and Vw, which are out of phase with each other, are output from the inverter unit 312. Coil currents CCu, CCv, and CCw, which are out of phase with each other, flow through the U-phase power line L1u, V-phase power line L1v, and W-phase power line L1w. Therefore, the three-phase coil currents CCu, CCv, and CCw have different current values Iu, Iv, and Iw at the same time.
[0142] Figure 7 shows an example of the waveforms of the three-phase coil currents CCu, CCv, and CCw. As shown in Figure 7, the waveforms of the coil currents CCu, CCv, and CCw are sinusoidal, just like the equivalent voltages EVu, EVv, and EVw. If the current values Iu, Iv, and Iw of the coil currents CCu, CCv, and CCw at the same time are all very small, the rotor of motor 401M can be stopped.
[0143] Therefore, the stop determination condition (c) can be expressed as the following equation (3) regarding the current values Iu, Iv, and Iw detected at the same time. |Iu|<γ, and |Iv|<γ, and |Iw|<γ … (3)
[0144] The above formula (3) specifies that the current values Iu, Iv, and Iw are each very small. If the current values Iu, Iv, and Iw are each very small, almost no coil current flows through U-phase coil 401u, V-phase coil 401v, or W-phase coil 401w. Therefore, when the current values Iu, Iv, and Iw satisfy the above formula (3), it can be determined that motor 401M is stopped. The above formula (3) provides a certain degree of latitude for the stop determination condition, thereby preventing the fault diagnosis process from becoming unstable due to unintended fluctuations in the current values Iu, Iv, and Iw.
[0145] Note that γ in the above formula (3) varies depending on various factors, such as the structure and size of the motor 401M. This is because even when the motor 401M is considered to be stopped, the duty ratio may fluctuate and the coil currents CCu, CCv, and CCw may flow, and the magnitude of this fluctuation varies depending on these factors. Therefore, γ can be found through experiments, simulations, etc. As an example, γ is set to 10% or less of the maximum values of the currents Iu, Iv, and Iw, and preferably 5% or less.
[0146] (d) Changes in current values Iu, Iv, and Iw over time As the three-phase drive pulse voltages Vu, Vv, and Vw change at a predetermined frequency, the coil currents CCu, CCv, and CCw flowing through the U-phase coil 401u, V-phase coil 401v, and W-phase coil 401w change sequentially. In other words, as the coils through which the coil currents CCu, CCv, and CCw flow change, the rotor of the motor 401M rotates.
[0147] Therefore, the amounts of change in the current values Iu, Iv, Iw are defined as TIu, TIv, TIw, and the stop determination condition (d) can be expressed as the following equation (4) regarding the amounts of change TIu, TIv, TIw.
[0148] -δ <TIu<+δ、かつ、-δ<TIv<+δ、かつ、-δ<TIw<+δ … (4)
[0149] The above formula (4) specifies that the variations TIu, TIv, and TIw are minute. If the variations TIu, TIv, and TIw are minute, the coils through which the coil currents CCu, CCv, and CCw flow barely change, and the rotor of the motor 401M hardly rotates. Therefore, when the variations TIu, TIv, and TIw satisfy the above formula (4), it can be determined that the motor 401M has stopped. The above formula (4) provides a certain degree of latitude for the stop determination condition, thereby preventing the fault diagnosis process from becoming unstable due to unintended fluctuations in the variations TIu, TIv, and TIw.
[0150] Note that δ in the above formula (4) is set appropriately depending on the switching sequence in which the coil currents CCu, CCv, and CCw change. Therefore, δ can be found through experiments, simulations, or the like. As an example, δ is set to less than half the minimum step width of the switching sequence. For example, if the change period of the three-phase coil currents CCu, CCv, and CCw is 360°, the minimum step width is 30°, so δ is preferably set to less than 15°.
[0151] The stop determination conditions used in the motor stop determination step S106 may include both of the above (c) and (d).
[0152] 2.2.4. Encoder failure determination process In the encoder failure determination step S108, similarly to the first embodiment, the encoder failure determination unit 828 determines from the encoder value E whether it is determined that the rotary shaft of the motor 401M is rotating.
[0153] 2.2.5. Power cut-off process Furthermore, the fault diagnosis method for an encoder according to this embodiment also includes the power cut-off step S110, which is an optional step, as in the first embodiment. In the second embodiment as described above, the same effects as in the first embodiment can be obtained.
[0154] 2.3. Advantages of the Second Embodiment As described above, the encoder fault diagnosis method according to this embodiment includes the power signal acquisition step S102, the encoder value acquisition step S104, the motor stoppage determination step S106, and the encoder fault determination step S108.
[0155] In a power signal acquisition process S102, current values Iu, Iv, and Iw (power signals based on the coil currents) of coil currents CCu, CCv, and CCw flowing through the motor 401M are acquired. In an encoder value acquisition process S104, an encoder value E is acquired. In a motor stop determination process S106, when the current values Iu, Iv, and Iw satisfy a stop determination condition for determining that the motor 401M is stopped, it is determined that the motor 401M is stopped, and a motor stop signal is output. In an encoder failure determination process S108, when a motor stop signal is output and it is determined from the encoder value E that the rotating shaft of the motor 401M is rotating, it is determined that the encoder 421 is faulty.
[0156] With this configuration, even when the rotating shaft of the motor 401M is stopped, it is possible to determine whether the motor 401M has stopped based on the coil currents CCu, CCv, and CCw, without relying on the operation command value M. As a result, the robot monitoring device 82 can confirm that the motor 401M has stopped from the power signal, and can detect a failure in the encoder 421 even when the rotating shaft of the motor 401M is stopped. This makes it possible to realize a robot monitoring device 82 that can provide safety functions that comply with the safety requirements stipulated in the robot safety standard, even when a non-safety encoder is used as the encoder 421. As a result, it is possible to achieve both low cost and high safety performance in the robot system 1.
[0157] Furthermore, in the encoder fault diagnosis method according to this embodiment, the power signal acquired in the power signal acquisition step S102 may include the current value Iu of the coil current CCu relating to the U phase, the current value Iv of the coil current CCv relating to the V phase, and the current value Iw of the coil current CCw relating to the W phase.
[0158] As a result, in the motor stop determination step S106, it can be determined whether or not the motor 401M has stopped based on the power signal that reliably reflects the rotation state of the motor 401M. In other words, since the current values Iu, Iv, and Iw can be said to directly reflect the rotation state of the motor 401M, by using these as determination information, it can be reliably determined whether or not the motor 401M has stopped without referring to the operation command value M. As a result, in the encoder failure determination step S108, the reliability of the determination whether or not the encoder 421 has failed can be improved.
[0159] Furthermore, in the encoder fault diagnosis method according to this embodiment, the power signal acquired in the power signal acquisition step S102 includes the change amount TIu in the current value Iu of the coil current CCu relating to the U phase, the change amount TIv in the current value Iv of the coil current CCv relating to the V phase, and the change amount TIw in the current value Iw of the coil current CCw relating to the W phase.
[0160] As in the case where the power signal includes the current values Iu, Iv, and Iw, by including the amounts of change TIu, TIv, and TIw in the current values Iu, Iv, and Iw, it is possible to determine whether the motor 401M has stopped in the motor stop determination step S106 based on the power signal that reliably reflects the rotation state of the motor 401M. This increases the reliability of the determination of whether the encoder 421 has failed in the encoder failure determination step S108.
[0161] Furthermore, the robot monitoring device 82 according to this embodiment monitors the operation of a robot 2 equipped with a motor 401M and an encoder 421. The robot monitoring device 82 includes a power signal acquisition unit 822, an encoder value acquisition unit 824, a motor stop determination unit 826, and an encoder failure determination unit 828. The power signal acquisition unit 822 acquires current values Iu, Iv, and Iw (power signals based on the coil currents) of coil currents CCu, CCv, and CCw flowing through the motor 401M. The encoder value acquisition unit 824 acquires an encoder value E. Furthermore, when the current values Iu, Iv, and Iw satisfy a stop determination condition for determining that the motor 401M has stopped, the motor stop determination unit 826 determines that the motor 401M has stopped and outputs a motor stop signal. Furthermore, when a motor stop signal is being output and it is determined from the encoder value E that the rotary shaft of the motor 401M is rotating, the encoder failure determination unit 828 determines that the encoder 421 is at fault.
[0162] With this configuration, it is possible to realize a robot monitoring device 82 that can detect a failure in the encoder 421 even when the rotation shaft of the motor 401M is stopped, without relying on the operation command value M. As a result, it is possible to realize a robot monitoring device 82 that can provide safety functions that comply with the safety requirements stipulated in the robot safety standard, even when a non-safety encoder is used as the encoder 421. As a result, it is possible to achieve both low costs and high safety performance in the robot system 1.
[0163] Although the encoder fault diagnosis method, robot monitoring device, and robot system of the present invention have been described above based on the illustrated embodiments, the present invention is not limited to the above embodiments.
[0164] For example, the robot monitoring device and robot system of the present invention may be configured such that the configuration of each part of the above-described embodiment is replaced with any configuration having similar functions, or may be configured such that any other components are added to the above-described embodiment.
[0165] Furthermore, the encoder fault diagnosis method of the present invention may be configured by adding any desired process to the above-described embodiment. [Explanation of symbols]
[0166] REFERENCE SIGNS LIST 1...robot system, 1A...robot system, 2...robot, 4...base, 8...robot control device, 9...AC power supply, 10...robot arm, 11...first arm, 12...second arm, 13...third arm, 14...fourth arm, 15...fifth arm, 16...sixth arm, 81...robot controller, 82...robot monitoring device, 85...power cut-off unit, 86...converter unit, 91...power supply path, 101...floor, 171...first joint unit, 172...second joint unit, 173...third joint unit, 174...fourth joint unit, 175...fifth joint unit, 176...sixth joint unit, 301...drive control unit, 301A...drive control unit, 302...drive control unit, 303...drive control unit, 304...drive control unit, 305...drive control unit, 306...drive control unit, 312...inverter unit, 313...switching element, 314...control circuit, 316L...light-emitting element, 316P...light-receiving element, 316u...pulse width detection unit, 316v...pulse width detection unit, 316w...pulse width detection unit, 317u...current value detection unit, 317v...current value detection unit, 317w...current value detection unit, 401...drive unit, 401M...motor, 401u...U-phase coil, 401v...V-phase coil, 401w...W-phase coil, 402...drive driving unit, 402M...motor, 403...driving unit, 403M...motor, 404...driving unit, 404M...motor, 405...driving unit, 405M...motor, 406...driving unit, 406M...motor, 411...angle sensor, 412...angle sensor, 413...angle sensor, 414...angle sensor, 415...angle sensor, 416...angle sensor, 421...encoder, 822...power signal acquisition unit, 824...encoder value acquisition unit, 826...motor stop determination unit, 828...encoder failure determination unit, 830...shutdown signal output unit, 862...bridge diode, 864 ...smoothing capacitor, 912...processor, 914...memory, 916...external interface, 922...processor, 924...memory, 926...external interface, ADC...isolated A / D conversion unit, AMP...amplifier, B...shutdown signal, CCu...coil current, CCv...coil current, CCw...coil current, E...encoder value, EVu...equivalent voltage, EVv...equivalent voltage, EVw...equivalent voltage, GND...ground potential, Iu...current value, Iv...current value, Iw...current value, L1u...U-phase power line, L1v...V-phase power line, L1w...W-phase power line, L2u...U-phase branch line,L2v...V-phase branch wire, L2w...W-phase branch wire, L3u...U-phase current detection wire, L3v...V-phase current detection wire, L3w...W-phase current detection wire, M...operation command value, O1...1st rotating shaft, O2...2nd rotating shaft, O3...3rd rotating shaft, O4...4th rotating shaft, O5...5th rotating shaft, O6...6th rotating shaft, PC...photocoupler, PWC...pulse width measurement unit, PWu...pulse width, PWv...pulse width, PWw...pulse width, R1...input side resistor, R2 ...shunt resistor, R3...shunt resistor, S102...power signal acquisition process, S104...encoder value acquisition process, S106...motor stop determination process, S108...encoder failure determination process, S110...power cut-off process, TIu...change amount, TIv...change amount, TIw...change amount, TPWu...change amount, TPWv...change amount, TPWw...change amount, Vu...drive pulse voltage, Vv...drive pulse voltage, Vw...drive pulse voltage,
Claims
1. A robot arm having a joint detects the rotation of a rotation shaft of a motor provided at the joint. and a method for diagnosing a fault in an encoder having a function of outputting an encoder value. hand, obtaining a power signal of the motor; obtaining the encoder value; The power signal satisfies a stop determination condition for determining that the motor is stopped. determining that the motor is stopped when the motor is stopped, and outputting a motor stop signal; The motor stop signal is output, and the encoder value indicates that the motor If it is determined that the rotary shaft of the encoder is rotating, it is determined that the encoder is faulty. and and The power signal may be a pulse width modulated voltage supplied to the motor or a voltage flowing through the motor. is the coil current The motor is driven by the three-phase pulse width modulated voltage consisting of U-phase, V-phase, and W-phase. It is a brushless motor driven by The power signal is (a) the pulse width of the pulse-width modulated voltage for the U phase, a pulse width of a pulse width modulated voltage, and a pulse width of the pulse width modulated voltage for the W phase; (b) the change in pulse width of the pulse-width modulated voltage for the U phase, The amount of change in the pulse width of the pulse width modulated voltage and the amount of change in the pulse width modulated voltage for the W phase The amount of change in pressure pulse width, (c) the amount of change in the waveform of the coil current for the U phase, and the amount of change in the waveform of the coil current for the V phase and a waveform change amount of the coil current related to the W phase. A fault diagnosis method for an encoder, comprising:
2. A robot arm having a joint, a motor provided at the joint, and the motor an encoder having a function of detecting the rotation of the rotary shaft and outputting an encoder value; A robot monitoring device for monitoring the operation of a robot, a power signal acquisition unit that acquires a power signal of the motor; an encoder value acquisition unit that acquires the encoder value; The power signal satisfies a stop determination condition for determining that the motor is stopped. When the motor is stopped, the system determines that the motor is stopped and outputs a motor stop signal. a motor stop determination unit; The motor stop signal is output, and the encoder value indicates that the motor If it is determined that the rotary shaft of the encoder is rotating, it is determined that the encoder is faulty. an encoder failure determination unit having a function of Equipped with The power signal may be a pulse width modulated voltage supplied to the motor or a voltage flowing through the motor. is the coil current The motor is driven by the three-phase pulse width modulated voltage consisting of U-phase, V-phase, and W-phase. It is a brushless motor driven by The power signal is (a) the pulse width of the pulse-width modulated voltage for the U phase, a pulse width of a pulse width modulated voltage, and a pulse width of the pulse width modulated voltage for the W phase; (b) the change in pulse width of the pulse-width modulated voltage for the U phase, The amount of change in the pulse width of the pulse width modulated voltage and the amount of change in the pulse width modulated voltage for the W phase The amount of change in pressure pulse width, (c) the amount of change in the waveform of the coil current for the U phase, and the amount of change in the waveform of the coil current for the V phase and a waveform change amount of the coil current related to the W phase. A robot monitoring device comprising:
3. The robot; a robot controller for controlling the operation of the robot; The robot monitoring device according to claim 2; A robot system comprising:
Citation Information
Patent Citations
Driving device for image forming device
JP2003202719A
Machine that stops movement of member on drive axis due to abnormality in brake
JP2017047498A
Motor control device
JP2018088758A
Motor controller
JP2018136696A