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
Rele 4 canales con ramps, Arduino mega y marlin
#1
Hola,

Estoy construyendo un plotter con un Arduino mega, una ramps 1.5 y marlin. Todo funciona correctamente por ahora, pero había pensado en utilizar un Rele con 4 canales para controlar las puntas del plotter. 
¿Podría conectarlo al Arduino o la ramps y controlarlo desde el gcode que lance?

Muchas gracias por la ayuda
  Responder
#2
Hola, por supuesto que puedes, solo tienes que alimentar el relé y conectar el pin de señal de cada relé a un pin libre en la RAMPS (tiene muchos).
Para controlar la activación de los relés, puedes utilizar el comando gcode M42: si usas una versión moderna de Marlin, tendrás que tener definido el parámetro DIRECT_PIN_CONTROL, que se encuentra en el archivo Configuration_adv.h, descomentando la línea en que se define.
  Responder
#3
(21-12-2024, 08:01 PM)Simemart escribió: Hola, por supuesto que puedes, solo tienes que alimentar el relé y conectar el pin de señal de cada relé a un pin libre en la RAMPS (tiene muchos).
Para controlar la activación de los relés, puedes utilizar el comando gcode M42: si usas una versión moderna de Marlin, tendrás que tener definido el parámetro DIRECT_PIN_CONTROL, que se encuentra en el archivo Configuration_adv.h, descomentando la línea en que se define.

Ok. No parece complejo, puedo sacar entonces la alimentación y seguramente los 4 pines de alguno de los aux directamente. Buscare la línea en marlin y probare.

Muchas gracias!
  Responder
#4
Ten en cuenta el tipo de pin que utilices (normal o PWM), para el valor del parámetro S en el comando M42 (mejor si no son PWM).
  Responder
#5
(21-12-2024, 08:50 PM)Simemart escribió: Ten en cuenta el tipo de pin que utilices (normal o PWM), para el valor del parámetro S en el comando M42 (mejor si no son PWM).
Hola, 

Ya he cableado el Rele (ELEGOO relay 4 channels) al aux 2 de la ramps, pines 63,59,65,66, Gnd,5v.
He buscado si mi marlin (creo que es 2.0.5) tenía la línea “direct_pin_control” y parece que no,
Por otro lado he conectado cada uno de los solenoides a la fuente y al “no” del Rele. He conectado también el common del Rele a la fuente.
Con todo conectado en cuanto enciendo la cuente, si el cable del solenoide está en “no” no pasa nada, si está en “nc” se activa, CORRECTO.
Aquí va el problema:
Si mando un M42 P65 S1 se enciende el led del Rele pero no el solenoide.
Si mando un M42 P65 S0 no se apaga ni ocurre nada.
Si mando un M42 P65 S255 se apaga el led y tampoco hace nada el solenoide

No entiendo nada de este comportamiento ni que puede estar pasando 

Gracias
  Responder
#6
Si la versión de Marlin es la 2.0.5, no utiliza el parámetro DIRECT_PIN_CONTROL, estando definido el comando M42 sin más.
La conexión del dispositivo a NC o NO, depende de cómo se quiere que funcione: si se utiliza la NC, funcionará mientras el relé esté desactivado; si se utiliza la NO, funcionará mientras esté activo el relé.
Los pines que estás utilizando no son PWM, por lo que deberían ponerse en HIGH al enviar un 1 (activación del relé) y en LOW al enviar un 0 (desactivación del relé).
Marlin inicializa esos pines en LOW, por lo que al encender debería estar desactivado el relé.
Si pones el esquema de cómo lo tienes conectado, quizá se pueda ver algo que cause el problema.

P.S.: Mirando las especificaciones de ese módulo de relés, parece ser que funciona con nivel de activación LOW, lo que puede ser un problema al utilizarlo con Marlin por lo que indiqué de cómo inicializa los pines.
  Responder
#7
La sensación es que la señal llega pero el Rele no funciona porque no cambia el estado aunque se enciende la luz. Lo otro raro es que al enviar la señal de 0 no se apagar ni la luz.
Si la señal ya le llegará en low al arrancar, supongo que se encenderían los leds automáticamente

Esto es al arrancar:

[Imagen: IMG-8452.jpg]

Esto es cuando envío el m42 a todos los pines
[Imagen: IMG-8451.jpg]
¿Que tipo de Rele debería comprar? ¿Algún ejemplo?

Gracias por la ayuda
  Responder
#8
El funcionamiento de los leds del módulo de relés, parece indicar un funcionamiento correcto de los pines del arduino por lo que, si no se activa el relé correspondiente, quizá se deba a que al módulo no le llegan 5V por el pin VCC.
  Responder
#9
(31-12-2024, 01:51 AM)Simemart escribió: El funcionamiento de los leds del módulo de relés, parece indicar un funcionamiento correcto de los pines del arduino por lo que, si no se activa el relé correspondiente, quizá se deba a que al módulo no le llegan 5V por el pin VCC.

Hola, 

Ya he conseguido que funcione, faltaba conectar los 12 voltios de la  fuente al jdvcc del rele, por defecto se activaba pero salían 5v.
Lo único raro que sigue ocurriendo es que cuando mando valor 1 se activa el rele, pero cuando mando valor 0 no se desactiva. Con valor 255 se desactiva el rele.

Gracias por la ayuda.
  Responder
#10
El puente JD-VCC se utiliza para que los solenoides de los relés trabajen al voltaje que se suministre por el pin VCC y seguramente el problema no viene del voltaje, sino del amperaje que admiten los pines del Arduino, que no será suficiente para activar los relés.
Ese módulo debería funcionar sin ningún problema a 5V: mucho cuidado con no inyectar los 12V por la línea de VCC del Arduino o pasará a mejor vida el ATMega2560.
El funcionamiento que indicas es coherente con que el módulo trabaje con activación en nivel bajo (LOW) y con pines con PWM: enviar 1 no modifica el nivel bajo, de ahí que no se desactiven los leds, aunque los pines que dices estar utilizando no son PWM, lo que me parece bastante raro, quizá Marlin los esté configurando en ese modo.
  Responder
#11
Puedes conectar el relé de 4 canales directamente a los pines de salida del Arduino Mega, o a los pines de salida en la RAMPS 1.5 si usas la configuración para controlar dispositivos adicionales (por ejemplo, pines en el puerto D8-D11 en RAMPS). Asegúrate de conectar correctamente la alimentación del relé (usualmente 5V para un relé estándar de 5V) y conectar los pines de control del relé a los pines digitales del Arduino Mega o RAMPS.
  Responder


Posibles temas similares…
Tema Autor Respuestas Vistas Último mensaje
  CONSULTA Problema con Arduino Mega, RAMPS y TCM2208 V1.2 pepebky 7 823 05-05-2022, 09:20 AM
Último mensaje: Simemart
  CONSULTA Mi arduino mega se sobrecalienta y no es reconocido por el pc Riso 4 1,057 23-09-2021, 06:49 PM
Último mensaje: asesorplaza1
  Problema arduino mega + ramps 1.4 regulador as1117, y otras dudas lechuzo 6 2,188 25-05-2021, 07:38 AM
Último mensaje: lechuzo
  CONSULTA Problema con Ramps y A4988 lambda4 19 3,008 28-11-2020, 01:28 AM
Último mensaje: Simemart
  ramps 16 con tmc 2208 uart roa122 1 1,183 24-10-2020, 01:08 PM
Último mensaje: Simemart