Stepper motor failing. Electrical interference

cncelectromagnetisminterferencestepper motor

Update: This question is already so long, I'm hesitant to add to it but it occurs to me to ask if electrical interference between the stepper motor wires could cause this sort of behavior (motor oscillating, freezing, turning wrong direction for a moment)? The wires, standard ribbon cable, snake through the plotter "H" frame in cable carriers and are not shielded in any way. The failure is intermittent and only of the "far" (from the power source) motor) is failing.

I don't have the mad electrical engineering skills to accurately diagnose a subtle interference problem. Is there some brute force shielding "band-aid" I can try?

Background: I've built a 6' x 6' 'H' style plotter as a drawing machine (video of test run). It has 2 stepper motors controlling the Y axis and 1 stepper for the X axis (the "bar" in the "H"), layout below. The Y axis motors branch from the Y axis stepper driver and the wiring on the "far" motor is reversed so that the motors move the carriage in the same direction. There is also a smaller stepper for the Z axis, which is powered but not used yet.

I am using matched stepper motors for the X and Y axes (specs below). They are rated at 5v 1A. I am controlling this whole thing using an Arduino and a grbl shield. The grbl shield uses TI DRV8818 stepper drivers which are rated at 2.5A. I was powering the motors first with a 24v 3A max bench power supply and today tried a 12v 20A power supply. I have a small fan to cool the board.

Problem: The "far" (from the power source) Y axis stepper is intermittently failing. When the problem occurs it stutters (as though it were wired incorrectly) or doesn't turn at all.

I realize that it is hard to diagnose a problem like this from what I have provided but maybe there is something I can test? Here is what I have done so far:

  • Switched the Y axis motors to check if there is actual motor failure.
    Again only the "far" motor failed, so the motors seem ok.
  • Removed the load (removed the belts) so the motors could run free.
    Similar failure symptoms on the "far" motor.
  • The stepper drivers are "chopper" type (variable current) and the
    grbl shield has current adjustment pots for each axis so I've tried
    dialing the current up and down.
  • I've tried various feed rates (affecting the speed at which the motors
    turn) as well as testing other settings (acceleration, etc).

What I don't get and am really stumped by is why only one of the Y axis motors is failing? The "near" motor works fine. If my power supply was inadequate or the stepper drivers were in thermal shutdown, both motors should fail.

Long-winded question, I realize, but I have tried to provide as much detail as possible. I don't know what else I can try to diagnose the problem.

enter image description here
enter image description here

Best Answer

Interference is unlikely to disrupt a signal powerful enough to drive a stepper, but the resistance of normal ribbon cable is a likely problem. On the other hand, interference from the motor cable could disrupt other circuitry nearby, so some shielding might be called for.

Two experiments:
(1) run both steppers off short cables; they will probably work fine. (If not, give the "far" one its own driver amplifier)

(2) Run thick wire (cross section at least 1mm^2) to the far stepper motor to reduce the resistance in series with the motor. There's not a lot you can do about the extra inductance of the longer cable, but at low speed it's not likely to be such an important factor. This should give reliable operation up to a certain speed; but you may have to reduce the rate on this axis a little compared with the other axes.

Related Topic