Automatic Toolchanger not storing tool data persistently and other errors

More
08 Jun 2024 00:25 #302585 by B.Reilly01
I've almost got my atc behaving as expected, I just have a few hangers on for errors/warnings as shown in the screenshot.  I also have a consistent error that the carousel did not return when doing a t0m6.  The carousel however, is returning.  Halshow shows the input go high. Also, while the machine remembers where tools are in the carousel during the same session, it does not store that info from session to session. Right now I'm working in AXIS before i make the jump to either ProbeBasic or PathPilot(I have a vertical screen).  Any help would be appreciated.

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

More
11 Jun 2024 01:44 #302789 by B.Reilly01
Over 100 views and no answers... let's ask this a different way. In LinuxCNC 2.9, what parameters/variables are used for ATC Pockets persistently? I'm using the Sim VMC Toolchange.ngc as my building base, which uses #4000 on up for the atc slots, but I've also seen 5190-5200, which wouldn't be enough slots. My .var file does not have either of these ranges included.

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

More
11 Jun 2024 06:39 #302796 by Aciera
I'm not really familiar with ATC setup but I think the tool location is actually tracked in the tool table rather than with parameters.

If this is this a 'random' toolchanger you may want to try to add this to the [EMCIO] section of your .ini file:

RANDOM_TOOLCHANGER = 1

linuxcnc.org/docs/html/config/ini-config.html
The following user(s) said Thank You: B.Reilly01

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

More
11 Jun 2024 09:04 #302801 by Aciera

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

More
11 Jun 2024 11:11 #302808 by B.Reilly01
Adding this got me persistent tool in spindle, but its still not remembering the carousel. I'll try to dig more into EMCIO see if I'm missing something

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

More
11 Jun 2024 12:15 - 11 Jun 2024 13:06 #302813 by Aciera
Just so we are on the same page, you are having problems getting the sim config '/configs/sim/axis/vismach/VMC_toolchange' to work? Or are we talking about real hardware?

[edit]
Just checked the above sim config in 2.9.2 and I get the impression that it is not really working. I keep getting 'The toolchanger has failed the final alignment check' errors.
Last edit: 11 Jun 2024 13:06 by Aciera.
The following user(s) said Thank You: B.Reilly01

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

More
11 Jun 2024 14:42 #302825 by B.Reilly01
This is actual hardware - Also, this isn't really a random toolchanger, as it's really a semi-random carousel (Tool goes back into the same pocket it came out of).

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

More
11 Jun 2024 15:07 #302828 by spumco
OP - you weren't being ignored.  I was just hoping someone smarter than me would chime in with a bullseye answer

Hopefully I'm not stating the obvious (or bad info), but I think it might be helpful to clarify where LCNC is storing tool/pocket info.
  • 'Standard' LCNC stores tool number & pocket number in the tool.tbl file, and parameter 5400 is (I think) the current tool number. 
  • Probe Basic stores the pocket number as parameter value and ignores the pocket number column in the tool table.
    • I believe this is because - while PB was being developed - LCNC treated the tool.tbl pocket number as the index of the table, not the actual pocket number when passing a value to a consuming function (carousel.comp).
      • i.e. the first entry in the table was pocket #1, regardless of the value in the pocket field.
    • LCNC Github is littered with a number of issues reporting the tool/pocket problem.  It was reported fixed, but I haven't personally tried a config (extensively) to see if LCNC is fixed yet.
    • github.com/LinuxCNC/linuxcnc/issues/400
  • PB Devs worked around this bug/feature by creating additional persistent parameters in the linxcnc.vars file which represent the tool-pocket relationship and are used by the subroutines to store/retrieve tools.
    • Specifically, the additional parameters (#5190-#5207 in my case) represent the pockets.  The value written to that parameter represents the tool number corresponding with the tool.tbl tool # value.
    • PB does not use carousel.comp to manage the ATC.  The PB subroutines have internal shortest-path formula and M68/M64/M65/M66 statements to turn on/off outputs for ATC rotation.
  • I don't know how PathPilot handles tool/pocket numbers, but since PP pre-dates some of the tool table edits which appear to have fixed the issue the Probe Basic devs worked around, I suspect Tormach uses some other method.
    • Maybe some python file magic?
    • If anyone has PP ATC files/macros/subroutine files I'd love to take a look at them and see how Tormach manages the tool-pocket relationship.
The reason I'm blabbering about the above is the OP will need to be aware that switching from Axis to PB (or PP) will likely require a significant change in the ATC subroutine choreography and data storage.

And... that setting up an ATC in Probe Basic using carousel.comp (like in Axis) will also require significant changes to the PB subroutines.  PB is designed around a geneva mechanism with relay-controlled (dumb) motors.  Using a stepper/servo to control the ATC means either
  • incorporating carousel.comp in to the subroutines, or
  • treating the ATC as an axis

There are examples of both 'non-stock' Probe Basic ATC schemes posted in the forum.

TLDR: pick your GUI first, then we can help you get an ATC sequence that works with that GUI.
The following user(s) said Thank You: B.Reilly01, Aciera, Unlogic

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

More
12 Jun 2024 03:59 #302856 by spumco
I found the PathPilot ATC stuff.

All sorts of custom hal components, python files, and .ngc subroutines.  Plus the ATC itself is sent commands via a PWM signal (i.e. freq = pocket number).

It's hideously complicated. Yuck.

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

More
12 Jun 2024 11:37 #302869 by B.Reilly01
Thank you, I was operating with less than correct information. I was attempting to get everything running in Axis before switching to ProbeBasic (or pathpilot if I can/have to for the vertical UI). I've started work on converting the INI and HAL files for PB. I'm assuming I should remove references to Carousel.Comp if it's not in ProbeBasic. I'll start a new thread in QTPYVCP for the problems I run into with PB.

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

Time to create page: 0.115 seconds
Powered by Kunena Forum