Hello Guest it is October 09, 2024, 02:45:57 PM

Author Topic: Losing Pulses at lower accelerations  (Read 9188 times)

0 Members and 1 Guest are viewing this topic.

Offline 10k

*
  •  13 13
Losing Pulses at lower accelerations
« on: April 04, 2013, 02:17:56 PM »
I recently became interested in high speed machining.  My homebuilt CNC mill is several years old, and has always worked fine at the lower feed rates that I usually use (1-8 ipm).  I started testing what feed rates that I could get out of the system, and got some unusual results.

First, I ran a short program to run the mill back and forth on one axis:

G01 X2
G01 X1
G01 X2
G01 X1
G01 X1.5
G01 X.5
G01 X1
G01 X0
M30

I ran the program using increasing feed rates.  I have a digital probe, and set X= zero before the run, then checked it after the run.  I was able to get up to 200 ipm with an acceleration of 25 ips/s with excellent repeatability.  I didn't go past 200 ipm in my tests.

I ran a similar test on the Y axis.  I could get 150 ipm using an acceleration of 10 ips/s before I started losing steps.  I found that holding this speed and increasing the acceleration made me lose steps.  This all made sense to me.

I then ran a program that moved the X and Y axis:

G01 X2
G01 Y2
G01 X1
G01 Y1
G01 X1.5
G01 Y1.5
G01 X.5
G01 Y.5
G01 X1
G01 Y1
G01 X0
G01 Y0
M30

I found that using a feed rate of 150 ipm for X and Y that had worked OK on the single axis tests made me lose steps. (About 0.070 on both axes)  Then things started getting strange.  At a value of 50 ips/s, I got no lost steps.   I increased to 75 ipm, and started losing steps.  At this point, I held the feed rate at 75, and started playing with the acceleration.  I found that low accelerations, like 5 ips/s LOST a huge amount of steps.  Increasing the acceleration led to less lost steps.   At the low accelerations, the stepper motors sounded OK, but the deceleration noise was not a happy one.  The higher accelerations cause the stepper motors to stop dead nearly instantly, and really jerks the mill around (relatively - it's a big hunk of iron).

One of the things I thought might be happening is that the stepper voltage could be dropping when two motors are running simultaneously.  I monitored the supply voltage with an old analog voltmeter.  The voltage is only dropping briefly about 5V on the 70V supply during transitions.  I added about 1F of capacitance on the power supply.  It didn't change the testing results.

Any ideas?

Offline RICH

*
  • *
  •  7,427 7,427
Re: Losing Pulses at lower accelerations
« Reply #1 on: April 05, 2013, 07:13:52 AM »
10k,
What do you want to do?
Find a reliable operating configuration for the machine as is ,or, have a machine capable of running at high velocities / accelerations?

You have what you have, you modify what you have to improve the performance, or you design the machine to preform at some level.

There is a big difference between the above and there are basic limitations and compromises that need to be made.
One could write a book on it.

RICH

Offline Tweakie.CNC

*
  • *
  •  9,235 9,235
  • Super Kitty
Re: Losing Pulses at lower accelerations
« Reply #2 on: April 05, 2013, 08:05:07 AM »
Hi 10k,

Just out of curiosity...

Did you still get a voltage drop on the psu after adding the capacitors ?

Are you using a switched mode (regulated) power supply ?

Tweakie.
PEACE

Offline 10k

*
  •  13 13
Re: Losing Pulses at lower accelerations
« Reply #3 on: April 07, 2013, 11:32:57 AM »
I did some additional testing.  I started thinking it might be a power supply problem.  I looked up my transformer, and it's rated at 4A.  I replaced it with a power supply rated at 15A.  I installed larger wires to the voltage inputs on the Geccos.

I wrote some G code to make a circle and have some simultaneous X and Y moves:

G00 X1. Y0.
G02 X-1. R1.
X1. R1.
M30

This works at 50 ipm.  At 60 ipm, the Y motor makes odd noises at the middle of its traverse, and loses a lot of steps.  The X motor loses a few.

So, no change in problem.

Any ideas?  Could I be getting cross talk in the wires?  Is there an adjustment on the Geccos that I should make?  I thought about putting an oscilloscope on the Y step signal to see if it looks odd.  There are so many places that I could be having problems - Mach3, breakout board, wiring, power supply, Geccos, steppers, XY table.  I need some way to isolate the problem to just one of the systems!

Offline 10k

*
  •  13 13
Re: Losing Pulses at lower accelerations
« Reply #4 on: April 07, 2013, 03:00:38 PM »
More testing.

I put an oscilloscope on the Gecco step input.  It looks OK, although there is some timing variance from pulse to pulse when running at a steady speed.  I didn't see that the step pulse was doing anything strange when the motors made noise and stopped stepping.  I have to conclude that the problem is in the stepper/gecco part of the system.  The only thing that gives me pause is the jitter in the timing of the step signal.

I changed the kernel speed from 25k to 100k to see if that had any effect.  At the slowest kernel speed of 25k, the jitter went away.  Mach3 did warn me that the kernel speed was too slow for the 200 ipm max that I had in my motor tuning, but it was OK for the speed I was using in my G code.

I looked at the specs on the Gecco.  It's supposed to be rated at 200kHz maximum.  I have 10,000 steps/in, so that's a maximum of 20ips, or 1200ipm.  The speed should be OK.

So where I am now:
- the jitter I'm seeing could be bothering the Geccos at higher speeds
- the jitter could be a result of cross-talk in the system
- the jitter could be generated by small variances in Mach3s timing
- this is just as fast as the Geccos can run
Re: Losing Pulses at lower accelerations
« Reply #5 on: April 07, 2013, 03:57:38 PM »
You're barking up the wrong tree.  The Geckos couldn't care less about jitter in the step pulses.  The stepper motors care a LOT!  Jitter WILL cause lost steps, if not outright stalling.  Combine that with mid-band resonance, and everything you're seeing is as should be expected.  There is no benefit whatsoever to running the kernel frequency any higher than necessary to reach your target step rate.  Few systems will run reliably even at 45kHz kernel speed, and any jitter at these speeds will cause problems.  VERY few PCs can run at 100kHz.  The jitter is purely a function of Mach3 software-generated step timing.  If you want to run faster, get a hardware motion controller, like SmoothStepper, KFlop, Galil, etc.

Regards,
Ray L.
Regards,
Ray L.

Offline 10k

*
  •  13 13
Re: Losing Pulses at lower accelerations
« Reply #6 on: April 07, 2013, 04:59:10 PM »
Thanks for the reply.  The effect of jitter on the stepper fits the symptoms.  I get lost steps, then at faster rates I get stalling.  If Mach3 is not that accurate in providing jitter free pulses, it makes sense that as it's trying to control two axes simultaneously that the jitter gets worse.

I have not yet tried cutting at these higher rates.  Do you think that loading the motors when cutting will make the lost steps worse, or about the same?  I'm thinking that maybe something like 40ipm is the fastest that I should go, but if I can't even cut at this speed, I need to look into something like the smooth stepper.

Offline RICH

*
  • *
  •  7,427 7,427
Re: Losing Pulses at lower accelerations
« Reply #8 on: April 08, 2013, 06:30:49 AM »
10K,
You never answred my question which was , "What do you want to do?"
Seems like you want to increase you max velocity?

First find your approx Max velocity.
Run the driver test and find the max Kernal Speed, but would suggest you just start with 25Khz.
Set your max velocity for say 10 ipm with an acceleration of say 2. Now double the velocity ie, 10, 20, 40, 80, 160 ad see where the axis skips.
Lets say it skipped at 80 ipm, then set the velocity at 60 and see if it skips, if it dosen't, now start increasing the accel and find where it skips, lets say it
skips at 60 ipm and accel of 10. Now lower the velocity to 30 to 40 % of max and retest. Above  will quickly get you in the ballpark.

Please understand that relibalility of is more important than speed. You don't want the system to skip or have problems when maching.

In general you need to understand the following:
- A stepper motors torque decreases as speed increases. Thus high motor speed and no torque is rather useless. What you want is power which
  is torque x speed.

- The SYSTEM must be capable of what you want to do, there are comprimises that will need to be made, speed / acceleration / accuracy /
   power and additionaly,  adequate drive, power supply, mechanics of the axis, etc. Don't forget that the computer / external motion device must have the  
   ability to deliver the pulse signal to the drive.

- Thus your have a the software that controls the motion, a computer that outputs the instructions, a drive that delivers the pulse train, the ,mechanics of
   the axis, the motor that needs to be able to respond. That is the "SYSTEM". The components are all interlinked and and the system needs to be adequte
   for what you want to do.  Changes to any part of the system can affect the axis motion.

- And in the end what really matters that the system is realiable and accurate enough to do what you want to do.

SO what do you want to do?
 
RICH

Offline 10k

*
  •  13 13
Re: Losing Pulses at lower accelerations
« Reply #9 on: April 08, 2013, 08:20:39 AM »
As to what I want to do, I thought I said that in the first line of my first post.  I'm interested in high speed machining.  Now, whether my machine is capable of that or not, that's a different question.  Based on my testing, I'd say it's not.  I've already been through the testing you suggest, as detailed in my previous posts. 

There are two types of failures.  One is that a velocity or acceleration results in losing some relatively small amount of steps.  The second is that the velocity is high enough that the stepper locks up and misses a massive amount of steps.  The circle test I did resulted in this second type of failure.  For a given axis, a circle involves ramping speed up from zero to a maximum speed, then back to zero.  The second axis is the same, only 90 degrees out of phase. This ramp is far slower than the acceleration value.  The steppers are failing, or locking up, near the maximum speed, then restarting as the speed decreases.  I've found that the steppers quit working at about 50ipm. 

Since I've looked at the step pulse input to the Geccos, I know that it's being provided by the remainder of the system.  At the lowest kernel speed of 25k, the signal is stable and there's little jitter.  For 35k and above, there's jitter. However, I've tested at both values, and failure occurs at 50 ipm.

As for acceleration, most values up to 15 or 20 ips/s seem to work OK.  I've tried values from 1 to 50 at various speeds.  If the steppers didn't fail at higher speeds, then I could tweak these values.

So where I am is that my maximum reliable speeds are probably on the order of 10 or 20 ips.  This is far too slow for high speed machining.

Let's say that I am able to resolve this problem, and get reliable stepping up to 100ipm or so.  As you point out, I may run up against a second problem - lack of torque.  For the tests that I've done so far, I'm machining air.  I may find that when I'm cutting steel that I can't generate the necessary forces with the steppers to prevent loss of steps.

So that's where I am today.