Hola,
Estoy haciendo unas pruebas para una calibración automática.
Mediante Gcode le estoy metiendo una serie de parámetros, pero cuando intento meter Z-5 por ejemplo, este nunca pasa de 0 (cosa que puede ser lógica), hay alguna forma de poder forzarlo y que se pueda hacer?
Gracias.
Hola, como poder se puede hacer, siempre que se tenga un sensor para fijar el 0 del eje y se tengan controlados los movimientos que se pide realizar.
Si no es así, estando deshabilitada la limitación se podrían producir daños, ya que el interruptor de final de carrera no pararía el movimiento del eje.
Se me ocurren dos formas de hacerlo, dependiendo del firmware que tenga la impresora: si se tiene el firmware de serie solo se podría hacer (si es que lo tiene implementado, que habría que comprobarlo) mediante el comando M211, que habilita/deshabilita los "Software Endstops".
Previamente habría que hacer "homing" para desactivar la limitación, con la posición indefinida, de movimientos en sentido descendente.
La sintaxis es: M211 S<flag>, donde <flag> es 0 para deshabilitarlos y 1 para habilitarlos.
¡Ojo!, una vez deshabilitados, todos los ejes se pueden mover a posiciones negativas.
Si se tiene un firmware modificable (como Marlin, por ejemplo), además de la forma anterior también se puede desactivar para un eje concreto.
Para ello, en el archivo Configuration.h hay que comentar (poner // delante) la línea correspondiente al eje en el que se quiera hacer:
#define MIN_SOFTWARE_ENDSTOP_X
#define MIN_SOFTWARE_ENDSTOP_Y
#define MIN_SOFTWARE_ENDSTOP_Z
No sería difícil implementar, en el menú de la pantalla, una opción para controlar la activación y desactivación de estos límites.
Como digo, es una cosa a realizar con precaución, ya que se pueden producir daños si no se tiene cuidado con los movimientos que se ordenan.