WO2018079075A1 - エンコーダの異常検出方法及び異常検出装置、並びにロボット制御システム - Google Patents

エンコーダの異常検出方法及び異常検出装置、並びにロボット制御システム Download PDF

Info

Publication number
WO2018079075A1
WO2018079075A1 PCT/JP2017/031701 JP2017031701W WO2018079075A1 WO 2018079075 A1 WO2018079075 A1 WO 2018079075A1 JP 2017031701 W JP2017031701 W JP 2017031701W WO 2018079075 A1 WO2018079075 A1 WO 2018079075A1
Authority
WO
WIPO (PCT)
Prior art keywords
encoder
position information
motor
abnormality detection
controller
Prior art date
Application number
PCT/JP2017/031701
Other languages
English (en)
French (fr)
Inventor
靖啓 衣笠
圭 相見
敦実 橋本
Original Assignee
パナソニックIpマネジメント株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by パナソニックIpマネジメント株式会社 filed Critical パナソニックIpマネジメント株式会社
Priority to US16/324,918 priority Critical patent/US11241792B2/en
Priority to JP2018547177A priority patent/JP6857818B2/ja
Priority to EP17865073.5A priority patent/EP3530423B1/en
Priority to CN201780054089.1A priority patent/CN109689312B/zh
Publication of WO2018079075A1 publication Critical patent/WO2018079075A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01DMEASURING NOT SPECIALLY ADAPTED FOR A SPECIFIC VARIABLE; ARRANGEMENTS FOR MEASURING TWO OR MORE VARIABLES NOT COVERED IN A SINGLE OTHER SUBCLASS; TARIFF METERING APPARATUS; MEASURING OR TESTING NOT OTHERWISE PROVIDED FOR
    • G01D5/00Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable
    • G01D5/12Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable using electric or magnetic means
    • G01D5/244Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable using electric or magnetic means influencing characteristics of pulses or pulse trains; generating pulses or pulse trains
    • G01D5/24457Failure detection
    • G01D5/24466Comparison of the error value to a threshold
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1674Programme controls characterised by safety, monitoring, diagnostic
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/06Safety devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1692Calibration of manipulator
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B23/00Testing or monitoring of control systems or parts thereof
    • G05B23/02Electric testing or monitoring
    • G05B23/0205Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
    • G05B23/0218Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B9/00Safety arrangements
    • G05B9/02Safety arrangements electric

Definitions

  • the present disclosure relates to an abnormality detection method for detecting an abnormality in an encoder, and more particularly, to an abnormality detection method and an abnormality detection apparatus for an encoder that detect a rotational position of a motor related to driving of an output shaft of an actuator such as a robot.
  • an abnormality detection technique related to a failure of an encoder used to detect a rotational position of a motor that drives an output shaft of an actuator such as a robot is known.
  • Patent Document 1 includes a first encoder that detects the rotation of the input shaft of the motor and a second encoder that detects the rotation of the output shaft of the motor, and is detected by the first encoder and the second encoder.
  • a technique for determining that the encoder is abnormal when there is a certain difference in position measurement values is disclosed.
  • Patent Document 2 discloses a servo system having a safety unit for monitoring that the motor is normally controlled.
  • the safety unit according to Patent Document 2 generates a stop signal to the servo driver when the command value or feedback value received from the servo driver controlling the motor is abnormal.
  • This disclosure is an encoder abnormality detection method for detecting an abnormality of an encoder that detects a rotational position of a motor using a robot control unit.
  • the robot controller has a controller, a driver, and an abnormality detection device.
  • the driver is connected to the encoder and controller.
  • the anomaly detection device is connected to the encoder and controller.
  • the encoder error detection method is An output step for outputting a speed command for instructing the rotational position of the motor, and command position information indicating the rotational position of the motor according to the speed command;
  • a control step for receiving a speed command and an output signal output from the encoder, and controlling driving of the motor based on the speed command and the output signal;
  • An information acquisition step of acquiring command position information from the controller and acquiring an output signal from the encoder;
  • the command position information is compared with the detected motor position information calculated based on the output signal. If there is a difference between the command position information and the detected motor position information, the encoder malfunctions.
  • An abnormality determination step for determining Have
  • FIG. 1 is a schematic configuration diagram of a robot control system according to an embodiment.
  • FIG. 2 is a block diagram illustrating a configuration of the robot control unit according to the first embodiment.
  • FIG. 3 is a block diagram illustrating a configuration of the safety unit according to the first embodiment.
  • FIG. 4 is a flowchart illustrating an encoder abnormality determination method according to the first embodiment.
  • FIG. 5 is a block diagram illustrating another configuration example of the robot control unit according to the first embodiment.
  • FIG. 6 is a diagram illustrating a relationship between the motor command position and the motor detection position according to the first embodiment.
  • FIG. 7 is a block diagram illustrating another configuration example of the robot control unit according to the first embodiment.
  • FIG. 1 is a schematic configuration diagram of a robot control system according to an embodiment.
  • FIG. 2 is a block diagram illustrating a configuration of the robot control unit according to the first embodiment.
  • FIG. 3 is a block diagram illustrating a configuration of the safety unit according to the first embodiment.
  • FIG. 8 is a diagram illustrating a relationship between the motor command position and the motor detection position according to the first embodiment.
  • FIG. 9 is a flowchart showing another example of the encoder abnormality determination method according to the first embodiment.
  • FIG. 10 is a diagram illustrating the relationship between the motor command position and the actual position when the traveling operation according to the second embodiment is performed.
  • FIG. 11 is a diagram illustrating a relationship between the motor command position and the actual position when the reciprocating operation according to the second embodiment is performed.
  • FIG. 12 is a diagram illustrating a relationship between a motor command position and a motor detection position according to the second embodiment.
  • FIG. 13 is a block diagram illustrating a configuration of a robot control unit according to the third embodiment.
  • FIG. 14 is a flowchart illustrating an encoder abnormality determination method according to the third embodiment.
  • FIG. 15 is a block diagram illustrating another configuration of the robot control unit according to the third embodiment.
  • FIG. 16 is a block diagram illustrating still another configuration of the robot control unit according to the third embodiment.
  • FIG. 17 is a flowchart illustrating another example of the encoder abnormality determination method according to the third embodiment.
  • FIG. 18 is a diagram illustrating a temporal change in the current position of the robot according to the third embodiment.
  • FIG. 19 is a block diagram illustrating still another configuration of the robot control unit according to the third embodiment.
  • FIG. 20 is a diagram illustrating another example of the temporal change in the current position of the robot according to the third embodiment.
  • FIG. 21 is a partially enlarged view of FIG.
  • FIG. 22 is a block diagram illustrating a configuration of a robot control unit according to a conventional technique.
  • Patent Document 2 When applying the technique disclosed in Patent Document 2 to a general-purpose system that does not have an abnormality detection function, it is necessary to add a new function to the servo driver. That is, it is necessary to develop both the servo driver and the safety unit, which takes time.
  • FIG. 22 is a block diagram showing a configuration of a robot control unit according to the conventional technique disclosed in Patent Document 2.
  • the controller 7 outputs a command signal to the servo driver 10, and the servo driver 10 controls the motor 4 based on the command signal received from the controller 7 and the detection signal acquired from the encoder 5.
  • the servo driver 10 generates a command value (motor command value) for comparison processing related to the rotational position of the motor 4 based on the command signal received from the controller 7 and outputs the command value to the safety unit 9. Similarly, the servo driver 10 generates a value (motor detection value) indicating the rotational position of the motor 4 based on the output signal acquired from the encoder 5, the reduction ratio of each axis of the motor 4, the origin information of the motor 4, and the like. Outputs to the safety unit 9. The safety unit 9 compares the motor command value received from the servo driver 10 with the motor detection value, and determines whether the encoder 5 is abnormal based on the comparison result.
  • the servo driver 10 of the general-purpose robot normally generates a motor command value and a motor detection value. It does not have a function and a function to output the generated motor command value and motor detection value.
  • circuit, program, display, etc. is required to indicate whether the additionally designed circuit and program are functioning correctly. That is, it takes time and makes the process complicated.
  • FIG. 1 is a schematic configuration diagram of a robot control system as an operating device according to the present embodiment.
  • FIG. 2 is a block diagram showing the configuration of the robot controller 2, and arrows are shown so that the transmission direction of information or signals can be understood.
  • the robot A is composed of a robot mechanism unit 1, a robot control unit 2, and an operation unit 3 with a display.
  • the robot mechanism unit 1 and the robot control unit 2 are connected by a connection cable C.
  • information is transmitted by wired connection using the connection cable C.
  • the connection form is not limited to wired connection, and may be connected wirelessly.
  • the connection between each block is the same.
  • the robot mechanism unit 1 has a plurality of robot arms 11 and a plurality of joint axes 12.
  • a motor 4 (servo motor) for operating the robot arm 11 is attached to each robot arm 11.
  • the robot A is a vertical articulated 6-axis robot
  • the robot A has six robot arms 11, and six motors 4 are provided so as to correspond to each of the robot arms 11.
  • Each of the motors 4 is attached with an encoder 5 for detecting the rotation position of each motor 4 or the rotation amount based on the rotation position.
  • an external shaft that is driven based on drive control from the robot control unit 2 to the robot mechanism unit 1 is attached to the robot A.
  • the external shaft is used in combination with the robot mechanism unit 1 in order to expand the movable range of the robot A.
  • a motor 4 for operating the external shaft is attached to the external shaft.
  • the motor 4 is attached with an encoder 5 for detecting the rotational position of the motor 4 or the amount of rotation based on the rotational position. That is, the motor 4 is provided for each of the plurality of joint shafts 12 and the external shaft, and the encoder 5 is attached to each of the motors 4.
  • the type of external shaft is not particularly limited.
  • the technology according to the present embodiment can be applied to either a slider type or a positioner type, and other types may be used.
  • the motor 4 and encoder 5 using a plurality of joint shafts 12 and the motor 4 and encoder 5 used for an external shaft are shown without distinction (FIG. 1). Reference) and explanation. Therefore, in the following, when the motor 4 or the encoder 5 is used, both the one using the plurality of joint shafts 12 and the one using the external shafts are pointed out. That is, the abnormality detection device and abnormality detection method for the encoder 5 described below can be applied to both the encoder 5 attached to the motor 4 for the plurality of joint shafts 12 and the encoder 5 attached to the motor 4 for the external shaft. Is possible.
  • the encoder 5 is connected to a safety unit 9 (abnormality detection device) and a servo driver 10 (driver), which will be described later, and outputs (feedback) detected signals to the safety unit 9 and the servo driver 10.
  • a safety unit 9 abnormality detection device
  • a servo driver 10 driver
  • the operation unit 3 includes an input unit (not shown) that receives an input operation of the operator of the robot A and a display (not shown).
  • the operation unit 3 communicates with the robot control unit 2 based on an input operation from the operator. Thereby, the operator can perform operation setting, operation control, and the like of the robot arm 11 via the operation unit 3.
  • the input unit may be configured with a touch panel, and the display and the input unit may be configured integrally.
  • the robot controller 2 includes a controller (for example, CPU) 7, a RAM (Random Access Memory) 8, a safety unit 9 as an abnormality detection device, a servo driver 10 for driving each of the motors 4, and a safety unit.
  • 9 has a safety circuit (controller) 6 that receives an emergency stop signal instructing an emergency stop from 9 and shuts off the power supply (not shown) for driving the robot A.
  • the robot control system includes the encoder 5 and the robot control unit 2.
  • the RAM 8 stores a robot A teaching program created by the operator using the operation unit 3, function settings of the robot A, and the like.
  • the controller 7 outputs a speed command (distance traveled per unit time) to the servo driver 10 based on the robot A teaching program stored in the RAM 8, the function setting of the robot A, etc. Do. Further, the controller 7 integrates the speed command from the origin position, and outputs the integrated value to the safety unit 9 as command position information.
  • the speed command is calculated based on, for example, the reduction ratio of the robot A, the origin position, and the like.
  • the servo driver 10 controls the operation of the robot A by controlling the motor 4 based on the speed command received from the controller 7 and the output signal from the encoder 5.
  • the safety unit 9 is directly connected to the encoder 5 and the controller 7. Then, based on the detected position information of the motor 4 calculated based on the output signal received from the encoder 5 and the command position information received from the controller 7, it is determined whether or not the encoder 5 has failed.
  • FIG. 3 is a block diagram showing the configuration of the safety unit 9.
  • the safety unit 9 includes a CPU 92 as a determination unit, a RAM 93, an encoder receiving unit 94 as a first receiving unit, and a DPRAM (Dual Port RAM) 95 as a second receiving unit. is doing.
  • the encoder receiving unit 94 is connected to the encoder 5 and acquires an output signal from the encoder 5.
  • the DPRAM 95 is connected to the controller 7 of the robot control unit 2 and acquires command position information output from the controller 7. This command position information is obtained by integrating speed commands output from the controller 7 to the servo driver 10. The command position information acquired by the DPRAM 95 is stored in the RAM 93.
  • the CPU 92 receives the output signal from the encoder receiver 94 and calculates the detected position information regarding the current position of the motor 4 using the output signal, the reduction ratio of the robot A, the origin position, and the like.
  • the command position based on the command position information is compared with the detected position based on the detected position information to check whether the encoder 5 is abnormal.
  • CPU 92, RAM 93 and DPRAM 95 are connected in the same configuration, and two sets having the same function are provided. Thereby, parallel processing using two CPUs 92 becomes possible. That is, the same abnormality determination can be performed twice, and the reliability can be further improved as compared with the case of one set.
  • FIG. 4 is a flowchart showing how the safety unit 9 monitors the abnormality of the encoder 5 after the robot control unit 2 activates the robot A and starts operation. That is, FIG. 4 shows how the safety unit 9 monitors the abnormality of the encoder 5 when the controller 7 rotates the motor 4 via the servo driver 10.
  • step ST1 the controller 7 of the robot controller 2 activates the robot A and proceeds to step ST2.
  • step ST2 the robot control unit 2 operates the robot A based on the teaching program and function settings set by the operator via the operation unit 3. Specifically, the controller 7 outputs a speed command to the servo driver 10 and command position information to the safety unit 9 based on the teaching program and function settings stored in the RAM 8.
  • the servo driver 10 drives the motor 4 based on the speed command received from the controller 7 to operate the joint axis 12 and the external axis of the robot A.
  • the servo driver 10 receives an output signal from the encoder 5 attached to the motor 4 and performs feedback control on the motor 4 based on the difference between the speed command and the output signal. At this time, the output signal from the encoder 5 is also output to the safety unit 9.
  • the processing of steps ST3 to ST7 is performed by the safety unit 9.
  • the safety unit 9 acquires the output signal from the encoder 5 (ST3)
  • the motor position is calculated (ST4).
  • the CPU 92 of the safety unit 9 determines the rotational position (detected position information) of the motor 4 based on the output signal acquired from the encoder 5, the reduction ratio of each axis of the motor 4, the origin information of the motor 4, and the like. calculate.
  • the output signal acquired from the encoder 5 is transmitted in the form of a pulse signal, for example.
  • the safety unit 9 receives the command position information from the controller 7 (ST5), and compares the detected position information regarding the current position of the motor 4 calculated in ST4 with the command position information from the controller 7 (ST6). Specifically, the CPU 92 of the safety unit 9 calculates the rotational position of the motor 4 (motor detection value: detected position information) calculated based on the output signal from the encoder 5 and the rotational position of the motor commanded from the controller 7. (Motor command value: command position information) is compared.
  • step ST7 If the difference between the motor command value (command position information) and the motor detection value (detection position information) is equal to or greater than a predetermined value as a result of the comparison (YES in ST7), the CPU 92 determines that the encoder 5 is abnormal, and step ST8. Proceed to On the other hand, when the difference between the motor command value and the motor detection value is less than the predetermined value (NO in ST7), it is not determined that the encoder 5 is abnormal, and the flow returns to step ST3.
  • the motor 4 is about to move to the position commanded by the controller 7. For this reason, the difference between the motor detection value (detection position information) indicating the rotation position of the motor 4 and the motor command value (command position information) indicating the rotation position commanded by the controller 7 is within a predetermined threshold value Pth. Should be. Therefore, if the rotational position of the motor based on the motor detection value is more than a predetermined position away from the motor command position based on the motor command value, it is determined that the encoder has failed.
  • step ST8 the CPU 92 of the safety unit 9 transmits an emergency stop signal to the safety circuit 6.
  • the safety circuit 6 shuts off the power supply for driving the robot A and causes the robot A to stop emergency.
  • the controller 7 activates the robot A and causes the robot A to start the operation, and then the safety unit 9 repeatedly executes the processes of steps ST3 to ST7 to determine whether the encoder 5 is abnormal.
  • the safety unit 9 compares the position information directly acquired from the controller 7 with the position information calculated based on the output signal from the encoder 5 in detecting the abnormality of the encoder 5. Based on the result, an abnormality of the encoder 5 is detected. As a result, an abnormality due to an encoder failure can be detected by adding the safety unit 9 to an operation device such as a general-purpose robot that does not have an encoder abnormality detection device. Furthermore, at that time, it is not necessary to change the design of the existing general-purpose robot components such as the servo driver 10, and the influence on the existing system can be reduced. Therefore, it is not necessary to indicate that the processing related to the determination of the abnormality of the encoder is correctly performed for the existing system, and the processing is not complicated.
  • the servo driver 10 of the general-purpose robot When the configuration shown in FIG. 22 is applied to a general-purpose robot that does not have an abnormality detection device for the encoder 5, the servo driver 10 of the general-purpose robot normally has a function of generating a motor command value and a motor detection value, and It does not have a function of outputting the generated motor command value and motor detection value. Therefore, it is necessary to newly design a circuit, a program and the like having the above generation function and output function. In addition, a mechanism (circuit, program, display, etc.) is required to indicate whether the additionally designed circuit and program are functioning correctly. That is, it takes time and makes the process complicated. On the other hand, such a situation does not occur in the abnormality detection method and the abnormality detection apparatus according to the present disclosure.
  • the first embodiment has been described as an example of the technique disclosed in the present application.
  • the technology in the present disclosure is not limited to this, and can also be applied to embodiments in which changes, replacements, additions, omissions, and the like have been made as appropriate.
  • the first embodiment may be configured as follows.
  • FIG. 5 is a block diagram showing a configuration of a robot control unit according to the modification (1).
  • a primary delay filter 22 is provided between the controller 7 and the safety unit 9 as a delay control filter considering a general control delay. That is, the first-order lag filter 22 is provided between the controller 7 and the DPRAM 95 (second receiver).
  • the rotation position (motor command position) of the motor 4 based on the command position information acquired from the controller 7 by the safety unit 9 and the safety unit 9 acquired from the encoder 5 when compared at the same time.
  • the rotational position (motor detection position) of the motor 4 based on the output signal or the like is shifted. This occurs, for example, due to motor control characteristics.
  • the servo driver 10 actually controls the motor 4 after the controller 7 of the robot controller 2 outputs the speed command and the command position information, and the motor 4 operates based on the control, a certain time This is because a delay occurs.
  • FIG. 6 is a diagram showing the relationship between the motor command position (thick solid line in FIG. 6) and the motor detection position (thin solid line in FIG. 6) when the joint shaft 12 of the robot arm 11 is reciprocated at the maximum speed. It is.
  • the thick solid line and the thin solid line in FIG. 6 are compared, there is a delay of about 0.1 seconds at the maximum, and a delay of about 18 degrees occurs in terms of an angle (see the one-dot chain line in FIG. 6).
  • a broken line indicates a motor command position according to the configuration of FIG. 5
  • a two-dot chain line indicates a deviation between the motor command position and the motor detection position according to the configuration of FIG.
  • the predetermined threshold Pth used for comparison between the detected position information and the command position information may be determined based on the difference between the motor command position and the motor detected position. In this case, by reducing the difference between the motor command position and the motor detection position, the predetermined threshold Pth can be reduced, and as a result, the abnormality detection accuracy of the encoder can be increased.
  • abnormality detection method of the encoder 5 may be the same as the procedure using FIG. 4 described above, and thus detailed description thereof is omitted here.
  • FIG. 7 is a block diagram showing a configuration of the robot control unit according to the modification (2).
  • a vibration suppression filter 21 connected in series with a first-order lag filter 22 is provided between the controller 7 and the safety unit 9.
  • control with higher response may be performed.
  • high response control control with higher response
  • the motor 4 may vibrate due to the vibration component included in the command position information.
  • a vibration suppression filter (not shown) is used between the servo driver 10 and the motor 4.
  • FIG. 8 shows the relationship between the motor command position and the motor detection position when the joint shaft 12 of the robot arm 11 is reciprocated at the maximum speed.
  • the thick solid line and the thin solid line are the same as those in FIG. 6, and show operations related to a configuration (see FIG. 2) that does not use the first-order lag filter 22 and the damping filter 21.
  • a broken line indicates a change in the motor command position according to the configuration of FIG. 7, and a two-dot chain line indicates a deviation between the motor command position and the motor detection position according to the configuration of FIG. It can be seen from FIG. 8 that the difference between the motor command position and the motor detection position is further reduced by providing the vibration suppression filter 21 in addition to the first-order lag filter 22.
  • the damping filter 21 removes a resonance component from the input command position information.
  • the vibration suppression filter 21 and the first-order lag filter 22 may have both directly in random order, or only one of them may be provided.
  • FIG. 9 a flowchart as shown in FIG. 9 may be used.
  • the processes related to steps ST1 to ST6 are the same as those in FIG. 4, and thus detailed description thereof is omitted here.
  • step ST7 when the difference between the motor command value and the motor detection value is greater than or equal to a predetermined value in step ST7, that is, when “YES” in step ST7, the process proceeds to step ST9.
  • step ST9 the CPU 92 of the safety unit 9 determines whether or not the controller 7 has instructed an emergency stop of the robot A.
  • the controller 7 outputs an emergency stop signal (not shown) to the safety circuit 6 when the robot A makes an emergency stop.
  • the safety circuit 6 that has received the emergency stop signal shuts off the driving power of the robot A and stops the robot A.
  • the safety unit 9 acquires an emergency stop signal from the controller 7.
  • step ST9 it is determined whether an emergency stop signal is output from the controller 7.
  • the flow returns to step ST3. That is, even when the difference between the motor command value and the motor detection value is equal to or greater than a predetermined value, the encoder 5 is not determined to be abnormal.
  • step ST ⁇ b> 8 the CPU 92 of the safety unit 9 transmits an emergency stop signal to the safety circuit 6, and the safety circuit 6 that has received the emergency stop signal stops the robot A in an emergency stop.
  • the safety unit 9 does not erroneously determine that the encoder 5 is abnormal when an emergency stop is performed by an instruction from the controller 7. Specifically, when the controller 7 stops the robot A by outputting an emergency stop signal, the output of the command position information of the controller 7 is stopped. For this reason, if the safety unit 9 continues the comparison between the motor command value and the motor detection value, the flowchart of FIG. 4 may determine that the encoder 5 is abnormal although the encoder 5 is operating normally. is there. However, the occurrence of such a problem can be prevented by performing the processing according to this aspect.
  • the steps do not necessarily have to be processed in the order described. If the order can be changed or parallel processing can be performed, the processing order and processing method can be appropriately set. It may be changed. For example, the process according to steps ST3 and ST4 and the process according to step ST5 may be performed in parallel.
  • FIG. 10 shows motor command positions P1 to P3 in the case of a so-called traveling operation in which the motor command position sequentially moves from P1 to P3 via P2 based on the speed command from the controller 7, and the actual The relationship with the motor position Pr (hereinafter also referred to as the current position Pr) is shown.
  • the traveling operation as shown in FIG. 10, when the motor command position moves to P3, the current position Pr exists in the vicinity of P3. Therefore, it is possible to detect an abnormality in the encoder 5 by performing processing along the flow of FIG. 4 or FIG.
  • the safety unit 9 may erroneously determine that the encoder 5 is abnormal. For example, when the reciprocating operation of FIG. 11 is performed at high speed, before the current position Pr of the motor 4 reaches or sufficiently approaches P3, the servo driver 10 returns to the motor 4 to start the operation, and the current position Pr There is a possibility of returning from P2 to P1.
  • the safety unit 9 compares the motor command position based on the command position information P3 with the motor detection position based on the current position Pr of the motor 4, the difference between the position P3 and the position Pr is large. As a result, there is a possibility that the safety unit 9 may determine that there is an abnormality even though the encoder 5 is operating normally.
  • FIG. 12 is a diagram showing motor command positions when the joint shaft 12 of the robot arm 11 is reciprocated.
  • step ST6 the CPU 92 compares the value obtained by increasing or decreasing the addition value ⁇ with the motor command value and the motor detection value calculated based on the detected position information, and in step ST7, based on the comparison result. Try to determine the encoder error. Specifically, when the motor detection value P (fs) satisfies the condition of the following (Equation 1), it is not determined that the encoder 5 is abnormal. At this time, the change amount ⁇ n is added as an absolute value regardless of the direction of change.
  • a predetermined threshold Th may be added to the added value ⁇ as shown in the lower (Equation 2) instead of the upper (Equation 1).
  • the safety unit 9 can detect an abnormality, and the operation of the robot A can be stopped in an emergency.
  • the vibration suppression filter 21 and the first-order lag filter 22 shown in the modified examples (1) and (2) are used to reduce errors that occur when comparing the command position information and the detected position information. .
  • the above control switching is performed, if these filters are used as they are, the difference between the actual operation of the robot A and the command position information given to the safety unit 9 becomes large, and the abnormality detection accuracy of the encoder 5 is not improved. There is.
  • the encoder 5 can be accurately obtained even when the control mode of the robot A is switched by switching the route for processing the command position information transmitted to the safety unit 9 according to the control method actually performed by the controller 7. This makes it possible to detect abnormalities.
  • FIG. 13 shows the configuration of the robot control unit according to this embodiment.
  • the controller 7 includes a control switching unit 7 a for switching the drive control of the robot A.
  • the control switching unit 7a detects this and switches the route for transmitting the command position information.
  • command position information is sent to the safety unit 9 after applying a first-order lag filter 22 (first lag control filter).
  • first lag control filter first lag control filter
  • second lag control filter the same first-order lag filter 22 is used when performing normal control and when performing high response control. That is, the filter 22 having the same time constant is used.
  • control switching unit 7a may be realized on the hardware of the controller 7 or may be realized on software.
  • FIG. 14 is a flowchart showing an abnormality determination method of the encoder 5 according to this embodiment.
  • FIG. 14 shows how the safety unit 9 monitors the abnormality of the encoder 5 when the controller 7 rotates the motor 4 via the servo driver 10.
  • steps ST1, ST2 and ST6 to ST11 are the same as those of steps ST1 to ST8 shown in FIG. 14.
  • step ST3 it is determined whether the drive control mode of the robot A is high-responsiveness control or not. This determination is performed by the control switching unit 7a in the controller 7 as described above.
  • step ST3 If the determination in step ST3 is affirmative, that is, if the drive control mode of the robot A is high-responsiveness control, the command is applied after applying the damping filter 21 and the first-order lag filter 22 in step ST4. The position information is transmitted to the safety unit 9.
  • step ST3 If the determination in step ST3 is negative, that is, if the drive control mode of the robot A is normal control, the command position information is transmitted to the safety unit 9 after applying the first-order lag filter 22 in step ST5. .
  • the abnormality detection accuracy of the encoder 5 is improved by switching the transmission route of the command position information sent from the controller 7 to the safety unit 9 according to the drive control mode of the robot A. Can be increased.
  • the vibration suppression filter 21 for removing the vibration generating component included in the command position information, and the primary delay filter for reducing the control response delay By applying 22 to the command position information, the abnormality detection accuracy of the encoder 5 can be increased.
  • the drive control mode of the robot A is normal control, it is often unnecessary to consider the removal of the vibration component included in the command position information. Therefore, the first-order lag filter 22 is applied to the command position information without applying the vibration suppression filter 21. As a result, the occurrence of unexpected errors can be suppressed, and the abnormality detection accuracy of the encoder 5 can be increased.
  • the third embodiment has been described as an example of the technique disclosed in the present application.
  • the technology in the present disclosure is not limited to this, and can also be applied to embodiments in which changes, replacements, additions, omissions, and the like have been made as appropriate.
  • the third embodiment may be configured as follows.
  • FIG. 15 is a block diagram showing a configuration of a robot control unit according to the modification (4).
  • the configuration shown in FIG. 15 is different from the configuration shown in FIG. 13 in that the first-order lag filter to which the command position information is applied is different between normal control and high-responsiveness control. Specifically, in the configuration shown in FIG. 15, a first-order lag filter 22a and a first-order lag filter 22b are used. With this configuration, the time delay compensation amount of the command position information varies depending on the processing route switching.
  • the servo driver 10 actually controls the motor 4 after the controller 7 of the robot controller 2 outputs the speed command and the command position information, and the motor 4 operates based on the control. Therefore, a certain time delay occurs in the actual position with respect to the command position information. This delay occurs in both cases of high response control and normal control, and the delay time may vary depending on the control mode.
  • FIG. 16 is a block diagram showing a configuration of the robot control unit according to the modification (5).
  • FIG. 17 is a flowchart showing an abnormality detection method of the encoder 5 according to the modification (5).
  • a route (first processing route) in which information including command position information transmitted from the controller 7 is processed by a filter corresponding to the drive control mode of the robot A, and a drive control mode of the robot A 7 is different from the configuration shown in FIG. 7 in that it is processed in parallel with a route (second processing route) that is processed by a filter that does not correspond to, and transmitted to the safety unit 9.
  • “0” is input as command position information to a filter that does not support the drive control mode of the robot A.
  • the process of applying the command position information to the vibration suppression filter 21 and the first-order lag filter 22 continues to affect until a certain time later. If the switching of the drive control mode of the robot A is abrupt, there is a possibility that an error is included in the command position information for the safety unit to determine due to the influence of the command position information that could not be filtered.
  • steps ST1, ST2 and ST9 to ST14 are the same as those in steps ST1 to ST8 shown in FIG. 4, and thus detailed description thereof is omitted here.
  • step ST3 the drive control mode of the robot A is determined. If the determination is high-responsiveness control, the vibration suppression filter 21 and the first-order lag filter 22b are applied to the command position information from the controller 7 to perform filter processing. (Step ST4).
  • step ST4 the command position information from the controller 7 is set to “0” in step ST5, and the first-order lag filter 22a is applied for processing.
  • step ST8 each processing result is added and used as command position information to be transmitted to the safety unit 9.
  • step ST6 determines whether the drive control mode of the robot A is normal control.
  • step ST6 determines whether the drive control mode of the robot A is normal control.
  • step ST7 the command position information from the controller 7 is set to “0”, and the vibration suppression filter 21 and the first-order lag filter 22b are applied to perform the filter process (step ST7).
  • step ST ⁇ b> 8 command position information to be transmitted to the safety unit 9 is obtained by adding the processing results.
  • the transmission information from the controller 7 is always processed in parallel by both the filter corresponding to the drive control mode of the robot A and the filter not corresponding to this drive control mode.
  • command position information transmitted from the controller 7 is directly applied to the filter corresponding to the drive control mode of the robot A, while the command position information is set to “0” for the filter not corresponding to the drive control mode.
  • the filtering process is performed, the results of the filtering process in both systems are added, and the result is transmitted to the safety unit 9 as new command position information.
  • the difference in the response delay time due to the difference in the control mode is absorbed, and the difference between the motor command position and the motor detection position can be similarly reduced even when the drive control mode of the robot A is different. .
  • the abnormality detection accuracy of the encoder can be increased.
  • FIG. 18 is a diagram showing the time change of the position of the robot according to this modification, in which the joint axis 12 of the robot arm 11 is reciprocated at a high speed, the high response control is applied to the forward path, and the normal control is applied to the return path. The change in the error between the motor command position and the motor detection position is shown.
  • the change in the difference between the motor command position and the actual motor detection position when the joint shaft 12 is driven with the configuration shown in FIG. 15 is indicated by a dotted line, and the joint shaft 12 is driven with the configuration shown in FIG.
  • the change in the difference between the motor command position and the actual motor position is indicated by a broken line.
  • the predetermined threshold value Pth can be reduced, and the abnormality detection accuracy of the encoder can be increased.
  • FIG. 19 is a block diagram showing a configuration of the robot control unit according to the modification (6).
  • the servo driver 10 actually controls the motor 4 after the controller 7 of the robot controller 2 outputs the speed command and the command position information, and the motor 4 operates based on the control. Therefore, the actual motor position is delayed by a certain time with respect to the command position information.
  • a first-order lag filter corresponding to the control method is applied to the command position information, or processing using a different filter is applied to information including the command position information. Yes.
  • the primary delay filter 22 simply simulates the control delay by the servo driver 10, there is room for improving the accuracy of the primary delay.
  • the accuracy of the first order delay can be further improved by performing feedforward control on the first order delay filter 22a used in the normal control in the configuration shown in FIG. Is.
  • the command position information from the controller 7 is multiplied by a gain of (1-a) and applied to the first-order lag filter 22a.
  • the information is multiplied by a gain, and these results are added and transmitted to the safety unit 9.
  • FIG. 20 is a diagram showing a time change of the position of the robot according to the present modification.
  • FIG. 20 shows a change in error between the motor command position and the motor detection position when the joint axis 12 of the robot arm 11 is reciprocated at high speed and the high response control is applied to the forward path and the normal control is applied to the return path.
  • FIG. 21 is a partially enlarged view of FIG.
  • the abnormality detection method of the present disclosure is an abnormality detection method for detecting an abnormality of the encoder for detecting the rotational position of the motor that drives the output shaft of the actuator.
  • a controller that outputs a speed command indicating the rotational position of the motor and command position information indicating the rotational position of the motor according to the speed command, a speed command output from the controller, and an output signal output from the encoder,
  • a driver for controlling the driving of the motor based on the command and the output signal and an abnormality detecting device for detecting an abnormality of the encoder are provided.
  • the abnormality detection apparatus compares the information acquisition step for acquiring the command position information from the controller and the output signal from the encoder, and the detected position information of the motor calculated based on the command position information and the output signal. And performing an abnormality determination step of determining that the encoder is abnormal when there is a difference of a predetermined value or more between the position information.
  • the abnormality detection device determines the abnormality of the encoder based on the comparison result between the command position information received from the controller and the detected position information calculated based on the output signal from the encoder.
  • the encoder abnormality can be detected without adding a new configuration or function for the encoder abnormality detection to the driver. That is, for example, an encoder abnormality can be detected while minimizing the influence on the existing configuration and existing circuit of a general operating device (for example, a robot or an external shaft).
  • the abnormality detection device compensates for the time delay caused by the delay of the motor drive control with respect to the command position information acquired from the controller, and detects the command position information compensated for the time delay. It is preferable to determine whether or not the encoder is abnormal based on the comparison result with the position information.
  • the time lag caused by the delay of the motor drive control can be eliminated, so that the abnormality detection accuracy of the encoder can be improved.
  • the controller performs a control mode detection step for detecting switching of the drive control mode of the actuator and a processing route switching step for switching the processing route of the command position information in accordance with the switching of the drive control mode. It is preferable to receive command position information processed by a processing route corresponding to the drive control mode.
  • the error between the command position information and the detected position information accompanying the difference in the drive control mode of the actuator can be reduced, and the abnormality detection accuracy of the encoder can be increased.
  • the command position information is received.
  • the delay compensation step for compensating for the time delay of the command position information, and perform feedforward control in the delay compensation step.
  • the error at the time delay compensation can be further reduced, and the difference between the motor command position and the motor detection position can be reduced.
  • the abnormality detection accuracy of the encoder can be increased.
  • the abnormality detection device In the abnormality determination step, the abnormality detection device generates an integrated value of the change amount of the command position information output from the controller, and based on the comparison result between the integrated value and the sum of the command position information and the detected position information, the encoder It is preferable to determine whether or not there is an abnormality.
  • the margin in the abnormality determination is increased, and the abnormality detection device detects that the encoder is abnormal even though the encoder is operating normally. It is possible to prevent the determination.
  • the abnormality detection device determines whether there is an abnormality in the encoder based on a comparison result between the sum of the integrated value and the command position information plus a predetermined offset value and the detected position information. preferable.
  • the differential device performs an unintended operation, it is possible to detect an abnormality in the encoder.
  • a safety circuit for emergency stop of the actuating device is further provided, and the controller is configured to send an emergency stop signal to the safety circuit in the event of an emergency.
  • the controller is configured to send an emergency stop signal to the safety circuit in the event of an emergency.
  • the controller outputs an emergency stop signal, even if there is a difference of a predetermined value or more between the command position information and the detected position information, it is not determined that the encoder is abnormal.
  • the output of the speed command and command position information is stopped after the stop signal is output, it is possible to prevent the encoder from being determined to be abnormal although the encoder is operating normally.
  • the abnormality detection device disclosed herein detects an abnormality of the encoder for detecting the rotational position of the motor that drives the output shaft of the actuator.
  • the abnormality detection device includes a controller that outputs a speed command indicating the rotational position of the motor and command position information indicating the rotational position of the motor according to the speed command, a speed command output from the controller, and an output output from the encoder A driver that receives the signal and controls driving of the motor based on the speed command and the output signal, and an abnormality detection device that detects an abnormality of the encoder.
  • the abnormality detection device compares the first receiving unit that receives the output signal from the encoder, the second receiving unit that receives the command position information from the controller, and the detected position information of the motor calculated based on the command position information and the output signal. And a determination unit that determines that the encoder is abnormal when there is a difference greater than or equal to a predetermined value between the position information.
  • the abnormality of the encoder can be detected without adding a new function for detecting the abnormality of the encoder to the driver.
  • a control system for a robot having an output shaft and a motor that drives the output shaft disclosed herein includes an encoder that detects the rotational position of the motor, a speed command that indicates the rotational position of the motor, and a motor corresponding to the speed command.
  • a controller that outputs command position information indicating the rotation position of the motor, a driver that receives a speed command output from the controller and an output signal output from the encoder, and that controls the driving of the motor based on the speed command and the output signal, and an encoder And an abnormality detection device for detecting the abnormality.
  • the abnormality detection device compares the first receiving unit that receives the output signal from the encoder, the second receiving unit that receives the command position information from the controller, and the detected position information of the motor calculated based on the command position information and the output signal. And a determination unit that determines that the encoder is abnormal when there is a difference of a predetermined value or more between the position information.
  • This control system makes it possible to detect an abnormality in the encoder without adding a new function for detecting an abnormality in the encoder to the driver, as in the above-described abnormality detection method.
  • the encoder abnormality detection method of the present disclosure even when a general-purpose encoder is used, it is possible to determine an encoder abnormality while minimizing the influence on existing functions and existing devices. it can.
  • the encoder abnormality detection method of the present disclosure can determine the encoder abnormality while minimizing the influence on existing functions and existing devices even when a general-purpose encoder is used, a general-purpose welding robot can be used. This is particularly useful in determining an abnormality in an encoder related to an industrial robot such as the above and other actuators.
  • a Robot (actuator) C Connection cable P Motor detection value 1 Robot mechanism unit 2 Robot control unit 3 Operation unit 4 Motor 5 Encoder 6 Safety circuit 7 Controller 7a Control switching unit 9 Safety unit (abnormality detection device) 10 Servo driver 11 Robot arm 12 Joint axis (output axis) 21 Damping filter 22 Primary delay filter (delay control filter) 22a Primary delay filter 22b Primary delay filter 92 CPU (determination unit) 94 Encoder receiver (first receiver) 95 DPRAM (second receiver)

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Manipulator (AREA)
  • Safety Devices In Control Systems (AREA)

Abstract

エンコーダの異常検出方法は、出力ステップと、制御ステップと、情報取得ステップと、異常判定ステップとを有する。異常判定ステップは、指令位置情報と、出力信号に基づいて算出されたモータの検出位置情報とを比較し、指令位置情報とモータの検出位置情報との間に所定値以上の差があった場合に、エンコーダを異常と判定する。

Description

エンコーダの異常検出方法及び異常検出装置、並びにロボット制御システム
 本開示は、エンコーダの異常を検出する異常検出方法に関し、特に、ロボット等の作動装置の出力軸の駆動に係るモータの回転位置を検出するエンコーダの異常検出方法及び異常検出装置に関する。
 従来からロボット等の作動装置の出力軸を駆動するモータの回転位置を検出するために用いられるエンコーダの故障に係る異常検出技術が知られている。
 特許文献1には、モータの入力軸の回転を検出する第1のエンコーダと、モータの出力軸の回転を検出する第2のエンコーダを設け、第1のエンコーダと第2のエンコーダで検出された位置測定値に一定以上の差がある場合に、エンコーダの異常と判定する技術が開示されている。
 また、特許文献2には、モータが正常に制御されていることを監視するセーフティユニットを有するサーボシステムが開示されている。特許文献2に係るセーフティユニットは、モータを制御しているサーボドライバから受けた指令値やフィードバック値が異常である場合に、上記サーボドライバへの停止信号を生成する。
特許第5675761号公報 特許第5367623号公報
 本開示は、ロボット制御部を用いて、モータの回転位置を検出するエンコーダの異常を検出するエンコーダの異常検出方法である。
 ロボット制御部は、コントローラと、ドライバと、異常検出装置と、を有している。
 ドライバは、エンコーダとコントローラに接続されている。
 異常検出装置は、エンコーダとコントローラに接続されている。
 エンコーダの異常検出方法は、
 モータの回転位置を指示する速度指令、及び、速度指令に応じたモータの回転位置を示す指令位置情報を出力する出力ステップと、
 速度指令、及び、エンコーダから出力される出力信号を受け、速度指令及び出力信号に基づいてモータの駆動を制御する制御ステップと、
 コントローラから指令位置情報を取得し、かつ、エンコーダから出力信号を取得する情報取得ステップと、
 指令位置情報と、出力信号に基づいて算出されたモータの検出位置情報とを比較し、指令位置情報とモータの検出位置情報との間に所定値以上の差があった場合に、エンコーダを異常と判定する異常判定ステップと、
を有する。
図1は、実施の形態に係るロボット制御システムの概略構成図である。 図2は、第1実施形態に係るロボット制御部の構成を示すブロック図である。 図3は、第1実施形態に係るセーフティユニットの構成を示すブロック図である。 図4は、第1実施形態に係るエンコーダの異常判断方法を示すフローチャートである。 図5は、第1実施形態に係るロボット制御部の他の構成例を示すブロック図である。 図6は、第1実施形態に係るモータ指令位置とモータ検出位置との関係を示す図である。 図7は、第1実施形態に係るロボット制御部の他の構成例を示すブロック図である。 図8は、第1実施形態に係るモータ指令位置とモータ検出位置との関係を示す図である。 図9は、第1実施形態に係るエンコーダの異常判断方法の他の例を示すフローチャートである。 図10は、第2実施形態に係る進行動作をした場合のモータ指令位置と実位置との関係を示す図である。 図11は、第2実施形態に係る往復動作をした場合のモータ指令位置と実位置との関係を示す図である。 図12は、第2実施形態に係るモータ指令位置とモータ検出位置との関係を示す図である。 図13は、第3実施形態に係るロボット制御部の構成を示すブロック図である。 図14は、第3実施形態に係るエンコーダの異常判断方法を示すフローチャートである。 図15は、第3実施形態に係るロボット制御部の他の構成を示すブロック図である。 図16は、第3実施形態に係るロボット制御部のさらなる他の構成を示すブロック図である。 図17は、第3実施形態に係るエンコーダの異常判断方法の他の例を示すフローチャートである。 図18は、第3実施形態に係るロボットの現在位置の時間変化を示す図である。 図19は、第3実施形態に係るロボット制御部のさらなる他の構成を示すブロック図である。 図20は、第3実施形態に係るロボットの現在位置の時間変化の他の例を示す図である。 図21は、図20を部分的に拡大した図である。 図22は、従来の技術に係るロボット制御部の構成を示すブロック図である。
 従来の汎用の作動装置の駆動系(モータ)では単一のエンコーダしか設けられていないものも多く、特許文献1に開示された技術は、これらの汎用モータに対して適用できない。また、新規に特許文献1に係るシステムを構成する場合は、複数のセンサを設ける必要があるため、コストが高くなる。
 特許文献2に開示された技術を、異常検出機能を有していない汎用のシステムに対して適用する場合、サーボドライバに新しい機能を追加する必要がある。すなわち、サーボドライバ及びセーフティユニット双方の開発が必要であり、工数がかかる。
 図22は、特許文献2に開示された従来の技術に係るロボット制御部の構成を示すブロック図を示している。コントローラ7が、サーボドライバ10に指令信号を出力し、サーボドライバ10が、コントローラ7から受けた指令信号、及び、エンコーダ5から取得した検出信号に基づいてモータ4を制御する。
 サーボドライバ10が、コントローラ7から受けた指令信号に基づいてモータ4の回転位置に係る比較処理用の指令値(モータ指令値)を生成し、セーフティユニット9に出力している。同様に、サーボドライバ10は、エンコーダ5から取得した出力信号、モータ4各軸の減速比及びモータ4の原点情報等に基づいてモータ4の回転位置を示す値(モータ検出値)を生成し、セーフティユニット9に出力している。そして、セーフティユニット9では、サーボドライバ10から受けたモータ指令値とモータ検出値とを比較し、その比較結果に基づいてエンコーダ5の異常を判断している。
 しかしながら、エンコーダ5の異常検出装置を有していない汎用ロボットに対して図22に示すような構成を適用する場合、汎用ロボットのサーボドライバ10は、通常、モータ指令値及びモータ検出値を生成する機能及び生成したモータ指令値及びモータ検出値を出力する機能を有していない。
 したがって、上記生成機能及び出力機能を有する回路、プログラム等を新規に設計する必要がある。また、追加設計した回路及びプログラム等が正しく機能しているかどうかを示すような仕組み(回路、プログラム、表示等)が必要である。すなわち、手間がかかるとともに処理が複雑化する。
 以下、本実施の形態を図面に基づいて詳細に説明する。以下の実施形態の説明は、例示に過ぎない。
 -第1実施形態-
 <ロボット及びその制御系の構成>
 図1は、本実施形態に係る作動装置としてのロボット制御システムの概略構成図である。また、図2はロボット制御部2の構成を示すブロック図であり、情報又は信号の送信方向がわかるように矢印を記載している。
 図1に示すように、ロボットAは、ロボット機構部1と、ロボット制御部2と、ディスプレイ付きの操作部3とによって構成されている。ロボット機構部1とロボット制御部2との間は、接続ケーブルCによって接続されている。なお、図1では、接続ケーブルCによる有線接続によって情報が伝達されるものとしている。しかし、接続形態は有線接続に限定されず、無線で接続してもよい。各ブロック間の接続も同様である。
 ロボット機構部1は、複数のロボットアーム11および複数の関節軸12を有している。ロボットアーム11の各々には、それぞれ、ロボットアーム11を動作させるためのモータ4(サーボモータ)が取り付けられている。例えば、ロボットAが垂直多関節6軸ロボットである場合、ロボットAは6個のロボットアーム11を有し、ロボットアーム11の各々に対応するように6個のモータ4が設けられている。モータ4の各々には、モータ4の各々の回転位置又は回転位置に基づく回転量を検出するためのエンコーダ5が取り付けられている。
 図1では図示しないが、ロボットAに対して、ロボット制御部2からロボット機構部1への駆動制御に基づいて駆動される外部軸が付設されている。外部軸は、ロボットAの可動範囲を拡大させるためにロボット機構部1と組み合わせて用いられるものである。外部軸には、外部軸を動作させるためのモータ4が取り付けられている。モータ4には、モータ4の回転位置又は当該回転位置に基づく回転量を検出するためのエンコーダ5が取り付けられている。すなわち、複数の関節軸12及び外部軸のそれぞれに対してモータ4が設けられ、モータ4の各々に対してエンコーダ5が取り付けられる。なお、外部軸の種類は、特に限定されない。例えば、スライダタイプ又はポジショナタイプのどちらであっても本実施形態に係る技術が適用可能であり、それ以外のタイプのものであってもよい。
 なお、本実施形態では、発明の理解を容易にするために、複数の関節軸12を用いるモータ4及びエンコーダ5と、外部軸に用いるモータ4及びエンコーダ5とを区別せずに図示(図1参照)及び説明している。したがって、以下において、モータ4又はエンコーダ5という場合、複数の関節軸12を用いるものと、外部軸に用いるものとの両方を指すものとする。すなわち、以下において説明するエンコーダ5の異常検出装置及び異常検出方法は、複数の関節軸12用のモータ4に取り付けられるエンコーダ5と、外部軸用のモータ4に取り付けられるエンコーダ5の両方において適用が可能である。
 エンコーダ5は、後述するセーフティユニット9(異常検出装置)及びサーボドライバ10(ドライバ)に接続されており、セーフティユニット9及びサーボドライバ10に対して、検出した信号を出力(フィードバック)する。
 操作部3は、ロボットAの操作者の入力操作を受ける入力部(図示しない)とディスプレイ(図示しない)とを有する。操作部3は、操作者からの入力操作に基づいて、ロボット制御部2と通信を行う。これにより、操作者が操作部3を介して、ロボットアーム11の動作設定や動作制御等を行うことができる。なお、入力部がタッチパネルで構成され、ディスプレイと入力部とが一体的に構成されていてもよい。
 ロボット制御部2は、コントローラ(例えば、CPU)7と、RAM(Random Access Memory)8と、異常検出装置としてのセーフティユニット9と、モータ4の各々を駆動させるためのサーボドライバ10と、セーフティユニット9から非常停止を指示する非常停止信号を受けてロボットAの駆動用電源(図示しない)を遮断する安全回路(コントローラ)6とを有している。なお、本開示において、ロボット制御システムとは、エンコーダ5と、ロボット制御部2とを有している。
 RAM8には、操作者が操作部3によって作成したロボットAの教示プログラムやロボットAの機能設定等が格納されている。
 コントローラ7は、RAM8に格納された上記ロボットAの教示プログラムやロボットAの機能設定等に基づいて、サーボドライバ10に速度指令(単位時間あたりに進む距離)を出力してロボットAの動作指令を行う。また、コントローラ7は、上記速度指令を原点位置から積算し、その積算値を指令位置情報としてセーフティユニット9に出力する。速度指令は、例えば、ロボットAの減速比、原点位置等に基づいて計算される。
 サーボドライバ10は、コントローラ7から受けた速度指令及びエンコーダ5からの出力信号に基づいてモータ4を制御することにより、ロボットAの動作を制御する。
 セーフティユニット9は、エンコーダ5及びコントローラ7に直接接続されている。そして、エンコーダ5から受けた出力信号に基づいて算出されたモータ4の検出位置情報と、コントローラ7から受けた指令位置情報とに基づいて、エンコーダ5が故障しているか否かを判断する。
 図3はセーフティユニット9の構成を示すブロック図である。
 図3に示すように、セーフティユニット9は、判定部としてのCPU92と、RAM93と、第1受信部としてのエンコーダ受信部94と、第2受信部としてのDPRAM(Dual Port RAM)95とを有している。
 エンコーダ受信部94は、エンコーダ5に接続されており、エンコーダ5からの出力信号を取得する。
 DPRAM95は、ロボット制御部2のコントローラ7に接続されており、コントローラ7から出力された指令位置情報を取得する。この指令位置情報は、コントローラ7からサーボドライバ10に対して出力される速度指令の積算によって求められる。DPRAM95が取得した指令位置情報は、RAM93に格納される。
 CPU92は、エンコーダ受信部94からの出力信号を受けて、その出力信号と、ロボットAの減速比、原点位置等とを用いてモータ4の現在位置に関する検出位置情報を計算する。そして、指令位置情報に基づく指令位置と、検出位置情報に基づく検出位置とを比較してエンコーダ5の異常の有無を確認する。
 なお、図3において、CPU92、RAM93及びDPRAM95は、同一の構成で接続され、同一の機能を有するものが2セット設けられている。これにより、2つのCPU92を用いた並行処理が可能となる。すなわち、同一の異常判断を2重に行うことができ、1セットの場合と比較して、より信頼性を高めることができる。
 <エンコーダの異常検出方法>
 図4は、ロボット制御部2がロボットAを起動させ、ロボットAが動作を開始した後、セーフティユニット9がエンコーダ5の異常をどのように監視しているかを示したフローチャートである。すなわち、図4は、コントローラ7がサーボドライバ10を介してモータ4を回転動作させたときに、セーフティユニット9がエンコーダ5の異常をどのように監視しているかを示している。
 ステップST1において、ロボット制御部2のコントローラ7は、ロボットAを起動し、ステップST2に進む。
 ステップST2において、ロボット制御部2は、操作者が操作部3を介して設定した教示プログラム及び機能設定等に基づいてロボットAを動作させる。具体的には、コントローラ7は、RAM8に保存された教示プログラム及び機能設定等に基づいて、サーボドライバ10に速度指令を、セーフティユニット9に指令位置情報を出力する。サーボドライバ10は、コントローラ7から受けた速度指令に基づいて、モータ4を駆動し、ロボットAの関節軸12及び外部軸を動作させる。サーボドライバ10は、モータ4に取り付けられたエンコーダ5からの出力信号を受け、モータ4に対して、速度指令と出力信号との差分に基づくフィードバック制御を行う。このとき、エンコーダ5からの出力信号は、セーフティユニット9にも出力されている。
 ステップST3~ST7の処理は、セーフティユニット9により行われる。セーフティユニット9では、エンコーダ5からの出力信号を取得すると(ST3)、モータの位置計算を行う(ST4)。具体的には、セーフティユニット9のCPU92は、エンコーダ5から取得した出力信号、モータ4の各軸の減速比及びモータ4の原点情報等に基づいて、モータ4の回転位置(検出位置情報)を計算する。エンコーダ5から取得する出力信号は、例えばパルス信号の型式で送信される。
 さらに、セーフティユニット9では、コントローラ7から指令位置情報を受けており(ST5)、ST4で算出されたモータ4の現在位置に関する検出位置情報とコントローラ7からの指令位置情報との比較を行う(ST6)。具体的には、セーフティユニット9のCPU92は、エンコーダ5からの出力信号に基づいて計算されたモータ4の回転位置(モータ検出値:検出位置情報)と、コントローラ7から指令されたモータの回転位置(モータ指令値:指令位置情報)とを比較する。
 CPU92は、上記比較の結果、モータ指令値(指令位置情報)とモータ検出値(検出位置情報)との差が所定値以上の場合(ST7でYES)、エンコーダ5の異常と判定し、ステップST8に進む。一方で、モータ指令値とモータ検出値との差が所定値未満の場合(ST7でNO)、エンコーダ5の異常と判定せず、フローはステップST3に戻る。
 具体的には、ロボットAの駆動制御において、コントローラ7が指令した位置にモータ4は移動しようとしている。このため、モータ4の回転位置を示すモータ検出値(検出位置情報)と、コントローラ7が指令した回転位置を示すモータ指令値(指令位置情報)との差は、所定の閾値Pth以内に収まっているはずである。そこで、上記モータ検出値に基づくモータの回転位置が、モータ指令値に基づくモータ指令位置から所定の位置以上離れていると、エンコーダが故障していると判断される。
 ステップST8では、セーフティユニット9のCPU92は、安全回路6に対して非常停止信号を送信する。非常停止信号を受けた安全回路6は、ロボットAの駆動用電源を遮断し、ロボットAを非常停止させる。
 このように、コントローラ7は、ロボットAを起動させ、ロボットAに動作を開始させた後、セーフティユニット9がステップST3~ST7の処理を繰り返し実行し、エンコーダ5の異常を判断している。
 以上のように、本実施形態によると、セーフティユニット9は、エンコーダ5の異常検出において、コントローラ7から直接取得した位置情報と、エンコーダ5からの出力信号に基づいて算出された位置情報とを比較した結果に基づいて、エンコーダ5の異常を検出している。これにより、エンコーダの異常検出装置を有していない汎用ロボット等の作動装置に対して、セーフティユニット9を追加することでエンコーダの故障による異常を検出できる。さらに、その際に、サーボドライバ10等の既存の汎用ロボットの構成要素に対して設計変更等をする必要がなく、既存のシステムに対する影響を小さくできる。したがって、既存のシステムに対してエンコーダの異常判断に係る処理が正しく行われることを示す必要がなく、処理が複雑化することもない。
 この点に関し、図22に示す従来の技術と対比させて説明する。
 エンコーダ5の異常検出装置を有していない汎用ロボットに対して図22に示すような構成を適用する場合、汎用ロボットのサーボドライバ10は、通常、モータ指令値及びモータ検出値を生成する機能及び生成したモータ指令値及びモータ検出値を出力する機能を有していない。したがって、上記の生成機能及び出力機能を有する回路、プログラム等を新規に設計する必要がある。また、追加設計した回路及びプログラム等が正しく機能しているかどうかを示すような仕組み(回路、プログラム、表示等)が必要である。すなわち、手間がかかるとともに処理が複雑化する。一方、本開示に係る異常検出方法及び異常検出装置は、そのようなことが生じない。
 以上のように、本出願において開示する技術の例示として上記第1実施形態について説明した。しかしながら、本開示における技術は、これに限定されず、適宜、変更、置き換え、付加、省略などを行った実施の形態にも適用が可能である。
 例えば、上記第1実施形態について、以下に示すような構成としてもよい。
 -変形例(1)-
 図5は変形例(1)に係るロボット制御部の構成を示すブロック図である。
 図5では、図2の構成に加えて、コントローラ7とセーフティユニット9との間に、一般的な制御遅れを考慮した遅れ制御フィルタとしての1次遅れフィルタ22が設けられている。すなわち、コントローラ7とDPRAM95(第2受信部)との間に、1次遅れフィルタ22が設けられている。
 実際のロボットAの制御において、同じ時間で比較した場合に、セーフティユニット9がコントローラ7から取得した指令位置情報に基づくモータ4の回転位置(モータ指令位置)と、セーフティユニット9がエンコーダ5から取得した出力信号等に基づくモータ4の回転位置(モータ検出位置)とがずれている可能性がある。これは、例えば、モータ制御の特性に起因して発生する。具体的には、ロボット制御部2のコントローラ7が速度指令及び指令位置情報を出力してからサーボドライバ10が実際にモータ4を制御し、その制御に基づいてモータ4が動作するため、一定時間の遅れが生じるためである。
 図6は、ロボットアーム11の関節軸12を最高速度で往復運動させた場合におけるモータ指令位置(図6の太実線)と、モータ検出位置(図6の細実線)との関係を示した図である。図6の太実線と細実線を比較すると、最大で0.1秒程度の遅れが生じており、角度に換算すると18度程度の遅れが生じている(図6の一点鎖線参照)。
 これに対し、図6の破線及び二点鎖線で示すように、1次遅れフィルタ22を設けることにより、モータ指令位置とモータ検出位置との差が大きく減少していることがわかる。なお、図6において、破線は、図5の構成に係るモータ指令位置を、二点鎖線は、図5の構成に係るモータ指令位置とモータ検出位置との偏差を示している。
 図5のような構成にすることにより、図2の構成と比較して、より精度が高くエンコーダの異常を判断できるようになる。具体的には、例えば、検出位置情報と指令位置情報との比較に用いる所定の閾値Pthは、モータ指令位置とモータ検出位置との差に基づいて決定する場合がある。この場合、モータ指令位置とモータ検出位置との差が減少することによって、所定の閾値Pthを小さくすることができ、結果としてエンコーダの異常検出精度を高めることができる。
 なお、エンコーダ5の異常検出方法は、上記図4を用いた手順と同様にすればよいため、ここではその詳細な説明を省略している。
 -変形例(2)-
 図7は変形例(2)に係るロボット制御部の構成を示すブロック図である。
 図7では、図6の構成に加えて、コントローラ7とセーフティユニット9との間に、1次遅れフィルタ22と直列接続された制振フィルタ21が設けられている。
 実際のロボットAの制御において、サーボドライバ10の動作制御の内容によって、より応答性の高い制御(以下、高応答性制御という)を行う場合がある。例えば、レーザーを用いた溶接ロボットにおいて、高速制御かつ軌跡の追従性を高めた制御を行うような場合である。このような高応答性制御を行う場合に、指令位置情報に含まれる起振成分によってモータ4が振動する場合がある。そこで、このモータ4の振動を抑制するために、サーボドライバ10とモータ4との間に制振フィルタ(図示しない)を用いる。高応答性制御が行われている場合に、図7に示すような構成を取ることにより、サーボドライバ10による制御と近い指令を作ることができる。
 図8は、ロボットアーム11の関節軸12を最高速度で往復運動させた場合におけるモータ指令位置と、モータ検出位置との関係を示している。太実線及び細実線は、図6と同じであり、1次遅れフィルタ22及び制振フィルタ21を用いない構成(図2参照)に係る動作について示している。また、図8において、破線は、図7の構成に係るモータ指令位置の変化を、二点鎖線は、図7の構成に係るモータ指令位置とモータ検出位置との偏差を示している。図8から、1次遅れフィルタ22に加えて制振フィルタ21を設けることにより、モータ指令位置とモータ検出位置との差がさらに減少していることがわかる。
 したがって、図7のような構成にすることにより、図2又は図5の構成と比較して、より精度が高くエンコーダの異常を判断することができるようになる。具体的には、例えば、変形例(1)と同様に、所定の閾値Pthを小さくすることができ、結果としてエンコーダの異常検出精度を高めることができる。なお、制振フィルタ21は、入力された指令位置情報から共振成分を除去するものである。また、制振フィルタ21および1次遅れフィルタ22は、両方を順不同で直接に有していてもよく、また、いずれか一方のみでも構わない。
 なお、図7において、制振フィルタ21と1次遅れフィルタ22との位置が互いに入れ替わってもよい。
 -変形例(3)-
 また、図4に係る異常判断方法において、図9に示すようなフローチャートとしてもよい。図9において、ステップST1からST6に係る処理は、図4と同様であるため、ここではその詳細な説明を省略する。
 図9では、ステップST7において、モータ指令値とモータ検出値との差が所定値以上の場合、すなわち、ステップST7で「YES」の場合に、ステップST9に進むようにしている。そして、ステップST9において、セーフティユニット9のCPU92は、コントローラ7がロボットAの非常停止を指示したか否かを判断するようにしている。
 具体的には、コントローラ7は、ロボットAの非常停止をする場合、安全回路6に対して、非常停止信号(図示しない)を出力する。非常停止信号を受けた安全回路6は、ロボットAの駆動用電源を遮断し、ロボットAを停止させる。本変形例(3)では、セーフティユニット9は、コントローラ7から非常停止信号を取得する。そして、ステップST9において、コントローラ7から非常停止信号が出力されているか否かを判断する。コントローラ7から非常停止信号が出力されている場合(ST9でYES)、フローはステップST3に戻る。すなわち、モータ指令値とモータ検出値との差が所定値以上の場合でも、エンコーダ5の異常と判定しない。
 一方で、コントローラ7から非常停止信号が出力されていない場合(ST9でNO)、ステップST8に進む。ステップST8において、セーフティユニット9のCPU92は、安全回路6に対して非常停止信号を送信し、非常停止信号を受けた安全回路6は、ロボットAを非常停止させる。
 このように、ステップST9の処理をステップST7の後に行うことによって、コントローラ7からの指示による非常停止された場合に、セーフティユニット9が、エンコーダ5の異常と誤って判断することがなくなる。具体的には、コントローラ7が非常停止信号を出力することによりロボットAを停止させた場合、コントローラ7の指令位置情報の出力が停止される。このため、セーフティユニット9において、モータ指令値とモータ検出値との比較を継続すると、図4のフローチャートでは、エンコーダ5が正常動作しているにもかかわらず、異常と判定してしまう可能性がある。しかしながら、本態様にかかる処理を行うことでこのような問題の発生を防ぐことができる。
 なお、図4及び図9のフローにおいて、各ステップは必ずしも記載された順で処理しなければならないわけではなく、順番を変更したり、並列処理できる場合には、適宜処理の順番や処理方法を変更してもよい。例えば、ステップST3及びST4に係る処理と、ステップST5に係る処理とは、並列に処理を行ってもよい。
 -第2実施形態-
 本実施形態では、ロボットAの連続動作に係るエンコーダの異常検出方法について説明する。
 なお、ロボットAを連続動作させる場合においても、基本的な構成及び動作は、第1実施形態と同様であり、ここではその詳細な説明を省略し、連続動作に係る部分に対して詳細に説明する。
 図10は、コントローラ7からの速度指令に基づいて、モータ指令位置がP1からP2を経由してP3へと順番に移動する、いわゆる進行動作をした場合におけるモータ指令位置P1~P3と、実際のモータの位置Pr(以下、現在位置Prともいう)との関係を示している。図10のような進行動作では、モータ指令位置がP3まで移動したとき、現在位置PrがP3近辺に存在する。したがって、図4又は図9のフローに沿って処理を行うことにより、エンコーダ5の異常を検出することができる。
 一方で、図11に示すように、コントローラ7からの速度指令に基づくモータ指令位置がP1からP2を経由してP3へと順番に移動した後にP2を経由してP1に戻る、いわゆる往復運動をした場合には、セーフティユニット9がエンコーダ5の異常を誤って判断する場合がある。例えば、図11の往復動作が高速に行われた場合、モータ4の現在位置PrがP3に到達又は十分に接近する前に、サーボドライバ10がモータ4に戻り動作を開始させ、現在位置PrがP2からP1へと戻り動作をする可能性がある。このような場合に、セーフティユニット9が、指令位置情報P3に基づくモータ指令位置と、モータ4の現在位置Prに基づくモータ検出位置との比較を行うと、位置P3と位置Prとの差が大きいことに起因して、エンコーダ5が正常に動作をしているにも拘わらず、セーフティユニット9が異常と判断してしまう可能性がある。
 そこで、図4及び図9におけるステップST6において、CPU92は、指令位置情報に基づくモータ指令値の変化量Δn(直前の指令位置との差分量Δn)を所定のn回分(例えば5回分。)加算する処理を行う。具体的には、例えば、図12に実線で示すように点P1(位置P1)から点P9(位置P9)へと往復運動をさせた場合、Δ1からΔ5までの5回分を加算する。すなわち、加算値ΔはΔ=Δ1+Δ2+Δ3+Δ4+Δ5となる。なお、図12はロボットアーム11の関節軸12を往復運動させた場合におけるモータ指令位置を示した図である。
 さらにステップST6では、CPU92は、モータ指令値に加算値Δを増減した値と、検出位置情報に基づいて計算されたモータ検出値とを比較し、そして、ステップST7では、その比較結果に基づいてエンコーダの異常を判断するようにする。具体的には、モータ検出値P(fs)が下の(数1)の条件を満たす場合、エンコーダ5の異常とは判断しないようにする。このとき、変化量Δnは、変化の方向に拘わらず、絶対値で加算するようにする。
