Motor control device

WO2026191222A1PCT designated stage Publication Date: 2026-09-17HITACHI IND EQUIP SYST CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
PCT/JP2025/038704
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2025-03-14
Filing Date
2025-11-05
Publication Date
2026-09-17

Smart Images

  • Figure JP2025038704_17092026_PF_FP_ABST
    Figure JP2025038704_17092026_PF_FP_ABST
Patent Text Reader

Abstract

This motor control device for controlling a motor assembled to a machine includes: a torque detector for detecting a motor torque of the motor; a speed detector for detecting a rotation speed of the motor; a first filter unit for extracting a vibration component of the machine from the motor torque detected by the torque detector; a second filter unit for extracting a vibration component of the machine from the rotation speed detected by the speed detector; an identification unit that identifies resonance / anti-resonance characteristics of the machine on the basis of a transfer function model having an order of two or greater; and a determination unit that calculates information pertaining to a pole or a zero of the transfer function model from a parameter of the transfer function model identified by the identification unit, and calculates a rigidity level of the machine from each absolute value of the pole or zero and information pertaining to each imaginary part. Thus, it is possible to determine in a shorter time whether or not the industrial machine is a low-rigidity machine, without requiring intermittent application of a motor torque having a significant magnitude and variation.
Need to check novelty before this filing date? Find Prior Art

Description

Motor control device

[0001] The present invention relates to a motor control device.

[0002] In order to assemble a motor and a motor control device into an industrial machine and cause them to perform desired operations, appropriate adjustment of the motor control device in accordance with the characteristics of the industrial machine is required. A technology for automatically performing such adjustment of a motor control device in a short time can reduce the labor and time costs associated with adjustment, and is industrially useful. In adjustment of a motor control device, an approach of grasping the unknown characteristics of the industrial machine and performing adjustment based on the obtained results is common. The characteristics of the industrial machine are, for example, physical characteristics related to control performance, such as the total moment of inertia including the motor, viscous friction, mechanical rigidity, and resonance characteristics of the industrial machine to which the motor is assembled.

[0003] As a conventional technology related to adjustment of a motor control device, for example, the one described in Patent Document 1 is known. Patent Document 1 is based on the premise that an industrial machine with an assembled motor is a low-rigidity machine that vibrates at several to several tens of Hz depending on the drive pattern of the motor. Based on observed values of motor torque and motor rotational speed, after identifying and grasping the low-rigidity characteristics of the industrial machine with the assembled motor by using identification technology and the like, it discloses a technology for sequentially setting and adjusting a vibration damping filter unit for suppressing vibration of several to several tens of Hz in accordance with the number of vibrations.

[0004] International Publication No. 2019 / 239791

[0005] For low-rigidity industrial machines that vibrate at several to several tens of Hz, a technology for automatically setting and adjusting vibration damping control and vibration damping filters that suppress mechanical vibration is useful as an automatic adjustment technology for motor control devices.

[0006] In the conventional technology described above, based on the premise that industrial machinery can generate one or more types of mechanical vibrations with different frequencies, the system focuses on one of these vibrations, identifies its dynamic characteristics using identification techniques, sets and adjusts a vibration damping filter for this vibration, and repeats this process sequentially to automatically set and adjust the vibration damping filter for one or more types of mechanical vibrations. In the repeated execution of the adjustment, it is necessary to decide whether to continue or terminate the adjustment, and this decision is made for each repeated execution based on parameters related to the characteristics of the industrial machinery identified using identification techniques.

[0007] However, the above-mentioned conventional technology assumes that the industrial machine to which the motor is installed is a low-rigidity machine that vibrates at several to tens of Hz depending on the motor's drive pattern, but it does not make a determination as to whether or not the target industrial machine is a low-rigidity machine.

[0008] To automatically adjust industrial machinery, it is necessary to excite the vibrations of the industrial machinery by appropriately applying motor torque, and to appropriately detect and identify the characteristic quantities of the vibrations from the motor torque and motor rotation speed. For example, if industrial machinery has the characteristic of being able to generate one or more types of vibrations with different frequencies, it is necessary to appropriately detect, distinguish, and identify the characteristic quantities of each vibration from the motor torque and motor rotation speed in order to automatically adjust the vibration damping control and vibration damping filter.

[0009] In the conventional technology described above, a low-pass filter section is provided, and by sequentially designing and setting it appropriately, each vibration characteristic quantity is grasped one by one. However, given that the characteristics of the industrial machine are unknown, it is not easy to appropriately design and set the low-pass filter section to match the characteristic quantity of each vibration. In particular, vibrations of several to tens of Hz in industrial machines are not directly observed at the motor rotation speed, but are transmitted indirectly through the joints of each component of the industrial machine and observed.

[0010] Therefore, the characteristic vibrations of industrial machinery tend to be weak when observed in terms of motor torque and motor rotational speed. Appropriate design and application of motor torque to excite the vibrations of industrial machinery is important, but since the characteristics of the work machine are unknown when automatic adjustment starts, it is difficult to design and apply motor torque appropriately, and adjustment requires time and effort.

[0011] In other words, determining whether an industrial machine is a low-rigidity machine with vibration characteristics in the range of several to tens of Hz is important from the perspective of reducing the time and effort required for automatic adjustment by avoiding unnecessary implementation of automatic adjustment of vibration damping control and vibration damping filters.

[0012] However, if we consider intermittently applying motor torque of significant magnitude and variation to more sensitively observe the characteristics needed to determine whether or not a machine is low-rigidity, given that the machine's characteristics are unknown, this carries risks such as machine degradation or damage. Therefore, the application of excessive motor torque must be avoided.

[0013] The present invention has been made in view of the above, and aims to provide a motor control device that can determine whether an industrial machine is a low-rigidity machine or not in a shorter amount of time, without requiring the intermittent application of motor torque of significant magnitude and variation.

[0014] The present invention includes multiple means for solving the above problems, but to give one example, a motor control device for controlling a motor assembled to a machine, comprising: a torque detector for detecting the motor torque of the motor; a speed detector for detecting the rotational speed of the motor; a first filter unit for extracting vibration components of the machine from the motor torque detected by the torque detector; a second filter unit for extracting vibration components of the machine from the rotational speed detected by the speed detector; an identification unit for identifying the resonance / anti-resonance characteristics of the machine based on a transfer function model of order 2 or higher; and a determination unit for calculating information relating to the poles or zeros of the transfer function model from the parameters of the transfer function model identified by the identification unit, and for calculating the stiffness level of the machine from the absolute values ​​and imaginary parts of the poles or zeros.

[0015] According to the present invention, it is possible to determine whether an industrial machine is a low-rigidity machine or not in a shorter amount of time, without requiring the intermittent application of motor torque of significant magnitude and variation.

[0016] This is a schematic functional block diagram showing the overall configuration of a motor control system according to the first embodiment, along with the motor control device and its related components. This is a schematic functional block diagram showing the overall configuration of a motor control system according to the second embodiment, along with the motor control device and its related components. This is a schematic functional block diagram showing the overall configuration of a motor control system according to the third embodiment, along with the motor control device and its related components. As an example of a machine, this is a diagram schematically showing the overall configuration of a pick-up machine that picks up machine parts from a machine tool.

[0017] Hereinafter, embodiments of the present invention will be described with reference to the drawings.

[0018] <First Embodiment> A first embodiment of the present invention will be described with reference to Figure 1.

[0019] Figure 1 is a functional block diagram schematically showing the overall configuration of the motor control system according to this embodiment, along with the motor control device and its related components.

[0020] In Figure 1, the motor control device 16 includes a torque detector 8 that detects the motor torque applied to the machine 11 by a motor 10 attached to the machine 11, such as an industrial machine; a speed detector 9 that detects the rotational speed of the motor 10; an integrator 15 that integrates the rotational speed of the motor 10 and outputs it as a position response; a position controller 12 that generates a speed command based on the deviation between an externally input position command and the position response of the motor 10 obtained from the integrator 15; a speed controller 13 that generates a motor torque command value (motor torque command) based on the speed command from the position controller 12 and the motor rotational speed from the speed detector 9; and a current controller that controls the motor 10 based on the motor torque command from the speed controller 13. 14 consists of a speed estimation unit 7 that calculates a virtual motor rotation speed generated by the dynamic characteristics of the machine 11 other than the resonance / anti-resonance characteristics of the machine 11 from the motor torque detected by the torque detector 8, a filter unit 5 that filters the virtual motor rotation speed calculated by the speed estimation unit 7, a filter unit 6 that filters the motor rotation speed detected by the speed detector 9, a sequential identification unit 21 that sequentially identifies the parameters (transfer function parameters) of a second-order transfer function model based on the motor rotation speed filtered by the filter unit 5 and the filter unit 6, and a determination unit 1 that determines the stiffness level of the machine 11 and whether or not it is a low-stiffness machine based on the transfer function parameters identified by the sequential identification unit 21.

[0021] The torque detector 8 detects the motor torque supplied by the motor 10 and calculates the observed value of the motor torque. For example, the torque detector 8 detects the current of the motor 10 with a current sensor and calculates the motor torque by multiplying it by a torque multiplier.

[0022] The speed detector 9 calculates the motor rotation speed from the rotational position of the motor shaft, provided by an encoder attached to the motor 10, for example.

[0023] The speed controller 13 calculates a command value (motor torque command) for the motor torque that the motor 10 supplies to the machine 11, based on the speed command calculated by the position controller 12 and the observed value of the motor rotation speed detected by the speed detector 9.

[0024] The current controller 14 provides a voltage command to the motor 10 so that the motor torque supplied by the motor 10 to the machine 11 follows the motor torque command.

[0025] The determination unit 1 consists of a pole / zero information calculation unit 2 that calculates pole / zero information of the transfer function based on the transfer function parameters obtained by the sequential identification unit 21, and a low-rigidity determination unit 3 that calculates stiffness level information of the machine 11 and determines whether or not the machine 11 is a low-rigidity machine based on the pole / zero information of the transfer function calculated by the pole / zero information calculation unit 2.

[0026] Here, we will explain the specific details of how to determine whether or not machine 11 is a low-rigidity machine.

[0027] If the machine 11 is a system that generates mechanical vibrations in the range of several to tens of Hz, the mechanical vibrations can be suppressed, for example, by using vibration damping control and vibration damping filters. Specifically, mechanical vibrations can be suppressed by providing a vibration damping controller and vibration damping filter (for example, a notch filter) that processes the position command based on the frequency information of the machine's vibrations so as not to include those frequency components.

[0028] Therefore, in this embodiment, the determination unit 1 calculates stiffness level information regarding whether the machine 11 is a system that needs to suppress mechanical vibrations of several to tens of Hz using vibration control, vibration filters, etc., and provides the result of determining whether the machine 11 is a low-stiffness machine.

[0029] The determination unit 1 is configured to determine whether or not the machine 11 is a low-rigidity machine based on dynamic characteristics information including rigidity characteristics information of the machine 11, and the sequential identification unit 21 is responsible for providing the determination unit 1 with dynamic characteristics information of the machine 11. In light of the purpose of the determination unit 1, the sequential identification unit 21 extracts dynamic characteristics information of the machine 11 by focusing on information related to machine vibrations of several to tens of Hz of the machine 11.

[0030] First, the filter unit 5 (first filter unit) extracts information related to the mechanical vibrations of the machine 11 in the range of several to tens of Hz (i.e., vibration components of the machine 11) from the virtual motor rotation speed calculated by the speed estimation unit 7. Specifically, the filter unit 5 is, for example, a low-pass filter with cutoff characteristics at tens of Hz.

[0031] Similarly, the filter unit 6 (second filter unit) extracts information related to the mechanical vibrations of the machine 11 in the range of several to tens of Hz (i.e., vibration components of the machine 11) from the motor rotation speed detected by the speed detector 9. Specifically, the filter unit 6 is, for example, a low-pass filter having a cutoff characteristic at tens of Hz.

[0032] The sequential identification unit 21 extracts dynamic characteristic information of the machine 11 based on the transfer function model. The machine 11 is generally represented by the transfer function model shown in (Equation 1) below.

[0033]

[0034] Here, in (Equation 1) above, J is the inertia of the entire mechanical system [Kg・m²], D is the viscous friction coefficient of the entire mechanical system, ζmk is the resonance damping coefficient, wmk is the resonance frequency [rad / s], ζak is the anti-resonance damping coefficient, wak is the anti-resonance frequency [rad / s], N is the order of the resonance / anti-resonance characteristics of machine 11 (hereinafter sometimes simply referred to as the order), and s is the Laplace operator.

[0035] A set of resonant and anti-resonant characteristics is composed of a second-order polynomial in both the numerator and denominator, with the coefficients of each polynomial determined by the parameters ζak, wak, ζmk, and wmk (k = 1, 2, ..., N). Therefore, to understand the dynamic characteristics of machine 11, it is sufficient to determine J, D, ζak, wak, ζmk, wmk, and the order N.

[0036] However, identifying all of these parameters at once is generally difficult due to limitations in the computational resources of the motor control device and the accuracy of the identification. Furthermore, it is not always the case that all the information of the dynamic characteristics expressed in (Equation 1) above can be superimposed and observed on the motor torque and motor rotational speed. Of the dynamic characteristics expressed in (Equation 1), only the dynamic characteristic information excited by the applied motor torque can be observed and extracted from the motor torque and motor rotational speed. Therefore, identifying all of the parameters in (Equation 1) at once is not easy from the standpoint of designing the applied motor torque.

[0037] Only the resonance / anti-resonance characteristics whose resonance frequency wmk / (2π) [Hz] falls within the range of several to several tens [Hz] are related to mechanical vibration of several to several tens [Hz]. Therefore, the filter unit 5 and the filter unit 6 employ a low-pass filter with a cut-off frequency of several tens [Hz] for the purpose of extracting information related to mechanical vibration of several to several tens [Hz] from the virtual motor rotational speed and the motor rotational speed. However, even when employing this low-pass filter, the order of the resonance / anti-resonance characteristics related to mechanical vibration of several to several tens [Hz] remains unknown, and it is still necessary to solve the identification problem of the above (Equation 1) with undetermined order to grasp the dynamic characteristics of the machine 11.

[0038] The virtual motor rotational speed generated by dynamic characteristics of the machine 11 other than the resonance / anti-resonance characteristics of the machine 11 is attributable to the term shown in the following (Equation 2) that forms part of the above (Equation 1).

[0039]

[0040] The main frequency region of the dynamic characteristics of the above (Equation 2) is often separated from the main frequency region of the resonance / anti-resonance characteristics. Therefore, it is conceivable to not collectively identify the parameters included in the above (Equation 1), but to identify the above (Equation 2) from motor torque and motor rotational speed limited only to the main frequency region of the dynamic characteristics of the above (Equation 2).

[0041] Here, in the present embodiment, it is assumed that the inertia J and the viscous friction coefficient D are known in advance by the above identification means or physical measurement means.

[0042] The speed estimation unit 7 performs processing according to the above (Equation 2). Specifically, the speed estimation unit 7 performs processing related to the following (Equation 3).

