Calificación:
  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
[tutorial] Sistema de autolevel para prusa i3 + jonas + e3d
#1
Bueno voy intentar "construir" mi primer tutorial, ya que el compañero nexocomun me metió presión :zpistolas: para compartir estas piezas de mi propio sistema de autolevel que estoy ultimando para Jonas+E3D, es decir, para las máquinas de la compra conjunta jiji y de paso, me he animado a escribir el paso por paso del sistema, debido a las instrucciones algo caóticas que encontré para el sistema.

PRINCIPIO DEL TUTORIAL

PASO 0: MATERIALES
-servo de rc comprado en ebay
SERVO 9g TOWER PRO SG90
resim

-pieza impresas, en mi caso las he diseñado yo sobre la marcha:
soporte para extrusor 3DE (e3d de 3despana) NUEVA VERSION V2!!
con ventilador de 40mm + huecos calentador (recomendadoderecha) + soporte para servo + atornillar en base jonas
resim

brazo servo NUEVA VERSION V2!!
para endstop normal + bridas
resim

los 2 aqui:
http://www.thingiverse.com/thing:252255

///novedad : endstop EJE X adaptado para servo
resim
http://www.thingiverse.com/thing:260485

-bajar ESTE marlin
https://github.com/ErikZalm/Marlin

ESTE NO
https://github.com/alexborro/Marlin-BedAutoLev


ya que el segundo, que es el de las guias, no hace SAFE HOMING ( y hace el homing del eje Z con el servo FUERA de la cama, POR LO QUE CHOCARÍA LA PUNTA CON EL CRISTAL) y el primero se puede configurar que mida en 9 puntos, el segundo solo en 3

///// EDITO : PARA LOS QUE TIENEN ALGUN PROBLEMA CON EL PRIMER MARLIN, SUBO EL MIO QUE FUNCIONA PERFECTAMENTE
https://drive.google.com/file/d/0B1JDKyO...sp=sharing
////////////////////////////////////////

//ADEMAS, HE EDITADO EL FICHERO MARLIN_MAIN.CPP para evitar los problemas de choques con la cama entre pruebas
https://drive.google.com/file/d/0B1JDKyO...sp=sharing
SI USAS ESTE FICHERO MODIFICADO, SI EL VALOR FINAL DEL EJE Z TE DA POR EJEMPLO -3.80, SUMALE 1 Y QUEDARIA EN -4.80,, YA QUE LO HE MODIFICADO PARA QUE LEVANTE 1MM EN CADA MOVIMIENTO Y DEBEMOS COMPENSARLO

EMPEZAMOS
1º) MONTAJE
Con la impresora funcionando normalmente, imprimimos las 2 piezas diseñadas.
Colocamos la pieza y conectamos el ventilador. De momento ni montamos el servo ni el brazo, pero SI lo conectamos.

para conectarlo, el servo se conecta en el siguiente esquema, en los 3 pines que estan marcados como D11 y tenemos que puentear el pin marcado como 5v con vcc con un jumper, para dar corriente al servo (cable negro o marron va abajo en los servos).
NI QUE DECIR TIENE, QUE TODO ESTO, CON LA CORRIENTE DESCONECTADA
resim

2º) COPIA DE SEGURIDAD Y PRIMERA MODIFICACIONES EN MARLIN
Hacemos una copia ENTERA en otra carpeta de nuestro firmware "por si acaso"

abrimos el firmware descargado, y vamos pasando a el todos nuestros valores de configuracion que tendremos en el fichero configuration.h (algunos estaran en otras posiciones y otros ya no estan, como los valores DELTA)

Descomentar (quitando las //) las líneaS:
#define ENABLE_AUTO_BED_LEVELING
y
#define NUM_SERVOS 3
#define SERVO_ENDSTOPS {-1, -1, 0}
#define SERVO_ENDSTOP_ANGLES {0,0, 0,0, xxx1,xxx2}

estas ultimas las modificamos así:
#define NUM_SERVOS 1
#define SERVO_ENDSTOPS {-1, -1, 0}
#define SERVO_ENDSTOP_ANGLES {0,0, 0,0, 0,40}

la primera siginifica cuantos servos tenemos, 1
la segunda, -1 es desactivado y 0 activado, dejamos 0 en el eje z
en la tercera, el xxx1 es el servo en posicion BAJADA y xxx2 cuando SUBE (se pueden poner valores negativos)

3º) PRECARGA PRELIMINAR DEL CÓDIGO.

Cargamos el marlin.

De momento usamos el endstop que tengamos originalmente de eje Z.

Todavia NO ponemos el brazo en el servo. Abrimos un programa como REPITIER y nos conectamos a la maquina. Esto hará que el servo se encienda, y se ponga en posición 0.

Por si acaso, desde repitier, mandamos el comando
M280 P0 S0
para poner el servo en posicion 0 grados

En este momento, lo atornillamos a la máquina a la pieza (solo tiene una posición) y ponemos el brazo calculando que debe estar en posición levantada.

Una vez hecho, desde repitier, mandamos el comando
M280 P0 S40 y vemos como nos queda
Necesitamos que el brazo quede recto a la cama, asi que si no nos quedara, vamos aumentando esos grados. Ejemplo 43º:
M280 P0 S43
hasta que demos con el grado correcto. Cuando lo encontremos, lo anotamos en el firmware, sustituyendo al valor xxx2
#define SERVO_ENDSTOP_ANGLES {0,0, 0,0, 0,43}

no hace falta volver a cargar el arduino

Continuamos, levantamos el servo con el gcode
M402

4º)AJUSTES DEL SERVO

Hacemos homing, y movemos el eje x e y al centro de la cama.

Yo por ejemplo, como tengo unas distancias máximas asignadas de 180x180, mi centro es x90 y90

Hacemos con un rotulador una marca en el centro de la plataforma a donde apunte la punta del extrusor.

Ahora, todas las guias dicen que pongamos a 0 la posicion de la máquina con el comando G92, pero no es correcto, ya que si necesitamos mover en sentido negativo el eje Y o el X, no nos dejaría al ya estar en 0, asi que como lo habitual es solo mover positivamente el X , uso este código
G92 X0 Y20 Z0

Levantamos el eje Z unos 10mm.
Bajo el servo con el comando
M280 P0 S43
(43 son los grados que pusimos anteriormente)
movemos las posiciones X e Y hasta que veamos que la punta del endstop, la que se va a doblar, está encima de la marcar de la cama

En ese momento, vamos bajando poco a poco (de 1 en 1, y cuando estemos cerca de 0,1 en 0,1, hasta que oigamos que el endstop se activa (tenemos que oir el clic)

En ese momento, ejecutamos el GCODE M114
nos daría algo similar a esto:
X:24.3 Y:11.4 Z:5.1;

pues bien, como partiamos de 20, el código "de verdad" sería
X:24.3 Y:-8.6 Z:5.1; (le restamos 20)

y lo tenemos que transformar multiplicando todo x -1, con lo que quedaria
X:-24.3 Y:8.6 Z:-5.1;

anotamos el codigo

5º) CARGAMOS LOS NUEVOS VALORES EN ARDUINO

Desconectamos de repitier. Volvemos al arduino y localiza y pon con tus valores estas opciones:
#define X_PROBE_OFFSET_FROM_EXTRUDER -24.3
#define Y_PROBE_OFFSET_FROM_EXTRUDER 8.6
#define Z_PROBE_OFFSET_FROM_EXTRUDER -5.1

luego busca
#define LEFT_PROBE_BED_POSITION 30
#define RIGHT_PROBE_BED_POSITION 140
#define BACK_PROBE_BED_POSITION 140
#define FRONT_PROBE_BED_POSITION 30

que es para decirle donde mide la máquina, de momento estos valores son conservadores, luego cuando todo vaya bien se puede ir más al borde, por ejemplo:
#define LEFT_PROBE_BED_POSITION 10
#define RIGHT_PROBE_BED_POSITION 170
#define BACK_PROBE_BED_POSITION 170
#define FRONT_PROBE_BED_POSITION 10

busca y modifica

#define XY_TRAVEL_SPEED 6000
es la velocidad a la que hace las pruebas

#define Z_RAISE_BEFORE_PROBING 6
#define Z_RAISE_BETWEEN_PROBINGS 6

lo que tiene que levantar cada vez que haga una prueba

y luego que no se dice en guias

#define PROBE_SERVO_DEACTIVATION_DELAY 300

para que se apague el servo al terminar

#define Z_SAFE_HOMING
todo activado y descomentado, para que haga el z en el centro de la cama y no fuera

#define ACCURATE_BED_LEVELING

lo mismo

#define ACCURATE_BED_LEVELING_POINTS 3

