1. El Octavo Bit
  2. / Arduino
  3. / Proyectos para Arduino
  4. / Medir la inclinación con Arduino y el sensor SW-520D

Medir la inclinación con Arduino y el sensor SW-520D

| Actualizado:
Comentarios: 0

Medir la inclinación con Arduino y el sensor SW-520D
Medir la inclinación con Arduino y el sensor SW-520D

Realizamos un ejemplo básico, donde se puede apreciar que la lectura hecha por el sensor se recibe en un pin de entrada digital de la placa (hemos usado el nº 7).

Material necesario:

  • Arduino Uno o similar.
  • Protoboard.
  • Cables
  • Sensor inclinación SW-520D
Esquema de montaje para el sensor de inclinación SW-520D con Arduino

La alimentación del sensor la realizamos directamente por un pin digital, el 2, de manera que esté configurado OUTPUT puesto que será el que alimente el circuito. El siguiente paso es saber qué pasa por el circuito, para ello conectamos un cable a un pin digital de entrada, en este caso vamos a utilizar el 7 como INPUT. Por último, conectamos la otra pata del sensor al GND.

void setup(){
    pinMode(7, INPUT);
    Serial.begin(9600);
    pinMode(2, OUTPUT);
    digitalWrite(2, HIGH);
}
 
void loop(){
    if (digitalRead(7)){
        Serial.println("El sensor ha cambiado de posición");
    }else{
        Serial.println("El sensor está en vertical");
    }
}

Sistema de inclinación indicado por un led.

Vamos a complicarlo un poco añadiendo un led que se encenderá cuando esté inclinado.

Componentes:

  • Arduino Uno o similar.
  • Protoboard.
  • Cables.
  • Resistencia 220 Ohms.
  • Led, nos da igual el color.
  • Sensor inclinación SW-520D
Esquema para comprobar la inclinación con el sensor SW-520 e indicado por un Led

La alimentación del led se va a realizar a través del pin 13, de manera que sea OUTPUT, y estará HIGH, encendido, cuando el sensor esté volcado y LOW, apagado, en su posición correcta. El sensor lo vamos a alimentar con el pin digital 2.

void setup() {
  Serial.begin(9600);
  pinMode(13, OUTPUT);  // Alimentación del led, definido como salida
  pinMode(2, INPUT);    // Pin de entrada para el sensor
  digitalWrite(7, LOW); // Led apagado de inicio
}

void loop() {
  if(digitalRead(2)){
    Serial.println("Alerta por inclinación");
    digitalWrite(13, HIGH);  // Led encendido
    delay(200);
  }else{
    Serial.println("Todo correcto");
    digitalWrite(13, LOW);     // Led apagado
  }
}

Artículos que te pueden interesar

Detector de incendios con Arduino
Detector de incendios con Arduino y el sensor KY-026

Detector de incendios con Arduino y el sensor KY-026

| Actualizado:
Comentarios: 0

El módulo KY-026 es un sensor de llama que permite detectar un fuego gracias a un sensor óptico sensible a la radiación emitida por la llama. El sensor puede detectar fuentes de luz en el rango de una longitud de…

Sonido con Arduino. Zumbador

Sonido con Arduino. Zumbador

| Actualizado:
Comentarios: 0

En este post vamos a aprender a generar sonidos con Arduino. Utilizaremos una señal eléctrica para hacer vibrar la membrana del zumbador. Contenido 1 Sonido con Arduino 2 Generar sonido con un zumbador 3 Sonido controlado por un potenciómetro 4…

Pulsadores para Arduino
Las entradas digitales en Arduino. Los pulsadores.

Las entradas digitales en Arduino. Los pulsadores.

| Actualizado:
Comentarios: 0

En muchos de los proyectos con Arduino nos encontraremos un pulsador o botón. Aquí veremos cómo hacer para utilizar correctamente sus señales. Primero, explicaremos qué son las resistencias pull-up y pull-down, montaremos un circuito eléctrico con un pulsador y una…

Iluminación de un led según la cantidad de luz
Sistema de regulación de la iluminación de un led a partir de la cantidad de luz

Sistema de regulación de la iluminación de un led a partir de la cantidad de luz

| Actualizado:
Comentarios: 0

El objetivo es encender un LED y variar su intensidad dependiendo de la luz ambiental, para esto vamos a utilizar un sensor de luz LDR. Antes de cambiar la intensidad del LED según la cantidad de luz, haremos que se…

Comentarios - 0

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *