WO2020250474A1 - サーボモータ制御装置 - Google Patents
サーボモータ制御装置 Download PDFInfo
- Publication number
- WO2020250474A1 WO2020250474A1 PCT/JP2020/000973 JP2020000973W WO2020250474A1 WO 2020250474 A1 WO2020250474 A1 WO 2020250474A1 JP 2020000973 W JP2020000973 W JP 2020000973W WO 2020250474 A1 WO2020250474 A1 WO 2020250474A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- command value
- value
- processing unit
- command
- limit value
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H02—GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
- H02P—CONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
- H02P29/00—Arrangements for regulating or controlling electric motors, appropriate for both AC and DC motors
- H02P29/40—Regulating or controlling the amount of current drawn or delivered by the motor for controlling the mechanical load
Definitions
- the present invention relates to a servomotor control device.
- Patent Document 1 discloses a motor control device that rewrites the command value when the command value from the host device is incorrect. According to Patent Document 1, the suppression of the terminal voltage of the motor is performed by passing a negative current on the d-axis so that the maximum output voltage of the inverter does not exceed the terminal voltage of the permanent magnet type synchronous motor.
- the voltage command value input to the inverter is compared with the terminal voltage upper limit value set based on the maximum output voltage of the inverter, and when the voltage command value exceeds the terminal voltage upper limit value, the d-axis The current component is switched in the direction of increasing in the negative direction, and when the voltage command value is equal to or less than the terminal voltage upper limit value, the d-axis current component is switched in the direction of decreasing in the negative direction.
- the servo motor control device controls the servo motor based on a command from the host device.
- an unusual command value may be input to the servomotor control device.
- the servomotor control device side cannot determine whether or not the input command value is a correct value and whether or not the operation should be performed according to the input value.
- Patent Document 1 assuming that the command value from the host device is correct, the voltage command value generated inside the inverter is compared with the maximum output voltage for protecting the inverter. In Patent Document 1, even if the command value input from the host device is incorrect for some reason, the current / voltage command value that protects the inverter is generated, but the application (press device) to which the motor is mounted. Etc.) may cause malfunction. Depending on the malfunction, the device on which the motor is mounted may be damaged, or the members (molds, etc.) used in the device may be damaged.
- an object of the present invention is to provide a servomotor control device that reduces the occurrence of malfunctions in an application having a servomotor.
- the servomotor control device controls the servomotor based on the input command value input from the host device.
- the servomotor control device has a control processing unit that compares an input command value and a command limit value to generate a command value and generates a current command value and a voltage command value based on the command value, and a current command value and a voltage command value. It is equipped with a power converter that supplies power to the servomotor based on the above.
- the control processing unit sets the input command value as the command value, and when the input command value is outside the range of the command limit value, sets the command limit value as the command value.
- FIG. 1 is a block diagram showing an example of the configuration of the servomotor control device according to the first embodiment of the present invention.
- the servomotor control device 1 includes a command value input circuit 10, a control processing unit 20, a power converter 30, and a gate driver 70.
- ⁇ Command value input circuit >>
- An input command value is input from the host device 100 to the command value input circuit 10.
- the input command value is a parameter for controlling the servomotor M.
- Input command values corresponding to the operation patterns of the application having the servomotor M are sequentially input to the command value input circuit 10.
- a speed command value is input as an input command value.
- the speed command value is a parameter related to the rotation speed of the servomotor M, and is represented by the angular velocity of the rotation shaft or the like.
- the input command value is input to the command value input circuit 10 as an analog signal such as an analog voltage.
- the input analog signal is converted into a digital signal by the AD conversion circuit 11 and output to the control processing unit 20.
- command value input circuit 10 may be connected to the host device 100 via a network such as RT-485 or Ethernet (registered trademark). In this case, a digital signal is transmitted and received between the command value input circuit 10 and the host device 100.
- RT-485 or Ethernet registered trademark
- FIG. 2 is a block diagram showing an example of the configuration of the control processing unit according to the first embodiment of the present invention.
- the host device 100, the control processing unit 20, and the command value input circuit 10 are omitted.
- the control processing unit 20 is a functional block that generates a current command value and a voltage command value for controlling the servomotor M based on the input command value input from the host device 100. As shown in FIG. 2, the control processing unit 20 includes a speed command value determination processing unit 23, a speed control processing unit 24, a torque command value determination processing unit 25, a torque control processing unit 26, and a limit value table 29.
- the control processing unit 20 has a processor, a memory, and the like.
- the memory stores a program for operating the servomotor control device 1, an operation pattern of an application, and the like.
- the processor executes the program read from the memory, each functional block included in the control processing unit 20 is realized.
- the control processing unit 20 may be composed of an ASIC (application specific integrated circuit), an FPGA (field-programmable gate array), or the like that realizes each of the above-mentioned functional blocks.
- the speed command value determination processing unit 23 is a functional block that determines whether or not the input speed command value is a normal value. Specifically, the speed command value determination processing unit 23 compares the input speed command value with the speed command limit value stored in the limit value table 29. The speed command value determination processing unit 23 switches the speed command limit value to be compared in each period according to the operation pattern.
- the speed command value determination processing unit 23 determines that the value is normal, and uses the speed command value as the speed command value after comparison to control the speed. Output to the processing unit 24.
- the speed command value determination processing unit 23 determines that the speed command value is an abnormal value, and after comparing the speed command limit values. It is output to the speed control processing unit 24 as a speed command value. At that time, the speed command value determination processing unit 23 outputs an abnormality notification indicating that the input speed command value is an abnormal value to the host device 100.
- the abnormality notification may include information that identifies an abnormality occurrence period in the operation pattern.
- the position information of the servomotor M detected by the position detector EN is input to the speed command value determination processing unit 23.
- the speed command value determination processing unit 23 can switch the speed command limit value based on the position information of the servomotor M.
- the sensor information of the application detected by the sensor AS is input to the speed command value determination processing unit 23.
- the speed command value determination processing unit 23 can switch the speed command limit value by using the sensor information.
- the sensor information includes, for example, position information of a member in the application driven by the servomotor M and the like. Examples of the member include a slide mounted on a press machine and a die attached to the slide. It is possible to specify each period in the operation pattern from the position information of the member detected by the sensor AS.
- the speed control processing unit 24 is a functional block that generates a torque command value based on the speed command value after comparison. Specifically, the speed control processing unit 24 calculates the torque corresponding to the post-comparison speed command value input from the speed command value determination processing unit 23. Specifically, the speed control processing unit 24 applies a torque to the motor rotation shaft so that the rotation speed of the servomotor M becomes a speed specified by the speed command value (speed command value or speed command limit value) after comparison. Is calculated. The speed control processing unit 24 outputs the calculated torque as a torque command value to the torque command value determination processing unit 25.
- the speed command value determination processing unit 23 sequentially inputs the speed command value after comparison corresponding to each period of the operation pattern to the speed control processing unit 24. Then, the speed control processing unit 24 sequentially outputs the corresponding torque command value to the torque command value determination processing unit 25 based on the input after-comparison speed command value.
- the torque command value determination processing unit 25 is a functional block that determines whether or not the input torque command value is a normal value. Specifically, the torque command value determination processing unit 25 compares the input torque command value with the torque command limit value stored in the limit value table 29. The torque command value determination processing unit 25 switches the torque command limit value to be compared according to the operation pattern.
- the torque command value determination processing unit 25 determines that the value is normal, and uses the torque command value as the torque command value after comparison for torque control. Output to the processing unit 26.
- the torque command value determination processing unit 25 determines that the torque command value is an abnormal value, and determines that the torque command value is an abnormal value. Is output to the torque control processing unit 26 as a torque command value after comparison. At that time, the torque command value determination processing unit 25 outputs an abnormality notification indicating that the input torque command value is an abnormal value to the host device 100.
- the abnormality notification output from the torque command value determination processing unit 25 may also include information for specifying the abnormality occurrence period in the operation pattern.
- the position information of the servomotor M detected by the position detector EN is also input to the torque command value determination processing unit 25.
- the torque command value determination processing unit 25 can switch the torque command limit value based on the position information of the servomotor M.
- the sensor information of the application detected by the sensor AS is also input to the torque command value determination processing unit 25.
- the torque command value determination processing unit 25 can also switch the torque command limit value by using the sensor information.
- the torque control processing unit 26 is a functional block that generates a current command value and a voltage command value based on the torque command value after comparison. Specifically, the torque control processing unit 26 sets the servomotor M so that the torque applied to the rotation shaft of the servomotor M becomes the torque specified by the torque command value (torque command value or torque command limit value) after comparison. Calculate the current and voltage to be supplied to. The torque control processing unit 26 outputs the calculated current and voltage to the gate driver 70 as a current command value and a voltage command value.
- the torque command value determination processing unit 25 sequentially inputs the compared torque command values corresponding to each period of the operation pattern to the torque control processing unit 26. Then, the torque control processing unit 26 sequentially outputs the corresponding current command value and voltage command value to the gate driver 70 based on the input after-comparison torque command value.
- the limit value table 29 is a table that stores various parameters related to the control of the servomotor M, such as the speed command limit value and the torque command limit value.
- the speed command limit value and the torque command limit value are set according to the operation pattern so as to suppress the occurrence of malfunction in the application having the servomotor M. ⁇ Power converter ⁇
- the power converter 30 includes a converter 40, a smoothing circuit 50, an inverter 60, and a gate driver 70.
- the converter 40 is a circuit that converts an AC power supply supplied from an external power supply 110 into a DC power supply.
- a well-known circuit is used for the converter 40.
- the converter 40 is composed of, for example, a half-wave rectifier circuit, a full-wave rectifier circuit, or the like.
- the smoothing circuit 50 is a circuit that smoothes the DC power supply generated by the converter 40.
- a well-known circuit including a capacitor or a coil is used for the smoothing circuit 50.
- the inverter 60 is a circuit that converts a DC power source smoothed by the smoothing circuit 50 into a three-phase AC power source.
- the inverter 60 is provided with a pulse modulation circuit corresponding to each of the three phases of the AC power supply.
- the pulse modulation circuit is composed of, for example, a pulse width modulation (PAM: Pulse Amplitude Modulation) circuit or a pulse amplitude modulation (PWM: Pulse Width Modulation) circuit.
- PAM Pulse Amplitude Modulation
- PWM Pulse Width Modulation
- the gate driver 70 is a circuit block that generates a control signal based on the current command value and the voltage command value output from the torque control processing unit 26. Specifically, when the current command value and the voltage command value are input, the gate driver 70 generates a control signal for each phase that controls the pulse modulation circuit and outputs the control signal to the inverter 60.
- the torque control processing unit 26 sequentially inputs the current command value and the voltage command value corresponding to each period of the operation pattern to the gate driver 70. Then, the gate driver 70 sequentially outputs the control signals of the corresponding phases to the inverter 60 based on the input current command value and voltage command value.
- the gate driver 70 may be provided outside the power converter 30. "application"
- the servo motor M is incorporated in various applications such as a press machine, and operates by a three-phase power supply supplied from the inverter 60 to make the application function.
- a position detector EN is provided in the vicinity of the servomotor M.
- the position detector EN supplies position information to the control processing unit 20 by outputting a pulse every time the servomotor M makes one rotation, for example.
- the control processing unit 20 can calculate the position, rotation speed, and the like of the servomotor M from the input position information.
- the sensor AS senses, for example, the position of a member in the application driven by the servomotor M, and outputs the sensor information to the control processing unit 20.
- the sensor information includes, for example, position information of a member in the application driven by the servomotor M and the like.
- the control processing unit 20 recognizes the situation in the application from the sensor information, and can switch the speed command limit value and the torque command limit value slightly according to the situation. ⁇ Servo motor control method>
- FIG. 3 is a diagram showing an example of a servomotor control method according to the first embodiment of the present invention.
- FIG. 3 shows a speed command value, a torque command value, and a timing chart of the current position of the servomotor M, which are input command values.
- the timing chart of the speed command value and the torque command value also shows the speed command limit value and the torque command limit value in each period.
- the timing chart of the speed command value corresponds to the operation pattern of the present embodiment.
- the operation pattern based on the speed command value is used for controlling a servomotor provided in, for example, a press machine.
- the slide and the die attached to the slide descend from the top dead center toward the bottom dead center toward the die fixed below the slide to press and pressurize / regenerate the die cushion. I do. After that, the slide and mold rise from bottom dead center to top dead center. In the press machine, such a slide and a vertical movement (reciprocating movement) of the die are repeatedly performed.
- the speed command value linearly increases from 0 to V0 during the time t0-t1.
- the torque command value during this period is T0.
- the position of the servomotor M has moved from P0 to P1.
- the speed command limit value in this period is VL0, and the torque command limit value is TL0.
- the speed command value is V0 during the time t1-t2.
- the torque command value during this period is T1.
- the position of the servomotor M has moved from P1 to P2.
- the speed command limit value during this period is VL0, and the torque command limit value is TL1.
- the speed command value linearly decreases from V0 to V1.
- the torque command value during this period is T2.
- the position of the servomotor M has moved from P2 to P3.
- the speed command limit value in this period is VL0, and the torque command limit value is TL2.
- the torque command limit value TL2 is a value smaller than 0, and the torque command value is set so as not to be smaller than the torque command limit value TL2.
- the speed command value is V1 during the time t3-t7.
- the torque command value during this period fluctuates in the order of T1 (t3-t4), T3 (t4-t5), T4 (t5-t6), and T1 (t6-t7).
- the position of the servomotor M is sequentially moving from P3 to P7.
- the speed command limit value during this period is VL0.
- the torque command limit values in this period are TL1 (t3-t4), TL3 (t4-t5), TL4 (t5-t6), and TL1 (t6-t7).
- the speed command value linearly increased from V1 to V0.
- the torque command value during this period is T0.
- the position of the servomotor M has moved from P7 to P8.
- the speed command limit value in this period is VL0, and the torque command limit value is TL0.
- the speed command value is V0 during the time t8-t9.
- the torque command value during this period is T1.
- the position of the servomotor M has moved from P8 to P9.
- the speed command limit value in this period is VL0, and the torque command limit value is TL1.
- the speed command value linearly decreases from V0 to V0.
- the torque command value during this period is T2.
- the position of the servomotor M has moved from P9 to P10.
- the speed command limit value in this period is VL0, and the torque command limit value is TL2.
- the slide and the die descend to near the bottom dead center at the speed command value V0, for example, during the period of time t0 to t3. Then, the slide and the die are pressed and the die cushion is pressed / regenerated at the speed command value V1 during the period of time t3-t7. Then, the slide and the mold rise to the top dead center at the speed command value V0 during the period of time t7 to t10.
- the torque command value When the torque command is applied to the press machine, the torque command value is the acceleration torque T0 during each period of time t0-t1 and t7-t8. During each period of time t2-t3 and t9-t10, the torque command value is the deceleration torque T2. During the period of time t4-t5, the torque command value is the pressurizing torque T3. During the period of time t5-t6, the torque command value is the regenerative torque T4. The torque command value is the friction torque T1 during each period of time t1-t2, t3-t4, t6-t7, and t8-t9.
- speed command values and torque command values can be calculated in advance and set at the time of trial run before full-scale operation. Therefore, values obtained by adding a margin to these values can be set as the speed command limit value and the torque command limit value.
- FIG. 4 is a diagram showing an example of a limit value table corresponding to FIG.
- the rotation direction and the position information indicating the state of the servomotor M are also stored.
- each period in the operation pattern is specified based on the position information of the servomotor M detected by the position detector EN.
- the rotation direction of the servomotor M is detected based on the position information detected by the position detector EN. For example, if the position information is output from the position detector EN every time the servomotor M rotates by 120 °, the rotation direction of the servomotor M can be easily detected.
- the control processing unit 20 sets the input command value as the command value after comparison, and the input command value is outside the range of the command limit value.
- the command limit value is used as the command value after comparison.
- the torque command value determination processing unit 25 compares the torque command value generated by the speed control processing unit 24 with the torque command limit value, and generates the torque command value after comparison. According to this configuration, even if an abnormal torque command value is generated by the calculation of the control processing unit 20, the torque command value is rewritten to the torque command limit value, so that a malfunction occurs in the application caused by the control processing unit 20. It is also possible to reduce it.
- the command limit value to be compared is switched according to each period of the operation pattern of the application having the servomotor M. According to this configuration, it is possible to appropriately select the command limit value according to the operation of the application. This makes it possible to appropriately set the margin of the command limit value with respect to the input command value.
- the speed command limit value and the torque command limit value are switched based on the position information of the servomotor M detected by the position detector EN. According to this configuration, it is possible to appropriately select the torque command limit value to be compared not only for the speed command value but also for the torque command value generated by the control processing unit 20.
- an abnormality notification is output to the host device 100.
- the control processing unit 20 is notified that there is an abnormality in the speed command value or the torque command value.
- the position command value is input to the command value input circuit 10 from the host device 100 as an input command value.
- the input command value is input to the command value input circuit 10 by, for example, a network or a pulse train input.
- the command value input circuit 10 outputs the input position command value to the control processing unit 20.
- FIG. 5 is a block diagram showing an example of the configuration of the control processing unit according to the second embodiment of the present invention.
- the control processing unit 20 of FIG. 5 includes a position command value determination processing unit 21, a position control processing unit 22, a speed command value determination processing unit 23, a speed control processing unit 24, a torque command value determination processing unit 25, and a torque control processing unit 26.
- the limit value table 29 is provided.
- the position command value determination processing unit 21 is a functional block that determines whether or not the input position command value is a normal value. Specifically, the position command value determination processing unit 21 compares the input position command value with the position command limit value stored in the limit value table 29. The position command value determination processing unit 21 switches the speed command limit value to be compared in each period according to the operation pattern.
- the position command value determination processing unit 21 determines that the value is normal, and uses the position command value as the position command value after comparison to control the position. Output to the processing unit 22.
- the position command value determination processing unit 21 determines that the position command value is an abnormal value, and after comparing the position command limit values. It is output to the position control processing unit 22 as a position command value. At that time, the position command value determination processing unit 21 outputs an abnormality notification indicating that the input position command value is an abnormal value to the host device 100.
- the abnormality notification may include information that identifies an abnormality occurrence period in the operation pattern.
- the position information of the servomotor M detected by the position detector EN is input to the position command value determination processing unit 21.
- the position command value determination processing unit 21 can switch the position command limit value based on the position information of the servomotor M.
- the position command value determination processing unit 21 can specify each period in the operation pattern by using the sensor information and switch the position command limit value.
- the position control processing unit 22 is a functional block that generates a speed command value based on the position command value after comparison. Specifically, the position control processing unit 22 calculates the speed corresponding to the post-comparison position command value input from the position command value determination processing unit 21. Specifically, the position control processing unit 22 determines that the position of the servomotor M at a predetermined time is the position defined by the position command value (position command value or position command limit value) after comparison of the motor rotation shaft. Calculate the speed. The position control processing unit 22 outputs the calculated speed as a speed command value to the speed command value determination processing unit 23.
- the position command value determination processing unit 21 sequentially inputs the post-comparison position command values corresponding to each period of the operation pattern into the position control processing unit 22. Then, the position control processing unit 22 sequentially outputs the corresponding speed command value to the speed command value determination processing unit 23 based on the input post-comparison position command value.
- the speed command value determination processing unit 23 compares the speed command value generated by the position control processing unit 22 with the speed command limit value stored in the limit value table 29, and inputs the speed command. Judge whether the value is a normal value. Other processing is the same as that of the first embodiment. ⁇ Servo motor control method>
- FIG. 6 is a diagram showing an example of a servomotor control method according to the second embodiment of the present invention.
- FIG. 6 shows timing charts of position command values, speed command values, torque command values, and sensor inputs 1, 2, and 3, which are input command values.
- the timing chart of the position command value, the speed command value, and the torque command value also shows the position command limit value, the speed command limit value, and the torque command limit value in each period.
- the timing chart of the position command value corresponds to the operation pattern of this embodiment.
- the operation pattern based on the position command value is used for controlling a servomotor provided in, for example, an NC machine tool.
- the position command value increases from 0 to P0.
- the speed command value during this period linearly increases from 0 to V0.
- the torque command value during this period is T0.
- the position limit value during this period is PL0, the speed command limit value is VL0, and the torque command limit value is TL0.
- the position command value linearly increases from P0 to P1.
- the speed command value during this period is V0.
- the torque command value during this period is T1.
- the position command limit value during this period is PL1, the speed command limit value is VL0, and the torque command limit value is TL1.
- the position command value has increased from P1 to P2. However, the rate of increase in the latter half of this period is slower than in the first half.
- the speed command value during this period linearly decreases from V0 to 0.
- the torque command value during this period is T2.
- the position command limit value during this period is PL2, the speed command limit value is VL0, and the torque command limit value is TL2.
- the torque command limit value TL2 is a value smaller than 0, and the torque command value is set so as not to be smaller than the torque command limit value TL2.
- the position command value has decreased from P2 to P1. However, the rate of decrease in the first half of this period is slower than in the second half.
- the speed command value during this period linearly decreases from 0 to V1.
- the torque command value during this period is T2.
- the position command limit value during this period is PL3.
- the speed command limit value during this period is VL1.
- the torque command limit value during this period is TL2.
- the position command value linearly decreases from P1 to P0.
- the speed command value during this period is V1.
- the torque command value during this period is T3.
- the position command limit value during this period is PL4, the speed command limit value is VL1, and the torque command limit value is TL3.
- the position command value decreased from P0 to 0.
- the speed command value during this period linearly increases from V1 to 0.
- the torque command value during this period is T0.
- the position command limit value during this period is PL5, the speed command limit value is VL1, and the torque command limit value is TL0.
- the servomotor of the NC machine tool or the like rotates from 0 to P2 and then returns to the original position.
- the speed command value generated inside the control processing unit 20 based on the position command value causes the servomotor to rotate in the forward direction during the period of time t0 to t3.
- the speed command value in the period of time t3-t6 causes the servomotor to rotate in the reverse direction.
- the torque command value generated inside the control processing unit 20 by the speed command value generates the acceleration torque at the time of forward rotation in the period of time t0 to t1.
- the torque command value in the period of time t1-t2 generates the friction torque in the positive direction.
- the torque command value in the period of time t2-t3 generates the deceleration torque at the time of forward rotation.
- the torque command value in the period of time t3-t4 generates the acceleration torque at the time of reverse rotation.
- the torque command value in the period of time t4-t5 generates friction torque in the opposite direction.
- the torque command value in the period of time t5-t6 generates a deceleration torque at the time of reverse rotation.
- the position, speed, and torque of the servo motor in the NC processing machine etc. can be calculated in advance and set at the time of trial run before full-scale operation. Therefore, a value obtained by adding a margin to these values can be set as a position command limit value, a speed command limit value, and a torque command limit value.
- FIG. 7 is a diagram showing an example of a limit value table corresponding to FIG.
- the states (ON, OFF) of the sensor inputs 1, 2, and 3 are also stored. There is.
- the sensor AS detects the operation of the application including the servomotor, and switches the states (ON, OF) of the sensor inputs 1, 2, and 3 according to the detected operation.
- the control processing unit 20 specifies a period in the operation pattern based on, for example, the input patterns of the sensor inputs 1, 2, and 3, and the position command limit value, the speed command limit value, and the torque command limit of the specified period. Select each value.
- the position command value not only the position command limit value stored in the limit value table but also the position correction value generated based on the position command value of the immediately preceding timing may be used as the position command limit.
- the control processing unit 20 generates a position correction value obtained by adding a predetermined correction value to the position command value (P0 or the like) near the time t1, and compares the position command value with the position correction value after comparison. Generate a position command value. Then, this process may be continuously performed until the difference between the position command value and the position command limit value is within the range of a predetermined threshold value. According to this configuration, the difference between the position command value and the position command limit value can be reduced, so that the servomotor and the application can be operated more safely. ⁇ Main effects of this embodiment>
- control processing unit 20 generates a speed command value based on the input position command value, and generates a torque command value based on the speed command value.
- the position command limit value, the speed command limit value, and the torque command limit value are switched based on the position information of the servomotor M detected by the position detector EN. According to this configuration, it is possible to appropriately select the position command limit value, the speed command limit value, and the torque command limit value to be compared with respect to the position command value, the speed command value, and the torque command value. It becomes.
- an abnormality notification is output to the host device 100.
- the host device 100 is notified that there is an abnormality in the position command value.
- the position command limit value, the speed command limit value, and the torque command limit value are switched by using the sensor information of the application detected by the sensor AS.
- the period in the operation pattern can be specified based on the input pattern, and the position command limit value, the speed command limit value, and the torque command limit value can be appropriately selected.
- the present invention is not limited to the above-described embodiment, and includes various modifications. It is also possible to replace a part of the configuration of one embodiment with the configuration of another embodiment, and it is also possible to add the configuration of another embodiment to the configuration of one embodiment. ..
- the control of the servomotor by the input pattern of the sensor AS is also applicable to the first embodiment.
- each member and the relative size described in the drawing are simplified and idealized in order to explain the present invention in an easy-to-understand manner, and may have a more complicated shape in mounting.
- Servo motor control device 20 ... Control processing unit, 21 ... Position command value determination processing unit, 22 ... Position control processing unit, 23 ... Speed command value determination processing unit, 24 ... Speed control processing unit, 25 ... Torque command value Judgment processing unit, 26 ... Torque control processing unit, 30 ... Power converter, 60 ... Inverter, 70 ... Gate driver, 100 ... Higher-level device, AS ... Sensor, EN ... Position detector, M ... Servo motor
Landscapes
- Engineering & Computer Science (AREA)
- Power Engineering (AREA)
- Control Of Electric Motors In General (AREA)
Abstract
サーボモータ制御装置は、上位装置100から入力される入力指令値に基づきサーボモータの制御を行う。サーボモータ制御装置は、入力指令値と指令リミット値とを比較して比較後指令値を生成し、比較後指令値に基づき電流指令値及び電圧指令値を生成する制御処理部20と、電流指令値及び電圧指令値に基づきサーボモータMに電力を供給する電力変換器とを備えている。制御処理部20は、入力指令値が指令リミット値の範囲内である場合、入力指令値を比較後指令値とし、入力指令値が指令リミット値の範囲外である場合、指令リミット値を比較後指令値とする。
Description
本発明は、サーボモータ制御装置に関する。
特許文献1には、上位装置からの指令値が正しくない場合、指令値を書き換えるモータの制御装置が開示されている。特許文献1によれば、モータの端子電圧の抑制は、インバータの最大出力電圧が永久磁石式同期モータの端子電圧を超えないようにd軸に負の電流を流すことによって行われる。
具体的には、インバータに入力される電圧指令値とインバータの最大出力電圧をもとに設定された端子電圧上限値とが比較され、電圧指令値が端子電圧上限値を超えた場合にd軸電流成分は負の方向に増大する方向に切替えられ、電圧指令値が端子電圧上限値以下の場合にはd軸電流成分を負の方向に減少させる方向に切替えられる。
通常、サーボモータ制御装置は上位装置からの指令に基づいてサーボモータの制御を行う。しかし、上位装置との通信エラーや上位装置内におけるバグの発生等により、通常ではありえない異常な指令値がサーボモータ制御装置に入力される場合がある。このような場合に、入力された指令値が正しい値かどうか、入力値に従った動作をすべきか否かをサーボモータ制御装置側では判断することができない。
特許文献1においても、上位装置からの指令値は正しいものとして、インバータ内部で生成された電圧指令値とインバータを保護するための最大出力電圧との比較が行われる。特許文献1では、何らかの原因により上位装置から入力された指令値が誤っていた場合でも、インバータを保護するような電流・電圧指令値が生成されるが、モータが搭載の先のアプリケーション(プレス装置等)に誤動作を生じさせてしまうおそれがある。誤動作によってはモータが搭載されている装置の破損、装置で用いられる部材(金型等)の破損が発生するおそれがある。
そこで、本発明は、サーボモータを有するアプリケーションにおける誤動作の発生を低減させるサーボモータ制御装置を提供することを目的とする。
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、以下のとおりである。
本発明の代表的な実施の形態によるサーボモータ制御装置は、上位装置から入力される入力指令値に基づきサーボモータの制御を行う。サーボモータ制御装置は、入力指令値と指令リミット値とを比較して指令値を生成し、指令値に基づき電流指令値及び電圧指令値を生成する制御処理部と、電流指令値及び電圧指令値に基づきサーボモータに電力を供給する電力変換器と、を備えている。制御処理部は、入力指令値が指令リミット値の範囲内である場合、入力指令値を指令値とし、入力指令値が指令リミット値の範囲外である場合、指令リミット値を指令値とする。
本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば以下のとおりである。
すなわち、本発明の代表的な実施の形態によれば、サーボモータを有するアプリケーションにおける誤動作の発生を低減させることが可能となる。
以下、本発明の実施の形態を、図面を参照しつつ説明する。以下で説明する各実施の形態は、本発明を実現するための一例であり、本発明の技術範囲を限定するものではない。なお、実施例において、同一の機能を有する部材には同一の符号を付し、その繰り返しの説明は、特に必要な場合を除き省略する。
(実施の形態1)
<サーボモータ制御装置の構成>
(実施の形態1)
<サーボモータ制御装置の構成>
図1は、本発明の実施の形態1に係るサーボモータ制御装置の構成の一例を示すブロック図である。図1に示すように、サーボモータ制御装置1は、指令値入力回路10、制御処理部20、電力変換機30、ゲートドライバ70を備えている。
《指令値入力回路》
《指令値入力回路》
指令値入力回路10には、上位装置100から入力指令値が入力される。入力指令値は、サーボモータMを制御するためのパラメータである。指令値入力回路10には、サーボモータMを有するアプリケーションの運転パターンに対応する入力指令値が順次入力される。本実施の形態では、入力指令値として速度指令値が入力される。速度指令値は、サーボモータMの回転速度に関するパラメータであり、回転軸の角速度等で表される。
入力指令値は、例えばアナログ電圧等のアナログ信号として指令値入力回路10に入力される。入力されたアナログ信号は、AD変換回路11によりデジタル信号に変換され、制御処理部20へ出力される。
また、指令値入力回路10は、例えばRT-485やEthernet(登録商標)等のネットワーク等を介して、上位装置100と接続されてもよい。この場合、指令値入力回路10と上位装置100との間では、デジタル信号の送受信が行われる。
《制御処理部》
《制御処理部》
図2は、本発明の実施の形態1に係る制御処理部の構成の一例を示すブロック図である。なお、図2では、上位装置100と制御処理部20と指令値入力回路10は省略されている。
制御処理部20は、上位装置100から入力された入力指令値に基づき、サーボモータMを制御するための電流指令値及び電圧指令値を生成する機能ブロックである。制御処理部20は、図2に示すように、速度指令値判定処理部23、速度制御処理部24、トルク指令値判定処理部25、トルク制御処理部26、リミット値テーブル29を備えている。
制御処理部20は、プロセッサやメモリ等を有する。メモリには、サーボモータ制御装置1を動作させるプログラムやアプリケーションの運転パターン等が格納されている。メモリから読み出したプログラムをプロセッサが実行することにより、制御処理部20に含まれる各機能ブロックが実現される。また、制御処理部20は、前述した各機能ブロックを実現するASIC(application specific integrated circuit)やFPGA(field-programmable gate array)等で構成されてもよい。
速度指令値判定処理部23は、入力された速度指令値が正常な値であるかどうかの判定を行う機能ブロックである。具体的に述べると、速度指令値判定処理部23は、入力された速度指令値とリミット値テーブル29に格納された速度指令リミット値とを比較する。速度指令値判定処理部23は、運転パターンに応じて各期間における比較対象となる速度指令リミット値を切り換える。
速度指令値判定処理部23は、速度指令値が比較対象として選択した速度指令リミット値の範囲内である場合、正常な値であると判断し、速度指令値を比較後速度指令値として速度制御処理部24へ出力する。
これに対し、速度指令値判定処理部23は、速度指令値が選択した速度指令リミット値の範囲外である場合、速度指令値は異常な値であると判断し、速度指令リミット値を比較後速度指令値として速度制御処理部24へ出力する。その際、速度指令値判定処理部23は、入力された速度指令値が異常な値であることを示す異常通知を上位装置100へ出力する。異常通知には、運転パターンにおける異常発生期間を特定する情報が含まれてもよい。
速度指令値判定処理部23には、位置検出器ENで検出されるサーボモータMの位置情報が入力される。速度指令値判定処理部23は、サーボモータMの位置情報に基づき速度指令リミット値を切り換えることが可能である。
また、速度指令値判定処理部23には、センサASにより検出されるアプリケーションのセンサ情報が入力される。速度指令値判定処理部23は、センサ情報を用いて速度指令リミット値を切り換えることが可能である。センサ情報には、例えばサーボモータMにより駆動されるアプリケーション内の部材の位置情報等が含まれる。部材としては、例えばプレス機に搭載されるスライド及びスライドに取り付けられた金型等が挙げられる。センサASが検出する部材の位置情報により、運転パターンにおける各期間を特定することが可能である。
速度制御処理部24は、比較後速度指令値に基づきトルク指令値を生成する機能ブロックである。具体的に述べると、速度制御処理部24は、速度指令値判定処理部23から入力された比較後速度指令値に対応するトルクを算出する。具体的に述べると、速度制御処理部24は、サーボモータMの回転速度が比較後速度指令値(速度指令値又は速度指令リミット値)で規定される速度となるよう、モータ回転軸に掛けるトルクを算出する。速度制御処理部24は、算出したトルクをトルク指令値としてトルク指令値判定処理部25へ出力する。
速度制御処理部24には、速度指令値判定処理部23から、運転パターンの各期間に対応する比較後速度指令値が順次入力される。そして、速度制御処理部24は、入力される比較後速度指令値に基づき、対応するトルク指令値をトルク指令値判定処理部25へ順次出力する。
トルク指令値判定処理部25は、入力されたトルク指令値が正常な値であるかどうかの判定を行う機能ブロックである。具体的に述べると、トルク指令値判定処理部25は、入力されたトルク指令値とリミット値テーブル29に格納されたトルク指令リミット値とを比較する。トルク指令値判定処理部25は、運転パターンに応じて比較対象となるトルク指令リミット値を切り換える。
トルク指令値判定処理部25は、トルク指令値が比較対象として選択したトルク指令上限値の範囲内である場合、正常な値であると判断し、トルク指令値を比較後トルク指令値としてトルク制御処理部26へ出力する。
これに対し、トルク指令値判定処理部25は、トルク指令値が比較対象として選択したトルク指令リミット値の範囲外である場合、トルク指令値は異常な値であると判断し、トルク指令リミット値を比較後トルク指令値としてトルク制御処理部26へ出力する。その際、トルク指令値判定処理部25は、入力されたトルク指令値が異常な値であることを示す異常通知を上位装置100へ出力する。トルク指令値判定処理部25から出力される異常通知にも、運転パターンにおける異常発生期間を特定する情報が含まれてもよい。
トルク指令値判定処理部25にも、位置検出器ENで検出されるサーボモータMの位置情報が入力される。トルク指令値判定処理部25は、サーボモータMの位置情報に基づきトルク指令リミット値を切り換えることが可能である。
また、トルク指令値判定処理部25にも、センサASにより検出されるアプリケーションのセンサ情報が入力される。トルク指令値判定処理部25も、センサ情報を用いてトルク指令リミット値を切り換えることが可能である。
トルク制御処理部26は、比較後トルク指令値に基づき電流指令値及び電圧指令値を生成する機能ブロックである。具体的に述べると、トルク制御処理部26は、サーボモータMの回転軸に掛かるトルクが比較後トルク指令値(トルク指令値又はトルク指令リミット値)で規定されるトルクとなるよう、サーボモータMに供給する電流及び電圧を算出する。トルク制御処理部26は、算出した電流及び電圧を電流指令値及び電圧指令値としてゲートドライバ70へ出力する。
トルク制御処理部26には、トルク指令値判定処理部25から、運転パターンの各期間に対応する比較後トルク指令値が順次入力される。そして、トルク制御処理部26は、入力される比較後トルク指令値に基づき、対応する電流指令値及び電圧指令値をゲートドライバ70へ順次出力する。
リミット値テーブル29は、速度指令リミット値やトルク指令リミット値等、サーボモータMの制御に関わる各種パラメータを格納するテーブルである。速度指令リミット値やトルク指令リミット値は、サーボモータMを有するアプリケーションにおける誤動作の発生が抑えられるよう、運転パターンに応じて設定される。
《電力変換機》
《電力変換機》
電力変換機30は、図1に示すように、コンバータ40、平滑回路50、インバータ60、ゲートドライバ70を有する。コンバータ40は、外部電源110から供給される交流電源を直流電源に変換する回路である。コンバータ40には周知の回路が用いられる。コンバータ40は、例えば半波整流回路や全波整流回路等で構成される。平滑回路50は、コンバータ40で生成された直流電源を平滑にする回路である。平滑回路50には、例えばコンデンサやコイルを備えた周知の回路が用いられる。
インバータ60は、平滑回路50で平滑にされた直流電源を3相の交流電源に変換する回路である。インバータ60には、交流電源の3相のそれぞれに対応するパルス変調回路が設けられている。パルス変調回路は、例えばパルス幅変調(PAM:Pulse Amplitude Modulation)回路やパルス振幅変調(PWM:Pulse Width Modulation)回路で構成されている。各相のパルス変調回路は、後述するゲートドライバ70から入力される制御信号により制御される。これにより、インバータ60は、電流指令値及び電圧指令値に基づく電力をサーボモータMへ供給する。
ゲートドライバ70は、トルク制御処理部26から出力された電流指令値及び電圧指令値に基づく制御信号を生成する回路ブロックである。具体的に述べると、電流指令値及び電圧指令値が入力されると、ゲートドライバ70は、パルス変調回路を制御する各相の制御信号を生成し、インバータ60へ出力する。
ゲートドライバ70には、トルク制御処理部26から、運転パターンの各期間に対応する電流指令値及び電圧指令値が順次入力される。そして、ゲートドライバ70は、入力される電流指令値及び電圧指令値に基づき、対応する各相の制御信号をインバータ60へ順次出力する。なお、ゲートドライバ70は、電力変換機30の外側に設けられてもよい。
《アプリケーション》
《アプリケーション》
サーボモータMは、例えばプレス機等の各種アプリケーションに組み込まれ、インバータ60から供給される3相電源により動作し、アプリケーションを機能させる。サーボモータM付近には、位置検出器ENが設けられている。位置検出器ENは、サーボモータMが例えば1回転する度にパルスを出力することで、制御処理部20へ位置情報を供給する。制御処理部20は、入力される位置情報によりサーボモータMの位置や回転速度等を算出することが可能である。
センサASは、例えばサーボモータMにより駆動されるアプリケーション内の部材の位置等をセンシングし、センサ情報として制御処理部20へ出力する。センサ情報には、例えばサーボモータMにより駆動されるアプリケーション内の部材の位置情報等が含まれる。制御処理部20は、センサ情報によりアプリケーション内の状況を認識し、状況に応じて速度指令リミット値ややトルク指令リミット値を切り換えることが可能である。
<サーボモータの制御方法>
<サーボモータの制御方法>
次に、具体例を挙げてサーボモータMの制御方法について説明する。図3は、本発明の実施の形態1に係るサーボモータの制御方法の一例を示す図である。図3には、入力指令値である速度指令値、トルク指令値、サーボモータMの現在位置のタイミングチャートがそれぞれ示されている。速度指令値、トルク指令値のタイミングチャートには、各期間における速度指令リミット値、トルク指令リミット値もそれぞれ示されている。速度指令値のタイミングチャートが本実施の形態の運転パターンに対応している。速度指令値による運転パターンは、例えばプレス機等に設けられるサーボモータの制御に用いられる。
プレス機では、スライド及びスライドに取り付けられた金型は、上死点から、スライドの下方に固定された金型に向かって下死点まで下降することでプレス加工及びダイクッションの加圧/回生を行う。その後、スライド及び金型は、下死点から上死点まで上昇する。プレス機では、このようなスライド及び金型の上下運動(往復運動)が繰り返し行われる。
まず、時刻t0-t1の期間、速度指令値が直線的に0からV0まで増加している。この期間のトルク指令値はT0である。この期間内に、サーボモータMの位置は、P0からP1まで移動している。この期間における速度指令リミット値はVL0、トルク指令リミット値はTL0である。
時刻t1-t2の期間、速度指令値はV0である。この期間のトルク指令値はT1である。この期間内に、サーボモータMの位置は、P1からP2まで移動している。この期間の速度指令リミット値はVL0、トルク指令リミット値はTL1である。
時刻t2-t3の期間、速度指令値が直線的にV0からV1まで減少している。この期間のトルク指令値はT2である。この期間内に、サーボモータMの位置は、P2からP3まで移動している。この期間における速度指令リミット値はVL0、トルク指令リミット値はTL2である。トルク指令リミット値TL2は、0より小さい値であり、トルク指令値がトルク指令リミット値TL2より小さくならないように設定されている。
時刻t3-t7の期間、速度指令値はV1である。この期間のトルク指令値は、T1(t3-t4)、T3(t4-t5)、T4(t5-t6)、T1(t6-t7)の順に変動している。時刻t3-t7の期間内に、サーボモータMの位置は、P3からP7まで順次移動している。この期間における速度指令リミット値はVL0である。この期間におけるトルク指令リミット値は、TL1(t3-t4)、TL3(t4-t5)、TL4(t5-t6)、TL1(t6-t7)である。
時刻t7-t8の期間、速度指令値が直線的にV1からV0まで増加している。この期間のトルク指令値はT0である。この期間内に、サーボモータMの位置は、P7からP8まで移動している。この期間における速度指令リミット値はVL0、トルク指令リミット値はTL0である。
時刻t8-t9の期間、速度指令値はV0である。この期間のトルク指令値はT1である。この期間内に、サーボモータMの位置は、P8からP9まで移動している。この期間における速度指令リミット値はVL0、トルク指令リミット値はTL1である。
時刻t9-t10の期間、速度指令値が直線的にV0からV0まで減少している。この期間のトルク指令値はT2である。この期間内に、サーボモータMの位置は、P9からP10まで移動している。この期間における速度指令リミット値はVL0、トルク指令リミット値はTL2である。
プレス機では、スライド及び金型は、例えば時刻t0-t3の期間に速度指令値V0で下死点付近まで下降する。そして、スライド及び金型は、時刻t3-t7の期間に速度指令値V1でプレス加工及びダイクッションの加圧/回生を行う。そして、スライド及び金型は、時刻t7-t10の期間に速度指令値V0で上死点まで上昇する。
トルク指令をプレス機に当てはめると、時刻t0-t1、t7-t8の各期間、トルク指令値は、加速トルクT0である。時刻t2-t3、t9-t10の各期間、トルク指令値は減速トルクT2である。時刻t4-t5の期間、トルク指令値は加圧トルクT3である。時刻t5-t6の期間、トルク指令値は回生トルクT4である。時刻t1-t2、t3-t4、t6-t7、t8-t9の各期間、トルク指令値は摩擦トルクT1である。
これらの速度指令値及びトルク指令値は、予め計算や本格稼働前の試運転時に設定することができる。このため、これらの値にマージンを加えた値を速度指令リミット値及びトルク指令リミット値として設定することができる。
図4は、図3に対応するリミット値テーブルの一例を示す図である。図4のリミット値テーブルには、各期間における速度指令リミット値及びトルク指令リミット値の他にも、サーボモータMの状態を示す回転方向及び位置情報も格納されている。リミット値テーブルに各期間におけるサーボモータMの状態も格納しておくことで、位置検出器ENが検出したサーボモータMの位置情報に基づき、運転パターンにおける各期間が特定される。なお、サーボモータMの回転方向は、位置検出器ENが検出した位置情報に基づき検出される。例えば、サーボモータMが120°回転するごとに位置検出器ENから位置情報が出力されるようにすれば、サーボモータMの回転方向を容易に検出することができる。
これにより、比較対象となる速度指令リミット値及びトルク指令リミット値が容易に選択され、速度指令値判定処理部23及びトルク指令値判定処理部25における比較処理が速やかに実行される。
<本実施の形態による主要な効果>
<本実施の形態による主要な効果>
本実施の形態によれば、制御処理部20は、入力指令値が指令リミット値の範囲内である場合、入力指令値を比較後指令値とし、入力指令値が指令リミット値の範囲外である場合、指令リミット値を比較後指令値とする。
この構成によれば、入力指令値(速度指令値)が異常な値と判定された場合でも、比較対象である指令リミット値(速度指令リミット値)に指令値が書き換えられる。これにより、上位装置100における演算不具合による過大な指令値や外乱による負荷の増大などを原因として、入力指令値が指令リミット値を越えてしまうような状況の発生が抑えられるので、サーボモータMを有するアプリケーションにおける誤動作の発生を低減させることが可能となる。
また、本実施の形態によれば、トルク指令値判定処理部25は、速度制御処理部24で生成されたトルク指令値とトルク指令リミット値とを比較して比較後トルク指令値を生成する。この構成によれば、制御処理部20の演算により異常なトルク指令値が生成された場合でもトルク指令値がトルク指令リミット値に書き換えられるので、制御処理部20に起因するアプリケーションにおける誤動作の発生を低減させることも可能となる。
また、本実施の形態によれば、サーボモータMを有するアプリケーションの運転パターンの各期間に応じて比較対象となる指令リミット値が切り換えられる。この構成によれば、アプリケーションの動作に追従して指令リミット値を適切に選択することが可能となる。これにより、入力指令値に対する指令リミット値のマージンを適切に設定することが可能となる。
また、本実施の形態によれば、位置検出器ENにより検出されるサーボモータMの位置情報に基づき速度指令リミット値及びトルク指令リミット値が切り換えられる。この構成によれば、速度指令値だけでなく、制御処理部20で生成されるトルク指令値に対しても、比較対象となるトルク指令リミット値を適切に選択することが可能となる。
また、本実施の形態によれば、入力指令値(速度指令値)及びトルク指令値の少なくともいずれかが異常な値であると判定された場合、異常通知が上位装置100へ出力される。この構成によれば、制御処理部20において速度指令値又はトルク指令値に異常があったことが通知される。
(実施の形態2)
(実施の形態2)
次に、実施の形態2について説明する。なお、以下では、前述の実施の形態と重複する箇所については原則としてその説明を省略する。本実施の形態において、指令値入力回路10には、上位装置100から位置指令値が入力指令値として入力される。入力指令値は、例えばネットワークあるいはパルス列入力等により指令値入力回路10に入力される。指令値入力回路10は、入力された位置指令値を制御処理部20へ出力する。
図5は、本発明の実施の形態2に係る制御処理部の構成の一例を示すブロック図である。図5の制御処理部20は、位置指令値判定処理部21、位置制御処理部22、速度指令値判定処理部23、速度制御処理部24、トルク指令値判定処理部25、トルク制御処理部26、リミット値テーブル29を備えている。
位置指令値判定処理部21は、入力された位置指令値が正常な値であるかどうかの判定を行う機能ブロックである。具体的に述べると、位置指令値判定処理部21は、入力された位置指令値とリミット値テーブル29に格納された位置指令リミット値とを比較する。位置指令値判定処理部21は、運転パターンに応じて各期間における比較対象となる速度指令リミット値を切り換える。
位置指令値判定処理部21は、位置指令値が比較対象として選択した位置指令リミット値の範囲内である場合、正常な値であると判断し、位置指令値を比較後位置指令値として位置制御処理部22へ出力する。
これに対し、位置指令値判定処理部21は、位置指令値が選択した位置指令リミット値の範囲外である場合、位置指令値は異常な値であると判断し、位置指令リミット値を比較後位置指令値として位置制御処理部22へ出力する。その際、位置指令値判定処理部21は、入力された位置指令値が異常な値であることを示す異常通知を上位装置100へ出力する。異常通知には、運転パターンにおける異常発生期間を特定する情報が含まれてもよい。
位置指令値判定処理部21には、位置検出器ENで検出されるサーボモータMの位置情報が入力される。位置指令値判定処理部21は、サーボモータMの位置情報に基づき位置指令リミット値を切り換えることが可能である。
また、位置指令値判定処理部21には、センサASにより検出されるアプリケーションのセンサ情報が入力される。位置指令値判定処理部21は、センサ情報を用いて運転パターンにおける各期間を特定し、位置指令リミット値を切り換えることが可能である。
位置制御処理部22は、比較後位置指令値に基づき速度指令値を生成する機能ブロックである。具体的に述べると、位置制御処理部22は、位置指令値判定処理部21から入力された比較後位置指令値に対応する速度を算出する。具体的に述べると、位置制御処理部22は、所定時刻におけるサーボモータMの位置が比較後位置指令値(位置指令値又は位置指令リミット値)で規定される位置となるよう、モータ回転軸の速度を算出する。位置制御処理部22は、算出した速度を速度指令値として速度指令値判定処理部23へ出力する。
位置制御処理部22には、位置指令値判定処理部21から、運転パターンの各期間に対応する比較後位置指令値が順次入力される。そして、位置制御処理部22は、入力される比較後位置指令値に基づき、対応する速度指令値を速度指令値判定処理部23へ順次出力する。
本実施の形態では、速度指令値判定処理部23は、位置制御処理部22で生成された速度指令値とリミット値テーブル29に格納された速度指令リミット値とを比較し、入力された速度指令値が正常な値であるかどうかの判定を行う。その他の処理は、実施の形態1と同様である。
<サーボモータの制御方法>
<サーボモータの制御方法>
次に、本実施の形態におけるサーボモータの制御方法について説明する。図6は、本発明の実施の形態2に係るサーボモータの制御方法の一例を示す図である。図6には、入力指令値である位置指令値、速度指令値、トルク指令値、センサ入力1、2、3のタイミングチャートがそれぞれ示されている。位置指令値、速度指令値、トルク指令値のタイミングチャートには、各期間における位置指令リミット値、速度指令リミット値、トルク指令リミット値もそれぞれ示されている。位置指令値のタイミングチャートが本実施の形態の運転パターンに対応している。位置指令値による運転パターンは、例えばNC工作機等に設けられるサーボモータの制御に用いられる。
まず、時刻t0-t1の期間、位置指令値は、0からP0まで増加している。この期間の速度指令値は、直線的に0からV0まで増加している。この期間のトルク指令値はT0である。この期間の位置リミット値はPL0、速度指令リミット値はVL0、トルク指令リミット値はTL0である。
時刻t1-t2の期間、位置指令値は、直線的にP0からP1まで増加している。この期間の速度指令値はV0である。この期間のトルク指令値はT1である。この期間の位置指令リミット値はPL1、速度指令リミット値はVL0、トルク指令リミット値はTL1である。
時刻t2-t3の期間、位置指令値は、P1からP2に増加している。ただし、この期間の後半の増加率は、前半よりも緩やかになっている。この期間の速度指令値は、直線的にV0から0まで減少している。この期間のトルク指令値はT2である。この期間の位置指令リミット値はPL2、速度指令リミット値はVL0、トルク指令リミット値はTL2である。トルク指令リミット値TL2は、0より小さい値であり、トルク指令値がトルク指令リミット値TL2より小さくならないように設定されている。
時刻t3-t4の期間、位置指令値は、P2からP1に減少している。ただし、この期間の前半の減少率は、後半よりも緩やかになっている。この期間の速度指令値は、直線的に0からV1まで減少している。この期間のトルク指令値はT2である。この期間の位置指令リミット値はPL3である。この期間の速度指令リミット値はVL1である。この期間のトルク指令リミット値はTL2である。
時刻t4-t5の期間、位置指令値は、直線的にP1からP0まで減少している。この期間の速度指令値はV1である。この期間のトルク指令値はT3である。この期間の位置指令リミット値はPL4、速度指令リミット値はVL1、トルク指令リミット値はTL3である。
時刻t5-t6の期間、位置指令値は、P0から0まで減少している。この期間の速度指令値は、直線的にV1から0まで増加している。この期間のトルク指令値はT0である。この期間の位置指令リミット値はPL5、速度指令リミット値はVL1、トルク指令リミット値はTL0である。
図6に示すような位置指令値による運転パターンでは、NC工作機等のサーボモータは、0からP2まで回転した後元の位置まで戻る。具体的に述べると、位置指令値に基づき制御処理部20の内部で生成される速度指令値は、時刻t0-t3の期間では、サーボモータを正回転させる。一方、時刻t3-t6の期間における速度指令値は、サーボモータを逆回転させる。
速度指令値により制御処理部20の内部で生成されるトルク指令値は、時刻t0-t1の期間では正回転時の加速トルクを発生させる。時刻t1-t2の期間におけるトルク指令値は、正方向の摩擦トルクを発生させる。時刻t2-t3の期間におけるトルク指令値は、正回転時の減速トルクを発生させる。時刻t3-t4の期間におけるトルク指令値は、逆回転時の加速トルクを発生させる。時刻t4-t5の期間におけるトルク指令値は、逆方向の摩擦トルクを発生させる。時刻t5-t6の期間におけるトルク指令値は、逆回転時の減速トルクを発生させる。
NC加工機等におけるサーボモータの位置、速度、及びトルクは、予め計算や本格稼働前の試運転時に設定することができる。このため、これらの値にマージンを加えた値を位置指令リミット値、速度指令リミット値、及びトルク指令リミット値として設定することができる。
図7は、図6に対応するリミット値テーブルの一例を示す図である。図7のリミット値テーブルには、各期間における位置指令リミット値、速度指令リミット値、及びトルク指令リミット値の他にも、センサ入力1、2、3の状態(ON、OFF)も格納されている。
センサASは、サーボモータを含むアプリケーションの動作を検出し、検出した動作に応じてセンサ入力1、2、3の状態(ON、OF)を切り換える。
リミット値テーブルにセンサASの入力パターンも登録しておくことで、センサASにより検出されるアプリケーションのセンサ情報を用いて指令リミット値を切り換えることが可能である。具体的には、制御処理部20は、例えばセンサ入力1、2、3の入力パターンに基づき運転パターンにおける期間を特定し、特定した期間の位置指令リミット値、速度指令リミット値、及びトルク指令リミット値をそれぞれ選択する。
なお、位置指令値については、リミット値テーブルに格納された位置指令リミット値だけでなく、直前のタイミングの位置指令値等を基に生成された位置補正値を位置指令リミットとして用いてもよい。例えば、図6の時刻t1-t2の期間では、時刻t1付近では位置指令値と位置指令リミット値との差分が大きくなっている。この場合、制御処理部20は、例えば時刻t1付近の位置指令値(P0等)に所定の補正値を加算した位置補正値を生成し、位置指令値と位置補正値とを比較して比較後位置指令値を生成する。そして、位置指令値と位置指令リミット値との差分が所定の閾値の範囲内となるまでこの処理を連続して行ってもよい。この構成によれば、位置指令値と位置指令リミット値との差分を小さくすることができるので、サーボモータ及びアプリケーションをより安全に動作させることが可能となる。
<本実施の形態による主要な効果>
<本実施の形態による主要な効果>
本実施の形態によれば、前述の実施の形態による各効果に加え、以下の効果が得られる。本実施の形態によれば、制御処理部20は、入力された位置指令値に基づき速度指令値を生成し、速度指令値に基づきトルク指令値を生成する。
この構成によれば、位置指令値が入力された場合にも、サーボモータMを有するアプリケーションにおける誤動作の発生を低減させることが可能となる。また、この構成によれば、サーボモータの位置を制御することができ、誤動作の発生を抑えつつ、アプリケーションによる精密な加工処理を行うことが可能となる。
また、本実施の形態によれば、位置検出器ENにより検出されるサーボモータMの位置情報に基づき位置指令リミット値、速度指令リミット値、及びトルク指令リミット値が切り換えられる。この構成によれば、位置指令値、速度指令値、及びトルク指令値に対しても、比較対象となる位置指令リミット値、速度指令リミット値、及びトルク指令リミット値を適切に選択することが可能となる。
また、本実施の形態によれば、入力指令値(位置指令値)が異常な値であると判定された場合にも、異常通知が上位装置100へ出力される。この構成によれば、位置指令値に異常があったことが上位装置100に通知される。
また、本実施の形態によれば、センサASにより検出されるアプリケーションのセンサ情報を用いて位置指令リミット値、速度指令リミット値、及びトルク指令リミット値が切り換えられる。この構成によれば、入力パターンに基づき運転パターンにおける期間を特定することができ、位置指令リミット値、速度指令リミット値、及びトルク指令リミット値を適切に選択することが可能となる。
なお、本発明は上記した実施の形態に限定されるものではなく、様々な変形例が含まれる。また、ある実施の形態の構成の一部を他の実施の形態の構成に置き換えることが可能であり、また、ある実施の形態の構成に他の実施の形態の構成を加えることも可能である。例えば、センサASの入力パターンによるサーボモータの制御は、実施の形態1に対しても適用可能である。
また、各実施の形態の構成の一部について、他の構成の追加、削除、置換をすることが可能である。なお、図面に記載した各部材や相対的なサイズは、本発明を分かりやすく説明するため簡素化・理想化しており、実装上はより複雑な形状となる場合がある。
1…サーボモータ制御装置、20…制御処理部、21…位置指令値判定処理部、22…位置制御処理部、23…速度指令値判定処理部、24…速度制御処理部、25…トルク指令値判定処理部、26…トルク制御処理部、30…電力変換機、60…インバータ、70…ゲートドライバ、100…上位装置、AS…センサ、EN…位置検出器、M…サーボモータ
Claims (9)
- 上位装置から入力される入力指令値に基づきサーボモータの制御を行うサーボモータ制御装置であって、
前記入力指令値と指令リミット値とを比較して比較後指令値を生成し、前記比較後指令値に基づき電流指令値及び電圧指令値を生成する制御処理部と、
前記電流指令値及び前記電圧指令値に基づき前記サーボモータに電力を供給する電力変換器と、
を備え、
前記制御処理部は、前記入力指令値が前記指令リミット値の範囲内である場合、前記入力指令値を前記比較後指令値とし、前記入力指令値が前記指令リミット値の範囲外である場合、前記指令リミット値を前記比較後指令値とする、
サーボモータ制御装置。 - 請求項1に記載のサーボモータ制御装置において、
前記制御処理部は、前記サーボモータを有するアプリケーションの運転パターンにおける期間に応じて比較対象となる前記指令リミット値を切り換える、
サーボモータ制御装置。 - 請求項1に記載のサーボモータ制御装置において、
前記入力指令値は速度指令値であり、
前記制御処理部は、前記速度指令値と速度指令リミット値とを比較して比較後速度指令値を生成し、前記比較後速度指令値に基づきトルク指令値を生成し、前記トルク指令値とトルク指令リミット値とを比較して比較後トルク指令値を生成し、前記比較後トルク指令値に基づき前記電流指令値及び前記電圧指令値を生成する、
サーボモータ制御装置。 - 請求項3に記載のサーボモータ制御装置において、
前記制御処理部は、位置検出器により検出される前記サーボモータの位置情報に基づき前記速度指令リミット値及び前記トルク指令リミット値を切り換える、
サーボモータ制御装置。 - 請求項3に記載のサーボモータ制御装置において、
前記制御処理部は、前記速度指令値及び前記トルク指令値の少なくともいずれかが異常な値であると判定した場合、異常通知を前記上位装置へ出力する、
サーボモータ制御装置。 - 請求項1に記載のサーボモータ制御装置において、
前記入力指令値は位置指令値であり、
前記制御処理部は、前記位置指令値と位置指令リミット値とを比較して比較後位置指令値を生成し、前記比較後位置指令値に基づき速度指令値を生成し、前記速度指令値と速度指令リミット値とを比較して比較後速度指令値を生成し、前記比較後速度指令値に基づきトルク指令値を生成し、前記トルク指令値とトルク指令リミット値とを比較して比較後トルク指令値を生成し、前記比較後トルク指令値に基づき前記電流指令値及び前記電圧指令値を生成する、
サーボモータ制御装置。 - 請求項6に記載のサーボモータ制御装置において、
前記制御処理部は、位置検出器により検出される前記サーボモータの位置情報を用いて、前記位置指令リミット値、前記速度指令リミット値、及び前記トルク指令リミット値を切り換える、
サーボモータ制御装置。 - 請求項6に記載のサーボモータ制御装置において、
前記制御処理部は、前記位置指令値、前記速度指令値及び前記トルク指令値の少なくともいずれかが異常な値であると判定した場合、異常通知を前記上位装置へ出力する、
サーボモータ制御装置。 - 請求項1に記載のサーボモータ制御装置において、
前記制御処理部は、センサにより検出される前記サーボモータを有するアプリケーションのセンサ情報を用いて前記指令リミット値を切り換える、
サーボモータ制御装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019-110203 | 2019-06-13 | ||
JP2019110203A JP7386001B2 (ja) | 2019-06-13 | 2019-06-13 | サーボモータ制御装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2020250474A1 true WO2020250474A1 (ja) | 2020-12-17 |
Family
ID=73742864
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2020/000973 WO2020250474A1 (ja) | 2019-06-13 | 2020-01-15 | サーボモータ制御装置 |
Country Status (3)
Country | Link |
---|---|
JP (1) | JP7386001B2 (ja) |
TW (1) | TWI736106B (ja) |
WO (1) | WO2020250474A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113681558A (zh) * | 2021-08-17 | 2021-11-23 | 珠海格力电器股份有限公司 | 多关节机器人的电机抱闸异常控制方法、装置及机器人 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62242209A (ja) * | 1986-04-14 | 1987-10-22 | Hitachi Ltd | サ−ボモ−タの制御方法 |
JP2002223591A (ja) * | 2001-01-24 | 2002-08-09 | Toshiba Elevator Co Ltd | エレベータ制御装置 |
JP2007286727A (ja) * | 2006-04-13 | 2007-11-01 | Nippon Reliance Kk | モータ制御装置 |
JP2008148449A (ja) * | 2006-12-11 | 2008-06-26 | Matsushita Electric Ind Co Ltd | モータ位置制御方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5143217B2 (ja) * | 2010-12-03 | 2013-02-13 | 三菱電機株式会社 | 制御装置 |
CN105103437B (zh) * | 2013-03-29 | 2018-05-15 | 松下知识产权经营株式会社 | 电动机驱动装置的伺服调整方法 |
US9423782B2 (en) * | 2013-04-11 | 2016-08-23 | Panasonic Intellectual Property Management Co., Ltd. | Motor drive device |
TWI654827B (zh) * | 2016-09-05 | 2019-03-21 | 日商東芝股份有限公司 | 換流器控制裝置及馬達驅動系統 |
WO2019102539A1 (ja) * | 2017-11-22 | 2019-05-31 | 三菱電機株式会社 | 回転電機制御装置及び電動車両 |
-
2019
- 2019-06-13 JP JP2019110203A patent/JP7386001B2/ja active Active
-
2020
- 2020-01-15 WO PCT/JP2020/000973 patent/WO2020250474A1/ja active Application Filing
- 2020-01-16 TW TW109101537A patent/TWI736106B/zh active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62242209A (ja) * | 1986-04-14 | 1987-10-22 | Hitachi Ltd | サ−ボモ−タの制御方法 |
JP2002223591A (ja) * | 2001-01-24 | 2002-08-09 | Toshiba Elevator Co Ltd | エレベータ制御装置 |
JP2007286727A (ja) * | 2006-04-13 | 2007-11-01 | Nippon Reliance Kk | モータ制御装置 |
JP2008148449A (ja) * | 2006-12-11 | 2008-06-26 | Matsushita Electric Ind Co Ltd | モータ位置制御方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113681558A (zh) * | 2021-08-17 | 2021-11-23 | 珠海格力电器股份有限公司 | 多关节机器人的电机抱闸异常控制方法、装置及机器人 |
Also Published As
Publication number | Publication date |
---|---|
TWI736106B (zh) | 2021-08-11 |
JP7386001B2 (ja) | 2023-11-24 |
TW202046627A (zh) | 2020-12-16 |
JP2020202717A (ja) | 2020-12-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI243532B (en) | Inverter device and current limiting method therefor | |
JP6640812B2 (ja) | 蓄電装置を有するモータ駆動システム | |
JP4390843B2 (ja) | モータ駆動装置 | |
JPWO2008152761A1 (ja) | モータ駆動装置、モータ装置、および集積回路装置 | |
WO2007032073A1 (ja) | 電気車のブレーキ制御装置及びブレーキ制御方法 | |
JP5540753B2 (ja) | ロボットシステム | |
US20190267835A1 (en) | Motor drive system including power storage device | |
WO2020250474A1 (ja) | サーボモータ制御装置 | |
JP6426782B2 (ja) | サーボモータを制御するサーボモータ制御装置及びこれを備えるサーボモータ制御システム | |
JP3864834B2 (ja) | Pwmサイクロコンバータ | |
KR100817116B1 (ko) | 인버터 시스템의 관성부하 억제 장치 및 그 방법 | |
US20190149073A1 (en) | Motor drive system including power storage device | |
JP6980213B2 (ja) | 電動機駆動装置 | |
US20050007058A1 (en) | Spindle motor drive controller | |
JP3891080B2 (ja) | 電動機駆動用電力変換装置の回生制御方法 | |
JP5879870B2 (ja) | ロボットシステム | |
JP2007089318A (ja) | 半導体電力変換装置 | |
JP3622410B2 (ja) | インバータによる電動機の制御方法 | |
JP5192225B2 (ja) | 半導体電力変換装置 | |
WO2018025327A1 (ja) | サーボモータ制御装置 | |
JP6800278B2 (ja) | 回転電機の制御装置 | |
JP2019013923A (ja) | サーボモータ制御装置 | |
JP2015100834A (ja) | プレス機械の運転方法およびプレス機械の制御装置 | |
JP5272333B2 (ja) | モータ駆動装置およびモータ装置 | |
WO2018127960A1 (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: 20822494 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 20822494 Country of ref document: EP Kind code of ref document: A1 |