Usando un microcontrolador para encender la tira de LED


12

Tengo 60 leds que vinieron en una tira de led . La longitud de un metro de la tira de led requiere lo siguiente:

  • 400 miliamperios
  • 12 voltios

Quiero controlar estos LED con microcontrolador. Estoy pensando en usar un TIP120 y un raspberryPi.

Un pin raspberryPi GPIO puede generar 50 miliamperios de forma continua. (Actualización: esto no es cierto, ver más abajo)


Soy un principiante y no estoy seguro de estar haciendo esto correctamente. Todos mis cálculos se basan en las cosas que leí en este blog .


Matemáticas

Corriente base:

El TIP120 tiene una corriente de colector de lc = 250 * lb, por lo que necesitaré una corriente base de 1.6 mA.

(1.6mA * 250 = 400)

El raspberryPi no debería tener problemas con la corriente base

Resistencia base:

Necesitaré una resistencia lo suficientemente baja como para asegurar que la base TIP120 permanezca saturada pero se mantenga por debajo de 50 mA para no sobrecargar la RaspberryPi.

Según el blog que mencioné, encuentro la resistencia base al buscar el Vbe (sat). Ver figura 2.

donde Vbe (sat) es 400 en el eje x, la corriente del colector es aproximadamente 1.3 en el eje y.

ingrese la descripción de la imagen aquí

Si el raspberryPi genera 3.3 voltios, entonces hay una caída de voltaje de 2 voltios
(3.3 - 1.3)

Entonces, según mi cálculo, necesito una resistencia entre 4 y 40 ohmios R = V / I
2 / (0.05 A) = 40 ohmios
2 / (0.50 A) = 4 ohmios
(Actualización: incorrecta, consulte la parte inferior de la pregunta)

Todavía me considero un aficionado y estoy un poco loco.

  • ¿Estos cálculos parecen correctos?
  • ¿Funcionará TIP120? (cualquier otra sugerencia bienvenida)
  • ¿Hay alguna otra consideración que deba tener en cuenta para mi esquema?

ingrese la descripción de la imagen aquí

Actualizar

Como se señaló en las respuestas, escribí las clasificaciones de miliamperios por un factor de 10. Debería haber dicho:
2 / (0.005 A) = 400 Ohms
2 / (0.050 A) = 40 Ohms

Actualización 2

Parece que hay algo de confusión sobre la corriente máxima que puede proporcionar un pin en una Raspberry Pi. Para estar seguro, voy a suponer que es de 8 mA.

/raspberrypi/9298/what-is-the-maximum-current-the-gpio-pins-can-output

/raspberrypi/1130/what-is-the-nominal-gpio-pin-output-current

Actualización 3

Ada fruit escribió un excelente artículo de blog sobre cómo controlar una tira de LED con un microcontrolador. Ella recomienda un STP16NF06 o un TIP120

https://learn.adafruit.com/rgb-led-strips/usage


2
No creo que los pines GPIO puedan generar 50 mA. Creo que el pin del riel de alimentación de + 3.3V puede generar 50 mA. Creo que cada GPIO puede obtener solo unos pocos miliamperios. Usaría un MOSFET de nivel lógico en lugar de un BJT. No hay necesidad de preocuparse por la corriente continua entonces. IRLB8721 es una buena opción para muchos usos; Creo que este uso calificaría.
Jon Watte

@ JonWatte Gracias por señalarlo, voy a verificar la corriente máxima antes de continuar.
Spuder

Los cálculos de @JonWatte Power en el diseño del RPi incluyeron todos los GPIO al mismo tiempo, 3 mA cada uno, 50 mA en total. Puede tener menos en cualquier momento dado y aumentar la corriente. Además de eso, calcularon 50 mA adicionales directamente desde el riel de 3.3v, cuando todos los periféricos están en uso (como hdmi, ethernet y tarjeta sd, todos los cuales se extraen del riel de 3.3v). Por lo tanto, los PINS de 3.3v, conectados directamente al riel de 3.3v, y el GPIO de 3.3v del BCM SOC son diferentes.
Passerby

+1 para principiantes haciendo su propia investigación y llegando casi hasta allí antes de hacer una pregunta.
pjc50

@ Passerby Creo que quemará la etapa del controlador del pin GPIO si intenta obtener 50 mA de uno de ellos y mantener el resto inactivo.
Jon Watte

Respuestas:


6

Ya casi estás allí, aunque hay un par de cosas:

El cálculo de la resistencia base no es correcto: recuerde que solo necesita 1,6 mA de acuerdo con sus cálculos (la corriente del colector está separada).
Mirando la hoja de datos, la ganancia mínima es de 1000, y el voltaje máximo del emisor base es de 2.5V, lo que significa que necesitamos ajustar los cálculos, 1.6mA servirá para la corriente base (siempre es bueno tener un extra para un interruptor como ganancia cae a la saturación) pero necesitamos usar 2.5V en lugar de 1.3V para el peor de los casos (es mejor usar el peor de los casos / valores máximos para diseñar, aunque mirando el gráfico parece que el Vbe extra es poco probable en esta corriente, así que en algún lugar entre las dos figuras a continuación debería estar bien):

Entonces:

(3.3V - 2.5V) / 1.4mA = 570Ω

o

(3.3V - 1.5V) / 1.4mA = ~ 1.2kΩ

Esto debería funcionar bien, pero no es la forma más eficiente de hacer las cosas: la disipación del transistor será de al menos 0.4A * Vce (sat) que es de aproximadamente 0.4A * 0.75V = 0.3W, además su R-pi necesita al menos un par de mA más o menos para conducirlo.
Un MOSFET de nivel lógico moderno puede ser mucho más pequeño, manejarse con (casi) sin corriente) y casi no tener disipación. Aquí hay una parte de ejemplo, el FDC637BNZ , elegido al azar de miles en Farnell:

ingrese la descripción de la imagen aquí


3

0.5A es 500 Milliamps ... Volará su Pi 0.05 es 50 miliamperios. Ese es el límite alto. No hay necesidad de ir por eso. Solo necesitas 1,6 mA como dijiste. Así que aplícalo un poco, digamos unos buenos 5 mA. 3.3 - 1.3 = 2v la resistencia necesita caer. 2v / 0.005A (5mA) = 400Ω. Redondea al siguiente tamaño más grande 470Ω, obtienes ~ 4mA en la base.

Dejando a un lado ese error matemático, el TIP120 funciona bien para esto, a pesar de que realmente es excesivo para los 400 mA que tomará la tira de led. Es un par darlington, para multiplicación de alta corriente. Un único transistor BJT común como el PN2222 (1 amperio en un paquete estándar To-92) sería más que suficiente. O bien, puede dividir la tira en dos o tres y usar algunos 2n3904 (100 ~ 200mA) y mostrar las diferentes secciones de manera diferente (Por supuesto, necesitará un número igual de gpio, a menos que desee conducirlos todos desde un solo GPIO que podría también funciona. Los transistores paralelos, cada uno con sus propias resistencias base que manejan secciones más pequeñas de la tira de LED, sería una buena forma de tratar con transistores más pequeños si no puede obtener los más grandes).

Y su esquema es lo suficientemente bueno para una maqueta. Una tira de led de un solo color no es un circuito muy complejo para trabajar, por lo que no hay forma de mejorarlo aparte de usar las partes correctas en lugar de los marcadores de posición genéricos.


Gracias por atrapar eso. Escribí los cálculos. He actualizado la pregunta con la información correcta.
Spuder

1
La desventaja de un par Darlington es el V relativamente alto (CE, sat), que simplemente disipa la potencia en el transistor. Un BJT normal funcionará mucho mejor con ese aspecto. Como dice @Passerby, no necesitas una bestia como TIP120 con una calificación de casi 20 veces lo que necesitas.
jippie
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.