Arduino - Relé conmutado por sensor táctil

En un tutorial anterior, hemos aprendido cómo encender el relé si se toca el sensor táctil, y apagar el relé si se suelta el sensor táctil. En este tutorial, vamos a aprender cómo alternar el relé cada vez que se toque el sensor táctil.

Al conectar un relé a una bombilla, una tira de LED, un motor o un actuador... Podemos usar el sensor táctil para conmutar la bombilla, la tira de LED, el motor o el actuador...

Acerca del relé y del sensor táctil

Si no sabes sobre el relé y el sensor táctil (disposición de pines, cómo funciona, cómo programarlo...), aprende sobre ellos en los siguientes tutoriales:

Diagrama de Cableado

Diagrama de cableado del relé para sensor táctil de Arduino

This image is created using Fritzing. Click to enlarge image

Código de Arduino - Sensor táctil que alterna el relé

/* * Este código de Arduino fue desarrollado por es.newbiely.com * Este código de Arduino se proporciona al público sin ninguna restricción. * Para tutoriales completos y diagramas de cableado, visite: * https://es.newbiely.com/tutorials/arduino/arduino-touch-sensor-toggle-relay */ // constants won't change const int TOUCH_SENSOR_PIN = 8; // Arduino pin connected to touch sensor's pin const int RELAY_PIN = A5; // Arduino pin connected to relay's pin // variables will change: int relayState = LOW; // the current state of relay int lastTouchState; // the previous state of touch sensor int currentTouchState; // the current state of touch sensor void setup() { Serial.begin(9600); // initialize serial pinMode(TOUCH_SENSOR_PIN, INPUT); // set arduino pin to input mode pinMode(RELAY_PIN, OUTPUT); // set arduino pin to output mode currentTouchState = digitalRead(TOUCH_SENSOR_PIN); } void loop() { lastTouchState = currentTouchState; // save the last state currentTouchState = digitalRead(TOUCH_SENSOR_PIN); // read new state if(lastTouchState == LOW && currentTouchState == HIGH) { Serial.println("The sensor is touched"); // toggle state of relay relayState = !relayState; // control relay arccoding to the toggled state digitalWrite(RELAY_PIN, relayState); } }

Pasos R\u00e1pidos

  • Conecta el Arduino al PC mediante un cable USB
  • Abre Arduino IDE, selecciona la placa y el puerto correctos
  • Copia el código anterior y ábrelo con Arduino IDE
  • Haz clic en el botón Subir en Arduino IDE para subir el código al Arduino
  • Mantén el dedo sobre el sensor táctil durante varios segundos y luego suéltalo
  • Observa el cambio en el estado del relé

Explicación del código

Puedes encontrar la explicación en la línea de comentarios del código de Arduino anterior.

En el código, relayState = !relayState es equivalente al siguiente código:

if(relayState == LOW) relayState = HIGH; else relayState = LOW;

Video Tutorial

Estamos considerando crear tutoriales en video. Si considera que los tutoriales en video son importantes, suscríbase a nuestro canal de YouTube para motivarnos a crear los videos.

※ NUESTROS MENSAJES

  • No dude en compartir el enlace de este tutorial. Sin embargo, por favor no use nuestro contenido en otros sitios web. Hemos invertido mucho esfuerzo y tiempo en crear el contenido, ¡por favor respete nuestro trabajo!