Necesita ayuda para construir un circuito para la regulación de voltaje de 5V-12V de una fuente de alimentación externa de 12V a través de PWM-GPIO de Raspberry Pi

Tengo un proyecto en el que un raspberry-pi medirá la temperatura y regulará un ventilador de 12 V sin pwm modificando el rendimiento de voltaje del ventilador entre 5 V y 12 V. El ventilador tiene una fuente de alimentación separada. La medición de temperatura ya funciona bien, pero necesito ayuda para construir el circuito (siendo un principiante, leí toneladas de instrucciones y creo que entendí la idea, pero quiero ser un poco más seguro, para no dañar los componentes)

Por lo que entendí, tengo que lograr lo siguiente: cambiar un transistor (que es capaz de manejar el voltaje y la corriente del ventilador) con un pulso específico, generado por un Raspberry GPIO-Pin configurado como PWM-Pin y controlado, por ejemplo, por python -guiones. => Suavizar la salida de voltaje generada por pwm. El consumidor en el circuito será un ventilador de 12 V que utiliza solo un pico de 0,125 A.

¿Alguien podría ser tan amable de explicar cómo debe verse exactamente el circuito y ayudarme a calcular los valores correctos para esos componentes? Por supuesto cualquier idea es bienvenida. Solo necesito lograr la regulación de voltaje analógico para ese ventilador de CC de alguna manera. Si pudiera leer la velocidad del ventilador además (del tercer pin, sin ventilador pwm), sería un beneficio adicional... Muchas gracias de antemano, Oliver

PD: ¿Qué software usas para diseñar circuitos gráficos? ¿Hay alguna recomendación para el diseño de electrónica de código abierto?

Hola y bienvenido. ¿Cuánto tiempo has investigado esto? Encuentro muchas respuestas en el sitio web de raspi. (para su software, iría con kicad)
He estado buscando un ejemplo que haga exactamente lo que quiero hacer y no encontré ninguno. La mayoría de ellos están trabajando con la energía suministrada por la frambuesa, o ventiladores de 3V/5V o ventiladores controlados por PWN. No pude encontrar un ejemplo haciendo lo que quiero hacer (regular la velocidad del ventilador modificando el voltaje analógico, NO solo encender/apagar el ventilador). Gracias por la pista con KiCad.
Secundo la decisión sobre KiCAD porque es de código abierto, pero llevará mucho tiempo descargarlo, jaja. Creo que su objetivo para su proyecto es claro. Desafortunadamente, su diseño e implementación no lo son y siento que nos está pidiendo que hagamos el diseño de la casa y ese no es realmente el propósito de este sitio web. Si publica su propio diseño, podemos ayudarlo a evaluarlo.
en realidad esto no es diseño de la casa en absoluto. Dije que me gustaría cambiar la alimentación de un circuito externo usando rpi-pwm usando un transistor. esto es bastante exacto, todos pueden visualizar el diseño, ya que consta de un solo componente. el voltaje externo debe suavizarse, ya que su pulso está modulado, por lo que necesito un combo R/C. Lo único que desconozco son los valores a elegir para esos componentes mencionados. Cualquiera con más experiencia que yo podría calcularlos fácilmente, tal vez con una oración de explicación sobre qué obedecer. Encontré howtos pero no los entendí muy bien.

Respuestas (2)

Lo que pides es fácil de hacer:

Algo necesita producir los pulsos PWM en el rango de 25 a 50 kHz. No sé si un RPi tiene PWM integrado. Si no, haz que maneje un chip PWM externo. Esto NO es algo adecuado para hacer en el software, especialmente en una máquina de propósito general que ejecuta un sistema operativo, como el RPi.

Q1 se enciende y apaga de acuerdo con la señal lógica digital PWM. D1 NO es opcional. Protege el transistor de grandes voltajes de retroceso inductivo cuando se apaga. También permite que la corriente existente siga circulando durante la fase de apagado. Eso reduce la ondulación, lo que minimiza la corriente CA que no se dirige al motor sino que calienta los devanados.

No debería haber necesidad de ningún "suavizado" explícito del voltaje. No has dado ninguna razón por la que quieres hacer eso de todos modos. La inductancia de los devanados del motor suavizará la corriente.

¡¡Muchas gracias por tu detallada respuesta!! Sí, el RPi tiene GPIO que se pueden configurar para ser pines PWM "nativos". Y sí, he visto este diodo paralelo al ventilador antes y lo cuidaré, gracias. Leí en HowTos, que el voltaje "pulsado" generado podría ser malo para el ventilador, por eso dije que necesito suavizar. Si dices, el ventilador lo hace solo de todos modos, entonces puedo dejarlo fuera. Solo una pequeña pregunta más: ¿Qué características debo cumplir para el transistor? Pedí un surtido completo de transistores, espero que uno de ellos encaje.
@Oliver: el transistor debe poder manejar el voltaje y la corriente y, en el caso de un FET, debe estar suficientemente encendido con 3,3 V en la puerta. El IRLML2502 que muestro cumple con estos criterios.

ingrese la descripción de la imagen aquíNo logré obtener un control constante a través de pwm/transistor, así que usé un potenciómetro digital (X9C103) para controlar un LM317 (a través de un BC547).

De todos modos, si quieres un control constante, necesitas un ventilador con 3 pines. Use la señal en el cable amarillo para leer las rpm y úsela en el programa para controlarla. Lo bueno de esto es que puedes detectar si el ventilador ha fallado o no.

Si está interesado, puedo agregar una imagen de los componentes que usé.

También creo que debe haber una forma más sencilla a través de pwm/transistor directamente, pero quería usar mi olla digital :)

También estaba pensando en este método, usando un pote digital ic. ¿Podría tal vez describir su diseño un poco más detallado, por favor =)? ¿Me equivoco, que el potenciómetro digital solo tiene que colocarse en serie con una resistencia con un valor igual al máximo del potenciómetro digital, y luego tomar el voltaje resultante antes y entre las resistencias?