Back to Arduino Step By Step Course

Lesson 12: Using Reed Sensor Switch with Arduino

If you don't like to see ads while video is being played you can purchase this course for $200 from Udemy

Reed switch or sensor is sensor when it is gets closer to magnetic field, it establishes contact bewtween two pin. We detect the conect using Arduino and take action to do something.

A tilt sensor can be installed on a robotic arm and when the arm moves to certain position we either turn ON something or turn OFF .


 /*
 * Lesson 12 Reed Switch
 * This is the Arduino code for reed switch to
 * turn a relay ON which the relay
 * can turn a light or alarm ON
* reed switch is connected to pin 2
 * Relay is connected to pin 8
  Please watch video instruction here https://youtu.be/RS7PTtxtlQ4
 This code is available at http://robojax.com/course1/?vid=lecture12
 
with over 100 lectures Free On  YouTube Watch it here http://robojax.com/L/?id=338
Get the code for the course: http://robojax.com/L/?id=339 
 * Written by Ahmad Shamshiri for Robojax, robojax.com http:youTube.com/robojaxTV
 
 * Date: Dec 05, 2017, in Ajax, Ontario, Canada
 
 * 
 * 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 download 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/>.
 */


int reedInPin = 2;// define pin 2 for reed switch 
int relayPin = 8;// pin connected to relay 

int  onTime= 200; // time in melliseond ON and wait before make another reading.
int  offTime= 200; // time in melliseond OFF and wait before make another reading.

void setup() {
//Robojax Step By Step Arduino Course http://robojax.com/L/?id=338	
    Serial.begin(9600);
    // out pins
    pinMode(reedInPin, INPUT);// define reedInPin as input
    pinMode(relayPin, OUTPUT);// define relayPin as output  for relay         

    Serial.println("Robojax Reed switch");

}

void loop() {

    // read the REED switch
    if(digitalRead(reedInPin) == LOW){
      Serial.println("Switch ON "); 
      digitalWrite(relayPin, HIGH); // Turn the relay ON    
      delay(onTime);// keep the relay or switch ON for the onTime 
    }else{
      digitalWrite(relayPin, LOW);// Turn the relay OFF
      Serial.println("Switch OFF ");
      delay(offTime);// wait offTime  before reading again    
    }
 //Robojax Step By Step Arduino Course http://robojax.com/L/?id=338
}// loop


   

If you found this tutorial helpful, please support me so I can continue creating content like this. support me via PayPal