Índice:

Robô perseguidor de fogo: 6 etapas (com fotos)
Robô perseguidor de fogo: 6 etapas (com fotos)

Vídeo: Robô perseguidor de fogo: 6 etapas (com fotos)

Vídeo: Robô perseguidor de fogo: 6 etapas (com fotos)
Vídeo: Conheça os sensores do Arduino #ManualMaker Aula 6, Vídeo 1 2024, Julho
Anonim
Image
Image
Conectando o Sensor de Chama ao PICO
Conectando o Sensor de Chama ao PICO

Neste projeto, vamos criar um robô de combate a incêndios que persegue uma chama e a extingue soprando nela com um ventilador.

Depois de concluir este projeto, você saberá como usar sensores de chama com PICO, como ler seu valor de saída e como agir sobre ele, e como usar sensores Darlington com motores DC e como controlá-los. Isso, claro, junto com um robô de combate a incêndios muito legal.

Suprimentos

  • PICO
  • Sensor de Chama
  • Motor DC pequeno
  • Hélice pequena
  • Driver do motor L298N H-bridge
  • Driver PWM PCA9685 de 12 bits e 16 canais
  • Kit de chassis de robô 2WD
  • Mini breadboard
  • Fios de ligação
  • Parafusos e porcas

Etapa 1: Conectando o Sensor de Chama ao PICO

Conectando o Sensor de Chama ao PICO
Conectando o Sensor de Chama ao PICO

Vamos começar com a parte mais importante do nosso robô de combate a incêndio, que é a capacidade de detectar incêndios quando eles acontecem. É por isso que vamos começar com os componentes que são responsáveis por detectar o incêndio, mas antes disso, vamos montar nosso kit de chassis de robô 2WD, pois vamos construir nosso robô com base nele.

Estaremos usando 3 sensores de chama neste projeto e teremos o robô se movendo de forma independente usando suas leituras, vamos colocar esses sensores no meio, lado esquerdo e lado direito do chassi do robô. E eles serão colocados de forma a ter a capacidade de apontar com precisão a fonte da chama e apagá-la.

Antes de começarmos a usar os sensores de chama, vamos falar sobre como eles funcionam: os módulos do sensor de chama são feitos principalmente de LEDs receptores infravermelhos que podem detectar a luz infravermelha emitida pelas chamas e enviar os dados como entrada digital ou analógica, em nosso caso estaremos usando um sensor de chama que envia saída digital.

Pinagens do módulo do sensor de chama:

  • VCC: 5 volts positivo, conectado com o pino VCC do PICO.
  • GND: pino negativo, conectado ao pino GND do PICO.
  • D0: o pino de saída digital, conectado com o digital desejado no PICO.

Vamos agora conectá-lo ao nosso PICO para testar nossa fiação e lógica de código, para ter certeza de que tudo está funcionando corretamente. Conectar os sensores de chama é muito fácil, basta conectar o VCC e o GND dos sensores ao VCC e o GND do PICO respectivamente e, em seguida, conectar os pinos de saída da seguinte forma:

  • D0 (sensor de chama direito) → A0 (PICO)
  • D0 (sensor de chama média) → A1 (PICO)
  • D0 (sensor de chama esquerdo) → A2 (PICO)

Etapa 2: Codificando PICO com os sensores de chama

Codificando PICO com os sensores de chama
Codificando PICO com os sensores de chama
Codificando PICO com os sensores de chama
Codificando PICO com os sensores de chama

Agora que temos nossos sensores de chama conectados ao PICO, vamos começar a codificar para que saibamos qual sensor de chama tem uma chama na frente e qual não tem.

Lógica do código:

  • Defina os pinos A0, A2 e A3 do PICO como pinos de ENTRADA
  • Leia cada valor de saída do sensor
  • Imprima cada valor de saída do sensor no monitor serial, para que possamos diagnosticar se tudo está funcionando corretamente ou não.

Observe que nossos sensores têm uma leitura baixa "0" quando detectam fogo e uma leitura alta "1" quando não detectam fogo.

Para testar seu código, abra seu monitor serial e veja como ele muda quando você tem fogo na frente dele, em comparação com quando muda. As imagens anexas trazem as leituras de não haver chama, e as leituras de uma única chama na frente do sensor do meio.

Etapa 3: Conectando o Ventilador

Conectando o Ventilador
Conectando o Ventilador

Para tornar um robô de combate a incêndio eficaz, ele deve ter a capacidade de combater o fogo, e para isso vamos criar um ventilador que apontamos para o fogo e o apagamos. E vamos criar essa ventoinha usando um pequeno motor DC com uma hélice instalada.

Então, vamos começar conectando nossos motores DC. Os motores CC têm um alto consumo de corrente, portanto, não podemos conectá-los diretamente ao nosso PICO, já que ele só pode oferecer 40 mA por pino GPIO, enquanto o motor precisa de 100 mA. É por isso que devemos usar um transistor para conectá-lo, e vamos usar o Transistor TIP122, pois podemos usá-lo para aumentar a corrente fornecida pelo nosso PICO para a quantidade necessária pelo motor.

Vamos adicionar nosso motor DC e uma bateria externa "PLACE HOLDER", para fornecer ao motor a energia necessária sem danificar nosso PICO.

O motor DC deve ser conectado da seguinte forma:

  • Pino de base (TIP122) → D0 (PICO)
  • Pino coletor (TIP122) → Cabo do motor DC "Motores DC não têm polaridades, então não importa qual cabo"
  • Pino emissor (TIP122) → GND
  • Cabo vazio do motor DC → Positivo (fio vermelho) da bateria externa

Não esqueça de conectar o GND da bateria com o GND do PICO, pois se não estiver conectado o circuito não funcionará de jeito nenhum

A lógica do código da ventoinha: o código é muito simples, vamos apenas modificar o código que já temos que ligar a ventoinha quando a leitura do sensor do meio for alta, e desligar a ventoinha quando a leitura do sensor do meio for baixa.

Etapa 4: Conectando os motores do carro robô

Agora que nosso robô pode detectar incêndios e apagá-los com um ventilador, quando o fogo estiver diretamente na frente dele. É hora de dar ao robô a capacidade de se mover e se posicionar diretamente na frente do fogo, para que possa apagá-lo. Já estamos usando nosso kit de chassis de robô 2WD, que vem com 2 DC com engrenagem que vamos usar.

Para ser capaz de controlar a velocidade e direção de funcionamento do motor DC, você precisa usar o driver de motor L298N H-bridge, que é um módulo de driver de motor que tem a capacidade de controlar a velocidade e direção de funcionamento do motor, com a capacidade de alimentar os motores de uma fonte de alimentação externa.

O driver do motor L298N precisa de 4 entradas digitais para controlar a direção de rotação dos motores e 2 entradas PWM para controlar a velocidade de rotação dos motores. Mas, infelizmente, o PICO tem apenas um único pino de saída PWM que não pode controlar a direção e a velocidade de rotação do motor. É aqui que usamos o módulo de expansão de pinos PCA9685 PWM para aumentar o PWM do PICO para atender às nossas necessidades.

A fiação agora ficou um pouco mais complicada, pois estamos conectando 2 novos motores junto com 2 módulos para controlá-los. Mas isso não será um problema se você seguir os esquemas e etapas fornecidos:

Vamos começar com o módulo PWM PCA9685:

  • Vcc (PCA9685) → Vcc (PICO)
  • GND (PCA9685) → GND
  • SDA ((PCA9685) → D2 (PICO)
  • SCL (PCA9685) → D3 (PICO)

Agora, vamos conectar o módulo de driver de motor L298N:

Vamos começar conectando-o à nossa fonte de alimentação:

  • +12 (módulo L298N) → Fio vermelho positivo (bateria)
  • GND (módulo L298N) → GND

Para controlar a direção de rotação dos motores:

  • In1 (módulo L298N) → PWM 0 pino (PCA9685)
  • In2 (módulo L298N) → PWM 1 pino (PCA9685)
  • In3 (módulo L298N) → PWM 2 pinos (PCA9685)
  • In4 (módulo L298N) → PWM de 3 pinos (PCA9685)

Para controlar a velocidade de rotação do motor:

  • enableA (módulo L298N) → PWM 4 pinos (PCA9685)
  • enableB (módulo L298N) → PWM 5 pinos (PCA9685)

O driver do motor L298N pode produzir +5 volts regulados, que usaremos para ligar nosso PICO:

+5 (módulo L298N) → Vin (PICO)

Não conecte este pino se o PICO estiver ligado via USB

Agora que tudo está conectado, programaremos o robô para se mover para ficar de frente para a chama e ligar o ventilador.

Etapa 5: Concluindo o Código

Agora que tudo está conectado corretamente, é hora de codificar para que funcione bem. E estas são as coisas que queremos que nosso código realize:

Se detectar o fogo bem à frente (o sensor do meio detecta o fogo), o robô se move para a direita em sua direção até atingir a distância definida e liga o ventilador

Se detectar o fogo do lado direito do robô (o sensor certo detecta o fogo), o robô gira até que o fogo esteja bem na frente do robô (o sensor do meio) e se move em direção a ele até atingir a distância definida e liga o ventilador

Se detectar fogo no lado esquerdo do robô, fará o mesmo que acima. Mas, ele vai virar para a esquerda em vez de para a direita.

E se não detectar nenhum incêndio, todos os sensores produzirão um valor ALTO, parando o robô.

Etapa 6: Pronto

Neste projeto, aprendemos como ler a saída do sensor e agir de acordo com ela, como usar o transistor Darlington com motores CC e como controlar motores CC. E usamos todo o nosso conhecimento para criar um robô de combate a incêndios como um aplicativo. O que é muito legal x)

Por favor, não hesite em colocar quaisquer questões que possa ter nos comentários ou no nosso website mellbell.cc. E como sempre, continue fazendo:)

Recomendado: