Problemas con el control de un RGB-LED

Quería controlar un LED RGB con mi RaspberryPi. El problema es que mi LED es un poco extraño. El cable largo es positivo y los cables más cortos son los habituales para rojo, verde y azul, pero deben conectarse a tierra (con una resistencia en serie). Por lo tanto, no puedo controlar cada color con una señal PWM.

Pensé en conectar los tres cables negativos a un transistor que luego podría controlar con mi RaspberryPi. Si esto pudiera funcionar, ¿qué transistor debo usar?

Editar: Mi LED solo necesita 3V para azul, 2.2V para verde y 2V para rojo con una corriente de 20mA.

I can't just control every single color with a PWM-signal... ¿por qué no?
Tienes un LED de ánodo común. Si desea controlar todos los colores a la vez, aplique un voltaje positivo al cable largo y una resistencia GND a cada uno de los cables más pequeños. Cuando enciende o apaga el suministro positivo, los tres colores se encenderán/apagarán al mismo tiempo.
Probé el LED varias veces y tuve que conectarlo a tierra para que funcionara. Parece que solo el cable largo tiene que estar conectado a 3 voltios. El problema es: quiero controlar cada color por sí mismo.
learningaboutelectronics.com/Articles/… Sí, los otros tres pines deben ser GND para encender el LED. Si se conecta un cable más corto a 3 V, no habrá diferencia de voltaje, por lo tanto, no se emitirá corriente ni luz. Con esto puedes controlar cada color individualmente.
Gracias. Definitivamente me ayudó a obtener una comprensión general de los LED de ánodo. Pero, ¿cómo puedo controlar el LED con mi señal RaspberryPi / PWM?
Solo usa PWM en el lado negativo. Tendrá que invertir la señal PWM (100% PWM sería 0% activado, etc.).
¿Pero no fríe la frambuesa porque está configurada en modo de salida?
@IgliGerdon "modo de salida" no significa "solo puede generar corriente"; de hecho, muchos microcontroladores pueden absorber la corriente mejor de lo que pueden generarla de todos modos. Sin embargo, lea las especificaciones relevantes.
Gracias por tu ayuda Corazón. Voy a intentarlo. :)

Respuestas (2)

Debe proporcionar MUCHA más información para obtener una dirección o solución definitiva.

Como ya en los comentarios tienes un LED RGB de ánodo común. Aquí está la hoja de datos de un ejemplo de LED con plomo RGB. Observe en esta hoja de datos que tanto el LED azul como el verde tienen un Vf mínimo de 3,3 V, por lo que es poco probable que funcionen en un pin de 3,3 VI/O.

Considera lo siguiente:

  1. NO PUEDE conducir este LED directamente desde un R'Pi. Es probable que el LED azul tenga al menos 3,4 V Vf, por lo que será muy tenue desde 3,3 VI/O. El verde también puede tener un Vf alto y no ser adecuado para una unidad de 3,3 V.

  2. La corriente del LED se convierte en un factor crítico. El R'Pi I/O no debe usarse para generar o absorber corriente alta. Es probable que su LED tenga al menos 20 mA por color y no es recomendable obtener o absorber este nivel de corriente de su MCU.

  3. Para controlar los tres colores de forma independiente, necesita TRES pines PWM, uno para cada color.

Para controlar este LED, puede usar el suministro de 5 V, pero NO PUEDE controlarlo directamente desde los pines de E/S. Necesitará un circuito amortiguado como este:

esquemático

simular este circuito : esquema creado con CircuitLab

Los valores de R1,2,3 dependerán de la corriente requerida para sus LED y la resistencia de encendido de los FET. Es posible que pueda salirse con la suya sin estas resistencias si el FET en la resistencia es lo suficientemente alto (aunque tendría que medir estos parámetros para hacer esto). Por supuesto, podría usar un circuito muy similar basado en BJT, pero necesitaría proporcionar resistencias base para limitar la corriente base.

Finalmente tengo una solución ahora. Como Hearth ya mencionó en los comentarios, solo tenía que conectar el cable largo de mi LED de ánodo a 3.3V. Los otros cables debían conectarse a tres pines RaspberryPi, con una resistencia en serie, que se configuraron para emitir una señal PWM. Pero tienes que invertir la señal PWM.

A continuación puedes ver mi circuito final.

Circuito

Lo probé con mi Raspberry y funcionó.

Ciertamente funciona, pero ten cuidado con eso. Aunque no pude encontrar ningún documento oficial al respecto, el RPi aparentemente tiene una clasificación de corriente de fuente/sumidero de salida de 16 mA, y parece que ha calculado sus resistencias para limitar la corriente en aproximadamente ~ 10-20 mA (dependiendo de los LED Vf ). Esto pondrá mucho estrés en el hardware. Hacerlo de esta manera está bien si planea solo unos pocos mA de corriente a través de los LED, pero en sus niveles, usaría un transistor tal como se muestra Jack en su respuesta.