Figure JPOXMLDOC01-appb-M000001
 これにより、往復動作のような特定のロボットの動作方法において、エンコーダ5が正常に動作しているにもかかわらず、CPU92が異常と判断することを防ぐことができる。
 なお、上記のようなエンコーダ5の異常検出方法を採用した場合に、ロボットAが所定期間動作をしない場合がある。そこで、ステップST7において、上の(数1)に代えて、下の(数2)に示すように加算値Δに所定の閾値Thを加えるようにしてもよい。
Figure JPOXMLDOC01-appb-M000002
 このような閾値Thを設けることにより、所定期間にわたってコントローラ7から指令位置情報の変更がない場合、すなわちコントローラ7からロボットAに対して所定期間動かないような指示が出ている場合において、ロボットが制御装置の意図しない動作をしているときでも、セーフティユニット9が、異常を検出できるようになり、ロボットAの動作を非常停止することができるようになる。
 -第3実施形態-
 本実施形態と第1実施形態に示した構成との違いは、高応答性制御と通常制御との切り替えを考慮して指令位置情報の処理ルートを切り替える点にある。
 例えば、ロボットの手先にレーザー射出装置を付けてレーザー溶接を行う場合等の精度の高い動作が要求されるレーザー溶接区間では、ロボットの駆動に関して高応答性制御を行い、それ以外の速度を優先する区間では通常制御を行うことでタクトを短縮するといった、動的制御切り替えを行う場合がある。指令位置情報と検出位置情報との比較時に生じる誤差を低減するため、変形例(1)、(2)で示した制振フィルタ21や1次遅れフィルタ22を用いることは既に述べたとおりである。しかし、上記の制御切り替えを行う場合、これらのフィルタをそのまま用いると、実際のロボットAの動作とセーフティユニット9に与える指令位置情報との差が大きくなり、エンコーダ5の異常検出精度が向上しない場合がある。
 そこで、本開示では、コントローラ7が実際に行う制御方法に応じて、セーフティユニット9に送信される指令位置情報を処理するルートを切り替えることにより、ロボットAの制御モードが切り替わっても精度よくエンコーダ5の異常検出ができるようにするものである。
 以下、図面を用いて具体的に説明する。
 図13は、本実施形態に係るロボット制御部の構成を示す。この構成と、例えば、図7に示す構成との違いは、コントローラ7がロボットAの駆動制御を切り替えるための制御切替部7aを有していることである。教示プログラムあるいは操作部3からの入力により、ロボットAの駆動制御モードが切り替わると、制御切替部7aはこれを検知して、指令位置情報を送信するルートを切り替える。図13に示すように、通常制御を行う場合は1次遅れフィルタ22(第1の遅れ制御フィルタ)を適用してから指令位置情報をセーフティユニット9へと送る。また、高応答性制御を行う場合は、制振フィルタ21と1次遅れフィルタ22(第2の遅れ制御フィルタ)とを適用した上で指令位置情報をセーフティユニット9へと送る。なお、図13では、通常制御を行う場合と、高応答性制御を行う場合とで、同じ1次遅れフィルタ22を用いている。すなわち、時定数が等しいフィルタ22を用いている。
 なお、制御切替部7aの機能は、コントローラ7のハードウェア上で実現してもよいし、ソフトウェア上で実現してもよい。
 図14は、本実施形態に係るエンコーダ5の異常判断方法を示すフローチャートである。
 すなわち、図14は、コントローラ7がサーボドライバ10を介してモータ4を回転動作させたときに、セーフティユニット9がエンコーダ5の異常をどのように監視しているかを示している。
 図14において、ステップST1,ST2及びST6からST11に係る処理は、図4に示したステップST1からST8と同様であるため、ここではその詳細な説明を省略する。
 ステップST3において、ロボットAの駆動制御モードが高応答性制御であるか、そうでないかを判断する。この判断は、上述したように、コントローラ7における制御切替部7aにより行われる。
 ステップST3での判断が肯定的である場合、すなわち、ロボットAの駆動制御モードが高応答性制御であれば、ステップST4において、制振フィルタ21と1次遅れフィルタ22とを適用した上で指令位置情報をセーフティユニット9へ送信する。
 ステップST3での判断が否定的である場合、すなわち、ロボットAの駆動制御モードが通常制御であれば、ステップST5において1次遅れフィルタ22を適用した上で指令位置情報をセーフティユニット9へ送信する。
 以上説明したように、本実施形態によれば、ロボットAの駆動制御モードに応じて、コントローラ7からセーフティユニット9に送られる指令位置情報の送信ルートを切り替えることで、エンコーダ5の異常検出精度を高めることができる。
 例えば、ロボットAの駆動制御モードが高応答性制御であれば、指令位置情報に含まれる起振成分を除去するための制振フィルタ21と、制御の応答遅れを低減するための1次遅れフィルタ22を指令位置情報に適用することで、エンコーダ5の異常検出精度を高めることができる。
 一方、ロボットAの駆動制御モードが通常制御であれば、指令位置情報に含まれる起振成分の除去をあまり考慮しなくても良いことが多い。よって、制振フィルタ21は適用せずに、1次遅れフィルタ22を指令位置情報に適用する。このことにより、不測の誤差の発生を抑制し、エンコーダ5の異常検出精度を高めることができる。
 以上のように、本出願において開示する技術の例示として上記第3実施形態について説明した。しかしながら、本開示における技術は、これに限定されず、適宜、変更、置き換え、付加、省略などを行った実施の形態にも適用が可能である。例えば、上記第3実施形態について、以下に示すような構成としてもよい。
 -変形例(4)-
 図15は変形例(4)に係るロボット制御部の構成を示すブロック図である。
 図15に示す構成では、通常制御時と高応答性制御時とで、指令位置情報が適用される1次遅れフィルタがそれぞれ異なる点が、図13に示す構成と異なる。具体的には、図15に示す構成では、1次遅れフィルタ22aと1次遅れフィルタ22bとを用いている。この構成により、処理ルートの切り替えに応じて、指令位置情報の時間遅れの補償量が異なる。
 実際のロボットAの駆動制御においては、ロボット制御部2のコントローラ7が速度指令及び指令位置情報を出力してからサーボドライバ10が実際にモータ4を制御し、その制御に基づいてモータ4が動作するため、指令位置情報に対して実際の位置は一定の時間遅れが生じる。この遅れは高応答性制御、通常制御のいずれの場合にも生じ、また、その遅れ時間は制御モードによって異なる場合がある。
 従って、図15に示すように、制御モードに応じて制御遅れの時定数がそれぞれ異なる1次遅れフィルタ22a,22bを用いることにより、図13に示す構成と比較して、より精度が高くエンコーダの異常を検出できるようになる。
 -変形例(5)-
 図16は変形例(5)に係るロボット制御部の構成を示すブロック図である。図17は変形例(5)に係るエンコーダ5の異常検出方法を示すフローチャートである。
 図16に示す構成において、コントローラ7から送信される指令位置情報を含む情報が、ロボットAの駆動制御モードに対応したフィルタで処理されるルート(第1処理ルート)と、ロボットAの駆動制御モードに対応していないフィルタで処理されるルート(第2処理ルート)との2系統で並列に処理されて、セーフティユニット9に送信される点で、図7に示した構成と異なる。また、図16に示す構成において、ロボットAの駆動制御モードに対応していないフィルタには、指令位置情報として「0」を入力している。
 実際のロボットAの駆動制御において、指令位置情報を制振フィルタ21や1次遅れフィルタ22に適用する処理は一定時間後まで影響が続く。ロボットAの駆動制御モードの切り替えが急であると、フィルタ処理しきれなかった指令位置情報の影響によりセーフティユニットが判定するための指令位置情報に誤差が含まれる可能性がる。
 そこで、本変形例では、コントローラ7からの指令位置情報をフィルタ処理するにあたって、図16に示すように、2系統のフィルタを準備する。これら指令位置情報の並列処理を行うとともに、ロボットAの駆動制御モードに応じて、各々の系統で異なる情報を処理し、その加算結果を新たな指令位置情報とするようにした。
 以下、図17に示すフローチャートを用いて説明する。なお、図17に示すフローのうち、ステップST1、ST2及びST9からST14における処理は、図4に示したステップST1からST8と同様であるため、ここではその詳細な説明を省略する。
 ステップST3で、ロボットAの駆動制御モードを判断し、その判断が高応答性制御であれば、コントローラ7からの指令位置情報に制振フィルタ21と1次遅れフィルタ22bとを適用してフィルタ処理する(ステップST4)。
 ステップST4での処理と並行して、ステップST5において、コントローラ7からの指令位置情報を「0」とした上で、1次遅れフィルタ22aを適用し処理する。ステップST8において、それぞれの処理結果を加算した上でセーフティユニット9へ送信する指令位置情報としている。
 一方、ステップST3において、ロボットAの駆動制御モードが通常制御であると判断すれば、コントローラ7からの指令位置情報を1次遅れフィルタ22aに適用してフィルタ処理する(ステップST6)。また、ステップST6の処理と並行して、コントローラ7からの指令位置情報を「0」とした上で、制振フィルタ21と1次遅れフィルタ22bとを適用し、フィルタ処理する(ステップST7)。ステップST8において、それぞれの処理結果を加算することでセーフティユニット9へ送信する指令位置情報としている。
 以上説明したように、本変形例によれば、コントローラ7からの送信情報をロボットAの駆動制御モードに対応したフィルタ及びこの駆動制御モードに対応していないフィルタの両方で常に並列処理する。
 また、ロボットAの駆動制御モードに対応じたフィルタには、コントローラ7から送信される指令位置情報を直接適用する一方、駆動制御モードに対応していないフィルタには、指令位置情報を「0」として、フィルタ処理を行い、両方の系統でフィルタ処理された結果を加算して、新たな指令位置情報としてセーフティユニット9に送信する。
 このような処理を行うことで、制御モードの違いによる応答遅れ時間の差異を吸収し、ロボットAの駆動制御モードが異なる場合にも同様に、モータ指令位置とモータ検出位置との差を低減できる。その結果、エンコーダの異常検出精度を高めることができる。
 図18は、本変形例に係る、ロボットの位置の時間変化を示す図であり、ロボットアーム11の関節軸12を高速で往復動作させ、往路は高応答性制御、復路に通常制御を適用した場合のモータ指令位置とモータ検出位置との誤差の変化を示している。
 また、図15に示す構成で関節軸12を駆動した場合のモータ指令位置と実際のモータ検出位置との差分の変化を点線で示しており、図16に示す構成で関節軸12を駆動した場合のモータ指令位置と実際のモータ位置との差分の変化を破線で示している。
 図18より明らかなように、図16に示した構成を適用することにより、モータ指令位置と実際のモータ検出位置との差が減少していることがわかる。
 したがって、変形例(5)の図16に示す構成を使用することで、図13あるいは図15に示した構成と比較して、より精度が高くエンコーダの異常を判断することができるようになる。つまり、第2実施形態と同様に、所定の閾値Pthを小さくすることができ、エンコーダの異常検出精度を高めることができる。
 -変形例(6)-
 図19は変形例(6)に係るロボット制御部の構成を示すブロック図である。
 実際のロボットAの制御においては、ロボット制御部2のコントローラ7が速度指令及び指令位置情報を出力してからサーボドライバ10が実際にモータ4を制御し、その制御に基づいてモータ4が動作するため、指令位置情報に対して実際のモータ位置は一定時間の遅れが生じている。
 この遅れ分を補正するため、上述したように、指令位置情報に対し制御方式に応じた1次遅れフィルタを適用したり、指令位置情報を含む情報に異なるフィルタでの処理を適用したりしている。しかしながら、1次遅れフィルタ22はサーボドライバ10による制御遅れを簡易的に模擬したものなので、この1次遅れ分の精度を改善できる余地がある。
 そこで、図19に示す構成では、図16に示す構成において、通常制御時に使用する1次遅れフィルタ22aに対してフィードフォワード制御を行うことにより、1次遅れ分の精度をさらに改善できるようにしたものである。
 図19に示すように、コントローラ7からの指令位置情報に対して(1-a)倍のゲインをかけた上で1次遅れフィルタ22aに適用して処理を行うのと並行して、指令位置情報にa倍のゲインをかけ、これらの結果を加算してセーフティユニット9に送信する。
 図20は、本変形例に係る、ロボットの位置の時間変化を示す図である。図20では、ロボットアーム11の関節軸12を高速で往復動作させ、往路に高応答性制御、復路に通常制御を適用した場合のモータ指令位置とモータ検出位置との誤差の変化を示している。図21は図20の部分拡大図である。
 図20、21において、図16に示す構成で関節軸12を駆動した場合のモータ指令位置と実際のモータ検出位置との差分の変化を点線で示している。また、図19に示す構成で関節軸12を駆動した場合のモータ指令位置と実際のモータ位置との差分の変化をさらに細かい点線で示している。
 図20,21より明らかなように、図19に示す構成を適用することで、図16に示す構成よりもさらにモータ指令位置とモータ検出位置との差が減少していることがわかる。
 したがって、本変形例によれば、変形例(5)に示した構成と比較して、さらに精度が高くエンコーダの異常を判断することができるようになる。
 なお、本変形例では、1次遅れフィルタ22aに対してフィードフォワード制御を行う構成を説明したが、1次遅れフィルタ22bに対しても同じようにフィードフォワード制御を行うことにより、同様の効果を得ることも可能である。
 以上のように、本開示の異常検出方法は、作動装置の出力軸を駆動するモータの回転位置を検出するためのエンコーダの異常を検出する異常検出方法である。モータの回転位置を指示する速度指令及び該速度指令に応じたモータの回転位置を示す指令位置情報を出力するコントローラと、コントローラから出力される速度指令及びエンコーダから出力される出力信号を受け、速度指令及び出力信号に基づいてモータの駆動を制御するドライバと、エンコーダの異常を検出する異常検出装置とが設けられている。異常検出装置は、コントローラから指令位置情報を、またエンコーダから出力信号をそれぞれ取得する情報取得ステップと、指令位置情報と出力信号に基づいて算出されたモータの検出位置情報とを比較し、該両位置情報間に所定値以上の差があった場合にエンコーダの異常と判定する異常判定ステップとを行うことを特徴とする。
 この方法によれば、異常検出装置は、コントローラから受けた指令位置情報と、エンコーダからの出力信号に基づいて算出された検出位置情報との比較結果に基づいてエンコーダの異常を判定する。これにより、ドライバにエンコーダの異常検出のための新しい構成、機能を追加することなく、エンコーダの異常検出ができるようになる。すなわち、例えば、一般的な作動装置(例えば、ロボットや外部軸)の既存構成、既存回路への影響を最小限に抑えて、エンコーダの異常検出ができるようになる。
 異常検出装置は、異常判定ステップにおいて、コントローラから取得した指令位置情報に対し、モータの駆動制御の遅れに起因して生じた時間遅れを補償し、当該時間遅れが補償された指令位置情報と検出位置情報との比較結果に基づいて、エンコーダの異常の有無を判定する、のが好ましい。
 このように、エンコーダの異常判定に用いる指令位置情報を遅らせることで、モータ駆動制御の遅れに起因する時間のずれを解消することができるため、エンコーダの異常検出精度を高めることができる。
 コントローラは、作動装置の駆動制御モードの切り替えを検知する制御モード検知ステップと、当該駆動制御モードの切り替えに応じて、指令位置情報の処理ルートを切り替える処理ルート切替ステップを行い、異常検出装置は、駆動制御モードに応じた処理ルートで処理された指令位置情報を受け取る、のが好ましい。
 この方法によれば、作動装置の駆動制御モードの違いに伴う指令位置情報と検出位置情報との誤差を低減し、エンコーダの異常検出精度を高めることができる。
 検知された実際の駆動制御モードに対応する第1処理ルートでは、コントローラから出力された指令位置情報を処理するステップと、当該実際の駆動制御モードに対応していない第2処理ルートでは、モータの原点位置に対応する位置情報を指令位置情報として処理するステップと、第1及び第2処理ルートで処理された指令位置情報を加算するステップと、を有し、異常検出装置は、当該加算された指令位置情報受け取る、のが好ましい。
 この方法によれば、作動装置の駆動制御モード切り替えにより、指令処理情報の処理ルートが異なる場合においても、当該処理モードの違いによる応答遅れ時間の差異を吸収し、モータ指令位置とモータ検出位置との差を低減できる。その結果、エンコーダの異常検出精度を高めることができる。
 第1処理ルート、または第2処理ルートの少なくともいずれか一方において、指令位置情報の時間遅れを補償する遅れ補償ステップを行い、当該遅れ補償ステップにおいてフィードフォワード制御を行う、のが好ましい。
 この方法によれば、時間遅れ補償時の誤差をさらに低減し、モータ指令位置とモータ検出位置との差を低減できる。その結果、エンコーダの異常検出精度を高めることができる。
 異常検出装置は、異常判定ステップにおいて、コントローラから出力された指令位置情報の変化量の積算値を生成し、当該積算値及び指令位置情報の和と検出位置情報との比較結果に基づいて、エンコーダの異常の有無を判定する、のが好ましい。
 このように、エンコーダの異常判定に用いる指令位置情報に対して積算値を加えることにより異常判定におけるマージンを増やし、エンコーダが正常に動作しているにも拘わらず、異常検出装置がエンコーダの異常と判定することを防止することができる。
 異常検出装置は、異常判定ステップにおいて、積算値及び指令位置情報の和に所定のオフセット値を加えたものと検出位置情報との比較結果に基づいて、エンコーダの異常の有無を判定する、のが好ましい。
 この方法によれば、積算値及び指令位置情報の和にオフセット値を加えて検出位置情報と比較することにより、例えば作動装置が動作していない場合等において、期間指令位置情報の変化がない場合に、差動装置が意図しない動作をしたときでも、エンコーダの異常を検出することができる。
 作動装置を非常停止するための安全回路がさらに設けられており、コントローラは、非常時に前記安全回路に非常停止信号を送信するように構成され、異常検出装置は、異常判定ステップにおいて、コントローラから非常停止信号が出力されたことを検知した場合、両位置情報間に所定値以上の差があっても、エンコーダの異常と判定しない、のが好ましい。
 この方法によれば、コントローラが非常停止信号を出力した後に、指令位置情報と検出位置情報との間に所定値以上の差があった場合でもエンコーダの異常と判定しないので、例えば、コントローラが非常停止信号出力後に速度指令及び指令位置情報の出力を停止した場合に、エンコーダが正常に動作しているにも拘わらず、エンコーダの異常と判断することを防ぐことができる。
 ここに開示する異常検出装置は、作動装置の出力軸を駆動するモータの回転位置を検出するためのエンコーダの異常を検出する。異常検出装置は、モータの回転位置を指示する速度指令及び該速度指令に応じたモータの回転位置を示す指令位置情報を出力するコントローラと、コントローラから出力される速度指令及びエンコーダから出力される出力信号を受け、速度指令及び出力信号に基づいてモータの駆動を制御するドライバと、エンコーダの異常を検出する異常検出装置とを有する。異常検出装置は、エンコーダから出力信号を受ける第1受信部と、コントローラから指令位置情報を受ける第2受信部と、指令位置情報と出力信号に基づいて算出されたモータの検出位置情報とを比較し、該両位置情報間に所定値以上の差があった場合にエンコーダの異常と判定する判定部とを有している。
 この装置によれば、前述の異常検出方法と同様に、ドライバにエンコーダの異常検出のための新しい機能を追加することなく、エンコーダの異常検出ができるようになる。
 ここに開示する出力軸と該出力軸を駆動するモータとを有するロボットの制御システムは、モータの回転位置を検出するエンコーダと、モータの回転位置を指示する速度指令及び該速度指令に応じたモータの回転位置を示す指令位置情報を出力するコントローラと、コントローラから出力される速度指令及びエンコーダから出力される出力信号を受け、速度指令及び出力信号に基づいてモータの駆動を制御するドライバと、エンコーダの異常を検出する異常検出装置とを有している。異常検出装置は、エンコーダから出力信号を受ける第1受信部と、コントローラから指令位置情報を受ける第2受信部と、指令位置情報と出力信号に基づいて算出されたモータの検出位置情報とを比較し、該両位置情報間に所定値以上の差があった場合にエンコーダの異常と判定する判定部とを有する。
 この制御システムによれば、前述の異常検出方法と同様に、ドライバにエンコーダの異常検出のための新しい機能を追加することなく、エンコーダの異常検出ができるようになる。
 以上説明したように、本開示のエンコーダの異常検出方法によると、汎用のエンコーダを使用している場合においても既存機能、既存装置への影響を最小限に抑えてエンコーダの異常判断をすることができる。
 本開示のエンコーダの異常検出方法は、汎用のエンコーダを使用している場合においても既存機能、既存装置への影響を最小限に抑えてエンコーダの異常判断をすることができるので、汎用の溶接ロボット等の産業用ロボットやその他の作動装置に係るエンコーダの異常を判断する上で特に有用である。
A ロボット(作動装置)
C 接続ケーブル
P モータ検出値
1 ロボット機構部
2 ロボット制御部
3 操作部
4 モータ
5 エンコーダ
6 安全回路
7 コントローラ
7a 制御切替部
9 セーフティユニット(異常検出装置)
10 サーボドライバ
11 ロボットアーム
12 関節軸(出力軸)
21 制振フィルタ
22 1次遅れフィルタ(遅れ制御フィルタ)
22a 1次遅れフィルタ
22b 1次遅れフィルタ
92 CPU(判定部)
94 エンコーダ受信部(第1受信部)
95 DPRAM(第2受信部)

Claims (19)

  1.  ロボット制御部を用いて、作動装置の出力軸を駆動するモータの回転位置を検出するエンコーダの異常を検出するエンコーダの異常検出方法であって、
     前記ロボット制御部は、
     コントローラと、
     前記エンコーダと前記コントローラに接続されたドライバと、
     前記エンコーダと前記コントローラに接続された異常検出装置と、
    を有しており、
     前記エンコーダの異常検出方法は、
     前記モータの回転位置を指示する速度指令、及び、前記速度指令に応じた前記モータの回転位置を示す指令位置情報を出力する出力ステップと、
     前記速度指令、及び、前記エンコーダから出力される出力信号を受け、前記速度指令及び前記出力信号に基づいて前記モータの駆動を制御する制御ステップと、
     前記コントローラから前記指令位置情報を取得し、かつ、前記エンコーダから前記出力信号を取得する情報取得ステップと、
     前記指令位置情報と、前記出力信号に基づいて算出された前記モータの検出位置情報とを比較し、前記指令位置情報と前記モータの前記検出位置情報との間に所定値以上の差があった場合に、前記エンコーダを異常と判定する異常判定ステップと、
    を備える、
    エンコーダの異常検出方法。
  2.  前記指令位置情報に対して、前記モータの駆動制御の遅れに起因する時間遅れを補償するステップをさらに備える
    請求項1記載のエンコーダの異常検出方法。
  3.  前記指令位置情報から共振成分を除去するステップをさらに備える
    請求項1または2記載のエンコーダの異常検出方法。
  4.  前記作動装置の駆動制御モードの切り替えを検知する制御モード検知ステップと、
     前記駆動制御モードの切り替えに応じて、前記指令位置情報の処理ルートを切り替える処理ルート切替ステップと、
    をさらに備える
    請求項1に記載のエンコーダの異常検出方法。
  5.  前記処理ルートの切り替えに応じて、前記異常検出装置は、前記モータの駆動制御の遅れに起因する時間遅れが補償された指令位置情報、または
    共振成分が除去され、かつ、前記時間遅れが補償された指令位置情報を受け取る
    請求項4に記載のエンコーダの異常検出方法。
  6.  前記処理ルートの切り替えに応じて、前記指令位置情報の前記時間遅れの補償量が異なる
    請求項5に記載のエンコーダの異常検出方法。
  7.  検知された駆動制御モードに対応する第1処理ルートにおいて、前記コントローラから出力された前記指令位置情報を処理するステップと、
     前記駆動制御モードに対応していない第2処理ルートにおいて、前記モータの原点位置に対応する位置情報を指令位置情報として処理するステップと、
     前記第1及び第2処理ルートで処理された指令位置情報を加算するステップと、
    をさらに有し、
     前記異常検出装置は、前記加算された指令位置情報を受け取る、請求項4に記載のエンコーダの異常検出方法。
  8.  前記第1処理ルートと前記第2処理ルートの少なくともいずれか一方において、前記指令位置情報の時間遅れを補償する遅れ補償ステップを行い、前記遅れ補償ステップにおいてフィードフォワード制御を行う、
    請求項7に記載のエンコーダの異常検出方法。
  9.  前記異常検出装置は、前記異常判定ステップにおいて、前記コントローラから出力された前記指令位置情報の変化量の積算値を生成し、前記積算値及び前記指令位置情報の和と、前記検出位置情報との比較結果に基づいて、前記エンコーダの異常の有無を判定する
    請求項1から8のうちのいずれか1項に記載のエンコーダの異常検出方法。
  10.  前記異常検出装置は、前記異常判定ステップにおいて、前記積算値及び前記指令位置情報の和に所定のオフセット値を加えた値と、前記検出位置情報との比較結果に基づいて、前記エンコーダの異常の有無を判定する
    請求項9記載のエンコーダの異常検出方法。
  11.  前記ロボット制御部は、前記作動装置を非常停止するための安全回路をさらに有しており、
     前記コントローラは、非常時に前記安全回路に非常停止信号を送信するように構成され、
     前記異常検出装置は、前記異常判定ステップにおいて、前記コントローラから前記非常停止信号が出力されたことを検知した場合、前記指令位置情報と前記モータの前記検出位置情報との間に所定値以上の差があっても、前記エンコーダの異常と判定しない
    請求項1から10のうちのいずれか1項に記載のエンコーダの異常検出方法。
  12.  前記作動装置はロボットである
    請求項1から11のうちのいずれか1項に記載のエンコーダの異常検出方法。
  13.  エンコーダとコントローラに接続され、作動装置の出力軸を駆動するモータの回転位置を検出するためのエンコーダの異常を検出するエンコーダの異常検出装置であって、
     前記エンコーダの異常検出装置は、
      前記エンコーダから前記出力信号を受ける第1受信部と、
      前記コントローラから前記指令位置情報を受ける第2受信部と、
      前記指令位置情報と、前記出力信号に基づいて算出される前記モータの検出位置情報とを比較し、前記指令位置情報と前記モータの前記検出位置情報との間に所定値以上の差があった場合に、前記エンコーダを異常と判定する判定部と、
    備える
    エンコーダの異常検出装置。
  14.  前記コントローラと前記異常検出装置との間に、ドライバによる前記モータの駆動制御の遅れを補償する遅れ制御フィルタをさらに備える
    請求項13記載のエンコーダの異常検出装置。
  15.  前記ドライバと前記モータとの間に前記モータの振動を抑制する制振フィルタを備え、前記コントローラと前記第異常検出装置との間に、前記遅れ制御フィルタと直列接続された制振フィルタを備える
    請求項14記載のエンコーダの異常検出装置。
  16.  前記コントローラは、前記作動装置の駆動制御モードの切り替えを検知し、前記コントローラから異常検出装置に送信される前記指令位置情報の処理ルートを切り替える制御切替部を有し、
     前記コントローラと前記異常検出装置との間に、前記モータの駆動制御の遅れを補償する第1の遅れ制御フィルタと、前記モータの駆動制御の遅れを補償する第2の遅れ制御フィルタとが並列に接続され、かつ、前記第2の遅れ制御フィルタと、前記モータの振動を抑制する制振フィルタとが直列に設けられており、
     前記制御切替部での処理ルートの切り替えに応じて、前記指令位置情報が、前記第1の遅れ制御フィルタ、または、前記制振フィルタ及び前記第2の遅れ制御フィルタに送られる
    請求項13に記載のエンコーダの異常検出装置。
  17.  前記第1の遅れ制御フィルタと前記第2の遅れ制御フィルタとの時定数が等しい
    請求項16に記載のエンコーダの異常検出装置。
  18.  前記第1の遅れ制御フィルタと前記第2の遅れ制御フィルタとの時定数が異なる
    請求項16に記載のエンコーダの異常検出装置。
  19.  モータの回転位置を検出するエンコーダと、
     前記モータの回転位置を指示する速度指令、及び、前記速度指令に応じた前記モータの回転位置を示す指令位置情報を出力するコントローラと、
     前記コントローラから出力される速度指令、及び、前記エンコーダから出力される出力信号を受け、前記速度指令、及び、前記出力信号に基づいて前記モータの駆動を制御するドライバと、
     前記エンコーダと前記コントローラに接続された異常検出装置とを備え、
     前記異常検出装置は、
     前記エンコーダから前記出力信号を受ける第1受信部と、
     前記コントローラから前記指令位置情報を受ける第2受信部と、
     前記指令位置情報と、前記出力信号に基づいて算出される前記モータの検出位置情報とを比較し、前記指令位置情報と前記モータの前記検出位置情報との間に所定値以上の差があった場合に、前記エンコーダの異常と判定する判定部と、
    を有する
    ロボット制御システム。
PCT/JP2017/031701 2016-10-24 2017-09-04 エンコーダの異常検出方法及び異常検出装置、並びにロボット制御システム WO2018079075A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
US16/324,918 US11241792B2 (en) 2016-10-24 2017-09-04 Method and device for detecting abnormality of encoder, and robot control system
JP2018547177A JP6857818B2 (ja) 2016-10-24 2017-09-04 エンコーダの異常検出方法及び異常検出装置、並びにロボット制御システム
EP17865073.5A EP3530423B1 (en) 2016-10-24 2017-09-04 Method and device for detecting abnormality of encoder, and robot control system
CN201780054089.1A CN109689312B (zh) 2016-10-24 2017-09-04 编码器的异常检测方法及异常检测装置和自动装置控制系统

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2016207568 2016-10-24
JP2016-207568 2016-10-24
JP2017005058 2017-01-16
JP2017-005058 2017-03-13

Publications (1)

Publication Number Publication Date
WO2018079075A1 true WO2018079075A1 (ja) 2018-05-03

Family

ID=62023333

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2017/031701 WO2018079075A1 (ja) 2016-10-24 2017-09-04 エンコーダの異常検出方法及び異常検出装置、並びにロボット制御システム

Country Status (5)

Country Link
US (1) US11241792B2 (ja)
EP (1) EP3530423B1 (ja)
JP (1) JP6857818B2 (ja)
CN (1) CN109689312B (ja)
WO (1) WO2018079075A1 (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019031219A1 (ja) * 2017-08-08 2019-02-14 パナソニックIpマネジメント株式会社 コントローラの情報送信方法及びエンコーダの異常検出方法
WO2019220719A1 (ja) * 2018-05-16 2019-11-21 パナソニックIpマネジメント株式会社 エンコーダの異常検出方法、作動制御装置、ロボット及びロボットシステム
JP2021091069A (ja) * 2019-12-12 2021-06-17 セイコーエプソン株式会社 ロボットシステムおよびロボットシステムの制御方法
KR20210099512A (ko) 2020-02-04 2021-08-12 니혼 덴산 산쿄 가부시키가이샤 모터 제어 방법, 모터 구동 장치, 산업용 로봇의 제어 방법 및 산업용 로봇
CN113646718A (zh) * 2019-03-27 2021-11-12 日产自动车株式会社 异常探测装置及异常探测方法
CN113907808A (zh) * 2021-12-14 2022-01-11 极限人工智能有限公司 分体式手术装置及分体式手术装置的控制方法
WO2024085148A1 (ja) * 2022-10-19 2024-04-25 川崎重工業株式会社 ロボットシステム
JP7533140B2 (ja) 2020-11-11 2024-08-14 富士通株式会社 異常判定プログラム、異常判定方法および異常判定装置

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6810630B2 (ja) * 2017-02-13 2021-01-06 川崎重工業株式会社 ロボット制御装置、ロボットシステム及びロボットの制御方法
DE112018003507T5 (de) * 2017-08-08 2020-04-23 Panasonic Intellectual Property Management Co., Ltd. Verfahren zur Erkennung von Drehgeber-Anomalien
US11820007B2 (en) * 2018-05-11 2023-11-21 Nissan Motor Co., Ltd. Abnormality detection device and abnormality detection method
CN110045718A (zh) * 2019-04-30 2019-07-23 宝钢湛江钢铁有限公司 一种堆取料机行走编码器的检测方法
JP6791515B1 (ja) * 2019-10-16 2020-11-25 多摩川精機株式会社 回転機器制御システム及びエンコーダ
CN113093456B (zh) * 2019-12-23 2024-08-16 浙江宇视科技有限公司 一种双滤光片切换装置和方法
CN114619439B (zh) * 2020-12-11 2023-06-13 郑州思昆生物工程有限公司 多轴机械臂防撞击保护控制系统
JP2022119095A (ja) * 2021-02-03 2022-08-16 セイコーエプソン株式会社 ロボット制御装置およびロボットシステム
GB2612324A (en) * 2021-10-27 2023-05-03 Airbus Operations Ltd Emulator
CN114176788B (zh) * 2022-02-17 2022-04-19 极限人工智能有限公司 微创手术机器人及连接控制方法
CN116817989A (zh) * 2022-03-22 2023-09-29 台达电子工业股份有限公司 马达编码器的故障诊断系统及故障诊断方法
CN115648230B (zh) * 2022-12-28 2023-03-21 广东美的制冷设备有限公司 一种机械臂的控制电路、机械臂及机器人
CN116392259B (zh) * 2023-04-28 2024-06-04 极限人工智能有限公司 同轨道双驱动模块的行程和防撞监测方法、系统和机器人

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013000833A (ja) * 2011-06-16 2013-01-07 Seiko Epson Corp ロボットの故障検出方法、ロボット
JP2013179822A (ja) * 2012-01-31 2013-09-09 Ricoh Co Ltd モータ制御装置、モータ制御方法及びプログラム
WO2013180223A1 (ja) * 2012-05-30 2013-12-05 株式会社神戸製鋼所 多関節ロボットの弾性変形補償制御装置および制御方法

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3169292D1 (en) * 1980-11-17 1985-04-18 Hitachi Ltd Assembling or processing system
JP3997201B2 (ja) 2003-12-25 2007-10-24 株式会社不二越 産業用ロボットおよびその異常判断方法
CA2551045C (en) * 2005-06-30 2008-04-22 Hitachi, Ltd. Input-output control apparatus, input-output control method, process control apparatus and process control method
US20090229134A1 (en) * 2005-07-19 2009-09-17 Takashi Nagase Encoder including abnormality detecting device and control system thereof
JP2007265103A (ja) 2006-03-29 2007-10-11 Nachi Fujikoshi Corp ロボット制御装置
JP5203585B2 (ja) * 2006-08-21 2013-06-05 三菱電機株式会社 駆動制御装置及びその制御方法
JP4280278B2 (ja) * 2006-09-29 2009-06-17 ファナック株式会社 エンコーダ通信回路
JP2009183027A (ja) * 2008-01-29 2009-08-13 Goyo Electronics Co Ltd モータ制御装置
JP5477292B2 (ja) 2008-08-26 2014-04-23 株式会社ニコン エンコーダシステム、及び信号処理方法
JP2010152595A (ja) * 2008-12-25 2010-07-08 Omron Corp サーボシステムおよび安全制御機器
JP2011010533A (ja) * 2009-05-25 2011-01-13 Yaskawa Electric Corp モータ制御装置及びモータ制御システム
JP5367623B2 (ja) 2010-03-15 2013-12-11 オムロン株式会社 サーボシステム、サーボモータ駆動装置、セーフティユニットおよびサーボシステムの制御方法
JP4955791B2 (ja) 2010-04-20 2012-06-20 ファナック株式会社 ロボットシステム
WO2012081197A1 (ja) 2010-12-17 2012-06-21 パナソニック株式会社 弾性体アクチュエータ駆動機構の制御装置及び制御方法、並びに、制御プログラム
JP2013144325A (ja) 2012-01-13 2013-07-25 Seiko Epson Corp ロボット装置、故障検出方法
JP5994305B2 (ja) 2012-03-15 2016-09-21 オムロン株式会社 ロータリーエンコーダおよびロータリーエンコーダの異常検出方法
JP6008121B2 (ja) * 2013-01-28 2016-10-19 セイコーエプソン株式会社 ロボットおよびロボット制御装置
JP6193000B2 (ja) * 2013-06-12 2017-09-06 株式会社日立製作所 エンコーダ異常検出装置及びエンコーダ異常検出装置を用いたエレベータ装置
US9446517B2 (en) * 2013-10-17 2016-09-20 Intuitive Surgical Operations, Inc. Fault reaction, fault isolation, and graceful degradation in a robotic system
JP5945973B2 (ja) * 2013-11-05 2016-07-05 株式会社安川電機 エンコーダ、エンコーダ付きモータ、サーボシステム、エンコーダの信号処理方法
JP5638730B1 (ja) * 2014-04-02 2014-12-10 三菱電機株式会社 モータ制御装置およびモータ制御システム
DE102015220517A1 (de) * 2015-10-21 2017-04-27 Kuka Systems Gmbh MRK-System und Verfahren zum Steueren eines MRK-Systems
JP2018055317A (ja) * 2016-09-28 2018-04-05 ブラザー工業株式会社 速度監視装置と速度監視方法
JP7220353B2 (ja) * 2017-08-08 2023-02-10 パナソニックIpマネジメント株式会社 コントローラの情報送信方法及びエンコーダの異常検出方法
DE112018003507T5 (de) * 2017-08-08 2020-04-23 Panasonic Intellectual Property Management Co., Ltd. Verfahren zur Erkennung von Drehgeber-Anomalien
EP3795309B1 (en) * 2018-05-16 2023-08-30 Panasonic Intellectual Property Management Co., Ltd. Encoder abnormality detecting method, operation control device, robot, and robot system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013000833A (ja) * 2011-06-16 2013-01-07 Seiko Epson Corp ロボットの故障検出方法、ロボット
JP2013179822A (ja) * 2012-01-31 2013-09-09 Ricoh Co Ltd モータ制御装置、モータ制御方法及びプログラム
WO2013180223A1 (ja) * 2012-05-30 2013-12-05 株式会社神戸製鋼所 多関節ロボットの弾性変形補償制御装置および制御方法

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019031219A1 (ja) * 2017-08-08 2019-02-14 パナソニックIpマネジメント株式会社 コントローラの情報送信方法及びエンコーダの異常検出方法
WO2019220719A1 (ja) * 2018-05-16 2019-11-21 パナソニックIpマネジメント株式会社 エンコーダの異常検出方法、作動制御装置、ロボット及びロボットシステム
JPWO2019220719A1 (ja) * 2018-05-16 2021-05-27 パナソニックIpマネジメント株式会社 エンコーダの異常検出方法、作動制御装置、ロボット及びロボットシステム
EP3795309A4 (en) * 2018-05-16 2021-07-14 Panasonic Intellectual Property Management Co., Ltd. METHOD OF DETECTING CODING ANOMALIES, OPERATIONAL CONTROL DEVICE, ROBOTS AND ROBOTIC SYSTEM
US11759953B2 (en) 2018-05-16 2023-09-19 Panasonic Intellectual Property Management Co., Ltd. Encoder abnormality detecting method, operation control device, robot, and robot system
JP7296593B2 (ja) 2018-05-16 2023-06-23 パナソニックIpマネジメント株式会社 エンコーダの異常検出方法、作動制御装置、ロボット及びロボットシステム
EP3951528A4 (en) * 2019-03-27 2022-03-23 Nissan Motor Co., Ltd. FAULT DETECTION APPARATUS AND FAULT DETECTION METHOD
CN113646718B (zh) * 2019-03-27 2024-04-30 日产自动车株式会社 异常探测装置及异常探测方法
CN113646718A (zh) * 2019-03-27 2021-11-12 日产自动车株式会社 异常探测装置及异常探测方法
JP7443740B2 (ja) 2019-12-12 2024-03-06 セイコーエプソン株式会社 ロボットシステムおよびロボットシステムの制御方法
JP2021091069A (ja) * 2019-12-12 2021-06-17 セイコーエプソン株式会社 ロボットシステムおよびロボットシステムの制御方法
KR20210099512A (ko) 2020-02-04 2021-08-12 니혼 덴산 산쿄 가부시키가이샤 모터 제어 방법, 모터 구동 장치, 산업용 로봇의 제어 방법 및 산업용 로봇
JP7533140B2 (ja) 2020-11-11 2024-08-14 富士通株式会社 異常判定プログラム、異常判定方法および異常判定装置
CN113907808B (zh) * 2021-12-14 2022-03-01 极限人工智能有限公司 分体式手术装置及分体式手术装置的控制方法
CN113907808A (zh) * 2021-12-14 2022-01-11 极限人工智能有限公司 分体式手术装置及分体式手术装置的控制方法
WO2024085148A1 (ja) * 2022-10-19 2024-04-25 川崎重工業株式会社 ロボットシステム

Also Published As

Publication number Publication date
EP3530423A4 (en) 2019-09-25
US20200047344A1 (en) 2020-02-13
JPWO2018079075A1 (ja) 2019-09-12
US11241792B2 (en) 2022-02-08
CN109689312A (zh) 2019-04-26
JP6857818B2 (ja) 2021-04-14
EP3530423B1 (en) 2022-04-13
EP3530423A1 (en) 2019-08-28
CN109689312B (zh) 2021-09-17

Similar Documents

Publication Publication Date Title
WO2018079075A1 (ja) エンコーダの異常検出方法及び異常検出装置、並びにロボット制御システム
JP7033704B2 (ja) エンコーダの異常検出方法
JP7220353B2 (ja) コントローラの情報送信方法及びエンコーダの異常検出方法
JP7296593B2 (ja) エンコーダの異常検出方法、作動制御装置、ロボット及びロボットシステム
US10022866B2 (en) Robot control device
EP1667001B1 (en) Controller
US11597434B2 (en) Steering control system
JP6630739B2 (ja) 検出装置の異常判定システム、および検出装置の異常判定方法
JP6447141B2 (ja) ロボットの非常停止方法、ロボットの制御装置
JP2008221916A (ja) 駆動制御装置およびそれを用いた操舵制御装置
JP6841171B2 (ja) 機器制御システム及び遠隔調整システム
KR100746688B1 (ko) 능동 전륜 조향 시스템의 페일세이프 제어방법
JP4671171B2 (ja) モータ制御装置
US20220176557A1 (en) Robot control method and robot control device
JP6568147B2 (ja) サーボモータ制御装置
JP2007145286A (ja) 車両の操舵装置
JP2009001044A (ja) 電動パワーステアリング装置
JP4321428B2 (ja) サーボシステムの異常検出装置
JP2015122932A (ja) ロボットの制御装置および制御方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 17865073

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2018547177

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2017865073

Country of ref document: EP