Control method for effectively reducing vibration noise of stepping motor
By using an increasing or decreasing smooth driving method in the stepper motor control, the actual control level of each phase is calculated to solve the vibration noise problem of the stepper motor at high or high frequency. And lower control power consumption.
Patent Information
- Application Number
- CN202411207018.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-08-30
- Publication Date
- 2025-01-24
AI Technical Summary
Stepper motors are prone to generate large vibration noise when operating at high speed or high frequency, which limits their application in occasions where noise is strictly required.
By setting the control time of each beat to Tstep, setting the maximum number of beats to Max_Step, setting the phase control level of each beat, and calculating the actual control level of each phase through the beat counter and the large equal counter, using increment or Decreasing smooth driving method to reduce current impact and inertia impact between each step.
Effectively reduce the vibration noise of the stepper motor, make the current change smoother, reduce the current impact of the current in the motor coil, thereby reducing the vibration noise of rotation, and reducing the power consumption of the motor, and reducing the temperature of the motor.
Smart Images

Figure CN119362928A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of stepper motor control, and more particularly to a control method for effectively reducing the vibration noise of a stepper motor. Background Art
[0002] Stepper motors are a type of motor that converts electrical pulse signals into corresponding angular displacements. They are widely used in consumer devices such as printers, scanners, robots, and monitoring equipment due to their high control accuracy, simple structure, and good reliability. However, stepper motors are prone to generate large vibration noise during operation, especially when running at high speed or high frequency, or at ultra-low speed, which to a certain extent limits the application of stepper motors in occasions with strict noise requirements.
[0003] Traditional stepper motor control methods, such as current control methods, can achieve control of motor movement to a certain extent, but are not conducive to cost control of consumer electronic products. In the prior art, in order to reduce noise, physical methods such as adding dampers, current subdivision control, using sound insulation materials or designing more complex motor structures are usually used. Although these methods can reduce noise, they often increase the cost and complexity of the system.
[0004] In traditional applications, current control and other methods are often used to reduce the vibration and noise of rotation. Current control is a control method that controls the torque and heat of the stepper motor by adjusting the current in the motor phase coil. Increasing the control of the current will also increase the complexity of the control system. Although the control of the motor movement is achieved to a certain extent, it increases the control cost and the complexity of the drive in low-cost and simple consumer application electronics. It is not conducive to cost control in consumer electronic products. In order to control costs, an open-loop full-step control method is often used instead of a subdivided current control method. Full-step and half-step control is the most basic stepper motor control method, in which each phase coil of the motor is independently excited, so that the motor completes a full step or half step under one pulse signal. In the case of non-overload and non-overclocking, a pulse is sent, and the stepper motor rotates a step angle or half a step angle. The rotation position of the motor depends only on the number of pulses, and the speed depends only on the frequency of the pulse signal. For example, the common control methods for four-phase five-wire stepper motors are 4-beat control and 8-beat control.
[0005] Table 1 4-beat control table
[0006] Take a photo A B C D 1 1 0 0 0 2 0 1 0 0 3 0 0 1 0 4 0 0 0 1
[0007] like Figure 1 As shown in Table 1, 4-beat control is full-step drive, and the rotor moves one step at a time, and each time the two phases change simultaneously; Figure 1As shown, at the dotted line point P, A and B change at the same time.
[0008] Table 2 8-beat control table
[0009] Take a photo A B C D 1 1 0 0 0 2 1 1 0 0 3 0 1 0 0 4 0 1 1 0 5 0 0 1 0 6 0 0 1 1 7 0 0 0 1 8 1 0 0 1
[0010] like Figure 2 As shown in Table 2, 8-beat control is half-step drive, the rotor moves half a step each time, and only one phase changes each time; Figure 2 As shown, at the dotted line point P', as long as there is a phase change in A.
[0011] Compared with 4-beat control, 8-beat control uses unipolar half-step drive, and the rotor takes half a step each time, which makes the rotation smoother. Compared with 4-beat drive, 8-beat drive is more stable, because only one phase changes in 8-beat drive, while 4-beat drives change in two phases, and the jump current impact between steps is greater. However, 8-beat drive still cannot reduce the rotation noise better. Therefore, to make the drive smooth, it is necessary to reduce the sudden jump impact between each step, make the current change smoother, reduce the current impact in the motor coil and the inertia impact during rotation, thereby reducing the vibration noise. In particular, if the pulse signal frequency is too low, it may cause the motor to vibrate instead of rotating smoothly, so reducing the jump impact between each step is a way to make the drive smooth. Summary of the invention
[0012] The purpose of the present invention is to provide a control method for effectively reducing the vibration noise of a stepping motor.
[0013] The present invention aims to solve the problems existing in the stepping motor control method in the prior art.
[0014] Compared with the prior art, the technical solution of the present invention and its beneficial effects are as follows:
[0015] A control method for effectively reducing the vibration noise of a stepper motor, comprising:
[0016] Set the control time of each beat to T step ;
[0017] Set the maximum number of beats to Max_Step, the default setting is Max_Step=8;
[0018] Set the phase control level of each beat Phase1, Phase2...Phase Max_Step-1 、Phase Max_Step ;
[0019] Set Cnt step is a beat counter, and each execution T step After time, in forward control, Cnt step Add 1, Cnt step>Max_Step, Cnt step =1; in reverse control, Cnt step Minus 1, Cnt step <0, Cnt step =Max_Step;
[0020] Set each beat control to be evenly divided into M equal parts;
[0021] Calculate the control time of each large portion as T m ;
[0022] Set the large equal portion counting step Offset;
[0023] Set the large portion counter Cnt m , each time T is executed m Time, Cnt m Add Offset; when Cnt m >M, Cnt m =0;
[0024] Set each large portion to be divided into M small portions, and calculate the control time T for each small portion. mm ;
[0025] Set the small aliquot counter Cnt mm , each time T is executed mm Time, Cnt mm Add 1; Cnt mm >M, Cnt mm =0;
[0026] According to Cnt step And the phase control level of each beat Phase1, Phase2...Phase Max_Step-1 、Phase Max_Step , calculate the state of each phase;
[0027] Calculate the actual control level for each phase.
[0028] The beneficial effects of the present invention are:
[0029] This method aims to reduce the vibration noise generated by the stepper motor during operation and improve its performance in low-cost consumer applications through advanced control strategies and optimized drive technology. The present invention can effectively reduce the vibration noise during motor operation, make the current change smoother, reduce the current impact in the motor coil, thereby reducing the vibration noise of rotation, and can effectively reduce the control power consumption of the motor, thereby reducing the temperature of the motor. BRIEF DESCRIPTION OF THE DRAWINGS
[0030] Figure 1It is a 4-beat control waveform diagram provided by the background technology.
[0031] Figure 2 It is an 8-beat control waveform diagram provided by the background technology.
[0032] Figure 3 It is a schematic diagram of a control method for effectively reducing the vibration noise of a stepper motor provided by an embodiment of the present invention.
[0033] Figure 4 It is a schematic diagram of the overall control waveform provided by an embodiment of the present invention.
[0034] Figure 5 It is a schematic diagram of an 8-equal division method of trapezoidal driving provided by an embodiment of the present invention.
[0035] Figure 6 Schematic diagram of control waveforms of phase A and phase B provided in an embodiment of the present invention. DETAILED DESCRIPTION
[0036] In order to make the purpose, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Therefore, the following detailed description of the embodiments of the present invention provided in the drawings is not intended to limit the scope of the claimed invention, but merely represents the selected embodiments of the present invention. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making creative work are within the scope of protection of the present invention.
[0037] In the description of the present invention, the terms "first" and "second" are used for descriptive purposes only and should not be understood as indicating or implying relative importance or implicitly indicating the number of the indicated technical features. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more of the features. In the description of the present invention, the meaning of "plurality" is two or more, unless otherwise clearly and specifically defined.
[0038] Reference Figures 3 to 6 As shown, a control method for effectively reducing the vibration noise of a stepper motor includes:
[0039] Set the control time of each beat to T step ;
[0040] Set the maximum number of beats to Max_Step, the default setting is Max_Step=8;
[0041] Set the phase control level of each beat Phase1, Phase2...PhaseMax_Step-1 、Phase Max_Step ; By default, the 4-phase (ABCD phase) control is performed according to Table 2, and the phase control level of each beat is set according to Table 2 by default;
[0042] Set Cnt step is a beat counter, and each execution T step After time, in forward control, Cnt step Add 1, Cnt step >Max_Step, Cnt step =1; in reverse control, Cnt step Minus 1, Cnt step <0, Cnt step =Max_Step;
[0043] Set each beat control to be evenly divided into M equal parts;
[0044] Calculate the control time of each large portion as T m ;
[0045] Set the large equal portion counting step Offset;
[0046] Set the large portion counter Cnt m , each time T is executed m Time, Cnt m Add Offset; when Cnt m >M, Cnt m =0;
[0047] Set each large portion to be divided into M small portions, and calculate the control time T for each small portion. mm ;
[0048] Set the small aliquot counter Cnt mm , each time T is executed mm Time, Cnt mm Add 1; Cnt mm >M, Cnt mm =0;
[0049] According to Cnt step And the phase control level of each beat Phase1, Phase2...Phase Max_Step-1 、Phase Max_Step , calculate the state of each phase;
[0050] Calculate the actual control level for each phase.
[0051] The control time for calculating each large portion is T m ,include:
[0052] Tm =T step / M
[0053] Among them, T m is the control time of each large portion, T step To set the control time for each beat, M is the number of equal parts into which each beat is evenly divided.
[0054] The control time T of each small portion is calculated mm ,include:
[0055] T mm =T m / M;
[0056] Among them, T mm is the control time of each small portion, T m is the control time of each large portion, and M is the number of small portions divided into each large portion.
[0057] According to Cnt step And the phase control level of each beat Phase1, Phase2...Phase Max_Step-1 、Phase Max_Step , calculate the state of each phase, where
[0058] When the stepper motor rotates forward,
[0059] If a phase is at level N=1 in beat and level N+1=0 in beat, then this phase is in decreasing state in beat N;
[0060] If a phase is at level N=1 and level N+1=1 in beat, then this phase is in a stable high state in beat N;
[0061] If a phase is at level N=0 in beat N+1=1 in beat N, then this phase is in an increasing state in beat N;
[0062] If a phase has a level of 0 in beat N and a level of 0 in beat N+1, then this phase is in a stable low state in beat N;
[0063] N=Cnt step ;If N+1>Max_Step, N+1=1;
[0064] When the stepper motor rotates in the reverse direction,
[0065] If a phase is at level N=1 in beat and level N-1=0 in beat, then this phase is in decreasing state in beat N;
[0066] If a phase has a level of 1 in beat N and a level of 1 in beat N-1, then this phase is in a stable high state in beat N;
[0067] If a phase is at level N=0 and level N-1=1 in beat, then this phase is in increasing state in beat N;
[0068] If a phase has a level of 0 in beat N and a level of 0 in beat N-1, then this phase is in a stable low state in beat N;
[0069] N=Cnt step ;If N-1<1, then N-1=Max_Step.
[0070] The calculating the actual control level of each phase comprises:
[0071] If the phase is in increasing state, if Cnt mm <Cnt m When , the actual phase control level is 1, otherwise, the actual phase control level is 0;
[0072] If the phase is in decreasing state, if Cnt mm >Cnt m When , the actual phase control level is 1, otherwise, the actual phase control level is 0;
[0073] If the phase is in a stable high state, the actual phase control level is 1;
[0074] If the phase is in a stable low state, the actual phase control level is 0.
[0075] The present invention proposes a control method for effectively reducing the vibration noise of a stepper motor. The present invention invents a new control method, such as Figure 4 As shown, A, B, C, and D are the original 8-beat control method. A', B', C', and D' are the control methods of the present invention. For each beat change phase (if the control levels of the previous beat and the next beat of each phase are inconsistent, it is a change phase, for example, beat 1 of phase B in Table 2 is 0 level, beat 2 is 1 level, and the levels of beat 1 and beat 2 are inconsistent), the control waveform is processed by increasing or decreasing the duty cycle in a smooth manner according to a certain rule. Moreover, the changes between two adjacent change phases are connected. When the duty cycle of the previous beat change phase reaches the maximum value or the minimum value, the other change phase of the next beat begins to change, and the direction of the duty cycle change (increase or decrease) is opposite to that of the previous beat. If the previous phase is increasing, the change phase of the next beat is decreasing, such as Figure 3 The B' phase of beat 1 and the A' phase of beat 2, the B' phase of beat 1 increases slowly and regularly, and after reaching the maximum stable value, the A' phase of beat 2 begins to decrease slowly and regularly. Smoothing is performed at the jump point between each step, thereby reducing the current impact during phase switching and the inertial impact during rotation, slowly increasing or slowly decreasing, and thus effectively reducing the vibration noise of the stepper motor.
[0076] like Figure 4As shown, before the jump at point L (jumping from high to low), the decreasing smooth driving mode is first adopted (corresponding to the A' phase of the dotted frame 2). Before the jump at point H (jumping from low to high), the increasing smooth driving mode is first adopted (corresponding to the B' phase of the dotted frame 1). The decreasing and increasing modes include the trapezoidal multi-equal division mode or the S-shaped multi-equal division mode. This embodiment takes the trapezoidal driving mode of 8 equal divisions as an example. Figure 5 When the voltage jumps to the H level, the duty cycle of the voltage jump to the H level is gradually increased by 8 equal parts in the same proportion (such as Figure 5 The left part of the circuit is increased slowly to reduce the impact between each step and make the current change smoother. When the circuit jumps to the L level, the circuit first decreases in 8 equal parts in the same proportion to gradually reduce the duty cycle of the circuit jump to the L level (such as Figure 5 The right part of the image is slowly reduced to reduce the amount of shock between each step and make the change smoother.
[0077] For example, setting T step =8*8clk=64clk time, set M=8 equal parts, then each large equal part time T m =(8*8) / 8=8clk, each small equal portion T mm =1clk, set the large equal count offset step Offset = 1; set when it is forward control, when Cntstep = 1, according to Table 2, Phase1 = 1000 ABCD , Phase2=1100 ABCD ,
[0078] It can be seen that when phase A changes from 1->1, phase A is in a stable high state, and the controlled waveform is high level. When phase B changes from 0->1, phase B is in an increasing state, and the controlled waveform is Figure 6 ; When phase C changes from 0->0, phase C is in a stable low state, and the controlled waveforms are all low level; when phase D changes from 0->0, phase D is in a stable low state, and the controlled waveforms are all low level; the total control waveform is as follows Figure 4 shown.
[0079] In addition, if Figure 4 As shown in the control waveforms of A, B, C, and D, the traditional control method provides a long square wave for each beat, while the present invention provides a small square wave that increases or decreases, which means that the traditional method has greater power consumption.
[0080] The present invention can effectively reduce the vibration noise when the motor is running, make the current change smoother, reduce the current impact in the motor coil, thereby reducing the vibration noise of the rotation, and can also effectively reduce the control power consumption of the motor, thereby reducing the temperature of the motor.
[0081] The above embodiments are only used to explain the technical solutions of the present invention rather than to limit them. Those skilled in the art should understand that any modification and equivalent substitution that does not depart from the spirit and scope of the present invention should fall within the protection scope of the claims of the present invention.
Claims
1. A control method for effectively reducing the vibration noise of a stepper motor, characterized in that: include: Set the control time of each beat to T step ; Set the maximum number of beats to Max_Step, the default setting is Max_Step=8; Set the phase control level of each beat Phase1, Phase2...Phase Max_Step-1 、Phase Max_Step ; Set Cnt step is a beat counter, and each execution T step After time, in forward control, Cnt step Add 1, Cnt step >Max_Step, Cnt step =1; in reverse control, Cnt step Minus 1, Cnt step <0, Cnt step =Max_Step; Set each beat control to be evenly divided into M equal parts; Calculate the control time of each large portion as T m ; Set the large equal portion counting step Offset; Set the large portion counter Cnt m , each time T is executed m Time, Cnt m Add Offset; when Cnt m >M, Cnt m =0; Set each large portion to be divided into M small portions, and calculate the control time T for each small portion. mm ; Set the small aliquot counter Cnt mm , each time T is executed mm Time, Cnt mm Add 1; Cnt mm >M, Cnt mm =0; According to Cnt step And the phase control level of each beat Phase1, Phase2...Phase Max_Step-1 、Phase Max_Step , calculate the state of each phase; Calculate the actual control level for each phase.
2. A control method for effectively reducing the vibration noise of a stepper motor according to claim 1, characterized in that: The control time for calculating each large portion is T m ,include: T m =T step / M Among them, T m is the control time of each large portion, T step To set the control time for each beat, M is the number of equal parts into which each beat is evenly divided.
3. The control method for effectively reducing the vibration noise of a stepper motor according to claim 1, characterized in that: The control time T of each small portion is calculated mm ,include: T mm =T m / M; Among them, T mm is the control time of each small portion, T m is the control time of each large portion, and M is the number of small portions divided into each large portion.
4. The control method for effectively reducing the vibration noise of a stepper motor according to claim 1, characterized in that: According to Cnt step And the phase control level of each beat Phase1, Phase2...Phase Max_Step-1 、Phase Max_Step , calculate the state of each phase, where When the stepper motor rotates forward, If a phase is at level N=1 in beat and level N+1=0 in beat, then this phase is in decreasing state in beat N; If a phase is at level N=1 and level N+1=1 in beat, then this phase is in a stable high state in beat N; If a phase is at level N=0 in beat N+1=1 in beat N, then this phase is in an increasing state in beat N; If a phase has a level of 0 in beat N and a level of 0 in beat N+1, then this phase is in a stable low state in beat N; N = Cnt step ; If N + 1 > Max_Step, then N + 1 = 1; When the stepper motor rotates in the reverse direction, If a phase is at level N=1 in beat and level N-1=0 in beat, then this phase is in decreasing state in beat N; If a phase has a level of 1 in beat N and a level of 1 in beat N-1, then this phase is in a stable high state in beat N; If a phase is at level N=0 and level N-1=1 in beat, then this phase is in increasing state in beat N; If a phase has a level of 0 in beat N and a level of 0 in beat N-1, then this phase is in a stable low state in beat N; N=Cnt step ;If N-1<1, then N-1=Max_Step.
5. The control method for effectively reducing the vibration noise of a stepper motor according to claim 1, characterized in that: The calculating the actual control level of each phase comprises: If the phase is in increasing state, if Cnt mm <Cnt m When , the actual phase control level is 1, otherwise, the actual phase control level is 0; If the phase is in decreasing state, if Cnt mm >Cnt m When , the actual phase control level is 1, otherwise, the actual phase control level is 0; If the phase is in a stable high state, the actual phase control level is 1; If the phase is in a stable low state, the actual phase control level is 0.