Multiple tools on the CNC

More
04 Apr 2019 22:01 #130317 by Peterdeleu
Hi,

I'm new to Linuxcnc.
Currently I'm running LinuxCNC on a PC not connected to a machine.
I'm working on a retrofit with Mesa hardware.
My "old" CNC has a head with 18 different tools. (Biesse Rover 18)
Each tool is fixed on a pneumatic cilinder. This cilinder presses the toon down when selected.
So there is no tool change. Every tool has a fixed place on the toolhead.
My question is, If I change the X, Y and Z in the tool table in LinuxCNC for each tool, will this result in a "correction" so that the chosen tool is on the right location during milling?

Regards
Peter

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

More
05 Apr 2019 02:08 - 05 Apr 2019 02:08 #130324 by Todd Zuercher
Yes, provided you enable the G43 tool offset.
Last edit: 05 Apr 2019 02:08 by Todd Zuercher.

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

More
08 Apr 2019 08:56 #130487 by Peterdeleu
So this means, if I use G43, the offset parameters in the tool table will be used for the last loaded tool or "G43 Hx" to specify the tool. This until G49 is used the cancels all the tool offsets.
Ok great, one step further :) tx.

The next challenge is to use Classicladder. This is still something abstract to me. With Classicladder I should be able to manipulate the outputs on the 7I77, so that the right tool is pushed downwards. (by a pneumatic cilinder)

The next question is, Do I have to write some kind of Classicladder marcro and call this macro from within the CNC program?
How is Classicladder in LinuxCNC. Is this loaded by default during the startup of LinuxCNC, or does it have to be specified, .... ?

Sorry for those "questions"... I'm not lazy, but it helps me to get an overview of how things are working before I dig into the details ;)

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

More
08 Apr 2019 10:37 #130490 by pl7i92
Replied by pl7i92 on topic Multiple tools on the CNC
the Tooltable provides as from Fanuc the Length of the TOOL Fixd to Htoolnumber
and the Diameter to D where D number can be used from different tools
in Fanuc its Fixed to 1,10,20,30 all for tool Nr 1
Linuxccnc is free in Numbers
see here to be confirmed for CRC use

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

More
08 Apr 2019 13:57 #130512 by Todd Zuercher

So this means, if I use G43, the offset parameters in the tool table will be used for the last loaded tool or "G43 Hx" to specify the tool. This until G49 is used the cancels all the tool offsets.
Ok great, one step further :) tx.

The next challenge is to use Classicladder. This is still something abstract to me. With Classicladder I should be able to manipulate the outputs on the 7I77, so that the right tool is pushed downwards. (by a pneumatic cilinder)

The next question is, Do I have to write some kind of Classicladder marcro and call this macro from within the CNC program?
How is Classicladder in LinuxCNC. Is this loaded by default during the startup of LinuxCNC, or does it have to be specified, .... ?

Sorry for those "questions"... I'm not lazy, but it helps me to get an overview of how things are working before I dig into the details ;)


Classicladder comes installed with Linuxcnc. To load Classicladder your configuration files (ini and hal) have to be set up to use it. There are example simulation configs included with Linuxcnc demonstrating using Classicladder. For instructions how to setup and use Classicladder read the pertinent sections of the Linuxcnc documentation. However using Classicladder isn't usually nessisary for setting up a tool changer or other things in Linuxcnc. (There is more than one way to skin a cat.) But Classicladder can be a useful tool if you are used to programming PLC logic.

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

More
08 Apr 2019 15:42 #130520 by Peterdeleu
How can I instruct LinuxCNC to use a different tool?
In the mean time I know that I can us T1, T2, T3, ... with an offset given in the tool table.
But my CNC needs to lower the correct tool by use of a pneumatic cilinder.
All the tools (I think 17) are fixed on one head. (see picture).
I need to tell LinuxCNC to lower the tool and use the correct offsets.
The pneumatic cilinders will be connected to an output on the 7I77.

I've read the LinusCNC documentation, but couldn't find the answer.
I'm new to LinuxCNC, and it looks like there's much possible, but much is hidden ;)
Attachments:

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

More
08 Apr 2019 17:36 #130521 by Todd Zuercher
I know they are not step by step instructions to do exactly what you want to do but all the basics should be there that you need to get what you want done. Are these helpful?
wiki.linuxcnc.org/cgi-bin/wiki.pl?ToolChange
wiki.linuxcnc.org/cgi-bin/wiki.pl?Classi...tool_changer_program

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

More
09 Apr 2019 22:26 #130577 by andypugh
Replied by andypugh on topic Multiple tools on the CNC
I think you can do it all in HAL.

linuxcnc.org/docs/devel/html/man/man9/demux.9.html

You can (pretty much) just connect iocontrol.0.tool-number to the demux.0.sel-u32 pin.
The only minor problem is that the tool number is signed, to you need to convert it before passing to the demux.

linuxcnc.org/docs/devel/html/man/man1/iocontrol.1.html
linuxcnc.org/docs/devel/html/man/man9/conv_s32_u32.9.html

In the HAL file:
loadrt demux personality=18
loadrt conv_s32_u32 count=1
addf demux.0.servo-thread
addf conv_s32_u32.0 servo-thread
net tool-num  icontrol.0.tool-number => conv_s32_u32.0.in
net tool-u32 conv_s32_u32.0.out => demux.0.sel-u32
net tool1 demux.0.bit-01-out => parport.0.bit-00-out
net tool2 demux.0.bit-02-out => parport.0.bit-01-out
net tool3 demux.0.bit-03-out => parport.0.bit-02-out
net tool4 demux.0.bit-04-out => parport.0.bit-03-out
...

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

More
10 Apr 2019 15:37 #130602 by pl7i92
Replied by pl7i92 on topic Multiple tools on the CNC
code misstype
this mightr work
loadrt demux personality=18

loadrt conv_s32_u32 count=1

addf demux.0  servo-thread
addf conv-s32-u32.0 servo-thread

net tool-num iocontrol.0.tool-number => conv-s32-u32.0.in

net tool-u32 conv-s32-u32.0.out => demux.0.sel-u32
net tool1 demux.0.out-01 # => parport.0.bit-00-out
net tool2 demux.0.out-02 # => parport.0.bit-01-out
net tool3 demux.0.out-03 # => parport.0.bit-02-out
net tool4 demux.0.out-04 # => parport.0.bit-03-out

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

More
10 Apr 2019 16:28 - 10 Apr 2019 17:09 #130605 by Peterdeleu
Tx !!!

If I understand this..
I have to add the above code to the HAL file.
And then if I choose tool 1 (T1) in the CNC program, the port 00 will be activated?


And another question :

Thi encoder pins on the 7i77 are marked this way :


Pin 1 : QA0
Pin 2 : /QA0
Pin 3 : GND
Pin 4 : QB0
Pin 5 : /QB0
Pin 6 : +5V
Pin 7 : IDX0
Pin 8 : /IDX0

The pins on the encoder (BS193/500) :

/Z
/B
/A
GND
+12V
Z
B
A

I think this is the way to connect these both:

Pin 1 : QA0 - A
Pin 2 : /QA0 - /A
Pin 3 : GND - GND
Pin 4 : QB0 - B
Pin 5 : /QB0 - /B
Pin 6 : +5V - +12V ( I need 12V for the encoder, so i have to upscale the 5V to 12V)
Pin 7 : IDX0 - Z
Pin 8 : /IDX0 - /Z

Is this correct?

Regards
Peter
Last edit: 10 Apr 2019 17:09 by Peterdeleu.

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

Time to create page: 0.240 seconds
Powered by Kunena Forum