Difference between revisions of "ZTATP"

From Jubilee
Jump to navigation Jump to search
Line 39: Line 39:
 
=== Runtime parameters ===
 
=== Runtime parameters ===
 
* <code>-duet ''xxx.xxx.xxx.xxx''</code> or <code>-duet ''hostname''</code>
 
* <code>-duet ''xxx.xxx.xxx.xxx''</code> or <code>-duet ''hostname''</code>
 +
* <code>-touchplate ''x.xxx y.yyy''</code>
 +
* <code>-pin ''pin_name''</code>
 +
* <code>-tool ''tool_number''</code>
  
 
== Entering the coordinates of the touch plate ==
 
== Entering the coordinates of the touch plate ==

Revision as of 15:41, 23 August 2020

Overview

  • ZTATP = Z Tool Align with Touch Plate.
Partially automated process that uses a touch plate to calculate ‘G10 Znnn’ commands that go in your config.g to correctly set the Z alignment for tool-to-tool correct behavior when printing. It also sets the bed-to-tool-zero spacing!
  • TAMV = Tool Alignment with Machine Vision.
Fully automated process that uses a camera to calculate ‘G10 Xnnn Ynnn’ commands that go in your config.g to correctly set the X Y alignment for correct tool-to-tool behavior when printing.

Requirements

  • Rasberry Pi 3B or 4B, with USB attached camera (no Picam at this time).
  • Almost any webcam with auto-exposure and the ability to focus within a few centimeters of the lens will work. Logitech C270 is one that is known to have a threaded lens and a case that can be removed and replaced with a printed case.
  • A Duet printer, reachable from the Pi by network, running V2 or V3 firmware
  • May run on Duet3+Pi; does NOT require that configuration, run on any Pi.

Differences between ZTATP on RRF2 and RRF3

RRF 2.x.x

ZTATP will default its probe input pin definition for the touch plate to the Z_PROBE_IN and GND pins, and these currently cannot be re-assigned to another endstop on an RRF2 board. This may be changed in a later release.

The exact definition of this probe type in RRF 2.x.x is M558 P5 I1 F200 H50

RRF 3.x.x

ZTATP will default the probing pin input to !io5.in (notice the inverted logic). You can re-assign this input by specifying an RRF3-style input name to any other input pin you want that would be compatible. Keep in mind, however, that ZTATP uses a normally open endstop configuration (usually RRF has normally closed endstops), and the circuit will close and trigger the endstop once the nozzle tip comes into contact with the probe plate.

Installation

Software installation and setup

Follow the installation steps for TAMV here.

Hardware installation and wiring

  • ZTATP requires a conductive touchplate that is fixed to the bed that can be reached by BOTH the nozzle on each and every tool, and by the Z-Probe. This can be slightly (a few mm) above or below the actual printable surface of the bed.
  • The touch plate must be grounded, to any ground in the Duet system.
  • There are two ways to wire the nozzles:
    • Each nozzle has a wire, leading back to a “Y” harness that leads them all into ‘io5.in’ (or any other endstop connector, if you change the script.
    • OR
    • You can arrange any number of “spring” mechanisms that contact the nozzle just before the nozzle contacts the touchplate.

Runtime parameters

  • -duet xxx.xxx.xxx.xxx or -duet hostname
  • -touchplate x.xxx y.yyy
  • -pin pin_name
  • -tool tool_number

Entering the coordinates of the touch plate

Edit the following in the beginning of the script:

################################
# Edit these for your printer. #
################################
tl = [0,1]            # List of tools to be compared
yc = 225              # Y line that will clear parked tools when moving in X

xz = 288              # X coord of tool nozzle over flat plate to probe Z. 15x15mm area recommended.
yz = 285              # Y coord of tool nozzle over flat plate to probe Z. 15x15mm area recommended.

# Note: The particular probe command we use does NOT apply probe offsets. 
xp = 253              # X coord of Z-Probe over flat plate to probe Z. 15x15mm area recommended.
yp = 340              # Y coord of Z-Probe over flat plate to probe Z. 15x15mm area recommended.

Note: The printer MUST define Z with a PROBE in config.g. Even if it is really an endstop switch, it is OK to define that as a probe.

Running

  • No VNC or graphics needed.
  • cd to the directory where TAMV was installed. ./ZTATP.py

Everything is automated, the ultimate output is G10 commands (containing only a Znnn) that should be placed in config.g.