This forum uses cookies
This forum makes use of cookies to store your login information if you are registered, and your last visit if you are not. Cookies are small text documents stored on your computer; the cookies set by this forum can only be used on this website and pose no security risk. Cookies on this forum also track the specific topics you have read and when you last read them. Please confirm whether you accept or reject these cookies being set.

A cookie will be stored in your browser regardless of choice to prevent you being asked this question again. You will be able to change your cookie settings at any time using the link in the footer.

  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Vertex K8400 y BlTouch
#21
Teniendo en cuenta que es conveniente que alimentes el BLTouch con una fuente externa a la placa, yo no lo haría de forma directa, sino mediante un optoacoplador.
  Responder
#22
Estudie electrónica hace ya 20 años y se olvidó casi todo!! No se lo que es un optoacoplador, por lo que he leído sirve para transformar y proteger la fuente de salida de la entrada mediante la detección de luz del led? Tenia pensado meterle algún tipo de transformador pero no habia pensado en ninguno en concreto, de momento para las pruebas creo que me vale la fuente de laboratorio. El optoacoplador puede aceptar de entrada los 24v de salida de la fuente y entregar los 5v para el servo? por lo que pude ver conectando la fuente de laboratorio, no consume mas de 300mA.
De todas maneras, ahora la duda que tengo sobre todo es si puedo conectar el cable blanco del BlTocuh del esquema que envié en mi primer mensaje (cable señal endstop) a otro pin libre de la placa de tal manera que no llevaría nada de electronica entre el sensor y el Mega2560. No se si de puede conectar a los pines:
- PH4  Digital Pin 7 PWM
- PB6  Digital Pin 12 PWM
Tengo la sensación que es alguna incompatibilidad con la circuitería aunque tampoco tengo claro que funcione sin nada de electrónica intermedia
Es cierto que ya no miro nada de Marlin pero es que creo que la configuracion no tiene mas misterio de lo que hemos ido comentando
  Responder
#23
El optoacoplador que yo te indico es básicamente un interruptor, compuesto por un diodo led y un fototransistor, que normalmente sirve para aislar dos circuitos (porque operan a distinto voltaje, por ejemplo): el circuito del diodo led y el circuito conectado al colector y emisor del fototransistor.
Como la activación se produce mediante luz, quedan los dos circuitos aislados eléctricamente y de esa forma se evitan posibles sobretensiones o ruidos inducidos por no tener la circuitería que quieres evitar.
La fuente que alimente el BLTouch, debe entregarle los 5V con los que funciona (cables rojo y marrón) y este optoacoplador no tiene nada que hacer en ese sentido, pues no tiene funciones de regulador: el BLTouch controlará el optoacoplador mediante la linea de señal y masa (cables blanco y negro), que funcionan a los mismos 5V indicados (forzando el parámetro correspondiente, si es necesario) y que, aplicados sobre el diodo led por intermedio de la resistencia adecuada (en función del voltaje), hacen que este emita luz y se cierre el circuito del fototransistor, que es el que estará conectado al pin de la placa y a masa.
Como ya te indiqué, puedes conectarlo a otro pin libre de la placa (que no es necesario que tenga PWM, por cierto), pero yo lo haría con un optoacoplador como intermediario entre el BLTouch y el pin de la placa.
Si conectas el cable blanco directamente a un pin de la placa, en teoría debería funcionar, siempre que ese cable esté a 5V o 0V dependiendo de la activación o no del sensor, lo que debería ser así si la fuente externa alimenta el BLTouch con 5V y se unen las GND de ambas fuentes, la externa y la de la placa.
Lo que aporta el optoacoplador es que, en la parte del sensor se trabaja con la fuente externa y en la de la placa con la fuente de esta última, lo que evita cualquier problema.
  Responder
#24
Creo que ya tengo el material necesario para hacer las pruebas pero tengo dudas (protoboard con sus cablecitos, resistencias, optoacoplador 4N28)
La primera y creo que importante para saber el esquema del optoacoplador, el Bltouch es un sensor PNP o NPN? no encuentro info oficial del mismo, creo que es PNP al ver que en Marlin configuran pero no estoy seguro:
#define Z_MIN_ENDSTOP_INVERTING false
#define Z_MIN_PROBE_ENDSTOP_INVERTING false
Otra duda de principiante: la parte del bltouch se conecta al primario del optoacoplador o al secundario? he visto esquemas que Arduino lo conectan en el secundario y el sensor en el primario pero no lo tengo claro...
[Imagen: arduino-optoacoplador-entrada.png]
https://www.luisllamas.es/arduino-optoacoplador/
En concreto me estaba fijando en la parte ARDUINO RECEPTOR DE SEÑAL OPTOACOPLADA. Por cierto no pone resistencias para proteger el led explicando porque no lo hace (resistencias de Pull-Up internas de Arduino), es correcto? en todas las web veo que ponen siempre una resistencia para no romper el led
En caso de que sea corecto el esquema de esta web se conectaria al optoacoplador el cable Blanco (signal) al pin 1 y el negro (GND) al pin 2, ¿no seria necesario algun pin de +5v?
  Responder
#25
Efectivamente, el BLTouch es de tipo PNP, de ahí que se configure la lógica a false y la conexión al optoacoplador es como indicas, en la parte "primaria" (entrada).
Como indica en ese enlace, la resistencia en la entrada del optoacoplador se necesita para hacer que la intensidad de corriente que pasa por el fotodiodo esté dentro de la tolerancia, que para un 4N28 es de 60 mA máximo: para un voltaje de entrada de 5V (poniendo el BLTouch en ese modo), la resistencia que se suele poner es de 220 Ohms, que equivale a una intensidad de 23 mA.
Las resistencias internas de PullUp  del Arduino permiten quitar las que normalmente se colocan externamente, pero eso es en el lado del optoacoplador que conecta con él, del lado del fotodiodo debe colocarse una para protegerlo.
Sobre el esquema de conexión que indicas, yo prefiero este otro, estén o no activadas las resistencias de PullUp del arduino:

[Imagen: Img1.jpg]

Tanto si se usa este esquema, como el que tú pones, hay que cambiar la lógica del sensor, pues la salida del optoacoplador pasa a ser de tipo NO (true para Marlin).
Si vas a utilizar un pin distinto de Z-min, solo tienes que cambiar la lógica del sensor, parámetro Z_MIN_PROBE_ENDSTOP_INVERTING.
  Responder
#26
¿con el siguiente esquema seguiría estando la lógica en FALSE?
[Imagen: esquema.png]
Es una tontearía de cambio pero si consigo que funcione espero que pueda ser de ayuda a mas gente, y creo que es mas fácil si no se cambia esa linea de firm porque en todos los tutoriales te indican que le BlTouch se configura en FALSE. No obstante mi esquema puede estar mal, eso por descontado...

La resistencia de 1K que pones en la salida hacia el pin de Arduino ¿es para reducir la intensidad que le llega al Pin? Para la tensión de 5v tengo pensado aprovechar el pin que en principio estaba dedicado al Servo en el primer esquema, pero visto que le puede faltar intensidad a la placa voy a poner un convertidor de 24v a 5v. Esto te lo comento por si no hace falta poner la resistencia ya que la intensidad que da la placa para los 5v es muy baja si no me equivoco.
  Responder
#27
Los dos esquemas anteriores son en PullUp, este que indicas ahora sería en PullDown y efectivamente cambiaría la lógica del pin a NC (false para Marlin): en principio, cualquiera de ellos debería funcionar de forma correcta.
Todas las resistencias son limitadores de la intensidad que circula por los circuitos en las que se encuentran, esa es precisamente su función.
Mucho cuidado con el regulador que pongas para pasar de 24V a 5V (entiendo que para alimentar el BLTouch): que sea de calidad o podrías tener problemas con el ruido que pueda generar.
Los pines del Arduino pueden dar hasta 40 mA, pero conviene que no superen los 20 mA.
Para las resistencias de PullUp/PullDown, contra menos intensidad pase por ellas mejor (menos intensidad=menos consumo), su función es poner el pin en estado alto/bajo y eso lo define el voltaje, no la intensidad.
  Responder
