529,953 active members*
2,440 visitors online*
Register for free
Login
IndustryArena Forum > CNC Electronics > Stepper Motors / Drives > Stepper motor only rotating one direction (RAMPS 1.4 Board)
Results 1 to 9 of 9
  1. #1
    Registered
    Join Date
    Dec 2015
    Posts
    4

    Post Stepper motor only rotating one direction (RAMPS 1.4 Board)

    The problem:

    I have successfully connected a Nema 23 stepper motor to a Ramps 1.4 shield (which interfaces with the computer through a 3D printing program called Repetier-Host), however it only turns in one direction. I have gotten it to spin in the opposite direction by reversing the wiring, but it only spins in one direction. Does anyone have some suggestions for troubleshooting this issue? I am an architecture student, so I do not have too much experience with circuitry, but I understand basic concepts. I understand that my machine is a 3D printer, but I am using stepper motors and microstep drives used much more commonly in CNC applications, so I figured it would be more appropriate to post in this forum than a 3D printer forum where the majority of members most likely use the small Pololu drivers and Nema 17 motors.

    Specs of the machine:


    Some dimensions (in mm)

    http://www.cnczone.com/forums/attach...d=303330&stc=1

    Interface: RAMPS 1.4 Shield in conjunction with an Arduino Mega 2560 (this acts as a breakout board of sorts)
    Stepper Motors: Two Nema 23 Motors for the Z-axis (wired opposite of one another)
    Two Nema 17 Motors for the X-axis (wired opposite of one another)
    One Nema 17 Motor for the Y-axis
    Drivers: Leadshine DM442 for the Z- and X-axes
    Pololu A4988 for the Y-axis
    PSU: +12V outputs from an ATX power supply (The recommended voltage for these Nema 23 stepper motors is 24-48V and the Vdc for the stepper motor drivers is 20-40V, so I have a 24V 15A power supply coming in the mail)

    Here is a diagram showing how I am using the DM442 microstep drives in conjunction with the Ramps 1.4 board

    Explanation:

    This machine is a 3D printer, so I am using an Arduino Mega 2560 and a Ramps 1.4 shield, but instead of the normal Nema 17 motors and Pololu A4988 stepper drivers, I am using Nema 23 motors to handle the increased load and DM442 microstep drives to handle the high current and individually power each motor (normally, Nema 17 motors are connected directly to the shield which provides both data and power).

    Essentially, I've connected the PUL - and DIR - (in the case of the driver, STEP = PUL) to the ground on the RAMPS 1.4 Shield, the DIR + to the DIR on the RAMPS 1.4 and the PUL+ to the STEP on the shield.

    I understand that this is a forum focused on other types of CNC machines rather than 3D Printers, so this may be a long shot, but I am sure that almost all of the members here are familiar with similar stepper drivers and stepper motors. I appreciate any feedback received.

    Regards,

    Christian

  2. #2
    Registered
    Join Date
    Mar 2007
    Posts
    2083

    Re: Stepper motor only rotating one direction (RAMPS 1.4 Board)

    the wiring diagram looks OK
    it could be simply the fact your supply to the DM442 is too low that's stopping it from responding to the direction signal

    I'd wait until you have the new 24V supply

    john

    ps
    do you have a link to the schematic for the RAMPS 1.4 Shield ?

  3. #3
    Registered
    Join Date
    May 2005
    Posts
    1397

    Re: Stepper motor only rotating one direction (RAMPS 1.4 Board)

    A picture of your actual setup might help...
    James hosts the single best wiki page about steppers for CNC hobbyists on the net:
    http://www.piclist.com/techref/io/steppers.htm Disagree? Tell him what's missing! ,o)

  4. #4
    Registered
    Join Date
    Mar 2006
    Posts
    202

    Re: Stepper motor only rotating one direction (RAMPS 1.4 Board)

    Is the driver enable line connected to anything? Maybe it floating is a problem.

  5. #5
    Registered
    Join Date
    Dec 2015
    Posts
    4

    Re: Stepper motor only rotating one direction (RAMPS 1.4 Board)

    Quote Originally Posted by john-100 View Post
    the wiring diagram looks OK
    it could be simply the fact your supply to the DM442 is too low that's stopping it from responding to the direction signal

    I'd wait until you have the new 24V supply

    john

    ps
    do you have a link to the schematic for the RAMPS 1.4 Shield ?
    Here is a link to the schematic (page 2 of the PDF): RAMPS 1.4

  6. #6
    Registered
    Join Date
    Dec 2015
    Posts
    4

    Re: Stepper motor only rotating one direction (RAMPS 1.4 Board)

    Quote Originally Posted by vegipete View Post
    Is the driver enable line connected to anything? Maybe it floating is a problem.
    The enable line is not connected to anything, so I may try wiring ENA+ on the external driver to the matching EN pin on the ramps 1.4 shield.

    Quote Originally Posted by James Newton View Post
    A picture of your actual setup might help...
    Here is the clearest image I have right now (it should match the wiring diagram I made): http://www.cnczone.com/forums/attach...d=303578&stc=1
    Attached Thumbnails Attached Thumbnails IMG_4574.jpg  

  7. #7
    Registered
    Join Date
    Dec 2012
    Posts
    138

    Re: Stepper motor only rotating one direction (RAMPS 1.4 Board)

    First try if the driver is working correct.
    Leave the Pull + connected to the ramps as it is.
    disconnect the DIR + from the DM442 , power up and verify the direction of the stepper.
    power down and connect the DIR + to the +5V from the RAMPS board ( you can use the +5V pin from the A4988 connection.
    Power up and verify that the stepper is working in the other direction.
    If this works as espected, connect a voltmeter to the DIR pin of the RAMPS board and verify if it switches from low ( about 0 volts ) to high ( about 5 volts ) when the program changes direction for the motor.
    If you don't see the output voltage changing, the problem is in the Arduino or the RAMPS
    If that looks fine, then connect all again and leave the voltmeter also connected to the DIR pin of the RAMPS board and verify the voltage when changing direction.
    This is a normal Arduino output which should be able to drive this without problems.

    A last test could be to use a A4988 on this axis and connect a NEMA17 motor for testing the Arduino and RAMPS to be sure they are ok.

  8. #8
    Registered
    Join Date
    Dec 2015
    Posts
    4

    Re: Stepper motor only rotating one direction (RAMPS 1.4 Board)

    After many days of troubleshooting, I have finally fixed my problem. The issue seems to have been related to the firmware rather than the hardware.

    I seem to have incorrectly configured the endstops in the arduino sketch. The configuration section of the sketch was as follows:

    #define ENDSTOP_PULLUP_X_MIN true
    #define ENDSTOP_X_MIN_INVERTING true
    #define MIN_HARDWARE_ENDSTOP_X true
    #define ENDSTOP_PULLUP_Y_MIN true
    #define ENDSTOP_Y_MIN_INVERTING true
    #define MIN_HARDWARE_ENDSTOP_Y true
    #define ENDSTOP_PULLUP_Z_MIN true
    #define ENDSTOP_Z_MIN_INVERTING true
    #define MIN_HARDWARE_ENDSTOP_Z true
    #define ENDSTOP_PULLUP_X_MAX true
    #define ENDSTOP_X_MAX_INVERTING false
    #define MAX_HARDWARE_ENDSTOP_X true
    #define ENDSTOP_PULLUP_Y_MAX true
    #define ENDSTOP_Y_MAX_INVERTING false
    #define MAX_HARDWARE_ENDSTOP_Y true
    #define ENDSTOP_PULLUP_Z_MAX true
    #define ENDSTOP_Z_MAX_INVERTING false
    #define MAX_HARDWARE_ENDSTOP_Z true
    #define max_software_endstop_r true

    #define min_software_endstop_x true
    #define min_software_endstop_y true
    #define min_software_endstop_z true
    #define max_software_endstop_x true
    #define max_software_endstop_y true
    #define max_software_endstop_z true
    For some reason, all of the endstops were set to "true", but my machine only has 1 endstop per axis. When I ran the code M119 in Repetier, it returned true values for all of the min endstops, even though there were none connected. My theory is that since the program registered the min endstops as closed and the max endstops as open, I was able to move in the positive Z direction, but not in the negative Z direction. I then disabled all of the min hardware and software endstops within the configuration file and I was able to successfully jog the motor in both directions.

    Thanks again to everyone for the feedback and hopefully my experience helps someone in the future.

  9. #9
    Junior Member
    Join Date
    Jan 2018
    Posts
    3

    Re: Stepper motor only rotating one direction (RAMPS 1.4 Board)

    Quote Originally Posted by L4_Topher View Post
    After many days of troubleshooting, I have finally fixed my problem. ....
    Thanks for sharing the solution you found, you just saved me from debugging headache! I fact I had reached the conclusion it had to be a firmware issue as Z axis was working and swapping motors and drivers between the 3 axis had no effect.

    Marco

Similar Threads

  1. Stepper Motor Only Jogs One Direction
    By jeff johnson in forum Stepper Motors / Drives
    Replies: 5
    Last Post: 06-11-2019, 03:54 PM
  2. Arduino Mega + RAMPS 1.4 + Stepper motor/driver
    By parturi in forum Stepper Motors / Drives
    Replies: 6
    Last Post: 04-06-2015, 06:13 PM
  3. Stepper motor direction.
    By regpugh in forum Stepper Motors / Drives
    Replies: 3
    Last Post: 04-06-2015, 01:19 PM
  4. Stepper motor only runs in one direction
    By nevillewilliams in forum Stepper Motors / Drives
    Replies: 3
    Last Post: 03-14-2015, 06:04 AM
  5. Replies: 1
    Last Post: 04-23-2014, 10:45 PM

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •