I need to drive a stepper motor powered by a low voltage (12V) source, connected by a thin and long cable (about 15m of 2x0.14mm^2). The voltage drops by about 2 volts, which is acceptable.

Now the motor operation gets extremely noisy.

The driver used is an Allegro A4988 in this case, which automatically limits the motor current. I think this may be the reason for the problem, as the high resistance power source forces the control to constantly change reacting on voltage variations introduced by the whole circuit powered. The constantly adapting control results in wildly meandering frequency and noise sounds. I just wonder why the control frequencies are so much louder than on a stable power supply, where the same meandering occurs, but much more silent.

I tried different capacitors up to 1000u in total, but it seems I would need tons of them to fully stabilise the input.

What could be the exact reason of the noise, and what to do about it?

  • \$\begingroup\$ That is almost certainly a chopping current regulator, which is normally switching the motors off an on as needed to maintain the programmed current through their inductive windings. It's probably quite "confused" by the source supply impedance (especially the inductive part), but even aside from that, changing the duty cycle of a chopper drive can make it more audible. \$\endgroup\$ – Chris Stratton Aug 28 '13 at 13:44
  • \$\begingroup\$ Do you have the option of moving the 4988 to where the motor is? Placing a inductive load driver as close as possible to the load is good practice in any case, and may sort out the issue. \$\endgroup\$ – Anindo Ghosh Aug 28 '13 at 14:55
  • \$\begingroup\$ The driver already is at the motor. It is the power source that is far away. \$\endgroup\$ – dronus Aug 28 '13 at 16:03
  • \$\begingroup\$ I tried to raise the supply voltage to 24V and adding a bucket dc-dc-converter to the driver. Now less power is lost, and there is a new melody on the motor :-) but still more noise than low resistance stabilized power. \$\endgroup\$ – dronus Aug 28 '13 at 16:08
  • \$\begingroup\$ @dronus Could you try an experiment? Pull ROSC to ground as suggested in the datasheet for low current microstepping. \$\endgroup\$ – Anindo Ghosh Aug 29 '13 at 5:44

As the Allegro A4988 uses PWM control to limit the current, anything affecting the effective current provokes regulation by changing PWM parameters. The PWM carrier modulates with the stepping pattern too. This gives a complex noise behavior, which may be audible under certain conditions.

As the current reacts to even small disturbances like input voltage, motor temperature, recieved electromagnetic noise and more, it may change between different sounds, sometimes a dominant tone, sometimes white noise, and maybe even radio broadcasts.

While for larger motors the actual driving currents expose audible tones, on smaller motors the noisy effects take over.

There is nothing much to do about, experimenting suggests that some values of input voltage (smaller ones that raise the on times in PWM control I guess) gives quieter operation, so it's all about try and error. Or chose another control IC or method.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.