M2 - Montagem base Kit 2WD usando ponte H L298N , 1 bateria 9V e Arduino

Robótica - Montagem 02

Como montar o kit chassi 2WD com driver ponte H L298N e 1 bateria 9V

Objetivo

O objetivo deste tutorial é mostrar passo a passo a montagem do chassi do robô Arduino móvel de duas rodas 2WD com o driver ponte "H" L298N e uma única bateria 9V. Essa montagem básica deixará pronto o seu robô móvel 2WD para a elaboração de projetos com Arduino que permitam esse formato.

Obs.: O kit 2WD possui dois motores DC (3 a 6V) com caixa de redução (1:48) e são conectados independentemente em cada roda,  sobrando assim uma roda boba (universal) para dar sustentação ao chassi.

Referências

Antes de fazer a montagem do seu robô móvel 2WD usando o driver ponte H L298N, recomendamos que faça os seguintes projetos:

Aplicação

Para fins didáticos e projetos de robôs seguidores de linha, autônomos com sensores ultrassônico, movidos por controle remoto, smartphone, bluetooth, entre outros.

Componentes e ferramentas necessários

Referência

Componente

Quantidade

Imagem

Observação

Kit chassi 2WD montado

Kit chassi 2WD para Arduino montado 1

Dimensões:
– Chassi: 21,2 x 15,2cm
– Roda: 7 x 7 x 2,6 cm

Montagem:

M1 - Montagem do kit chassi 2WD

Arduino UNO Arduino UNO R3 1

Você poderá utilizar uma placa Arduino UNO original ou similar

Driver Motor Ponte H L298N Módulo Driver Motor Ponte H L298N 1

– Tensão de Operação: 4~35v
– Tensão máxima de alimentação externa  7 - 35V
– Chip: ST L298N (datasheet)
– Controle de 2 motores DC ou 1 motor de passo
– Corrente de Operação máxima:2A por canal ou 4A max
– Tensão lógica: 5v
– Corrente lógica por entrada: 0~36mA
– Limites de Temperatura: -20 a +135°C
– Potência Máxima: 25W

Parafusos Parafusos M3 2

Rosca métrica 3mm

Comprimento: 12mm ou maior

Fenda ou Fenda Philips

Porcas

Porcas M3

2 Rosca métrica 3mm
Amarrilho Aramado Revestido

Amarrilho Aramado Revestido 80mm

2  

Comprimento: 8cm ou menor

Obs.: Fecho de arame revestido, muito utilizado para o lacre de pacotes de pão de forma. Usar de qualquer cor.

Jumpers

Kit cabos ligação macho / macho

1  
Chave gangorra

Chave gangorra 3A

(2 terminais)

1

Usar chave gangorra (corrente máxima 3A ou maior)

Opcional: Se desejar, você poderá fazer a ligação direta do robô móvel sem a opção de uma chave liga e desliga.

Chave Philips

Chave Philips M3

1   Chave philips adequada para parafuso M3
Bateria 9V Bateria 9V recarregável 1

Utilize bateria 9V de preferência recarregável.

Suporte para bateria 9V Suporte para bateria 9V 1

Suporte para bateria 9V com plugue P4

Também poderá um case para suporte de bateria 9V (opcional)

Cabo USB para Arduino Cabo USB AB 30cm 1 Cabo USB para Arduino (min. 30cm)
Ferro de Solda Ferro de Solda com Solda de Estanho 1mm 1
 
Utilizar solda de estanho de 1mm de diâmetro ou menor
Pistola de cola quente Pistola de cola quente  


 

Potência Máxima: 40W

Diâmetro do bastão de cola: 11 ~ 12mm

Montagem do robô móvel 2WD base - L298N e 1 bateria 9V

1. Faça a montagem do chassi 2WD conforme tutorial: M1 - Montagem do kit chassi 2WD.

2. Com o chassi 2WD montado, vamos agora fixar a placa Arduino Uno. A fixação poderá ser com parafusos e porcas M3. Entretanto, se desejar, poderá fixar a placa Arduino com fita dupla face aplicada entre o acrílico e  placa.

2.1. Fixação da placa Arduino no chassi 2WD usando 2 parafusos M3:

 2.2. Os parafusos devem ser fixados e travados com a utilização de 2 porcas M3:

Atenção: Cuidado para não apertar muito os parafusos evitando-se trincas no acrílico do chassi.

3. Para controlar a velocidade e o sentido de rotação dos 2 motores do robô vamos usar o driver driver motor ponte H - L298N.

