Motion Feed Hold Without Arc-OK
I'm looking for help to add axis motion hold to my plasma setup. I would like motion to stop if there is not a stable arc-ok signal coming from the plasma cutter. Adding to a working setup (that keeps moving even without an arc-ok signal), I found information in the wiki and am attempting to apply that to my setup. So far, I have added the following:
Early in my initial core.hal file, I've added:
loadrt and2 count=1
Added in same file along with other addf lines, I put:
addf and2.0 servo-thread
Then later, in the same file modified/added this info:
net debounce-ArcOK thcud.arc-ok debounce.0.0.in <= parport.1.pin-10-in and2.0.in0
net ArcOK debounce.0.0.out
net ext-feedhold and2.0.out => motion.feed-hold
And then in my second .hal file, I have this:
net spindle-on motion.spindle-on => parport.0.pin-16-out
net spindle-on and2.0.in1
This does not hold anything if there is no arc-ok signal. Any help would be appreciated. Thank you!
Paul
Please Log in or Create an account to join the conversation.
Probably need to post your whole hal file(s)
The debounce component does not make any sense and don't know where the parport connection is going.
Have you enabled Feed Stop Control with M53 P1?
www.linuxcnc.org/docs/devel/html/man/man9/motion.9.html
regards
Please Log in or Create an account to join the conversation.
I was not aware of M53 P1. I assume that gets added as a preamble (or later) to my gcode and wonder about existing code. Would I need to update all current jobs? Can M53 P1 be added to a configuration file to enable it at startup to have it auto-enabled as long as an M53 P0 is not issued somewhere along the line?
Yeah - I wasn't sure about the debounce component, but that feature is a nice to have so I wanted to keep it, if possible.
Thanks for any direction!
Paul
Please Log in or Create an account to join the conversation.
Can M53 P1 be added to a configuration file to enable it at startup to have it auto-enabled as long as an M53 P0 is not issued somewhere along the line?
Look at RS274NGC_STARTUP_CODE in www.linuxcnc.org/docs/devel/html/config/...ml#_rs274ngc_section
I will have a look at the files in a bit
regards
Please Log in or Create an account to join the conversation.
Can M53 P1 be added to a configuration file to enable it at startup to have it auto-enabled as long as an M53 P0 is not issued somewhere along the line?
Look at RS274NGC_STARTUP_CODE in www.linuxcnc.org/docs/devel/html/config/...ml#_rs274ngc_section
I will have a look at the files in a bit
regards
Excellent! All much appreciated.
PK
Please Log in or Create an account to join the conversation.
net debounce-ArcOK debounce.0.0.in <= parport.1.pin-10-in
net ArcOK and2.0.in0 <= debounce.0.0.out => thcud.arc-ok
net spindle-on and2.0.in1 <= motion.spindle-on => parport.0.pin-16-out
net ext-feedhold and2.0.out => motion.feed-hold
would seem the sanest connections, assuming parport.1.pin-10-in comes from the plasma arc-ok signal
There is no reason at all to have the 6thcud-1.hal file, for the 2 lines it holds that should be with the and2 component for readability
I suspect your problem was M53, but we shall see
regards
Please Log in or Create an account to join the conversation.
Paul
Please Log in or Create an account to join the conversation.
Having got back and looking at it on a proper screen, what immediately jumps out at me is the logic.
You are feeding a TRUE signal from what I assume is the plasma which says the arc is OK, to one IN pin of an and2 component
The other IN pin is being fed a TRUE signal from motion-spindle-on, which presumably is what you use to run or enable the torch
When both are TRUE, motion-feed-hold will be TRUE and stop! (If it had worked)
That is the inverse of what you want
loadrt not
addf not.0 servo-thread
net debounce-ArcOK debounce.0.0.in <= parport.1.pin-10-in
net ArcOK and2.0.in0 <= debounce.0.0.out => thcud.arc-ok
net spindle-on and2.0.in1 <= motion.spindle-on => parport.0.pin-16-out
net not-ext-feedhold not.0.in <= and2.0.out
net ext-feedhold not.0.out => motion.feed-hold
would be one simple way to invert the output, so that motion-feed-hold is FALSE when both plasma is on and arc is OK but TRUE when either is FALSE
Please Log in or Create an account to join the conversation.
In the first version, could I have inverse'd the Arc-OK signal coming in on pin 10 with a -not thinking that no arc-ok signal would make it TRUE. Wait - Do they both have to be TRUE to stop, wouldn't they?
I now think I'll have to edit each gcode file in order to add M53 just before each M03 (after a touch off) and an M53 P0 after turning off the torch. Otherwise any non-rapid move would have a feedrate of zero because both spindle off and arc-ok would make it TRUE. Am I even looking at the target by thinking this way? Or would the feed-hold state only be considered after a M03 and not be considered after an M05?
I'll try this... Thank you
Paul
Please Log in or Create an account to join the conversation.
In the first version, could I have inverse'd the Arc-OK signal coming in on pin 10 with a -not thinking that no arc-ok signal would make it TRUE.
That is another way of doing it, you can organise the logic as suits you best.
So long as you appreciate the logic requirements for setting motion-feed-hold to TRUE, I'm sure you will get there.
Whether the whole thing is workable in practice, is something you may have to wait for someone with hands on experience to comment on.
regards
Please Log in or Create an account to join the conversation.