[0043]

[0044] Here, in the above (Equation 3), τ(t) is motor torque, si(t) is virtual motor rotational speed, and t is time.

[0045] As a result, the sequential identification unit 21 only needs to be able to identify the transfer function model that governs the input-output relationship shown in the following (Equation 4).

[0046]

[0047] Here, in (Equation 3) above, s(t) is the motor rotation speed observed from the speed detector 9, and Nr is the order of the resonance / anti-resonance characteristics related to mechanical vibrations of several to several tens of [Hz] remaining after processing through the filter unit 5 and the filter unit 6. Note that the order Nr corresponds to the number of vibrations of different frequencies superimposed on the motor torque and the motor rotation speed.

[0048] In (Equation 4) above, the order Nr is still unknown, and collectively identifying (Equation 4) remains difficult from the viewpoints of constraints on computing resources, identification accuracy, and design of applied motor torque.

[0049] Generally known sequential identification means do not target continuous-time transfer function models as represented by (Equation 4) above, but instead target discrete-time transfer function models. Therefore, the sequential identification unit 21 in the present embodiment uses a discrete-time second-order transfer function model shown in (Equation 5) below.

[0050]

[0051] Here, in (Equation 5) above, 1 / z is a delay operator, and b0, b1, b2, a1, a2 are parameters of the discrete-time second-order transfer function model.

[0052] The sequential identification means for (Equation 5) above is represented by (Equation 6) to (Equation 10) below, for example.

[0053]

[0054]

[0055]

[0056]

[0057]

[0058] Here, in (Equation 6) to (Equation 10) above, θ(k) is the estimated value of the parameter at the k-th step, and λ is a forgetting factor.

[0059] In equations (6) to (10) above, initial values ​​θ(0) and P(0) are given, and the estimated value θ(k) can be calculated and updated each time s(k) and si(k) are obtained. By retaining the statistical information related to the estimation of s(k) and si(k) obtained from k=0 to step k in P(k), and weakening the influence of past information on the estimation of θ(k) with the forgetting coefficient λ, θ(k) becomes an adaptive estimate at the current time (current step k).

[0060] The sequential identification method described above does not require the sequential storage and retention of s(k) and si(k) in memory from k=0 as time progresses, and the computational load per step is also low. Therefore, even on devices with limited computational resources, parameter estimation can be performed sequentially and online.

[0061] However, expressing the dynamic characteristics of (Equation 4) above using (Equation 5) above is strictly impossible from the standpoint of the order of the transfer function unless Nr = 1. On the other hand, the purpose of the determination unit 1 of this embodiment is not to strictly grasp the dynamic characteristics of (Equation 4) above, but rather to calculate stiffness level information regarding whether the machine 11 is a system that needs to suppress mechanical vibrations of several to tens of Hz using vibration damping control, vibration damping filters, etc., as described above, and to provide a determination of whether or not it is a low-stiffness machine.

[0062] Therefore, considering the above objective, when we look at (Equation 4) above, it is theoretically possible to determine that the stiffness is high when the poles (= roots of the denominator polynomial of s) and zero (= roots of the numerator polynomial of s) of each resonance and anti-resonance characteristic are real numbers, and the stiffness level is low when they are complex numbers.

[0063] Here, while the calculation of the poles and zeros of each resonance and anti-resonance characteristic in (Equation 4) still requires the identification of the parameters in (Equation 4), this embodiment does not aim to strictly determine the parameters in (Equation 4), but rather takes an approach based on the characteristics of the identification technique. Specifically, even if Nr ≠ 1 and the order of (Equation 4) does not match that of (Equation 5), if all the poles and zeros in (Equation 4) are real numbers, the poles and zeros obtained from the identification results using (Equation 5) tend to be real numbers as well. Conversely, if any of the poles and zeros in (Equation 4) are complex numbers, the poles and zeros obtained from the identification results using (Equation 5) tend to be complex numbers as well.

[0064] In other words, the determination unit 1 of this embodiment performs identification in the sequential identification unit 21 based on the transfer function model of (Equation 5) above, and calculates stiffness level information from the pole and zero information of (Equation 5) above based on the obtained parameters b0, b1, b2, a1, a2, and provides a determination as to whether or not it is a low-stiffness machine.

[0065] The poles and zeros of the transfer function in a continuous-time system and the poles and zeros of the transfer function in a discrete-time system are related by the following equation (Equation 11).

[0066]

[0067] Here, ηz is a pole (or zero) in the discrete-time system, ηs is a pole (or zero) in the continuous-time system, and Ts is the sample time.

[0068] According to (Equation 11) above, if the poles (or zeros) in the continuous-time system are real numbers, then the poles (or zeros) in the discrete-time system are also real numbers, and if the poles (or zeros) in the continuous-time system are complex numbers, then the poles (or zeros) in the discrete-time system are also complex numbers.

[0069] Therefore, considering the above, it can be said that information regarding the rigidity of machine 11 can be obtained by focusing on whether the pole or zero in (Equation 5) is a real number or a complex number, without strictly calculating the pole or zero in (Equation 4) above.

[0070] Furthermore, theoretically, the absolute value of a pole (or zero) in a discrete-time system contains information about the power of that pole (or zero). If the pole (or zero) in the discrete-time system were a complex pole, the magnitude of the absolute value of the pole (or zero) could be used as an indicator to determine the stiffness level of the machine 11.

[0071] Therefore, in this embodiment, if the pole (or zero) of the discrete-time system obtained from (Equation 5) above is a complex pole, the machine 11 tends to have low rigidity, and the rigidity level is determined by the magnitude of the absolute value of the pole (or zero).

[0072] Furthermore, whether the poles (= roots of the denominator polynomial of 1 / z) and zero (= roots of the numerator polynomial of 1 / z) in (Equation 5) above are complex poles can be determined by whether the discriminant of the denominator polynomial shown in (Equation 12) and the discriminant of the numerator polynomial shown in (Equation 13) below are negative or not. In other words, whether the poles and zero in (Equation 5) above are complex numbers can be determined by the simple process shown in (Equations 12) and (Equations 13) below.

[0073]

[0074]

[0075] The pole / zero information calculation unit 2 and the low-rigidity determination unit 3, which constitute the determination unit 1, perform processing based on the above. Specifically, the pole / zero information calculation unit 2 calculates (Equation 12) and (Equation 13) above based on b0, b1, b2, a1, a2 obtained by the sequential identification unit 21, and also calculates the absolute value Pa of the pole and the absolute value Pb of zero in (Equation 5) above.

[0076] The low-rigidity determination unit 3 calculates information on the rigidity level of the machine 11 and determines whether or not it is a low-rigidity machine, based on Ja, Jb, Pa, and Pb calculated by the pole / zero information calculation unit 2. Specifically, if Ja is negative, the rigidity level of the machine 11 is evaluated based on the magnitude of Pa, or if Jb is negative, the rigidity level of the machine 11 is evaluated based on the magnitude of Pb. If Ja is negative and Pa exceeds a predetermined threshold, or if Jb is negative and Pb exceeds a predetermined threshold, the machine 11 is determined to be a low-rigidity machine.

[0077] The sequential identification unit 21 has the characteristic of being able to perform approximate identification without intermittently applying motor torque of significant magnitude and variation. The purpose of the judgment unit 1 is not to strictly grasp the dynamic characteristics of the machine 11 expressed by equation 4, but to roughly determine whether or not it is a low-rigidity machine based on pole and zero information using equation 5. Therefore, from this viewpoint as well, by employing the sequential identification unit 21, the judgment unit 1 can roughly determine whether or not the machine 11 is a low-rigidity machine without intermittently applying motor torque of significant magnitude and variation.

[0078] Therefore, the motor control device 16 in this embodiment can determine whether the machine 11 is a low-rigidity machine that has the characteristic of generating one or more vibrations with different frequencies ranging from several to tens of Hz, and can also determine the rigidity level of the machine 11, in a short time and online without requiring the application of a significantly large motor torque (i.e., while avoiding a decrease in perceived usability).

[0079] It should be noted that the dynamic characteristics of the machine 11 generally include characteristics other than those shown in (Equation 1) above, such as nonlinear elements like static and dynamic friction. Since these are factors that adversely affect the identification accuracy of the sequential identification unit 21, it is desirable to provide a compensation unit that removes nonlinear elements. For example, the effect of static and dynamic friction tends to appear as a steady component or trend in motor torque and motor rotational speed. Therefore, a simple means of removing this is to employ a high-pass filter. That is, in this embodiment, the filter unit 5 and the filter unit 6 may be configured to further include a high-pass filter in addition to a low-pass filter.

[0080] Furthermore, the sequential identification unit 21 cannot excite the dynamic characteristics of the machine 11 in sections where the motor torque is continuously zero, and therefore cannot perform identification properly. In other words, the objective of the determination unit 1 can be achieved if it can focus on situations where the motor torque is significant for identification and perform the identification accordingly.

[0081] Therefore, in this embodiment, the motor control device 16 may be configured to include a position command generation unit that generates a desired position command advantageous for identification. Alternatively, the sequential identification unit 21 may be configured to have a function that operates the sequential identification unit 21 by focusing on scenes advantageous for identification.

[0082] Furthermore, if the motor control device 16 has sufficient computing and storage resources, the sequential identification unit 21 may employ a non-sequential, batch-type identification technique. When employing a batch-type identification technique, the virtual motor rotation speed and motor rotation speed obtained from the speed estimation unit 7 are stored for a predetermined time, the stored data is used in a batch to estimate the parameters, and this is repeated iteratively, which is equivalent to performing short-time, online identification.

[0083] In this embodiment, the motor control device 16 has been described using a position control system as an example, but it is not limited to this. It may also be a speed control system or a configuration consisting only of a current control system, and in these cases as well, the determination unit 1 can determine the rigidity of the machine 11.

[0084] <Second Embodiment> A second embodiment of the present invention will be described with reference to Figure 2.

[0085] This embodiment provides a means to address situations where the inertia value of the entire mechanical system and the viscous friction coefficient, which are necessary for the configuration of the speed estimation unit 7, cannot be known in advance or cannot be correctly known, compared to the first embodiment. In this embodiment, the same reference numerals are used for the same members and functional parts as in the first embodiment, and their descriptions are omitted as appropriate.

[0086] Figure 2 is a functional block diagram schematically showing the overall configuration of the motor control system according to this embodiment, along with the motor control device and its related components.

[0087] In Figure 2, the motor control device 16 includes a torque detector 8 that detects the motor torque applied to the machine 11 by a motor 10 attached to the machine 11 such as an industrial machine, a speed detector 9 that detects the rotational speed of the motor 10 (motor rotational speed), an integrator 15 that integrates the rotational speed of the motor 10 and outputs it as a position response, a position controller 12 that generates a speed command based on the deviation between a position command input from an external source and the position response of the motor 10 obtained from the integrator 15, a speed controller 13 that generates a motor torque command value (motor torque command) based on the speed command from the position controller 12 and the motor rotational speed from the speed detector 9, and the speed controller 13 The system consists of a current controller 14 that controls the motor 10 based on the motor torque commands, a filter unit 5 that filters the motor torque detected by the torque detector 8, a filter unit 6 that filters the motor rotation speed detected by the speed detector 9, a sequential identification unit 21A that sequentially identifies the parameters of a second-order transfer function model (transfer function parameters) based on the motor torque filtered by the filter unit 5 and the motor rotation speed filtered by the filter unit 6, and a determination unit 1A that determines the rigidity level of the machine 11 and whether or not it is a low-rigidity machine based on the transfer function parameters identified by the sequential identification unit 21A.

[0088] The determination unit 1A consists of a pole / zero information calculation unit 2A that calculates pole / zero information of the transfer function based on the transfer function parameters obtained by the sequential identification unit 21A, and a low-rigidity determination unit 3 that calculates stiffness level information of the machine 11 and determines whether or not the machine 11 is a low-rigidity machine based on the pole / zero information of the transfer function calculated by the pole / zero information calculation unit 2.

[0089] In this embodiment, the sequential identification unit 21A performs identification using the transfer function model shown in (Equation 5) above, which was used in the sequential identification unit 21 of the first embodiment, or the higher-order transfer function model shown in (Equation 14) below.

[0090]

[0091] As shown in (Equation 14) above, when Nr > 1, the pole / zero information calculation unit 2A cannot perform a rigidity determination of the machine 11 based on (Equation 14) above. However, as shown in the first embodiment, it is still possible to determine the rigidity of the machine 11 by focusing on the absolute value and imaginary part of each pole / zero in (Equation 14) above. By adopting (Equation 14) above, it is expected that each pole / zero obtained by identification will approach the true value of the machine 11, that is, an improvement in the accuracy of the rigidity determination of the machine 11 in the determination unit 1A is expected.

[0092] Alternatively, the transfer function model handled by the sequential identification unit 21A may be the one described in (Equation 4) above, where Nr≧1. In this case, the sequential identification unit 21A may employ means to directly identify the transfer function model of a continuous-time system.

[0093] Furthermore, the sequential identification unit 21A is configured not to use the velocity estimation unit 7, taking into account the characteristics of (Equation 2) described above and the characteristics and tendencies of the sequential identification technology shown in the first embodiment. In other words, since (Equation 2) does not include complex poles or zero, theoretically the determination unit 1A can function even without using the velocity estimation unit 7.

[0094] Specifically, since (Equation 2) above does not have complex poles or complex zeros, even if the sequential identification unit 21A based on (Equation 5) above is activated using (Equation 1) above instead of (Equation 4) above, the judgment unit 1A based on the identification result of (Equation 5) above can be made to function in the same way as in the first embodiment. In this case, there is an advantage that the judgment unit 1A can be made to function even when the inertia J and viscous friction coefficient D, which were included in the velocity estimation unit 7 in the first embodiment, are unknown.

[0095] The other configurations are the same as in the first embodiment.

[0096] In this embodiment configured as described above, the same effects as in the first embodiment can be obtained.

[0097] Furthermore, in the motor control device 16A of this embodiment, it is possible to determine whether the machine 11 is a low-rigidity machine that has the characteristic of generating one or more vibrations with different frequencies ranging from several to tens of Hz, and to determine the rigidity level of the machine 11 with greater accuracy, without requiring the application of a significantly large motor torque (i.e., while avoiding a decrease in perceived usability), and without requiring prior knowledge of the inertia J and the viscous friction coefficient D, and to perform this online in a short time.

[0098] <Third Embodiment> A third embodiment of the present invention will be described with reference to Figures 3 and 4.

[0099] This embodiment applies the present invention to a speed control system (motor control device 316) of a cascade-configured AC servo motor to perform rigidity determination of the machine 311. In this embodiment, the same reference numerals are used for members and functional parts as in the first and second embodiments, and their descriptions are omitted as appropriate.

[0100] Figure 3 is a schematic functional block diagram showing the overall configuration of the motor control system according to this embodiment, along with the motor control device and its related components. Figure 4 is a schematic diagram showing the overall configuration of a machine that removes machine parts from a machine tool, as an example of a machine to which the present invention is applied.

