584,841 active members*
4,608 visitors online*
Register for free
Login
IndustryArena Forum > CNC Electronics > Stepper Motors / Drives > Stepper Motor always over-stepping even with low accel and speed
Results 1 to 17 of 17
  1. #1
    Join Date
    Mar 2018
    Posts
    12

    Stepper Motor always over-stepping even with low accel and speed

    I’m in the middle of building my CNC router. My electronics are just sitting on a desk here and I’ve been trying to get this to work for a few days. Even with no added resistance my motors seems to be constantly gaining steps. Around 2-5 degrees per rotation (4mm jog). The longer I rotate in one direction the more steps it goes out of whack even without stopping in between. There is a ticking sound coming from the motors 4 or 5 times a second. like driving on gravel. Guessing this is skipping.
    It’s not like I’m accelerating or decelerating fast. Set to 30.
    Speed set to 500mm/minute max, and no load on the motor really. I’ve tried stopping it by hand but it creates the same amount of missteps.
    I have the “Enable” pins not hooked up so it does go into low power holding mode when stopping.
    It’s all cheap ebay stuff from China.
    TB6600 - I’ve found 1 link claiming that version of these have an H-bridge which some are saying is not a good way to run a stepper. And I also read GRBL does not support H-bridge drivers, yet I see dozens of people running these on youtube. What's the deal with H-bridges? I don't even know what they do.
    Nema 23 - 76mm 269oz
    Arduino Mega2560 - I’m using the Mega2560 specific GRBL software with GRBL 1.1f, and Gcode Sender 1.9 (I also tried 2.0 nightly because I heard 1.1f compatible with that)
    36v PSU
    I’ve tried almost everything I can think of:
    -Changing step size does nothing, and neither does the increasing AMP rating
    -It gets worse with bigger steps, such as full steps.
    -Added shielded wire to the 4 motor wires.
    -I’ve tried lowering the baud rate, although the motor won’t respond no more, even though I can connect to the Arduino Mega with it lowered and I get the connection confirmation message.
    -Tried switching out the motor and driver for a different one of the same kinds (have 3 total).
    -I’ve tried using a RAMPS shield, but could only get the motor to move in both directions when jogging. Went in same direction for + and -.
    …other things I can’t recall.


    I’m not running any design. I’m simply jogging the motor to see if it responds accordingly.


    Are my drivers just crap? Is it a software or hardware problem? What else could I be missing?

  2. #2

    Re: Stepper Motor always over-stepping even with low accel and speed

    TB6600 is not as good as DSP stepper driver

    https://www.automationtechnologiesin...-motor-driver/

  3. #3
    Join Date
    Mar 2018
    Posts
    12

    Re: Stepper Motor always over-stepping even with low accel and speed

    I hope that's it. I guess I'll have to bite the bullet and get some of those. I just don't want to dish out another $150 before I know that is actually it.

  4. #4
    Join Date
    Jun 2008
    Posts
    128

    Re: Stepper Motor always over-stepping even with low accel and speed

    All stepper drivers use a H-bridge to drive the motor. The TB6600 should have no problem driving those motors.
    You talk about gaining steps , which would make travel longer than expected and you talk about skipping steps which would mean travel less than expected, which is it
    You said "There is a ticking sound coming from the motors 4 or 5 times a second". This would indicate a mechanical problem if it comes from one axis only.
    You said "Changing step size does nothing" . If you mean you changed the steps per mm setting and you got no change in travel distance then you must not have saved changes.

    .

  5. #5
    Join Date
    Mar 2018
    Posts
    12
    Quote Originally Posted by george4657 View Post
    All stepper drivers use a H-bridge to drive the motor. The TB6600 should have no problem driving those motors.
    You talk about gaining steps , which would make travel longer than expected and you talk about skipping steps which would mean travel less than expected, which is it
    You said "There is a ticking sound coming from the motors 4 or 5 times a second". This would indicate a mechanical problem if it comes from one axis only.
    You said "Changing step size does nothing" . If you mean you changed the steps per mm setting and you got no change in travel distance then you must not have saved changes.

    .

    The ticking sounds is coming from the motor as there is nothing connected other than a motor coupling that ways like 50 grams, and I've tried all 3 motors with the same effect. It's adding steps randomly while making skipping sounds.
    Here's a video https://youtu.be/DyLnksMRKCU

    I mean "changing step size" from 1/4 to 1/8 for example on the driver dip switches, and then adjusting the steps per mm settings in GRBL by doubling it to compensate. The math does work out.

    My default setup is :
    4mm pitch lead screw. (not yet mounted to the machine, motor spinning freely)
    Stepping using dip switches set to 1/4 microsteps.
    Steps per mm set to 200 steps (800 total at the 1/4 microstep setting per 1 rotation, divided by the pitch travel of the lead screw)

    If any of that math was wrong I would think I would be off by double or half, not 1% randomly. I hit "$$" command to check and changes always do take effect. The only wrong that I can see might be "step pulse" ($0). I've used values from 3 to default 10 to 200 and it seems to have no effect at all on anything.

    If it was consistently wrong I could maybe make it work. But some jogs it's right on while on others it's not.

  6. #6
    Join Date
    Jun 2008
    Posts
    128

    Re: Stepper Motor always over-stepping even with low accel and speed

    Two things you can try:
    Increase pulse width $1=20 or 30
    Invert pulse $2 = 7

  7. #7
    Join Date
    May 2005
    Posts
    3920

    Re: Stepper Motor always over-stepping even with low accel and speed

    The TB6600 is one of the drivers, i believe, that is known to have electrical engineering issues. Or to put it anither way they work like crap.

    As pointed out all stepper drivers have H bridges. The technology is realtively simple but it does require proper implementation. In a nut shell you get what you pay for. Id check out Gecko Drives if you want a known variable in that part of your controls.

    The other thing that confuses here is the reference to gaining steps but the loosing them. The first question that comes to mind is how do you know? This is animportant question because you may be focused on the electronics when you have a mechanical issue.

    In any event lets say it is an controls problem. Have you used good wiring practices to mitigate noise in the system? If you are really gaining steps then noise is a possibility. You also have the possibility of configuration issues in software.

    Id also verify that you are actually gaining counts by checking rotor position after slewing the axis back and forth. Ive often done this with a scribe mark on a pulley or disk mounted on the stepper. This will reveal gross errors but you need to understand how small a faction of 1.8 degrees is.

    One gothca is the switching of external devices. I once spent weeks chassing down a postion gain issue in a lathe finding out that it was the packages spindle drive causing the issue. So if at all possible switch nothing when testing. This comes back to a potential noise issue. By the way any mechanical relay in the machine needs noise suppresion.

    When testing always audit your G-Code by hand. Make sure you understand what every line does. Limit the code to what is required to run the axis under test and nothing else.

  8. #8
    Join Date
    Mar 2018
    Posts
    12

    Re: Stepper Motor always over-stepping even with low accel and speed

    I've found a few sources claiming GRBL does not support H-Bridge drivers. Bottom of this page:
    https://github.com/grbl/grbl/wiki/Co...bridge-drivers

    "NOT SUPPORTED: H-bridge drivers"

    I have verified that I am gaining steps, but not all the time. If I repeatedly jog it seems I gain steps 8/10 times and lose some or hit right on the rest of the time. I hooked a clamp multimeter to one of the 4 wire leads, and it's maxing around 1.3amps depending on speed settings. Not sure if this is an accurate reading as I know it's probably fluctuating all over the place with that phase being constantly being powered on and off. Probably need an Oscilloscope.

    I thought it was skipping steps when decelerating, and was unable to slow the rotor down in time. And therefore ending up further than intended. But it is in fact even adding steps while at full speed. The longer I let it run, the more ahead it gets when I do stop it. I marked the spots and after 22 full rotation jogs in one direction (letting it get to full stop each time) it is off by 45 degrees (2 degree per rotation).

    I have tried 18/4 shielded wire. Does each strand need to be shielded individually? Here is the sound it makes: https://youtu.be/DyLnksMRKCU. Single motor hooked up on the table with only a motor coupling.
    I'm not sure which other settings to fiddle with in GRBL. I have not tried inverting pulse $2=7 as someone recommended below, but will do so next.

  9. #9
    Join Date
    Jul 2016
    Posts
    660

    Re: Stepper Motor always over-stepping even with low accel and speed

    You can try separating the power supply from your breakout board from your main stepper driver board and test if the problem goes away.

  10. #10
    Join Date
    Mar 2018
    Posts
    12

    Re: Stepper Motor always over-stepping even with low accel and speed

    For future reference for anyone that stumbles on this:
    Chinese TB6600 are total trash. Upgraded to $50 DQ542MA drivers and all my problems are solved. The TB6600 provides enough current (based on comparing them to the new ones at similar current rating they seem almost equally powerful), but the processor inside is too slow. Or maybe the electronics inside cause interference with something. I lowered the current on the new 542 drivers to 1.5a (regular set to around 2.7a) just to see what would happen and how they would compare, and they actually work BETTER than the Chinese 4 amp rated trash even when handicapped. They are weaker and really easy to stop when gimped like this, but don't skip or add steps at any current rating. I can't even sell the old ones, because they are so garbage I would feel bad for the buyer. New ones are also almost cool to the touch even at 3 amp settings compared to the TB6600 getting so hot they shut themselves down after 5 minutes.

    If I had to do it all again I might actually get the 2h drivers from RobotShop https://www.robotshop.com/en/makeblo...or-driver.html because I paid $200 Canadian for drivers
    (3 of them) and shipping alone, but at least I know they were worth it.

  11. #11
    Join Date
    Feb 2018
    Posts
    28

    Re: Stepper Motor always over-stepping even with low accel and speed

    I have found the same issues with TB6600. I wish I hadn't bought them. DM542s are on order. My z axis is powerful enough and has OK holding, but can be overpowered easily the split second it stops. The Z axis drops over the duration of the job and so I assume in that period between moving and holding it drops a little. I upgraded 24v to 36v, tried every micro step configuration, raised the current limit to way above the motor requirements, tried W/O spindle running (to eliminate electrical noise), increased / decreased delay settings in mach3, reduced speed and accel to mind-numbingly slow. Drivers don't get hot. So, the cheap kit I bought: Drivers, BOB and PSU, the only thing I am keeping is the BOB. a bit of a false economy.

  12. #12
    Join Date
    Mar 2005
    Posts
    303

    Re: Stepper Motor always over-stepping even with low accel and speed

    change drive
    B458 at 50V 3A, stepper motor size 57 1.7N. ballscrew 6mm, run at 1333rpm ~ 8000mm/min, acc 800mm/s2
    https://www.youtube.com/watch?v=UU8ClxnJZrE

    Nhat Son Electronic - Home

  13. #13
    Join Date
    Jun 2014
    Posts
    4

    Re: Stepper Motor always over-stepping even with low accel and speed

    Hello

    Usually when changing direction the rising edge is too slow and the motors make some steps in the wrong direction.

    See attached pictures:

    with R8 2.2kohm resistor in collector in LTV-817 direction circuit the rising edge is app 30us

    Replacing it with 1kohm the rising edge goes to 13.3us. Reducing it may shorten the time but it is pain in the .... to remove the heat sink and retest. With 230ohm did not work.

    Another solution may be to replace LTV 817 with faster optocoupler.

    After this, the machine is not adding any steps. Tested with 1000 back and forth at 100mm travel.

    https://www.cnczone.com/forums/attac...d=401742&stc=1

    https://www.cnczone.com/forums/attac...d=401748&stc=1

    the falling edge is always good
    https://www.cnczone.com/forums/attac...d=401750&stc=1


    Another problem I have is the BOB, or TB6600 boards itself. When one channel is moving , one of the others is also rattling (led is lighting and motor is mooing few steps) need to attach the scope there and see..

    Good luck

  14. #14
    Join Date
    Jun 2014
    Posts
    4

    Re: Stepper Motor always over-stepping even with low accel and speed

    Hello

    Small update after measuring again the boards witht the scope.
    Sometime the step pulse was comming during directional signall change. working somehow but not for sure.

    After deselecing the "step low active" X
    https://www.cnczone.com/forums/attac...d=401800&stc=1

    the step pulse is alwais after the direction state is changed
    https://www.cnczone.com/forums/attac...d=401802&stc=1
    and
    https://www.cnczone.com/forums/attac...d=401804&stc=1

    so far so good, 1000 movements and exactly on spot, no missing steps.

    will give it a 1h test tommorow

  15. #15
    Join Date
    Apr 2007
    Posts
    1955

    Re: Stepper Motor always over-stepping even with low accel and speed

    If you want a stepper motor driver that virtually always works, just pick up a gecko drive setup.

    I have both single axis and multi axis ones running at 48 volts - so far no issues.

  16. #16

    Re: Stepper Motor always over-stepping even with low accel and speed

    This is issue is due to low speed optocoupler .

    Replace Direction and Pulse(CLock) optocoupler(p817) with 6n137 optocoupler.

    This will solve problem and not loss steps.

  17. #17
    Join Date
    Dec 2012
    Posts
    192

    Re: Stepper Motor always over-stepping even with low accel and speed

    Hello.

    You need to clarify a little as your comment of gaining steps and then loosing travel distance are completely contradictory. Nevertheless I suspect you are dealing with lost steps at it is what normally happens. The only case I have ever seen a drive to gain steps was in a very noisy (electrically speaking) facility.

    I suspect your pulses fed to the driver can be either a little too fast or your waveform is too rectangular.

    Is it possible for you to reduce their frequency? That is, to reduce your work speed? Also, is it possible to check the waveform?

    Even if the frequency is within limits, the relationship between the high and low timings of your pulse (the duty cycle) is very important. You should always try to feed square pulses, that is a 50% duty cycle, as best as you can. In many instances you can´t control that but in some controllers you do. I can´t tell about yours.

    In referring to the matter of "to bridge or not to bridge" question, a bridge configuration gets you the highest possible torque as the full coils are powered at the same time. Unipolar motors divide their coils so that half gets powered at a time thus reducing the available torque which translates into force. By the way, while I have not seen them I don´t know if you can manipulate microsteps in a unipolar configuration.

    The switches in the driver set the microsteps as you surely know. For instance, setting the switches at 400 or 1/2 (different brands label their settings differently), for a 200 pulses per revolution motor you would effectively need 400 pulses to get the motor complete one full rotation.

    I fully understand that you are trying to run TB6600 drivers but, what motors do you have?

    In reference to the controllers the problem of a bridged driver or a unipolar driver is irrelevant as far as I know since their only function is to provide STEP and DIRECTION signals. They don´t directly control the motor.

    Since I have been reading a lot of questions about lost steps in the last few days I will be publishing a small test program that can be run from a PC under FreeDOS and its equivalent running in a Microchip PIC16F84A microcontroller. I think it can be of use to many.

    The overall concept is to run the step motors 400 pulses in one direction and then 400 in the other effectively turning the motor back to its initial position. I believe that such a test can help many to check their machines when such a problem of lost steps appears.

    Regards and bye for now.

    PS: remember to post your motor data and being worthwhile I suggest you check your motors by turning them manually looking for possible mechanical bumps. Remember to disconnect them.

Similar Threads

  1. Replies: 0
    Last Post: 04-27-2016, 10:05 AM
  2. stepper motor speed
    By MASNSN in forum Mechanical Calculations/Engineering Design
    Replies: 3
    Last Post: 05-24-2012, 11:07 AM
  3. r&p motor tuning/accel rates
    By groomden in forum DIY CNC Router Table Machines
    Replies: 11
    Last Post: 11-03-2009, 03:34 AM
  4. Stepper motor max speed?
    By Labidus in forum Controller Cards
    Replies: 2
    Last Post: 02-23-2008, 06:11 PM
  5. Low stepper motor speed
    By MagooT in forum Stepper Motors / Drives
    Replies: 5
    Last Post: 11-08-2007, 05:10 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
  •