BricoLemon

  • 3

0 Avanzado

Finales de carrera (Endstops)

¡PELIGRO!

Presta mucha atención a la conexión correcta de los finales de carrera ya que muchos de ellos no tienen los pines en el mismo orden y pueden conmutar un positivo con negativo (cortocircuito) y estropear la placa, invalidando la garantía.

Primero, verifica cada endstop con un polímetro y asegúrate que conmutas o bien positivo a señal o negativo a señal. Nunca positivo con negativo ya que estropearás tu BricoLemon!!

Cómo conectar los finales de carrera (Endstops)

Existen muchos tipos de finales de carrera, pero al final lo que son es simples interruptores momentáneos. Lo que hace es abrir o cerrar un circuito eléctrico.

La conexión de final de carerra de la BricoLemon necesita que se conmute un pin de señal con otro pin, ya sea positivo o bien negativo. En función del modelo de final de carrera que tengas, puede que necesites intercambiar pines del conector.

Si utilizas un switch simple con 3 pines, fíjate bien en cómo tiene organizado los pines, que normalmente son:

  • C: Común
  • NO: Normally open (normalmente abierto)
  • NC: Normally close (normalmenter cerrado)

El pin "C" (común) siempre será conectado al pin de señal END_STOP. Luego lo normal es utilizar conexiones normalente abiertas (el switch no conmuta si no se acciona), así que la patilla "NO" será conectada al pin GND de la BricoLemon.

Abajo verás dos ejemplos de conexión de los finales de carrera más comunes.

Ejemplo de conexión de finales de carrera

Ejemplo de conexión de finales de carrera

Cómo configurar endstops en Marlin

En este punto vamos a revisar los EndStops de nuestra máquina y sus configuraciones, para ello debemos buscar el hastag ##EndStop## dentro del configuration.h

EndStop en configuration.h

EndStop en configuration.h

Como podemos ver tenemos la dirección tanto en True como en False. Esto lo que indica es cómo vamos a tener el EndStop una vez esté presionado, es decir, cómo lo va a detectar Marlin.

La Bricolemon por defecto  en Marlin tiene configurado Pull-Up en los endstop, es decir, si no hay ningún endstop conectado ve 3,3V, lo que viene siendo un TRUE. Por lo tanto, nuestro EndStop lo que tiene que hacer es cortocircuitar la señal de GND una vez esté pulsado, de forma que Marlin va a ver un cambio de 3,3V a GND, es decir, un cambio de nivel lógico alto a bajo.

Por lo tanto, la Bricolemon lo que necesita por defecto es que el EndStop cierre el circuito a GND.

Una vez realizado esto vamos a comprobar si tenemos nuestros EndStop correctamente configurados en Marlin, para ello debemos flashear la Bricolemon y conectarnos por serie a la impresora para enviar el comando "M119".

GCode marlin

GCode marlin

Sí tenemos bien conectados los ENDStop veremos que cuando no hay ninguno pulsado tenemos el dispositivo en Open, y cuando están pulsados, en trigger. La forma más sencilla es ver el estado con el "M119", apretar un endstop con la mano para cerrarlo y volver a ver con el M119 si funciona correctamente.

Si vemos que un EndStop cuando está sin pulsar está en TRIGGERED y cuando lo pulsamos manualmente está en open, esto quiere decir que la lógica está al reves (esto pasa en el eje Z en muchas máquinas). Por lo tanto lo que debemos hacer es cambiar el True por False o viceversa en el eje correspondiente. Por ejemplo pasaríamos de:

  • #define Z_MIN_ENDSTOP_INVERTING false // Set to true to invert the logic of the endstop.

a esto:

  • #define Z_MIN_ENDSTOP_INVERTING true // Set to true to invert the logic of the endstop.

NOTA: Toda la polaridad viene escrita en la parte inferior de la PCB, se puede ver en la foto de la introducción.

Usar el ENDSTOP E1 para otra función

Como se puede apreciar, la placa tiene un motor número 5, este motor puede ser utilizado como extrusor 2 o como un eje más.

Sí llegamos a tener la necesidad de configurar un endstop a mayores de los ya establecidos X/Y/Z deberemos editar en la configuración de la bricolemon lo descrito a continuación.

Primero debemos buscar el archivo pins_BRICOLEMON_V1_0.h, tenemos dos formas de encontrarlo.

  • Buscando con la lupa el hastag ##ENDDSTOPS BRICOLEMON##
  • Yendo de manera manual al archivo que se encuentra en nuestra carpeta del firmware en MARLIN2.0.6->Marlin->src->pins->samd->pins_BRICOLEMON_V1_0.h

Una vez ahí debemos modificar el endstop del Extrusor, que por defecto es un detector de filamento, a un endstop del eje que queramos.

En este ejemplo vamos cambiar el sensor de filamento por un nuevo endstop para el eje Z. Según marlin este nuevo eje se define como Z2, por lo tanto sabiendo que vamos usar un endstop en su posición mínima, es decir cero, pondremos la variable Z2_MIN_PIN con el pin 48, el cual es el del endstop del extrusor E1.

232

232

Declaración endstop Z2

Declaración endstop Z2