Emisor y Receptor IR CONTINUO

Buenas gente! abro este topic haber si me ayudan o dan ideas de como puedo hacer lo que busco... lo que quiero es: utilizar un emisor y un recepetor IR con UN SOLO ARDUINO para que cuando pase algo entre medio pues me diga que algo paso, asi de simple :slight_smile: ... se corta la señal y se detecta el corte; como estoy tratando de hacerlo..

la idea es hacerlo con UN SOLO ARDUINO

ok primero intente lo mas sencillo con 2 arduinos, uno que sirva de emisor y otro que sirva de recpetor..

adjunto los codigos:

/*
  EL QUE ENVIA
 */

#include <IRremote.h>

IRsend irsend;

void setup()
{
  Serial.begin(9600);
}

void loop() {
      irsend.sendSony(0xa90, 12); 
}
//  EL QUE RECIBE

#include <IRremote.h>
const int ledPin = 42; 
int RECV_PIN = 32;

IRrecv irrecv(RECV_PIN);

decode_results results;

void setup()
{
  Serial.begin(9600);
  irrecv.enableIRIn(); // Start the receiver
  pinMode(ledPin, OUTPUT);
}

void loop() {
  if (irrecv.decode(&results)) {
  	digitalWrite(ledPin, HIGH);
    Serial.println("SE CORTO");
    irrecv.resume();
  	digitalWrite(ledPin, LOW);
  }
}

basicamente esos son los codigos y pues funciona a la perfeccion pero con 2 arduino la idea es hacerlo son SOLO UNO, cuando me interpongo entre la señal del emisor y receptor detecta que se corta e imprime por serial "SE CORTO"

por cosas de logica dije.. . bueno combianre el codigo para hacerlo en UN SOLO ARDUINO y realize:

#include <IRremote.h>
const int ledPin = 35; 
int RECV_PIN = 25;

IRrecv irrecv(RECV_PIN);

decode_results results;


IRsend irsend;

void setup()
{
  Serial.begin(9600);
  irrecv.enableIRIn();
  pinMode(ledPin, OUTPUT);
}

void loop() {

  irsend.sendSony(0xa90, 42); 
  
  if (irrecv.decode(&results)) {
  	digitalWrite(ledPin, HIGH);
    Serial.println("Oh si Oh si Oh si");
    irrecv.resume(); 
  	digitalWrite(ledPin, LOW);
  }

  irsend.sendSony(0xa90, 12); 

}

ok que sucede, pues no sucede nada.. ya que si se dan cuenta en el loop ocurre que envio señal y luego el recibe y luego envia... para que funcione debe estar constantemente enviando y recibiendo a la vez...

entonces llego al punto de... ALGUN TIP AYUDA CONSEJO ? :smiley: gracias

No podrás hacerlo con la librería IRremote.h, tendrás que escribir tu propio protocolo, siempre estarán a destiempo.
Técnicamente estas intentando hacer un "sensor barrera pulsado" muy utilizado en cortinas de luz de seguridad.

Saludos.

Muchas gracias por el termino bro... bueno si, algo mas o menos asi es lo que estoy intentando.. seguire haciendo pruebas :slight_smile:

Usa una barrerar infraroja (comprada) o usa un PIR y detectas que alguien pasó.