[0101] In Figures 3 and 4, a permanent magnet synchronous motor 310 operating on three-phase AC is assembled to the machine 311. The motor control device 316 includes an encoder 312 for detecting the rotational position of the permanent magnet synchronous motor 310, a speed detector 39 that calculates an observed value of the motor rotational speed based on the rotational position information from the encoder 312 and outputs it as a detected value, a speed controller 313 that calculates a current command based on the speed command and the detected value of the motor rotational speed calculated by the speed detector 39, and a current sensor 314e that detects the motor current of the permanent magnet synchronous motor 310 and outputs it as a current value, and the current sensor 314e A three-phase / dq converter 314d converts the detected three-phase current value into an observed dq-axis current; a current controller 314 calculates a dq-axis voltage command based on the current command calculated by the speed controller 313 and the observed dq-axis current converted by the three-phase / dq converter 314d; a dq / three-phase converter 314a converts the dq-axis voltage command from the current controller 314 into a three-phase voltage command; and a pulse width modulation (PWM) converter 314a converts the three-phase voltage command from the dq / three-phase converter 314a into a voltage pulse command. A modulation unit 314b, an inverter 314c that supplies a three-phase voltage to the permanent magnet synchronous motor 310 based on a voltage pulse command from the pulse width modulator 314b, a torque detector 38 that calculates and outputs as a detected value the motor torque applied to the machine 311 by the permanent magnet synchronous motor 310 based on the observed value of the dq axis current from the three-phase / dq converter 314d, a speed estimation unit 37 that calculates a virtual motor rotation speed generated by the dynamic characteristics of the machine 311 other than the resonance / anti-resonance characteristics of the machine 11 from the motor torque detected by the torque detector 38, and the virtual motor rotation calculated by the speed estimation unit 37 The system is generally composed of a filter unit 35 that filters the speed, a filter unit 36 ​​that filters the motor rotation speed detected by the speed detector 39, a sequential identification unit 321 that sequentially identifies the parameters of a second-order transfer function model (transfer function parameters) based on the motor rotation speed filtered by the filter unit 35 and the filter unit 36, a determination unit 31 that determines the stiffness level of the machine 311 and whether or not it is a low-stiffness machine based on the transfer function parameters identified by the sequential identification unit 321, and a controller adjustment unit 322 that adjusts each controller based on the determination result of the determination unit 31.

[0102] The other configurations are the same as those of the first and second configurations.

[0103] In this embodiment configured as described above, the same effects as those of the first and second embodiments can be obtained.

[0104] Furthermore, the observed values ​​of the motor torque supplied to the machine 311 by the permanent magnet synchronous motor 310, calculated by the torque detector 38 based on the current value detected by the current sensor 314e, and the motor rotation speed calculated by the speed detector 39, can be likened to the output of the torque detector 8 and the speed detector 9 in the first embodiment (see Figure 1). Thus, it can be seen that, in this embodiment as well, the determination unit 31 can perform a determination of the rigidity of the machine 311, similar to the determination unit 1 in the first embodiment.

[0105] Similarly, the motor torque supplied by the permanent magnet synchronous motor 310 to the machine 311, and the observed motor rotation speed calculated by the speed detector 39, can be likened to the output of the torque detector 8 and the output of the speed detector 9 in the second embodiment (see Figure 2). Therefore, just as the determination unit 1A in the second embodiment determines the rigidity of the machine 11, the determination unit 31 in this embodiment can also determine the rigidity of the machine 311.

[0106] In other words, when determining the rigidity of the machine 311 in the cascade configuration AC servo motor speed control system shown in Figure 3, the functions of the determination units 1 and 1A according to the first and second embodiments can be applied, and the same effects as in the first and second embodiments can be obtained for the machine 311 in the cascade configuration AC servo motor speed control system as in this embodiment.

[0107] As an example of a low-rigidity machine 311, there is, for example, a pick-up machine 400 for removing machine parts from a machine tool, as shown in Figure 4. The pick-up machine 400 (machine 311) is generally composed of, for example, a drive pulley 401a and a driven pulley 401b paired with the drive pulley 401a, provided on the motor shaft 401 which is the output shaft of a permanent magnet synchronous motor 310, a belt 402 arm attached to the belt 402 which moves along a guide rail (not shown) or the like by driving the belt 402 by the permanent magnet synchronous motor 310, a screw shaft 404 provided at the tip of the arm 403, and a hand 405 which moves along a predetermined direction by the rotational drive of the screw shaft 404 and grips a predetermined machine part.

[0108] In such a pick-up machine 400, if the rigidity of the arm 403 is low, the tips of the arm 403 and hand 405 will vibrate when the pick-up machine 400 moves and then stops and positions, requiring more time for positioning. Such vibrations can be suppressed by vibration damping control and vibration damping filters, but determining whether the pick-up machine 400 is inherently a low-rigidity machine, that is, whether vibrations at the tips of the arm 403 and hand 405 can be clearly observed as motor torque and motor rotation speed on the motor shaft 401, depends on the rigidity of the belt 402, the weight of the tips of the arm 403 and hand 405, the deceleration rate when moving and then stopping and positions, etc., and making such a determination on the motor shaft 401 is not always easy.

