Yes that is my video, I posted another one also where I am cutting a few tool forks for spares. trying to show how much machining area this takes up. I had it set up to run 4 pieces at once but 9" was too much and had to only do 3 with 8" stock.
I am glad I did this, I had some unanswered questions about the others I saw and was able to get the answers I needed and learned a lot along the way.
Now having done it I would warn anyone who wants to copy or do something similar that this is really not practical at all, the center of my tools are .1" from extreme X+ and I still loose more than 5" of X work area due to the tool rack being able to make contact with the head of the mill. it takes manual edits to the G-code file for each tool and if you are like me and not very familiar with writing G-code mistakes can be made very easily, luckily I did not crash and did learn what I needed to make the adjustments in the files to run successfully. I don't do multiple parts much but maybe if I did it would be worth the trouble.
The subroutines & tool changes can be added in Fusion using manual NC function, " o<100> call " etc.. and the code to tell pathpilot the tool has changed " M61 Qxx G43 Hxx " is added after a new tool is loaded. and the M6 tool change lines generated by Fusion 360 have to be deleted or the machine will pause and wait for user input. I forgot to turn off the M01 break in Pathpilot in that video so it paused anyway but now I know....
This is how I load a tool in the spindle (you would have to edit it to your specific application)
Code:
(LOAD TOOL SLOT 1)
o<100> sub (subroutine Call)
G30
M05 (spindle off)
G49 (cancel Tool Offset)
G59.1 (Atc rack WCS)
M64 P0 (Open PDB)
G0 Y0 F35 (tool 1 Y Position)
G0 X-2.2 (rest position X)
G1 Z1.75 F25 (Spindle clear Z height)
G1 X0 F35 (Move X to home)
G1 Z0 F25 (Tool fork Z height)
M65 P0 (Close PDB )
G04 P1 (pause 1 sec)
G1 X-2.2 F30 (rest position X)
G30
G54
o<100> endsub (end subroutine)
This is what I did to park a tool (you would have to edit it to your specific application)
Code:
(PARK TOOL 1)
o<101> sub (subroutine Call)
G59.1 (Atc rack WCS)
M05 (spindle off)
G49 (cancel Tool Offset)
G1 Z0 F35 (Tool fork Z height)
G0 Y0 F35 (tool 1 Y Position)
G0 X-2.2 (rest position X)
G01 X0 F35 (Move X tool to home)
M64 P0 (Open PDB )
G04 P1 (pause 1 sec)
G1 Z1.75 F25 (Raise spindle above tools)
G0 X-2.2 (rest position X)
o<101> endsub (end subroutine)
I probably have a lot of redundant code in these but was trying to be safe and not break something. & I do not know that this is the correct way for these to be done, knowing very little about g- code programming, but they did work for me
I was having a small problem, PathPilot showed it was not switching back to G54 in the tool path window when I loaded my file, but easily corrected to manually add G54 where needed, I may have that sorted now where I added it to the end of the tool loading routine but hadn't tested it .
I feel like this whole thing is dangerous, basically I've mounted a fixed obstacle in the middle of the table & work area and try to machine around it without crashing, after doing it I don't feel like it is worth the trouble and I am still amazed by the whole CNC process when I machine something so I will probably be standing there watching the machine run anyway but if I had 500 parts to run it might be different.
It was a good project glad I did it and learned so much about G-code and learned Ive got al lot more to learn.