Linear moving vs M67 command

More
19 Jul 2012 12:55 #22184 by Kap1eC
Hi all. I have 1 problem with linear motion.
I need to change analog output synchronously with motion. There is only 1 axis in my config. I split my trajectory on small partitions and write M67 command between it’s.
For example:
%
G01 X0.1 F1000
M67 E0 Q1
G01 X0.2 F1000
M67 E0 Q2
%
Max speed is very slow, when I used only 0.1 mm for X’s step. I try to use G64 command. But nothing changed.
Mb anybody encountered with this problem?

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

More
19 Jul 2012 14:20 - 19 Jul 2012 14:22 #22188 by BigJohnT
It's not a problem, perhaps a failure to understand how M67 functions.

From the Manual:

The actual change of the specified outputs will happen at the beginning of the next motion command. If there is no subsequent motion command, the queued output changes won’t happen. It’s best to always program a motion G code (G0, G1, etc) right after the M67. M67 functions the same as M62-63.


Or your not showing enough code...

John
Last edit: 19 Jul 2012 14:22 by BigJohnT.

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

More
24 Jul 2012 10:47 #22381 by Kap1eC
I know that M67 command take effect only with next motion command.
Main problem: when I break my linear trajectory on the small part maximum speed is very slow. Why? It’s the line! :(
I think that G64 command can help. But nothing changes.

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

More
24 Jul 2012 11:37 #22383 by BigJohnT
IIRC M67 is a queue buster so even if you use G64Pn each M67 is a stopping point.

John

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

More
24 Jul 2012 12:24 #22388 by andypugh
Kap1eC wrote:

Hi all. I have 1 problem with linear motion.
I need to change analog output synchronously with motion.


Which version of LinuxCNC?

M67 was broken previously, I am not sure when the fix went in. (However I think it just didn't work at all..)
That fix went in 10 months ago, I am not at all sure how to check which releases have it, but it certainly won't be anything prior to v2.5

It shouldn't be a queue-buster.

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

More
24 Jul 2012 12:28 #22391 by BigJohnT
So much for trusting memory... M68 is a queue buster not M67.

John

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

More
24 Jul 2012 14:06 #22399 by Kap1eC
I have EMC 2.5. M67 and M68 gives slowdown =( Oh

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

More
24 Jul 2012 14:16 #22400 by andypugh
Kap1eC wrote:

I have EMC 2.5. M67 and M68 gives slowdown =( Oh


Does the same code run faster without the M67 lines?

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

More
24 Jul 2012 14:32 #22401 by Kap1eC
No. =( Code example:
%
G64 P3 Q3
G01 X0.00000 F1000
G01 X0.05000 F1000
G01 X0.10000 F1000
G01 X0.15000 F1000
G01 X0.20000 F1000
...
%
Speed is about 200.

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

More
24 Jul 2012 14:37 #22402 by andypugh
This is a regrettable consequence of a lack of lookahead in the LinuxCNC trajectory planner (And one that there is some work ongoing to fix).

The problem is that the motion controller always guarantees it can come to a halt before the end of the next move.

It might help to increase the max acceleration, unless you are already on the physical limits of the system.

G-code which intelligently splits the moves into continous moves at constant M67 values would also work better.

What is the application? I am tempted to guess that it is laser rastering?

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

Time to create page: 0.217 seconds
Powered by Kunena Forum