Índice:

Robô seguidor de linha com PICO: 5 etapas (com imagens)
Robô seguidor de linha com PICO: 5 etapas (com imagens)

Vídeo: Robô seguidor de linha com PICO: 5 etapas (com imagens)

Vídeo: Robô seguidor de linha com PICO: 5 etapas (com imagens)
Vídeo: Seguidor de linha com Raspberry Pi Pico - Desafio Maker 2024, Novembro
Anonim
Robô seguidor de linha com PICO
Robô seguidor de linha com PICO
Robô seguidor de linha com PICO
Robô seguidor de linha com PICO
Robô seguidor de linha com PICO
Robô seguidor de linha com PICO
Robô seguidor de linha com PICO
Robô seguidor de linha com PICO

Antes que você seja capaz de criar um robô que pode acabar com a civilização como a conhecemos, e é capaz de acabar com a raça humana. Você primeiro deve ser capaz de criar os robôs simples, aqueles que podem seguir uma linha desenhada no chão, e aqui é onde você dará o primeiro passo para acabar com todos nós>. <

Em primeiro lugar, uma linha seguindo o robô é um robô capaz de seguir uma linha no solo, e essa linha geralmente é uma linha preta desenhada em um fundo branco ou vice-versa; e isso porque é mais fácil para o robô distinguir entre cores altamente contrastantes, como preto e branco. Onde o robô muda seu ângulo dependendo da cor que lê.

Suprimentos

  1. PICO
  2. Chassis de robô com tração em duas rodas, que têm o seguinte:

    • Chassi acrílico
    • 2 motores DC com rodas e codificadores
    • Roda giratória com contrapesos de metal
    • Porta-bateria de 4 canais
    • Alguns parafusos e porcas
    • Chave liga / desliga
  3. Módulo de driver de motor L298N
  4. 2 sensores de rastreador de linha
  5. Bateria 7,4v

Etapa 1: Preparando os Motores DC

Preparando os motores DC
Preparando os motores DC
Preparando os motores DC
Preparando os motores DC
Preparando os motores DC
Preparando os motores DC

Você pode usar o chassi "2WD" com tração nas duas rodas para facilitar esse projeto, pois economiza tempo e esforço na hora de construir seu próprio chassi. Dando a você mais tempo para se concentrar na eletrônica do projeto.

Vamos começar com os motores DC, pois você vai usar os motores para controlar a velocidade e direção do movimento do seu robô, dependendo das leituras dos sensores. A primeira coisa a fazer é começar a controlar a velocidade dos motores, que é diretamente proporcional à tensão de entrada, ou seja, é preciso aumentar a tensão para aumentar a velocidade e vice-versa.

A técnica PWM “Pulse Width Modulation” é ideal para o trabalho, pois permite ajustar e customizar o valor médio que vai para o seu dispositivo eletrônico (motor). E funciona usando os sinais digitais "HIGH" e "LOW" para criar valores analógicos, alternando entre os 2 sinais em uma taxa muito rápida. Onde a tensão "analógica" depende da porcentagem entre os sinais digitais HIGH e digital LOW presentes durante um período PWM.

Observe que não podemos conectar PICO diretamente ao motor, pois o motor precisa de um mínimo de 90mA que não pode ser manipulado pelos pinos do PICO, e é por isso que usamos o módulo de driver de motor L298N, que nos dá a capacidade de enviar ambos corrente suficiente para os motores e alterar sua polaridade.

Agora, vamos soldar um fio a cada um dos terminais do motor, seguindo estas etapas:

  1. Funda um pouco de solda no terminal do motor
  2. Coloque a ponta do fio acima do terminal do motor e aqueça-o com o ferro de solda até que a solda no terminal derreta e conecte com o fio, então remova o ferro de solda e deixe a conexão esfriar.
  3. Repita as etapas anteriores com os terminais restantes de ambos os motores.

Etapa 2: Usando o Módulo Motorista L298N

Usando o Módulo Motorista L298N
Usando o Módulo Motorista L298N
Usando o Módulo Motorista L298N
Usando o Módulo Motorista L298N
Usando o Módulo Motorista L298N
Usando o Módulo Motorista L298N

O motor de acionamento do motor L298N tem a capacidade de aumentar o sinal proveniente do PICO e alterar a polaridade da corrente que passa por ele. Permitindo que você controle a velocidade e a direção em que seus motores giram.

L298N Pin Outs

  1. Primeiro terminal do motor DC A
  2. Segundo terminal do motor DC A
  3. Jumper do regulador de 5 V integrado. Remova este jumper se você estiver conectando a tensão de alimentação do motor de mais de 12v, para não sobrecarregar o regulador de tensão.
  4. Tensão de alimentação do motor in. O máximo é 35v, e não se esqueça de remover o regulador de tensão se estiver usando mais de 12v.
  5. GND
  6. Saída 5v. Essa saída vem do regulador de tensão, se ainda estiver conectado, e oferece a capacidade de alimentar seu PICO com a mesma fonte do motor.
  7. Jumper de habilitação do motor DC A. Se este jumper estiver conectado, o motor funcionará em velocidade total para frente ou para trás. Mas, se você quiser controlar a velocidade, basta remover o jumper e conectar um pino PWM.
  8. In1, ajuda a controlar a polaridade da corrente e, portanto, o sentido de rotação do motor A.
  9. In2, ajuda a controlar a polaridade da corrente e, portanto, o sentido de rotação do motor A.
  10. In3, ajuda a controlar a polaridade da corrente e, portanto, o sentido de rotação do motor B.

  11. In4, ajuda a controlar a polaridade da corrente e, portanto, o sentido de rotação do motor B.
  12. Jumper de habilitação do motor CC B. Se este jumper estiver conectado, o motor funcionará em velocidade total para frente ou para trás. Mas, se você quiser controlar a velocidade, basta remover o jumper e conectar um pino PWM.
  13. Primeiro terminal do motor DC B

    Segundo terminal do motor DC B

O número de pinos que o motor do driver L298N tem faz com que pareça difícil de usar. Mas, na verdade é bem fácil, e vamos provar isso com um exemplo funcional, onde o usamos para controlar a direção de rotação de ambos os nossos motores.

Conecte o PICO ao driver do motor da seguinte forma "você encontrará o diagrama acima":

  • In1 → D0
  • In2 → D1
  • In3 → D2
  • In4 → D3

A direção do motor é controlada pelo envio de um valor lógico ALTO e BAIXO entre cada pino do driver In1 / 2 e In3 / 4. Por exemplo, se você enviar HIGH para In1 e LOW para In2, isso fará com que o motor gire em uma direção e enviar LOW para In1 e HIGH para In2 gira o motor na direção oposta. Mas, se você enviar os mesmos sinais HIGH ou LOW ao mesmo tempo para In1 e In2, os motores irão parar.

Não se esqueça de conectar o GND do PICO ao GND da bateria e não remova os jumpers Enable A e Enable B.

Você também encontrará o código deste exemplo acima.

Etapa 3: Adicionando PWM ao Módulo de Driver L298N

Adicionando PWM ao Módulo de Driver L298N
Adicionando PWM ao Módulo de Driver L298N
Adicionando PWM ao Módulo de Driver L298N
Adicionando PWM ao Módulo de Driver L298N

Agora podemos controlar a direção de rotação de nossos motores. Mas, ainda não podemos controlar suas velocidades, pois temos uma fonte de tensão constante que está dando a eles a potência máxima que podem receber. E para fazer isso, você precisa de dois pinos PWM para controlar os dois motores. Infelizmente tu, o PICO tem apenas 1 saída PWM, que precisamos expandir usando o módulo OWM PCA9685, e este módulo incrível pode expandir seu PWM de 1 para 16!

Pinagem PCA9685:

  1. VCC → Esta é a sua alimentação lógica, com 3-5 V máx.
  2. GND → O pino negativo deve ser conectado ao GND para completar o circuito.
  3. V + → Este pino distribui a potência proveniente de uma fonte de alimentação externa, é usado principalmente com motores que precisam de grandes quantidades de corrente e precisam de uma fonte de alimentação externa.
  4. SCL → Pino de relógio serial, que você conecta ao SCL do PICO.
  5. SDA → Pino de dados serial, que você conecta ao SDA do PICO.
  6. OE → Pino de habilitação de saída, este pino está ativo é BAIXO, o que significa que quando o pino está BAIXO, todas as saídas são habilitadas, e quando é ALTO todas as saídas são desabilitadas. Este é um pino opcional, com o padrão sendo puxado para BAIXO.

