Índice:
- Suprimentos
- Etapa 1: Preparando os Motores DC
- Etapa 2: Usando o Módulo Motorista L298N
- Etapa 3: Adicionando PWM ao Módulo de Driver L298N
- Etapa 4: usando o sensor de rastreador de linha
- Etapa 5: juntando tudo
Vídeo: Robô seguidor de linha com PICO: 5 etapas (com imagens)
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:35
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
- PICO
-
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
- Módulo de driver de motor L298N
- 2 sensores de rastreador de linha
- Bateria 7,4v
Etapa 1: 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:
- Funda um pouco de solda no terminal do motor
- 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.
- Repita as etapas anteriores com os terminais restantes de ambos os motores.
Etapa 2: 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
- Primeiro terminal do motor DC A
- Segundo terminal do motor DC A
- 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.
- 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.
- GND
- 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.
- 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.
- In1, ajuda a controlar a polaridade da corrente e, portanto, o sentido de rotação do motor A.
- In2, ajuda a controlar a polaridade da corrente e, portanto, o sentido de rotação do motor A.
-
In3, ajuda a controlar a polaridade da corrente e, portanto, o sentido de rotação do motor B.
- In4, ajuda a controlar a polaridade da corrente e, portanto, o sentido de rotação do motor B.
- 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.
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
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:
- VCC → Esta é a sua alimentação lógica, com 3-5 V máx.
- GND → O pino negativo deve ser conectado ao GND para completar o circuito.
- 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.
- SCL → Pino de relógio serial, que você conecta ao SCL do PICO.
- SDA → Pino de dados serial, que você conecta ao SDA do PICO.
- 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:
- D2 (PICO) SDA (PCA9685)
- D3 (PICO) SCL (PCA9685)
PCA9685 a L298N:
- PWM 0 (PCA9685) → In1 (L298N), para controlar a direção do motor A
- PWM 1 (PCA9685) → In2 (L298N), para controlar a direção do motor A
- PWM 2 (PCA9685) → In3 (L298N), para controlar a direção do motor B
- PWM 3 (PCA9685) → In4 (L298N), para controlar a direção do motor B
- PWM 4 (PCA9685) → habilitaA (L298N), para enviar o sinal PWM que controla a velocidade do motor A.
- 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
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:
- A0: este é o pino de saída analógica, e o usamos se quisermos uma leitura de entrada analógica (0-1023)
- D0: Este é o pino de saída digital, e o usamos se quisermos uma leitura de entrada digital (0-1)
- GND: Este é o pino terra, e nós o conectamos ao pino GND do PICO
- VCC: este é o pino de alimentação, e nós o conectamos ao pino VCC do PICO (5v)
- 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
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:
- VCC (todos os sensores de rastreamento de linha) → VCC (PICO)
- GND (todos os sensores de rastreamento de linha) → GND (PICO)
- D0 (sensor de rastreamento de linha direita) → A0 (PICO)
- D0 (sensor rastreador de linha central) → A1 (PICO)
- 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:
Robô Seguidor de Linha Avançada: 22 Passos (com Imagens)
Robô de seguimento de linha avançado: Este é um robô de seguimento de linha avançado baseado no Teensy 3.6 e no sensor de linha QTRX que eu construí e no qual estou trabalhando há algum tempo. Existem algumas melhorias importantes no design e desempenho da minha linha anterior após o robô. T
Como fazer o menor robô seguidor de linha do mundo (robo Rizeh): 7 etapas (com fotos)
Como fazer o menor robô seguidor de linha do mundo (robo Rizeh): Como fazer o menor robô seguidor de linha do mundo (vibrobot) " roboRizeh " peso: 5gr tamanho: 19x16x10 mm por: Naghi Sotoudeh A palavra " Rizeh " é uma palavra persa que significa " minúsculo ". Rizeh é uma vibração baseada em ro
Robô seguidor de linha: 11 etapas (com imagens)
Robô seguidor de linha: Fiz um robô seguidor de linha com microprocessador PIC16F84A equipado com 4 sensores IR. Este robô pode ser executado nas linhas pretas e brancas
Robô seguidor de linha: 7 etapas (com imagens)
Robô seguidor de linha: este é o robô que segue a linha preta na superfície branca
ROBÔ DE LINHA SEGUIDOR -- ARDUINO CONTROLADO: 11 etapas (com imagens)
ROBÔ DE LINHA SEGUIDOR || ARDUINO CONTROLADO: NESTE INSTRUÍVEL MOSTRO COMO MODIFICAR UM CARRO DE ROBÔ (CARBONO) PARA FAZER UMA LINHA SEGUINTE DE ROBÔ