Índice:

Faça um robô Maze Runner: 3 etapas (com imagens)
Faça um robô Maze Runner: 3 etapas (com imagens)

Vídeo: Faça um robô Maze Runner: 3 etapas (com imagens)

Vídeo: Faça um robô Maze Runner: 3 etapas (com imagens)
Vídeo: FILME LANÇAMENTOS 2020 FILME COMPLETO DUBLADO MELHORES FILME DE AÇÃO 2020 FILME DE AVENTURA 2024, Novembro
Anonim
Faça um robô Maze Runner
Faça um robô Maze Runner
Faça um robô Maze Runner
Faça um robô Maze Runner
Faça um robô Maze Runner
Faça um robô Maze Runner
Faça um robô Maze Runner
Faça um robô Maze Runner

Os robôs solucionadores de labirintos são originários da década de 1970. Desde então, o IEEE vem realizando competições de resolução de labirintos chamadas Micro Mouse Contest. O objetivo do concurso é projetar um robô que encontre o ponto médio de um labirinto o mais rápido possível. Os algoritmos usados para resolver rapidamente o labirinto normalmente se enquadram em três categorias; pesquisa aleatória, mapeamento de labirinto e métodos de acompanhamento de parede direita ou esquerda.

O mais funcional desses métodos é o método de acompanhamento de parede. Neste método, o robô segue a parede lateral direita ou esquerda do labirinto. Se o ponto de saída estiver conectado às paredes externas do labirinto, o robô encontrará a saída. Esta nota de aplicativo usa o método de parede direita seguinte.

Hardware

Este aplicativo usa:

  • 2 sensores de distância analógicos afiados
  • Sensor rastreador
  • Codificador
  • Motores e driver de motor
  • Silego GreenPAK SLG46531V
  • Regulador de tensão, chassi de robô.

Usaremos o sensor de distância analógico para determinar as distâncias entre as paredes direita e frontal. Os sensores de distância Sharp são uma escolha popular para muitos projetos que requerem medições de distância precisas. Este sensor IR é mais econômico do que telêmetros de sonar, mas oferece um desempenho muito melhor do que outras alternativas IR. Há uma relação inversa não linear entre a tensão de saída do sensor e a distância medida. O gráfico que mostra a relação entre a saída do sensor e a distância medida é mostrado na figura 1.

Uma linha branca contra um fundo de cor preta é definida como o alvo. Usaremos o sensor rastreador para detectar a linha branca. O sensor rastreador tem cinco saídas analógicas e os dados de saída são influenciados pela distância e pela cor do objeto detectado. Os pontos detectados com refletância infravermelha mais alta (branco) causarão um valor de saída mais alto, e a refletância infravermelha mais baixa (preto) causará um valor de saída mais baixo.

Usaremos o codificador de roda pololu para calcular a distância que o robô percorre. Esta placa codificadora de quadratura foi projetada para funcionar com motoredutores de micro-metal pololu. Ele funciona segurando dois sensores infravermelhos de refletância dentro do cubo de uma roda Pololu 42 × 19 mm e medindo o movimento dos doze dentes ao longo do aro da roda.

Uma placa de circuito do driver do motor (L298N) é usada para controlar os motores. Os pinos INx são usados para direcionar os motores, e os pinos ENx são usados para definir a velocidade dos motores.

Além disso, um regulador de voltagem é usado para reduzir a voltagem da bateria para 5V.

Etapa 1: descrição do algoritmo

Descrição do Algoritmo
Descrição do Algoritmo
Descrição do Algoritmo
Descrição do Algoritmo
Descrição do Algoritmo
Descrição do Algoritmo
Descrição do Algoritmo
Descrição do Algoritmo

Este Instructable incorpora o método de parede direita seguinte. Isso se baseia na organização da prioridade de direção, preferindo a direção mais à direita possível. Se o robô não consegue detectar a parede à direita, ele vira para a direita. Se o robô detectar a parede certa e não houver parede na frente, ele avança. Se houver uma parede à direita do robô e na frente, ela vira para a esquerda.

Uma observação importante é que não há parede para referência depois que o robô acaba de virar para a direita. Portanto, “virar à direita” é realizado em três etapas. Siga em frente, vire à direita, siga em frente.

