fbpx

La "Interfaz del Usuario" o UI (por sus siglas en inglés User Interface), es el conjunto de elementos que le permite a un usuario interactuar de manera efectiva con un sistema. Ya sea para poder notificarse de evento, ingresar parámetros o consumir información.

En esta categoria solo incluimos todos los elemento que proveen información al usuario. Ya sea de manera "Gráfica", por medio de un display; Lumínica, con el uso de LEDS; Auditivas utilizando transductores piezo-electicos; entre otros.

Display LCD: HITACHI HD44780

Display LCD: HITACHI HD44780

¿Qué es un LCD?

Las pantallas LCD (Liquid Cristal Display) son una de las formas más sencillas y económicas de dotar de un display a un autómata.

El Hitachi HD44780 es uno de los controladores de LCDs más ampliamente extendidos por su sencillez y bajo precio.

El HD44780 está diseñado para controlar LCDs monocromos de hasta 80 caracteres alfanuméricos y símbolos. También dispone de una pequeña memoria RAM para configurar nuestros propios caracteres o dibujos.

Las pantallas LCD con el controlador HD44770 se fabrican en distintos tamaños, siendo comunes 16×02 (16 caracteres en 2 líneas), 20×02, 20×04 y 40×02.

Las pantallas LCD disponen de retroiluminación trasera en azul o en verde. El contraste puede ser variado conectando un potenciómetro al LCD.

Conectar directamente un LCD a Arduino requiere una gran cantidad de pines. Es aconsejable emplear un adaptador a bus I2C.

Te puede interesar

LEDs

LEDs

¿Qué es un LED?

Un LED es un diodo emisor de luz, es decir, un tipo particular de diodo que emite luz al ser atravesado por una corriente eléctrica.

Recodemos que diferenciamos entre dispositivos eléctricos y electrónicos. Los dispositivos eléctricos engloban resistencias, condensadores y bobinas, e integran el campo de electricidad.

Los dispositivos electrónicos, surgen del uso de materiales semiconductores, y dan lugar al campo de la electrónica.

Un diodo es una unión de dos materiales semiconductores con dopados distintos. Sin entrar en detalles, esta diferencia de dopado hace que genere una barrera de potencial, que como primera consecuencia hace que el paso de corriente en uno de los sentidos no sea posible.

Aquí tenemos la primera característica de los diodos, tienen polaridad, es decir, solo dejan pasar la corriente en un sentido. Por tanto, tenemos que conectar correctamente la tensión al dispositivo.

diagrama
El terminal largo (ánodo) debe ser conectado a V+ positivo, y el corto (cátodo) a V- negativo .

La otra consecuencia de la barrera de potencial es que, incluso conectando el dispositivo con la polaridad correcta, a baja tensión los electrones siguen sin poder atravesar el dispositivo.
Esto ocurre hasta alcanzar un cierto valor de tensión que llamamos tensión de polarización directa (Vd), que depende del tipo de diodo.

A partir de esta tensión decimos que el diodo está polarizado y la corriente puede atravesarlo libremente con una resistencia casi nula.
La tensión que realmente está alimentando al diodo es la diferencia entre la tensión aplicada, y la tensión de polarización directa del diodo.

Como vemos, en el momento que superamos la tensión de polarización, y dado que la resistencia del diodo es muy pequeña, se genera una gran corriente que destruirá el diodo. Por ese motivo, necesitamos una resistencia que limite la cantidad de corriente que circula por el diodo.

En resumen, si no ponemos una resistencia, el sistema solo tiene dos estados.

  1. Si la tensión aplicada es inferior a Vd, el LED no emite luz.
  2. Si la tensión aplicada es superior a Vd, el LED emite luz.

¿Por qué un LED enciende conectando a una salida de Arduino directamente?

El LED funciona porque Arduino tiene una limitación de 20mA en sus salidas. Esta limitación hace que el LED no se funda, aunque realmente se está comportando como si fuera un cortocircuito. Simplemente Arduino no puede dar más corriente.

Te puede interesar

LEDs ws2812b - Neopixel

LEDs ws2812b - Neopixel

Introducción

Los WS2811, WS2812 y WS2812B son LED que disponen de lógica integrada, por lo que es posible variar el color de cada LED de forma individual (a diferencia de las tiras RGB convencionales en las que todos los LED cambian de color de forma simultánea).

A los LED WS2812B también se les denomina NeoPixel

Están basados en el LED 5050, llamado así porque tiene un tamaño de 5x5 mm. Es un LED de bajo consumo y alto brillo, que incorpora en un único encapsulado los 3 colores RGB.

La novedad del WS281xx es añadir un integrado dentro de cada LED, que permite acceder a cada pixel de forma individual.

Esto abre la puerta a un sinfín de aplicaciones y combinaciones, que van desde dotar de iluminaciones distintas zonas con una única tira, animaciones complejas, o incluso generar pantallas enteras de alta luminosidad.

package
Presentación de los NEOPIXEL

Te puede interesar

Matriz LED: MAX7219

Matriz LED: MAX7219

Introducción

Una matriz LED es un display formado por múltiples LED en distribución rectangular. Existen distintos tamaños, siendo el más habitual los cuadrados de 8×8 LED.

Podemos combinar varios módulos para formar un display mucho mayor. En estos display podemos mostrar textos, dibujos o animaciones, como desplazar un texto (scroll).

Encender una matriz de LED directamente con Arduino requiere emplear una gran cantidad de pines, lo cuál supondría un gran desperdicio de recursos.
Por este motivo, lo normal es que siempre empleemos un controlador específicamente diseñado para esta función.

Un controlador habitualmente empleado por ser barato y sencillo es el integrado MAX7219.

package
Presentación de la Matriz LED 8x8

Te puede interesar

Display OLED 0.96″

Display OLED 0.96″

Introducción

Las OLED son uno de los tipos de display disponibles para emplear en nuestros proyectos de electrónica y Arduino.

El OLED (Organic Light-Emitting Diode) es un tipo de LED en el que la capa emisiva es está formada por un compuesto orgánico que emite luz en respuesta a la electricidad.

Al igual que el resto de tipos de displays, los OLED necesitan un controlador específico que convierta los datos recibidos en las señales electrónicas para controlar el display.

Los displays OLED de 0.96″ de esta guía vienen listos para conectar a Arduino. Estos displays incorporan el controlador SDD1306 y tienen un tamaño muy reducido de 25mm x 14mm. Son monocromas y tienen una resolución de 128×64 pixels.

oled 0.96 presentacion
display oled de 0.96″

Las pantallas OLED tienen la ventaja de tener un consumo muy bajo, en torno a 20mA, dado que solo se enciende el pixel necesario y no requieren de backlight. Esto es especialmente interesante en aplicaciones que funcionan con baterías.

Además, tienen una mejor visibilidad en ambientes luminosos, como bajo el sol. Aunque el pequeño tamaño de estas pantallas OLED de 0.96″ pueden ser un problema para su correcta visualización.

La comunicación puede realizarse, según modelos, por bus SPI o por bus I2C por lo que es sencillo obtener los datos medidos. La tensión de alimentación admite voltajes de 3.3V y 5V.

Te puede interesar

Buzzer: Emisión de Sonidos

Buzzer: Emisión de Sonidos

Introducción

Un buzzer pasivo es un dispositivo que permiten convertir una señal eléctrica en una onda de sonido. Estos dispositivos no disponen de electrónica interna, por lo que tenemos que proporcionar una señal eléctrica para conseguir el sonido deseado.

En oposición, los buzzer activos disponen de un oscilador interno, por lo que únicamente tenemos que alimentar el dispositivo para que se produzca el sonido.

Pese a tener la complejidad de proporcionar y controlar nosotros la señal eléctrica, los buzzer pasivos y de los altavoces tienen la ventaja de que podemos variar el tono emitido modificando la señal que aplicamos, lo que nos permite generar melodías.

¿Cómo funciona un buzzer?

Técnicamente tanto buzzers como altavoces son transductores electroacústicos, es decir, dispositivos que convierten señales eléctricas en sonido.
La diferencia entre ambos es el fenómeno en el que basan su funcionamiento.

Los buzzer son transductores piezoeléctricos. Los materiales piezoeléctricos tiene la propiedad especial de variar su volumen al ser atravesados por corrientes eléctricas.

Un buzzer aprovecha este fenómeno para hacer vibrar una membrana al atravesar el material piezoeléctrico con una señal eléctrica.

esquema
Los materiales piezoeléctricos varían su volumen al ser atravesados por corrientes eléctricas.

Los buzzer son dispositivos pequeños y compactos, con alta durabilidad, y bajo consumo eléctrico. En su contra, la calidad de sonido es reducida.

Te puede interesar

Buzzer o Parlante: Reproducir sonidos con arduino

Buzzer o Parlante: Reproducir sonidos con arduino

¿Qué es un Buzzer o un Altavoz?

Un buzzer pasivo o un altavoz son dispositivos que permiten convertir una señal eléctrica en una onda de sonido. Estos dispositivos no disponen de electrónica interna, por lo que tenemos que proporcionar una señal eléctrica para conseguir el sonido deseado.

En oposición, los buzzer activos disponen de un oscilador interno, por lo que únicamente tenemos que alimentar el dispositivo para que se produzca el sonido.

Pese a tener la complejidad de proporcionar y controlar nosotros la señal eléctrica, los buzzer pasivos y de los altavoces tienen la ventaja de que podemos variar el tono emitido modificando la señal que aplicamos al altavoz, lo que nos permite generar melodías.

¿Cómo funciona un Buzzer y un Altavoz?

Técnicamente tanto buzzers como altavoces son transductores electroacústicos, es decir, dispositivos que convierten señales eléctricas en sonido. La diferencia entre ambos es el fenómeno en el que basan su funcionamiento.

Los buzzer son transductores piezoeléctricos. Los materiales piezoeléctricos tiene la propiedad especial de variar su volumen al ser atravesados por corrientes eléctricas.

Buzzer: funcionamiento

Un buzzer aprovecha este fenómeno para hacer vibrar una membrana al atravesar el material piezoeléctrico con una señal eléctrica.

Buzzer: funcionamiento

Los buzzer son dispositivos pequeños y compactos, con alta durabilidad, y bajo consumo eléctrico. Por contra, la calidad de sonido es reducida.

Por su parte, un altavoz basa su funcionamiento en el magnetismo. Se dispone de un imán permanente que, normalmente, es fijo a la carcasa. Por otro lado, una bobina móvil se acopla a una membrana flexible.

Altavoz: funcionamiento

Al hacer circular una corriente por la bobina el campo magnético resultante genera una atracción con el imán, haciendo vibrar la membrana.

Los altavoces, por presentan una mejor calidad de sonido pero, en general, necesitan mayor potencia y es necesario disponer de dispositivos de amplificación para su uso.

Esquema de montaje

Si usamos una de las placas comerciales para pequeños proyectos y hobbies, que incorporan la electrónica y terminales necesarios, la conexión con Arduino es realmente sencilla. Simplemente alimentamos el módulo conectando Vcc y GND a Arduino, y la entrada de señal a cualquier salida digital de Arduino.

El esquema de conexión visto desde el componente sería el siguiente:

Buzzer: Esquema de montaje

Mientras que el esquema de conexión visto desde Arduino quedaría así:

Buzzer: Conexión a Arduino

Si queremos usar un altavoz, que consumen mayor corriente de la que puede proporcionar Arduino, tendremos que proporcionar una etapa de amplificación.

Altavoz: Esquema de montaje

Aunque en general, en estos casos lo normal es que empleemos un amplificador específico diseñado para audio, en lugar de hacerlo nosotros mismos. Conseguiremos mejores niveles de calidad e incluso un menor coste.

Código de ejemplo

Arduino dispone de dos funciones que nos permiten generar fácilmente señales eléctricas para convertir en sonido, usando cualquiera de las salidas digitales disponibles.

Estas funciones son tone() y noTone() y, como su nombre indican, permiten generar o detener la señal del tono en un pin.


tone(pin, frecuencia); //activa un tono de frecuencia determinada en un pin dado
noTone(pin);           //detiene el tono en el pin


La función tone() también permite especificar la duración del sonido generado.


tone(pin, frequencia, duracion);  //activa un tono de frecuencia y duracion determinados en un pin dado


Pese a su sencillez, al usar las funciones para la generación de tone tenemos que asumir importantes limitaciones:

  • La función Tone emplea el Timer 2, por lo que mientras este funcionando no podremos usar las salidas PWM en los pines 3 y 11 en Arduino Nano y Uno (pines 9 y 10 en Arduino Mega).
  • No podemos usar la función tone() en dos pines de forma simultánea. Deberemos apagar el tono con la funcion noTone() antes de poder usarlo en otro pin.
  • Los rangos de la función tone son de 31 Hz a 65535 Hz.

El siguiente código muestra el uso de estas funciones estas funciones en un ejemplo simple, en el que empleamos el buzzer o altavoz conectado en el Pin9 para generar una función de 440Hz durante un segundo, pararlo durante 500ms, y finalmente un tono de 523Hz durante 300ms, para repetir el programa tras una pausa de 500ms.


const int pinBuzzer = 9;
 
void setup() 
{
}
 
void loop() 
{
  //generar tono de 440Hz durante 1000 ms
  tone(pinBuzzer, 440);
  delay(1000);
 
  //detener tono durante 500ms  
  noTone(pinBuzzer);
  delay(500);
 
  //generar tono de 523Hz durante 500ms, y detenerlo durante 500ms.
  tone(pinBuzzer, 523, 300);
  delay(500);
}

El siguiente, también muy básico, emplea un array con frecuencias que recorremos secuencialmente para realizar un barrido que aproxima las distintas notas musicales.


const int pinBuzzer = 9;
 
const int tonos[] = {261, 277, 294, 311, 330, 349, 370, 392, 415, 440, 466, 494};
const int countTonos = 10;
   
void setup()
{ 
}
 
void loop()
{
  for (int iTono = 0; iTono < countTonos; iTono++)
  {
   tone(pinBuzzer, tonos[iTono]);
   delay(1000);
  }
  noTone(pinBuzzer);
}

Display OLED: Conectar Arduino a una pantalla

Display OLED: Conectar Arduino a una pantalla

¿Qué es una pantalla OLED?

Las OLED son uno de los tipos de pantalla disponibles para emplear en nuestros proyectos de electrónica y Arduino.

Un OLED (Organic light-emitting diode) es un tipo de LED en el que la capa emisiva es está formada por un compuesto orgánico que emite luz en respuesta a la electricidad.

Al igual que el resto de tipos de pantallas, las OLED necesitan un controlador específico que convierta los datos recibidos en las señales electrónicas para controlar la pantalla.

En el campo de la electrónica casera, se comercializan unas pequeñas pantallas OLED de 0.96″ listas para conectar a Arduino. Estas pantallas incorporan el controlador SDD1306 y tienen un tamaño muy reducido de 25mm x 14mm. Son monocromas y tienen una resolución de 128×64 pixels.

Las pantallas OLED tienen la ventaja de tener un consumo muy bajo, en torno a 20mA, dado que solo se enciende el pixel necesario y no requieren de backlight. Esto es especialmente interesante en aplicaciones que funcionan con baterías.

Además, tienen una mejor visibilidad en ambientes luminosos, como bajo el sol. Aunque el pequeño tamaño de estas pantallas OLED de 0.96″ pueden ser un problema para su correcta visualización.

La comunicación puede realizarse, según modelos, por bus SPI o por bus I2C por lo que es sencillo obtener los datos medidos. La tensión de alimentación admite voltajes de 3.3V y 5V.

Te puede interesar

Formas de Pago
Metodos de Envio
Envíos a
todo el país
Soporte
Soporte
en línea
d1-mini-top

Wemos D1 Mini

Sin voto
sonoff_basic_-_wifi_wireless_smart_switch

Sonoff Basic - WiFi Smart Switch

Sin voto
sonoff_th10

Sonoff TH10/TH16

Sin voto
sonoff_rf_1_1_1

Sonoff RF - WiFi + RF Smart Switch

Sin voto
4ch_pro_3

Sonoff 4CH Pro - R2

Sin voto
pow-r2-04_2

Sonoff Pow R2

Sin voto
sonoff_th_10_th16_am2301-1

Sonoff Sensor - Si7021 - Temperatura Humedad

Sin voto
im121218034_1

Sonoff RF Remote Control - 433MHz 4-Button

Sin voto