Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Manufacturing Technology >> Processo de manufatura

Controle de ventilador PWM de 4 pinos de 25 kHz com Arduino Uno

Componentes e suprimentos

Ventilador axial, 12 VCC
× 1
Arduino UNO
× 1
Cabo USB-A para Mini-USB
× 1
Fios de jumpers (genérico)
× 1

Aplicativos e serviços online

Arduino IDE

Sobre este projeto


Tenho me perguntado sobre este projeto e como controlar meus fãs de PWM de 4 pinos. Eu tinha 5 ao redor e pensei que o meu também tentaria. Os valores de frequência podem ser ajustados entre 125 HZ - 8 MHZ, bem como um ciclo de trabalho variável. O circuito utiliza o modo 10 PWM com correção de fase no temporizador 1 OCR1A (pino 9) e ICR1 (pino 10). Foi necessária alguma depuração para descobrir isso e eu possuo um osciloscópio portátil. Isso torna a visualização das frequências e ciclos de trabalho muito mais fácil e nenhuma suposição está envolvida. Aqui está o link:O Osciloscópio.

Recomendo enfaticamente que você consulte a folha de dados do seu ventilador, pois o pino de controle no meu gabinete era amarelo (normalmente conhecido como fio do tacômetro). Certifique-se de encontrar também a faixa de frequência aceitável (OU " FREQUÊNCIA DE CENTRALIZAÇÃO ") para a ventoinha escolhida. Você pode precisar alterar a frequência do código para se ajustar às suas necessidades. Finalmente, você precisará de uma boa fonte de alimentação (a minha é uma fonte de alimentação ATX convertida de um PC antigo).

NOTA:Tentei usar outro cronômetro e controlar 2 ventiladores independentemente. Não funciona. A razão para isso é que a resolução do segundo temporizador é menor (16 bits vs 8 bits). Isso significa que as etapas nos ajustes de frequência e dever são ruidosas e as formas de onda estão cada vez mais deformadas. Isso também não é tão simples ao inserir valores.

Código

  • O código
O código Arduino
Baixe este arquivo e execute-o no IDE do Arduino.
 const byte OC1A_PIN =9; const byte OC1B_PIN =10; const word PWM_FREQ_HZ =25000; // Ajuste este valor para ajustar a frequência (Frequência em HZ!) (Definido atualmente para 25kHZ) const word TCNT1_TOP =16000000 / (2 * PWM_FREQ_HZ); void setup () {pinMode (OC1A_PIN, OUTPUT); // Limpa o controle do Timer1 e os registros de contagem TCCR1A =0; TCCR1B =0; TCNT1 =0; // Definir configuração Timer1 // COM1A (1:0) =0b10 (Saída A clara subindo / definir queda) // COM1B (1:0) =0b00 (Saída B operação normal) // WGM (13:10) =0b1010 (PWM correto de fase) // ICNC1 =0b0 (cancelador de ruído de captura de entrada desabilitado) // ICES1 =0b0 (Seleção de borda de captura de entrada desabilitada) // CS (12:10) =0b001 (Seleção de clock de entrada =clock / 1) TCCR1A | =(1 < 

Esquemas


Processo de manufatura

  1. Luzes de dimerização com PWM usando o botão de ação
  2. Habilite o controle Alexa para o seu ventilador de teto
  3. Relógio Arduino com horas de oração islâmica
  4. Aceitar moeda de controle com Arduino
  5. Arduino com Bluetooth para controlar um LED!
  6. Arduino Nano:Controle 2 motores de passo com joystick
  7. Exibindo uma imagem em uma tela LCD TFT com o Arduino UNO!
  8. Controlando uma matriz de LED com Arduino Uno
  9. Cubo de LED 4x4x4 com Arduino Uno e 1sheeld
  10. ThimbleKrox - Controle do mouse com os dedos