Settings
Light Theme
Dark Theme

82. Arduino MKR1000 y el protocolo I2C

82. Arduino MKR1000 y el protocolo I2C
May 30, 2016 · 24m 7s

¿Por qué queremos conectar dos Arduinos? Puede haber varias razones para conectar dos o más Arduinos entre si, ampliar las entradas/salidas analógicas y/o digitales, dar más funcionalidad a nuestro proyecto...

show more
¿Por qué queremos conectar dos Arduinos? Puede haber varias razones para conectar dos o más Arduinos entre si, ampliar las entradas/salidas analógicas y/o digitales, dar más funcionalidad a nuestro proyecto pero quizás, la más interesante sea poder utilizar Arduino MKR1000 como enlace WiFi. Todo esto lo podemos hacer mediante el protocolo I2C de una manera muy sencilla.

Esta semana me ha llegado una pregunta de un oyente y alumno del Campus, Javier Tallón. Me preguntaba cómo conectar un Arduino MEGA a una red WiFi. El había adquirido un módulo ESP8266 pero no encontraba la manera de poder conectar estos dos dispositivos por su dificultad. Su idea es poder controlar varias líneas de media potencia de su casa. El problema es que no tiene mucha experiencia en programación y, en cuanto nos salimos de tecnologías plug and play como Arduino, es cuando empezamos a sufrir.

No me malinterpretes, el módulo ESP8266 es un dispositivo muy bueno, barato y que nos da un rendimiento y funcionalidad excelente. La pega es que hay que tener conocimientos medios de programación, comunicación y electrónica.

Por lo tanto mi respuesta fue clara, si realmente quieres hacerlo sin dolores de cabeza, compra un Arduino MKR1000. Esto si que es tecnología plug and play, solo tienes que ver el curso donde explico cómo lo puedes configurar, con solo dos lecciones está listo para usar.

La otra cuestión es cómo comunicar un Arduino MKR1000 con un MEGA. Esto lo podemos hacer muy fácilmente gracias al protocolo de comunicación I2C, pero esto lo veremos más adelante.

Ahora lo que veremos es una comparativa extraída del blog Pensando con Lógica de Jorge Aranda. Hace tiempo escribió un artículo donde explica las diferencias técnicas técnicas entre estos dos dispositivos cuando trabajan de manera autónoma es decir, sin conectar el ESP a una placa de Arduino. Aquí te voy a hacer un resumen:

Precio

ESP: aprox 6€
MKR1000: 31€
Tamaño

El Arduino MKR1000 es 3 veces mayor que un módulo ESP. Ojo con esto si queremos hacer un proyecto final pequeño.
Alimentación

ESP: 3,3V - 12 mA
MKR1000: 5V - 7 mA
Frecuencia del reloj (importante para la velocidad de procesado del código)

ESP: 80 MHz
MKR1000: 48 MHz
Memorias Flash / SRAM / EEPROM

ESP: 512 Kb / 64 Kb / No tiene
MKR1000: 256 kB / 32 Kb / No tiene
Pines digitales/analógicos

ESP: 11 Digitales (11 PWM) + 1 analógico
MKR1000: 8 Digitales (4 PWM) + 7 analógicos
Programación

ESP: es más complicado de programar, necesitamos conectar a un puerto USB/Serie a través de otros componentes, necesita alimentación y configurar el entorno de desarrollo.
MKR1000: a través del IDE de Arduino configurándolo y con el lenguaje nativo de Arduino.
Yo no voy a entrar en el debate de si uno es mejor que otro, dependerá de los requisitos técnicos de nuestro proyecto. Si que puedo decir que es recomendable tener conocimientos medios de electrónica, programación y comunicación para enfrentarse a un módulo ESP.

Si lo que queremos hacer es que el módulo ESP se utilice como enlace para conectar a la red WiFi, lo podemos hacer a través del monitor serie, haciendo las conexiones pertinentes y con comandos AT.

La solución propuesta a Javier es utilizar el Arduino MKR1000 como un enlace WiFi. Para ello tenemos que conectar los dos Arduinos mediante el protocolo de comunicaciones estándar I2C, del cual ya te he hablado en el artículo donde explico como hacerlo.

Gracias a este protocolo no solo podemos conectar uno o varios Arduinos, también podemos añadir al bus de comunicación sensores y otros dispositivos como una pantalla LCD.

Recurso del oyente

El recurso del oyente nos lo ha enviado Javier Tallón. Se trata de un sistema para gestionar nuestros dispositivos domóticos, Domoticz. Es un software de código abierto escrito en C++, muy ligero y multiplataforma, se puede ejecutar en Raspberry Pi, Windows, Linux, Mac OS X e incluso en un servidor NAS de Synology.

El core o corazón trabaja con un proceso en background. No nos enteramos ni que está instalado. Para acceder lo haremos a través de una interfaz basada en la web y escrita en HTML5 y CSS3.

Este sistema nos sirve para configurara y supervisar dispositivos cómo luces, interruptores, sensores de temperatura, lluvia, viento, ultravioleta y un largo etc...

Dispone de un sistema de notificaciones a cualquier dispositivo móvil. Como dicen ellos, es totalmente gratis, solo tienes que invertir en hardware.

Soporta una larga lista de protocolos entre los que destacan X10, Z-Wave, Apple Homekit con soporte para Siri y Bluetooth Audio.

Y hasta aquí el programa de hoy, recuerda que nos puedes valorar en las diferentes plataformas de podcast iVoox, iTunes y en Spreaker, nos harás un gran favor y así podremos llegar a más gente.
show less
Information
Author La tecnología para todos
Website -
Tags

Looks like you don't have any active episode

Browse Spreaker Catalogue to discover great new content

Current

Looks like you don't have any episodes in your queue

Browse Spreaker Catalogue to discover great new content

Next Up

Episode Cover Episode Cover

It's so quiet here...

Time to discover new episodes!

Discover
Your Library
Search