Improvements to the Hemera Tools

Since building my first Hemera tool controlled by a Duet3D Tool Board, I have built a second one and made some improvements.

Improved dock brace

The Hemera tool can be made more rigid by improving the bracing between the tool plate and the dock. The same printed design used for the first dock brace will fit in the vacant position, so initially I just added a second brace as shown here. However, I have now replaced this by a single large dock brace, described in Part 4.

Lubricated docking pins

The Hemera tools are quite heavy and this can result in them tending to judder as they are pushed back over the docking pins. A small amount of silicone grease on the pins (including on the the undersides) helps.

Dock sense switches

RepRapFirmware 3.1 has a conditional GCode facility so that operations such as homing and changing tool can be made to depend on the state of the machine. By adding a dock sense switch to each tool, we can check that tools are docked when they are supposed to be.

Some Tool Changer owners have mounted switches on the docks to sense when tools are present. However, when Duet 3 electronics and tool boards are used, you can save wiring by mounting the dock sense switch on the tool itself and reading the switch via the CAN bus.

The switch I chose was Omron type D2FD-01L30-1T. This is a subminiature microswitch with low activation force and gold plated contacts designed for low current operation.

It turns out that if it were mounted directly on the PCB, it would be just the right height to trigger when the acrylic panel pushes against it as the tool is docked. Maybe in a future revision of the Duet 3 Tool Board we will extend the PCB slightly and add holes to add the microswitch. But for now I soldered wires to the ends of the pins, then attached the switch to the PCB using epoxy resin so that the pins were hanging over the edge.

The most convenient connector to connect the switch to is the adjacent 4-pin Z probe connector. Use the two middle pins, GND and IO_0_IN. I used the normally-open switch contacts so that a disconnected switch looks like a tool that is not docked.

Here’s how I configure the dock switches on my Hemera tools, which are tools 2 and 3 with CAN addresses 22 and 23. I chose to assign GpIn 2 and GpIn 3 to the tool 2 and tool 3 docking switches, leaving GpIn 0 and GpIn 1 free for future tool 0 and tool 1 docking switches.

; Set up the dock indicator switches on the Hemera tools. These are wired NO so invert the pin.
M950 J2 C"22.!^"			; GpIn 2 = tool 2 dock switch
M950 J3 C"23.!^"			; GpIn 3 = tool 3 dock switch

I also added created a macro called Report Docking Status containing these lines:

while iterations < 4
  if iterations >= #sensors.gpIn || sensors.gpIn[iterations] = null
    echo "Tool", iterations, "has no docking switch"
  elif sensors.gpIn[iterations].value = 0
    echo "Tool", iterations, "is not docked"
    echo "Tool", iterations, "is docked"

This macro assumes that GpIn pins 0-3 are reserved for the dock switches for tools 0-3 respectively. Here is an example of the console output it produces:

06/06/2020, 16:04:07

M98 P”0:/macros/Report dock status”
Tool 0 has no docking switch
Tool 1 has no docking switch
Tool 2 is docked
Tool 3 is not docked

I also amended the homeall.g file to prevent homing being attempted if a tool is not docked:

; homeall.g
; called to home all axes

while iterations < 4
  if iterations < #sensors.gpIn && sensors.gpIn[iterations] != null && sensors.gpIn[iterations].value = 0
    M291 S1 T5 P{"Please return tool "^iterations^" to dock before homing"} R"Cannot home"

M98 Phomec.g			; Home C (ToolHead)
M98 Phomey.g			; Home Y
M98 Phomex.g			; Home X
M98 Phomez.g			; Home Z

G1 X0 Y-148 F15000		; Park

The docking switches could also be used to verify that tools are properly docked after tool changes; but I will leave that for another day.

In Part 4 I add filament monitors to the Hemera tools.

This entry was posted in 3D printing and tagged , , , . Bookmark the permalink.

2 Responses to Improvements to the Hemera Tools

  1. Sam says:

    Anyone knows how to tighten a clutch on an aztec trim servo?, pulley turns but won’t Cary the cable, I have turned the adjustment nut, but I can’t hang on to the Pulley, any tricks one can share would be greatly appreciated

  2. Pingback: Converting the E3D Tool Changer to Duet 3 with Hemera Tools (Part 2) | David Crocker's Solutions blog

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s