para que haga 9 puntos de prueba, mas es tonteria.

6º) ÚLTIMA MODIFICACIÓN PARA IMPRIMIR : GCODE
listo! carga el marlin, conecta con repitier y manda los codigos:
M401 para bajar
M402 para subir
ASI COMPROBAMOS QUE TODO FUNCIONA CORRECTAMENTE

para imprimir usando los servos, es necesario añadir este gcode sustituyendo al principio del gcode cuando se manda el codigo g28

G28 ; home con safehoming
G29 ; realizar prueba 9 puntos
G1 Z5 F5000 ; llevantar nozzle

///EDITO: SI POR ALGUNA RAZÓN QUEREIS SUBIR O BAJAR LA ALTURA AL CRISTAL DESPUES DE CALIBRAR TODO,
#define Z_PROBE_OFFSET_FROM_EXTRUDER -5.1
si descendemos el valor (-5) , la altura al cristal aumenta,, y si lo aumentamos (-5.2) disminuye
/////
y a imprimir!!!
Citar
#2
Hola NeoxM3!!!!

Yo darte presión ..... Confundidois1:

Por favor, unas fotillos del montaje instalado no estaría de más .... y puestos a pedir, si puedes poner una versión con ventilador de 30 sería fantástico (el de 40 es que se me hace muy grande); sino, con tu permiso creo que haría un 'apaño' de tu modelo para ponerle un ventilador de 30, pero seguro que tú en un pispas los haces Gaydude

Por cierto, creo que comentastes que el sensor del eje Z seguiría funcionando o harías algo para que funcionase uno u otro, o ambos a la vez .... En el montaje que pones, el sensor del eje Z deja de tener sentido, y hasta se puede quitar .... ¿es correcto?

Muchas gracias, fiera Mola
La impresión 3D casera no es una ciencia exacta: a las mismas entradas y ejecutando el mismo proceso, no siempre sale el mismo resultado .... para desconsuelo de los que sólo queremos conseguir imprimir en 3D :(
Citar
#3
si. al final ya no hace falta, pero durante el proceso tenia q alternarlos , asique compre unas fichas y me hice un sistema para kambiar a uno u otro a voluntad.

mañana pondre fotos q oy ando mallao jeje

Enviado desde mi GT-H9500 mediante Tapatalk
Citar
#4
Eres un fenomeno pero estaria bien que pudieras hacer un video tutorial del autonivelado completo asi veriamos como lo haces sobre la marcha. Para la gente que estamos un poco
Gracias por todo el trabajo.


Enviado desde mi iPhone con Tapatalk
Citar
#5
gracias, a la noche pondre fotos de las piezas y como funciona el sistema, de momento solo tengo esto a mano, un video que subi al youtube de terminando de imprimir la pieza

http://www.youtube.com/watch?v=ZP8n4NaCEfg

por cierto, no se si veis en ese video, lo enseñare en las fotos, que le he hecho un mod al extrusor e3d, he hecho una placa que sujeta en el centro, agarra en el sentido del "desaflojo" la punta del extrusor, por lo que asi con el calor nunca se va aflojar :one:

a ver si el finde puedo hacer algo a modo de tutorial, saludetes
Citar
#6
Muchas gracias por el tutorial neoxM3. Seguro que vendrá bien a más de uno, a mí incluido.

Te lo muevo a Hardware que parece que tiene mejor cabida que en este subforo.
Citar
#7
gracias, a ver si ala noche actualizo

Enviado desde mi GT-H9500 mediante Tapatalk
Citar
#8
De camino un par de microservos. Uno de ellos va a ir para aquí Gran sonrisa
Citar
#9
esperar a imprimir al menos el cuerpo, estoy haciendo un rework mejorado, y con opcion de ventilador de 40 o 30, ala noche lo imprimo, y si va bien, ya lo publico

Enviado desde mi GT-H9500 mediante Tapatalk
Citar
#10
nexocomun escribió:...
Por cierto, creo que comentastes que el sensor del eje Z seguiría funcionando o harías algo para que funcionase uno u otro, o ambos a la vez .... En el montaje que pones, el sensor del eje Z deja de tener sentido, y hasta se puede quitar .... ¿es correcto?

Hola, aparte de felicitar a NeoxM3 por el tuto, comentaros que yo he dejado funcionando los dos endstop, el de la sonda y el "tradicional", poniendolos en serie (es decir, cualquiera de los dos corta), porque puede darse el caso de que falle algo en la bajada del servo, (me ocurrió Triste ) y entonces esta el otro un poquito mas abajo para que no llegue la sangre al rio.

Para eso hice un adaptador, que está pinchado en la ramps y del que sale una tira de cuatro pines (los dos de enmedio conectados entre si). En ella se pinchan los dos endstops y así hay ese plus de seguridad, que las piezas rotas duelen mucho :-).


