En mi segundo intento de crear unos automatismos para automatizar una vivienda, del que daré detalles más adelante, llego un momento en el que necesite crear mis propias piezas de plástico para albergar la electrónica, mas concretamente para los interruptores táctiles que estoy diseñando.
Había estado evitando comprar una impresora 3D por su tamaño, las pequeñas ya prefabricadas son caras tanto la propia impresora como los consumibles (algunas incluso tienen chip NFC en el filamento como las impresoras de tinta ?), y las «monteselas usted mismo» son muy voluminosas y cutres con todos los cables colgando. Sin embargo necesitaba una así que fui investigando, primero me interese por una Anet E10 porque venia ya montada aunque era muy grande y el que la electrónica estuviera a un lado separada de la mecánica por cables era mas una desventaja que otra cosa ya que no dispone de un conector principal para separar ambas partes rápidamente, finalmente me interese por las impresoras deltas hasta ver la Anycubic Kossel que termine comprando.
Anycubic Kossel Pulley
Las ventajas de la impresora por la que me decante, bajo mi punto de vista, es que es mucho más compacta por ser de tipo delta en vez de cartesiana, coreXY o cualquier otra variante de impresora 3D, tanto que puedo guardarla sobre una estantería de 30cm de profundidad, en contra tienen su altura que con diferencia es la mayor de todos los tipos de impresora llegando en este modelo a los 69cm de los cuales la mitad aproximadamente están dentro de la área de impresión y el resto es espacio perdido que ocupa la mecánica, en esta imagen se ve bien:
En un principio había pensado cortar los perfiles de aluminio que forman las tres torres para acortar unos 15cm la altura pues no necesito imprimir piezas tan altas… aunque finalmente lo he descartado ya que en la estantería no molesta.
Además del tamaño también tiene como ventajas su simplicidad mecánica y eléctrica, gran parte se queda oculta dentro de la base y el resto oculto dentro de los perfiles de aluminio (cables de los finales de carrera) o en una manquera de plástico en espiral que sujeta todos los cables del extrusor/cabezal de impresión.
Uno de los mayores contras que tiene esta impresora es que es bastante más difícil de calibrar que las impresoras de tipo cartesiano ya que en esta cualquier cosa que ajustes afecta al resto. Desde un primer momento conseguí calibrarla a la primera para imprimir cosas de pequeño tamaño, de unos 5cm3, sin embargo al imprimir piezas más grandes tenia problemas con la altura del cabezal sobre el cristal, o había demasiada separación o había tan poca que chocaba, eso lo solucione actualizando el firmware Marlin a una versión mas reciente con función de auto calibrado junto a un sensor que acople al extrusor.
Durante el montaje además de asegurarnos que dejamos todo bien atornillado y a la misma altura, en el caso de los finales de carrera, también es necesario calibrar la tensión a la que funcionan los drivers de los motores, en mi caso para los drivers de los ejes XYZ la tensión que configure fue de 0,775V exactos en cada driver, para el driver del extrusor fue de 0,880V.
Firmware
La impresora utiliza el firmware Marlin para funcionar, este se graba en la placa base mediante el IDE de Arduino (ya que la placa base es un Arduino Mega + Shield de impresión todo en uno). Una vez descargado hay que adaptar el código para nuestra impresora. En mi caso baje uno ya configurado por HellSingCoder y lo termine de afinar con las medidas de mi impresora. Estos son los parámetros que modifique:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 |
//El nombre de la impresora que aparecerá por pantalla: #define CUSTOM_MACHINE_NAME "Anycubic Kossel" //Para desactivar la cama caliente (la mía no tiene): #define TEMP_SENSOR_BED 0 //Valores que devuelve el comando "M303 E0 S200 C8" que realiza un test de temperaturas del extrusor: #define DEFAULT_Kp 23.54 #define DEFAULT_Ki 1.76 #define DEFAULT_Kd 78.58 // Hace que después de un homing el el cabezal baje unos 10cm: #define DELTA_HOME_TO_SAFE_ZONE //Habilita el menú de calibración en la pantalla de la impresora: #define DELTA_CALIBRATION_MENU //Es la longitud de las varillas que sujetan el cabezal a la torre, la medida es desde el centro de uno de los agujeros al otro: #define DELTA_DIAGONAL_ROD 217.5 // mm //Es la altura total desde el homing hasta el cristal, lo devuelve la auto calibración y no es necesario grabarlo en el código: #define DELTA_HEIGHT 332.2 //get this value from auto calibrate //Es el radio, también lo devuelve el auto calibrado y no es necesario tocarlo salvo que se quiera tener ahí por tenerlo apuntado en algún lado: #define DELTA_RADIUS 95.83 //mm Get this value from auto calibrate //Indican si se debe invertir el funcionamiento del final de carrera -Z, en caso del sensor resistivo tienen que estar a true: #define Z_MIN_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop. #define Z_MIN_PROBE_ENDSTOP_INVERTING true // set to true to invert the logic of the probe. //Indica que hay conectado un sensor/final de carrera en los pines -Z #define Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN //Indica la velocidad a la que se hace el calibrado, muy rápido puede hacer que el sensor se caiga si es de quita y pon: #define XY_PROBE_SPEED 4000 //Indica que para cada punto de medición se hará una doble medición: #define PROBE_DOUBLE_TOUCH //Indica la altura que ha de subir el cabezal entre punto y punto a medir, con el sensor resistivo 10mm es mas que suficiente: #define Z_CLEARANCE_DEPLOY_PROBE 10 // Z Clearance for Deploy/Stow //Indica la altura a subir entre las mediciones dobles: #define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points //Indica el radio en el que se pueden hacer mediciones con la auto calibración, con el sensor resistivo se puede poner a 0 pero a mi me choca con el soporte de la lampara USB y lo puse a -20: #define DELTA_PROBEABLE_RADIUS (DELTA_PRINTABLE_RADIUS - 20) //Permite que la impresora pueda guardar los valores de la auto calibración: #define EEPROM_SETTINGS // Enable for M500 and M501 commands //Permite cambiar la dirección de navegación por los menús con el encoder/ruleta: #define REVERSE_ENCODER_DIRECTION |
1 2 |
//Activa el ventilador de la placa base (opcional): #define USE_CONTROLLER_FAN |
1 2 |
//Configura el idioma de los menús del LCD al idioma que queramos (de los soportados): #include "language_es.h" //"language_en.h" |
Hay mas ficheros que habría que configurar si bajáramos el firmware de la página oficial como el fichero de pines para que se corresponda con el de nuestra placa, pero como yo uso el que ya esta configurado pues solo he modificado lo necesario para dejarla a punto.
Mejoras
Como con todas las impresoras hay partes que se pueden mejorar, ya sea para que funcionen mejor, sean más resistentes, o más silenciosas. En mi caso con la propia impresora imprimí algunas piezas y otras las compre:
Impresas:
- Tobera de refrigeración para los drivers y soporte para la placa base para que la placa no corra peligro de partirse al conectar y desconectar cables. Link
- Escuadras para atornillar a las torres y a la base y darle más rigidez a la estructura, útil en mi caso ya que con tanto meneo de la estantería a la mesa podría aflojarse algo y descalibrarse. Link
- Botón/capuchón de parada de emergencia para la pantalla. Link
- Gancho para sujetar el cable del extrusor para que salga hacia arriba. Link
- Soportes para los finales de carrera ópticos (los «flags» no sirven, ver comentarios del enlace 2) Link1, Link2
- Tapas superiores para tapar los cables de los finales de carrera que salen de las torres. Link
- Tobera de aire de repuesto para el extrusor. Link
- Soporte para lampara USB. Link
Compradas:
- Final de carrera -Z para calibración de la cama de tipo servo (no lo recomiendo). Link
- Final de carrera -Z para calibración de la cama de tipo resistivo (segundo vídeo del siguiente apartado). Link
- Finales de carrera ópticos para sustituir los mecánicos (primer vídeo del siguiente apartado). Link
- Ventilador de 4cm para la placa base. Link
Otros (no mejoras):
- Filamentos de colores para imprimir piezas pequeñas o probar los colores antes de comprar la bobina de 1KG. Link
- Piezas de repuesto Link
Funcionando
Mejor con finales de carrera ópticos 😀 #kossel https://t.co/L9gu3Sl2xD pic.twitter.com/BAx5LBT6UN
— Alberto Gil Tesa (@giltesa) October 9, 2017
Infinitamente mejor este fin de carrera para el eje Z que el bltouch. pic.twitter.com/TFRsxZdU1f
— Alberto Gil Tesa (@giltesa) October 18, 2017
Resultado
Con la maquina bien configurada por ahora he impreso las mejoras que se ven en algunas de las fotos superiores y las siguientes piezas:
- Dados de calibración, el verde/naranja/rojo fueron de los primeros, el azul/negro/amarillo de los últimos, la diferencia en el acabado es abismal.
- Dado de calibración de 5cm de lado.
- Barco de calibración. Link
- Una de las carcasas para mis interruptores táctiles.
buenas me estoy volviendo lkoco con mi impresora kossel pulley soy incapaz de configurarla lo he intentado todo pero nose creo que soy un inutil podrias pasarme la configuracion completa por favor un saludo mandy
Hola Mandy,
Se me olvido responderte ayer, aquí tienes subido el firmware que uso yo:
https://www.dropbox.com/s/mx7oue07gvaavlb/Marlin-1.1.4%20HellSingCoder.zip
Aquí hable también del firmware:
https://www.spainlabs.com/foros/tema-Anycubic-Delta-Kossel-Pulley-Linear-Plus?pid=84239#pid84239
Saludos.
Agradezco mucho la información que compartes, me ha ayudado mucho ya que es el único tutorial dirigido a novatos como yo. saludos
buenos días alberto. Estoy pendiente de recibir una, y estoy haciéndole sitio en el limitado espacio de la habitación. Te importaría indicarme qué espacio exterior ocupa?
Hola Julio, no estoy viviendo ahora en España por lo que no puedo comprobar cuál es el volumen total de la impresora.
Saludos.
Hola buenas podrías colgar la configuración completa del marlin otra vez muchas gracias
Hola Yusnier,
Lo he estado mirando pero no lo tengo online para volverlo a copiar en Dropbox.
En cualquier caso no deja de ser este firmware HellSingCoder con cuatro cambios que le hice y que tengo explicados en la entrada, puedes descargarlo desde Github:
https://github.com/HellSingCoder/Marlin
Saludos.