LulzBot Automatic Tool Head Changing System

We developed a system which will allow our upcoming 3D printers to change their tool heads during a print. Thus far, we have produce two successful prototypes. It uses the OpenGrab electropermanent magnet for the attachment mechanism.

The tool head PCB has a MAX31855 for thermocouple measurement, 25AA02UIDT EEPROM for storing calibration data, pass-through traces for switching loads, and a spot for a quadrature rotary encoder to sense filament movement.

The project’s Git repo can be found here.

Here’s a video helping to visualize the magnetic field produce by the electropermanent magnet with the use of ferrofluid. Specifically, when the net external magnetic field is zero, when the AlNiCo is saturated with all moments aligned and the net external magnetic field is non-zero, while being gaussed, and while being de-gaussed:

Here’s a demo video of our first print while keeping the toolheads heated in the docking station:

Here’s a demo video our first prototype during a print:

Here’s the layout of the tool head PCB I designed in KiCad:


Figure 1: Tool Head PCB Layout

Here’s the schematic:

Screenshot from 2017-03-12 22-02-28

Figure 2: Tool Head PCB Schematic

Here’s the carriage connector PCB with spring-loaded connectors (don’t worry, the traces aren’t being masked/exposed):


Figure 3: Carriage Connector PCB Layout

Here’s a photo showing the tool head PCB in use during a print:


Figure4: The Tool Head PCB in Action

The main electronics on this machine is the Replicape rev B3A (Trinamic TMC2100) and BeagleBone Black rev C using the TI AM3358 1GHz 32-bit ARM Cortex A8 and 512MB DDR3 as seen in Figure 5. The OS being Debian, running the Redeem Linux daemon, and an OctoPrint web server.


Figure 5: Main Electronics