Pular para o conteúdo

Robótica com Android e Arduino

Nesse artigo, pretendo descrever o processo de criação de um robô baseado na plataforma Arduino e integrado ao Android, através da camada de script SL4A.
João Victor vikitor566
Hits: 91.695 Categoria: Python Subcategoria: Outros
  • Indicar
  • Impressora
  • Denunciar

Parte 2: Montagem do robô

A grande vantagem de trabalhar com o Arduino, é a compatibilidade com diversos componentes. O objetivo do artigo é ajudar na criação, não ditar regras, a montagem do robô é livre, porém, é necessário uma referência que servirá de direção para a construção de outros robôs.

Os componentes do robô foram todos comprados pela Internet, o preço de cada componente varia entre R$ 10,00 a R$ 25,00. O único que foge a essa faixa, é o Arduino que custou cerca de R$ 50,00. Na imagem abaixo, podemos observar todos os componentes usados:
Linux: Robótica com Android e Arduino
Sensor ultrassônico HC-SR04, Ponte-H LN298, Módulo Bluetooth HC-06, Arduino UNO R3 e Micro-servo 9g

Para montagem do robô, utilizarei o chassi do carrinho de controle remoto como base. Podemos observar os dois motores e uma chave ON/OFF que controla a alimentação feita através de 4 pilhas AA, fixadas no próprio suporte do carrinho. O motor de trás impulsiona o robô, enquanto o da frente, faz com que ele vire para esquerda e direita.
Linux: Robótica com Android e Arduino   Linux: Robótica com Android e Arduino

Para impulsionar o robô, o motor traseiro possui uma caixa de redução, uma série de engrenagens, que fazem com que o a rotação, que é transmitida do motor para as rodas, seja baixa, porém, que tenha força.

Uma dica para escolher um carrinho, é girar suas rodas com as mãos, quanto mais força for necessária para girar as rodas, maior será a força que será transmitida para as rodas quando o motor estiver funcionando, porém, menor será a velocidade.

Para o suporte dos módulos, será utilizada uma placa plástica perfurada. Os módulos podem ser parafusados diretamente na placa plástica, porém, recomendo o uso de espaçadores usados para fixação da placa-mãe ao gabinete de computadores, facilmente encontrados em sucatas. Para perfurar a placa, utilizei uma minifuradeira, mas, poderíamos usar uma furadeira comum.

Ao posicionarmos os módulos sobre a placa, devemos manter um certo alinhamento que mantenha o peso dividido de maneira correta, caso o peso seja direcionado apenas para um lado, o robô ficará "puxando" para esse lado, como um carro desalinhado, os componentes mais pesados do robô devem ficar na parte traseira, para que o atrito com o piso seja maior impulsionando o robô com mais força.
Linux: Robótica com Android e Arduino

Depois de fixarmos os espaçadores, basta apenas parafusar o Arduino e a Ponte-H.
Linux: Robótica com Android e Arduino

Na parte superior, vemos o circuito Ponte-H L298N, responsável pelo controle da velocidade e sentido dos motores. O módulo possui duas conexões para os motores e uma conexão para alimentação.

O uso desse módulo é necessário, devido à corrente que os motores exigem, ser maior da que o Arduino fornece, o circuito funciona controlando a tensão que chega ao motores, sendo capaz de inverter a rotação invertendo a tensão.

Se pegarmos uma pilha e conectar seus terminais a um motor, esse girará em um sentido. Se invertemos, como os terminais estão ligados, o motor inverterá seu sentido de rotação. Isso acontece, porque a energia elétrica tende a fluir do terminal positivo ao negativo. O circuito da Ponte-H faz essa inversão internamente, através de uma série de transistores (interruptores).

Para que o robô possa desviar de obstáculos, utilizei um sensor ultrassônico que dispara um pulso e verifica quanto tempo ele leva para retornar, calculando assim, a distância em que um objeto se encontra do robô. Para movimentação do sensor, utilizarei um servo motor e uma peça plástica.
Linux: Robótica com Android e Arduino

O Servo é um motor com uma caixa de redução. Em seu eixo, é fixado um potenciômetro que indica em que posição o motor se encontra, o grande diferencial de um servo motor e um motor comum, é que o Servo não é capaz de realizar um giro completo, porém, podemos definir qual posição o Servo se encontra, controlando o movimento do sensor em um raio de 180 graus.
Linux: Robótica com Android e Arduino

O Servo também será conectado à alimentação dos motores, visto que somente a alimentação do Arduino não é capaz de movimentá-lo. A montagem do sensor e do servo deve ficar bem centralizada, de maneira que o sensor esteja totalmente virado para frente, quando o servo estiver a 90°.

Para comunicação com o robô, utilizaremos um módulo Bluetooth conectado ao Arduino. Para servir como suporte, conectei o módulo diretamente ao Arduino. A facilidade de trabalhar com Bluetooth no Arduino é surpreendente, com pouquíssimas linhas de código, podemos fazer a comunicação com diversos dispositivos.
Linux: Robótica com Android e Arduino

Com todos os componentes no lugar, devemos conectar tudo ao Arduino. O diagrama seguinte, ilustra como as conexões devem ser feitas.

* Lembrando que o circuito da Ponte H do diagrama, não é o mesmo que o usado no robô, porém, possui as mesmas conexões, para fazer as conexões foram utilizados vários jumpers.
Linux: Robótica com Android e Arduino

Com tudo conectado, o robô já pode ser ligado. Ao final, ele ficou até charmoso. Para alimentar o Arduino, utilizamos uma bateria de 9V.
Linux: Robótica com Android e Arduino


   1. Introdução
   2. Montagem do robô
   3. Programando
   4. Bluetooth
   5. Integrando recursos
   6. Aplicação de controle
   7. Conclusão

Python com SL4A - A camada de script do Android

Scikit Learn: Projetando o futuro de suas APIs e aplicativos usando machine learning

Sockets em Python

Integração do ChatGPT em uma API Python

ISO8583py - Utilizando Python para o tratamento de mensagens ISO8583

Python: automatizando a extração de informações na web com expressões regulares

#1 Comentário enviado por albfneto em 16/04/2014 - 19:46h
Muito bom isso! favoritado
#2 Comentário enviado por vikitor566 em 16/04/2014 - 23:02h
Muito obrigado albfneto
#3 Comentário enviado por Lisandro em 16/04/2014 - 23:18h
Excelente! Parabéns pelo artigo e pela paciência. Por várias vezes pensei em fazer um artigo semelhante e sei bem o trabalho que dá.
Já está nos meus favoritos.
#4 Comentário enviado por mcnd2 em 17/04/2014 - 13:19h
Muito interessante.

Artigo muito bem explicado e de fácil entendimento.

10!
#5 Comentário enviado por vikitor566 em 17/04/2014 - 14:03h
Muito obrigado a todos, o trabalho é recompensado quando o artigo consegue compartilhar a idéia pelo qual foi feito.
#6 Comentário enviado por Sandro1 em 17/04/2014 - 21:24h
Excelente artigo e como já disseram está muito bem explicado, qualquer pessoa vai conseguir fazer esse robô!
#7 Comentário enviado por k_cesar em 20/04/2014 - 13:52h
Parabéns pelo artigo.
Excelente!
#8 Comentário enviado por matiasalexsandro em 22/04/2014 - 23:56h
excelente artigo favoritado pra projetos futuros
#9 Comentário enviado por vikitor566 em 23/04/2014 - 09:59h
Muito obrigado a todos
#10 Comentário enviado por JFurio em 19/05/2014 - 09:14h
Realmente, nota 10 mesmo ! Cheguei até a estudar um orçamento e ligar em umas lojas para ver uns orçamentos, e realmente não é tão caro ! Vou tentar montar um dia, e independente do resultado, posto aqui ! Vlw !

Contribuir com comentário

Entre na sua conta para comentar.