Código de Pesquisa

Código Arduino, transmissor de vídeo e sensor laser

Código Arduino, transmissor de vídeo e sensor laser

Neste tutorial, vamos aprender como usar um transmissor e um receptor de laser para detectar um feixe de laser e acionar um buzzer ou outra ação. Esta configuração pode ser utilizada em várias aplicações, incluindo automação e robótica. Ao final do tutorial, você entenderá como conectar os componentes e escrever o código Arduino para fazer tudo funcionar perfeitamente.

Laster RX or receiver module
Laster TX or transmitter module

Ao longo do tutorial, vamos discutir os principais componentes envolvidos neste projeto, incluindo como conectá-los corretamente e como o código funciona. Assista ao vídeo para um passo a passo detalhado (no vídeo em 02:00).

Hardware Explicado

Os principais componentes deste projeto incluem um transmissor de laser, um receptor de laser e um buzzer. O transmissor de laser emite um feixe de luz, enquanto o receptor detecta esse feixe. Quando o feixe é interrompido, o receptor envia um sinal para o Arduino, que então pode ativar o buzzer ou executar outra ação.

O módulo transmissor funciona com 5 volts e inclui um resistor para limitar a corrente. O módulo receptor pode ser conectado a um fio externo para maior flexibilidade no posicionamento. O buzzer também é alimentado por 5 volts e possui dois pinos: um para o positivo e outro para o terra.

Detalhes da ficha técnica

FabricanteDesconhecido
Número da peçaMódulo Transmissor/Receptor a Laser
Tensão de operação5 V
Consumo atual5 mA típico.
Tipo de SaídaSinal digital
Alcance de DetecçãoVaria conforme o ambiente
TamanhoTransmissor: 14.8 mm x 18.8 mm, Receptor: 15.4 mm x 23.4 mm

  • Certifique-se de que a tensão de alimentação esteja adequada para evitar danos.
  • Use fios curtos para minimizar a perda de sinal.
  • Mantenha o receptor alinhado com o transmissor para uma detecção confiável.
  • Teste a configuração em diferentes condições de iluminação.
  • Tenha cuidado com reflexos que podem provocar detecções falsas.

Instruções de fiação

Arduion wiring laser Transmitter and receiver
Arduion wiring laser Transmitter and receiver

Para conectar o transmissor a laser, conecte seu pino de terra ao GND do Arduino e o pino positivo ao 5V do Arduino. O pino do meio do transmissor não é usado. Para o receptor do laser, conecte seu pino de terra ao GND, o pino positivo ao 5V e o pino de saída a um pino do Arduino.2. Este pino de saída lerá o sinal do receptor laser.

Em seguida, conecte o buzzer: seu pino mais longo (positivo) deve ser conectado ao pino do Arduino8, enquanto o pino mais curto (terra) conecta-se ao GND. Certifique-se de que todas as conexões estejam seguras para evitar problemas intermitentes durante a operação.

Exemplos de código e tutorial passo a passo

O código do Arduino começa definindo os pinos para o sensor de laser e para a ação (buzzer) usando os identificadoresDETECTeACTION. O código inicializa a comunicação serial para depuração e define os modos dos pinos emsetup()função.

#define DETECT 2 // pin 2 for sensor
#define ACTION 8 // pin 8 for action to do something

void setup() {
  Serial.begin(9600);
  pinMode(DETECT, INPUT); // define detect input pin
  pinMode(ACTION, OUTPUT); // define ACTION output pin
}

Este trecho mostra como configurar os pinos para entrada e saída, o que é crucial para a funcionalidade da configuração. OSerial.begin(9600)O comando permite a comunicação com o monitor serial, permitindo que vejamos mensagens de depuração.

Noloop()Na função, o código verifica continuamente o estado do sensor laser. Se o feixe laser for detectado, ele aciona o buzzer e imprime "Detectado!" no monitor serial.

void loop() {
  int detected = digitalRead(DETECT); // read Laser sensor
  if(detected == HIGH) {
    digitalWrite(ACTION, HIGH); // set the buzzer ON
    Serial.println("Detected!");
  } else {
    digitalWrite(ACTION, LOW); // Set the buzzer OFF
    Serial.println("No laser");
  }
  delay(200); // wait 200 milliseconds
}

Este trecho demonstra a lógica central do programa. A variáveldetectedarmazena a saída dedigitalRead()função, que verifica se o feixe de laser está presente. Dependendo do estado, o buzzer é ligado ou desligado.

Demonstração / O que esperar

Quando a configuração estiver corretamente conectada e o código for carregado, o sistema deverá funcionar conforme o esperado. O monitor serial indicará "Detected!" quando o feixe do laser atingir o receptor, e o buzzer soará. Se o feixe for interrompido ou não for detectado, ele exibirá "No laser" e o buzzer será desligado.

É essencial garantir que o feixe do laser esteja corretamente alinhado com o receptor para um funcionamento confiável. Esteja atento a possíveis reflexos que possam causar falsos positivos, conforme discutido no vídeo (em 08:00).

Marcas de Tempo do Vídeo

  • 00:00- Introdução
  • 02:00- Explicação do hardware
  • 04:30- Instruções de fiação
  • 06:15- Explicação do código
  • 08:00- Demonstração

Imagens

Laster RX or receiver module
Laster RX or receiver module
Laster RX or receiver module
Laster RX or receiver module
Laster TX or transmitter module
Laster TX or transmitter module
Laster TX or transmitter module
Laster TX or transmitter module
Laster TX or transmitter module
Laster TX or transmitter module
Arduion wiring laser Transmitter and receiver
Arduion wiring laser Transmitter and receiver
67-This is the Arduino code and video for a laser sensor module.
Idioma: C++
++
/*
 * Laser Sensor module for Arduino
 * Turns ON a buzzer or you can control a motor or servo or any other action.

 * Watch the video https://youtu.be/h_y1y6eUvIY

 *  * 
Laser Sensor module for Arduino
Written by Ahmad Shamshiri for Robojax.com
on Feb 02, 2018 at 18:24 in Ajax, Ontario, Canada
 * Permission granted to share this code given that this
 * note is kept with the code.
 * Disclaimer: this code is "AS IS" and for educational purposes only.
* This code is "AS IS" without warranty or liability. Free to be used as long as you keep this note intact.* 
 * This code has been downloaded from Robojax.com
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <https://www.gnu.org/licenses/>.
 /*
/*


 */
  // Laser Sensor code for Robojax.com
#define DETECT 2 // pin 2 for  sensor
#define ACTION 8 // pin 8 for action to do something


void setup() {
  Serial.begin(9600);
  Serial.println("Robojax.com Laser Module Test");
  pinMode(DETECT, INPUT);//define detect input pin
  pinMode(ACTION, OUTPUT);//define ACTION output pin

  // Laser sensor code for Robojax.com

}

void loop() {
     // Laser Sensor code for Robojax.com

  int detected = digitalRead(DETECT);// read Laser sensor
 
  if( detected == HIGH)
  {
    digitalWrite(ACTION,HIGH);// set the buzzer ON
    Serial.println("Detected!");

  }else{
    digitalWrite(ACTION,LOW); // Set the buzzer OFF
    Serial.println("No laser");
     // Laser Sensor code for Robojax.com

  }
  delay(200);
}

Coisas que você pode precisar

Recursos e referências

Ainda não há recursos.

Arquivos📁

Nenhum arquivo disponível.