G93 problem with speed

More
5 years 10 months ago #193640 by kmeld
G93 problem with speed was created by kmeld
Hi,
I have a problem suing G93 inverse time feed.

The issue is that it seem not seem to work when only A axis is to move.

When I try (in both cases starts A 0 and X0)
G1 A360 f1
and
G1 A360 f0,1

A axis turns with the same speed. I thinks it is the max speed as set in config

But if A moves are companied by any linear move A axis turns with appropriate speed.
So
G1 X0,1 A360 f1
and
G1 X0,1 A360 F0,1
both are executed as expected

Why it is so G93 does not work for A axis movement alone?

Cris.

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

  • tommylight
  • Away
  • Moderator
  • Moderator
More
5 years 9 months ago #194597 by tommylight
Replied by tommylight on topic G93 problem with speed
Pretty sure some axis in some cases do not comply to feeds, but i have no idea how and why and when or under what circumstances, so i'll leave that to more experienced members.
Thank you.

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

More
5 years 9 months ago #194696 by kmeld
Replied by kmeld on topic G93 problem with speed
So I have found something in the matter, and have gone around the problem and have a stable solution in all cases.

So my findings are:
1) when G93 is used and if there is linear move to be done in the same time as rotation there is minimum linear feed that controller uses and this is 0,1 mm/min.
If code requires smaller linear feed it will not controller will not do it and will go with minimum linear feed rate 0,1. This is why in some cases G93 does not produce effect as expected

2) If G94 is sued and there are linear and rotation moves combined in the line of code feed is based on linear feed, so move is executed in the time linear moves would need to do the move with given federate.
If only rotation is present in the line of code than federate value is executed in angular units.

3) to solve this problem I am using G94 instead of G93 but with F specific for each line of code involving rotation of 4-th axis.
To get F value for given feed rate very simple calculations are required.
This strategy is error proof as if F is specified for G94 it can have any value, in particular it can be smaller than a minimum F value controller uses for G93. So for G 94 F can be as small as 0,05 mm/min (this I have tested, but I suppose there is no lower limit for this value).

So in a sense it turns out that G93 is not safe to use and using G94 instead requires exactly the same calculations but is error proof.

Cris.
The following user(s) said Thank You: newbynobi, tommylight

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

More
5 years 9 months ago #194819 by andypugh
Replied by andypugh on topic G93 problem with speed
There definitely does appear to be a hard-coded limit of 0.1
github.com/LinuxCNC/linuxcnc/blob/master...terp_inverse.cc#L124

Though presumably you could split a long move that was meant to take 20 minutes into two 10 minute moves.

That said, 10 minutes seems like a long time to be doing one move.

Are you making marble columns or something?

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

More
5 years 9 months ago #194821 by andypugh
Replied by andypugh on topic G93 problem with speed
I have asked the developers if anyone knows why there is this limit. But it has been like that since 2005 so I doubt that anyone remembers.

I am happy to consider changing it. I wonder how small is small enough? Maybe 0.0007 ? (no single cuts longer than a day)
The following user(s) said Thank You: tommylight

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

  • tommylight
  • Away
  • Moderator
  • Moderator
More
5 years 9 months ago #194828 by tommylight
Replied by tommylight on topic G93 problem with speed

andypugh wrote: Maybe 0.0007 ? (no single cuts longer than a day)

LOL, that ought to be enough! :laugh:

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

Time to create page: 1.910 seconds
Powered by Kunena Forum