El voltaje del pin GPIO es demasiado bajo para energizar el relé

9

Estoy tratando de activar y desactivar un pequeño relé . He conectado un pin GPIO y GND directamente al relé. Puedo escuchar el clic del relé cuando configuro el pin GPIO en ALTO.

Sin embargo, el relé rara vez deja pasar una señal. Funciona algunas veces, pero rara vez. Si configuro el pin en ALTO, y mido el voltaje, solo es de alrededor de 1.6V, así que supongo que a veces no hay suficiente potencia para conducir el relé.

He medido previamente el voltaje en los pines, y se lee 3.3V. ¿Alguna idea sobre cuál podría ser el problema?

Andreas
fuente
Si ha conectado el relé directamente a los pines GPIO del Pi, desafortunadamente es muy probable que haya roto algo. ¿El relé está montado en algún tipo de módulo de PCB con aisladores?
goobering

Respuestas:

14

No debe conducir directamente un relé desde la Raspberry Pi. Un GPIO individual solo puede proporcionar de manera segura aproximadamente 16 mA a 3V3, lo que es poco probable que sea suficiente para energizar las bobinas de un relé electromagnético estándar. Incluso si pudiera la EMF posterior causada por el colapso del campo magnético en las bobinas del relé cuando se apagó, podría destruir un GPIO y el Pi.

Debe usar el GPIO para cambiar un circuito externo para cambiar el relé.

Por lo general, se usaría un transistor (para amplificar la corriente) y un diodo (para proteger contra la EMF posterior).

Personalmente, probablemente usaría un chip ULN2003A ya que fueron diseñados para este propósito.

Hay muchos relés integrados en tableros de controladores disponibles para el mercado de pasatiempos.

joan
fuente
Ajá, ¿entonces es básicamente un circuito como el que se muestra aquí , pero conectado al riel 3v3?
Andreas
@ Andrea Sí, aunque podría usar el riel de 5V si el relé está contento con 5V. Está utilizando el GPIO para encender el transistor. El transistor estará encantado de cambiar 5V.
Joan
Muy bien, tiene sentido. Muchas gracias. Espero no haber frito nada todavía. Dios, el software es mucho más fácil que el hardware.
Andreas
2
@Andreas Ay, si el software fuera más fácil que el hardware, no reiniciaríamos las computadoras para solucionar sus problemas.
Dmitry Grigoryev
Me gusta la línea de controladores de relé NUD31xx de OnSemi. Funcionan mejor que cualquier transistor y diodo individual que haya visto.
Jeanne Pindar
16

Si desea conducir un solo relé de bajo voltaje, usar un chip controlador de 7 canales será una exageración. Estarás perfectamente bien con un solo transistor NPN y un diodo flyback:

esquemático

simular este circuito : esquema creado con CircuitLab

Nota: R1 puede reemplazarse por un LED y una resistencia de 200 - 500 Ohm en serie si desea una pista visual sobre el estado de su relé. Esto es lo que a menudo se hace en placas de relé prefabricadas.

Dmitry Grigoryev
fuente
(El enlace de simulación no se encuentra. ¿Puedes arreglar esto?)
nixda
@nixda con suerte arreglado ahora
Dmitry Grigoryev
44
Sin embargo, tenga cuidado con esa idea LED adicional. Si el lector inconsciente usa un LED blanco o azul, la caída de voltaje puede ser demasiado grande como para manejar el transistor lo suficiente.
Ghanima
Diagrama muy bonito, simple y fácil con componentes comunes. ¡Gracias!
RufusVS
0

He utilizado con éxito el expansor I2C MCP23017 con placas de relé baratas. Todavía no he escrito ningún tutorial, pero hay mucho por ahí, solo mira google y busca "RPI MCP23017".

usuario193221
fuente
¡Bienvenido a Raspberry Pi! Haga el recorrido y visite el centro de ayuda para ver cómo funcionan las cosas aquí. Si bien esto puede responder teóricamente a la pregunta, sería preferible incluir alguna explicación aquí (sin que el OP lo busque en otro lugar).
Ghanima