Ya que tenemos todos los elementos de la electrónica conectados, ahora podemos pasar a cargarle el firmware definitivo a nuestra impresora, este firmware va a ser el Marlin. El Marlin, no lo hemos cargado antes, porque de haberlo hecho, no habríamos sido capaces de mover los motores para ajustar los pololus, ya que si Marlin no detecta que la temperatura del HotEnd es la adecuada o simplemente no detecta el sensor, no nos va a dejar extruir.

Ahora, como ya tenemos todo conectado, le vamos a cargar el Marlin, para ello vamos a necesitar el entorno de programación de Arduino en una versión más actual (yo voy a usar la versión 1.0.5), vosotros podéis descargaros la versión más actual desde la página oficial de Arduino. También vamos a necesitar el Marln, yo voy a usar una versión ya testada que funciona perfectamente y que vosotros podéis descargar de aquí.

Actualizado Julio 2018: La versión de Marlin que se usa en este tutorial funciona perfectamente, pero es una versión antigua, si usáis una electrónica creada con posterioridad al 2016 es probable que no podáis configurarla con la versión de la WEB, para eso bajad la última versión de Marlin aqui

Una vez que tengáis tanto el entorno de Arduino en una versión actual como el Marlin, lo descomprimís y seguís estos pasos:

Abrir el entorno de Arduino, conectad la electrónica y seleccionar tanto la tarjeta que estáis usando (Arduino Mega) como el puerto al que está conectado.

entorno prog

Una vez configurada la tarjeta y el puerto, vamos a abrir el Marlin, para ello en la barra de herramientas le damos a archivo/abrir.... y dentro de la carpeta que hemos descargado con el Marlin, vamos a encontrar un archivo que se llama "marlin.ino", lo abrimos y aparecerá una nueva ventana.

entorno prog2

Al igual que hacíamos con "Sprinter", tenemos que ir a la pestaña de configuración, que es donde vamos a encontrar todos los parámetros que debemos de configurar.

Los primeros parámetros que nos vamos a encontrar van a ser el tipo de placa que tenemos y el numero de extrusores de nuestra máquina, en mi caso, como estoy usando una RAMP's 1.4 tendré que asignarle el número 33 (que es el numero que me indica la lista de tarjetas), y en el numero de extrusores le pondré "1", ya que mi maquina tan solo cuenta con 1 extrusor.

marlin 1

Más abajo nos encontraremos parámetros relacionados tanto con los termistores como con la temperatura, en el parámetro de pone "#define TEMP_SENSOR", tenemos que indicarle que tipo de sensor estamos usando, en mi caso estoy usando un termistor de 100K, por lo que tengo que asignarle el numero "1", como veis, hay posibilidad de asignar hasta 3 tipos de sensores para 3 posibles HotEnds, (en mi caso como solo tengo un HotEnd con un termistor, tan solo es necesario que configure el primero. Seguido a este parámetro, podemos ver otro que pone "#define TEMP_SENSOR_BED", que será el que defina el tipo de termistor que usamos en la cama caliente.

marlin 2

Un parámetro que debemos conocer es el "#define HEATER_MINTEMP", este es un parámetro que no alteraremos, pero hay que saber lo que hace, y es que si intentamos calentar tanto el HotEnd como la cama calietne cuando el sensor registra una temperatura inferior a la que indica aquí, la impresora nos va a dar un error que dirá "ERROR_MIN_TEMP", y no calentará, por ello la habitación o entorno donde este la impresora deberá de estar a una temperatura mayor que la que aquí aparece.

Otro parámetro MUY IMPORTANTE referente a la temperatura, es el que va a fijar el límite de temperatura tanto del HotEnd como de la cama caliente. el de la cama quizás no sea muy relevante, pero el del HotEnd si, ya que si tenemos un HotEnd que no sea "All Metal", y superamos los 250º, es muy posible que fundamos alguna de las partes del propio HotEnd, por ello hay que ponerle un límite.

Yo os diría que si vuestro HotEnd no es "All Metral", fijéis este límite entre 250-260⁰, y si es totalmente metálico lo pongáis en 300⁰.

marlin 3

Si seguimos bajando, nos vamos a encontrar otro parámetro que nos va a definir la temperatura mínima de extrusión, "#define EXTRUDE_MINTEMP", este es un parámetro de seguridad, que va a impedir que extruyamos nada si el HotEnd no está a la temperatura que indicamos aquí, esto se hace para proteger el extrusor e impedir extruir en frio.

marlin 4

Los siguientes parámetros a configurar hacen referencia a los finales de carrera y a el movimiento de los ejes, si habéis hecho el montaje de vuestra impresora de la misma manera que lo he hecho yo, lo valores que tendréis que poner son los que aparecen en la imagen. Los primeros parámetros activan las resistencias de "PullUp", necesarias si trabajáis con los finales de carrera entre señal y GND, el siguiente grupo de parámetros bloquean o no los ejes cuando se mueven, haciendo que permanezcan en la posición que se le ordena, y los últimos parámetros invierten el movimiento de los ejes, aunque yo os diría que este último parámetro no lo modifiquéis, simplemente, si el eje se mueve en la dirección incorrecta dadle la vuelta al cable.

marlin 5

Los últimos valores que vamos a configurar antes de cargar el firmware, son los que veis en la imagen inferior, el primero va a delimitar el área de impresión, y el segundo (valor que ya habíamos visto en el Sprinter) va a configurar los pasos que deben de dar los motores para moverse una unidad.

marlin 6

Para configurar el primer valor es tan sencillo como medir físicamente el recorrido de los ejes, desde que tocan el final de carrera, hasta el otro extremo (restarle unos milímetros para no apurar demasiado).

Para configurar los pasos por milímetro de los motores, lo haremos de forma similar a como lo hicimos con el extrusor, pudiendo directamente poner el valor que obtuvimos con anterioridad a la hora de calibrar el extrusor.

Para el eje Z, los pasos por milímetro van a depender de los pasos del motor, la resolución que le indiquemos a los pololus con los "jumpers" y el paso de rosca de la varilla.

La fórmula que debéis de seguir será la siguiente:

Pasos_por_mm = Pasos_del_motor_por_vuelta x Micro_pasos_del_pololu / paso_varilla

Si usáis un motor del tipo NEMA 17, tendrá 200 pasos por vuelta, la resolución del pololu o micro pasos del pololu con los 4 "jumpers" será de 16 y los pasos de una varilla de métrica 5 es de 0.8mm, por lo que el resultado de la ecuación es:

Pasos_por_mm = 200 x 16 / 0.8 = 4000

Que es el valor que tendréis que poner si usáis estos elementos, si vuestra varilla es de métrica 8, entonces el valor que pondréis será el de 2560.

Para el Eje X e Y, vamos a abrir el Pronterface, le diremos que se mueva 100mm, y mediremos la distancia real que se ha movido, el valor que nos dé, se lo vamos a dividir al valor que aparece en la casilla del eje X o Y (esta por defecto en 80) y lo multiplicaremos por el valor que le hemos ordenado moverse, dando como resultado el numero que debemos de colocar en la configuración de estos ejes.

Configuración del PID

>El PID es un controlador que está programado en el propio Arduino y que debemos de configurar para que la regulación de la temperatura sea lo más precisa posible, para ello vamos a abrir el Pronterface y vamos a ejecutar el comando "m303" (escribiendo este comando directamente sobre la consola del pronterface y dándole a ejecutar).

PID

Una vez lo ejecutemos, veremos cómo empieza a subir la temperatura del HotEnd y de manera automática el programa empezará a activar y desactivar la alimentación viendo cómo evoluciona la temperatura. De esta forma el programa va a comprobar la inercia térmica de nuestro HotEnd y después de un rato, nos va a dar unos valores ( Kp, Ki y Kd), estos valores son los que debemos de poner en el firmware para asegurarnos que nuestro HotEnd calienta de manera adecuada y no sufre oscilaciones de temperatura demasiado acusadas.

PID2

PID3

 

 

 

Deja tus comentarios

Enviar un comentario como invitado

0
terminos y condiciones.
  • :(Crei que podias soluccionarme el ARDUINO .INO

    de Rúa María, 153, 15401 Ferrol, A Coruña, Spain
  • Hola, es que no existe el archivo ARDUINO.INO, no se como ayudarte de otra forma.... te lo pongo paso a paso otra vez:
    1. Descargate el Marlin, en esta WEB tienes el archivo comprimido en ZIP (MARLIN.zip) --> este es el enlace https://www.zonamaker.com/descargas/Impresion3D/Marlin.zip
    2. Descomprime el archivo que te descargues y dentro tienes el archivo MARLIN.INO está dentro de la carpeta MARLIN no busques otro archivo que no sea MARLIN.INO, está dentro de la carpeta MARLIN y no hay mas carpetas o subcarpetas.

    Comentario editado por última vez entre hace cerca de 3 semanas y Raúl Diosdado
  • Buenos Dias Raul te tengo que decir que no me sale marlin.ino solo mesalen : Marlin.h
    Marlin
    Marlin_main.ccp
    Marlin serial.cpp
    Marlin.h
    Solo me salen estas no me sale Marlin.ino y desmontando la electronica me salio un final de carrear que parece que estaba como quemado y tenis como un polvo blanco alrededor de una de las soldaduras ya los he cambiado los finales de carrera y LOW COST me envia otro arduino buena gente este Arturo menos mal, no te veas si hay que tener cuidado con las conexiones y los diferentes componentes electronicos Saludos y Muchas Gracias:o

    de 15401 Ferrol, A Coruña, Spain
  • Buenos Dias Raul estoy en lo mismo me he bajado el Marlin que tu me has enviado y no me sale ARDUINO.INO no sale me sale el que te dije tambien he mirado los finales de carrera y los he cambiado todos los 3 finales y funcionan correctamente todos me deciis que algo pasa y yo lo que veo quer siempre pasa lo mismo con el protenface funciona todo y cuando lo desconecto el USB la pantalla se apaga mi ordenador es un TOSHIBA SATELTTE TIENE CUATRO AÑOS si no me baja el link que tu me das yo ya no se que hacer todo funciona bien el hotend funciona los finales de carrera funcionan los motores funcionan y el vendedor de LOW COST dice que hay algo pero yo no veo nada en fin me comprare otro arduino en otra casa y te comento ok? SALUDOS

    de Rúa María, 153, 15401 Ferrol, A Coruña, Spain
  • Hola, el que no se encienda la pantalla ni funcione nada al quitar el USB es debido al regulador del Arduino, esta dañado (seguramente por una mala conexión de los finales de carreras o por alguna masa mal conectada). Te adjunto un link donde sale la imagen del regulador que te comento:
    http://i.gyazo.com/7e6cbcbc30d552e62385f07f253876fa.png
    En cuanto al archivo que debes abrir con el IDE de Arduino, si está, pero no se llama Arduino.ino, se llama Marlin.ino
    https://www.zonamaker.com/images/contenido/impresora_3d/crea_impresora/14_marlin/entorno_prog2.jpg
    Si compras otro Arduino, asegúrate de tener todo bien conectado antes de alimentarlo, y cuando alimentes mira el regulador de voltaje que te he adjuntado en la imagen, si sale humo hay algo mal :p
    Este regulador es muy fácil cargárselo, yo me he cargado un montón y siempre por lo mismo, por ir con prisas y no comprobar todo 2 veces, tomate tu tiempo revisando el cableado y ya verás como a la tercera va la vencida!

  • Hola Raul le cargo el firmware con el icono de Arduino me sale "Darth Raul" al principio bueno los finales de carrera estan bien con el Arduino conectado al ordenador y con la alimentacion el Auto home lee bien los finales de carrera cuando llegan los ejes al inicio se encienden y se paran por lo tanto el Señor que esta enviando los Arduinos me los esta enviando mal este es el segundo que me envia mal bueno cuando enciendo la impresora sin el USB no se encienden los finales de carrera tampoco otra vez a devolverle el Arduino Bueno Raul Gracias y perdona tanta pregunta Saludos

    de Rúa María, 153, 15401 Ferrol, A Coruña, Spain
  • Hola Leando, la versión del Marlin que tienes ¿de donde la has descargado? creo que es mía, pero creo que no es la que tengo en el tutorial, descarga el Marlin de aquí: https://www.zonamaker.com/descargas/Impresion3D/Marlin.zip
    En cuanto a los finales de carrera, creo que estas conectando mal algún cable, por eso se te encienden sin pulsar y estas cargándote el regulador de voltaje de Arduino (es por eso que solo te funciona con USB). Deberías de solucionar esto antes de nada y asegurarte que este bien conectado, si no vas a cargarte todos los Arduinos que conectes.

  • Hola Raul de verdad que no encuentro el arduino.ino dentro de la carpeta de Marlin

    de Rúa María, 153, 15401 Ferrol, A Coruña, Spain
  • En la carpeta del marlin no está el arduino.ino, lo que debes de buscar es "Marlin.ino"

  • Hola Raul he soluccionado lo de la targeta de arduino con las ramps me han enviado desde de Granada el cambio y ya funciona todo menos el firmware tu dices que hay que bajarse el Marlin que hay en la etiqueta roja y que busque (arduino.ino)pero hay para descargar cuatro versiones,me he descargado las cuatro y niguna de ellas porta el aruino.ino todas traen por defecto el icono de arduino pero no "arduino.ino" la carga funciona bien pero cuando le retiro el usb de la carga del ordenador a la impresora la pantalla lcd se apaga Sera que no que no es arduino.ino por que no lo encuentro en ninguna de las descargas que he echo me puedes decir algo al respecto yo ya echo humo :(

    de Rúa María, 153, 15401 Ferrol, A Coruña, Spain
  • El link de descarga de la etiqueta roja es por si quieres instalar la última versión de Marlin, si tienes una electrónica nueva (diferente de Arduino + RAMPS) puede que no te funcione la versión de la WEB, por eso dejo ahi el link a la versión mas actualizada.
    Lo que debes de abrir dentro de la carpeta es el archivo Marlin.ino que está dentro de la carpeta "Marlin".
    En cuanto a que la pantalla se apague al quitarle el USB es debido a que el regulador de voltaje de tu Arduino está dañado, esto hace que solo funcione cuando se alimenta con USB, esto solo tiene 2 soluciones, cambiar el arduino, o cambiar el regulador. Ten cuidado, si se te ha estropeado una vez, puede que tengas un cortocircuito y que vuelvas a dañar el regulador, normalmente esto se estropea por una mala conexión de los finales de carrera.

  • Hola Raul y muchas gracias por tu atencion
    He hablado con el suministrador de las ramps y el arduino y me lo cambia por otro ya me comento que puede ser un corto que tenga el arduino o las ramps tambien hemos hablado de los husillos del eje Z concretamente del M5 y del M8
    El M5 es de sistema metrico decimal mientras que el M8 es del sistema Whitworth que varia bastante e igual que los drivers de 16 pasos y de 32 pasos
    En el firmware hay que configurarlo de una forma muy distinta a la normal pero creo que siguiendo tus pasos en la construccion de la impresora podemos soluccionar el tema de las medidas yo solamente llevo en este campo 3 años pero me he pegado toda la vida de Fontanero Electricista y Mecanico creo que en cacharreria se bastante ( Hardware ) pero en firmware acabo de meterme y no es lo mismo ajustar con las manos que con el ordenador . Tambien queria meterle la pantalla tactil que creo que tiene llevar librerias
    Pero bueno sigo con la construccion de esta impresora. Seguimos en contacto y muchas gracias Saludos.

  • Hola muy buenos dias Raul
    Me estan pasando cosas muy raras con la impresora,te dije que cambiando los drivers morados me funciono la impresora,pero cuando instale el arduino en la impresora sucedio lo siguiente:
    El alimentador dejo de funcionar el ordenador no detectaba al arduino lo desmonte todo abri el alimentador y estaba bien el fusible estaba bien volvi a conectar el arduino fuera de la impresora y tambien empezo a funcionar el alimentador y el arduino pero probando con el protefance el programa para controlar el arduino con el ordenador hay ejes que no funcionan Lo primero que he pensado que alguien se esta cachondeando de mi no lo se hoy dia hay gentuza que se divierte haciendo daño al vecino No se tendre que cambiar las ramps o todo en fin sigo machacando Adios

    de Rúa María, 153, 15401 Ferrol, A Coruña, Spain
  • Puede que de tanto montar y desmontar tengas algun mal contacto que hace que el ordenador no te detecte la RAMPs, también decirte que la RAMPs y ordenador hay veces que no se llevan bien, para no tener problemas, primero conecta el USB y después la alimentación de la RAMPs y seguidamente intenta conectarte con el pronterface, para desconectar, primero desconecta el pronterface, luego la alimentación y seguidamente el USB. Si no lo haces en este orden muchas veces se queda como ocupado el puerto y no hay forma de volverlo a conectar.

  • Hola Raul te va a parecer increible el eje Z no funcionaba con los dos motores le he puesto uno y funciona con los dos no funciona entonces le he puesto el driver morado que creo que es el A48 y tal y me funciona con los dos motores tio que potra he tenido creo que lo he soluccionado a medias veras, yo tengo las varillas del eje Z de 8 mm y en el firmware hay que cambiar de 4000 a 2560 puede que sea eso y desoues hay que meterle en el firmware las coordenadas del driver que creo que es el doble de pasos no lo se muy bien por eso te lo digo Ahora solo hay que ajustarlo Gracias por tu ayuda

Cargar Más