Codice Arduino, trasmettitore video e sensore laser

Codice Arduino, trasmettitore video e sensore laser

In questo tutorial impareremo come usare un trasmettitore e un ricevitore laser per rilevare un fascio laser e attivare un cicalino o un'altra azione. Questa configurazione può essere utilizzata in varie applicazioni, inclusi automazione e robotica. Al termine del tutorial saprai come collegare i componenti e scrivere il codice Arduino per far funzionare tutto senza problemi.

Laster RX or receiver module
Laster TX or transmitter module

Durante il tutorial discuteremo i componenti chiave coinvolti in questo progetto, inclusi come collegarli correttamente e come funziona il codice. Guarda il video per una spiegazione dettagliata (nel video alle 02:00).

Hardware spiegato

I componenti principali di questo progetto includono un trasmettitore laser, un ricevitore laser e un buzzer. Il trasmettitore laser emette un fascio di luce, mentre il ricevitore rileva questo fascio. Quando il fascio viene interrotto, il ricevitore invia un segnale all'Arduino, che può quindi attivare il buzzer o eseguire un'altra azione.

Il modulo trasmettitore funziona a 5 volt e include una resistenza per limitare la corrente. Il modulo ricevitore può essere collegato a un filo esterno per una maggiore flessibilità nel posizionamento. Il cicalino è anch'esso alimentato a 5 volt e ha due pin: uno per il positivo e uno per la massa.

Dettagli della scheda tecnica

ProduttoreSconosciuto
Numero di parteModulo trasmettitore/ricevitore laser
Tensione di esercizio5 V
Consumo attuale5 mA tipico.
Tipo di outputSegnale digitale
Portata di rilevamentoVaria a seconda dell'ambiente
DimensioneTrasmettitore: 14.8 mm x 18.8 mm, Ricevitore: 15.4 mm x 23.4 mm

  • Garantire un'alimentazione con la tensione corretta per evitare danni.
  • Usare fili corti per ridurre al minimo la perdita di segnale.
  • Mantieni il ricevitore allineato con il trasmettitore per una rilevazione affidabile.
  • Testa la configurazione in diverse condizioni di illuminazione.
  • Fai attenzione ai riflessi che potrebbero provocare falsi rilevamenti.

Istruzioni di cablaggio

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

Per collegare il trasmettitore laser, collega il suo pin di massa al GND dell'Arduino e il pin positivo al 5V dell'Arduino. Il pin centrale del trasmettitore non viene utilizzato. Per il ricevitore laser, collega il suo pin di massa al GND, il pin positivo al 5V e il pin di uscita al pin dell'Arduino2. Questo pin di uscita leggerà il segnale dal ricevitore laser.

Successivamente, collega il buzzer: il suo piedino più lungo (positivo) dovrebbe essere collegato al pin dell'Arduino8, mentre il pin più corto (massa) è collegato a GND. Assicurati che tutte le connessioni siano sicure per evitare problemi intermittenti durante il funzionamento.

Esempi di codice e guida passo passo

Il codice Arduino inizia definendo i pin per il sensore laser e per l'azione (buzzer) usando gli identificatoriDETECTeACTION. Il codice inizializza la comunicazione seriale per il debug e imposta le modalità dei pin insetup()funzione.

#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
}

Questo frammento mostra come configurare i pin per l'ingresso e l'uscita, fondamentale per il corretto funzionamento della configurazione. IlSerial.begin(9600)Il comando consente la comunicazione con il monitor seriale, permettendoci di visualizzare i messaggi di debug.

Nelloop()funzione, il codice controlla continuamente lo stato del sensore laser. Se il raggio laser viene rilevato, attiva il buzzer e stampa "Detected!" sul monitor seriale.

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
}

Questo estratto dimostra la logica principale del programma. La variabiledetectedmemorizza l'output didigitalRead()funzione che verifica se il raggio laser è presente. A seconda dello stato, il cicalino si accende o si spegne.

Dimostrazione / Cosa aspettarsi

Quando la configurazione è cablata correttamente e il codice è caricato, il sistema dovrebbe funzionare come previsto. Il monitor seriale indicherà "Rilevato!" quando il fascio laser colpisce il ricevitore, e il cicalino suonerà. Se il fascio è interrotto o non rilevato, visualizzerà "Nessun laser" e il cicalino si spegnerà.

È essenziale assicurarsi che il fascio laser sia correttamente allineato con il ricevitore per un funzionamento affidabile. Prestare attenzione a possibili riflessioni che potrebbero provocare falsi positivi, come discusso nel video (al minuto 08:00).

Marcatori temporali del video

  • 00:00- Introduzione
  • 02:00- Spiegazione dell'hardware
  • 04:30- Istruzioni di cablaggio
  • 06:15- Spiegazione del codice
  • 08:00- Dimostrazione

Immagini

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.
Lingua: C++
Copia!

Cose di cui potresti avere bisogno

Risorse e riferimenti

Nessuna risorsa ancora.

File📁

Nessun file disponibile.