Lathe thread cutting issues at specific RPM

More
20 Aug 2015 19:34 #61584 by bjames28
Dear All,


After reconfiguring an older lathe from parport to Mesa 7i43 there are issues with thread cutting.
The same velocities/accelarations and other paramaters are used in INI file now as before with parport.
Both axes are driven by stepper motors.

The spindle velocity is calculated from a custom 100 slots disk with opto gates (noised filtered with capacitor) mounted on spindle and A/B/Index pulses are used in quadrature mode.
The spindle has two gears, in high spead gear 1:1 (up to 3200RPM) everything works as expected any type of thread can be done without errors

In low spead gear (10:1, 320RPM) however there are seemingly random missed entering points when starting the thread cutting.
Most of the times the cutting tool enters the thread in the correct place, but in some cases it misses the good entry position
The error occurs only at 100RPM, no errors at 75RPM and 125RPM, although the best cutting performance and quality can be achieved only at 100RPM
For example a 2-start taper thread which consist of 38 normal passes and 2 spring passes finished fully without errors one or two times.
Next time the 38 normal passes are OK, but the spring pass starts not in the right place. It seems like the machine doesn't wait for the index signal.
Always only the thread start is wrong, further part of the thread is correct.

The stepper motor on X has a strange high tone sound when entering the thread, which would indicate that it wants to do accelerating ramp, later it behaves normally.

The thread cutting subroutine was hundreds of times used before and I can send it to someone in private e-mail, but the owner doesn't want to publish it.

When the FERORR/MIN-FERROR (currently 1.5 and .15) variables are lower, the issue comes earlier, like the accumulated error reached sooner, but maybe it is just a bad theory.

We tried lots of different settings bot no luck so far.

If needed I can upload the INI and HAL files here.
LinuxCNC 2.6.9, the same effect with new TP and without.

Any help or ideas are appreciated.

Best regards:
Janos

Please Log in or Create an account to join the conversation.

More
20 Aug 2015 20:56 #61587 by Clive S
Just my two pennies worth I wonder if you are getting resonance at that exact speed and missing a step or two.
The following user(s) said Thank You: bjames28

Please Log in or Create an account to join the conversation.

More
20 Aug 2015 21:48 - 20 Aug 2015 21:49 #61588 by bjames28

Just my two pennies worth I wonder if you are getting resonance at that exact speed and missing a step or two.


Thank you Clive for the hint.
We indeed changed the microstepping on one axe, I have to check which one was that, and make a try with different microsteps.
Current setting on driver is 800 if I am correct. But I am sure it was originally higher (1600 or more).
Last edit: 20 Aug 2015 21:49 by bjames28. Reason: typo

Please Log in or Create an account to join the conversation.

More
20 Aug 2015 22:18 #61589 by PCW
The FERROR and MIN_FERROR settings have no influence on
motion unless a joint following error is tripped. (All motion is stopped in this case)

They seem to be set very wide because if you _need_ a 1.5 MM
following error limit something is wrong with the machine /stepgen setup

So my guess is you have a stepgen setup error somewhere, leading to stalls
or large following errors in specific cases.

Another guess is noise on index but I dont think that would be speed specific
If you want to check for noise you could set the encoder filter true and lower the sample rate:

setp hm2_7i43.N.encoder.00.filter true
setp hm2_7i43.N.encoder.sample-frequency 500000
(N being the spindle encoder number)

This will set the input filter to 15 counts at 500 KHz
= 30 usec minimum pulse width to pass through the filter,
and max count rate of 66.6 KHz (1/15 usec)

This should be good to 4000 RPM or so with a 100 slot wheel including ample headroom
for quadrature phase errors etc
The following user(s) said Thank You: bjames28

Please Log in or Create an account to join the conversation.

More
20 Aug 2015 23:11 #61592 by bjames28

The FERROR and MIN_FERROR settings have no influence on
motion unless a joint following error is tripped. (All motion is stopped in this case)

They seem to be set very wide because if you _need_ a 1.5 MM
following error limit something is wrong with the machine /stepgen setup


We just tried to set those number higher, but the machine was never stopped due to this
Decreased now to more reasonable values, see attached files, no change in machining.

So my guess is you have a stepgen setup error somewhere, leading to stalls
or large following errors in specific cases. |/quote]

From squeky sounds thes is my guess too.

Another guess is noise on index but I dont think that would be speed specific
If you want to check for noise you could set the encoder filter true and lower the sample rate:

setp hm2_7i43.N.encoder.00.filter true
setp hm2_7i43.N.encoder.sample-frequency 500000
(N being the spindle encoder number)

This will set the input filter to 15 counts at 500 KHz
= 30 usec minimum pulse width to pass through the filter,
and max count rate of 66.6 KHz (1/15 usec)

This should be good to 4000 RPM or so with a 100 slot wheel including ample headroom
for quadrature phase errors etc


Implemented this noise filtering as you recommended, but no change..

Stepper drivers: MSDD 80 56

Attached please find the config files.

File Attachment:

File Name: CNC_Eszterga.ini
File Size:4 KB


File Attachment:

File Name: CNC_EsztergaJav.hal
File Size:7 KB

Attachments:

Please Log in or Create an account to join the conversation.

More
20 Aug 2015 23:45 #61595 by PCW
Hmm I dont see any thing obviously wrong

It may simply be resonance
can you see if the X or Z stall when things go wrong?

(note that higher ustepping ratios reduce but do not eliminate resonance)

One other thing to consider when changing from a parallel port to a hardware stepgen
is that with the hardware stepgen, the step time is just what you specify so if 10 usec is a
minimum timing I would try increasing it somewhat. On a parallel port system
(without the reset option) the steplen will always be at least one base thread time

Please Log in or Create an account to join the conversation.

More
21 Aug 2015 00:16 #61596 by bjames28
Hi PCW,

Resonance was quit annoying with old analogue drivers, but with new stepper drivers it disappeared.

There is no stalling, but at the beginning of the thread there when index signal arrives there is a somewhat "excessive" acceleration and resulting overshot.
After it the speed goes normal.

We try the increased timings, however according to manual , steptime/steplength is 2.5usec, dirsetup/dirhold 5usec, so its 4 times already more then recommended.

Please Log in or Create an account to join the conversation.

More
21 Aug 2015 00:33 #61598 by PCW
If you have excessive acceleration but no following error it seems that either the excessive acceleration
was commanded (so this is a motion/TP error) or there is something in the low level beyond the etspgen
(maybe electrical interface) that is generating extra steps

The best way to determine the cause is probably to capture the error on halscope
(perhaps triggered on the falling edge of index enable)

Please Log in or Create an account to join the conversation.

More
21 Aug 2015 01:02 #61599 by cncbasher

Hi PCW,

Resonance was quit annoying with old analogue drivers, but with new stepper drivers it disappeared.

There is no stalling, but at the beginning of the thread there when index signal arrives there is a somewhat "excessive" acceleration and resulting overshot.
After it the speed goes normal.

We try the increased timings, however according to manual , steptime/steplength is 2.5usec, dirsetup/dirhold 5usec, so its 4 times already more then recommended.


can we ask what is the spindle motor ? stepper motor or 3 phase motor etc , and what controls it
if you care to send your complete and full config as an archive i'll take a look .

which axis or spindle is giving the error .

also are you switching positive or neg to the stepper drive step and direction ( i.e fig 2 or fig 3 of the stepper driver manual )
it's crucial to get the spindle speed , and the encoder in the correct phase i.e counting in the correct direction and the spindle speed readout
to be correct to match the actual rotational speed of the spindle .

are you using a spindle encoder with index and a/b signals , and also do you have the spindle encoder in count mode ( if single ended index also tied to A
what speed are you trying to thread at ?

also your ini settings , appear to be miles off for values needed between a 7i43 and leadshine drives
the fact that you have not changed them , may be the problem ,

if you want to send anything directly see my profile if it helps
i realise theirs a lot of information requested , but this will help cover most problems in one go
and reproduce your errors

Please Log in or Create an account to join the conversation.

More
21 Aug 2015 01:35 #61600 by bjames28
Hi cncbasher,

Spindle is 3KW 3phase motor driven by Hitachi VFD. Speed can either be controlled by 4 fixed speeds from the drive itself, or normally by PWM generated from 7i43.
In our case this is preset value and the spindle speed is stable (within +/-10%).

INI and HAL file is attached already, in post #61592. There is postgui.hal file too, but mostly for pyvcp things. I'll send you the complete folder.

Axis Z gives errors

Maybe be important, that steppers are 12Nm big irons.

Both positive and negative signals are routed to the stepper drives.

Encoder setup you can find in the HAL file. We use both A and B signals in quadrature mode to have reverse direction of spindle too.
What else should be checked with encoder signals?

Critical threading is at 100RPM but slight deviation for ideal also appears at 75RPM.

We produce a youtube video soon with as much details as possible and the HAL scope capture.
( I hope this will work over TeamViewer, because I am 300 miles away from the lathe.)

Please Log in or Create an account to join the conversation.

Time to create page: 0.283 seconds
Powered by Kunena Forum