Salidas digitales y bloque esperar

      No hay comentarios en Salidas digitales y bloque esperar

Resumen en vídeo

Introducción

Figura 1: Puertos digitales de Arduino UNO.

Las salidas digitales nos permiten alternar entre dos estados: activo – inactivo (encendido – apagado). Arduino UNO consta de 14 puertos digitales que pueden funcionar como salidas y como entradas. Cuando actúan como salidas digitales trabajan con dos estados de tensiones: 0V y 5V.

Los puertos 0 y 1 son utilizados por la placa para su comunicación con el PC. Si ocupamos estos pines, no podremos cargar programas desde el ordenador ni leer a través del puerto serie datos en la pantalla del PC. Por estos motivos, con el fin de trabajar con mayor comodidad, se suelen dejar libres esos dos puertos.

Características y conexión de las salidas digitales

Tensión de salida 5 V
Intensidad de funcionamiento recomendada de cada puerto 20 mA
Intensidad máxima suministrada por cada puerto 40 mA
intensidad máxima suministrada de forma simultanea por los puertos digitales 200 mA

Figura 2: Conexión de un relé y una lámpara con Arduino.

Las salidas de Arduino UNO (y la de la mayoría de modelos) suministran una intensidad que solo puede alimentar receptores de muy baja potencia, pero que es suficiente para actuar como señal de activación de relés y multitud de actuadores compatibles.

También es importante tener en cuenta la limitación máxima de intensidad total de 200 mA. Esta restricción nos indica, por ejemplo, que solo podremos tener simultáneamente 10 puertos actuando como salidas, si estos están suministrando una intensidad en régimen habitual de 20 mA.

En la figura 2  se muestra, como ejemplo, la conexión de un relé activado desde un puerto digital de Arduino para encender una lámpara de 230 V. Se explican estos conceptos, junto con la conexión de leds en el artículo: Actuadores básicos para Arduino: Led y Relé

Programación de salidas digitales en ArduinoBlocks

El bloque de escritura (activación) de salidas digitales se encuentra en el apartado Entrada/Salida de ArduinoBlocks.

A continuación (figura 5) se pueden ver las diferentes opciones de configuración del bloque de programación de salidas digitales. Si se quiere activar un puerto, se selecciona dicho puerto en el desplegable (el 3 en el ejemplo) y el estado de encendido (ON). Configurando el mismo bloque con el parámetro OFF,  se mantendrá la salida apagada.

Figura 5: Bloque de encendido del puerto 3 (izquierda) y de apagado del puerto 3 (derecha).

Bloque “Esperar” para realizar acciones durante un tiempo determinado

El bloque Esperar es ámpliamente utilizado en Arduino. Se encuentra en el apartado Tiempo y corresponde al famoso Delay. Lo que se hace al insertarlo, es dejar la placa en el estado en el que estaba justo antes de la espera, durante el tiempo que ésta dure.

El problema de la función Esperar es que deja la placa bloqueada en el estado anterior durante ese tiempo de espera, es decir, no recibe ni envía nuevas órdenes en ese tiempo. Es por esto que hay que tener cuidado al utilizarlo. Si bien es verdad, que es muy fácil y cómodo de usar para infinidad de aplicaciones simples. Tratamos diferentes alternativas en artículos posteriores.

Programas ejemplo

Para los siguientes programas vamos a conectar un led al puerto 3 de Arduino, con una resistencia en serie de 220 Ohmios.

Programa: Encendido de una salida digital

Al cargar este programa, el elemento conectado al pin 3 se activará y permanecerá activo siempre que la placa Arduino esté conectada a corriente.

Figura 6: Programa básico de encendido

Programa: Apagado de una salida digital

Al cargar el siguiente programa, el elemento conectado al pin 3 permanecerá inactivo constantemente.

Figura 7: Programa básico de apagado

Programa: Luz Intermitente (parpadeo) con una salida

Con el siguiente programa se hace que el led conectado al puerto 3 se encienda durante un segundo y a continuación se apague durante otro segundo.

Cada vez que se inserta el bloque Esperar, la placa queda paralizada en el estado anterior al bloque durante el tiempo indicado. Tras esto, continúa la lectura secuencialmente hacia abajo.

Programa: Luz Intermitente (parpadeo) con varias salidas

Vamos a aprovechar el esquema utilizado en los programas anteriores, junto con el led unido al pin 13 que trae de serie la placa Arduino UNO.

El programa hará lo siguiente: Cuando el led conectado al puerto 3 se encienda, el del puerto 13 permanecerá apagado y viceversa.

Propuesta de programa

Prueba a cambiar los tiempos (no tiene por qué ser el mismo el de encendido y el de apagado), a conectar mas leds a otras salidas, etc.

Preguntas, sugerencias, propuestas…

Realiza cualquier cuestión, sugerencia o propuesta sobre el artículo o vídeo, en el foro del curso. Muchas gracias.

Deja un comentario

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