Modulación de ancho de pulso: ¿cómo configurar el ciclo de trabajo usando dos fuentes variables?

Para un proyecto de pasatiempo, estoy tratando de construir un circuito eléctrico en el que se pueda determinar el brillo de dos LED utilizando dos sensores: uno para la luz (un LDR) y otro para el sonido (un micrófono, se prefiere electret). Después de la construcción del circuito, me gustaría poder cambiar el brillo máximo del LED, así como también cuánto determina el brillo la luz o el sonido. En la imagen suministrada se muestran las características del sistema.

Las cuestiones menos triviales para la construcción de este circuito es cómo combinar las dos "entradas" (sonido y luz) para determinar un ciclo de trabajo, así como establecer el porcentaje de influencia de ambas fuentes. Dado lo siguiente:

  • max = el ciclo de trabajo máximo enviado a los LED
  • l = la cantidad de luz observada
  • s = la cantidad de sonido observado
  • p = el porcentaje de influencia de la luz en el ciclo de trabajo total

Me gustaría saber qué circuito cumpliría las siguientes condiciones:

  • Ciclo de trabajo = máximo ( ( pag ( 1 yo ) + ( 1 pag ) s )

Además, la fuente de alimentación debe ser lo más pequeña posible (por ejemplo, 2 pilas AA) y poder durar 50 horas.

Condiciones del circuito requerido

Respuestas (2)

El circuito más simple es alimentar por separado las señales del sensor de luz y sonido en un microcontrolador con un A/D, calcular los brillos LED deseados y luego enviar los resultados como PWM.

Hay muchos micros que tienen al menos dos entradas A/D y dos salidas PWM. Si se tratara de un producto de volumen, probablemente comenzaría mirando la línea PIC 16. Si se trata de una sola vez, use lo que tenga por ahí o con lo que se sienta cómodo. Esto sería muy fácil de hacer en uno de los PIC o dsPIC de 16 bits, como un 24F. Le resultará difícil encontrar uno que no pueda ejecutarse desde su oscilador interno, que tenga dos o más entradas A/D y al menos dos salidas PWM básicas (llamadas Output Compare en estas partes).

Los parámetros de su algoritmo que menciona serían constantes de tiempo de compilación en el archivo de inclusión principal. Cambiarlos sería tan simple como cambiar los valores en el archivo de inclusión, luego volver a compilar y volver a actualizar el código en el micro. Si desea ser más sofisticado, podría implementar un protocolo UART que permita cambiar los parámetros sobre la marcha.

Sí, probablemente el camino a seguir. Sin embargo, me encantaría ver esto implementado fuera de los circuitos analógicos.

Para una precisión de tipo de 5-10%, este circuito sería bastante fácil de usar.

ingrese la descripción de la imagen aquí

Tiene un suministro de 15V, por lo que dos celdas no van a funcionar. La multiplicación de ganancias (p y (1-p)) en el bote es solo aproximada. La salida es de 0..1V (y más) para 0..100% PWM (¿creo que quiere que se sature al 100%? A menudo, no se requieren más circuitos.

En definitiva, un m La solución C sería más limpia y probablemente de menor consumo, pero sería fácil jugar con ella sin programación.