Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Manufacturing Technology >> Processo de manufatura

Kit de Robô de Navegação Interna Inteligente para Projetos Arduino

Componentes e Materiais

Chassi de Robô com Caixa de Bateria, Motor Inteligente e Encoder de Velocidade para Arduino 1
oblu - IMU Open Source para Navegação Interna de Pedestres 1
Protoboard Meia Tamanho (Sem Solda) 1
Jumpers Macho/Fêmea 1
Capacitor 1000 µF 2
Driver de Motor Dual H-Bridge L293D (Texas Instruments) 1
Arduino Mega 2560 1
Pilhas AA Ni-MH Recarregáveis 2800 mAh 1

Ferramentas Necessárias

Aplicativos e Serviços Online

Sobre o Projeto

Nossa História

O projeto consiste em fazer o robô percorrer um caminho pré-definido com precisão, sem utilizar GPS, Wi-Fi, Bluetooth para posicionamento, nem mapas ou plantas do edifício. Além disso, o robô desenha seu caminho real (em escala) em tempo real. O Bluetooth pode ser usado como substituto do fio para transmitir informações de localização em tempo real.

Kit de Robô de Navegação Interna Inteligente para Projetos Arduino

A História por Trás

Buscávamos uma solução robusta para navegação interna de nosso robô baseado em Arduino. Ao escolher o sensor de movimento adequado, consideramos o oblu (um IMU open source). Seu baixo custo e natureza open source o tornaram um candidato promissor. O programa open source do oblu é voltado para Pedestrian Dead Reckoning (PDR) montado no pé, ou seja, navegação de pedestres. Seu desempenho em ambientes internos é impressionante. Um grande diferencial é o app Android gratuito Xoblu para rastreamento de posição em tempo real. No entanto, não sabíamos como aproveitar seu algoritmo de navegação de pedestres, baseado no modelo de caminhada humana.

Os cálculos internos do oblu baseiam-se na caminhada humana. Ele fornece o deslocamento entre dois passos sucessivos e a mudança de rumo. Quando o pé toca o chão, a velocidade da sola é zero (repouso). Assim, o oblu detecta "passos" e corrige erros internos. Essa correção frequente resulta em excelente desempenho de rastreamento. Então surgiu a ideia: e se nosso robô também caminhasse da mesma forma — mover, parar, mover, parar...?

Optamos pelo oblu e rapidamente montamos o robô e o sistema de rastreamento. O restante da história está no vídeo a seguir...

Como Funciona

O robô segue um caminho pré-programado e transmite (via Bluetooth) suas informações de movimento real para um smartphone, permitindo rastreamento em tempo real.

O Arduino é pré-programado com o caminho e o oblu detecta o movimento do robô. O oblu transmite informações de movimento ao Arduino em intervalos regulares. Com base nesses dados, o Arduino controla o movimento das rodas para que o robô siga o caminho pré-definido.

Kit de Robô de Navegação Interna Inteligente para Projetos Arduino

O caminho do robô é programado como um conjunto de segmentos de linha reta. Cada segmento é definido por seu comprimento e orientação em relação ao anterior. O movimento do robô é discreto: ele se move em linha reta, mas em segmentos menores (chamemos de "passadas"). Ao final de cada passada, o oblu transmite o comprimento da passada e o desvio de orientação em relação à linha reta para o Arduino. O Arduino corrige o alinhamento do robô a cada passo, se detectar desvio da linha reta programada.

Segundo o programa, o robô deve sempre mover-se em linha reta. Porém, pode desviar devido a não-idealidades: superfície irregular, desequilíbrio de massa na montagem, desequilíbrio arquitetural ou elétrico nos motores DC, ou orientação aleatória da roda livre frontal. Dá um passo... corrige o rumo... avança. O robô também move-se para trás se percorrer mais do que o comprimento programado daquele segmento.

O comprimento da próxima passada depende da distância restante a percorrer naquele segmento. O robô dá passadas longas quando a distância é grande e passadas curtas ao se aproximar do destino (fim do segmento).

O IMU oblu transmite dados ao Arduino e ao smartphone (via Bluetooth) simultaneamente. O Xoblu (app Android) realiza cálculos simples para construir o caminho com base nas informações de movimento recebidas, usado para rastreamento em tempo real no celular.

Kit de Robô de Navegação Interna Inteligente para Projetos Arduino

Em resumo: o oblu detecta o movimento e comunica informações de deslocamento ao Arduino e ao smartphone em intervalos regulares. Com base no caminho programado e nas informações de movimento (enviadas pelo oblu), o Arduino controla o movimento das rodas. O movimento do robô NÃO é controlado remotamente, exceto pelos comandos de início/parada.

Modelagem do Caminho

O robô é melhor controlado se caminhar apenas em segmentos de linha reta. Portanto, o caminho deve ser modelado como um conjunto de segmentos retos. As imagens abaixo mostram exemplos de caminhos e suas representações em termos de deslocamento e orientação. É assim que o caminho é programado no Arduino.

Kit de Robô de Navegação Interna Inteligente para Projetos Arduino
Kit de Robô de Navegação Interna Inteligente para Projetos Arduino

Qualquer caminho composto por segmentos de linha reta pode ser definido e programado no Arduino.

Montagem do Circuito

Consulte a seção de hardware para as conexões elétricas entre Arduino, oblu, driver de motor e bateria.

Protocolo de Comunicação

  1. Passo 1: Xoblu envia comando START para o oblu
  2. Passo 2: oblu confirma recebimento enviando ACK apropriado ao Xoblu
  3. Passo 3: oblu envia pacote DATA contendo deslocamento e informação de orientação para cada passada, a cada passo, ao Xoblu (passo = quando detecta movimento zero ou repouso)
  4. Passo 4: Xoblu confirma recebimento do último pacote DATA enviando ACK apropriado ao oblu. (Ciclo dos passos 3 e 4 repete até Xoblu enviar STOP. Ao receber STOP, oblu executa Passo 5)
  5. Passo 5: STOP — (i) Para processamento no oblu (ii) Para todas as saídas no oblu

Consulte a Application Note do oblu para detalhes de START, ACK, DATA e STOP.

Como Funciona o IMU Oblu (Opcional)

Referências sobre visão geral e princípio básico de operação de sensores PDR montados no pé:

Compartilhe seu feedback, sugestões e comentários!

Melhores cumprimentos!

Código

Robô baseado em Arduino: move-se em caminho pré-programado e transmite coordenadas atuais ao smartphone para rastreamento em tempo real.
Repositório GitHub

Esquemáticos

Kit de Robô de Navegação Interna Inteligente para Projetos Arduino

Processo de manufatura

  1. Construa um Robô Raspberry Pi Controlado por Bluetooth com Feedback de Áudio
  2. Simple Pi Robot – Construa Rover Autônomo 2-WD com Raspberry Pi
  3. Robô Desviador de Obstáculos com Servo: Construa com Arduino e HC-SR04
  4. Joy Robot: Robô Inteligente com Arduino e ESP8266
  5. Criar Robô Seguidor de Linha Autônomo com Arduino UNO
  6. Construa um Robô Controlado por Voz com Arduino Nano
  7. PiBot: Robô Pianista Arduino para Performance Musical de Precisão
  8. Kit de Treinamento Arduino Completo com Mega 2560, Sensores, Motores e PCB Personalizada
  9. Robô Assistente Doméstico Autônomo: Lista Completa de Peças e Guia de Configuração
  10. Sistema Inteligente de Monitoramento de Temperatura para Escolas: Preciso, Tempo Real e Seguro