Ir al contenido principal

Calibración de las alturas Z "Height" en las columnas A,B,C

Volver al menú de impresión 3D

Los valores aquí adoptados son para la Kossel Plus
(es algo más grande que la Kossel. Ver el manual o los vídeos para los valores).
Las explicaciones son para el sistema operativo Linux, aunque muchas cosas son válidas en cualquier SO.



Estamos usando el Marlin 1.1.4 Configurado por Héctor, pero esta en fase experiemental. Ver en este artículo


El fabricante ha escrito una actualización sugiriendo algunos cambios en el "Marlin" o "Firmware" de nuestra impresora. Revísalos. (actualización del 12/julio/2017)

El Delta Radius se calcula a partir de los otros parámetros.


Parámetros de la Kossel
(actualización del 12/julio/2017).  Bajar Marlin

#define MANUAL_Z_HOME_POS 300 // Distance between the nozzle to printbed after homing


// Center-to-center distance of the holes in the diagonal push rods.
#define DELTA_DIAGONAL_ROD 218 // mm

// Horizontal offset from middle of printer to smooth rod center.
#define DELTA_SMOOTH_ROD_OFFSET 152 // mm

// Horizontal offset of the universal joints on the end effector.
#define DELTA_EFFECTOR_OFFSET 31 // mm

// Horizontal offset of the universal joints on the carriages.
#define DELTA_CARRIAGE_OFFSET 22.6 // mm

// Horizontal distance bridged by diagonal push rods when effector is centered.
#define DELTA_RADIUS (DELTA_SMOOTH_ROD_OFFSET-(DELTA_EFFECTOR_OFFSET)-(DELTA_CARRIAGE_OFFSET))

// Print surface diameter/2 minus unreachable space (avoid collisions with vertical towers).
#define DELTA_PRINTABLE_RADIUS 90



Parámetros LA KOSSEL PLUS (actualización del 12/julio/2017). Bajar Marlin
 

#define MANUAL_Z_HOME_POS 295 // Distance between the nozzle to printbed after homing


 // Make delta curves from many straight lines (linear interpolation).
  // This is a trade-off between visible corners (not enough segments)
  // and processor overload (too many expensive sqrt calls).
  #define DELTA_SEGMENTS_PER_SECOND 100

  // NOTE NB all values for DELTA_* values MUST be floating point, so always have a decimal point in them

  // Center-to-center distance of the holes in the diagonal push rods.
  #define DELTA_DIAGONAL_ROD 271.5 // mm

  // Horizontal offset from middle of printer to smooth rod center.
  #define DELTA_SMOOTH_ROD_OFFSET 187 // mm

  // Horizontal offset of the universal joints on the end effector.
  #define DELTA_EFFECTOR_OFFSET 31 // mm

  // Horizontal offset of the universal joints on the carriages.
  #define DELTA_CARRIAGE_OFFSET 20.6 // mm

  // Horizontal distance bridged by diagonal push rods when effector is centered.
  #define DELTA_RADIUS (DELTA_SMOOTH_ROD_OFFSET-(DELTA_EFFECTOR_OFFSET)-(DELTA_CARRIAGE_OFFSET))

  // Print surface diameter/2 minus unreachable space (avoid collisions with vertical towers).
  #define DELTA_PRINTABLE_RADIUS 116


Aclaratoria
La combinación de la tres alturas "Z" en los tres motores en cada columna (A: Alfa, B=Beta, C=Gamma) originan los ejes X,Y,Z del sistema ortogonal. Es posible que en algún sitio lo identifique como X,Y,Z; lo correcto sería A;B;C.  Lo he hecho así por la comodidad de conectar el motor X en la posición X de la placa Trigorilla. En los manuales de la impresora les llaman X,Y,Z. Observación aportada por Marcos.

