Tabla de contenido:

Controlador de ventilador de escritorio Arduino: 4 pasos
Controlador de ventilador de escritorio Arduino: 4 pasos

Video: Controlador de ventilador de escritorio Arduino: 4 pasos

Video: Controlador de ventilador de escritorio Arduino: 4 pasos
Video: como conectar ventilador pc 2024, Noviembre
Anonim
Controlador de ventilador de escritorio Arduino
Controlador de ventilador de escritorio Arduino
Controlador de ventilador de escritorio Arduino
Controlador de ventilador de escritorio Arduino
Controlador de ventilador de escritorio Arduino
Controlador de ventilador de escritorio Arduino

Cuando recientemente cambié de roles dentro de la empresa, cambié de sitio y me mudé de Bradford a nuestra oficina central en Wakefield. Me despedí de mi viejo y fiel escritorio con un ventilador de escritorio imprescindible para mantenerme fresco mientras estaba a mi alrededor ……. De todos modos, la tendencia en nuestra oficina principal era de pequeños ventiladores alimentados por USB de 4 "a 6". Así que un bonito modelo de 6 "con efecto de latón antiguo se ordenó rápidamente y se entregó al día siguiente.

El problema con todos los ventiladores, ya sea que tengan configuraciones de velocidad o modos oscilantes mecánicos, es que están encendidos o apagados, y terminas encendiéndolos y apagándolos todo el tiempo. Una chispa de imaginación, combinada con la exigencia de levantar mi monitor en un buen 3 , y nace mi próximo proyecto. Entra Fanomatic.

Había jugado con Arduino durante muchos años, así que era la primera parada lógica.

Paso 1: Lista de compras y estuche

Lista de compras y estuche
Lista de compras y estuche
Lista de compras y estuche
Lista de compras y estuche
Lista de compras y estuche
Lista de compras y estuche

Lista de la compra:

  • 1 hoja de MDF de 12 mm - para el estuche
  • 1 Arduino Uno - los cerebros
  • 1 tablero de sml y alambres
  • 1 DHT11 - sensor digital de temperatura y humedad - solo para muestrear la temperatura
  • Pantalla OLED de 1,96 "- para mostrar variables - velocidad, temperatura, etc.
  • 1 módulo Mosfet IRF520: para encender y apagar la alimentación USB del ventilador
  • 4 potenciómetros de 10k con perillas de diferentes colores: para controlar la velocidad del ventilador, el tiempo de encendido, el tiempo de apagado, el punto de ajuste de temperatura
  • 1 interruptor de encendido
  • Pintura de pizarra de estaño de 1 sml - adecuada para MDF con 1 capa
  • 1 cable usb y 1 toma usb

Caso:

El tamaño de la carcasa se regía por el tamaño de la base de mi monitor de 24 y el conmutador KVM de 4 puertos a 220 mm de ancho y la altura final a la que quería configurar mi monitor. La profundidad era bastante flexible, así que opté por 180 mm para dar un montón de habitación. Así que 220mmx180mmx60mm era el tamaño. Ahora para hacerlo y llenarlo.

El MDF de 12 mm se cortó en casa con bastante facilidad, antes de pegar y atornillar para formar una base y un frente de trabajo. Luego, se perforó el frente para que quepa 4 potenciómetros de 10k y 1 sobre el interruptor de encendido / apagado superior que controlaría la alimentación de Arduino y el ventilador. Se cinceló un agujero rectangular para sostener un pequeño panel acrílico gris ahumado, detrás del cual planeé asegurar una de esas lindas pantallas OLED. A la mitad, desearía haber optado por una capa de 3 mm para el frente, en lugar de un MDF de 12 mm, ya que se quitó más madera de la que quedaba.

Una vez que se habían perforado y cincelado los agujeros en la parte posterior y lateral para el sensor de temperatura, la toma USB y la alimentación USB. Se aplicaron un par de capas de pintura de pizarra. Es una excelente pintura para mdf, ya que se absorbe bien y no necesita una capa base. Da un acabado mate muy implacable, justo lo que estaba buscando.

Se colocaron ollas e interruptores, se pegó acrílico ahumado en caliente y se produjeron etiquetas Dyno para ese aspecto retro.

Junto a los controles …

Paso 2: los controles

Los controles
Los controles

Todo basado en un Arduino Uno. Abordé los componentes y comencé un boceto.

El boceto usa 3 bibliotecas:

  • Uno para accionar el mosfet irf520 para encender el ventilador.
  • Uno para conducir la pantalla OLED
  • Uno para leer y traducir los datos de temperatura del DHT11

Incluiré el boceto aquí más tarde, una vez que lo haya arreglado un poco, pero tenga en cuenta que NO soy un codificador, entiendo los buenos principios de codificación, pero tiendo a ser un codificador perezoso. Si puedo encontrar una manera de evitar algo y funciona, entonces funciona.

Hay algunos sitios excelentes que explican cómo usar cada uno…. e incluirá enlaces a los mejores (en mi opinión) sitios para obtener lo mejor de cada uno.

Lógica:

Un solo cable USB proporciona energía al Arduino Y al ventilador USB. El Arduino no puede hacer funcionar el ventilador ya que la corriente que tira dañaría el Arduino (¡un poco dramático en realidad! Dispararía el fusible integrado). Así que tenemos que encontrar una forma de usar Arduino para encender o apagar el ventilador.

Se requiere un transistor, primero pedí un transistor Darlington, pero después de leer, decidí comprar un módulo controlador irf520 MOSFET de HobbyComponents.com. ¡Alerta friki! El IRF520 es ideal para la conmutación de nivel lógico (salida de los pines Arduino). El voltaje enviado al dispositivo determina la resistencia del MOSFET, I. E. el envío de 0 a 255 a un pin digital hará que el ventilador (u otro dispositivo conectado) pase de apagado a máxima velocidad.

Regresaremos a 0 a 255 más tarde.

Así que vamos a encender un ventilador con un Arduino, ¿por qué molestarse? Bueno, no queremos que se encienda cuando hace demasiado frío, ¿verdad? Entonces, si agregamos un sensor de temperatura, podemos escribir código y probar para ver si está caliente y encender el ventilador (255) o apagarlo (0). Opté por un DHT11 porque es muy barato, fácil de codificar y lo suficientemente preciso para este proyecto.

Volvamos a ese negocio de 0 a 255. Si sabemos que un poco de código encenderá el ventilador (255) si la temperatura es alta, o apagará (0) si la temperatura es baja, si tuviéramos un valor entre 0 y 255, la resistencia subiría o bajaría a través del MOSFET y acelera o ralentiza el ventilador.

Introduzca un potenciómetro conectado a un pin analógico. Cuando se gira, genera un valor entre 0 y 1023. ¡Este valor se puede probar en código para cambiar la velocidad del ventilador! yipeeeee.

Hay una última cosa (bueno, un par). La biblioteca de control del motor que usaremos para manejar el controlador MOSFET acepta 2 parámetros, uno para establecer la resistencia (para la velocidad) y otro para establecer la duración. Entonces, con este parámetro mágico, podemos establecer cuánto tiempo está encendido el ventilador y cuánto tiempo está apagado.

Entonces, tenemos 4 macetas para controlar las 4 variables. A continuación, veremos la pantalla.

Paso 3: la pantalla

La pantalla
La pantalla
La pantalla
La pantalla

¿NECESITA una pantalla? Realmente no. Entonces, ¿por qué tiene uno? Bueno, porque quería una linda pantalla que mostrara la temperatura actual, la velocidad del ventilador, el tiempo del ventilador encendido, el tiempo de apagado del ventilador y el punto de ajuste de temperatura.

La biblioteca U8G es brillante al manejar esta pequeña pantalla OLED. Me tomó una tarde de investigación y entendí los comandos para obtener el tamaño de fuente que quería para 5 filas y para que las variables se mostraran usando los comandos u8g.print (). La ventaja de esta pantalla es que no es una pantalla de 2 o 4 'filas' a la que la comunidad Arduino está tan acostumbrada, por lo que los gráficos y las fuentes son muy factibles.

Para ser honesto, la mayor parte del código está controlando la pantalla. si las declaraciones determinan los valores que se mostrarán, E. G. convertir un valor de los potenciómetros analógicos (0 a 1023) en un valor para mostrar en la pantalla. En total, hay varios conjuntos de bloques de instrucciones, determina la velocidad del ventilador desde el potenciómetro, convierte al valor de% para la pantalla y un valor entre 0 y 255 para impulsar el ventilador.

Bueno, eso servirá por ahora amigos. Espero que disfrutéis de esta primera entrega. Editaré y actualizaré con enlaces y el código. Si hay algo que le gustaría detallar, deje un comentario y pregunte.

Paso 4: Código

Prometí subir el boceto cuando publiqué esto, hace 3 años, y nunca lo hice.

Asi que aqui esta……

Recomendado: