Welcome! Log In Create A New Profile

Advanced

Z-axis motor speed

Posted by Colacat 
Z-axis motor speed
September 24, 2015 06:51AM
Heya!


I've just finished building my first Reprap Prusa i3 by Sunhokey, and Im having trouble both calibrating and making the endstops work.

For some reason, the Z-axis goes 10 times the speed of the Y and X- axis', and I havent been able to find a setting to get it turned down. As in, when Im manually moving X and Y for 10mm, the Z-axis decides to go a 100mm. Is it normal for the Z-axis to be faster than the other two?

As for the endstops, how do you calibrate them to stop the machine from advancing further down with the Z-axis? I thought I had it all set up but the Z is still a little confused of the commands and tries to go over the top part of the machine. It also doesent obey the endstop at all, meaning it stops descending before hitting the endstop.

Heres my configuration.h file for reference: [pastebin.com]

Any help would be greatly appreciated! Im very new what comes to 3d printing, so programming this sort of thing is not in my field of knowledge...

Edited 1 time(s). Last edit at 09/24/2015 07:07AM by Colacat.
Re: Z-axis motor speed
September 24, 2015 06:46PM
Please check the microstepping on your controller board (could be 3 jumpers or dip switches near the stepstick or chip, near the z motor connector) and/or steps per mm. Most use 16x microstepping, all jumpers set, or dip switched set to enable. Though the z rod usually has 0.8 (normal m5 threaded rod) to 4mm or higher (multistart lead screw), it doesn't really need microstepping. It's a technique to increase the number of steps a steppermotor can use by pulsing current through the coils keeping it between actual steps. At 200 steps per turn, 1mm is 1/0.8 = 1.25 x 200 = 250 steps. With 16 microstepping you'll need 1.25 x 200 x 16 = 4000 steps per mm.
My guess is that firmware thinks you're using 16x microstepping while the hardware is configured without it. When moving 10mm, it will send 4000x 10 pulses to the stepstick, with no MS it will move 40000 / 250 = 160mm, so it easily hits the top in no time at all. At 250 steps per mm the max. Accuracy is 1/250 = 0.004mm, this will be more than enough if you don't use auto bed leveling. With ABL I'd recommend 16x microstepping as the motion of the z will be smoother, otherwise it may produce some interference patterns.
Re: Z-axis motor speed
September 25, 2015 06:55AM
Thank you so much for your help!

However, is there any way you could show me what points in my Configuration.h file need to be changed, and what they need to be changed to? Im not a native english speaker, so alot of your post went straight over my head confused smiley I believe the specs you described about the Z-rod are correct, but the part about different steps baffles me a little.

Once again, Im terribly sorry about my dumb, dumb brains :B This all is just very new to me, and Im trying to make out the most of it... eye rolling smiley
Re: Z-axis motor speed
September 25, 2015 08:22AM
No problem, English isn't my native language either smiling smiley Any language with jargon in it is complete Greek to anyone, unless you're from Greece of course winking smiley

It's a lot of ground to cover just in a forum post. Search with google, look at this sites wiki pages, lookup the type of controller board you have (RAMPS 1.4 with an arduino mega 1280/2560) and what chips/connectors are on it. How stepper motors work and micro stepping can be easily found on google and youtube.

Familiarize yourself with the configuration.h file, read all the comments that's inside, lookup the terms and #defines on google that you don't understand. It may take a few days reading up on the subject but I can promise you it'll be worth it smiling smiley

Follow triffid hunters calibration guide and the links provided there if you haven't already:
Triffid hunter's calibration guide

You can find steps per mm, or unit as it is called on line 274. In the programming language C an array is defined using curly braces. The numbers represent x,y,z,e(xtruder), in that order. So 4000 is the Z steps. Set it to 250 and upload the firmware to your board and see what happens.
#define DEFAULT_AXIS_STEPS_PER_UNIT {80, 80, 4000, 600} // default steps per unit for ultimaker

If you still have some specific questions let us know smiling smiley
Sorry, only registered users may post in this forum.

Click here to login