Controle de motor DC com módulo MOSFET IRF520N

Controle de Motor DC com Módulo MOSFET IRF520N

Hoje vamos ver um módulo simples mas que pode ser utilizado em diversas aplicações em projetos eletrônicos, automação residencial e robótica. Vamos usar o módulo MOSFET IRF520N para controle de motor DC.

E o IRF520N tem uma saída PWM que não serve só para motores. Você pode também regular, por exemplo, o brilho de uma fita de leds ou até mesmo acionar válvulas solenóide.

O módulo MOSFET IRF520N

Este módulo possui um transistor de efeito de campo (MOSFET), que controlamos através de um único pino de sinal. Bornes parafusáveis são usados tanto para conectar a fonte de entrada de tensão (VIN e GND, até 24VDC) como para conexão da carga (pinos V+ e V-).

Nos pinos de controle (Vcc, GND e SIG) vamos conectar a placa Arduino, por meio de um pino digital comum.

O módulo tem capacidade máxima de corrente de 5A, mas em instalações que exigem mais de 1A de corrente é altamente recomendável o uso de um dissipador de calor.

Conexão IRF520N com Arduino

A conexão da alimentação do módulo mosfet IRF520N ao Arduino é feita através dos pinos 5V e GND. Para controle do motor, vamos usar o pino digital 7 conectado ao pino SIG do módulo.

Adicionamos ao circuito um potenciômetro de 10K, que vamos usar para controlar o nível de tensão na saída PWM do módulo MOSFET.

Nosso circuito fica assim:

Note que temos que usar uma fonte externa para alimentação do motor, para não sobrecarregar as portas da placa Arduino.

Programa controle de motor DC com módulo IRF520N

Para o programa de testes vamos usar a biblioteca HCMotor, disponível neste link.

Infelizmente ainda não é possível instalar essa biblioteca a partir da IDE do Arduino, então temos que fazer a instalação de maneira manual. Baixe o arquivo disponibilizado no link anterior, descompacte e coloque-o na pasta LIBRARIES da IDE do Arduino.

Em caso de dúvidas, tenho um tutorial que mostra em detalhes esse processo de instalação de bibliotecas: Como instalar uma biblioteca na IDE Arduino.

Feita a instalação da biblioteca HCMotor, carregue o programa abaixo na sua placa Arduino:

//Programa: Controle de motor DC com modulo MOSFET IRF520N
//Adaptacao: Arduino e Cia

#include "HCMotor.h"

//Define o pino de controle do motor
#define MOTOR_PIN 7

//Define o pino analogico de conexao ao potenciometro
#define POT_PIN A0

//Cria uma instancia da biblioteca
HCMotor HCMotor;

void setup()
{
  //Inicializa a biblioteca HCMotor
  HCMotor.Init();

  //Associa o motor 0 ao pino digital do motor (MOTOR_PIN)
  //O primeiro parametro e o numero do motor, o segundo o tipo do motor
  //e o terceiro o pino de controle
  HCMotor.attach(0, DCMOTOR, MOTOR_PIN);

  //Define o duty cycle do sinal PWM em incrementos de 100uS
  //No exemplo: 100 x 100uS = 1mS
  HCMotor.DutyCycle(0, 100);
}

void loop()
{
  int Speed;

  //Faz a leitura do valor do potenciometro e converte
  //para um valor entre 0 e 100
  Speed = map(analogRead(POT_PIN), 0, 1024, 0, 100);

  //Aciona o motor de acordo com o valor lido do potenciometro
  HCMotor.OnTime(0, Speed);
}

O programa é baseado no exemplo da biblioteca HCMotor, e faz o controle da rotação do motor DC de acordo com o valor lido do potenciômetro conectado ao pino analógico A0.

Na implementação do módulo em um robô, por exemplo, o controle da rotação das rodas pode ser feito de forma automática, de acordo com os valores lidos de um sensor ultrassônico ou IR (Infravermelho).

Gostou de usar motor DC com módulo MOSFET IRF520N? Confira outros posts usando Arduino aqui mesmo no Arduino e Cia!

5/5 - (2 votos)

Related posts

Painel de senhas com Arduino

by Arduino e Cia
6 anos ago

Conectando módulo gravador de voz e player ISD1820 ao Arduino

by Arduino e Cia
10 anos ago

Ligando uma lâmpada com módulo relé Arduino

by Arduino e Cia
12 anos ago
Sair da versão mobile