Back to Step by Step Course by Robojax

Lesson 11: Using Tilt Sensor Switch with Arduino

Tilt switch or sensor is sensor when it is leaned to from a certain position, 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 .


 /*
 * S02-01 Tilt
 * This is the Arduino code for tilt switch to
 * turn a relay ON which the relay
 * can turn a light or alarm ON
* tilt switch is connected to pin 2
 * Relay is connected to pin 8

 * 
  Please watch video instruction here https://youtu.be/1yGh_UsBsYU
 This code is available at http://robojax.com/course1/?vid=lecture11
 
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: Jan 21, 2019 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 tiltPin = 2;// define pin 2 for tilt switch 
int relayPin = 8;// pin connected to relay 

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

void setup() {
    Serial.begin(9600);
    // out pins
    pinMode(tiltPin, INPUT);// define tiltPin as input
    pinMode(relayPin, OUTPUT);// define relayPin as output  for relay         

    Serial.println("Robojax Tilt switch");

}

void loop() {
//Robojax Step By Step Arduino Course http://robojax.com/L/?id=338
    // read the tilt switch
    if(digitalRead(tiltPin) == 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    
    }
 
}// loop


   

The least I expect from you is to give the video a thumbs up and subscribe to my channel. I appreciate it. I have spent hundreds of hours making these lectures and writing code. You don't lose anything by subscribing to my channel. Your subscription is a stamp of approval for my videos, helping more people find them and, in turn, helping me. Thank you!

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

**** AFFILIATE PROGRAM **** We are a participant in the Amazon Services LLC Associates Program, an affiliate advertising program designed to provide a means for us to earn fees by linking to Amazon.com and affiliated sites.

Right Side
footer