(Solved) Power Draw Bar - Spindle Inhibit

More
15 Oct 2021 03:28 #223158 by spumco
Next puzzle I could use some help with...
  • I have a pretty standard pneumatic power draw bar actuated by a solenoid valve
  • Air cylinder has a piston position proxy connected to an input
  • Momentary pushbutton on the mill head for manual tool changes
I am having trouble figuring out the 2-part logic in HAL so that
  • If spindle is on the air cylinder cannot actuate
  • Spindle cannot start if
    • Button is pressed or
    • Cylinder is extended or
    • solenoid energized
I see there is a spindle.N.inhibit pin availble in motion.  I can do a two-level or.2 gate for the 'spindle can't start' conditions, but I'm not sure how to also accomplish the first 'cylinder can't actuate' condition.

(please don't suggest lut5 unless someone just gives me a lut5 copy-paste.  My brain hurts trying to read that one

Any suggestions on how to prohibit the button/solenoid from working if the spindle is on?

Thanks,
Ralph

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

More
15 Oct 2021 12:59 #223200 by andypugh
I have a special HAL component called spindle-interlock for this.

forum.linuxcnc.org/10-advanced-configura...in-conditions#137653

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

More
15 Oct 2021 15:44 - 15 Oct 2021 16:02 #223209 by spumco
That looks perfect Andy, thank you.

How do I get this new component and pins in to Lcnc?

EDIT - I read the user manual on HAL component configuration, but I don't really get the 'nuts-and-bolts' of doing it.

I don't have the development version installed, just bog-standard 2.8.2. I had so much trouble trying to get the various configurations of 2.8.2/2.9 + python2/python3/QtPyVCP/Probe Basic installed that I'm petrified of breaking a configuration that's been working for (a record) 4 days in a row.

So I install -dev per the user manual here:  linuxcnc.org/docs/2.8/html/hal/comp.html

Do I have to run this -dev version every time from now on? i.e. I copy my working-ish config over to -dev, and then more-or-less abandon the non-dev version of LCNC?
Last edit: 15 Oct 2021 16:02 by spumco. Reason: Clarification

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

More
15 Oct 2021 16:20 #223211 by andypugh
You shoould just need to do this:

linuxcnc.org/docs/2.8/html/hal/comp.html...side_the_source_tree

ie,
sudo halcompile --install spindle_inhibit.comp

Then "man spindle_inhibit" should display (limited) documentation and "loadrt spindle_inhibit / addf spindle_inhibit.0 servo-thread" in the HAL file.
The following user(s) said Thank You: spumco

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

More
16 Oct 2021 04:08 #223275 by spumco
Thanks, got LCNC to stop throwing errors on startup once i figured out it's named spindle_interlock and not spindle_inhibit.

I'll have a go at it in the morning, appreciate the assistance.

-R

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

Time to create page: 0.064 seconds
Powered by Kunena Forum