#28
No se terminan las dudas...
Con el primer esquema que mandas PullUp, la lógica de Z_MIN_PROBE_ENDSTOP_INVERTING pasa a TRUE y entonces no compila porque al activar BLTouch no permite que Z_MIN_PROBE_ENDSTOP_INVERTING esté en TRUE, obligatorio FALSE:
#error BLTOUCH requires Z_MIN_PROBE_ENDSTOP_INVERTING set to false.
Con el segundo que envío yo, PullDown, la lógica Z_MIN_PROBE_ENDSTOP_INVERTING la mantenemos en FALSE por lo que no es problema, pero al indicar:
#define ENDSTOPPULLDOWN_ZMIN_PROBE
me da un error al compilar porque las placas AVR no soportan PullDown: #error "PULLDOWN pin mode is not available on AVR boards."
Esto ultimo cambio lo he hecho porque entiendo que al cambiar a este tipo la electronica que ponemos en el lado de Arduino habrá que decirselo al Marlin??
PAra quitar el primer mensaje de error se me ocurre comentar las lineas que definen esta condicion en el archivo Conditionals_LCD.h:
#if Z_MIN_PROBE_ENDSTOP_INVERTING
#error "BLTOUCH requires Z_MIN_PROBE_ENDSTOP_INVERTING set to false. Please update your Configuration.h file."
#endif
Para solucionar este segundo caso podría cambiar la segunda restriccion en el SanityCheck.h dejando comentado:
//#if USING_PULLDOWNS
//#error "PULLDOWN pin mode is not available on AVR boards."
//#endif
Lo que no se es que consecuencias podria tener el quitar los mensajes de error para forzar el compilado, no se si se podria dejar el circuito en PullDown sin tener que definirlo en el Marlin?

Otra cuestion, en todos los circuitos estamos poniendo una resistencia de 220 ohm en la entrada del opto para que limitar intensidad en el led, he visto en una web de electronica que se debe utilizar la siguiente formula para calcular el valor de la resistencia que precede a un LED:
R = (Vfuente – Vled) / I
R= (5v - 1.4V) / 0.020 = 180ohm
Lo que viene a decir es que hay que restar la tensión de trabajo del led a los 5v (5-1.4)
https://hetpro-store.com/TUTORIALES/resi...s%20azules).
Yo, evidentemente, no tengo ni idea pero si es correcta la correccion le llegarian solo 0.16A que no se si es suficiente para que trabaje el led?
  Responder
#29
Tienes razón, me había olvidado de que Marlin "sabe" que los BLTouch son PNP y actúa en consecuencia. Para evitarlo, parece lógico eliminar el mensaje de error de compilación, pero esto no es una buena idea en Marlin, pues nunca se sabe si no habrá algun punto en el código donde aparezca un error de ejecución, errores que son mucho más graves.
Las resistencias internas de los AVR son de tipo PullUp, pero nada impide dejarlas desactivadas: si utilizas el esquema en PullDown, solo tienes que configurar Marlin de forma que tenga desactivada la resistencia interna de PullUp del pin donde conectes el optoacoplador, así:

...
// Enable pullup for all endstops to prevent a floating state
//#define ENDSTOPPULLUPS
#if DISABLED(ENDSTOPPULLUPS)
  // Disable ENDSTOPPULLUPS to set pullups individually
  #define ENDSTOPPULLUP_XMIN
  #define ENDSTOPPULLUP_YMIN
  #define ENDSTOPPULLUP_ZMIN
  //#define ENDSTOPPULLUP_IMIN
  //#define ENDSTOPPULLUP_JMIN
  //#define ENDSTOPPULLUP_KMIN
  //#define ENDSTOPPULLUP_UMIN
  //#define ENDSTOPPULLUP_VMIN
  //#define ENDSTOPPULLUP_WMIN
  #define ENDSTOPPULLUP_XMAX
  #define ENDSTOPPULLUP_YMAX
  #define ENDSTOPPULLUP_ZMAX
  //#define ENDSTOPPULLUP_IMAX
  //#define ENDSTOPPULLUP_JMAX
  //#define ENDSTOPPULLUP_KMAX
  //#define ENDSTOPPULLUP_UMAX
  //#define ENDSTOPPULLUP_VMAX
  //#define ENDSTOPPULLUP_WMAX
  //#define ENDSTOPPULLUP_ZMIN_PROBE
#endif
...


He dejado definidas las resistencias de todos los finales de carrera, para dejarlos como vienen por defecto.
  Responder
#30
(13-07-2022, 06:40 PM)Simemart escribió: Pues si cuando hace el test la pantalla baja de intensidad, seguramente el BLTouch esté defectuoso, de ahí ese efecto (seguramente por un consumo excesivo en él).
No sé si lo has tenido en cuenta, pero cuando se utilizan dos fuentes separadas, es muy importante unir sus GND para garantizar una referencia de votaje 0 igual en ambas.

No he conseguido encontrar info de esto que me dijiste, cuando me dices de unir las GND a que te refieres? mi fuente tiene un borne de GND y otro de Negativo pero no veo claro lo que me dices de conectar ni donde.
[Imagen: PXL-20220720-204737591.jpg]
  Responder
#31
La terminología de las conexiones no es muy consistente y negativo y GND aveces se utilizan para indicar lo mismo.
Por ejemplo, en algunos dispositivos eléctricos y electrónicos se indica el negativo como GND, mientras que en las fuentes de alimentación de laboratorio como esa, la indicación GND suele ser la tierra (GrouND): en cualquier caso, lo que hay que unir son los dos negativos de las dos fuentes, simplemente conectándolas con un cable.
Esto se hace para que ambas fuentes tengan la misma referencia de voltaje.
En todo caso, si utilizas un regulador de voltaje para convertir los 24V de la fuente de la impresora, a los 5V que necesita el BLTouch, no sería necesario hacerlo pues el negativo sería común.
  Responder
#32
Lo primero es lo primero, muchas gracias Simemart porque sin tu ayuda nos se si lo habría conseguido o me habría costado muchísimo mas.

POR FIN!!!!!
Ya he podido hacer el montaje con la Protoboard y funciona!!!! Efectivamente es problema con la electrónica que hay en el Z-Min en mi placa pero no por defectuosa sino por su diseño al igual que el X-Min o Y-Min, aunque he podido ver en un foro ingles que mucha gente tiene problemas con las versiones 3.0 y 3.1 debido a lo mismo. La solución ha pasado por utilizar un pin libre de mi placa para conectarle el cable de señal del sensor Bltouch intermediando el ultimo esquema electrónico con el optoacoplador y las pertinentes modificaciones de firm, en cuanto lo tenga todo terminado dejare un mensaje con todo lo realizado, espero no se me olvide nada.

Dejo el enlace donde se puede ver el video del éxito aunque todavía queda dejarlo bonito y ajustar el firmware, de momento he probado con una placa de pruebas pero lo próximo es montar una PCB casera y anclarla a la maquina:
https://youtube.com/shorts/TgPJXvGiFN0?feature=share

Por cierto, como ves utilizo la fuente de laboratorio pero solo para la salida del Bltouch en el optoacoplador: la tensión para el servo utilizo un pin de la placa que parece ser que da suficiente intensidad, solo me falta encontrar otro pin que me de otros 5v para la salida del optoacoplador y ya no me haría falta un convertidor de 24v a 5v. Te hice caso y uní el negativo de la impresora con el de la fuente para evitar problemas.

Creo que la info sacada en este hilo será de mucha ayuda a otros usuarios para poder instalarse con éxito un Bltouch de ultima generación, cuando tenga todo terminado redacto un pequeño resumen.
  Responder
#33
Me alegro de que lo hayas conseguido.
Un saludo.
  Responder


Posibles temas similares…
Tema Autor Respuestas Vistas Último mensaje
  Problema calibrado BLTouch DJuan 6 4,763 11-04-2020, 09:41 AM
Último mensaje: carlos_mahiques