3D printer with multiple extruders

More
13 Feb 2018 22:31 #105843 by RichJordan
Hi all,

I have spent a bit of time searching both the web and the forum for any indication of anyone trying this previously, if I've missed an obvious link then my apologies for starting a new topic.

I am exploring how best to operate 3 extruders on a 3D printer run by LinuxCNC. Probably the simplest thing I can see is to run each extruder as a separate axis, A, B and C. This way the positions for each of the axis are maintained as tool changes are executed. However, it seems that very few slicer programs can generate this kind of G code.

So looking for a more elegant solution I would like to be able to call a tool change (M6 Tn) and manage all extrusions via the A axis. I can see that behind the scenes, axis positions need to be stored and swapped to be available for the A axis. Also stepper IO needs to be rerouted to a different stepper driver. Can this be done within LinuxCNC? If so how do I go about it.

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

More
16 Feb 2018 03:20 #106002 by calvin.d
if you have a driver for each extruder, you could make use relays to switch the step and directions lines, control it with GPIO pins and just set up your tool change to push a pin high to enable step and direction to each motor. If you are comfortable with electronics you could do this with a handful of transistors. I want to do a similar thing in the future as well, have you thought about how you are going to do your temperature control ?

what are you using for general hardware ? Parallel port or something in the MESA family

Calvin

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

More
17 Feb 2018 21:56 #106101 by RichJordan
Hi Calvin,

Thanks for your reply. I like your suggestion about switching drivers with relays or transistors. This is how I hoped to achieve this too. The bit I can't figure out yet is how to store the position of extruder 1 and load the position of extruder 2 into the A axis position register. The reason for this is my gear uses syringes for printing food which have finite volumes that I need to keep track of during the print.

Currently I'm using a parallel port as I have to supply 3 of these machines, but if they become too limited I have a MESA 5i25 (or whichever is their super parallel port board).

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

More
17 Feb 2018 22:38 #106105 by Grotius
@RichJordan,

I have an idea. How is does your program output looks like?
Do you need to store postion's for each extruder? Or is it just stop the food supply by motor?
And how is your program procedure with the 3 extruders?

I had a similar project, and had a nice solution for it.
The following user(s) said Thank You: RichJordan

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

More
18 Feb 2018 03:52 #106110 by rodw
Do your extruders operate one at a time or can you operate them in unison? I have some ideas to do it without external hardware. Your offsets could be managed by the tool table and you could swap the stepgen outputs to different stepper motors based on the selected tool.
The following user(s) said Thank You: RichJordan

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

More
18 Feb 2018 05:17 #106112 by tommylight

Your offsets could be managed by the tool table and you could swap the stepgen outputs to different stepper motors based on the selected tool.


That is the way to go, or do a search on the forum as some members here have routers with more than one spindle, and technicaly that is the same thing you need.
The following user(s) said Thank You: RichJordan

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

More
18 Feb 2018 22:14 #106154 by RichJordan
Grotius,

I do need to store positions for each extruder. I hope to call a tool change (Tx M6) and then extrude using G1 Ax.xx, call another tool change and then extrude on a different extruder with the same G1 Ax.xx command.

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

More
18 Feb 2018 22:27 #106156 by RichJordan
Rodw and tommylight, thanks for your feedback/ideas, I have searched for the multi spindle work and found this post which looks promising:
forum.linuxcnc.org/10-advanced-configura...thon-lessons-learned

I have a lot of learning to do so links to documentation that will be helpful such as how to remap stepgen outputs on an M6 would appreciated.

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

More
18 Feb 2018 22:57 #106158 by rodw
I know nothing about the tool changer side of things.

If you have a look through your hal file, you will see that there are some axis.A.xxxx signals mapped to stepgen.N signals. So your goal is to change those mappings to a different stepgen number. There are probably other ways but I think if I were doing it, I would write a component that received a 1,2,3 to select your extruder number and select the correct stepgen. If you wanted to select the extruder from gcode, M68 would do the job nicely. Then roll it all up into a toolchanger that knows the extruder offsets.

I'd have to think it through a bit but as inputs, you probably would have the selector pin and a set of Axis.A pins. and as outputs you would have 3 sets of stepgen signals. Then you just copy the inputs to the correct set of outputs that point to the stepgens. There may also need to be a feedback signal from the stepgens back to axis.A to complete the loop.

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

More
28 Feb 2018 17:32 #106727 by andypugh
Can any of the slicers output the extrusion feed in incremental rather than absolute mode? That would make things much simpler.

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

Time to create page: 0.169 seconds
Powered by Kunena Forum