Tabla de contenido:
- Paso 1: Piezas necesarias
- Paso 2: Conexiones eléctricas
- Paso 3: programa para controlar la velocidad del ventilador
- Paso 4: Ejecute el programa al inicio
Video: Ventilador regulado por PWM basado en la temperatura de la CPU para Raspberry Pi: 4 pasos (con imágenes)
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:41
Muchos casos para Raspberry Pi vienen con un pequeño ventilador de 5V para ayudar a enfriar la CPU. Sin embargo, estos ventiladores suelen ser bastante ruidosos y muchas personas los conectan al pin 3V3 para reducir el ruido. Estos ventiladores suelen tener una potencia nominal de 200 mA, que es bastante alta para el regulador 3V3 del RPi. Este proyecto le enseñará cómo regular la velocidad del ventilador en función de la temperatura de la CPU. A diferencia de la mayoría de los tutoriales que cubren este tema, no solo encenderemos o apagaremos el ventilador, sino que controlaremos su velocidad como se hace en una PC convencional, usando Python.
Paso 1: Piezas necesarias
Para este proyecto, usaremos solo algunos componentes que generalmente se incluyen en los kits de electrónica para aficionados que puedes encontrar en Amazon, como este.
- Raspberry Pi con Raspbian (pero debería funcionar con otras distribuciones).
- Ventilador de 5 V (pero se puede utilizar un ventilador de 12 V con un transistor adaptado y una fuente de alimentación de 12 V).
- Transistor NPN que admita al menos 300 mA, como un 2N2222A.
- Resistencia de 1K.
- 1 diodo.
Opcional, para poner los componentes dentro de la caja (pero aún no hecho):
- Un pedacito de protoboard, para soldar los componentes.
- Gran termorretráctil, para proteger el tablero.
Paso 2: Conexiones eléctricas
La resistencia se puede conectar de cualquier manera, pero tenga cuidado con la dirección del transistor y del diodo. El cátodo del diodo debe estar conectado al cable + 5V (rojo) y el ánodo debe estar conectado al cable GND (negro). Verifique su documento de transistor para los pines del emisor, la base y el colector. La tierra del ventilador debe estar conectada al colector y la tierra de Rpi debe estar conectada al emisor
Para controlar el ventilador, necesitamos utilizar un transistor que se utilizará en la configuración de colector abierto. Al hacer esto, tenemos un interruptor que conectará o desconectará el cable de tierra del ventilador a la tierra de la frambuesa pi.
Un transistor NPN BJT conduce dependiendo de la corriente que fluye en su puerta. La corriente que se permitirá fluir desde el colector (C) al emisor (E) es:
Ic = B * Ib
Ic es la corriente que fluye a través del colector del emisor, Ib es la corriente que fluye a través de la base hacia el emisor y B (beta) es un valor que depende de cada transistor. Aproximamos B = 100.
Como nuestro ventilador tiene una potencia nominal de 200 mA, necesitamos al menos 2 mA a través de la base del transistor. La tensión entre la base y el emisor (Vbe) se considera constante y Vbe = 0, 7V. Esto significa que cuando el GPIO está encendido, tenemos 3.3 - 0.7 = 2.6V en la resistencia. Para tener 2 mA a través de esa resistencia, necesitamos una resistencia de, como máximo, 2.6 / 0.002 = 1300 ohmios. Usamos una resistencia de 1000 ohmios para simplificar y mantener un margen de error. Tendremos 2.6mA a través del pin GPIO que es totalmente seguro.
Como un ventilador es básicamente un motor eléctrico, es una carga inductiva. Esto significa que cuando el transistor deja de conducir, la corriente en el ventilador seguirá fluyendo mientras una carga inductiva intenta mantener la corriente constante. Esto daría como resultado un alto voltaje en el pin de tierra del ventilador y podría dañar el transistor. Por eso necesitamos un diodo en paralelo con el ventilador que hará que la corriente fluya constantemente por el motor. Este tipo de configuración de diodo se llama diodo de volante.
Paso 3: programa para controlar la velocidad del ventilador
Para controlar la velocidad del ventilador, utilizamos una señal PWM de software de la biblioteca RPi. GPIO. Una señal PWM está bien adaptada para impulsar motores eléctricos, ya que su tiempo de reacción es muy alto en comparación con la frecuencia PWM.
Utilice el programa calib_fan.py para encontrar el valor FAN_MIN ejecutando en la terminal:
python calib_fan.py
Verifique varios valores entre 0 y 100% (debe estar alrededor del 20%) y vea cuál es el valor mínimo para que su ventilador se encienda.
Puede cambiar la correspondencia entre la temperatura y la velocidad del ventilador al comienzo del código. Debe haber tantos tempSteps como valores de speedSteps. Este es el método que se usa generalmente en las placas base de PC, moviendo puntos en un gráfico de 2 ejes Temp / Speed.
Paso 4: Ejecute el programa al inicio
Para ejecutar el programa automáticamente al inicio, hice un script bash donde coloco todos los programas que quiero iniciar, y luego lanzo este script bash al inicio con rc.locale
- Cree un directorio / home / pi / Scripts / y coloque el archivo fan_ctrl.py dentro de ese directorio.
- En el mismo directorio, cree un archivo llamado launcher.sh y copie el siguiente script.
- Edite el archivo /etc/rc.locale y agregue una nueva línea antes de la "salida 0": sudo sh '/home/pi/Scripts/launcher.sh'
secuencia de comandos launcher.sh:
#! / bin / sh # launcher.sh # navegue al directorio de inicio, luego a este directorio, luego ejecute el script de Python, luego vuelva a homelocalecd / cd / home / pi / Scripts / sudo python3./fan_ctrl.py & cd /
Si desea usarlo con OSMC, por ejemplo, debe iniciarlo como un servicio con systemd.
- Descargue el archivo fanctrl.service.
- Verifique la ruta a su archivo de Python.
- Coloque fanctrl.service en / lib / systemd / system.
- Finalmente, habilite el servicio con sudo systemctl enable fanctrl.service.
Este método es más seguro, ya que el programa se reiniciará automáticamente si el usuario o el sistema lo matan.
Recomendado:
Caja de ventilador de refrigeración Raspberry Pi con indicador de temperatura de CPU: 10 pasos (con imágenes)
Caja de ventilador de refrigeración Raspberry Pi con indicador de temperatura de CPU: introduje el circuito indicador de temperatura de CPU de Raspberry Pi (en adelante, RPI) en el proyecto anterior. La temperatura de la CPU está dentro de 30 ~
Rastreador GPS para automóvil con notificación por SMS y carga de datos de Thingspeak, basado en Arduino, automatización del hogar: 5 pasos (con imágenes)
Rastreador GPS para automóvil con notificación por SMS y carga de datos de Thingspeak, basado en Arduino, automatización del hogar: hice este rastreador GPS el año pasado y, como funciona bien, lo publico ahora en Instructable. Está conectado al enchufe de accesorios en mi maletero. El rastreador GPS carga la posición, la velocidad, la dirección y la temperatura medida del automóvil a través de un dato móvil
Controlador de ventilador impulsado por CPU y GPU: 6 pasos (con imágenes)
Controlador de ventilador impulsado por CPU y GPU: Recientemente actualicé mi tarjeta gráfica. El nuevo modelo de GPU tiene un TDP más alto que mi CPU y una GPU antigua, por lo que también quería instalar ventiladores de carcasa adicionales. Desafortunadamente, mi MOBO solo tiene 3 conectores de ventilador con control de velocidad, y solo se pueden vincular al
Almohadilla de enfriamiento para computadora portátil DIY - Impresionantes trucos de vida con ventilador de CPU - Ideas creativas - Ventilador de la computadora: 12 pasos (con imágenes)
Almohadilla de enfriamiento para computadora portátil DIY | Impresionantes trucos de vida con ventilador de CPU | Ideas creativas | Fan de la computadora: Debes ver este video hasta su final. por entender el video
Probador de LED regulado actual: 4 pasos (con imágenes)
Probador de LED de corriente regulada: Mucha gente asume que todos los LED pueden alimentarse con una fuente de alimentación constante de 3V. De hecho, los LED tienen una relación corriente-voltaje no lineal. La corriente crece exponencialmente con la tensión suministrada. También existe la idea errónea de que todos los LED de