Saludos!


Archivos adjuntos Miniatura(s)
   
Citar
#11
lo mio es Parecido, pero desenchufo uno y pongo otro a voluntad, no se me habia ocurrido poner los 2 ala vez...

tengo una novedad, lo he rehecho de 0, mucho mas estilizado el cuerpo. y un adaptador para ventila d 30mm, asi si se quiere pasar a 40, no ai q imprimir otro cuerpo.

mañana intentare imprimirlo, q ahora me falla el motor dl extrusor, y subo los archivosresim

Enviado desde mi GT-H9500 mediante Tapatalk
Citar
#12
intentare hoy a la noche o mañana imprimir la nueva version, que ya tengo de nuevo la maquina a pleno rendimiento, y pongo fotos y subo los nuevos archivos... saludetes
Citar
#13
Una pregunta desde la más profunda ignorancia a este sistema de nivelado.

Con este sistema se corrige cualquier desnivel que pueda tener en cualquier punto de la cama?

Lo pregunto porque mi espejo de Ikea, esta un poco ondulado y he usado varios. Creo que todos hace una pequeña curva en el centro.


Saludos.
Citar
#14
si, ya que mide en 9 puntos y calcula las distancias mediante una matriz, es decir, imagina q en x ala izquierda mide -0.1, en el centro 0, y en x derecha -0.2,, pues ya corrige al vuelo, como sabe la distancia que ai entre x izquierda y centro, para nivelar la pieza cuando este en esa zona, calcula que cuando este en el medio de x izq y centro, la altura debe ser -0.05, y asi con el resto

Enviado desde mi GT-H9500 mediante Tapatalk
Citar
#15
Me imaginaba algo así, pero no me lo podía creer. Mola

Esto será la solución para los cristales curvados.

Bueno, ahora viene lo peor, entererme bien como funciona el sistema. Ya tengo lectura para esta noche. Además de localizar las piezas necesarias. Tengo J-Head MkIV.



Saludos.
Citar
#16
Una pregunta que no veo respuesta, pero que supongo;

El AutoLevel, lo hace cada vez que se imprime?


Saludos.
Citar
#17
si, siempre, ai que poner el codigo g29 justo despues dl g28

Enviado desde mi GT-H9500 mediante Tapatalk
Citar
#18
mas tarde pondre ya la version v2...

Enviado desde mi GT-H9500 mediante Tapatalk
Citar
#19
Venga ..... a ver ese sistema :zpalomitas:
A ver si lo puedo poner a quemar el lunes :yeah:

Saludos
La impresión 3D casera no es una ciencia exacta: a las mismas entradas y ejecutando el mismo proceso, no siempre sale el mismo resultado .... para desconsuelo de los que sólo queremos conseguir imprimir en 3D :(
Citar
#20
ACTUALIZO!
En el mismo enlace, teneis la version V2 mucho mejor hecha y más redondita
resim

además , también esta la versión V2 del brazo del servo, algo más ajustada.

Y para el amigo nexo, hice un adaptador para ventilador de 30mm, asi es facíl pasarse a 40mm, solo quitar el adaptador y listo
resim

todo en el mismo enlace que puse más arriba
Citar


Temas similares...
Tema Autor Respuestas Vistas Último mensaje
  TUTORIAL poner husillos Prusa i3 Hephestos de BQ kokeeeeee 3 3,638 01-05-2018, 07:50 PM
Último mensaje: JAIMOTO
  Autolevel geeetech pro b? spa_sergio 3 1,530 27-11-2016, 01:33 PM
Último mensaje: spa_sergio
  Sensor para autolevel Pepo 3 1,752 08-04-2015, 05:08 AM
Último mensaje: Kurama
  [DUDA] En busca de un nuevo sistema de extrusión de 1.75mm nexocomun 15 4,306 14-02-2015, 12:59 AM
Último mensaje: JL. M
  autolevel hephestos xpredator3d 4 1,578 02-01-2015, 11:29 PM
Último mensaje: xpredator3d