Requisitos, tener instalados  estos dos programas (sugiero en inglés, para poder seguir claramente cualquier tutorial).
  1. Printun (pronterface) --> Mueve los motores y otras cosas
  2. Arduino --> Modifica el firmware "Marlin" y permite cargarlo en la impresora.
PASO 1. Calibración de Z  (altura "Height") en el centro de la cama


Utilizando el software Printun (pronterface)
Programa que permite interactuar con la impresora desde el PC
Printun es un programa libre que  está escrito en python y se utiliza para las impresoras 3D , la CNC "Computer Numerical Control".



Altura en el centro de la cama 
de impresión coordenadas (X0Y0Z0)

Este punto estaría ubicado en el centro de la cama de impresión a una altura  Z de aproximadamente 0.08 mm, el espesor  de una hoja de papel. Esa altura permite que salga el filamento adecuadamente, para la boquilla de 0.2 mm.

Tomado de BQ
 Una altura correcta permite la salida  del material extruído adecuadamente (0.8 mm). Por eso colocaremos una hoja de papel entre la cama de impresión "bed" y el "hotend" (cama y final caliente). La altura de 0.8 mm corresponde a la altura ideal de separación para un nozzle de 0.2 mm. Muy alto caería haciendo curvas, muy bajo le costaría salir y forzaría el motor de extrusión, podría incluso rayar la cama o dañar el nozzle.


Vídeo de anycubic explicando el proceso (en inglés)
Deberás:
  • Conectar cable USB de la impresora al PC
  • Ejecutar el programa pronterface.exe (Window) o desde el directorio que tengas el programa desde la bash  ./pronterface.py (Linux).
  • Cambiar los siguientes parámetros en la interface: 
Window
Port: 3
@:250 000

Linux
Puerto "Port": /dev/ttyUSB0 (puede ser otro)
Velocodad "@":250 000

Aspecto al abrir el programa sin conectar al PC


  • Pinchar Conectar "Connect"
Aspecto conectado al PC, fíjate que el círculo tiene color
  •  Hacer un "Autohome" pinchando el ícono (Z+casa) o escribir en la entrada de datos G28+ Send.
  • Calibraremos la altura de la impresora en el eje Z en el centro de coordenadas de los tres ejes (X0,Y0,Zprederteminado). Para ellos escribiremos el siguiente código G1Z100 (posicionará la punta del hotend a 100 mm de la base (si estuviera calibrada), coordenadas X0Y0Z100). Luego iremos acercando progresivamente la punta a la placa con G1Z50, G1Z25, G1Z10, G1Z5. Cuidado si pega contra la cama la punta del hotend "nozzle", tener a mano el interruptor de la impresora para apagarla si esto sucede. Debes colocar una hoja de papel e ir bajando la punta del nozzle hasta que la hoja quede ligeramente atrapada entre la cama y el nozzle (ligera resistencia a ser movido con la mano). Anotar el valor que sale en el display LCD. 
  • Por ejemplo Z 0.4 (Cada impresora tendrá un valor diferente, dependerá del armado y de las piezas, este es un valor inventado, puede ser Z+ó - ojo dependiendo de esto harás lo siguiente)
  • Cálculo: 295-(0.46)=294.54 Ahora tendremos que hacer un cambio en el firmware preinstalado en tu placa principal Trigorilla). Hacer un "Auto home" y desconectar el pronterface. (Si no desconectas el pronterface no podrá conectarse el Arduino).
  • Deberás modificar este valor,  esta nueva altura en el firmware "Marlin" llamado aquí Anycubicplus.ico, para ellos deberás abrir este software desde la aplicación Arduino (tienes que tenerla en tú PC, asegúrate que sea una versión reciente), cambiarás la altura de (POS 300) ó (Plus"POS 295")  por la nueva altura "POS 294.4" (Este valor es un ejemplo la tuya será diferente). Esto lo puedes buscar en la pestaña que diga configuration.h en Arduino, si le das a buscar (ctrl+f) es mucho más sencillo entre tanto código).
  • Cargar se hace desde el programa Arduino, la impresora se reiniciará y el Arduino dirá "completado" o "done", según el idioma.
  • Volvemos a Printrun para verificar que todo este correcto.
