Intel Edison I.R. Break Beam Sensor

by tankapotamus in Circuits > Arduino

5360 Views, 11 Favorites, 0 Comments

Intel Edison I.R. Break Beam Sensor

205.jpg

Intel Edison Arduino I.R. Break Beam Sensor

Parts

134.jpg
157-00.jpg
387-00.jpg
2168-02.jpg

Intel Edison Arduino https://www.adafruit.com/products/2180

I.R. sensor https://www.adafruit.com/products/157

I.R. L.E.D. https://www.adafruit.com/products/387

I used the I.R. break beam sensor ( https://www.adafruit.com/products/2168), but you can recycle any broken device that uses an I.R. remote, as long as the I.R. L.E.D. and sensor aren't what's broken.

Assembly

sensors_Irbreak.jpg

Wire it up like the picture above. You can add an external L.E.D. , I recommend pin 12, it wouldn't blink an external on pin 13, for me, but the on board L.E.D. did.

Download the Code Below

Intel Edison IR break beam sensor

/*

IR Breakbeam sensor demo!

*/

#define LEDPIN 12

// Pin 13: Arduino has an LED connected on pin 13

// Pin 11: Teensy 2.0 has the LED on pin 11

// Pin 6: Teensy++ 2.0 has the LED on pin 6

// Pin 13: Teensy 3.0 has the LED on pin 13

#define SENSORPIN 4

// variables will change:

int sensorState = 0, lastState=0;

// variable for reading the pushbutton status

void setup()

{

pinMode(LEDPIN, OUTPUT); // initialize the LED pin as an output:

pinMode(SENSORPIN, INPUT); // initialize the sensor pin as an input:

digitalWrite(SENSORPIN, HIGH); // turn on the pullup

Serial.begin(9600);

}

void loop()

{

// read the state of the pushbutton value:

sensorState = digitalRead(SENSORPIN);

// check if the sensor beam is broken

// if it is, the sensorState is LOW:

if (sensorState == LOW) {

digitalWrite(LEDPIN, HIGH); // turn LED on:

}

else {

digitalWrite(LEDPIN, LOW); // turn LED off:

}

if (sensorState && !lastState) {

Serial.println("Unbroken");

}

if (!sensorState && lastState) {

Serial.println("Broken");

}

lastState = sensorState;

}