Driver Motor Com Ponte H L298n - Controlando Motor DC - Portal VDS
Driver Motor Com Ponte H L298n - Controlando Motor DC - Portal VDS
Driver Motor Com Ponte H L298n - Controlando Motor DC - Portal VDS
Exemplo de motor DC
Sendo assim, não devemos ligar estes motores diretamente nas portas do Arduino pois se o motor
demandar uma corrente acima de 40mA nas portas digitais (máxima fornecida pelo Arduino) pode
queimar a porta e dani car a placa.
Para solucionar a questão da alta corrente poderíamos usar transistores, porem é importante que
seja possível controlar o sentido de giro do motor, função que não se faz possível usando apenas
um transistor já que para inverter o sentido de giro devemos inverter a polaridade da alimentação
do motor (onde era positivo se põe negativo e vice versa). Um transistor só seria su ciente para
ligar e desligar o motor.
Para resolver nosso problema utilizamos um famoso circuito conhecido como Ponte H que nada
mais é que um arranjo de 4 transistores. Este circuito é uma elegante solução por ser capaz de
acionar simultaneamente dois motores controlando não apenas seus sentidos, como também suas
INÍCIO
velocidades. Além de seu uso TUTORIAIS
ser simples APOSTILA ARDUINO BÁSICO
no Arduino. SEJA UM AUTOR LOJA VIDA DE SILÍCIO
Circuito Ponte H
Quando nenhum par de chaves está acionado, o motor está desligado (a). Quando o par S1-S3 é
INÍCIO
acionado a corrente percorre S1-S3TUTORIAIS APOSTILA ARDUINO BÁSICO
fazendo com SEJA UM AUTOR
que o motor gire em um sentido LOJA VIDA DE SILÍCIO
(b). Já quando o
par S2-S4 é acionado a corrente percorre por outro caminho fazendo com que o motor gire no
sentido contrário (c).
O CI L298N é muito utilizado para o propósito de controle de motores, ele nada mais é que uma
ponte H em um componente integrado. Uma das vantagens do uso desse CI é o menor espaço
ocupado, a baixa complexidade do circuito e o fato de ele já possuir dois circuitos H, podendo
assim, controlar dois motores. Na gura a seguir você pode conferir o diagrama de blocos do CI
L298N retirado de sua folha de dados (folha de dados L298N) :
INÍCIO TUTORIAIS APOSTILA ARDUINO BÁSICO SEJA UM AUTOR LOJA VIDA DE SILÍCIO
Outra vantagem do L298N é a resposta a sinais de PWM. Se no lugar de usar sinais lógicos TTL for
usado sinais de PWM, é possível regular a tensão de saída, e dessa forma regular a velocidade dos
motores.
O PWM, Pulse Width Modulation (Modulação por Largura de Pulso), consiste basicamente em
aplicar uma onda quadrada de amplitude Vcc e frequência alta no lugar da tensão continua Vcc. Leia
mais sobre PWM na postagem Grandezas digitais e analógicas e PWM.
Ao usar um sinal de PWM nas entradas IN1 e IN2, por exemplo, teremos uma tensão de saída nos
pinos OUT1 e OUT2 em PWM que será igual à Duty Cycle*Vcc. Dessa forma, podemos regular a
diferença de potencial média aplicada nos motores, controlando as suas velocidades.
Existem outras opções de CI’s de ponte H no mercado, é importante consultar as especi cações
deles em suas folhas de dados(Datasheet) para saber qual irá lhe atender melhor. Veja algumas
opções de ponte H:
L293D Folha de Dados;
INÍCIO
LMD18200 Folha de dados. TUTORIAIS APOSTILA ARDUINO BÁSICO SEJA UM AUTOR LOJA VIDA DE SILÍCIO
Existem varias opções disponíveis no mercado, com tamanhos e especi cações diferentes.
Algumas especi cações são importantes ao escolher seu módulo, são elas:
Ci L298N;
Tensão para os motores: 5 – 35V;
Corrente máxima para os motores: 2A;
Potencia máxima: 25W;
Tensão lógica: 5V;
Corrente lógica: 0-36mA;
Dimensões: 43x43x27 mm
Peso: 30g.
INÍCIO TUTORIAIS APOSTILA ARDUINO BÁSICO SEJA UM AUTOR LOJA VIDA DE SILÍCIO
Entradas e saídas
Para começa vamos entender função de cada pino bem como deve ser utilizado.
INÍCIO TUTORIAIS APOSTILA ARDUINO BÁSICO SEJA UM AUTOR LOJA VIDA DE SILÍCIO
Veja que agora, no lugar das chaves S1-S3 e S2-S4 temos os pinos IN1 e IN2. Onde IN1 corresponde
às chaves S1-S3 e a IN2 às chaves S3-S4.
Para controlar o sentido, temos as seguintes combinações para o motor A(IN1 e IN2)
Tabela de combinações
Componentes necessários
Para este exemplo, utilizaremos:
Montando o projeto
Prossiga com a montagem conforme esquema abaixo. Caso você use apenas um motor, basta
desconsiderar o motor B:
Antes de carregar um programa, você precisa selecionar qual porta você deseja usar para fazer
carregar o programa no Arduino (upload). Dentro do Arduino IDE, clique no menu Ferramentas
(tools) e abra o submenu Porta(Port). Clique na porta que seu Arduino está conectado, tal como
INÍCIO
COM3 ou COM4. Geralmente TUTORIAIS
aparece APOSTILA ARDUINO BÁSICO
o nome da placa SEJA UM AUTOR
Arduino : “COM3 (Arduino/Genuino Uno)”. LOJA VIDA DE SILÍCIO
Você também precisa garantir que o tipo de placa apropriado está selecionado em
Ferramentas(Tools) no submenu Placa (Board).
INÍCIO TUTORIAIS APOSTILA ARDUINO BÁSICO SEJA UM AUTOR LOJA VIDA DE SILÍCIO
Programando
Crie um programa (sketch) e salve com o nome de “exemplo1_ponteh”.
INÍCIO TUTORIAIS APOSTILA ARDUINO BÁSICO SEJA UM AUTOR LOJA VIDA DE SILÍCIO
Em seguida, insira nele o código conforme escrito abaixo:
1 /*Pinagem do arduino*/
2
3 //motor_A
4 int IN1 = 2 ;
5 int IN2 = 3 ;
6
7 //motor_B
8 int IN3 = 4 ;
9 int IN4 = 5 ;
10
11 //Inicializa Pinos
12 void setup(){
13 pinMode(IN1,OUTPUT);
14 pinMode(IN2,OUTPUT);
15 pinMode(IN3,OUTPUT);
16 pinMode(IN4,OUTPUT);
17 }
18
19 void loop(){
20
21 /*Inicio dos Estados do motor A*/
22 //Sentido 1
23 digitalWrite(IN1,LOW);
24 digitalWrite(IN2,HIGH);
25 delay(5000);
26
27 //Freia Motor_A
28 digitalWrite(IN1,HIGH);
29 digitalWrite(IN2,HIGH);
30 delay(5000);
31
32 //Sentido 2
33 digitalWrite(IN1,HIGH);
34 digitalWrite(IN2,LOW);
35 delay(5000);
36
37 //Freia Motor_A
38 digitalWrite(IN1,HIGH);
39 digitalWrite(IN2,HIGH);
40 delay(5000);
INÍCIO
41 /*Fim dos Estados do motor A*/ TUTORIAIS APOSTILA ARDUINO BÁSICO SEJA UM AUTOR LOJA VIDA DE SILÍCIO
42
43 /*Inicio dos Estados do motor B*/
44 //Sentido 1
45 digitalWrite(IN3,LOW);
46 digitalWrite(IN4,HIGH);
47 delay(5000);
48
49 //Freia Motor_B
50 digitalWrite(IN3,HIGH);
51 digitalWrite(IN4,HIGH);
52 delay(5000);
53
54 //Sentido 2
55 digitalWrite(IN3,HIGH);
56 digitalWrite(IN4,LOW);
57 delay(5000);
58
59 //Freia Motor_B
60 digitalWrite(IN3,HIGH);
61 digitalWrite(IN4,HIGH);
62 delay(5000);
63
64 /*Fim dos Estados do motor_B*/
65 }
Após escrever o código, clique em Carregar (Upload) para que o programa seja transferido para seu
Arduino.
Colocando para funcionar
INÍCIO TUTORIAIS APOSTILA ARDUINO BÁSICO SEJA UM AUTOR LOJA VIDA DE SILÍCIO
Se tudo deu certo, teremos o motores fazendo os seguintes movimentos:
Entendendo a fundo
Entendendo o Software
Primeiro de nimos os pinos que estão conectados à ponte H para controle de cada motor.
1 //motor_A
2 int IN1 = 2 ;
3 int IN2 = 4 ;
4
5 //motor_B
6 int IN3 = 6 ;
7 int IN4 = 7 ;
Veja que temos 2 pinos para cada moto para controle de sentido de giro.
INÍCIO TUTORIAIS APOSTILA ARDUINO BÁSICO SEJA UM AUTOR LOJA VIDA DE SILÍCIO
Movimentando o motor
Para fazer o motor se movimentar, primeiro temos que informar para que direção ele deve girar:
1 //Motor_A
2 //Sentido 1
3 digitalWrite(IN1,LOW); //0V
4 digitalWrite(IN2,HIGH); //5V
Para controlar o sentido, temos as seguintes combinações para o motor A(IN1 e IN2)
1 //Sentido 1
2 digitalWrite(IN1,LOW); //0V
3 digitalWrite(IN2,HIGH); //5V
4
5 //Freia Motor_A
6 digitalWrite(IN1,HIGH); //5V
7 digitalWrite(IN2,HIGH); //5V
8
9 //Sentido 2
10 digitalWrite(IN1,HIGH); //5V
11 digitalWrite(IN2,LOW); //0V
Fechamento INÍCIO TUTORIAIS APOSTILA ARDUINO BÁSICO SEJA UM AUTOR LOJA VIDA DE SILÍCIO
Que tal agora aprender a controlar a velocidade de um motor DC usando um módulo de Ponte H?
Drive Motor com Ponte H L298N – Controle de velocidade de motor DC com PWM
Esperamos que tenham gostado, deixe seu comentário com duvidas, sugestões ou com a foto ou
vídeo de seu projeto!! Compartilhe à vontade.
Compartilhe:
Relacionado
Ponte H L298N - Controlando a Robô seguidor de linha com O que é Arduino e como
velocidade de um motor DC com sensor Infravermelho e PWM funciona?
PWM
INÍCIO TUTORIAIS APOSTILA ARDUINO BÁSICO SEJA UM AUTOR LOJA VIDA DE SILÍCIO
25 COMMENTS
Para um motor de 12V você precisa transformar essa tensão de 11V em 5V. Você pode
usar um Regulador De Tensão LM2596 1.25V-35V Ajustavel.
Assim você alimenta ele com 11V e ajusta a saída para 5V. E com esse 5V você
alimenta 2 pontes H’s, cada ponte H controlando 2 motores.
http://www.vidadesilicio.com.br/regulador-tens-o-lm2596.html
http://www.vidadesilicio.com.br/regulador-de-tensao-ajustavel-lm2596.html
WAGNER SATO REPLY
21 de setembroINÍCIO TUTORIAIS
de 2017, 22:33 APOSTILA ARDUINO BÁSICO SEJA UM AUTOR LOJA VIDA DE SILÍCIO
BOA NOITE,
EU ESTOU PROCURANDO O DATASHEET DA PONTE H, POREM SÓ ENCONTRO O
DATASHEET DO L298…
GOSTARIA DE SABER SE OS DIODOS NA PONTE H ESTÃO CONECTADOS EM
PARALELO COM A CARGA PRA FAZER A FUNÇÃO DE RODA LIVRE, SABE ME DIZER?
https://portal.vidadesilicio.com.br/wp-
content/uploads/2017/03/Modulo-L298N-esquema.jpg
Olá, precisava de ajuda, estou usando uma ponte h l298n com um motor
12v, z a ligação conforme os esquemas ja esplicado aqui quanto em
outros, mais o motor nao atinge sua rotação nal, creio que n esteja
chegando os 12v no motor. Alguem poderia mim ajudar?
INÍCIO TUTORIAIS APOSTILA ARDUINO BÁSICO SEJA UM AUTOR LOJA VIDA DE SILÍCIO
Jorge Vicente REPLY
Allan Mota
18 de outubro de 2017, 23:39
Olá, estou realizando um projeto nal do meu curso de automação e estou montando
uma ponte rolante com 2 motores de 12vc. No caso nós planejamos o funcionamento
dele em ponte H (ação e reversão e parada) acionado por reles ( no caso a shield de
relés, 2 pra cada motor ) , funcionando via bluetooth e por um shield de joystick
(somente o analógico) para fazer o manual.
Minha di culdade está sendo em realizar a programação do mesmo.
INÍCIO são TUTORIAIS
os componentes , APOSTILA ARDUINO BÁSICO SEJA UM AUTOR LOJA VIDA DE SILÍCIO
Arduino Uno;
Shield de Relé ( 4 no Total)
Shield de Bluetooth (HC-05)
Shield de Joystick ( KEYES )
Agradeceria muito de uma ajuda, pois sou leigo em programação de arduino, e estou
meio que desesperado. haha.
Abraço.
Kevin REPLY
4 de novembro de 2017, 22:45
INÍCIO não
Olá, meu arduino TUTORIAIS APOSTILA
é reconhecido ARDUINO BÁSICO
pelo computador, a portaSEJA
COMUM AUTOR
não aparece LOJA VIDA DE SILÍCIO
como opção. As únicas coisas funcionando nele são seus próprios Leds. Poderia me
ajudar?
Kevin REPLY
olá, estou om problemas na ligação de 2 motores dc 3~6v com redução com o driver
ponte-h l298n. Consigo ligar o driver, mas os motores apenas começam a girar e
param. Estou utilizando 4 pilhas AA para a alimentação e os os são aqueles bem
nos que estão ligados ao driver. Gostaria de sabe o que ocorre com a minha ligação
As pilhas estão novas? Talvez elas não estejam dando conta. Essa ligação
é bem simples e provavelmente seu problema esteja ligado à fonte de
alimentação.
DEIXE UMA PERGUNTA, SUGESTÃO OU ELOGIO! ESTAMOS ANSIOSOS PARA TER OUVIR!