Welcome! Log In Create A New Profile

Advanced

z axis problem

Posted by klakierka 
z axis problem
February 21, 2014 09:37AM
Hey,
I have problem with motors on z axis.
I am running NEMA 17 motors - [www.electronic-things.de]
on controller A4988 Stepper Motor Driver Carrier and I have ramps1.4 - [www.pololu.com]
On the axes x,y motors are running perfectly with vref set to 0,46
Problems are starting when I am plugging two of them, I increased vref to 0,94 and check other values but it didn't help.
I have read that maximum output current 2 A on motor driver.
And two run two motors at the same time i need minimum vref 0,92 V, that means 2,3 A
Is this could be a reason ?? Do you know what could cause this problem ?

Edited 1 time(s). Last edit at 02/21/2014 09:39AM by klakierka.
Re: z axis problem
February 21, 2014 10:46AM
I don't think those controllers can handle that much current even with additional cooling from a fan.. Try turning down the current setting and see if that works. If that doesn't work, try wiring the z motors in series instead of parallel. This way you can set the Pololu to around 1 A.
Re: z axis problem
February 24, 2014 09:51AM
Okey,
I change vref on z axis to 0,78 V and motor were rotating, but there were making one full step and next time quarter of step or half, but then I changed code (bold values) to have the same speed on all axes.
And motors are working, making whole step correctly, but much slower than x,y. Do you think is a code matter ? Did I skipped some lines ? It is to little voltage and I should change z motors in series ?

//// Calibration variables
// X, Y, Z, E steps per unit - Metric Prusa Mendel with Wade extruder:
#define _AXIS_STEP_PER_UNIT {80, 80, 80 ,700}
// Metric Prusa Mendel with Makergear geared stepper extruder:
//#define _AXIS_STEP_PER_UNIT {80,80,3200/1.25,1380}
// MakerGear Hybrid Prusa Mendel:
// Z axis value is for .9 stepper(if you have 1.8 steppers for Z, you need to use 2272.7272)
//#define _AXIS_STEP_PER_UNIT {104.987, 104.987, 4545.4544, 1487}

const int NUM_AXIS = 4; // The axis order in all axis related arrays is X, Y, Z, E
#define _MAX_FEEDRATE {400, 400, 400, 45} // (mm/sec)
#define _HOMING_FEEDRATE {1500,1500,1500} // (mm/min) !!
#define _AXIS_RELATIVE_MODES {false, false, false, false}

#define MAX_STEP_FREQUENCY 30000 // Max step frequency

//-----------------------------------------------------------------------
//// Acceleration settings
//-----------------------------------------------------------------------
// X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot.
#define _ACCELERATION 1000 // Axis Normal acceleration mm/s^2
#define _RETRACT_ACCELERATION 2000 // Extruder Normal acceleration mm/s^2
#define _MAX_XY_JERK 20.0
#define _MAX_Z_JERK 20.0
#define _MAX_E_JERK 5.0 // (mm/sec)
//#define _MAX_START_SPEED_UNITS_PER_SECOND {25.0,25.0,0.2,10.0}
#define _MAX_ACCELERATION_UNITS_PER_SQ_SECOND {5000,5000,5000,5000}
Re: z axis problem
February 24, 2014 12:12PM
And one more question, maybe stupid but... if I changed motors form parallel to series .
Current will be const for all motors I = I1=I2...=Iz, I can set it by pot on controller.
But in that case voltage shouldn't be doubled ?
And if yes how to change it ?
Re: z axis problem
February 24, 2014 09:03PM
Quote

#define _AXIS_STEP_PER_UNIT {80, 80, 80 ,700}

Set the z axis steps per mm to the calculated value for your threaded rod. It makes no sense to even play around with this number. You effectively just lowered your feedrate by lowering this number.

Quote

#define _MAX_FEEDRATE {400, 400, 400, 45} // (mm/sec)

Your max feedrate for z is way too high! Set it for 4 and see if that fixes it.You can try going to higher values to find out the point at which it starts skipping steps again and back it down to where it doesn't skip anymore. It's better to be conservative and leave yourself some room. If you're too aggressive with this, you're bound to ruin prints.

You don't need to change your wiring just yet.

Edited 1 time(s). Last edit at 02/24/2014 09:04PM by brnrd.
Re: z axis problem
February 25, 2014 06:50AM
Thanks brnrd for your advises

I came back to all default setting and gradually I was checking feedrate

#define _MAX_FEEDRATE {400, 400, 400, 45} // (mm/sec)

from 2 up to 400. But that didn't help, motors were moving irregularly and were making high tone beeping sound in all of this values.
Then I came back to default settings once again