Além disso, o robô deve manter distância da parede ao avançar. Isso pode ser feito ajustando um motor para ser mais rápido ou mais lento que o outro. O estado final do fluxograma é mostrado na figura 10.

Um robô Maze Runner pode ser facilmente implementado com um único IC de sinal misto configurável GreenPAK (CMIC). Você pode seguir todas as etapas para entender como o chip GreenPAK foi programado para controlar o Robô Maze Runner. No entanto, se você deseja criar facilmente o robô Maze Runner sem entender todos os circuitos internos, baixe o software GreenPAK para visualizar o arquivo de design GreenPAK do robô Maze Runner já concluído. Conecte seu computador ao GreenPAK Development Kit e ao programa para criar o IC personalizado para controlar seu Maze Runner Robot. A próxima etapa discutirá a lógica que está dentro do arquivo de design do GreenPAK do robô do Maze Runner para aqueles que estão interessados em entender como o circuito funciona.

Etapa 2: Projeto GreenPAK

Design GreenPAK
Design GreenPAK
Design GreenPAK
Design GreenPAK
GreenPAK Design
GreenPAK Design

O design do GreenPAK consiste em duas partes. Estes são:

  • Interpretação / processamento de dados de sensores de distância
  • Estados ASM e saídas do motor

Interpretação / processamento de dados de sensores de distância

É importante interpretar os dados dos sensores de distância. Os movimentos do robô são deliberados de acordo com as saídas dos sensores de distância. Como os sensores de distância são analógicos, usaremos os ACMPs. A posição do robô em relação à parede é determinada comparando as tensões dos sensores com as tensões limite predeterminadas.

Usaremos 3 ACMPs;

  • Para detectar a parede frontal (ACMP2)
  • Para detectar a parede direita (ACMP0)
  • Para proteger a distância da parede direita (ACMP1)

Como ACMP0 e ACMP1 dependem do mesmo sensor de distância, usamos a mesma fonte IN + para ambos os comparadores. A mudança constante do sinal pode ser evitada dando ao ACMP1 25mv de histerese.

Podemos determinar os sinais de direção com base nas saídas dos ACMPs. O circuito mostrado na figura 12 representa o diagrama de fluxo descrito na figura 7.

Da mesma forma, o circuito que indica a posição do robô em relação à parede direita é mostrado na figura 13.

Estados ASM e saídas do motor

Este aplicativo utiliza o Asynchronous State Machine, ou ASM, para controlar o robô. Existem 8 estados no ASM e 8 saídas em cada estado. A RAM de saída pode ser usada para ajustar essas saídas. Os estados estão listados abaixo:

  • Começar
  • Ao controle
  • Afaste-se da parede direita
  • Perto da parede direita
  • Vire à esquerda
  • Avançar-1
  • Vire à direita
  • Avançar-2

Esses estados determinam a saída para o driver do motor e direcionam o robô. Existem 3 saídas do GreenPAK para cada motor. Dois determinam a direção do motor e a outra saída determina a velocidade do motor. O movimento do motor de acordo com essas saídas é mostrado nas seguintes tabelas:

A RAM de saída ASM é derivada dessas tabelas. É mostrado na figura 14. Além dos drivers do motor, existem mais duas saídas. Essas saídas vão para os blocos de retardo correspondentes para permitir que o robô viaje uma certa distância. As saídas desses blocos de atraso também são conectadas às entradas ASM.

PWMs foram usados para ajustar a velocidade dos motores. O ASM foi usado para determinar em qual PWM o motor funcionaria. Os sinais PWMA-S e PWMB-S são definidos para os bits de seleção mux.

Etapa 3:

Imagem
Imagem

Neste projeto, criamos um robô solucionador de labirintos. Interpretamos dados de vários sensores, controlamos o estado do robô com o ASM do GreenPAK e acionamos os motores com um driver de motor. Geralmente, microprocessadores são usados em tais projetos, mas um GreenPAK tem algumas vantagens sobre um MCU: é menor, mais acessível e pode processar a saída do sensor mais rápido do que um MCU.

Recomendado: