Gracias Víctor, excelente tuto
Una pregunta para vosotros que ya estáis manejando el tema de los servos y demás, a ver si me podéis abrir un poco más los ojos.
Estoy pensando en cogerme una pantalla LCD para poder imprimir sin tener que utilizar el PC. Para utilizar los servos, hay que puentear el VCC y el 5V para poder alimentarlos, pero claro esos 5V que llegan de la placa Arduino se cogen a través del puerto USB del ordenador.... podría ser que fuera incompatible utilizar la pantalla LCD con los servos? Ya que al usar la LCD ya no tendría que encender el pc....
¿MERECE LA PENA PONER ESTO O DA MÁS PRECISIÓN HACERLO A MANO?
¿SE PIERDE SUPERFICIE DE IMPRESIÓN?
¿ES COMPATIBLE CON PRUSA 2?
¿ES COMPATIBLE TENER LAS RAMPS CON ESTE DISPOSITIVO Y ADEMÁS EL LCD Y SD?
LO DIGO POR LO DE PUENTEAR VCC-5V NO LO ACABO DE ENTENDER MUY BIEN.
pedazo tutorial y pedazo invento!!!!!
El jueves, 9 de enero de 2014 14:29:17 UTC+1, Andres Maroto escribió:
tengo un problema, sigo todos tus pasos , pero al hacer homing como la pata del servo con el FC me queda fuera del cristal no para de bajar el eje z y probando el codigo G29 me hace las pruebas fuera del cristal tambien...
--
---
Has recibido este mensaje porque estás suscrito al grupo "Clone Wars: Imprimiendo impresoras 3D" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus correos electrónicos, envía un correo electrónico a asrob-uc3m-impreso...@googlegroups.com.
Para publicar una entrada en este grupo, envía un correo electrónico a asrob-uc3m-i...@googlegroups.com.
Para obtener más opciones, visita https://groups.google.com/groups/opt_out.
heber si sera que el marlin que tengo MARLIN V1 le faltaran lineas ???
Lo tengo por fin,eso me pasa por no mirar las actualizaciones de Marlin; Ahora a pasar los datos del antiguo al nuevo Marlin y a trastear......
--
Claro que la hay, para eso se usa GIT.
1) Clonas el repositorio
2) Creas una rama nueva
3) Modificas el fichero de configuración
4) Guardas y haces «commit»
Luego cada vez que quieras actualizar, vuelves a la rama principal,
actualizas, y haces un «merge» desde tu rama modificada.
2014/1/13 WHOISNOSFERATU . <whoisno...@gmail.com>:
>>>> Lo tengo por fin,eso me pasa por no mirar las actualizaciones de Marlin;
>>>> Ahora a pasar los datos del antiguo al nuevo Marlin y a trastear......
>
> Por cierto es un coñazo lo de volver a pasar toda la configuracion de un
> marlin a otro nuevo, no....... no habria alguna manera de.........
> GRACIAS A TODOS
>
> --
>
> ---
> Has recibido este mensaje porque estás suscrito al grupo "Clone Wars:
> Imprimiendo impresoras 3D" de Grupos de Google.
> Para anular la suscripción a este grupo y dejar de recibir sus correos
> electrónicos, envía un correo electrónico a
WeSo... al ver tu video me surgio otra duda.. como realizas ese movimiento al momento de hacer el homing en tu maquina??.. puesto que los ejes X-Y ya llegan a su posicion 0,0... pero al llegar el home en Z veo que tu carro X se desplaza hacia el centro de la cama...quedando el final del Z dentro del area de la cama.... Mira aqui adjunto la imagen de mi impresora y como podras observar al momento de realizar el homing con G28 el final de Z quedaría fuera de mi cama...
--
---
Has recibido este mensaje porque estás suscrito al grupo "Clone Wars: Imprimiendo impresoras 3D" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus correos electrónicos, envía un correo electrónico a asrob-uc3m-impreso...@googlegroups.com.
Hola Aisflou gracias jeje... es una máquina que la he construído con un amigo para un proyecto :D... y pues como lo he comentado anteriormente deseo implementarle el autoleveling... nose si tu me podrias ayudar con esa duda que me surgió!!!...
--
#define Z_SAFE_HOMINGActivando esa opción, automáticamente el homming de Z pasa a hacerlo a la mitad (por defecto) de la cama.
Line 253: #define min_software_endstops true //If true, axis won't move to coordinates less than HOME_POS.
Line 86: #ifdef MANUAL_HOME_POSITIONS // Use manual limit switch locations
muchas gracias amigo por la aclaración, ya configure la programación pero hay algo q noto no se si les pase cuando muevo los ejes cualquiera (x,y,z) la patilla de mi servo empieza a tener unas pequeñas oscilaciones.... eso es normal????
Q tal amigo disculpa una pregunta ya tengo funcionando el auto leveling pero algo q he nota es q el servo no llega a las posiciones programadas es decir la en el primer punto de sondeo llega a lo programada pero en los demas puntos el servo es como q pierde pasos xq se baja demas o sino sube demas por lo q jamas me calibra correctamente al momento de imprimir... como puedo arreglar esto o xq me pasa esto?
#define PROBE_SERVO_DEACTIVATION_DELAY 300Si activas ese parámetro, no puede ser que el problema aumente, ya que desactiva el servo después del movimiento :\
Que problema era y como lo solucionaste? porque era raro raro... explica para que le pueda servir al resto!! ;)
El 16 de enero de 2014, 22:17, NavasXd <phn...@gmail.com> escribió:
Q tal amigo disculpa una pregunta ya tengo funcionando el auto leveling pero algo q he nota es q el servo no llega a las posiciones programadas es decir la en el primer punto de sondeo llega a lo programada pero en los demas puntos el servo es como q pierde pasos xq se baja demas o sino sube demas por lo q jamas me calibra correctamente al momento de imprimir... como puedo arreglar esto o xq me pasa esto?
--
---
Has recibido este mensaje porque estás suscrito al grupo "Clone Wars: Imprimiendo impresoras 3D" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus correos electrónicos, envía un correo electrónico a asrob-uc3m-impresoras-3d+unsub...@googlegroups.com.
En eso no entro, que yo aun ando con problemas en ese aspecto, me hace el G29 cuatro veces en el mismo punto, a pesar de tener esas lineas que mencionabais en el Marlin, ultima version
...
Sacado de RepRap3D.esAuto nivelado cama caliente (auto leveling heatbed)
Bueno voy a intentar explicar lo mejor y más fácilmente posible este sistema de nivelación.
Antes de nada agradecer la ayuda de los compañeros Julito y Weso.
Fuentes:
https://github.com/ErikZalm/Marlin#instructions-for-configuring-bed-auto-leveling
http://www.youtube.com/watch?v=awsI9bMndJA
http://www.youtube.com/watch?v=6msLOR_EfKc
http://www.youtube.com/watch?v=YpiOsetkIRg
thingiverse:
http://www.thingiverse.com/thing:197013 (WeSo)
http://www.thingiverse.com/thing:194012
http://www.thingiverse.com/thing:189061
http://www.thingiverse.com/thing:182889
Elegid el modelo que mejor os venga para vuestra impresora/extrusor (yo tengo montado el ultimo)
Bueno comenzamos:
Necesitamos:
-Impresora 3D.
-1ud servo.
-1ud final de carrera.
-Última versión de marlín.
-Paciencia.
Al lio:
-Lo primero es imprimir el soporte para el servo que hayamos elegido y comprobar que nos sirve.
-Cableamos tanto servo como final de carrera (FC), no dejéis muy justos los cables.
-Montarlo todo en el extrusor.
-Lo siguiente es puentear el Pin de VCC con el de 5V (están al lado del botón reset de vuestra ramps) con esto conseguimos alimentar los pines que trae las ramps dedicados a los servos.
-Una vez puenteado (toda esta manipulación hacedla con la corriente cortada o puede que lo lamentéis ;-)) tenemos que colocar el servo en el pin más cercano al botón reset dedicado a estos (D11) y conectar los cables del FC donde teníamos antes el FC de Z (para los servos de 9g tower pro el cable negro va en el pin de la parte exterior de la ramps al conectarlo).
-Ya tenemos todo conectado, ahora toca trastear marlín para hacer que todo esto funcione como debe. El siguiente paso es descargar la última versión de marlín si no lo tenemos ya.
-Dentro de marlín debemos buscar lo siguiente:
//#define ENABLE_AUTO_BED_LEVELING // Delete the comment to enable (remove // at the start of the line)
Des comentamos este parámetro (borrar los dos //)
//#define NUM_SERVOS 3 // Servo índex starts with 0 for M280 command
//#define SERVO_ENDSTOPS {-1, -1, 0} // Servo index for X, Y, Z. Disable with -1
//#define SERVO_ENDSTOP_ANGLES {0,0, 0,0, 160,95} // X,Y,Z Axis Extend and Retract angles
Como el anterior también los des comentamos para habilitarlos y dejamos NUM_SERVOS en 1.
#define NUM_SERVOS 1 // Servo index starts with 0 for M280 command
-Una vez tenemos esto cargamos marlín en nuestro arduino.
-Lo siguiente es subir Z para que no pueda chocar el servo al bajar con el espejo/cristal.
-Vamos ahora a comprobar las dos posiciones que tendrá nuestro servo (cuando no este activo y cuando estemos nivelando).
Metemos el siguiente código g-code M280 P0 S(ángulo del servo)
Ejemplo: M280 P0 S165
Debemos buscar una posición para tomar medidas y otra con el servo retraído. Probaremos ángulos hasta conseguir los que mejor nos van y los metemos en marlín.
#define SERVO_ENDSTOP_ANGLES {0,0, 0,0, 160,95}
Debemos cambiar 160 (posición para tomar medidas) y 95 (servo retraído) por nuestros valores.
-Perfecto, la cosa marcha. Ahora buscamos el centro de nuestro espejo con la boquilla del hotend con el control manual, debemos dejarlo aproximadamente a 0.1 o el grueso de un folio (más adelante tendremos que jugar con el offset de marlín para dejarlo fino).
-Una vez tenemos la boquilla en esa posición ejecutamos en el G-Code G92 X0 Y0 Z0.
-Lo siguiente es subir el eje Z lo suficiente para que el servo pueda dejar el brazo vertical al espejo, una vez el brazo vertical al espejo buscamos el mismo punto anterior (el que dejamos la boquilla a 0.1) pero esta vez con el FC (igual que antes usaremos el control manual para posicionarnos). Cuando estemos en el mismo punto bajamos Z hasta que el FC este a punto de cerrar el contacto y empezamos a hacer movimientos de 0.1 hasta oír el clic del FC.
-Vale ya hemos oído el clic, ahora tenemos que ejecutar el siguiente comando M114 (todos los códigos usados son G-code), nos dará unos valores similares a estos X:24.3 Y:-31.4 Z:5.1.
-Con los valores anteriores anotados volvemos a marlín y buscamos esto:
#define X_PROBE_OFFSET_FROM_EXTRUDER -24.3
#define Y_PROBE_OFFSET_FROM_EXTRUDER 31.4
#define Z_PROBE_OFFSET_FROM_EXTRUDER 5.1
Cambiamos los valores por el valor que nos ha dado M114 pero multiplicándolo por (-1). Volvemos a cargar marlín en nuestro arduino.
-Ya estamos casi terminados. Probaremos que todo funciona correctamente.
Ejecutamos G28 (home de todos los ejes)
Ejecutamos G29 (toma medida en 3 puntos)
-Si lo anterior nos ha salido bien solo nos queda irnos a slic3r y buscar Printer settings> Custom G-code y en start G-code ponemos:
G28 ; home all axes
G29
G1 Z5 F5000 ; lift nozzle
-Para ajustar bien la altura de la boquilla respecto al espejo/cristal tenemos que irnos a marlín a #define Z_PROBE_OFFSET_FROM_EXTRUDER 5.1, si bajamos este valor aumentara la distancia entre la boquilla y el espejo si lo aumentamos lo contrario.
Espero que os sirva este tutorial, cualquier duda por aquí estamos.
Un saludo
Victor
--
---
Has recibido este mensaje porque estás suscrito al grupo "Clone Wars: Imprimiendo impresoras 3D" de Grupos de Google.
Para anular tu suscripción a este grupo y dejar de recibir sus mensajes, envía un mensaje a asrob-uc3m-impreso...@googlegroups.com.
Para publicar en este grupo, envía un mensaje a asrob-uc3m-i...@googlegroups.com.
Para acceder a más opciones, visita https://groups.google.com/d/optout.
Lo mismo me pasa a mi he desistido de la autonivelación , tengo el servo , final de carrera todo montado en la pieza del extrusor pero sin hacerlo funcional a la espera de que algun dia ..........
Jejej, me pasa lo mismo: G28 hace la prueba en la esquina de X=0 e Y=0 y además, cuando le doy al G29 hace las cuatro pruebas en el mismo sitio. He probado con diferentes versiones del firmware y nada...
El 17/03/14 10:24, Oscar Rodriguez Parra escribió:
Hola--
He probado tanto el firmware original descargado de ErikZalm como el de neoxM3 en el foro de SpainLabs. En ambos casos cuando hace homing con el comando G28, el del eje Z no se va a centro de la cama y por tanto el servo al estar fuera de esta no pulsa haciendo que los motores bajen la plataforma indefinidamente. Pongo un vídeo para que lo veais mejor:
Y si, tengo descomentado el Z_SAFE_HOMING y todo lo que le sigue, pero no se por qué no se mueve al centro de la cama :(
---
Has recibido este mensaje porque estás suscrito al grupo "Clone Wars: Imprimiendo impresoras 3D" de Grupos de Google.
Para anular tu suscripción a este grupo y dejar de recibir sus mensajes, envía un mensaje a asrob-uc3m-impresoras-3d+unsub...@googlegroups.com.
--Para anular tu suscripción a este tema, visita https://groups.google.com/d/topic/asrob-uc3m-impresoras-3d/KCaffYNZ1o0/unsubscribe.
---
Has recibido este mensaje porque estás suscrito a un tema del grupo "Clone Wars: Imprimiendo impresoras 3D" de Grupos de Google.
Para anular tu suscripción a este grupo y a todos sus temas, envía un mensaje a asrob-uc3m-impreso...@googlegroups.com.
Sí, me refiero a eso, pero concretamente a los MAX (por aquello del final de carrera que puse). En ese caso, y como supongo que no tienes puesto endstop en el final del recorrido de los ejes, sólo habría que invertir esos, por lo que no es necesario resoldar nada ni tocar los endstop "normales" (los del MIN).
El lunes, 17 de marzo de 2014 16:41:26 UTC+1, Oscar Rodriguez Parra escribió:
Supongo que te refieres a esto:const bool X_MIN_ENDSTOP_INVERTING = false; // set to true to invert the logic of the endstop.
const bool Y_MIN_ENDSTOP_INVERTING = false; // set to true to invert the logic of the endstop.
const bool Z_MIN_ENDSTOP_INVERTING = false; // set to true to invert the logic of the endstop.
const bool X_MAX_ENDSTOP_INVERTING = false; // set to true to invert the logic of the endstop.
const bool Y_MAX_ENDSTOP_INVERTING = false; // set to true to invert the logic of the endstop.
const bool Z_MAX_ENDSTOP_INVERTING = false; // set to true to invert the logic of the endstop.
Pero si los invierto entonces, ¿seguirá funcionando igual el homing o habrá que resoldar los cables? Ahora mismo están todos conectados por los extremos.
El 17 de marzo de 2014, 16:14, WeSo <we...@pinflas.com> escribió:
No sé si en éste mismo hilo o en otros (hay varios frentes abiertos del autoleveling en distintos lados), ya se comentó el por qué ocurria.
Es un "problema" con los ENDSTOP, que casi ninguno los tenemos puestos en el final de carrera de cada uno de los ejes, por lo que al no estar activados, no se mueve al centro al hacer el Homming de Z. La solución suele ser invertirlos, es decir, en el Marlin, donde da la opción de invertirlos, ponerlos a true.
El lunes, 17 de marzo de 2014 10:30:31 UTC+1, Jorge Gómez Arenas escribió:
Jejej, me pasa lo mismo: G28 hace la prueba en la esquina de X=0 e Y=0 y además, cuando le doy al G29 hace las cuatro pruebas en el mismo sitio. He probado con diferentes versiones del firmware y nada...
El 17/03/14 10:24, Oscar Rodriguez Parra escribió:
Hola--
He probado tanto el firmware original descargado de ErikZalm como el de neoxM3 en el foro de SpainLabs. En ambos casos cuando hace homing con el comando G28, el del eje Z no se va a centro de la cama y por tanto el servo al estar fuera de esta no pulsa haciendo que los motores bajen la plataforma indefinidamente. Pongo un vídeo para que lo veais mejor:
Y si, tengo descomentado el Z_SAFE_HOMING y todo lo que le sigue, pero no se por qué no se mueve al centro de la cama :(
---
Has recibido este mensaje porque estás suscrito al grupo "Clone Wars: Imprimiendo impresoras 3D" de Grupos de Google.
Para anular tu suscripción a este grupo y dejar de recibir sus mensajes, envía un mensaje a asrob-uc3m-impresoras-3d+unsubscr...@googlegroups.com.
Para publicar en este grupo, envía un mensaje a asrob-uc3m-i...@googlegroups.com.
--Para anular tu suscripción a este tema, visita https://groups.google.com/d/topic/asrob-uc3m-impresoras-3d/KCaffYNZ1o0/unsubscribe.
---
Has recibido este mensaje porque estás suscrito a un tema del grupo "Clone Wars: Imprimiendo impresoras 3D" de Grupos de Google.
Para anular tu suscripción a este grupo y a todos sus temas, envía un mensaje a asrob-uc3m-impresoras-3d+unsub...@googlegroups.com.
Para publicar en este grupo, envía un mensaje a asrob-uc3m-i...@googlegroups.com.
Para acceder a más opciones, visita https://groups.google.com/d/optout.
Para anular tu suscripción a este grupo y a todos sus temas, envía un mensaje a asrob-uc3m-impresoras-3d+unsubscr...@googlegroups.com.
Para publicar en este grupo, envía un mensaje a asrob-uc3m-i...@googlegroups.com.
Para acceder a más opciones, visita https://groups.google.com/d/optout.
Para anular tu suscripción a este grupo y a todos sus temas, envía un mensaje a asrob-uc3m-impreso...@googlegroups.com.
--
---
Has recibido este mensaje porque estás suscrito a un tema del grupo "Clone Wars: Imprimiendo impresoras 3D" de Grupos de Google.
Para anular la suscripción a este tema, visita https://groups.google.com/d/topic/asrob-uc3m-impresoras-3d/KCaffYNZ1o0/unsubscribe. Para anular la suscripción a este grupo y todos sus temas, envía un correo electrónico a asrob-uc3m-impreso...@googlegroups.com.
Para publicar una entrada en este grupo, envía un correo electrónico a asrob-uc3m-i...@googlegroups.com.
Para obtener más opciones, visita https://groups.google.com/d/optout.
Joder, como sea eso... :)esta tarde cuando llegue lo pruebo y os comento.
El 18 de marzo de 2014, 8:35, Francisco Molina <furansh...@gmail.com> escribió:
Según la configuración del Marlin que has puesto en pastebin, aún no has descomentado la línea para que se active el autolevel.
//#define ENABLE_AUTO_BED_LEVELING
Descoméntala y prueba.
Saludos.
--
---
Has recibido este mensaje porque estás suscrito a un tema del grupo "Clone Wars: Imprimiendo impresoras 3D" de Grupos de Google.
Para anular la suscripción a este tema, visita https://groups.google.com/d/topic/asrob-uc3m-impresoras-3d/KCaffYNZ1o0/unsubscribe. Para anular la suscripción a este grupo y todos sus temas, envía un correo electrónico a asrob-uc3m-impresoras-3d+unsub...@googlegroups.com.
Para publicar una entrada en este grupo, envía un correo electrónico a asrob-uc3m-impresoras-3d@googlegroups.com.
--
---
Has recibido este mensaje porque estás suscrito al grupo "Clone Wars: Imprimiendo impresoras 3D" de Grupos de Google.
Para anular tu suscripción a este grupo y dejar de recibir sus mensajes, envía un mensaje a asrob-uc3m-impreso...@googlegroups.com.
Para publicar en este grupo, envía un mensaje a asrob-uc3m-i...@googlegroups.com.
Para acceder a más opciones, visita https://groups.google.com/d/optout.
Muchas gracias por compartirlo!! :D
El 19 de marzo de 2014, 12:36, Oscar Rodriguez Parra <osc...@gmail.com> escribió:
He encontrado esto que funciona perfectamente:El 18 de marzo de 2014, 23:31, Francisco Molina <furansh...@gmail.com> escribió:
Para eso, ya haría falta modificar código. Creo que en el foro de spainlabs alguien puso los cambios para que el servo sólo suba al finalizar la medición y no entre mediciones.
--
---
Has recibido este mensaje porque estás suscrito al grupo "Clone Wars: Imprimiendo impresoras 3D" de Grupos de Google.
Para anular tu suscripción a este grupo y dejar de recibir sus mensajes, envía un mensaje a asrob-uc3m-impresoras-3d+unsub...@googlegroups.com.
Yo quiero añadir el autolevel a mi TAZ, además tiene un montón de espacio para el servo. Pero tengo otras cosas en la lista de espera que tienen prioridad.
He de decir que en un principio no me parecía muy práctico, sobre todo por lo de subir y bajar el brazo en cada punto. Pero si esto se puede corregir y añadir más puntos de medición sí que puede suponer una comodidad en mi caso.
Cualquier micro servo de 9g te sirve, cuanto mas rapido mejor, mas rapidos los movimientos ;)
¿Alguna recomendación de servo? Hay tantas opciones que no me entero.
--
---
Has recibido este mensaje porque estás suscrito al grupo "Clone Wars: Imprimiendo impresoras 3D" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus mensajes, envía un mensaje de correo a asrob-uc3m-impreso...@googlegroups.com.
Para publicar en este grupo, envía un mensaje de correo a asrob-uc3m-i...@googlegroups.com.
//If you have enabled the Bed Auto Leveling and are using the same Z Probe for Z Homing,//it is highly recommended you let this Z_SAFE_HOMING enabled!!!#define Z_SAFE_HOMING // This feature is meant to avoid Z homing with probe outside the bed area.// When defined, it will:// - Allow Z homing only after X and Y homing AND stepper drivers still enabled// - If stepper drivers timeout, it will need X and Y homing again before Z homing// - Position the probe in a defined XY point before Z Homing when homing all axis (G28)// - Block Z homing only when the probe is outside bed area.#ifdef Z_SAFE_HOMING#define Z_SAFE_HOMING_X_POINT (X_MAX_LENGTH/2) // X point for Z homing when homing all axis (G28)#define Z_SAFE_HOMING_Y_POINT (Y_MAX_LENGTH/2) // Y point for Z homing when homing all axis (G28)
--Para anular la suscripción a este tema, visita https://groups.google.com/d/topic/asrob-uc3m-impresoras-3d/KCaffYNZ1o0/unsubscribe.
---
Has recibido este mensaje porque estás suscrito a un tema del grupo "Clone Wars: Imprimiendo impresoras 3D" de Grupos de Google.
Para anular la suscripción a este grupo y a todos sus temas, envía un mensaje de correo a asrob-uc3m-impreso...@googlegroups.com.
Para publicar en este grupo, envía un mensaje de correo a asrob-uc3m-i...@googlegroups.com.
Adjunto mi firmware "marlin" modificado con los datos que indicas Oscar.
En el video se ve el efecto que hace.
G28 sigue haciendo "cosas raras" en eje Z le gusta subir y bajar para mi sin motivo jejejejej
G29 lo has clavado. ya no sube el servo entre palpaciones.
Video: http://youtu.be/mwGBuI-I264
Link firmware: http://we.tl/gCsJ1Esmfg
Hola
He visto tu vídeo y queda genial la explicación jajajajaja
A ver te comento qué puede pasar porque leyendo mis comentarios me he dado cuenta que no está del todo claro XD:
En la función homeaxis añadir antes de retract_z_probe(); la llamada a la función do_blocking_move_to(0,0, Z_RAISE_BEFORE_PROBING);
Tiene un if y tendría que estar todo dentro del if:
if (axis==Z_AXIS)
{
do_blocking_move_to(0,0, Z_RAISE_BEFORE_PROBING);
retract_z_probe();
}
Creo que tu lo tendrás como:
do_blocking_move_to(0,0, Z_RAISE_BEFORE_PROBING);
if (axis==Z_AXIS) retract_z_probe();
Y luego un fallo que he cometido, cuando he dicho:
En la función process_commands añadir antes del retract_z_probe(); que he puesto en el caso anterior, la llamada a la función do_blocking_move_to(0,0, Z_RAISE_BEFORE_PROBING);
Esta mal, habría que poner un
do_blocking_move_relative(0, 0, Z_RAISE_BEFORE_PROBING); antes del retract_z_probe();
y un
do_blocking_move_relative(0, 0, -Z_RAISE_BEFORE_PROBING); después del retract_z_probe();
Por otro lado la función retract_z_probe la tienes que dejar como en la versión original y no la modificada que puse antes, es decir, tiene que estar así:
static void engage_z_probe() {
// Engage Z Servo endstop if enabled
#ifdef SERVO_ENDSTOPS
if (servo_endstops[Z_AXIS] > -1) {
#if defined (ENABLE_AUTO_BED_LEVELING) && (PROBE_SERVO_DEACTIVATION_DELAY > 0)
servos[servo_endstops[Z_AXIS]].attach(0);
#endif
servos[servo_endstops[Z_AXIS]].write(servo_endstop_angles[Z_AXIS * 2]);
#if defined (ENABLE_AUTO_BED_LEVELING) && (PROBE_SERVO_DEACTIVATION_DELAY > 0)
delay(PROBE_SERVO_DEACTIVATION_DELAY);
servos[servo_endstops[Z_AXIS]].detach();
#endif
}
#endif
}
Por si acaso pongo mi marlin_main.cpp: http://pastebin.com/QienYnRm
Saludos.
Por otro lado la función retract_z_probe la tienes que dejar como en la versión original y no la modificada que puse antes, es decir, tiene que estar así:
static void engage_z_probe() {
// Engage Z Servo endstop if enabled
#ifdef SERVO_ENDSTOPS
if (servo_endstops[Z_AXIS] > -1) {
#if defined (ENABLE_AUTO_BED_LEVELING) && (PROBE_SERVO_DEACTIVATION_DELAY > 0)
servos[servo_endstops[Z_AXIS]].attach(0);
#endif
servos[servo_endstops[Z_AXIS]].write(servo_endstop_angles[Z_AXIS * 2]);
#if defined (ENABLE_AUTO_BED_LEVELING) && (PROBE_SERVO_DEACTIVATION_DELAY > 0)
delay(PROBE_SERVO_DEACTIVATION_DELAY);
servos[servo_endstops[Z_AXIS]].detach();
#endif
}
#endif
}
Hola Oscar. Entre semana ando muy liado.
En cuanto lo pruebe te comento. Y lo pongo en el hilo. Me he dado cuenta que lo mande como respuesta privada y el resto de personas no ven la comunicación.
Para anular la suscripción a este grupo y a todos sus temas, envía un mensaje de correo a asrob-uc3m-impresoras-3d+unsub...@googlegroups.com.
Por lo que hemos estado comentando, la transcripción que realizaba Oscar no estaba muy clara y a demás tenia algún gazapo. Somos humanos que se le va a hacer ;-)
Con todo esto, he corregido "marlin_main" con las indicaciones de Oscar dejando mi "marlin_main" así:http://pastebin.com/pYiAe5gQ
Ahora funciona logicamente, subir y bajar eje Z, durante el comando "G28" home Z; y durante el comando "G29" palpaciones.Adjunto video como ha quedado su comportamiento tras indicaciones: https://www.youtube.com/watch?v=ZlmHS4bN56g&list=UU4_a3uUW5biwBRUN_CNfpkg
Después de las modificaciones he querido hacer un test de impresión. cubo de 20x20x10 con punta 0.25 que ya utilizaba antes, y he detectado un problema muy gordo.
Al imprimir el eje Z se ve que va adaptándose al desnivel de la mesa, hasta aquí bien, pero luego en algunos momentos, noto una pequeña vibración en el eje Z que no lo achaco al cambio de giro, sino como que se atascara, y esto provocara que el Z en algunas capas esta más alto de lo debido, llegando a no fijarse bien una capa con la otra. estoy utilizando una altura de capa de 0.15 mm con una punta de 0.25 mm.La corriente y ajuste de driver para ejes, la descarto al medir corriente correcta, 400 mA para eje Z.Adjunto video de impresión: https://www.youtube.com/watch?v=YJgWpeDA9RE&list=UU4_a3uUW5biwBRUN_CNfpkg