Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Manufacturing Technology >> Proceso de manufactura

Control de ventilador PWM de 4 pines y 25 kHz con Arduino Uno

Componentes y suministros

Ventilador axial, 12 VCC
× 1
Arduino UNO
× 1
Cable USB-A a Mini-USB
× 1
Cables de puente (genéricos)
× 1

Aplicaciones y servicios en línea

Arduino IDE

Acerca de este proyecto

Me he estado preguntando sobre este proyecto y cómo controlar mis ventiladores PWM de 4 pines. Tenía 5 tirados y pensé que el mío también lo intentaba. Los valores de frecuencia se pueden ajustar entre 125 HZ - 8 MHZ, así como un ciclo de trabajo variable. El circuito utiliza el modo 10 PWM de corrección de fase en el temporizador 1 OCR1A (Pin 9) e ICR1 (Pin 10). Se necesitó algo de depuración para resolver esto y tengo un osciloscopio de mano. Hace que ver las frecuencias y los ciclos de trabajo sea mucho más fácil y no hay que adivinar. Aquí está el enlace:El osciloscopio.

Le recomiendo encarecidamente que busque la hoja de datos de su ventilador, ya que el pin de control en mi caso era amarillo (que normalmente se conoce como cable tacómetro). Asegúrese de encontrar también el rango de frecuencia aceptable (O " FRECUENCIA DE CENTRADO ") para el ventilador elegido. Es posible que deba cambiar la frecuencia del código para ajustarlo a sus necesidades. Finalmente, necesitará una buena fuente de alimentación (la mía es una PSU ATX convertida de una PC vieja).

NOTA:He intentado utilizar otro temporizador y controlar 2 ventiladores de forma independiente. No funciona La razón de esto es que la resolución del segundo temporizador es menor (16 bits frente a 8 bits). Esto significa que los pasos en los ajustes de frecuencia y trabajo son ruidosos y las formas de onda se deforman cada vez más. Esto tampoco es tan sencillo al ingresar valores.

Código

  • El código
El código Arduino
Descargue este archivo y ejecútelo bajo el IDE de Arduino.
 byte const OC1A_PIN =9; byte const OC1B_PIN =10; palabra const PWM_FREQ_HZ =25000; // Ajusta este valor para ajustar la frecuencia (¡Frecuencia en HZ!) (Establecer actualmente en 25kHZ) const word TCNT1_TOP =16000000 / (2 * PWM_FREQ_HZ); void setup () {pinMode (OC1A_PIN, OUTPUT); // Borrar los registros de conteo y control del Timer1 TCCR1A =0; TCCR1B =0; TCNT1 =0; // Establecer la configuración del Timer1 // COM1A (1:0) =0b10 (Salida A clara ascendente / configurar descendente) // COM1B (1:0) =0b00 (Salida B operación normal) // WGM (13:10) =0b1010 (PWM de fase correcta) // ICNC1 =0b0 (Cancelador de ruido de captura de entrada desactivado) // ICES1 =0b0 (Selección de borde de captura de entrada desactivado) // CS (12:10) =0b001 (Selección de reloj de entrada =reloj / 1) TCCR1A | =(1 <  

Esquemas


Proceso de manufactura

  1. Atenuación de luces con PWM usando el botón pulsador
  2. Habilita el control de Alexa en tu ventilador de techo
  3. Reloj Arduino con tiempos de oración islámicos
  4. Controlar el aceptador de monedas con Arduino
  5. ¡Arduino con Bluetooth para controlar un LED!
  6. Arduino Nano:Controla 2 motores paso a paso con joystick
  7. ¡Visualización de una imagen en una pantalla LCD TFT con Arduino UNO!
  8. Controlar una matriz de LED con Arduino Uno
  9. Cubo LED 4x4x4 con Arduino Uno y 1sheeld
  10. ThimbleKrox - Control del mouse con los dedos
  11. Controla una cucaracha con Arduino por menos de $ 30