3.1. Posicione o módulo ponte H L298 sobre o chassi do robô e fixe-o usando 2 fechos aramados (amarrilhos usados para fechar pacote de pão). Obs.: Se desejar, você poderá utilizar outros elementos de fixação, como fita dupla face ou parafusos.

 3.2. Veja abaixo como fica o posicionamento da ponte H L298N no suporte do chassi 2WD.

4. Agora que já posicionamos a ponte H L298N sobre o suporte do chassi 2WD, podemos conectá-la aos motores CC.

4.1. Veja abaixo um esquema macro para a conexão dos motores A e B.

4.2. Por padronização, vamos fazer a montagem mantendo-se o cabo vermelho e o preto do motor conectado conforme imagem abaixo:

Obs.: Caso ocorra alguma inversão na polaridade de ligação, não se preocupe, pois podemos corrigir a conexão com o teste final.

4.3. Da mesma maneira, faça a conexão da ponte H com o motor A, como mostra a imagem abaixo:

5. Conecte usando jumpers a ponte H L298N com o Arduino. Isso executara a comunicação e o controle de velocidade dos motores CC (corrente contínua) montados no chassi 2WD.

5.1. Veja na imagem abaixo deve ficar o esquema de montagem do nosso exemplo:

5.2. Entendendo a conexão dos motores A e B:

Obs.: Para entender como controlar de motores CC com Arduino e ponte H L298N leia o artigo: I07 - Como controlar motores DC com o Driver Ponte H - L298N e Arduino

5.2.1. Abaixo a tabela com as identificações dos pinos a serem conectados ao Arduino:

driver ponte H L298N motor microcontrolador Aruino
IN1 A 8
IN2 A 7
IN3 B 5
IN4 B 4

 5.2.2. Para fazer variar a velocidade dos eixos dos motores é necessário conectar os pinos ENA e ENB ao Arduino, conforme tabela abaixo:

Obs.: Se os jumpers Ativa MA e ativa MB do drive ponte H estiverem conectados, remova-os para você poder conectar os pinos abaixo:

Motor Entrada drive L298N Saída Arduino
A ENA 3
B ENB 6

 5.2.2.1. Veja a imagem abaixo a posição dos pinos de controle de velocidade:

5.3. Veja na foto abaixo como deverá ficar o nosso robô móvel após a conexão do Arduino com o driver motor ponte H - L298N:

6. Antes de fazer as conexões com o Vcc e o GND do driver motor ponte H - L298N, precisaremos preparar os cabos de ligação da chave gangorra (chave liga e desliga).

Obs.1: A utilização da chave liga e desliga é opcional. Se desejar, o robô móvel poderá ser desligado diretamente no plugue da fonte de energia do Arduino.

Obs2.: No projeto, a chave liga e desliga ativa ou desativa a ponte H que controla os motores. Portanto, mesmo desligada a chave, a placa Arduino permanecerá ligada.

6.1. Corte as extremidades de dois jumpers macho-macho, sendo o primeiro com  80mm (mínimo) e o segundo com 160mm (mínimo). Os dois cabos deverão estar desencapados em uma das pontas, como mostra a imagem abaixo:

 6.2. Depois de preparados, solde os dois cabos nos terminais da chave gangorra (chave liga e desliga):

6.2.3. A posição dos cabos não tem muita importância, pois a chave 2 terminais apenas interrompem a passagem da corrente elétrica no circuito. De preferência, para facilitar a montagem do circuito, solde o cabo maior no terminal que fica na posição "0" e o cabo menor no terminal que fica na posição "1" da chave liga e desliga.

7. Após o botão liga e desliga ser soldado,vamos agora fazer a conexão dos cabos Vcc e GND do driver ponte H, conforme figura abaixo:

7.1. Posicione a chave gangorra (chave liga-desliga) na base do chassi do robô móvel e conecte o cabo maior no GND do Arduino e o cabo menor no GND do driver móvel Ponte H - L298N. Depois, fixe a chave liga-desliga na parte de baixo base do robô com cola quente. Isto ajudará também a isolar os terminais do componente.

 7.2. Conecte agora o cabo Vcc no pino +12V da ponte H - L298N e no pino Vin do Arduino:

 7.2.1. Observe que usamos o pino Vin do Arduino como fonte de energia para os motores.  Isto é muito útil em protótipos de robótica, pois a mesma bateria poderá alimentar o Arduino e os motores de corrente contínua através do driver ponte H.

8. Finalmente, vamos conectar a bateria de 9V no nosso robô móvel. Para isso, utilizamos um suporte para bateria com um plugue tipo P4 (Jack).

Atenção: A tensão de alimentação feita através do conector Jack deverá estar entre os limites de 7 a 12V. Abaixo de 7V a tensão de funcionamento da placa Arduino poderá ficar instável e acima de 12V o regulador de tensão integrado da placa poderá sobreaquecer.

8.1. Fixe a bateria com fita dupla face ou cola quente na parte inferior do chassi do robô móvel.

 8.2. O plugue P4 da fonte de energia deve ficar posicionado de forma que você poderá conectá-lo no Arduino posteriormente.

Testando o robô móvel - Chassi 2WD (1 bateria 9V)

Agora que já temos o nosso robô móvel montado, vamos fazer os testes de funcionamento. Para isso, vamos conectar a placa Arduino do robô no computador usando o cabo USB. A bateria 9V nesse momento poderá permanecer desconectada.

Teste 01 - Robô móvel rodando para frente

No primeiro teste vamos fazer o robô se mover para frente. O robô deverá se movimentar para frente, conforme a imagem anterior, parando 500ms a cada 2 segundos.

Usando o cabo USB, conecte o Arduino do robô móvel no computador para fazer o upload do scketch abaixo:

/*******************************************************************************

     Teste 1 - Teste do robô móvel - andando para frente
     Autor: Angelo Luis Ferreira
     Data: 01/11/2022
             http://squids.com.br/arduino

*******************************************************************************/
//motor A
const byte IN1 = 8 ;
const byte IN2 = 7 ;

//motor B
const byte IN3 = 5;
const byte IN4 = 4;

//pinos utilizados para controlar a velocidade de rotacao
const int ENA = 6; 
const int ENB = 3;
 
void setup(){
 // configuração dos pinos como saída do Arduino
 pinMode(IN1,OUTPUT); // motor A
 pinMode(IN2,OUTPUT); // motor A
 pinMode(IN3,OUTPUT); // motor B
 pinMode(IN4,OUTPUT); // motor B
 pinMode(ENA,OUTPUT); // controle velocidade motor A
 pinMode(ENB,OUTPUT); // controle velocidade motor B

 // inicia com os motores desligados
 digitalWrite(IN1,LOW);
 digitalWrite(IN2,LOW);
 digitalWrite(IN3, LOW);
 digitalWrite(IN4,LOW);

 // incia com velocidade 0
 digitalWrite(ENA, LOW);
 digitalWrite(ENB,LOW); 
}
 
void loop() {
  forward();      // ir para frente
  delay(2000);    // aguarde 500ms
  stopCar();      // parar robô
  delay(500);     // aguarde 100 ms
}

 // forward - robô anda para frente
 void forward() {
  // 1-0-1-0 - configura o mesmo sentido de rotaçao para os dois motores (frente)
   digitalWrite(IN1,HIGH);
   digitalWrite(IN2,LOW);
   digitalWrite(IN3, HIGH);
   digitalWrite(IN4,LOW);   
  
   // define velocidade do robô
    analogWrite(ENA, 80);
    analogWrite(ENB, 80);
 }

 // 0-0-0-0 - stopCar - parar robô
 void stopCar() {
  // motores desligados
  digitalWrite(IN1,LOW);
  digitalWrite(IN2,LOW);
  digitalWrite(IN3, LOW);
  digitalWrite(IN4,LOW);
 }

Depois de subir o skecth no IDE, desconecte o cabo USB do Arduino do robô e do computador. Conecte o cabo da bateria (Plugue P4) no Arduino.

Para iniciar o teste, acione o botão (chave liga-desliga) para iniciar o movimento do robô. Veja o vídeo abaixo:

Observações:

1. Verifique se as duas rodas estão girando no mesmo sentido. O robô deverá estar se movimentando para frente.

1.1. Caso as rodas esteja girando em sentidos opostos ou o robô esteja se movendo para trás, inverta a polaridade na conexão dos motores com o drive ponte H.

1.2. Repita o teste novamente, onde o robô móvel deverá se movimentar para frente.

2. Em função da construção do chassi 2WD, montagem das rodas, balanceamento e da carga da bateria, é bem difícil fazer o robô móvel se movimentar perfeitamente em linha reta. Entretanto, isto não afetará nos projetos que podem ser aplicados a este robô com chassi 2WD. Porém, podemos melhorar um pouco este alinhamento, alterando no programa (sketch) o valor da velocidade de um dos motores, a fim de manter as rodas do robô girando na mesma velocidade real.

2.1. Se o carrinho tende a girar para a direita, significa que o motor B esta girando, de modo real, um pouco mais que o motor A. Portanto, podemos reduzir um pouco a velocidade (teórica) do motor B no programa. Isso deve ser feito de forma experimental até encontrar o melhor valor. Mesmo assim, dificilmente o robô móvel irá manter um alinhamento perfeito. Veja o exemplo abaixo:

2.2. O mesmo deve ser feito se o robô móvel tender para a esquerda. Desta forma, reduza o valor do motor A.

3. Com o robô móvel se movimentando para frente, podemos ir para o próximo teste a seguir.

Teste 02 - Robô móvel rodando para frente e para trás

Neste teste vamos fazer o robô móvel se movimentar para frente durante 2 segundos, para por 500ms e se movimenta para trás por 2 minutos, sucessivamente,

Da mesma forma que no primeiro teste, use o cabo USB para conectar o Arduino do robô móvel no computador para fazer o upload do scketch abaixo:

/*******************************************************************************

     Teste 2 - Teste do robô móvel - rodando para frente e para trás
     Autor: Angelo Luis Ferreira
     Data: 05/11/2022
             http://squids.com.br/arduino

*******************************************************************************/
//motor A
const byte IN1 = 8 ;
const byte IN2 = 7 ;

//motor B
const byte IN3 = 5;
const byte IN4 = 4;

//pinos utilizados para controlar a velocidade de rotacao
const int ENA = 6; 
const int ENB = 3;
 
void setup(){
 // configuração dos pinos como saída do Arduino
 pinMode(IN1,OUTPUT); // motor A
 pinMode(IN2,OUTPUT); // motor A
 pinMode(IN3,OUTPUT); // motor B
 pinMode(IN4,OUTPUT); // motor B
 pinMode(ENA,OUTPUT); // controle velocidade motor A
 pinMode(ENB,OUTPUT); // controle velocidade motor B

 // inicia com os motores desligados
 digitalWrite(IN1,LOW);
 digitalWrite(IN2,LOW);
 digitalWrite(IN3, LOW);
 digitalWrite(IN4,LOW);

 // incia com velocidade 0
 digitalWrite(ENA, LOW);
 digitalWrite(ENB,LOW); 
}
 
void loop() {
  forward();    // ir para frente
  delay(2000);   // aguarde 500ms
  stopCar();    // parar robô
  delay(100);   // aguarde 100 ms
  back();       // ir para trás
  delay(2000);   // aguarde 500ms
 }

 // forward - robô anda para frente
 void forward() {
  // 1-0-1-0 - configura o mesmo sentido de rotaçao para os dois motores (frente)
   digitalWrite(IN1,HIGH);
   digitalWrite(IN2,LOW);
   digitalWrite(IN3, HIGH);
   digitalWrite(IN4,LOW);
  
   // velocidade do robô
    analogWrite(ENA, 80);
    analogWrite(ENB, 80);
 }

 // stopCar - parar robô
 void stopCar() {
  // 0-0-0-0 - motores desligados
  digitalWrite(IN1,LOW);
  digitalWrite(IN2,LOW);
  digitalWrite(IN3, LOW);
  digitalWrite(IN4,LOW);
 }

  // back - robô anda para trás
 void back() {
  // 0-1-0-1 - configura o mesmo sentido de rotaçao para os dois motores (para trás)
  digitalWrite(IN1,LOW);
  digitalWrite(IN2,HIGH);
  digitalWrite(IN3, LOW);
  digitalWrite(IN4,HIGH);
  
   // velocidade do robô
   analogWrite(ENA, 80);
   analogWrite(ENB, 80);
 }

Desconecte o cabo USB do Arduino do robô móvel e do computador. Conecte o cabo da bateria (Plugue P4) no Arduino.

Acione o botão (chave liga-desliga) para iniciar o movimento do robô. Veja o vídeo abaixo:

 Observações:

1- Para melhorar o alinhamento do robô móvel, proceda conforme o teste 1, alterando as velocidades dos motores no programa, tanto para forward() como para back().

2. Se desejar aumentar ou diminuir a velocidade do robô, altere esses valores também, sempre de forma igual tanto para o motor A quanto para o motor B. Os valores que definem a velocidade podem variar de 0 a 255 (velocidade máxima).

O anúncio abaixo ajuda a manter o Squids Arduino funcionando

Comentários

×

Infomações do site / SEO








×

Adicionar Marcadores