Arduino Nano - Módulo MOSFET
Este tutorial ensina como usar o Arduino Nano para ligar/desligar e dimerizar uma carga DC de 12V por meio de um módulo MOSFET. O pequeno Nano fica em uma protoboard e só fornece um sinal de 5V, enquanto o módulo MOSFET cuida do lado pesado de 12V. Em detalhes, vamos aprender:
- Como conectar o Arduino Nano ao módulo MOSFET (AOD4184, LR7843 ou FR120N)
- Como conectar uma fita LED de 12V e uma fonte de alimentação de 12V ao módulo
- Como programar o Arduino Nano para ligar/desligar a carga e definir o nível de potência dela com PWM
Sugerimos:
- Utilizar um relé se você quer controlar um dispositivo da rede elétrica AC. Um módulo MOSFET funciona somente com cargas DC.
- Utilizar um optoacoplador PC817 se você quer fazer o trabalho oposto: ler um sinal de 12V ou 24V com o Arduino Nano.
Hardware Necessário
Or you can buy the following kits:
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Sobre o Módulo MOSFET
Um pino do Arduino Nano consegue fornecer apenas alguns miliampères a 5V. Isso é suficiente para um LED pequeno, mas não para uma fita LED de 12V, um ventilador ou uma bomba. O módulo MOSFET fica entre os dois mundos. O Nano envia um sinal pequeno, e o MOSFET do módulo abre ou fecha o caminho para a grande corrente de 12V.
Este único tutorial cobre três módulos: AOD4184 (também vendido como D4184), LR7843 e FR120N. Eles usam o mesmo projeto de placa, com o mesmo tamanho, pinos, ligação e código. Só o chip MOSFET da placa é diferente.
| AOD4184 | LR7843 | FR120N | |
|---|---|---|---|
| MOSFET | AOD4184A (canal N) | IRLR7843 (canal N) | IRFR120N (canal N) |
| Tensão máxima da carga (especificação do MOSFET) | 40V DC | 30V DC | 100V DC |
| Corrente máxima (especificação do MOSFET) | 50A | 161A | 9.4A |
| Resistência ligado RDS(on) | cerca de 7 mΩ | cerca de 3.3 mΩ | cerca de 210 mΩ |
| Corrente prática sem dissipador de calor | cerca de 10–15A | cerca de 15A | cerca de 2A |
| Sinal de controle | lógica 3.3V / 5V, ativo em HIGH | lógica 3.3V / 5V, ativo em HIGH | lógica 3.3V / 5V, ativo em HIGH |
| Isolamento | optoacoplador PC817 | optoacoplador PC817 | optoacoplador PC817 |
| PWM | sim, mantenha ≤ ~1 kHz | sim, mantenha ≤ ~1 kHz | sim, mantenha ≤ ~1 kHz |
| Tipo de carga | somente DC | somente DC | somente DC |
Por que escolher um módulo MOSFET e não um relé? Ele não faz barulho de clique, não tem partes móveis, chaveia muito rápido e dura muito tempo. Principalmente, ele suporta PWM, então o Nano pode dimerizar uma fita LED ou reduzir a velocidade de um ventilador. Um relé só consegue fazer LIGADO e DESLIGADO.
Pinagem do Módulo MOSFET

