Back to Step by Step Course by Robojax

Lesson 11: Using Tilt Sensor Switch with Arduino

If you don't like to see ads while video is being played you can purchase YouTube premium Here

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 thumb up the video and subscribe to my channel. I appriciate that. .I have spent months making these lectures and writing code. You don't lose anything by subscribging to my channel. Your subscription is stamp of approval to my videos and more people can find them and in it turn it helps 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