ARD07 – Calibración manual

El uso de elementos como los potenciómetros o los pulsadores para producir una señal de entrada está muy bien, porque tenemos un control manual directo sobre la entrada pero, en muchísimos casos, se queda corto. En la naturaleza existen parámetros como la temperatura, la luz, la humedad, etc que varían las condiciones de un entorno, y tenemos que poder medirlos con un circuito electrónico. Por ejemplo, podemos querer hacer con nuestro Arduino un equipo que mida la temperatura ambiente, y la refleje en una escala de LED’s. Eso es, justamente, lo que vamos a hacer ahora. Este capítulo nos ayudará a conocer la naturaleza y comportamiento de un sensor térmico, y a programarlo adecuadamente en Arduino. También introduciremos algunos conceptos del lenguaje de programación Arduino y un concepto especialmente interesante cuando se usan sensores: la calibración, para obtener un reflejo real del valor del parámetro medido por el sensor.

ARD08 – Calibración automática

La calibración manual está muy bien, si queremos partir de unos valores base concretos para empezar nuestras mediciones. Pero ¿que ocurre si las condiciones del entorno que queremos medir (luz, temperatura, etc) son tan variables de un momento a otro que no podemos tener un valor base durante toda la ejecución del sketch? Piénsalo. Suponte un sensor de luz, como pueda ser una resistencia LDR (cuyo valor resistivo varía según la luz que incide sobre ella) funcionando en un entorno donde la iluminación varía constantemente, encendiendo y apagando lámparas, o por reflejos de sol a través de la ventana, etc). Lo que necesitas en este caso, para que Arduino pueda medir la iluminación relativa que incide sobre la LDR de una forma fiable a lo largo de un tiempo de funcionamiento, es una calibración automática, de modo que el valor base no venga establecido por programación, sino que se redefina según los valores máximo y mínimo de iluminación (o el parámetro que estemos midiendo), en cada momento. Veamos en este capítulo como funciona la calibración automática de sensores.

ARD09 – Servomotores

Con Arduino es posible manejar, prácticamente, cualquier dispositivo. En este capítulo vamos a trabajar con servomotores. Son un tipo de motores eléctricos que llevan tres cables para conectar: los dos típicos de masa y alimentación y un tercero para control de giro. Es a través de este tercer cable que controlaremos la posición del servomotor. Aunque en el mercado hay gran cantidad de modelos para distintos usos, el objetivo general de un servomotor no es mover grandes cargas, sino actuar sobre otros mecanismos, como cerrojos, válvulas hidráulicas, etc. Su giro está limitado a 180 grados, es decir, no dan vueltas continuamente, como un motor convencional, sino que dan media vuelta (o una fracción de esa media vuelta), y luego vuelven a su posición. Con ese giro es suficiente para mover una leva que actúe sobre otro mecanismo, como hemos mencionado. Por ejemplo, algunos vehículos llevan el acelerador conectado eléctricamente a un servomotor y la leva de este actúa sobre la válvula que regula el paso de combustible.

ARD10 – Motores

En este capítulo vamos a hacer un montaje conceptualmente muy simple: cuenta con un motor eléctrico. Al pulsar un botón, el motor recibe corriente y gira. Dicho así suena a poca cosa, pero nos va a venir muy bien para entender un concepto importante: los pines de salida de Arduino pueden proporcionar una señal de muy poca intensidad de corriente. Existen dispositivos que necesitan funcionar con tensiones o intensidades que la placa Arduino no puede manejar. Si conectásemos un pequeño motorcito eléctrico directamente a la placa, no llegaría a funcionar y, muy probablemente, la placa se dañaría irremisiblemente.

ARD11 – Sonido

Nuestra plaquita Arduino también puede generar frecuencias audibles, que podemos reproducir mediante un transductor, que recibe una señal de cierta frecuencia y la convierte en sonido. Lo ideal es usar un altavoz de mediana calidad pero, para experimentar, de momento emplearemos un simple zumbador. Se venden en cualquier tienda de electrónica y son muy baratos. No nos proporcionará una reproducción musical de alta calidad, pero nos permitirá aprender a generar sonidos. Ya lo sustituiríamos, si fuera necesario, por un altavoz mejor. En la figura 11.1 vemos un zumbador como el que usaremos en este montaje.

ARD12 – Pantalla LCD

En este artículo vamos a aprender a usar una pantalla de cristal líquido (LCD) para que nuestra placa Arduino nos pueda enviar mensajes escritos. En realidad, para enviarnos mensajes escritos, podríamos usar la consola serie que ya conocemos, pero, ¿qué ocurre si, una vez que el sketch esté cargado en la placa Arduino, queremos que pueda funcionar independientemente de un ordenador? Ahí entra en juego el incorporar un sistema de visualización de datos autónomo, que pueda funcionar, simplemente, conectado a Arduino. La pantalla que vamos a usar aquí es el modelo LCD 1602A, que es de uso muy común, cuenta con dos líneas de visualización de datos, de 16 caracteres cada una.

ARD13 – Teclados matriciales

En este artículo vamos a aprender a manejar un teclado matricial. Se trata de una matriz de pulsadores, dispuestos “en cuadro”, de forma que hay tantos hilos de conexión como filas más columnas. Por ejemplo, supongamos el teclado típico de un cajero automático. Tiene 16 pulsadores distribuidos en cuatro filas y cuatro columnas. Por lo tanto, podemos identificar cada pulsador con una coordenada de fila y columna. Con un total de ocho hilos podemos identificar cada pulsador de forma inequívoca.

ARD14 – Display LED de siete segmentos

Estos displays se emplean para representación de dígitos, mediante siete LED’s en forma de línea, dispuestos en una estructura tal que permite representar, según los LED’s encendidos, diferentes números o letras. Además, hay un octavo LED dispuesto como un punto, para representación de cifras decimales. En la figura 14.1 vemos cómo son estos dispositivos.

ARD15 – Arduino Mega

En este artículo vamos a introducir a Arduino Mega 2560. Se trata de una versión de Arduino con otra microcontroladora, que permite disponer de muchos más pines, tanto digitales, digitales PWM, analógicos de entrada, y de comunicación serie (Tx – Rx). Eso supone más prestaciones en cuanto al número de actuadores y dispositivos que podemos emplear en nuestros montajes, dándonos opción a realizar montajes más complejos y completos, con funcionalidades que sería muy difíciles de implementar (en ocasiones, imposibles) en un Arduino UNO.

ARD16 – Más sobre LED’s

En el artículo anterior vimos cómo podemos, con una placa Arduino Mega, gestionar, aparte de un teclado y LED’s indicadores, cuatro displays de siete segmentos. El montaje funciona, sí, pero, debido al elevado número de cables necesarios, así cómo a lo engorroso del código, en la práctica es inviable. Sólo tiene aplicación dentro del contexto de lo meramente didáctico (y, en ese sentido, sí le hemos sacado partido).