Práctica 9: Switch ON/OFF





Para esta práctica se necesita:

  1. 1. Placa Arduino UNO
  2. 2. Sensor touch
  3. 3. Cables para realizar las conexiones

  4. Materiales

Introducción


En esta práctica aprenderemos a utilizar un sensor táctil con Arduino. Este tipo de sensor se usa ampliamente en diferentes dispositivos electrónicos. Se pueden encontrar en lámparas con control de iluminación, instrumentos musicales, pantallas táctiles de teléfonos inteligentes entre otras de aplicaciones.

Un sensor táctil es un tipo de sensor electrónico utilizado para detectar y registrar el contacto físico. Generalmente son pequeños, fáciles de utilizar y de bajo costo. En una variedad de aplicaciones reemplazan los viejos interruptores mecánicos.

El módulo se basa en un interruptor táctil capacitivo con el circuito integrado TTP223B de detección táctil. En el estado normal, la salida del módulo está en estado bajo, no hay tensión eléctrica. Sin embargo, cuando un dedo toca la posición correspondiente, la salida del módulo pasa a un estado alto, hay tensión eléctrica.

El objetivo es controlar el encendido y apagado del LED que trae la placa Arduino UNO.

Vídeo con el paso a paso




Montaje


Realizar la conexión del sensor táctil cableando el terminal GND al pin GND, el terminal “Vcc” a +5V, el terminal “SIG” al pin 5 de la placa Arduino.


tablas


arduino

Programación


Antes de empezar a colocar los bloques de programación, es conveniente plantear la lógica de funcionamiento de nuestro programa. Recordemos que el objetivo es controlar el encendido y apagado del LED que trae incorporado la placa Arduino UNO. Haremos que, con un toque en el sensor se encienda el LED de nuestra placa Arduino (pin 13) y con otro toque se apague.

Para ello necesitamos identificar en qué estado se encuentra el LED (encendido=ON o apagado=OFF). Esta información es importante porque recordemos que el sensor entrega en la salida un estado alto cuando lo tocamos. Es decir, con cada toque la salida estará en alto, y después de muchos toques no sabríamos si el LED este encendido o apagado.

En ese orden de ideas, necesitamos dos condiciones para encender o apagar el LED. Lo primero es ver que se ha tocado el sensor y segundo, es determinar si esta apagado para encenderlo, o por el contrario ver si está encendido para apagarlo.

La primera condición la obtenemos del sensor y para la segunda, necesitamos guardar un indicador que nos permita identificar el estado del LED (ON o OFF). Para ello haremos uso de una variable. Esta tomara el valor de uno cuando se toque el sensor y el LED se encienda. Y Tomará el valor de cero cuando se toque el sensor y el LED se apague.

Adicionalmente colocaremos un tiempo de espera después de encender o apagar el LED.

La secuencia del programa nos quedaría de la siguiente manera:

  1. 1. Seleccionar el bloque del sensor touch:
    Ir al botón “Seeed Studio Grove” del panel izquierdo y desplazarnos hasta encontrar el bloque Touch Sensor.

    Figura 3 - 142


  2. 2. Colocar el bloque condicional if/then (si/entonces).

    Figura 3 - 143


  3. 3. Colocar el operador and para evaluar que dos condiciones se cumplan.

    Figura 3 - 144


  4. 4. Colocar el bloque de comparación de igualdad numérica.

    Figura 3 - 145


  5. 5. Colocar el bloque de asignación de valor numérico a una variable.

    Figura 3 - 146


  6. 6. Colocar el bloque de retardo en milisegundos.

    Figura 3 - 147


  7. 7. Colocar el bloque para activar/desactivar una salida digital.

    Figura 3 - 148


Finalmente, nuestros bloques de programación nos deben quedar de la siguiente manera:



Figura 3 - 149

Ampliación


¿Qué crees que pasaría si se quita el bloque del retardo?

¿Qué bloques añadirías para controlar el encendido-apagado del módulo LED RGB (LED de tres colores)?