Connect
G28 (Autohome)
Acercando la boquilla "nozzle" a la cama de impresión "bed"
G1Z10
G1Z1
G1Z0 (Prueba del papel)

Nota 1: este proceso deberás hacerlo de forma reiterada, para llegar al punto deseado. Normalmente con dos o tres veces es suficiente. Al principio es algo lioso, pero al ir cogiendo práctica este proceso lo harás muy rápido.

Paso 1.1) Eliminación de la concavidad o convexidad  de la cama

NOTA 2: Es muy probable que podamos tener la cama con una concavidad o convexidad  virtual, antes de proceder al nivelado en los tres puntos distintos es aconsejable modificar o corregir este problema, deberás entrar en este otro artículo ver



¿Qué es el firmware? Es nuestro Marlin.
Es un software que le indica a la impresora 3D como trabajar los motores, el extrusor (todo el hardware) con los dispositivos asociados a la electrónica. Es como la BIOS de un ordenador. Permite interpretar los archivos tuarchivo.gcode e imprimir las piezas.
"El firmware es un programa informático que establece la lógica de más bajo nivel que controla los circuitos electrónicos de un dispositivo de cualquier tipo. Está fuertemente integrado con la electrónica del dispositivo, es el software que tiene directa interacción con el hardware, siendo así el encargado de controlarlo para ejecutar correctamente las instrucciones externas.

En resumen, un firmware es un software que maneja físicamente al hardware.
El programa BIOS de una computadora es un firmware cuyo propósito es activar una máquina desde su encendido y preparar el entorno para cargar un sistema operativo en la memoria RAM." Fuente https://es.wikipedia.org/wiki/Firmware

El firmware proporcionado generalmente se ha depurado y modificado. Pero inevitablemente hay pequeñas desviaciones todavía. Así que algunos parámetros críticos que afectan la calidad de impresión necesitan ser ajustados en cada caso.  

Antes de comenzar, conecte la impresora con la fuente de poder (B14, del manual), el ventilador de refrigeración del radiador 4010 debe estar encendido si la temperatura es superior a 6ºC, de lo contrario, revise el cableado y fíjelo. Este ventilador es importante para eliminar la posibilidad de obstrucción de la boquilla.


2) Nivelado de las alturas en tres puntos distintos de la cama (son cercanos a cada torre A,B,C)

Entrar en (Linux) por la bash en el siguiente directorio y ejecutar el pronterface

cd /home/tu_usuario/Pronterface/Printrun
./Pronterface.py


Existen dos formas de nivelar: nivelar automáticamente y nivelar manualmente.  
El nivelado automático es descartado en esta versión debido a sus grandes errores  y los ajustes repetidos antes de cada impresión.
 
Para el nivelado manual, se proporciona un modelo de prueba circular en el enlace anterior.

Pieza con el tornillo de ajuste A07 (Belt tensioner)
Cuando imprime la primera capa revise las alturas de la boquilla en la posición de los motores X, Y y Z, y altura de la boquilla se puede ajustar cambiando la estanqueidad del tornillo en la parte superior de lo tensores de correa correspondientes (consulte la Fig. 10). Debido a que la presión de este tornillo puede modificar  la distancia entre los interruptores límites y el efector, cambiando así la altura de la boquilla.

Mover los interruptores límites  "limit switches" o los bloques de parada del tope "topside stop block":


HOJA APRETADA

Si la hoja de prueba entre la boquilla "nozzle" y el cama "bed" queda muy apretada, tienes dos posibilidades:
1) Tornillo de ajuste deberás bajar el tornillo (sentido horario).
2) Mover hacia arriba el topside stop block.


HOJA SUELTA

Si la hoja de prueba entre la boquilla "nozzle" y el cama "bed" queda muy suelta, tienes dos posibilidades:
1) Tornillo de ajuste deberás subir el tornillo (sentido anti-horario).
2) Mover hacia abajo el topside stop block.



Existen tres interruptores límites uno en cada torre.
Topside stop block con interruptor límite
 
Específicamente, apriete este tornillo cuando la boquilla es demasiado alta, y suelte este tornillo cuando la boquilla esté por debajo. Utilizando este método, la máquina no necesitará volver a nivelar en un tiempo relativamente largo.



Es muy útil crear en pronterface unos macros con la posición de estos puntos, 


CREAR MACRO ruta: /settings/macros/new

ELIMINAR MACRO  ruta: /settings/macros/escoges , borra su contenido y dale guardar, te preguntará si deseas eliminarlo, escogerás si.



Puntos importantes en la calibración "Kossel"
  • G28 (auto home)
  • G1X0Y60Z0 (1er punto, TORRE Z ó A) Mover microinterruptor o topside stop block
  • G28 (auto home)
  • G1X52Y-30Z0 (2do punto, TORRE Y ó B)  Mover microinterruptor o topside stop block
  • G28 (AUTOHOME)
  • G1X-52Y-30Z0 (3er punto, TORRE X ó C)  Mover microinterruptor o topside stop block


Puntos importantes en la calibración "Kossel Plus"
  • G28 (auto home)
  • G1X0Y90Z0 (1er punto, TORRE Z ó A) Mover microinterruptor o topside stop block
  • G28 (auto home)
  • G1X78Y-45Z0 (2do punto, TORRE Y ó B)  Mover microinterruptor o topside stop block
  • G28 (AUTOHOME)
  • G1X-78Y-45Z0 (3er punto, TORRE X ó C)  Mover microinterruptor o topside stop block

Puntos de calibración en la Kossel Plus de  Anycubic. Medidas en mm. Realizado con Geogebra "software libre"



Mi configuración

#define BED_CENTER_AT_0_0

// Manually set the home position. Leave these undefined for automatic settings.
// For DELTA this is the top-center of the Cartesian print volume.
//#define MANUAL_X_HOME_POS 0
//#define MANUAL_Y_HOME_POS 0
#define MANUAL_Z_HOME_POS 294.7 // Distance between the nozzle to printbed after homing

*************************************************************


//===========================================================================
//============================== Delta Settings =============================
//===========================================================================
// Enable DELTA kinematics and most of the default configuration for Deltas
#define DELTA

#if ENABLED(DELTA)

  // Make delta curves from many straight lines (linear interpolation).
  // This is a trade-off between visible corners (not enough segments)
  // and processor overload (too many expensive sqrt calls).
  #define DELTA_SEGMENTS_PER_SECOND 100

  // NOTE NB all values for DELTA_* values MUST be floating point, so always have a decimal point in them

  // Center-to-center distance of the holes in the diagonal push rods.
  #define DELTA_DIAGONAL_ROD 271.5 // mm

  // Horizontal offset from middle of printer to smooth rod center.
  #define DELTA_SMOOTH_ROD_OFFSET 187 // mm, chito normal 186, hay que bajarlo (concavo)

  // Horizontal offset of the universal joints on the end effector.
  #define DELTA_EFFECTOR_OFFSET 31 // mm

  // Horizontal offset of the universal joints on the carriages.
  #define DELTA_CARRIAGE_OFFSET 20.6 // mm

  // Horizontal distance bridged by diagonal push rods when effector is centered.
  #define DELTA_RADIUS (DELTA_SMOOTH_ROD_OFFSET-(DELTA_EFFECTOR_OFFSET)-(DELTA_CARRIAGE_OFFSET))

  // Print surface diameter/2 minus unreachable space (avoid collisions with vertical towers).
  #define DELTA_PRINTABLE_RADIUS 116

Volver al menú de impresión 3D

Comentarios

Publicar un comentario