Archivo de la categoría: Ejemplos

Emisor IR

Con el bloque Emisor IR de ArduinoBlocks podemos enviar fácilmente códigos de control remoto por infrarrojos. Sólo necesitamos saber el código que queremos enviar y el protocolo utilizado.

El bloque de emisor IR soporta los protocolos más utilizados (casi todas las marcas utilizan uno de estos protocolos)

De esta forma podemos controlar remotamente dispositivos desde nuestro Arduino simulando un mando a distancia:  control del aire acondicionado, control de la TV, …

Ejemplo:  Simular tecla de mando ON/OFF para TV Samsung

Código ON/OFF:  0xE0E040BF

Lo convertimos de Hexadecimal a Decimal:

https://www.binaryhexconverter.com/hex-to-decimal-converter

Hex: E0E040BF   ->  Dec: 3772793023

El protocolo es Samsung y utiliza 32 bits, por tanto el bloque se usaría así:

Proyecto de ejemplo:

Crear un mando a distancia con un Keypad y un emisor de IR

 

¿Cómo conseguir los códigos de los mandos a distancia?

Para simular la pulsación de la tecla de un mando debemos saber: protocolo utilizado, código enviado, número de bits (longitud en bits del código)

Para ello podemos utilizar un sensor IR (receptor conectado al pin 11 de Arduino) y un de ejemplo que viene con la librería IRemote. Este es algo más avanzado y debemos usar el Arduino IDE:

Librería: https://github.com/z3t0/Arduino-IRremote

Instalar en Arduino IDE (importar ZIP) y abrir el ejemplo “IRrecvDump

En el monitor serie podemos ver la información de las teclas detectadas:

En este caso se ha detectado el código HEX: 212FD02F (en decimal: 556781615)  / protocolo NEC / 32 bits

Podriamos luego enviarlo desde ArduinoBlocks de esta forma:

 

+Info

http://www.arduinoblocks.com

http://www.arduinoblocks.com/web/site/doc

 

Compartir

Bluetooth con Arduino MEGA

El módulo Bluetooth es uno de los más utilizados para poder enviar o recibir información remotamente a dispositivos como móviles, tablets, …

Módulo HC-06

Al igual que en Arduino UNO, en Arduino MEGA también podemos usar el módulo Bluetooth con dos pines cualesquiera. Para ello ArduinoBlocks implementa internamente un puerto serie emulado por software (el módulo HC-06 se comunica con Arduino por conexión serie igual que el Arduino con el PC con la consola)

Pero a diferencia de Arduino UNO, en el modelo MEGA tenemos más puertos serie integrados en el hardware Arduino MEGA. Si utilizamos estos pines en concreto internamente utilizaremos la conexión implementada por Hardware lo que reduce el tamaño del programa y esta conexión será más óptima que cuando se emula por software.

Pines donde conectar el Bluetooth para usar uno de los puertos serie extra en Arduino MEGA

Serie 1 -> Bluetooth RX al pin 18 de Arduino MEGA / Bluetooth TX al pin 19  de Arduino MEGA

Serie 2 -> Bluetooth RX al pin 16 de Arduino MEGA / Bluetooth TX al pin 17 de Arduino MEGA

Serie 3 -> Bluetooth RX al pin 14 de Arduino MEGA / Bluetooth TX al pin 15 de Arduino MEGA


Ejemplo 1

Conexión bluetooth en pines 2 y 3  (conexión serie emulada por software)

Desde el móvil con una aplicación tipo “Bluetooth terminal” o similar visualizamos los datos recibidos:


Ejemplo 2

Conexión en los pines 18 y 19 (puerto serie 1 implementado en el Hardware )

y el funcionamiento es exactamente el mismo


La diferencia en el código generado es que en el ejemplo 1 se utiliza la librería SoftwareSerial para implementar un puerto serie por software (esto utiliza más recursos y el programa ocupa más memoria)

#include <SoftwareSerial.h>
SoftwareSerial bt_serial(3,2);

En el caso del ejemplo 2 se implementa utilizando HardwareSerial y de esta forma se optimiza el funcionamiento interno.

#include <HardwareSerial.h>
HardwareSerial &bt_serial=Serial1;
Compartir

WS2812 / NeoPixel – Led Matrix

Una de las maneras más rápidas y sencillas de trabajar con leds ws2812 es con la shield 40 leds lista para conectar a nuestro Arduino.

O con una matriz de leds fácil de conectar a la placa Arduino:

Para manejar todos estos leds RGB gracias a la magia de los leds inteligentes ws2812 sólo necesitamos un pin

Utilizando la shield indicada al principio, utilizaremos el pin 13 y un tamaño de 40 leds (8×5):

ArduinoBlocks nos permite fijar el color de cada led RGB de una forma sencilla, ya sea indicando el número de píxel linealmente o de forma matricial indicando las coordenadas x,y

Además podemos definir los gráficos a visualizar con el editor y volcar los datos directamente en la matriz de leds:

Con todo esto realizamos un programa de demostración:

http://www.arduinoblocks.com/web/project/14849

Video en funcionamiento:

+Info:

http://www.arduinoblocks.com

Documentación & Libros:

http://www.arduinoblocks.com/web/site/doc

Colaborador & Distribuidor oficial Keyestudio:

Innova Didactic

 

 

Compartir

Control de acceso con RFID

Las tarjetas RFID nos permiten crear sencillos sistemas de identificación por proximidad.

El lector más común para Arduino es el Mifare MFRC522 (con conexión SPI):

(puede leer tipo tarjetas  o tipo llaveros)

La conexión del módulo a Arduino por SPI sería:

Los bloques para utilizar este módulo en ArduinoBlocks son muy sencillos:

– Iniciar el módulo MFRC522: A parte de las conexiones SPI (11,12,13) debemos indicar los pines donde conectamos el CS (o SS) y el RESET. Esta es la configuración para el esquema de arriba:

-El siguiente bloque devuelve un valor lógico de verdadero si se detecta una NUEVA tarjeta en el lector. El bloque devuelve falso si no se detecta ninguna tarjeta o se ha leído y expulsado la actual (en ese caso si la queremos volver a detectar hay que alejarla y volvera a acercar):

-Cada tarjeta lleva un identificador diferente grabado de fábrica que nos permite identificar a una tarjeta del resto. Con este bloque obtenemos una cadena de texto con el código (hexadecimal) de la tarjeta leída. Si no se puede leer la tarjeta devolverá un text vacio.

IMPORTANTE: Una vez leída la tarjeta se expulsa, por lo que no se volverá a poder leer o detectar como nueva hasta que la alejemos y la volvamos a acercar.

Ejemplo de programa para leer códigos de tarjetas y mostrarlos por la consola serie:

Ejemplo de lectura y visualización por la consola serie:

En este caso el código de la tarjeta leída es: 77bb203b

Podemos hacer un programa para controlar el acceso de las siguiente forma:

Video en funcionamiento:


+Info: www.arduinoblocks.com

Libro oficial ArduinoBlocks:

https://www.amazon.es/s/field-keywords=arduinoblocks

http://www.arduinoblocks.com/shop/libros/7-libro-arduinoblocks.html


TIENDA OFICIAL ARDUINOBLOCKS (proveedor oficial Keyestudio)

CUPÓN 5% DESCUENTOABLOCKS18

 

 

Compartir