const int NUM_AXIS = 4; // The axis order in all axis related arrays is X, Y, Z, E
#define _MAX_FEEDRATE {400, 400, 2, 45} // (mm/sec)
#define _HOMING_FEEDRATE {1500,1500,120} // (mm/min) !!
#define _AXIS_RELATIVE_MODES {false, false, false, false}
//-----------------------------------------------------------------------
//// Acceleration settings
//-----------------------------------------------------------------------
// X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot.
#define _ACCELERATION 1000 // Axis Normal acceleration mm/s^2
#define _RETRACT_ACCELERATION 2000 // Extruder Normal acceleration mm/s^2
#define _MAX_XY_JERK 20.0
#define _MAX_Z_JERK 0.4
#define _MAX_E_JERK 5.0 // (mm/sec)
//#define _MAX_START_SPEED_UNITS_PER_SECOND {25.0,25.0,0.2,10.0}
#define _MAX_ACCELERATION_UNITS_PER_SQ_SECOND {5000,5000,50,5000}


and I changed this values.

#define _AXIS_STEP_PER_UNIT {80, 80, 3200/1.75 ,700}

and motors are working correctly only till in range of 40 to 500 above this value problems is coming back
#define _AXIS_STEP_PER_UNIT {80, 80, 500 ,700}

I will post video maybe that will describe better problem

Edited 1 time(s). Last edit at 02/25/2014 06:51AM by klakierka.
Re: z axis problem
February 25, 2014 07:40AM
What are your Z axis screws? You need to set the Z steps to a calculated number, not just move it around until it starts moving...
Re: z axis problem
February 25, 2014 07:56AM
My screws are 1.75 so i shoud set it to 3200/1.72 but with this values motors are rotating in with diffrent numbers of rotations, steps and they are not synhronised, that is when i am moving them 1 unit, when I want to move them 10 units, they are not moving at all...

Edited 1 time(s). Last edit at 02/25/2014 12:17PM by klakierka.
Re: z axis problem
February 25, 2014 08:51AM
Quote
klakierka
My screws are 1.75 so i shoud set it to 3200/1.72 but with this values motors are rotating in with diffrent numbers of rotations, steps and they are not synhronised, that is when i am moving them 1 unit, when I want to move them 10 units, they are not moving at all...

Your Z steps will be 1828.57 with 16x microstepping, there is no need for the 3200/1.75. Your steps will NEVER be anything other than that unless you change microstepping or thread pitch...EVER. You need to set it at 1828.57 and leave it alone, your problems are elsewhere. Turn your Z accel way down, your screws are very heavy. Also your feed needs to be probably less than 2, I can not run much higher than 4 with M5 screws using a DRV8825 driver and your screws are 5.76 (calculated from circular area) times bigger than mine.

I am guessing you are using M12 x 1.75 for Z...not sure why because you will have other issues related to that because your screws are going to put force on the bed and you will wind up with Z banding.
Re: z axis problem
February 25, 2014 09:45AM
Thanks tjb1 for the clear answer. I am aware that that values other than 3200//1.75 = 1828.57 are not correct.

The thing is that I really don't where the problem is. I know for sure that motors, wiring and controllers are ok, but with the this settings of sprinter code. motors on z axes are not working properly ( lack of synchronization, and they are moving with the random number of steps ). Motors on x and y they working perfectly. I have not clue what is wrong...

I am checking motors without attached screws, so at least at this stage size of them shouldn't mater and that is true they are big(rod is 12 mm diameter 1.75 mm), because whole structure is quite big (below link to the pdf presentation, please feel free to criticize - we need feedback from professionals).

I would be really grateful if you help me to solved this problem.

(http://nodehabitat.com/home/wp-content/uploads/2014/01/3DIA-PRINTER_-WIP.pdf)

Edited 3 time(s). Last edit at 02/25/2014 10:23AM by klakierka.
Re: z axis problem
February 25, 2014 11:05AM
Quote
klakierka
Thanks tjb1 for the clear answer. I am aware that that values other than 3200//1.75 = 1828.57 are not correct.

The thing is that I really don't where the problem is. I know for sure that motors, wiring and controllers are ok, but with the this settings of sprinter code. motors on z axes are not working properly ( lack of synchronization, and they are moving with the random number of steps ). Motors on x and y they working perfectly. I have not clue what is wrong...

I am checking motors without attached screws, so at least at this stage size of them shouldn't mater and that is true they are big(rod is 12 mm diameter 1.75 mm), because whole structure is quite big (below link to the pdf presentation, please feel free to criticize - we need feedback from professionals).

I would be really grateful if you help me to solved this problem.

(http://nodehabitat.com/home/wp-content/uploads/2014/01/3DIA-PRINTER_-WIP.pdf)

Your screws should not be bigger than the smooth rods, if your threaded rods are not perfectly straight you will be seeing banding on your prints. Did you read where I said you need to turn speed down...possibly way below 2...and turn acceleration down? Have you tried turning the threaded rods without the motors attached? Is your axis on the Z rods level so that the Z screws are parallel and not binding?
Re: z axis problem
February 25, 2014 11:54AM
hell ye, acceleration of z, now I got it ...
and motors are working correctly !
Thank you very much for the patience.
Where I should send a bottle of whisky for you ?
Sorry, only registered users may post in this forum.

Click here to login