[0109] In this embodiment, even with such a extraction device 400, rigidity determination can be performed quickly and online without requiring the application of a significantly large motor torque (i.e., while avoiding a decrease in perceived usability).

[0110] <Note> The present invention is not limited to the embodiments described above, and includes various modifications and combinations that do not depart from the spirit of the invention. Furthermore, the present invention is not limited to having all the configurations described in the embodiments described above, and includes those in which some of the configurations have been omitted.

[0111] In each embodiment, the processing performed by executing the program may be described. Here, the computer executes the program using a processor (e.g., CPU, GPU) and performs the processing defined in the program using memory resources (e.g., memory) and interface devices (e.g., communication ports). Therefore, the main entity performing the processing by executing the program may be the processor. Similarly, the main entity performing the processing by executing the program may be a controller, device, system, computer, or node having a processor. The main entity performing the processing by executing the program may be an arithmetic unit, and may include a dedicated circuit that performs a specific processing. Here, a dedicated circuit is, for example, an FPGA (Field Programmable Gate Array), an ASIC (Application Specific Integrated Circuit), a CPLD (Complex Programmable Logic Device), etc.

[0112] The program may be installed on the computer from the program source. The program source may be, for example, a program distribution server or a storage medium readable by the computer. If the program source is a program distribution server, the program distribution server includes a processor and storage resources for storing the program to be distributed, and the processor of the program distribution server may distribute the program to other computers. In addition, in each embodiment, two or more programs may be implemented as one program, or one program may be implemented as two or more programs.

[0113] 1, 1A... Judgment unit, 2, 2A... Pole / zero information calculation unit, 3... Low rigidity judgment unit, 5, 6... Filter unit, 7... Speed ​​estimation unit, 8... Torque detector, 9... Speed ​​detector, 10... Motor, 11... Machine, 12... Position controller, 13... Speed ​​controller, 14... Current controller, 15... Integrator, 16, 16A... Motor control device, 21, 21A... Sequential identification unit, 31... Judgment unit, 35, 36... Filter unit, 37... Speed ​​estimation unit, 38... Torque detector, 39... Speed ​​detector, 310... Permanent magnet synchronous motor 311...Machine, 312...Encoder, 313...Speed ​​controller, 314...Current controller, 314a...dq / 3-phase converter, 314b...Pulse width modulator, 314c...Inverter, 314d...3-phase / dq converter, 314e...Current sensor, 316...Motor control device, 321...Sequential identification unit, 322...Controller adjustment unit, 400...Tacking machine, 401...Motor shaft, 401a...Drive pulley, 401b...Driven pulley, 402...Belt, 403...Arm, 404...Screw shaft, 405...Hand

Claims

1. A motor control device for controlling a motor assembled to a machine, comprising: a torque detector for detecting the motor torque of the motor; a speed detector for detecting the rotational speed of the motor; a first filter unit for extracting vibration components of the machine from the motor torque detected by the torque detector; a second filter unit for extracting vibration components of the machine from the rotational speed detected by the speed detector; an identification unit for identifying the resonance / anti-resonance characteristics of the machine based on a transfer function model of order 2 or higher; and a determination unit for calculating information relating to the poles or zeros of the transfer function model from the parameters of the transfer function model identified by the identification unit, and for calculating the stiffness level of the machine from the absolute values ​​and imaginary parts of the poles or zeros.

2. A motor control device according to claim 1, wherein the determination unit calculates a pole or zero in the transfer function model, and determines that the machine is a low-rigidity machine when the absolute value of the imaginary part of the pole or zero exceeds a predetermined first threshold.

3. A motor control device according to claim 1, wherein the identification unit determines that the order of the transfer function model is second order, and the determination unit determines that the machine is a low-rigidity machine when, as information relating to the poles or zeros of the transfer function model, the discriminant of the numerator quadratic polynomial of the transfer function model is zero or less, or the discriminant of the denominator quadratic polynomial is zero or less.

4. A motor control device according to claim 1, wherein the determination unit calculates poles or zeros of the transfer function model, calculates the stiffness level of the machine from the absolute values ​​of the poles or zeros, and determines that the machine is a low-stiffness machine from the information relating to the imaginary parts of the poles or zeros that exceed the second threshold when the absolute values ​​of the poles or zeros exceed a predetermined second threshold.

5. A motor control device according to claim 1, wherein the first filter unit and the second filter unit each include a high-pass filter for removing steady-state and trend components included in the motor torque and rotational speed.

6. A motor control device according to claim 1, characterized in that the identification unit comprises sequential identification means that performs identification processing each time data is obtained.

7. A motor control device according to claim 1, further comprising a speed estimation unit that calculates a virtual motor rotation speed generated by the dynamic characteristics of the machine other than the resonance and anti-resonance characteristics of the machine based on the motor torque detected by the torque detector, wherein the first filter unit extracts the vibration component of the machine from the motor rotation speed calculated by the speed estimation unit.