O módulo PWM PCA9685 tem 16 saídas PWM, cada uma com seu próprio sinal V +, GND e PWM que você pode controlar independentemente dos outros. Cada PWM pode lidar com 25mA de corrente, portanto, tome cuidado.

Agora vem a parte em que usamos o módulo PCA9685 para controlar a velocidade e direção de nossos motores, e é assim que conectamos o PICO aos módulos PCA9685 e L298N:

PICO para PCA9685:

  1. D2 (PICO) SDA (PCA9685)
  2. D3 (PICO) SCL (PCA9685)

PCA9685 a L298N:

  1. PWM 0 (PCA9685) → In1 (L298N), para controlar a direção do motor A
  2. PWM 1 (PCA9685) → In2 (L298N), para controlar a direção do motor A
  3. PWM 2 (PCA9685) → In3 (L298N), para controlar a direção do motor B
  4. PWM 3 (PCA9685) → In4 (L298N), para controlar a direção do motor B
  5. PWM 4 (PCA9685) → habilitaA (L298N), para enviar o sinal PWM que controla a velocidade do motor A.
  6. PWM 5 (PCA9685) → enableB (L298N), para envio do sinal PWM que controla a velocidade do motor B.

Você encontrará o código para todas essas partes anexado acima.

Etapa 4: usando o sensor de rastreador de linha

Usando o sensor Line Tracker
Usando o sensor Line Tracker
Usando o sensor Line Tracker
Usando o sensor Line Tracker

O rastreador de linha é bastante simples. Este sensor tem a capacidade de distinguir entre duas superfícies, dependendo do contraste entre elas, como em preto e branco.

O sensor do rastreador de linha tem duas partes principais, o LED IV e o fotodiodo. Ele pode identificar as cores emitindo luz infravermelha do LED e lendo os reflexos que retornam ao fotodiodo, então o fotodiodo produz um valor de voltagem dependendo da luz refletida (valor ALTO para uma superfície "brilhante" de luz e um valor BAIXO para uma superfície escura).

Pinagens do rastreador de linha:

  1. A0: este é o pino de saída analógica, e o usamos se quisermos uma leitura de entrada analógica (0-1023)
  2. D0: Este é o pino de saída digital, e o usamos se quisermos uma leitura de entrada digital (0-1)
  3. GND: Este é o pino terra, e nós o conectamos ao pino GND do PICO
  4. VCC: este é o pino de alimentação, e nós o conectamos ao pino VCC do PICO (5v)
  5. Potenciômetro: é usado para controlar a sensibilidade do sensor.

Vamos testar o sensor do rastreador de linha com um programa simples que liga um LED se detectar uma linha preta e desligar o LED se detectar uma superfície branca enquanto imprime a leitura do sensor no Monitor Serial.

Você encontrará o código para este teste anexado acima.

Etapa 5: juntando tudo

Image
Image
Juntando tudo
Juntando tudo

A última coisa que precisamos fazer é colocar tudo junto. Como testamos todos eles individualmente e todos estão funcionando conforme o esperado.

Manteremos os módulos PICO, PCA9685 e L298N conectados como estão. Em seguida, adicionamos os sensores de seguidor de linha à nossa configuração existente, e é o seguinte:

  1. VCC (todos os sensores de rastreamento de linha) → VCC (PICO)
  2. GND (todos os sensores de rastreamento de linha) → GND (PICO)
  3. D0 (sensor de rastreamento de linha direita) → A0 (PICO)
  4. D0 (sensor rastreador de linha central) → A1 (PICO)
  5. D0 (sensor rastreador de linha esquerda) → A2 (PICO)

Este é o código final que controlará seu carro e dirá a ele para seguir uma linha, linha preta sobre fundo branco em nosso caso.

Recomendado: