Welcome! Log In Create A New Profile

Advanced

dual z steppers out of sync

Posted by 1d1 
1d1
dual z steppers out of sync
March 07, 2016 07:40PM
Hey guys, I'm hoping that perhaps one of you gurus will be able to help out with a RAMPS 1.4 problem. My old ROBO R1 beta has been chugging away for the past couple of years but the board finally faded away. I bought a new Arduino/RAMPS and have gotten most everything working again with 2 exceptions: 1) When I hit "home all" my bed only moves a bit less than 10mm before stopping. When I hit an individual home command, it works properly. When I move it separate from the home command, it works perfectly. My drivers are working and properly adjusted (yes, I've tried higher voltages without any noticeable differences). Jumpers are consistent with all the others. Thoughts? 2) Perhaps a worse problem is this: The typical z-steppers on this setup are run through 1 pololu driver for two motors. No matter what I tried, this didn't work with the new board. I read of others having a similar problem and utilizing the unused 2nd extruder spot for running the two z-steppers independently. Marlin has a provision for this in "adv.h" I uncommented the proper line and lo, both motors work great except one is faster than the other. After about 10 mm of travel, the z starts becoming tilted until one side is no longer engaging the nut on the lead screw. My theory is that the 2nd extruder driver is running at the extruder steps per mm which is considerably different from the z steps per mm. Having tried all sorts of different combinations, pololu voltages, etc. I can't think of anything else but am open to ideas. If it is as I suspect, is there a way to match steps per mm in the movement definitions of the Arduino sketch? I appreciate your efforts if this is something you might have some ideas about.

Edited 2 time(s). Last edit at 03/07/2016 07:43PM by 1d1.
Re: dual z steppers out of sync
March 07, 2016 10:43PM
It might be a good time to eliminate the 2nd z motor and add a belt and pulley system. This doesn't solve the immediate problem but is something that should be done. My leveling issues are gone since the change. Something to think about.
Re: dual z steppers out of sync
March 08, 2016 05:41AM
I would guess the homing problem has something to do with endstops.

Are the two z motors identical? They should be. If one is 200 steps/rev and the other is 400 steps/rev the first one will turn faster than the other. Did you reset the steps/mm for the Z motor plugged into the extruder port to match the steps/mm for the z axis motor?

Even if you have two motors working properly, there's always the possibility of one missing steps for various reasons. The best way to guarantee that the screws remain synchronized is to use a single motor to drive the screw with a belt.


Ultra MegaMax Dominator 3D printer: [drmrehorst.blogspot.com]
1d1
Re: dual z steppers out of sync
March 08, 2016 08:11AM
Thanks for the thoughts. I will check the end stop on the x again. Though since it works when I home the x alone I think it is probably OK. It is only when I try to home all three axis that it doesn't work.
The bigger problem remains the z steppers. The former setup worked well for years so before I try out a belt system, I'd like to get this one functioning. I'm not a programmer at any level, so: to get the two motors using equal steps per mm, would I need to define the 2nd motor (E1) in config.h and then add it to the xyze string (making it xyzee1), and then add my steps per mm for the motor onto the existing definition? I'm, uh, fuzzy on doing that properly....
Re: dual z steppers out of sync
March 08, 2016 12:16PM
Marlin assumes both step/mm are the same for dual steppers.
In Configuration_adv.h uncomment:
#define Z_DUAL_STEPPER_DRIVERS // was commented out

You need the following in Pins.h to change define for E1 (second extruder)
Your pin numbers will be different with ramps
#define Z2_STEP_PIN 49 //same pin number of E1_Step
#define Z2_DIR_PIN 47 //same pin number of E1_Dir
#define Z2_ENABLE_PIN 48 //same pin number of E1_Enable

In mine I have this to not define E1 but may not be needed.
// code added for dual Z steppers
#ifdef Z_DUAL_STEPPER_DRIVERS // add code
#define Z2_STEP_PIN 49 //same pin number of E1_Step
#define Z2_DIR_PIN 47 //same pin number of E1_Dir
#define Z2_ENABLE_PIN 48 //same pin number of E1_Enable
#else
#define E1_STEP_PIN 49
#define E1_DIR_PIN 47
#define E1_ENABLE_PIN 48
#endif

Also check that jumper pins under drivers are both the same as they set the steps per revolution.

George
1d1
Re: dual z steppers out of sync
March 08, 2016 12:57PM
@George4657; That appears to be exactly the information I need. Thank you. One other little thing: how do I get to "pins.h"? I know it is in the title bars but don't know how to get past the point of "sdcard2.h". Also, in config.h under movement settings there is code to define the number of axes, steps, etc. Do these need to be changed as well?
Dean
Re: dual z steppers out of sync
March 08, 2016 02:27PM
I have never tried it but it seems that stepper motors in series are working a lot better then parallel
I went to 2 drivers on Repetier and it seems to work very well even with Z lift. a lot faster without missed steps then parallel.
Very simple to setup in Repetier

Edited 1 time(s). Last edit at 03/08/2016 02:28PM by amigob.
Sorry, only registered users may post in this forum.

Click here to login