[go: up one dir, main page]

CN112217438A - Motor control device - Google Patents

Motor control device Download PDF

Info

Publication number
CN112217438A
CN112217438A CN202010652454.2A CN202010652454A CN112217438A CN 112217438 A CN112217438 A CN 112217438A CN 202010652454 A CN202010652454 A CN 202010652454A CN 112217438 A CN112217438 A CN 112217438A
Authority
CN
China
Prior art keywords
command value
value
correction filter
motor control
preprocessing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202010652454.2A
Other languages
Chinese (zh)
Inventor
恒木亮太郎
猪饲聪史
梁瑶
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fanuc Corp
Original Assignee
Fanuc Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fanuc Corp filed Critical Fanuc Corp
Publication of CN112217438A publication Critical patent/CN112217438A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/404Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by control arrangements for compensation, e.g. for backlash, overshoot, tool offset, tool wear, temperature, machine construction errors, load, inertia
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P23/00Arrangements or methods for the control of AC motors characterised by a control method other than vector control
    • H02P23/0004Control strategies in general, e.g. linear type, e.g. P, PI, PID, using robust control
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/19Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path
    • G05B19/21Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path using an incremental digital measuring device
    • G05B19/23Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path using an incremental digital measuring device for point-to-point control
    • G05B19/231Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path using an incremental digital measuring device for point-to-point control the positional error is used to control continuously the servomotor according to its magnitude
    • G05B19/234Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path using an incremental digital measuring device for point-to-point control the positional error is used to control continuously the servomotor according to its magnitude with current or torque feedback only
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B11/00Automatic controllers
    • G05B11/01Automatic controllers electric
    • G05B11/36Automatic controllers electric with provision for obtaining particular characteristics, e.g. proportional, integral, differential
    • G05B11/40Automatic controllers electric with provision for obtaining particular characteristics, e.g. proportional, integral, differential for obtaining an integral characteristic
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B5/00Anti-hunting arrangements
    • G05B5/01Anti-hunting arrangements electric
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P23/00Arrangements or methods for the control of AC motors characterised by a control method other than vector control
    • H02P23/14Estimation or adaptation of motor parameters, e.g. rotor time constant, flux, speed, current or voltage
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/41Servomotor, servo controller till figures
    • G05B2219/41122Mechanical vibrations in servo, antihunt also safety, stray pulses, jitter
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/41Servomotor, servo controller till figures
    • G05B2219/41233Feedforward simulation filter, with model
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/41Servomotor, servo controller till figures
    • G05B2219/41428Feedforward of position and speed

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Power Engineering (AREA)
  • Control Of Electric Motors In General (AREA)
  • Mechanical Engineering (AREA)

Abstract

The invention provides a motor control device, which can prevent the amplification of small fluctuation of a command value and prevent the generation of vibration and abnormal sound of a driven part even if a correction filter for correcting the command value has filter characteristics of improving gain in a specific frequency domain. The motor control device is provided with: a command unit that outputs a command value for controlling a servo motor for driving a machine as a driven unit; a motor control unit that controls the servo motor based on the command value; a correction filter for correcting the instruction value; and a preprocessing unit provided in a stage preceding the correction filter, wherein the correction filter has a frequency domain having a gain larger than 1, and the preprocessing unit executes preprocessing using a past instruction value as a present instruction value when a variation of the instruction value before correction by the correction filter is equal to or smaller than a predetermined value.

Description

Motor control device
Technical Field
The present invention relates to a motor control device.
Background
Conventionally, the following techniques are known (for example, see patent document 1): in a motor control device that controls a motor for driving a driven unit of an industrial machine or the like, a command value is corrected using an inverse characteristic filter (inverse characteristic filter) or the like of a transmission characteristic from the motor to the machine.
Documents of the prior art
Patent document
Patent document 1: japanese patent laid-open publication No. 2017-175890
Disclosure of Invention
Problems to be solved by the invention
In such a motor control device, when the correction filter has a filter characteristic such that the gain is increased in a specific frequency domain, for example, the following cases may occur: in this specific frequency range, a minute variation in the command value due to discretization or the like is amplified, and as a result, vibration or abnormal noise is generated in the driven part of the machine controlled by the command value. In industrial machines and the like, it is desired to prevent such vibrations and abnormal noise from being generated.
Means for solving the problems
One embodiment of a motor control device of the present disclosure is configured to include: a command unit that outputs a command value for controlling a motor for driving a driven unit; a motor control unit that controls the motor based on the command value; a correction filter for correcting the instruction value; and a preprocessing unit provided in a stage preceding the correction filter, wherein the correction filter has a frequency domain having a gain larger than 1, and the preprocessing unit executes preprocessing using a past instruction value as a present instruction value when a variation of the instruction value before correction by the correction filter is a predetermined value or less.
ADVANTAGEOUS EFFECTS OF INVENTION
According to the motor control device of one aspect, even when the correction filter for correcting the command value has a filter characteristic that increases the gain in a specific frequency range, it is possible to prevent amplification of small fluctuations in the command value, and to prevent generation of vibration or abnormal noise in the driven part.
Drawings
Fig. 1 is a block diagram illustrating an embodiment of a motor control device.
Fig. 2 is a graph showing a transfer characteristic from the servo motor to the machine.
Fig. 3 is a graph showing the filter characteristics of the inverse characteristic filter.
Fig. 4 is a graph showing command values output from the command unit.
Fig. 5 is a graph showing corrected instruction values when the instruction values not subjected to preprocessing are corrected by the inverse characteristic filter.
Fig. 6 is a graph showing corrected command values that have been processed by the inverse characteristic filter after the preprocessing.
Fig. 7 is a flowchart illustrating a process of one embodiment of the motor control device.
Description of the reference numerals
100: a motor control device; 110: an instruction unit; 120: a motor control unit; 121: a subtractor; 122: a position control unit; 123: an adder; 124: a subtractor; 125: a speed control unit; 126: an adder; 127: a servo motor (electric motor); 128: a rotary encoder; 129: an integrator; 130: a position feedforward section; 131: a speed feedforward section; 150: a correction filter; 160: a pretreatment section; 200: a machine (driven part); 300: a transfer mechanism.
Detailed Description
Next, an embodiment of a motor control device according to the present disclosure will be described with reference to the drawings.
Fig. 1 is a block diagram illustrating an embodiment of a motor control device.
As shown in fig. 1, the motor control device 100 includes a command unit 110, a motor control unit 120, a correction filter 150, and a preprocessing unit 160. Fig. 1 shows a machine 200 as a driven part driven by the motor control device 100.
Examples of the machine 200 to be controlled by the motor control device 100 include a machine tool. However, the control target of the motor control device 100 is not limited to this, and may be, for example, an industrial machine other than a machine tool. Industrial machines include machine tools, industrial robots, and other machines (including various machines such as service robots, forging machines, and injection molding machines). The motor control device 100 may be provided as a part of an industrial machine or the like.
The command unit 110 outputs a position command value as a command value for controlling the servo motor 127, the servo motor 127 being a motor for driving the machine 200. The command unit 110 generates a position command in accordance with a program or a command input from a host control device or an external input device, which is not shown as a host controller. The position command may be generated by a host controller as a host controller, an external input device, or the like. A position command is generated to vary the pulse frequency to vary the speed of servo motor 127. The position command becomes a control command. The position command value output from the command unit 110 is input to the motor control unit 120 after passing through a preprocessing unit 160 and a correction filter 150, which will be described later.
The motor control unit 120 controls the servo motor 127 based on the command output from the command unit 110. The motor control unit 120 includes a subtractor 121, a position control unit 122, an adder 123, a subtractor 124, a velocity control unit 125, an adder 126, a servo motor 127, an integrator 129, a position feedforward unit 130, and a velocity feedforward unit 131. The subtractor 121, the position control unit 122, the adder 123, the subtractor 124, the speed control unit 125, the adder 126, the servo motor 127, and the integrator 129 constitute a position feedback loop. The subtractor 124, the speed control unit 125, the adder 126, and the servo motor 127 form a speed feedback loop. A rotary encoder 128 is attached to the servo motor 127 serving as a motor. The rotary encoder 128 and the integrator 129 serve as detectors, and the integrator 129 outputs the position detection value to the subtractor 121 as position feedback information. In the following description, the servo motor 127 is described as a motor that performs a rotational motion, but the servo motor 127 may be a linear motor that performs a linear motion.
The subtractor 121 obtains a difference between the shaped position command value output from the correction filter 150 described later and the detected position fed back from the position, and outputs the difference to the position control unit 122 as a positional deviation.
The position control unit 122 outputs a value obtained by multiplying the position deviation by the position gain Kp to the adder 123 as a speed command value.
The adder 123 adds the speed command value and the output value (position feedforward term) of the position feedforward section 130, and outputs the resultant to the subtractor 124 as a speed command value subjected to feedforward control. The subtractor 124 obtains a difference between the output of the adder 123 and the speed detection value fed back from the speed, and outputs the difference to the speed control unit 125 as a speed deviation.
The speed control unit 125 adds a value obtained by multiplying the speed deviation by the integral gain K1v and integrating the result and a value obtained by multiplying the speed deviation by the proportional gain K2v, and outputs the result to the adder 126 as a torque command value.
The adder 126 adds the torque command value and the output value (speed feedforward term) of the speed feedforward section 131, and outputs the resultant to the servo motor 127 as a torque command value subjected to feedforward control.
The rotation of servo motor 127 controlled based on the torque command value is transmitted to machine 200 via transmission mechanism 300. As the transmission mechanism 300, for example, a ball screw is used.
The rotary encoder 128 detects the rotational angle position of the servomotor 127. The speed detection value based on the detected rotational angle position is input to the subtractor 124 as speed feedback information (speed FB information).
The integrator 129 integrates the speed detection value output from the rotary encoder 128 to output a position detection value. The position detection value is input to the subtractor 121 as position feedback information (position FB information).
The position feedforward section 130 differentiates the position command value output from the correction filter 150 and multiplies the differentiated value by a constant to perform transmission shown in equation (1)The position feedforward processing shown by the transfer function g(s) is performed, and the processing result is output to the adder 123 as a position feedforward term. Coefficient a of formula (1)i、bj(m, n ≧ i, j ≧ 0, m, n are natural numbers) are the coefficients of the transfer function G(s).
[ number 1 ]
Figure BDA0002575480940000041
The velocity feedforward section 131 performs velocity feedforward processing shown by a transfer function h(s) shown in expression (2) on a value obtained by second-order differentiating the position command value and multiplying the position command value by a constant, and outputs the processing result to the adder 126 as a velocity feedforward term. Coefficient c of formula (2)i、dj(m, n ≧ i, j ≧ 0, m, n are natural numbers) are the coefficients of the transfer function H(s). Coefficient ci、djIs the second coefficient. The natural numbers m and n may be the same as or different from the natural numbers m and n in expression 2.
Number 2
Figure BDA0002575480940000051
Motor control unit 120 is configured as described above.
The correction filter 150 is provided at a stage preceding the motor control unit 120, and receives the position command value. The correction filter 150 is a position command value shaper for shaping an input position command value.
As the correction filter 150, for example, an inverse characteristic filter having a filter characteristic of inverse characteristics of a transmission characteristic based on a double inertia model from the servo motor 127 to the machine 200 is used.
Here, the transfer function g(s) representing the transfer characteristic from the servo motor 127 to the machine 200 is expressed by equation (3) based on a dual inertial model.
[ number 3 ]
Figure BDA0002575480940000052
Wherein, ω is0ζ is the damping coefficient for the mechanical resonance frequency.
Transfer function G(s) using resonant frequency ω of the machine0A second order low pass filter with a cut-off frequency. As an example, FIG. 2 shows ω0=1[Hz]And ζ is 0.1. In FIG. 2, the horizontal axis represents the frequency [ Hz ]]The vertical axis is the gain [ dB ]]。
From fig. 2, it can be confirmed that: transfer characteristic from the servomotor 127 to the machine 200 at the resonance frequency ω0Nearby has 0[ dB]The above gain. Thus, at the resonant frequency ω0The vicinity is liable to generate vibration of the mechanical system. In addition, from fig. 2, it can be confirmed that: the transfer characteristic has a specific resonance frequency omega0Gain degradation in the high frequency domain. Therefore, at the specific resonant frequency ω0To a certain extent higher frequency domain, the mechanical system does not respond.
In order to solve such a problem caused by the transfer characteristic, a reverse characteristic filter of the transfer characteristic from the servo motor 127 to the machine 200 is used as the correction filter 150.
The filter characteristic f(s) of the inverse characteristic of the transmission characteristic based on the double inertia model from the servo motor 127 to the machine 200 is expressed by the following expression (4).
[ number 4 ]
Figure BDA0002575480940000061
Fig. 3 shows the filter characteristic of the inverse characteristic filter. In fig. 3, the horizontal axis is frequency [ Hz ] and the vertical axis is gain [ dB ].
By using such an inverse characteristic filter as the correction filter 150, it is possible to realize a correction filter at the resonance frequency ω0And position control with less residual vibration in the vicinity. In addition, it is possible to realize the resonance frequency ω even at the specific resonance frequency ω0High frequency domain, locations where mechanical systems will also respondAnd (5) controlling.
Here, the correction filter 150 shown in fig. 3 has a frequency domain with a gain greater than 1. Specifically, at specific resonant frequency ω0In the high frequency domain there is a frequency domain with a gain greater than 1.
On the other hand, even in such a frequency domain, the command value input to the correction filter 150 may slightly vary due to discretization or the like.
In such a case, the correction filter 150 corrects the command value, thereby amplifying minute fluctuations in the command value, and as a result, vibration or abnormal noise may occur in the driven part of the machine.
Therefore, a preprocessing section 160 described later is provided in a stage preceding the correction filter 150 to eliminate such a situation.
The correction filter 150 is provided outside the motor control unit 120, that is, outside the position feedback loop and the speed feedback loop, but may be provided in the position feedback loop or the speed feedback loop of the motor control unit 120 to correct various command values for controlling the motor. For example, the correction filter 150 may be connected to a command such as a position command, a speed command, or a torque command, specifically, to the output side of the position control unit 122, the output side of the speed control unit 125, the output side of the adder 123, or the output side of the adder 126. In addition, the correction filter 150 may be disposed before the feedforward section, specifically, on the input side of the position feedforward section 130 and on the input side of the speed feedforward section 131.
However, it is preferable that the correction filter 150 is provided outside the position feedback loop or the velocity feedback loop to suppress vibration factors outside the feedback loop (position feedback loop, velocity feedback loop) of the motor control section 120. In fig. 1, the correction filter 150 is disposed before the subtractor 121 for determining the positional deviation, and the output of the correction filter 150 is output to the subtractor 121 and the position feedforward section 130.
Further, the correction filter 150 may be another filter having a frequency domain with a gain larger than 1, and may be, for example, a notch filter, a filter that sets an acceleration/deceleration time constant, or the like.
Next, the preprocessing unit 160 will be described.
The preprocessing section 160 is disposed at a front stage of the correction filter 150. When the variation of the command value (position command value) before correction by the correction filter 150 is equal to or less than a predetermined value, the preprocessing unit 160 executes preprocessing using the past command value as the present command value.
Fig. 4 is a graph showing an example of the command value output from the command unit 110, that is, the command value before correction by the correction filter 150. As shown in the area a of fig. 4, the command value may slightly vary due to discretization or the like.
Here, when the correction filter 150 has a filter characteristic of increasing the gain in a specific frequency domain, there are cases where: the minute fluctuations in the command value are corrected by the correction filter 150 and amplified, and as a result, vibration or abnormal noise occurs in the driven part of the machine.
Fig. 5 is a graph showing an example of a corrected command value when the command value not subjected to the preprocessing is corrected by the correction filter 150. As is clear from a comparison between fig. 4 and 5, the minute fluctuation (fluctuation amount C) of the command value shown in the area a of fig. 4 is enlarged (fluctuation amount C') in the corrected command value shown in the area a of fig. 5. As described above, when the correction filter 150 has filter characteristics that increase the gain in a specific frequency domain, if the frequency band of the command value is included in the specific frequency domain, unnecessary small variations due to discretization or the like may be amplified by the correction filter 150.
Therefore, when the variation of the command value before correction by the correction filter 150 is equal to or smaller than a predetermined value, the preprocessing unit 160 executes preprocessing using the past command value as the present command value.
Specifically, a predetermined threshold B (not shown) for determining the magnitude of the fluctuation is determined, and when the fluctuation amount C of the command value is equal to or less than the predetermined threshold B, the past command value is used as the present command value. In this case, a predetermined threshold B for determining the magnitude of the fluctuation forms a dead zone, and if the fluctuation amount C of the command value is within the range of the dead zone, the command value is not updated, and the previous command value (for example, the previous command value) is used as it is.
The amount of fluctuation C of the command value can be obtained by various methods. For example, the command value may be obtained based on a difference between a previous command value and a current command value. The command value may be obtained based on a difference between a command value before a predetermined time and a command value at the present time. Alternatively, the command value may be obtained based on a difference between an average value of command values in a past predetermined period and a present command value.
When the variation of the command value is equal to or less than a predetermined value, the command value (previous command value) that has been output recently by the preprocessor 160, the average value of the command values in the past predetermined period, or the like can be used as the past command value serving as the present command value.
Fig. 6 is a graph showing an example of a corrected instruction value when the instruction value shown in fig. 4 is preprocessed by the preprocessing unit 160 and further corrected by the correction filter 150. By executing the preprocessing by the preprocessing unit 160 before the correction by the correction filter 150 in this manner, even when the correction filter 150 has a filter characteristic of increasing the gain in a specific frequency domain, a minute variation in the command value due to the discretization or the like is not amplified.
Note that, when the variation of the command value before correction by the correction filter 150 is equal to or less than a predetermined value for a predetermined period, preprocessing may be executed using the past command value as the present command value.
For example, when the variation of the command value is equal to or less than a predetermined value in a predetermined period in the past, the average value of the command values in the predetermined period in the past may be used as the current command value.
This makes it possible to more reliably determine that the current command value is an unnecessary small variation, and execute preprocessing using the past command value as the current command value.
By providing such a preprocessing unit 160 in the stage preceding the correction filter 150, it is possible to prevent amplification of a minute variation in the command value, regardless of whether the correction filter 150 has a filter characteristic that increases the gain in a high frequency range or the correction filter 150 has a filter characteristic that increases the gain in a low frequency range. That is, amplification of a minute variation in the command value can be prevented regardless of the filter characteristic (gain-increasing frequency band) of the correction filter 150.
In addition, regardless of whether the frequency band of the signal of the command value is a high frequency band or a low frequency band, amplification of a minute variation in the command value can be prevented. That is, amplification of a minute variation in the command value can be prevented regardless of the frequency of the signal having the minute variation.
That is, according to the present embodiment, it is possible to prevent amplification of a small variation in the command value in a wide range of situations, as compared with a case where a band-pass filter such as a low-pass filter is provided in a stage preceding the correction filter 150.
In addition, when only a band-pass filter such as a low-pass filter is provided before the correction filter 150, the command value is uniformly shaped regardless of the fluctuation state of the command value, and this embodiment can prevent such processing.
This configuration can also be suitably applied to a motor control device of a system in which the filter characteristics of the correction filter 150 are optimized by machine learning or the like. For example, in a motor control device capable of changing the filter characteristic of the correction filter 150, even when the frequency domain in which the gain is increased by changing the filter characteristic of the correction filter 150 is changed, it is possible to prevent amplification of a minute variation in the command value.
It is preferable that the determination as to whether or not the variation of the command value is equal to or smaller than a predetermined value is performed based on the command value before entering the feedback loop (position feedback loop, speed feedback loop) of the motor control unit 120. Specifically, it is preferable that the command unit 110 or its superordinate controller (higher-level control device, external input device, or the like) that generates the command value determines whether or not the variation of the command value is equal to or smaller than a predetermined value based on the command value outside the feedback loop of the motor control unit 120 and before entering the feedback loop. The instruction unit 110 and the like determine whether or not the preprocessing unit 160 executes preprocessing based on the determination result.
This can suppress vibration factors other than the feedback loop (position feedback loop, speed feedback loop) of the motor control unit 120.
Next, the processing of one embodiment of the motor control device 100 will be described with reference to the flowchart of fig. 7.
First, in step S1, it is determined whether or not the variation C of the command value is equal to or less than the threshold B.
When the variation C of the command value is equal to or less than the threshold B (yes in step S1), the preprocessor 160 executes preprocessing using the past command value as the present command value in step S2. Then, after the preprocessing of step S2 is performed, in step S3, the filtering process is performed by the correction filter 150.
On the other hand, if the variation C of the command value is not equal to or less than the threshold B (no in step S1), the process proceeds to step S3, and the correction filter 150 executes the filtering process.
By performing such processing, even when the correction filter 150 for correcting the command value has a filter characteristic in which the gain is increased in a specific frequency domain, it is possible to prevent amplification of a minute variation in the command value, and to prevent generation of vibration or noise in the driven part.
Further, the threshold value for determining whether or not the variation of the command value is equal to or smaller than a predetermined value may be set by an operator. Further, when the variation of the command value is equal to or less than a predetermined value for a predetermined period, or when preprocessing using a past command value as the present command value is executed, the predetermined period and the predetermined value may be set by the operator. This makes it possible to appropriately set the determination criterion according to the state of the device and the like.
Each function included in the motor control device according to one embodiment can be realized by hardware, software, or a combination thereof. Here, the software implementation means implementation by reading a program in a computer and executing the program.
The program can be stored and supplied to a computer using various types of Non-transitory computer readable media. The non-transitory computer readable medium includes various types of recording media (readable storage media) having entities. Examples of non-transitory computer readable media include: magnetic recording media (e.g., floppy disks, magnetic tapes, hard disk drives), magneto-optical recording media (e.g., magneto-optical disks), CD-ROMs (Read Only memories), CD-R, CD-R/Ws, semiconductor memories (e.g., mask ROMs, PROMs (Programmable ROMs), EPROMs (Erasable PROMs), flash ROMs, RAMs). In addition, the program may be provided to the computer through various types of transitory computer readable media. Examples of transitory computer readable media include electrical signals, optical signals, and electromagnetic waves. The transitory computer-readable medium can provide the program to the computer via a wireless communication path or a wired communication path such as an electric wire and an optical fiber.
In other words, the motor control device of the present disclosure can adopt various embodiments having the following configurations.
(1) The motor control device 100 of the present disclosure includes: an instruction unit 110 that outputs an instruction value for controlling a servo motor 127, the servo motor 127 driving a driven unit; a motor control unit 120 that controls the servo motor 127 based on the command value; a correction filter 150 for correcting the instruction value; and a preprocessing unit 160 provided in a stage preceding the correction filter 150, wherein the correction filter 150 has a frequency domain having a gain larger than 1, and the preprocessing unit 160 executes preprocessing using a past instruction value as a present instruction value when a variation in the instruction value before correction by the correction filter 150 is equal to or smaller than a predetermined value.
Thus, even when the correction filter 150 for correcting the command value has a filter characteristic that increases the gain in a specific frequency domain, it is possible to prevent amplification of small fluctuations in the command value, and to prevent occurrence of vibration or noise in the driven part.
(2) In the motor control device 100 of the present disclosure, the preprocessor 160 executes the preprocessing when the variation of the command value before the correction by the correction filter 150 is equal to or less than a predetermined value for a predetermined period.
This makes it possible to execute preprocessing using the past command value as the present command value after more reliably determining that there is a small variation in the command value that does not require a change.
(3) In the motor control device 100 of the present disclosure, the motor control unit 120 has a feedback loop, and the command unit 110 or its upper controller determines whether or not the variation of the command value is equal to or smaller than a predetermined value based on the command value before entering the feedback loop, and determines whether or not the preprocessing unit 160 executes the preprocessing based on the determination result.
Thereby, vibration factors other than the feedback loop can be suppressed.
The embodiments of the present disclosure have been described above, but the present disclosure is not limited to the above embodiments, and various changes and modifications can be made. The effects described in the present embodiment are merely the best effects resulting from the present disclosure, and the effects of the present disclosure are not limited to the effects described in the present embodiment.

Claims (3)

1. A motor control device is provided with:
a command unit that outputs a command value for controlling a motor for driving a driven unit;
a motor control unit that controls the motor based on the command value;
a correction filter for correcting the instruction value; and
a preprocessing section provided at a front stage of the correction filter,
wherein the correction filter has a frequency domain with a gain greater than 1,
the preprocessing unit executes preprocessing for using a past command value as a present command value when the variation of the command value before correction by the correction filter is equal to or smaller than a predetermined value.
2. The motor control device according to claim 1,
the preprocessing unit executes the preprocessing when a variation in the command value before the correction by the correction filter is equal to or smaller than a predetermined value for a predetermined period.
3. The motor control device according to claim 1 or 2,
the motor control section has a feedback loop,
the instruction unit or its superordinate controller determines whether or not the variation of the instruction value is equal to or smaller than a predetermined value based on the instruction value before entering the feedback loop, and determines whether or not the preprocessing unit executes the preprocessing based on the determination result.
CN202010652454.2A 2019-07-10 2020-07-08 Motor control device Pending CN112217438A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019128296A JP7269120B2 (en) 2019-07-10 2019-07-10 motor controller
JP2019-128296 2019-07-10

Publications (1)

Publication Number Publication Date
CN112217438A true CN112217438A (en) 2021-01-12

Family

ID=74059150

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010652454.2A Pending CN112217438A (en) 2019-07-10 2020-07-08 Motor control device

Country Status (4)

Country Link
US (1) US11531316B2 (en)
JP (1) JP7269120B2 (en)
CN (1) CN112217438A (en)
DE (1) DE102020208408A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI844021B (en) * 2021-07-28 2024-06-01 日商Tmeic股份有限公司 Electric motor speed control device

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7343319B2 (en) * 2019-07-19 2023-09-12 ファナック株式会社 servo control device

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3218902B2 (en) * 1994-12-27 2001-10-15 日産自動車株式会社 Multiplex communication device
CN105074126B (en) * 2013-03-11 2019-03-15 哈里伯顿能源服务公司 System, method and the computer-readable medium of underground ranging for multiple drillings
JP6372981B2 (en) * 2013-08-23 2018-08-15 日本電産サーボ株式会社 Motor drive device
JP6082681B2 (en) * 2013-09-19 2017-02-15 ミネベアミツミ株式会社 Motor drive control device and control method of motor drive control device
JP2017175890A (en) * 2016-03-25 2017-09-28 ファナック株式会社 Motor control apparatus having vibration control function
JP6412071B2 (en) * 2016-08-22 2018-10-24 ファナック株式会社 Motor control device, motor control method, and motor control program

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI844021B (en) * 2021-07-28 2024-06-01 日商Tmeic股份有限公司 Electric motor speed control device

Also Published As

Publication number Publication date
DE102020208408A1 (en) 2021-03-11
US11531316B2 (en) 2022-12-20
JP7269120B2 (en) 2023-05-08
JP2021016213A (en) 2021-02-12
US20210008678A1 (en) 2021-01-14

Similar Documents

Publication Publication Date Title
JP4837558B2 (en) Motor control device
JP3084928B2 (en) Motor position control device
JP3739749B2 (en) Control device
JP4174543B2 (en) Servo motor control device
JP4391218B2 (en) Servo control device
EP1291747B1 (en) Positioning servocontroller
EP1120698A1 (en) Position controller
JP4802839B2 (en) Active vibration damping device and control method of active vibration damping device
KR101490664B1 (en) Servo control device
JP6046182B2 (en) Motor control device with function to suppress vibration
JP2009303432A (en) Position controller using motor
CN112217438A (en) Motor control device
US20170277150A1 (en) Motor controller having function of reducing vibration
JPH04255007A (en) Damping control system
JP4658181B2 (en) Servo control device
JP6105961B2 (en) Position control device
JP6531682B2 (en) Motor control device, motor control method, program, and recording medium
JP7245978B2 (en) electric motor controller
JPWO2019138825A1 (en) Electric motor control device
JP3997201B2 (en) Industrial robot and its abnormality judgment method
JPH0888990A (en) Position controller for motor
JP2007060767A (en) Motor controller equipped with machinical constant identifier
JP2005328607A (en) Motor controller
JPWO2002082194A1 (en) Servo control device
CN112039403A (en) Motor control device and industrial machine

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination