Skip to content

Fabio-Morais/Line-Follower-Robot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Line Follower Robot


The main purpose was to develop and implement a line follower robot that would have to follow the line as fast as possible. For that we projected a microcontroller based system with a user friendly mobile application. With this project all the topics that were given during the lecturers were covered since the interruptions on ATMEGA to the Analog/Digital converter. More specifically, we used the timer in PWM mode to control the motors and the USART protocol for the Bluetooth communication. The A/D converter was used to get the battery level and the EEPROM to record the track.

Este projeto vai ser implementando dando uso ao microcontrolador ATMEGA-328P, que é o microcontrolador do arduino, irá ser desenvolvido atraves do eclipse, com o plugin AVR. Tem como principal objetivo seguir uma linha preta, com diversos extras. Vai ser usado o conversor A/D, EEPROM, modo PWM, timers e comunicação USART.

Video de apresentação



Materiais utilizados

  • Arduino Uno
  • LCD Module Display 20x4
  • Modulo Bluetooth HC-06
  • Array de 5 sensores infrared
  • Motor DC 3V-6V c/Roda
  • Dual channel DC motor driver
  • Placa acrílico
  • Suporte 3x pilhas AA
  • Power Bank 4000mah
  • Interruptor ON/OFF
  • LED azul e vermelho.


Funcionalidades APP

  • Modo Manual
    • Controlar robô, muda direção e sentido
    • ALtera velocidade
    • Grava trajeto
    • Reproduz trajeto
    • Ver estado da bateria
    • Caso a bateria esteja a menos de 20%, então é sinalizado essa informação ao começar a piscar a barra da bateria

  • Modo Automático
    • Ver estado dos sensores
    • Ver estado de bateria
    • Dar Start ou Stop
    • Alterar velocidade
    • Conta o numero de voltas
    • Conta o tempo que efectuou na volta
    • Apresenta o melhor tempo
    • Permite dar reset às estatisticas
    • Caso o robô esteja perdido é avisado na APP com a indicação de que está perdido e o dispositivo treme
    • Permite gravar trajeto
    • Permite reproduzir trajeto
    • Permite ativar modo de competição, em que aumenta mais a velocidade e desliga todas as conexões existentes
    • Caso a bateria esteja a menos de 20%, então é sinalizado essa informação ao começar a piscar a barra da bateria


Funcionalidades robô

  • Modo Manual

    • Permite ser controlado via bluetooth
    • Caso esteja conectado via bluetooth então é imprimido a mensagem "conectado", caso por algum motivo perca a comunicaçao, então é imprimido "desconectado", parando todos os motores e pisca o led azul a cada 0,5s
    • Grava o trajeto, piscando a cada 1s o led vermelho
    • Reproduz o trajeto efetuado, quando acaba a reprodução os motores são parados e imprime a mensagem no lcd "Reprodução acabada"









  • Modo Automático
    • Segue a linha preta
    • Imprime sensores ativos, estado de bateria, estado bluetooth via LCD
    • Caso o robô não encontre linha preta durante 2s, então fica no estado perdido, parando os motores e dando a respetiva sinalização
    • Conta numero de voltas, caso o sensor encontre a combinaçao de sensores 10101, que é a marca que definimos como sendo o ponto de partida

Video de apresentação:

Robot