Arduino Nano - Ventilador

Este tutorial ensina como usar o Arduino Nano para ligar e desligar um ventilador. As instruções sobre como ajustar a velocidade do ventilador serão apresentadas em um tutorial separado.

Existem duas maneiras de acionar o ventilador a partir do Nano: um relé ou um módulo MOSFET. Um relé oferece apenas dois estados, LIGADO e DESLIGADO. Um módulo MOSFET também faz LIGADO e DESLIGADO e, além disso, permite que o Nano mude a velocidade de rotação do ventilador. Esta página mostra as duas maneiras.

Sobre o Ventilador DC

Pinagem

Fan Pinout
image source: diyables.io

Um ventilador DC geralmente tem dois pinos:

  • Pino negativo (-) (preto): precisa ser conectado ao fio negativo da fonte de alimentação DC
  • Pino positivo (+) (vermelho): precisa ser conectado ao fio positivo da fonte de alimentação DC

A tensão da fonte de alimentação DC deve ser igual à tensão especificada pelo ventilador. Neste tutorial, vamos usar ventiladores de 12VDC e 5VDC.

Como Controlar o Ventilador

  • Se o ventilador DC for alimentado por uma fonte de 12V/5V, ele funciona na velocidade máxima.
  • Se o ventilador DC for alimentado por um sinal PWM de 12V/5V, a velocidade do ventilador pode ser controlada.

Neste tutorial, vamos ensinar como usar o Arduino Nano para ligar e desligar um ventilador. O controle da velocidade do ventilador será abordado em um tutorial diferente.

Para ligar e desligar um ventilador, precisamos utilizar um relé entre o Arduino Nano e o ventilador. O Arduino Nano pode então usar o relé para ligar ou desligar o ventilador.

Se você não conhece o relé (pinagem, funcionamento, programação etc.), consulte o tutorial Arduino Nano - Relé para mais informações.

Novo no módulo MOSFET? O tutorial Arduino Nano - Módulo MOSFET explica seus pinos e como ele funciona.

Relé vs Módulo MOSFET para um Ventilador DC

Relé Módulo MOSFET
O que você pode controlar ventilador LIGADO ou DESLIGADO ventilador LIGADO ou DESLIGADO, mais a velocidade do ventilador (PWM)
Ruído ao chavear um clique a cada vez sem som
Velocidade de chaveamento lento, alguns milissegundos muito rápido
Desgaste os contatos se desgastam depois de muitas chaveadas nada se move, então nada se desgasta
Funciona com AC ou DC somente DC
Tensão de alimentação do ventilador qualquer, conforme a especificação cerca de 6V ou mais
Isolamento do sinal sim, a bobina e os contatos são separados sim, por meio de um optoacoplador PC817
Boa escolha para ventiladores AC, LIGA/DESLIGA simples ventiladores DC de 12V quando você quer controle de velocidade

Para um ventilador DC de 12V, o módulo MOSFET é a melhor escolha, porque o Nano pode deixar o ventilador silencioso em baixa velocidade e rápido quando necessário. Mantenha o relé para um ventilador AC ou para um ventilador de 5V.

Diagrama de Ligação

The wiring diagram between Arduino Nano and Fan

This image is created using Fritzing. Click to enlarge image

Observe que, se você usar um ventilador de 5V, precisa usar uma fonte de alimentação de 5V. Você NÃO PODE usar o pino de 5V do Arduino para alimentar o ventilador, porque ele não consegue fornecer corrente suficiente para o ventilador.

Código Arduino Nano

O código abaixo fará o ventilador ligar a cada cinco segundos e depois desligar novamente após o mesmo intervalo de tempo.

/* * Este código de Arduino Nano foi desenvolvido por pt.newbiely.com * Este código de Arduino Nano é disponibilizado ao público sem nenhuma restrição. * Para tutoriais completos e diagramas de ligação, visite: * https://pt.newbiely.com/tutorials/arduino-nano/arduino-nano-fan */ #define RELAY_PIN 2 // The Arduino Nano pin that controls the fan via relay module // The setup function runs once on reset or power-up void setup() { // initialize digital pin D2 as an output. pinMode(RELAY_PIN, OUTPUT); } // The loop function repeats indefinitely void loop() { digitalWrite(RELAY_PIN, HIGH); // turn on fan 5 seconds delay(5000); digitalWrite(RELAY_PIN, LOW); // turn off fan 5 seconds delay(5000); }

Passos Rápidos

  • Conecte o Arduino Nano ao computador usando um cabo USB.
  • Abra o Arduino IDE e selecione a placa e a porta apropriadas.
  • Copie o código acima e abra-o no Arduino IDE.
  • Clique no botão Upload no Arduino IDE para enviar o código ao Arduino Nano.
  • Observe o estado do ventilador.

Explicação do Código

Confira a explicação linha por linha contida nos comentários do código-fonte!

Como Controlar a Velocidade do Ventilador com o Módulo MOSFET

Aqui substituímos o relé por um módulo MOSFET. Agora o Nano pode fazer mais do que LIGAR e DESLIGAR: ele também pode definir a velocidade do ventilador com um sinal PWM.

Diagrama de Ligação

The wiring diagram between Arduino Nano and cooling fan MOSFET module

This image is created using Fritzing. Click to enlarge image

Veja A melhor forma de alimentar o Arduino Nano e outros componentes.

De Para
Pino D9 do Arduino Nano Pino PWM do módulo MOSFET
GND do Arduino Nano Pino GND do módulo MOSFET
Adaptador de 12V + + do módulo MOSFET
Ventilador + (fio vermelho) + do módulo MOSFET (mesmo terminal do + do adaptador)
Ventilador − (fio preto) LOAD do módulo MOSFET
Adaptador de 12V − − do módulo MOSFET

Um ventilador tem uma bobina de motor dentro, então coloque um diodo flyback (1N4007 ou 1N5819) nos fios do ventilador. O lado com a faixa (cátodo) vai para o + do ventilador, e o outro lado vai para o − do ventilador.

Código Arduino Nano

Este código liga o ventilador totalmente por 2 segundos e o desliga por 2 segundos. Depois, ele aumenta a potência de 10% a 100%, para que o ventilador acelere passo a passo, e a diminui novamente, para que o ventilador desacelere.

/* * Este código de Arduino Nano foi desenvolvido por pt.newbiely.com * Este código de Arduino Nano é disponibilizado ao público sem nenhuma restrição. * Para tutoriais completos e diagramas de ligação, visite: * https://pt.newbiely.com/tutorials/arduino-nano/arduino-nano-fan */ const int MOSFET_PIN = 9; // Arduino Nano pin connected to the PWM pin of the MOSFET module void setup() { Serial.begin(9600); pinMode(MOSFET_PIN, OUTPUT); analogWrite(MOSFET_PIN, 0); // start with the load OFF } void setLoad(int percent) { int duty = map(percent, 0, 100, 0, 255); // convert 0-100% to 0-255 analogWrite(MOSFET_PIN, duty); Serial.print("Load power: "); Serial.print(percent); Serial.println("%"); } void loop() { // turn the load fully ON, then fully OFF Serial.println("Load: ON"); setLoad(100); delay(2000); Serial.println("Load: OFF"); setLoad(0); delay(2000); // increase the power step by step (PWM) for (int percent = 10; percent <= 100; percent += 10) { setLoad(percent); delay(500); } // decrease the power step by step (PWM) for (int percent = 90; percent >= 0; percent -= 10) { setLoad(percent); delay(500); } delay(1000); }

Passos Rápidos

  • Prepare o Arduino IDE como nos Passos Rápidos do relé acima.
  • Ligue o ventilador e o módulo MOSFET como mostrado no diagrama. Deixe o adaptador de 12V desconectado por enquanto.
  • Copie o código acima, cole-o no Arduino IDE e faça o upload para o Arduino Nano.
  • Conecte o adaptador de alimentação de 12V.
  • Abra o Serial Monitor a 9600 baud e ouça o ventilador mudando de velocidade.
∞
Newbiely | Arduino IDE 2.3.8
──
☐
✕
File
Edit
Sketch
Tools
Help
Arduino Nano
Newbiely.ino
···
8 Serial.println("Hello World!");
Output
Serial Monitor
Message (Enter to send message to 'Arduino Nano' on 'COM15')
New Line
9600 baud
Load: ON Load power: 100% Load: OFF Load power: 0% Load power: 10% Load power: 20% Load power: 30% Load power: 40% Load power: 50% Load power: 60% Load power: 70% Load power: 80% Load power: 90% Load power: 100% Load power: 90% Load power: 80% Load power: 70% Load power: 60% Load power: 50% Load power: 40% Load power: 30% Load power: 20% Load power: 10% Load power: 0%
Ln 11, Col 1
Arduino Nano on COM15
2

Dica: o módulo MOSFET funciona somente com DC e precisa de uma tensão de alimentação do ventilador de cerca de 6V ou mais. Um ventilador de 5V ou um ventilador AC deve continuar no relé.

Vídeo

※ NOSSAS MENSAGENS

  • Fique à vontade para compartilhar o link deste tutorial. Porém, por favor, não use nosso conteúdo em outros sites. Investimos muito esforço e tempo para criar este conteúdo, por favor respeite nosso trabalho!