Inertia estimation device of motor, motor drive control device, inertia estimation method of motor
Patent Information
- Application Number
- CN202580017369.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2024-03-13
- Filing Date
- 2025-02-25
- Publication Date
- 2026-09-22
AI Technical Summary
然而,在马达的驱动控制中,当在马达的加减速度小的情况下推定惯量时,存在如下技术问题:噪声成分相对于推定出的惯量变大,由此误差变大、即推定的精度恶化
根据本发明的马达的惯量推定装置,能与马达的加减速度的大小无关地高精度地推定惯量。
Smart Images

Figure CN122804367A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to a motor inertia estimation device, a motor drive control device, and a motor inertia estimation method. Background Technology
[0002] It is known that in the drive control of a motor, the estimated inertia is determined and the estimated value of the inertia is reflected in the adjustment of the gain (see Patent Document 1).
[0003] Existing technical documents Patent documents Patent Document 1: Japanese Patent Application Publication No. 11-313495 Summary of the Invention
[0004] The problem the invention aims to solve However, in motor drive control, when estimating the inertia when the motor's acceleration and deceleration are small, the following technical problem exists: the noise component becomes larger relative to the estimated inertia, thereby increasing the error and deteriorating the estimation accuracy.
[0005] The present invention takes the above-mentioned technical problem as an example, and its purpose is to provide a technique for estimating inertia with high accuracy regardless of the magnitude of the acceleration and deceleration of the motor.
[0006] Solution for solving the problem To achieve the above objective, the inertia estimation device for a motor according to the present invention includes: a filter section for attenuating the frequency characteristics of a physical quantity that accompanies the driving of the motor; and an inertia estimation section for estimating the inertia of the motor based on the attenuated physical quantity.
[0007] Invention Effects The inertia estimation device for a motor according to the present invention can estimate the inertia with high accuracy regardless of the magnitude of the motor's acceleration or deceleration. Attached Figure Description
[0008] Figure 1 This is a functional block diagram that schematically illustrates the configuration of a motor drive control device with an inertia estimation processing unit for a motor according to the first embodiment of the present invention. Figure 2 This is a graph illustrating an example of the change in motor speed of a motor driven control device based on an implementation method. Figure 3 This is a flowchart illustrating the processing flow of the motor drive control device based on the first embodiment; Figure 4 This is a graph illustrating an example of the relationship between the motor's rotational speed and the estimated inertia of a motor based on a reference example. Figure 5This is a graph illustrating an example of the relationship between the rotational speed and the estimated inertia of a motor based on an embodiment of the motor inertia estimation device. Figure 6 This is a functional block diagram that schematically illustrates the configuration of a motor drive control device with an inertia estimation device for a motor according to the second embodiment of the present invention. Figure 7 This is a flowchart illustrating the processing flow of the motor drive control device based on the second embodiment; Figure 8 This is a functional block diagram that schematically illustrates the configuration of a motor drive control device with an inertia estimation device for a motor according to the third embodiment of the present invention. Figure 9 This is a flowchart illustrating the processing flow of the motor drive control device based on the third embodiment; Figure 10 This is a graph illustrating an example of the change in rotational speed when the amount of movement of the motor in the motor drive control device based on the third embodiment is small. Detailed Implementation
[0009] The following is a reference to the appendix. Figure 1 The inertia estimation device, motor drive control device, and motor inertia estimation method of embodiments of the present invention will be described below. It should be noted that in the following description, common components in each embodiment will be labeled with the same reference numerals, and repeated descriptions will be omitted.
[0010] [First Implementation] Figure 1 This is a functional block diagram that schematically illustrates the configuration of a motor drive control device 1 with an inertia estimation processing unit 16 for a motor 2 according to the first embodiment of the present invention.
[0011] Motor 2 is a permanent magnet type motor. In this embodiment, motor 2 is, for example, a stepper motor with two-phase (phase A and phase B) coils.
[0012] The motor drive control device 1, for example, causes the drive current to flow periodically through the coils of phase A and phase B of the motor 2, thereby causing the rotor (permanent magnet) of the motor 2 to rotate.
[0013] like Figure 1 As shown, the motor drive control device 1 includes a command generation unit 11, a drive control unit 12, a current detection unit 13, a position detection unit 14, a speed calculation unit 15, and an inertia estimation processing unit 16 as functional blocks.
[0014] In this embodiment, the motor drive control device 1 is, for example, a program processing device (e.g., a microcontroller) having the following configuration: a processor such as a CPU (Central Processing Unit), various storage devices such as RAM (Random Access Memory) and ROM (Read-Only Memory), and peripheral circuits such as counters (timers), A / D (Analog to Digital) conversion circuits, D / A (Digital to Analog) conversion circuits, clock generation circuits, and input / output (I / F) circuits, which are interconnected via buses and dedicated lines.
[0015] It should be noted that the motor drive control device 1 can be configured as a single integrated circuit (IC) device, or it can be configured as a collection of multiple integrated circuit devices, each of which is individually packaged to implement a portion of the functional blocks.
[0016] The functional blocks of the motor drive control device 1, for example, in a program processing device that serves as a control circuit, are implemented by a processor performing various arithmetic operations according to a program stored in memory, and controlling peripheral circuits such as counters and A / D conversion circuits.
[0017] It should be noted that it could also be, Figure 1 The components of the motor drive control device 1 shown are part of a whole. In addition to having… Figure 1 In addition to the constituent elements shown, it also has other constituent elements.
[0018] The command generation unit 11 receives a speed command signal Sc, which is command information related to the rotational speed of the motor 2. By parsing the received speed command signal Sc, it generates a value specifying the target operating state of the motor 2 as specified by the speed command signal Sc. The operating state refers to the state of the motor 2 rotating at the speed specified by the speed command signal Sc. The command generation unit 11 outputs the generated value specifying the target operating state of the motor 2 as a trapezoidal speed command to the drive control unit 12. The command generation unit 11 also outputs the acceleration / deceleration time Tc included in the value specifying the target operating state of the motor 2 to the frequency determination unit 163. The speed command signal Sc is output, for example, from a host device located outside the motor drive control device 1 for controlling the motor 2.
[0019] The speed command signal Sc includes a value indicating the target operating state of motor 2. For example, the speed command signal Sc may be a signal that includes command information for instructing the rotational speed of the rotor of motor 2. The speed command signal Sc includes the target value (target speed) of the rotor speed of motor 2 and the acceleration / deceleration time Tc.
[0020] Figure 2 This is a graph representing an example of the change in the rotational speed of motor 2 based on motor drive control device 1.
[0021] In this embodiment, the speed command signal Sc is, for example, a signal used to implement a trapezoidal speed command, which uses the maximum output of motor 2 and performs control in the shortest possible time. According to the trapezoidal speed command, for example, the speed of motor 2 increases from a minimum speed Vf to a maximum speed Vm with a maximum acceleration A. After moving at the maximum speed Vm, motor 2 decelerates with a maximum deceleration A back to the target minimum speed Vf.
[0022] The drive control unit 12 generates a drive control signal Sd for controlling the drive of the motor 2 based on the trapezoidal speed command output by the command generation unit 11 and the rotor speed ω of the motor 2 calculated by the speed calculation unit 15. For example, the drive control signal Sd is a target value of the current of the motor 2 generated based on the trapezoidal speed command and the speed ω. The drive control unit 12 generates the drive control signal Sd, for example, by performing speed control calculations corresponding to the trapezoidal speed command and the speed ω. Specifically, the drive control unit 12 calculates a control quantity corresponding to the difference Δ between the speed command signal Sc included in the trapezoidal speed command and the speed ω. For example, the drive control unit 12 calculates the drive control signal Sd of the motor 2 by performing PI control calculations so that the difference Δ becomes zero. The drive control unit 12 corrects the value of the drive control signal Sd for controlling the drive of the motor 2 based on a parameter vector calculated based on the inertia estimated by the inertia estimation processing unit 16 described later.
[0023] The current detection unit 13 is a functional unit used to detect the drive current I of the coils of each phase of the motor 2 and output the detected value to the filter unit 161. The current detection unit 13 is an example of a detection unit that detects physical quantities that accompany the drive. For example, the current detection unit 13 is a shunt resistor connected in series with the inverter circuit between the DC power supply and the ground potential.
[0024] The position detection unit 14 is a functional unit for detecting the rotational position of the rotor of the motor 2. The position detection unit 14 is an example of a detection unit that detects a physical quantity accompanying the drive, such as an encoder. The position detection unit 14 outputs the detected value corresponding to the rotational position of the rotor of the motor 2 to the speed calculation unit 15. It should be noted that the position detection unit 14 is not limited to an encoder, and may also be a Hall element, etc.
[0025] The speed calculation unit 15 is a functional unit that obtains a measured value of the rotational speed of the rotor of the motor 2. For example, the speed calculation unit 15 calculates the rotational speed ω of the rotor of the motor 2 based on the detected value of the rotational position output from the position detection unit 14.
[0026] The inertia estimation processing unit 16 is a functional block implemented inside the motor drive control device 1, and functions as the inertia estimation device of the present invention. The inertia estimation processing unit 16 is composed of a filter unit 161, an inertia estimation unit 162, and a frequency determination unit 163.
[0027] The filter unit 161 attenuates the frequency characteristics of the detected physical quantities, namely the rotor speed ω of the motor 2 and the drive current I of the coil. The filter unit 161 is a low-pass filter that attenuates the frequency characteristics of the speed ω and the drive current I below the cutoff frequency fc, corresponding to the cutoff frequency fc determined by the frequency determination unit 163.
[0028] It should be noted that the filter unit 161 can also replace the drive current I of the coil to attenuate the frequency characteristics below the cutoff frequency fc for the value of the torque T of the motor 2. In this case, the filter unit 161 calculates the torque T of the motor 2 based on the drive current I, drive voltage, and rotational speed ω of the motor 2.
[0029] The frequency determination unit 163 determines the cutoff frequency fc of the physical quantity based on the acceleration / deceleration time Tc included in the speed command signal Sc. The acceleration / deceleration time Tc refers to the time included in the speed command signal Sc from when the speed of motor 2 increases from the minimum speed Vf to the maximum speed Vm with the maximum acceleration A, and from when the speed of motor 2 decreases from the maximum speed Vm to the target minimum speed Vf with the maximum deceleration A. The frequency determination unit 163 calculates the cutoff frequency fc based on the acceleration / deceleration time Tc using the following formula (1). In formula (1), N is a constant.
[0030] fc = N × 1 / Tc……(1) The inertia estimation unit 162 estimates the inertia of the motor based on the frequency characteristics of the decayed rotational speed ω and the driving current I of the coil. The inertia estimation unit 162 estimates the inertia and calculates a parameter vector for correcting the value of the drive control signal Sd generated by the drive control unit 12. The parameter vector can be calculated using the recursive least squares method through the following formulas (2) and (3).
[0031] In equations (2) and (3), the inertia is set as Furthermore, in equations (2) and (3), the parameter vector is set as . G in equation (2) n and e n It is obtained through the following formulas (4) and (5). In formulas (3) to (5), the rotational speed ω is determined by... Indicates that the current I is generated by In equations (3) to (5), λ is the forgetting factor. The inertia estimation unit 162 outputs the parameter vector used to correct the calculated value of the drive control signal Sd to the drive control unit 12.
[0032] Figure 3 This is a flowchart illustrating the processing flow of the motor drive control device 1 based on the first embodiment.
[0033] In the motor drive control device 1, the command generation unit 11 outputs the value of the target action state of the motor 2 generated according to the speed command signal Sc as a trapezoidal speed command to the drive control unit 12 (step S101).
[0034] The instruction generation unit 11 outputs the acceleration / deceleration time Tc to the frequency determination unit 163 (step S102).
[0035] The frequency determination unit 163 determines the cutoff frequency fc of the physical quantity based on the acceleration / deceleration time Tc included in the speed command signal Sc (step S103).
[0036] The filter unit 161 sets the cutoff frequency fc determined by the frequency determination unit 163 (step S104).
[0037] The drive control unit 12 generates a drive control signal Sd to drive the motor 2 based on the trapezoidal speed command output by the command generation unit 11 and the rotor speed ω of the motor 2 calculated by the speed calculation unit 15, and outputs it to the motor 2 to drive the motor 2 (step S105).
[0038] The current detection unit 13 detects the drive current I output from the drive control unit 12 to the coil of the motor 2 (step S106). The detected drive current I is output to the filter unit 161.
[0039] The filter unit 161 performs filtering to attenuate the frequency characteristics of the rotational speed ω and the drive current I below the cutoff frequency fc, corresponding to the cutoff frequency fc (step S107).
[0040] The inertia estimation unit 162 estimates the motor's inertia based on the frequency characteristics of the decayed rotational speed ω and the coil's drive current I (step S108). The inertia estimation unit 162 estimates the inertia, calculates a parameter vector used to correct the value of the drive control signal Sd generated by the drive control unit 12, and outputs it to the drive control unit 12. The drive control unit 12 uses the parameter vector to correct the value of the drive control signal Sd.
[0041] The motor drive control device 1 of this embodiment includes an inertia estimation processing unit 16, which comprises: a filter unit 161 that attenuates the frequency characteristics of at least one of the physical quantities (rotational speed ω, drive current I, and torque T) accompanying the drive of the motor 2; and an inertia estimation unit 162 that estimates the inertia of the motor 2 based on the attenuated physical quantities. For example, the filter unit 161 is a low-pass filter that attenuates the frequency characteristics of the physical quantity corresponding to the cutoff frequency fc. The cutoff frequency fc is determined, for example, by a frequency determination unit 163 based on command information related to the rotational speed ω of the motor 2, such as a trapezoidal speed command included in the speed command signal Sc.
[0042] Figure 4 This is a graph illustrating an example of the relationship between the rotational speed ω of motor 2 and the estimated inertia of motor 2, based on the inertia estimation device of motor 2 in the reference example. Figure 5 This is a graph illustrating an example of the relationship between the rotational speed ω of motor 2 and the estimated inertia value based on the inertia estimation processing unit 16 of motor 2. Figure 4 The inertia estimation device in the reference example of the processing shown does not have a frequency determination unit 163 that determines the cutoff frequency fc of a physical quantity based on the acceleration / deceleration time Tc, which differs from the inertia estimation processing unit 16. Figure 4 and Figure 5 The diagram shows the estimated change in inertia based on the change in the rotational speed ω of the rotor of motor 2.
[0043] according to Figure 5 It can be seen that the inertia estimated by the inertia estimation processing unit 16 is the same as that estimated by... Figure 4 Compared to the inertia estimated by the inertia estimation device in the reference example shown, the region with small change in rotational speed ω, i.e., the region with small acceleration / deceleration A, has less variation in value between the values of other regions.
[0044] Therefore, according to the execution Figure 3 The inertia estimation processing unit 16 and the motor drive control device 1 equipped with the inertia estimation processing unit 16 shown in the flowchart can estimate the inertia with high accuracy regardless of the magnitude of the acceleration or deceleration A of the motor 2.
[0045] The frequency determination unit 163 determines the cutoff frequency fc based on the acceleration and deceleration time Tc of the motor 2. As a result, based on the inertia estimation processing unit 16 and the motor drive control device 1, the inertia can be estimated with high accuracy regardless of the magnitude of the acceleration and deceleration A of the motor 2.
[0046] [Second Implementation] Hereinafter, specific examples of the second embodiment of the present invention will be described with reference to the accompanying drawings.
[0047] The second embodiment relates to the previously described... Figure 1 Other functions implemented in the motor drive control device 1 shown. Therefore, in the following description, the same reference numerals are used to label the constituent elements with the same reference numerals as in the first embodiment, and repeated descriptions are omitted.
[0048] The specific configuration and operation of the motor drive control device 1 according to the second embodiment will be described in detail below.
[0049] Figure 6 This is a functional block diagram that schematically illustrates the configuration of a motor drive control device 1 with an inertia estimation processing unit 16B of a motor 2 according to the second embodiment of the present invention.
[0050] like Figure 6 As shown, the configuration of the inertia estimation processing unit 16B in the motor drive control device 1 of the second embodiment is different from that of the inertia estimation processing unit 16 in the motor drive control device 1 of the first embodiment described above.
[0051] The inertia estimation processing unit 16B consists of a filter unit 161B and an inertia estimation unit 162. Unlike the inertia estimation processing unit 16, the inertia estimation processing unit 16B does not have a frequency determination unit 163.
[0052] Similar to the filter section 161 of the inertia estimation processing section 16 described earlier, filter section 161B attenuates the frequency characteristics of the detected physical quantities, namely the rotor speed ω of motor 2 and the drive current I of the coil. Filter section 161B is a notch filter that attenuates the frequency characteristics of the speed ω and the drive current I corresponding to the frequency band fb, corresponding to a predetermined frequency band fb. For example, the frequency band fb attenuated by filter section 161B can be determined by analyzing the waveform of vibration measured under conditions where vibration is generated by motor 2 driven by motor drive control device 1 (speed, rotational position, acceleration, deceleration, etc.) using FFT (Fast Fourier transform). Furthermore, a vibration detection unit can be provided in motor drive control device 1, and filter section 161B can be activated when vibration is detected while driving motor 2.
[0053] Similar to the inertia estimation processing unit 16 described above, the inertia estimation unit 162 estimates the motor's inertia based on the frequency characteristics of the decayed rotational speed ω and the coil's drive current I. The inertia estimation unit 162 estimates the inertia and calculates a parameter vector for correcting the value of the drive control signal Sd generated by the drive control unit 12.
[0054] Figure 7 This is a flowchart illustrating the processing flow of the motor drive control device 1 based on the second embodiment.
[0055] In the motor drive control device 1, the command generation unit 11 outputs the value of the target action state of the motor 2 generated according to the speed command signal Sc as a trapezoidal speed command to the drive control unit 12 (step S201).
[0056] The drive control unit 12 generates a drive control signal Sd to drive the motor 2 based on the trapezoidal speed command output by the command generation unit 11 and the rotor speed ω of the motor 2 calculated by the speed calculation unit 15, and outputs it to the motor 2 to drive the motor 2 (step S202).
[0057] The current detection unit 13 detects the drive current I output from the drive control unit 12 to the coil of the motor 2 (step S203). The detected drive current I is output to the filter unit 161.
[0058] The position detection unit 14 detects the rotational position (angle) of the rotor of the motor 2 (step S204). The position detection unit 14 outputs the detection value of the rotational position corresponding to the rotational position of the rotor of the motor 2.
[0059] The speed calculation unit 15 calculates the rotational speed ω of the motor 2 rotor based, for example, on the detected value of the rotational position output from the position detection unit 14 (step S205).
[0060] The filter unit 161B performs filtering that attenuates the frequency characteristics of the frequency band fb included in the rotational speed ω and the drive current I, corresponding to the frequency band fb (step S206).
[0061] The inertia estimation unit 162 estimates the motor's inertia based on the frequency characteristics of the decayed rotational speed ω and the coil's drive current I (step S207). The inertia estimation unit 162 estimates the inertia, calculates a parameter vector used to correct the value of the drive control signal Sd generated by the drive control unit 12, and outputs it to the drive control unit 12. The drive control unit 12 uses the parameter vector to correct the value of the drive control signal Sd.
[0062] The motor drive control device 1 of this embodiment includes an inertia estimation processing unit 16B, which comprises: a filter unit 161B that attenuates the frequency characteristics of at least one of the physical quantities (speed ω, drive current I, and torque T) accompanying the drive of the motor 2; and an inertia estimation unit 162 that estimates the inertia of the motor 2 based on the attenuated physical quantities. The filter unit 161B is a notch filter that attenuates the frequency characteristics of the physical quantities corresponding to a predetermined frequency band fb. The frequency band fb is, for example, based on the trapezoidal speed command included in the speed command signal Sc.
[0063] like Figure 5 As shown, in the inertia estimation processing unit 16B, the estimated inertia is compared with that obtained from... Figure 4 Compared to the inertia estimated by the inertia estimation device in the reference example shown, the region with small change in rotational speed ω, i.e., the region with small acceleration / deceleration A, has less variation in value between the values of other regions.
[0064] Therefore, according to the execution Figure 7 The inertia estimation processing unit 16B and the motor drive control device 1 equipped with the inertia estimation processing unit 16B shown in the flowchart can estimate the inertia with high accuracy regardless of the magnitude of the acceleration or deceleration A of the motor 2.
[0065] [Third Implementation] Hereinafter, specific examples of the third embodiment of the present invention will be described with reference to the accompanying drawings.
[0066] The third embodiment relates to the previously described... Figure 1 Other functions implemented in the motor drive control device 1 shown. Therefore, in the following description, the same reference numerals are used to label the constituent elements with the same reference numerals as in the first embodiment, and repeated descriptions are omitted.
[0067] The specific configuration and operation of the motor drive control device 1 according to the third embodiment will be described in detail below.
[0068] like Figure 8 As shown, the configuration of the inertia estimation processing unit 16C in the motor drive control device 1 of the third embodiment is different from that of the inertia estimation processing unit 16 in the motor drive control device 1 of the first embodiment described above.
[0069] The inertia estimation processing unit 16C consists of a filter unit 161, an inertia estimation unit 162, and a frequency determination unit 163C.
[0070] The frequency determination unit 163C determines the cutoff frequency fc of the physical quantity based on the maximum speed Vm and minimum speed Vf of the motor 2 achieved by the speed command signal Sc as described above, and the amount of movement (rotation) L calculated by the rotational speed of the motor 2 and the acceleration / deceleration time Tc included in the speed command signal Sc. Specifically, the frequency determination unit 163C determines whether the amount of movement L satisfies the condition of the following formula (6). Formula (6) determines whether the speed of the motor 2 has not reached the maximum speed Vm. If the condition of formula (6) is satisfied, the frequency determination unit 163C calculates the maximum speed Vm by the following formula (7).
[0071] L≤1 / 2 (Vm+Vf) ((Vm-A) / A)......(6) Vm = (2 L A+Vf 2 ) 1 / 2 ... (7) When the conditions of formula (6) are met, the frequency determination unit 163C determines the cutoff frequency fc of the physical quantity according to formula (8) based on the maximum speed Vm, acceleration A, and constant N obtained by formula (7). Furthermore, when the conditions of formula (6) are not met, that is, when the speed of motor 2 reaches the maximum speed Vm, the frequency determination unit 163C determines the cutoff frequency fc of the physical quantity according to formula (9) based on the maximum speed Vm, acceleration A, and constant N obtained from the instruction generation unit 11. In formulas (8) and (9), N is a constant of 1 or more.
[0072] fc = (Vm / A) N……(8) fc = 1 / (Vm / A) N……(9) The filter section 161 is similar to the filter section 161 of the inertia estimation processing section 16 described above. It is a low-pass filter that attenuates the frequency characteristics of the rotational speed ω and the drive current I below the cutoff frequency fc, corresponding to the cutoff frequency fc determined by the frequency determination section 163C.
[0073] Similar to the inertia estimation processing unit 16 described above, the inertia estimation unit 162 estimates the motor's inertia based on the frequency characteristics of the decayed rotational speed ω and the coil's drive current I. The inertia estimation unit 162 estimates the inertia and calculates a parameter vector for correcting the value of the drive control signal Sd generated by the drive control unit 12.
[0074] Figure 9 This is a flowchart illustrating the processing flow of the motor drive control device 1 based on the third embodiment.
[0075] In the motor drive control device 1, the command generation unit 11 outputs the value of the target action state of the motor 2 generated according to the speed command signal Sc as a trapezoidal speed command to the drive control unit 12 (step S301).
[0076] The command generation unit 11 outputs the maximum speed Vm, minimum speed Vf, and movement amount (rotation amount) L of the motor 2 included in the speed command signal Sc to the frequency determination unit 163 (step S302).
[0077] The frequency determination unit 163C determines whether the movement amount L has not reached the maximum speed Vm of the motor 2 based on the maximum speed Vm, minimum speed Vf, and movement amount (rotation amount) L of the motor 2 included in the speed command signal Sc (step S303).
[0078] If the maximum speed Vm of the motor 2 is not reached (S303: Yes), the frequency determination unit 163C calculates the maximum speed Vm according to formula (7), and determines the cutoff frequency fc of the physical quantity according to formula (8) based on the maximum speed Vm, acceleration A and constant N calculated by formula (7) (step S304).
[0079] When the speed of the motor 2 reaches the maximum speed Vm (S303: No), the frequency determination unit 163C determines the cutoff frequency fc of the physical quantity according to the following formula (9) based on the maximum speed Vm, acceleration A and constant N obtained from the instruction generation unit 11 (step S305).
[0080] The filter unit 161 sets the cutoff frequency fc determined by the frequency determination unit 163 (step S306).
[0081] The drive control unit 12 generates a drive control signal Sd to drive the motor 2 based on the trapezoidal speed command output by the command generation unit 11 and the rotor speed ω of the motor 2 calculated by the speed calculation unit 15, and outputs it to the motor 2 to drive the motor 2 (step S307).
[0082] The current detection unit 13 detects the drive current I output from the drive control unit 12 to the coil of the motor 2 (step S308). The detected drive current I is output to the filter unit 161.
[0083] The position detection unit 14 detects the rotational position (angle) of the rotor of the motor 2 (step S309). The position detection unit 14 outputs a detection value of the rotational position corresponding to the rotational position of the rotor of the motor 2.
[0084] The speed calculation unit 15 calculates the rotational speed ω of the motor 2 rotor based, for example, on the detected value of the rotational position output from the position detection unit 14 (step S310).
[0085] The filter unit 161B performs filtering to attenuate the frequency characteristics of the frequency band fb included in the rotational speed ω and the drive current I, corresponding to the cutoff frequency fc (step S311).
[0086] The inertia estimation unit 162 estimates the motor's inertia based on the frequency characteristics of the decayed rotational speed ω and the coil's drive current I (step S312). The inertia estimation unit 162 estimates the inertia, calculates a parameter vector used to correct the value of the drive control signal Sd generated by the drive control unit 12, and outputs it to the drive control unit 12. The drive control unit 12 uses the parameter vector to correct the value of the drive control signal Sd.
[0087] The motor drive control device 1 of this embodiment includes an inertia estimation processing unit 16C, which comprises: a filter unit 161 that attenuates the frequency characteristics of at least one of the physical quantities (rotational speed ω, drive current I, and torque T) accompanying the drive of the motor 2; an inertia estimation unit 162 that estimates the inertia of the motor 2 based on the attenuated physical quantities; and a frequency determination unit 163C that determines the cutoff frequency fc based on command information related to the rotational speed ω of the motor 2, such as a trapezoidal speed command included in the speed command signal Sc. The filter unit 161 is a low-pass filter that attenuates the frequency characteristics of the physical quantity corresponding to the cutoff frequency fc. The cutoff frequency fc is determined, for example, by the frequency determination unit 163C based on information included in the trapezoidal speed command, such as the rotational amount L of the motor 2. Specifically, in order to determine the cutoff frequency fc, the frequency determination unit 163C determines whether the movement (rotational amount) L satisfies the conditions determined by the highest speed Vm and the lowest speed Vf, and modifies the formula for calculating the cutoff frequency fc according to the determination result.
[0088] like Figure 5 As shown, in the inertia estimation processing unit 16C, the estimated inertia is compared with that obtained from... Figure 4 Compared to the inertia estimated by the inertia estimation device in the reference example shown, the region with small change in rotational speed ω, i.e., the region with small acceleration / deceleration A, has less variation in value between the values of other regions.
[0089] Figure 10 This is a graph illustrating an example of the change in rotational speed ω when the amount of movement L of the motor 2 based on the motor drive control device 1 is small.
[0090] like Figure 10 As shown, when the movement L of motor 2 is small, the movement L is reached before reaching the maximum speed Vm included in the trapezoidal speed command. In this case, if the cutoff frequency fc is set according to the acceleration / deceleration time Tc, the cutoff frequency fc becomes smaller, and it is believed that the signal of the physical quantity will be excessively attenuated by filtering based on the filter unit 161.
[0091] Therefore, in the frequency determination unit 163C of the inertia estimation processing unit 16C, it is determined whether the movement amount L satisfies the condition determined by the highest speed Vm and the lowest speed Vf, and the formula for calculating the cutoff frequency fc is changed according to the determination result.
[0092] Therefore, according to the execution Figure 9 The inertia estimation processing unit 16C and the motor drive control device 1 equipped with the inertia estimation processing unit 16C shown in the flowchart can estimate the inertia with high accuracy regardless of the magnitude of the acceleration / deceleration A and the movement L of the motor 2.
[0093] In the above embodiments, the case where the inertia estimation processing unit 16 is a functional block built into the motor drive control device 1 has been described in detail. However, the inertia estimation device of the present invention can also be configured as an external device that performs the functions of the inertia estimation processing units 16, 16B, and 16C described above and can be communicatively connected to the motor drive control device 1. In this case, the inertia estimation device is, for example, a program processing device (e.g., a microcontroller) that has a processor such as a CPU, various storage devices such as RAM and ROM, and peripheral circuits such as counters (timers), A / D conversion circuits, D / A conversion circuits, clock generation circuits, and input / output (I / F) circuits interconnected via a bus or dedicated lines. Furthermore, the functional block of the inertia estimation device, for example, in a program processing device that serves as a control circuit, is implemented by the processor executing various arithmetic operations according to a program stored in memory, and controlling peripheral circuits such as counters and A / D conversion circuits.
[0094] In addition, those skilled in the art can make appropriate modifications to this invention based on prior knowledge. As long as the invention's structure is still present through such modifications, it is naturally included within the scope of this invention.
[0095] Explanation of reference numerals in the attached figures 1: Motor drive control unit; 2: Motor; 11: Command generation unit; 12: Drive control unit; 13: Current detection unit; 14: Position detection unit; 15: Speed calculation unit; 16, 16B, 16C: Inertia estimation processing unit (inertia estimation device); 161, 161B: Filter unit; 162: Inertia estimation unit; 163; 163C: Frequency determination unit; A: Acceleration; fb: Frequency band; fc: Cutoff frequency; Tc: Acceleration / deceleration time; Vf: Minimum speed; Vm: Maximum speed.
Claims
1. A device for estimating the inertia of a motor, comprising: The filter section attenuates the frequency characteristics of the physical quantities accompanying the motor's drive; and The inertia estimation unit estimates the inertia of the motor based on the attenuated physical quantity.
2. The inertia estimation device for a motor according to claim 1, wherein, The physical quantity is at least one of the motor's rotational speed, drive current, or torque.
3. The inertia estimation device for a motor according to claim 1 or 2, wherein, The filter section is a notch filter that attenuates the frequency characteristics of the physical quantity corresponding to a specified frequency band.
4. The inertia estimation device for a motor according to claim 1 or 2, wherein, The inertia estimation device for the motor includes a frequency determination unit, which determines the cutoff frequency of the physical quantity based on command information related to the rotational speed of the motor. The filter section is a low-pass filter that attenuates the frequency characteristics of the physical quantity corresponding to the cutoff frequency.
5. The inertia estimation device for a motor according to claim 4, wherein, The frequency determination unit determines the cutoff frequency based on the acceleration and deceleration time of the motor obtained based on the instruction information.
6. The inertia estimation device for a motor according to claim 4, wherein, The frequency determination unit determines the cutoff frequency based on the amount of motor rotation obtained from the instruction information.
7. A motor drive control device, comprising: The drive control unit controls the drive of the motor based on command information related to the motor's rotational speed; The detection unit detects the physical quantities accompanying the drive; The filter section attenuates the frequency characteristics of the detected physical quantity; and The inertia estimation unit estimates the inertia of the motor based on the attenuated physical quantity. The drive control unit controls the motor drive based on the inertia.
8. A method for estimating the inertia of a motor, comprising the following steps: The steps for detecting the physical quantities that accompany the motor's drive; The step of attenuating the frequency characteristics of the detected physical quantity; and The step of estimating the inertia of the motor based on the attenuated physical quantity.
Citation Information
Patent Citations
Controller for motor servo system
JP1999313495A