Why the stepper motor is jerky when pushing the filament into the hotend?

Hello,

I am using a high-torque stepper motor (Nema 17 84 oz-in) to feed the filament now. And the hotend is the clone one of the V6 J head. However it is always jerky every time. Is it because that the output torque of the motor is not enough? Is there anyone who can help me to figure out a better code? The code I am using is as follows:

// Define the pin outs
int DIR = 9;
int STEP = 10;
int MS1 = 11;
int MS2 = 12;
void setup() {
pinMode(DIR, OUTPUT);
pinMode(STEP, OUTPUT);
pinMode(MS1,OUTPUT);
pinMode(MS2,OUTPUT);
digitalWrite(DIR, LOW);
digitalWrite(STEP, LOW);
digitalWrite(MS1,LOW);
digitalWrite(MS2,LOW);
}

/////////////////////////////////////////////////////////////////////////////////////
// Turn the motor forward continually
void loop() {
digitalWrite(STEP, HIGH);
//delayMicroseconds(7500);
delay(10);
digitalWrite(STEP, LOW);
//delayMicroseconds(75000);
delay(10);
}

50000 steps per second? For a 200 step/rev motor thats 15000 RPM.
How many steps / rev is your motor, what RPM do you need, which motor driver, micro-step setting?
What is your motor's current requirements can your driver supply that continuously? Your power supply?
Please post links to motor and driver.

The Step Angle is 1.8 deg. So it should be 200 steps/rev.

Sounds like you're force feeding it faster than it can digest and jamming, more info?

edgemoron:
50000 steps per second?

Where did that come from?

...R

edgemoron:
Sounds like you're force feeding it faster than it can digest and jamming, more info?

I think it's slow enough for a 3D printer. I just use the Easydriver to drive the motor.

What is your supply voltage? What driver are you using? Have you set the current limit on the driver?

MorganS:
What is your supply voltage? What driver are you using? Have you set the current limit on the driver?

Thank you, I just set it's on CV with 12V. The driver is Easydriver (Sparkfun). I did not set the current limit. But I remember the current is around 0.2A?

"Remember the current" You measured it? It's difficult to measure accurately.

I would expect to set something like 1-2 amps current for the extruder. You haven't given enough information to find your exact motor, so we don't know what its maximum is.

Here is the code.

FULL_step.ino (872 Bytes)

MorganS:
"Remember the current" You measured it? It's difficult to measure accurately.

I would expect to set something like 1-2 amps current for the extruder. You haven't given enough information to find your exact motor, so we don't know what its maximum is.

Electrical Specification:

  • Manufacturer Part Number: 17HS19-2004S1
  • Motor Type: Bipolar Stepper
  • Step Angle: 1.8 deg.
  • Holding Torque: 59Ncm(83.6oz.in)
  • Rated Current/phase: 2.0A
  • Phase Resistance: 1.4ohms
  • Inductance: 3.0mH+/-20%(1KHz)

The instant current shows up on the screen of the power supply. Did you mean I should set it closer to the rated current? Thank you so much!

I was seeing delayMicroseconds(10); :blush:

Yes, crank up the current. Keep it under 2A. I think the max for the Easydriver is 0.7A so you won't be able to get full performance out of that motor.

You will notice the motor gets hot. If it's too hot to touch for more than a second then you might consider reducing the current. But the motor will work fine up until the point that it starts burning things nearby.

I'll try. Thank you so much!

2A motor needs 2A driver to get full torque, at 0.7A you are on about 35% rated torque, no wonder it slips.

2A is a tall order for a single chip driver - DRV8825's can do about 1.5A or so, perhaps more with
aggressive cooling (heatsink and fan).

Next time get a higher impedance motor for the extruder feed, it doesn't need to go fast, but you
do need lots of torque. Something like <1A >5 ohms will be easy to drive at max torque without the
risk of thermal cutout.

For high speed lower impedance is better of course, a lot of NEMA17's are 1.7 ohm, 1.7A these days, basically
at the upper limit of drivers like the DRV8825, but pretty nippy at 24V supply.

MarkT:
2A motor needs 2A driver to get full torque, at 0.7A you are on about 35% rated torque, no wonder it slips.

2A is a tall order for a single chip driver - DRV8825's can do about 1.5A or so, perhaps more with
aggressive cooling (heatsink and fan).

Next time get a higher impedance motor for the extruder feed, it doesn't need to go fast, but you
do need lots of torque. Something like <1A >5 ohms will be easy to drive at max torque without the
risk of thermal cutout.

For high speed lower impedance is better of course, a lot of NEMA17's are 1.7 ohm, 1.7A these days, basically
at the upper limit of drivers like the DRV8825, but pretty nippy at 24V supply.

Thank you so much! Please forgive my dumb questions. It is kind of confusing when I power the Easydriver, the current is just around 0.2A and never gets to 0.7A. How to make it works. Sorry I am a very beginner.

You seem to have two Threads about this project - please don't do.

...R

Boyce:
Thank you so much! Please forgive my dumb questions. It is kind of confusing when I power the Easydriver, the current is just around 0.2A and never gets to 0.7A. How to make it works. Sorry I am a very beginner.

The supply current to the driver is not relevant, we mean the current to the motor windings which is
very different (usually a lot higher with a stationary motor). Chopper-drivers like this are effectively
switch-mode power converters.