O módulo tem dois grupos de pinos. O grupo de controle é um pequeno conector de 2 pinos com passo de 2.54mm, então ele encaixa direto na protoboard ao lado do Nano:
- Pino PWM: deve ser conectado a um pino do Arduino Nano com capacidade PWM (D9 neste tutorial). Este pino recebe o sinal de controle
- Pino GND: deve ser conectado ao pino GND do Arduino Nano (terra do sinal)
O grupo de alimentação tem três bornes de parafuso, porque ele conduz a corrente da carga:
- Pino +: deve ser conectado ao positivo (+) da fonte de alimentação da carga, por exemplo 12V, e ao fio positivo da carga. Os dois fios compartilham este único terminal
- Pino LOAD: deve ser conectado ao fio negativo da carga. Este é o lado chaveado, e ele vai para o dreno (drain) do MOSFET
- Pino −: deve ser conectado ao negativo (−) da fonte de alimentação da carga
※ Nota:
A disposição dos pinos em um módulo pode ser diferente de um fabricante para outro. Os rótulos também podem mudar um pouco entre lotes. É essencial sempre consultar os rótulos impressos no módulo ao usá-lo. Olhe com atenção!
Como o Módulo Funciona
O sinal do Nano não vai direto para o MOSFET. Ele segue este caminho: pino D9 do Nano → pino PWM → resistor pequeno → LED dentro do optoacoplador PC817 → luz → fototransistor dentro do PC817 → gate do MOSFET. Um resistor pull-down no gate o mantém em 0V enquanto o optoacoplador está desligado. O MOSFET fica entre o terminal LOAD e o terminal −, e a carga fica entre + e LOAD.
O módulo reage de três maneiras diferentes, dependendo do que o Nano coloca no pino PWM.
Caso 1: O Pino PWM Está em LOW (0V)
- Nenhuma corrente flui para o optoacoplador, então o LED dele fica apagado.
- O fototransistor fica desligado. O resistor pull-down mantém o gate do MOSFET em 0V.
- O MOSFET está DESLIGADO. Entre LOAD e −, ele se comporta como uma chave aberta.
- O fio − da fita LED não tem caminho para o − do adaptador, então nenhuma corrente flui. A fita recebe 0V e fica apagada.
- No código: digitalWrite(MOSFET_PIN, LOW) ou analogWrite(MOSFET_PIN, 0).
Caso 2: O Pino PWM Está em HIGH (5V)
- O pino de 5V empurra alguns mA pelo LED do optoacoplador. Ele acende dentro do chip, onde você não consegue ver.
- A luz liga o fototransistor. Agora o gate do MOSFET recebe cerca de metade da alimentação da carga, cerca de 6V com um adaptador de 12V.
- O MOSFET liga totalmente. Ele se comporta como uma chave fechada com uma resistência muito baixa: alguns mΩ para o AOD4184 e o LR7843, cerca de 0.2Ω para o FR120N.
- A corrente flui em um circuito: + do adaptador → terminal + → fita LED → terminal LOAD → MOSFET → terminal − → − do adaptador.
- A fita recebe quase os 12V completos e brilha com brilho total.
- No código: digitalWrite(MOSFET_PIN, HIGH) ou analogWrite(MOSFET_PIN, 255).
Caso 3: O Pino PWM Recebe um Sinal PWM
- O pino alterna entre 0V e 5V cerca de 490 vezes por segundo (a taxa padrão do analogWrite() no D9).
- O MOSFET acompanha cada pulso: ele fica LIGADO durante cada parte HIGH e DESLIGADO durante cada parte LOW.
- A carga recebe pulsos de 12V. O ciclo de trabalho (duty cycle) é a parcela de tempo em que o pino está em HIGH, e a tensão e a potência médias são iguais ao ciclo de trabalho vezes o valor total.
- No código: analogWrite(MOSFET_PIN, value), onde value vai de 0 a 255 e o ciclo de trabalho é value / 255. O código do tutorial vai de 10% a 100% em passos.
| Ciclo de trabalho | Valor do analogWrite() | A carga fica LIGADA | Tensão média (alimentação de 12V) | Potência |
|---|---|---|---|---|
| 0% | 0 | nunca | 0V | desligada |
| 25% | 64 | 1/4 do tempo | cerca de 3V | cerca de um quarto |
| 50% | 128 | metade do tempo | cerca de 6V | cerca de metade |
| 75% | 191 | 3/4 do tempo | cerca de 9V | cerca de três quartos |
| 100% | 255 | o tempo todo | 12V | total |
- Uma fita LED parece mais fraca. Ela ainda pisca, mas rápido demais para o olho perceber.
- Um ventilador, motor ou bomba funciona mais devagar, porque a massa em rotação suaviza os pulsos.
- O PC817 é um componente lento, então a frequência do PWM deve ficar entre cerca de 500 Hz e 1 kHz. Em uma frequência muito maior, o MOSFET não chaveia totalmente, a carga não recebe pulsos limpos e o MOSFET esquenta. Os 490 Hz do pino D9 são adequados.
Mais alguns pontos são importantes para o seu projeto:
- Terras isolados: O GND do sinal e o GND da carga NÃO estão conectados no módulo. O lado do Nano e o lado de 12V são separados eletricamente pelo optoacoplador.
- Chave do lado negativo (low-side): O MOSFET é do tipo canal N. Ele chaveia o fio negativo da carga, não o fio positivo.
- Alimentação da carga de pelo menos cerca de 6V: Como mostrado no Caso 2, a tensão do gate vem da alimentação da carga por meio de um divisor de tensão. Por isso, a alimentação da carga deve ser de pelo menos cerca de 6V. Use 9V ou mais se a carga consumir mais do que alguns ampères. O módulo NÃO vai funcionar bem com uma alimentação de carga de 5V, então não use o pino de 5V do Nano para alimentar a carga.
- Corrente de controle pequena: O LED do optoacoplador precisa de apenas alguns mA, então um pino do Nano pode acioná-lo diretamente, sem transistor extra.
- Sem diodo flyback na placa: Para motores, bombas, solenoides e relés (cargas indutivas), adicione um diodo flyback externo (por exemplo 1N5819 ou 1N4007) sobre a carga. O cátodo (o lado com a faixa) vai para o + da carga, e o ânodo vai para o − da carga.
Diagrama de Ligação
O Nano e o módulo compartilham apenas dois fios (sinal e GND), e o adaptador de 12V alimenta o lado da carga através do conector de alimentação DC, como mostrado abaixo.

This image is created using Fritzing. Click to enlarge image
| De | Para |
|---|---|
| Pino D9 do Arduino Nano | Pino PWM do módulo MOSFET |
| GND do Arduino Nano | Pino GND do módulo MOSFET |
| + do adaptador de 12V (via conector de alimentação DC) | + do módulo MOSFET |
| − do adaptador de 12V (via conector de alimentação DC) | − do módulo MOSFET |
| + da fita LED | + do módulo MOSFET (mesmo terminal do + do adaptador) |
| − da fita LED | LOAD do módulo MOSFET |
WARNING
Nunca conecte os fios de 12V a nenhum pino do Arduino Nano. Os 12V vão somente para os bornes de parafuso do módulo MOSFET.
Ligando o Módulo MOSFET a Outros Dispositivos de 12V
A fita LED é apenas uma opção. Os exemplos abaixo mostram outras cargas comuns de 12V. No lado do Nano, nada muda: D9 vai para PWM e GND vai para GND. Só o lado dos bornes de parafuso é diferente. A tabela dá uma visão geral rápida:
| Dispositivo | Diodo flyback | Como controlá-lo |
|---|---|---|
| Fita LED de 12V (cor única) | Não é necessário | PWM (brilho) |
| Motor DC de 12V | Necessário | PWM (velocidade) |
| Ventilador de resfriamento de 12V | Necessário | PWM (velocidade) |
| Bomba d'água de 12V | Necessário | PWM (vazão) |
| Trava solenoide de 12V | Necessário | Somente LIGA/DESLIGA |
| Válvula solenoide de 12V | Necessário | Somente LIGA/DESLIGA |
Para cada dispositivo, a tensão do adaptador deve corresponder à tensão do dispositivo (um dispositivo de 12V precisa de um adaptador de 12V), e deve ser de pelo menos 6V. Verifique também quanta corrente o dispositivo consome. O módulo FR120N serve apenas para cargas pequenas, de cerca de 2A sem dissipador de calor. Para cargas maiores, escolha o módulo AOD4184 ou LR7843.
O mesmo código do Arduino Nano funciona para todos esses dispositivos. Para a trava solenoide e a válvula solenoide, use apenas HIGH e LOW (100% ou 0%) no lugar do fade.
Exemplo de Ligação da Fita LED de 12V

This image is created using Fritzing. Click to enlarge image
- O fio + da fita (geralmente marcado como 12V) deve ser conectado ao +, e o fio − deve ser conectado ao LOAD.
- Uma fita LED não é uma carga de bobina, então não precisa de diodo flyback.
- O PWM define o brilho.
- Este exemplo é apenas para fita de cor única. Fitas RGB e endereçáveis são ligadas de outra forma. Uma fita mais longa consome mais corrente, então verifique a corrente dela antes de escolher o módulo.
Exemplo de Ligação do Motor DC de 12V

This image is created using Fritzing. Click to enlarge image
| De | Para |
|---|---|
| + do motor | + do módulo MOSFET |
| − do motor | LOAD do módulo MOSFET |
| Diodo 1N5819 ou 1N4007, cátodo (faixa) | + do motor |
| Diodo 1N5819 ou 1N4007, ânodo | − do motor |
Um motor é uma carga de bobina. O diodo sobre os fios do motor protege o MOSFET do pico de tensão quando o motor desliga (veja "Sem diodo flyback na placa" acima). O PWM define a velocidade. O módulo consegue acionar o motor em uma direção apenas. Para mudar a direção, use um driver de motor como o L298N, como no tutorial Arduino Nano - Motor DC.
Exemplo de Ligação do Ventilador de Resfriamento de 12V

This image is created using Fritzing. Click to enlarge image
- O fio vermelho é o +, e deve ser conectado ao +. O fio preto é o −, e deve ser conectado ao LOAD.
- Se o ventilador tem um terceiro fio (amarelo, o sinal de velocidade), deixe-o desconectado.
- Adicione o diodo flyback da mesma forma que para o motor DC. Ele é barato e não causa nenhum problema.
- O PWM define a velocidade. Alguns ventiladores não partem com um ciclo de trabalho muito baixo, então comece acima de cerca de 30%.
Exemplo de Ligação da Bomba d'Água de 12V

This image is created using Fritzing. Click to enlarge image
- O + da bomba vai para o +, e o − da bomba vai para o LOAD.
- Uma bomba tem um motor dentro, então o mesmo diodo flyback é necessário.
- O PWM define a vazão. Nunca deixe a bomba funcionar a seco.
Exemplo de Ligação da Trava Solenoide de 12V

This image is created using Fritzing. Click to enlarge image
- O + da trava vai para o +, e o − da trava vai para o LOAD. A bobina interna também exige o diodo flyback.
- Acione-a somente totalmente LIGADA ou totalmente DESLIGADA. Não use dimerização por PWM.
- A trava esquenta se ficar LIGADA por muito tempo. Ligue-a somente por um breve momento para destravar e depois DESLIGUE-a.
Exemplo de Ligação da Válvula Solenoide de 12V

This image is created using Fritzing. Click to enlarge image
Veja A melhor forma de alimentar o Arduino Nano e outros componentes.
- O + da válvula vai para o +, e o − da válvula vai para o LOAD, com o diodo flyback sobre a bobina.
- Esta é uma válvula normalmente fechada: totalmente LIGADA abre a válvula, e DESLIGADA fecha a válvula.
- Use somente LIGA/DESLIGA, não PWM.
Como Programar o Módulo MOSFET
Nenhuma biblioteca é necessária. O módulo é acionado com as funções nativas do Arduino.
- O primeiro passo é especificar o pino do Arduino Nano que está conectado ao pino PWM do módulo. Ele deve ser um pino PWM (marcado com ~ no Nano, como o D9):
- Configure o pino como saída no setup():
- Para deixar a carga totalmente LIGADA ou totalmente DESLIGADA, uma simples escrita digital é suficiente:
- Para definir um nível de potência, escreva um valor PWM de 0 a 255. É mais fácil pensar em porcentagem, então o valor em porcentagem é convertido com map():
Código Arduino Nano para o Módulo MOSFET
O código abaixo faz o seguinte em um loop:
- Liga a carga totalmente por 2 segundos e depois a desliga totalmente por 2 segundos
- Aumenta a potência de 10% a 100% em passos de 10%, um passo a cada 0.5 segundo
- Diminui a potência de 90% de volta a 0% da mesma forma
- Espera 1 segundo e começa de novo
Passos Rápidos
- Se esta é a primeira vez que você usa o Arduino Nano, veja como configurar o ambiente para o Arduino Nano no Arduino IDE.
- Ligue os componentes como mostrado no diagrama. Não conecte o adaptador de 12V ainda.
- Conecte a placa Arduino Nano ao computador usando um cabo USB.
- Abra o Arduino IDE no computador.
- Selecione a placa Arduino Nano e a porta COM dela.
- Copie o código acima e cole-o no Arduino IDE.
- Clique no botão Upload para fazer o upload do código para o Arduino Nano.
- Conecte o adaptador de alimentação de 12V.
- Abra o Serial Monitor e defina o baud rate como 9600.
- Observe a fita LED: ela fica com brilho total por 2 segundos, apagada por 2 segundos e depois vai ficando lentamente mais brilhante e lentamente mais fraca.
- Veja o resultado no Serial Monitor:
Se você usar um ventilador de 12V no lugar da fita LED, o ventilador funciona na velocidade máxima, para, e depois acelera e desacelera passo a passo.
Conhecimento Adicional
AOD4184 vs LR7843 vs FR120N: Qual Escolher
Os três módulos se conectam ao Arduino Nano da mesma forma. A escolha depende da tensão e da corrente da sua carga.
| AOD4184 | LR7843 | FR120N | |
|---|---|---|---|
| Tensão máxima da carga | 40V DC | 30V DC | 100V DC |
| Resistência ligado | cerca de 7 mΩ | cerca de 3.3 mΩ | cerca de 210 mΩ |
| Corrente prática sem dissipador de calor | cerca de 10–15A | cerca de 15A | cerca de 2A |
| Bom para | cargas de 12V/24V/36V | cargas de 12V/24V com corrente alta | cargas pequenas de 24V/48V |
- LR7843: Tem a menor resistência, então funciona mais frio com corrente alta. É o melhor para fitas LED de 12V/24V de alta potência e motores grandes. O limite é 30V.
- AOD4184: É um bom módulo para todo uso. Funciona até 40V e suporta corrente forte.
- FR120N: Suporta a maior tensão (até 100V), mas a resistência dele é a mais alta. Serve apenas para correntes pequenas, cerca de 2A sem dissipador de calor.
É evidente que o LR7843 é a melhor escolha para cargas pesadas de 12V/24V, enquanto o FR120N é a única opção acima de 40V.
※ Nota:
Os números grandes de corrente (50A para o AOD4184, 161A para o LR7843) são os limites do chip MOSFET. Eles NÃO são o que a pequena placa do módulo consegue suportar. O limite real é o calor. Depois de alguns minutos de funcionamento, toque no MOSFET com cuidado. Se ele estiver quente demais para segurar, reduza a carga ou adicione um dissipador de calor.
Módulo MOSFET vs Relé
| Módulo MOSFET | Relé | |
|---|---|---|
| Tipo de carga | somente DC | DC ou AC |
| PWM (dimerização, controle de velocidade) | Sim | Não |
| Ruído | Silencioso | Faz cliques |
| Partes móveis | Nenhuma | Sim |
| Velocidade de chaveamento | Muito rápida | Lenta |
Para um projeto com Nano em uma protoboard que controla uma fita LED, um ventilador ou uma bomba de 12V, o módulo MOSFET é a melhor escolha. Para dispositivos da rede elétrica AC, use um relé.