DC Motor is ringing

Discussion in 'General Electronics Chat' started by Padderick, Nov 21, 2012.

  1. Padderick

    Thread Starter New Member

    Jan 7, 2012
    11
    0
    Hi all together,

    I have programmed an ATMEGA 32 to control a DC motor by a buck converter.
    I have calculated the parameters and simulated them, everything has been fine.
    After programming I started the motor and it controls the speed, but the unregularly. First it accelerates the motor, then the pulse width is very low and when the speed has fallen below the reference the signal gets very bride pulse width and the motor is ringing!

    Hope somebody can help me,

    - I have attached the code, if somebody thinks it could be a hardware problem just send me an email and I can send you my EAGLE circuit.

    Thanks,

    Padderick
     
  2. tshuck

    Well-Known Member

    Oct 18, 2012
    3,531
    675
    You are driving your motor in the audible spectrum, try driving it at 20kHz or greater....
     
  3. Padderick

    Thread Starter New Member

    Jan 7, 2012
    11
    0
    But when I drive it with a normal PWM signal without controlling there is no ringing and the motor is quiet!!! When I control it also the DC link voltage goes up and down...
     
  4. tshuck

    Well-Known Member

    Oct 18, 2012
    3,531
    675
    What is a normal PWM signal and how is the one you are trying to use different?:confused:
     
  5. Padderick

    Thread Starter New Member

    Jan 7, 2012
    11
    0
    Normal PWM is when I drive the buck converter with e.g. f=15 kHz and a duty cycle of D=0.5. when I control the Mosfet by my speed control, the duty cycle changes due to the control signal calculated by the controller.

    P.S. : I have saved the problem with the ringing by reducing the proportional gain of the speed controller.

    Padderick
     
  6. Austin Clark

    Member

    Dec 28, 2011
    409
    44
    Ever heard of PID control?
    It would be perfect for this application.
    :)
     
  7. tshuck

    Well-Known Member

    Oct 18, 2012
    3,531
    675
    suggests the OP is using a PID controller, or, at least a proportional controller...

    OP: it sounds like your PID controller needs to be tuned...
     
  8. crutschow

    Expert

    Mar 14, 2008
    13,027
    3,236
    It would appear you may not have proper (on no) loop compensation. You need a PID controller as noted by Austin and tshuck. Without that, due to the inertial lag of the motor, the loop will constantly overcorrect and the speed will tend to go rapidly up and down (oscillate).
     
Loading...