• Arduino

    Arduino (Genuino a nivel internacional hasta octubre 2016), es una compañía de hardware libre y una comunidad tecnológica que diseña y manufactura placas computadora de desarrollo de hardware y software, compuesta respectivamente por circuitos impresos que integran un microcontrolador y un entorno de desarrollo (IDE), en donde se programa cada placa.
  • Internet de las cosas (en inglés, Internet of things, abreviado IoT) es un concepto que se refiere a la interconexión digital de objetos cotidianos con internet. Alternativamente, Internet de las cosas es la conexión de Internet con más “cosas u objetos” que personas.
  • Envia alertas por E-mail usando Arduino, Python y un sensor PIR.
  • Crea un BOT de Telegram que interactua con Arduino.
  • Blynk es una plataforma compatible con iOS y Android para controlar Arduino y Raspberry Pi. Es un panel digital donde puedes crear una interfaz gráfica para tu proyecto simplemente arrastrando y soltando widgets.

lunes, 29 de mayo de 2017

ESP8266 [Flashear el Firmware]


Que tal gente!!!

En este pequeño aporte les voy a mostrar como flashear nuestro ESP8266-01 con algún firmware, en este caso el "0.92", para configurarlo por medio de comandos AT.

Para esta practica utilizaremos los siguientes materiales:

1 Arduino UNO
1 Modulo Wi.Fi ESP8266-01
Protoboard
Cables para conexion

Nuevamente vamos a utilizar el Arduino como un convertidor USB a Serial, para esto haremos las conexiones que les muestro a continuación en la siguiente imagen:

También les dejo una tabla de las conexiones:

ESP8266Arduino
VCC
3.3V
GND
GND
TX
TX
RX
RX
CH-PD
3.3V
GPIO0
GND

Si se pudieron dar cuenta el pin Reset de Arduino lo conectaremos a tierra para "des-habilitar" el microcontrolador y así trabajar solo con la comunicación serial.

Al conectar el pin GPIO0 de el ESP a tierra tendremos que desconectar y volver a conectarlo de la corriente así entrara en modo de programación y le podremos cargar el firmware de nuestra elección.

Después de tener las conexiones hechas vamos a abrir el programa "ESP8266 Flash Downloader"(les dejare los links de descarga al final del post), y nos aparecerá esta ventana.
Aquí solo tendremos que configurar los siguientes parámetros:


1.- Damos clic al botón Bin para elegir el archivo de firmware deseado, en este caso el BIN 0.92(también dejare el link de descarga al final).

2.- Escribimos el puerto COM donde tenemos conectado Arduino, en mi caso es el 10.

3.- Cambiamos el texto que aparece por este 0x40000080 (no pregunten por que XD).
Ya solo damos clic al botón "Download" y si todo va bien empezara a flasher el ESP.

Al llegar a 99% nos mostrara un error como se ve en la siguiente imagen.

No hay que tomarle importancia por que ya tendremos el ESP con el firmware cargado!!!

Para hacer la prueba abrimos el IDE de Arduino y vamos directamente al monitor Serial, teniendo en cuenta de configurarlo como se muestra en la siguiente imagen.

Si todo va bien al escribir AT y dar un enter nos debe regresara un "OK".


Descargas:

Firmware.
https://drive.google.com/file/d/0B6h_FnRyM8s5enAtbjNXZ0ZOVUE/view

ESP Flash Downloader.
https://drive.google.com/open?id=0B6h_FnRyM8s5RVQ2OEZlNDNjRlU

Hasta aquí este aporte. Espero les sea útil y comenten cualquier duda que tengan!!!

Hasta la próxima colegas!!!

miércoles, 17 de mayo de 2017

Arduino + ESP8266 [Usando los Pines de Arduino]


Que tal Colegas!!!

En este aporte seguiremos practicando con el modulo Wi-Fi ESP8266.

A raíz de algunos comentarios en la entrada anterior de Arduino + ESP8266 en donde me preguntaban como hacer la practica pero utilizando los pines de Arduino, decidí hacer este nuevo post!!!

Esta vez si utilizaremos los pines de el Arduino para activar 2 Leds. Al momento de oprimir unos botones que tendremos en nuestra pagina Web.
También haremos la pagina con un poco mas de estilo utilizando Bootstrap(en este tema no entrare en detalles).

Para ver las características de el modulo y aprender a cargar el sketch utilizando Arduino pásate por ACÁ.

Los materiales que usaremos en esta practica son:
1 Arduino UNO.
1 Modulo ESP8266-01.
2 Leds Cualquier color.
Protoboard
Cables para conexión.

Para esta practica vamos a usar 2 sketch's, uno para el ESP8266 y el otro para Arduino.

Primero vamos a cargar el sketch a Arduino de la manera tradicional, sin tener conectado nada a el.
Este es el código:


Después de hacer lo anterior cargamos el código a el ESP8266.
A continuación les muestro el esquema de conexión para cargar el código a el ESP:
De esta manera estamos usando el Arduino solo como convertidor serial a TTL para cargar el codigo al ESP.
Código:


Después de cargar el código a el ESP y si todo va bien, abran el monitor serial y deberían ver esto:

Ahora abrimos un navegador web y copiamos la dirección que nos indico en el monitor serial.
Tendrán que ver esto:
Muy bien!!! Esta es la interfaz que nos permitirá encender los leds conectados a los pines de Arduino.
Ahora solo nos falta modificar la conexión que ya tenemos echa para enviarle los datos a Arduino por el puerto serie. La conexión queda de esta forma:

Si se pudieron dar cuenta, ya no tenemos conectado el pin de Reset de Arduino a tierra, esto por que ahora si vamos a utilizar el Arduino de manera convencional.

Ahora si, a probar nuestra interfaz web!!!

Como es costumbre les dejo un vídeo de el funcionamiento.

El retardo que se ve al encender los leds solo pasa en el vídeo, cuando ustedes hagan la practica se darán cuenta que la comunicación es al instante.

Hasta aquí este aporte, espero les quede claro los pasos a seguir y de no ser así escriban sus dudas en los comentarios y a la brevedad posible estaré resolviéndolas.

Hasta la proxima Arduineros.

viernes, 12 de mayo de 2017

Arduino + Wii Nunchuck [Servo Motores]


Que tal mis amigos Arduineros!!!!

Ahora les traigo una practica la cual hice hace mucho tiempo pero no la había escrito.

Se trata de  el uso de el control de Nintendo Wii, el Wii Nunchuck con Arduino de una manera muy fácil gracias a la librería "ArduinoNunchuk". Si no sabes como instalar librerías externas pásate por AQUI!!.

Los materiales que ocuparemos en esta practica son:
1 Arduino UNO.
1 Wii Nunchuk.
1 Estructura "Pan Tilt" para servos como la que se muestra aquí.
2 Servo motores Sg90.
Cables para Conexión.
Nota: Yo usare una cámara USB que monte a la estructura solo para el ejemplo.

Conexión.

Algo de información sobre el Wii Nunchuk(Wikipedia):

Hardware

La siguiente tabla describe las entradas de un Nunchuk, el hardware que se utiliza para controlar la entrada, y la forma en que se monta en la placa de circuito.
InputHardwareMontaje
Botón Cinterruptor de membranaplaca hija, a través de agujeros
Botón Zinterruptor de membranaplaca hija, a través de agujeros
Joystick Xpotenciómetro axial de 30KΩa través de agujeros
Joystick Ypotenciómetro axial de 30KΩa través de agujeros
AcelerómetroST Microelectronics LIS3L02ALMontado en superficie, arriba
MicrocontroladorFNURVL 405 849KM (36-pin)Montado en superficie, abajo
Chips FNURVL se han encontrado presentes en varias versiones del mando clásico de la Super Nintendo Entertainment System y en el Classic Controller de la Wii.
Como ya lo vimos el Nunchuk tiene integrado un acelerometro y 2 potenciometros que se encargarán de enviarnos las "coordenadas" a Arduino y visualizarlas en el monitor serial.
El código que les muestro a continuación solo sirve para mostrarnos los datos en el monitor serial.

Después de cargarlo al Arduino se nos mostrara lo siguiente:

Ahora podemos hacer lo que queramos con estos datos.
Cargamos el sketch que les dejo a continuación para empezar a manipular los servos con
El resultado final se muestra en el siguiente video:

Espero les guste este post, y de ser así no olviden darle un like, compartir y dejar sus comentarios en caso de que tengan alguna duda.
Hasta pronto colegas!!!

martes, 9 de mayo de 2017

Instalar librerías externas [Arduino IDE]

En este pequeño aporte les voy a mostrar como instalar una librería externa en el IDE de Arduino, en muy pocos pasos!!!

Paso 1:
En la ventana principal de el IDE damos clic en el menú Programa - Incluir Liberia - Gestionar Librerías.

Paso 2:
Seguido de esto nos saldrá una ventana en la cual tendremos que escribir el nombre de la librería que deseamos agregar, en este caso sera "ArduinoNunchuk", nos saldrá solo una y damos clic en "Instalar"(en mi caso no aparece pues ya la tengo instalada).

Paso 3:
Cuando termine de instalarse solo damos clic en "Cerrar" y ya tendremos nuestra librería instalada y lista para mandarla a llamar dentro de nuestro sketch utilizando "#include "NombreLibreria.h", o bien desde el menú Programa - Incluir Liberia, y desplazarnos en el sub-menú que aparece hasta encontrar la librería que queremos usar.

Listo!!!
Hasta aquí esta pequeña pero útil explicación.
Espero les sirva!!!
Hasta pronto Colegas.

martes, 2 de mayo de 2017

Arduino + ESP8266 [Configuración y Server]


Hola queridos Arduineros!!!!
En esta ocasión les mostrare como configurar el modulo Wi-Fi ESP8266 y a montar un pequeño Server el cual podrá interactuar con nuestro modulo, todo esto con por medio de Arduino y su IDE.

Les dejo una breve descripción de el Modulo así como sus características principales.

Descripción

El Módulo Wifi Serial ESP8266 ofrece una solución completa y muy económica para conexión de sistemas a redes Wi-Fi, permitiendo al diseñador delegar todas las funciones relacionadas con Wi-Fi y TCP/IP del procesador que ejecuta la aplicación principal. El módulo wifi serial ESP8266 es capaz de funcionar como “adaptador de red” en sistemas basados en microcontroladores que se comunican con el a través de una interfaz UART.
Se trata posiblemente del módulo wifi serial más económico en el mercado y que además concentra las características mínimas necesarias para poder utilizarse sin problemas, ya que  la documentación en ingles y español de este módulo ya esta siendo desarrollada y comienza a formarse una verdadera comunidad alrededor de el. Usalo como una alternativa barata y confiable para habilitar tus productos y prototipos para la era del Internet de las cosas (IoT).

Características del módulo Wifi Serial ESP8266:

  • Protocolos soportados: 802.11 b/g/n
  • Wi-Fi Direct (P2p), Soft Access Point
  • Stack TCP/IP integrado
  • PLL, reguladores y unidades de manejo de energía integrados
  • Potencia de salida: +19.5dBm en modo 802.11b
  • Sensor de temperatura integrado
  • Consumo en modo de baja energía:menor a 10uA
  • Procesador integrado de 32 bits, puede ser utilizado como procesador de aplicaciones


 Como ven, este es un modulo muy potente por que lo podemos usar sin Arduino por los 2 pines GPIO que tiene incorporados a demás que es muy económico, al rededor de $50 pesos mexicanos.

Aquí el pinOut de el Modulo:

Después de esta breve explicación, vamos con lo interesante... La practica!!!!

Materiales necesarios:
1 Arduino UNO
1 Modulo WiFi ESP8266 como el de las imágenes anteriores.
1 Led Cualquier color.
Cables para conexión
Y tener conexión WiFi!!!

Para configurar el modulo la primera vez vamos a utilizar el Arduino como si fuera un convertidor USB a TTL (en caso de que lo tuvieran lo puede usar) para esto vamos a conectarlo como se los muestro en el siguiente diagrama:
También les dejo una tabla de las conexiones:

ESP8266 Arduino
VCC
3.3V
GND
GND
TX
TX
RX
RX
CH-PD
3.3V
GPIO0
GND

Si se pudieron dar cuenta el pin Reset de Arduino lo conectaremos a tierra para "des-habilitar" el microcontrolador y así trabajar solo con la comunicación serial.
Teniendo todas las conexiones echas solo basta con conectar el Arduino a la PC y seleccionar el puerto que se le asigno a el Arduino desde el menú herramientas, y después abrir el Monitor Serial.
Primero tenemos que asegurarnos que el monitor serial este configurado como en la imagen:

Después de configurarlo ya podemos empezar a escribir comandos AT a el modulo ESP8266
Si la comunicación es correcta, al escribir la palabra "AT" nos respondera con un "OK" como se puede apreciar en la imagen anterior.

También les dejo una lista de comandos AT para este modulo:

Para cargar el código a el ESP8266 primero tenemos que "instalarlo" en el IDE de Arduino, a continuación se los explico a detalle:
Vamos a el menu Archivo->Preferencias y veremos esta ventana:
Y en el cuadro te texto de la opción "Gestor de URLs Adicionales de Tarjetas" pondremos esta URL
http://arduino.esp8266.com/stable/package_esp8266com_index.json
Damos clic en Ok, y vamos a el menu Herramientas->Placa->Gestor de Tarjetas.
Para llegar a la siguiente ventana en la cual vamos a escribir en el cuadro de búsqueda "ESP8266" e instalaremos la placa que nos aparezca(en mi caso ya la tengo instalada es por eso que el boton me sale des-habilitado).
Después de que termine de instalarse podemos cerrar la ventana e ir a el menú Herramientas->Placa y al desplazarnos hacia abajo veremos que ya tenemos disponibles las placas de la familia ESP.

Antes de cargar el sketch tenemos que elegir la placa NodeMCU 1.0(ESP-12E Module), la verdad no tengo explicación para esto pero ami me funciona XD, y asegurarnos de tener configurado los siguientes parámetros que se muestran en la imagen siguiente(vienen configurados por default pero no esta de mas darles una revisada):
Aquí el código:



Si no tenemos ningún error veremos esto en el área de consola de el IDE...

Después de llegar a el 100%, tendremos que desconectar el pin GPIO0 de tierra y conectar un Led a el pin GPIO2 de el modulo como se muestra a continuación:
Ahora abrimos el monitor serial y veremos lo siguiente:

Ya solo nos resta ir a la dirección que nos indica para ver la sencilla interfaz de el servidor.
Y aquí un vídeo de el resultado final. Un poco movido pero se puede ver el resultado!!! XD


Eso solo es una muestra de lo que se puede hacer con este modulo, para mejorar esta practica solo tienen que usar su imaginación!!!
Espero les sirva y recuerden dejar sus dudas en los comentarios para poder resolverlas!!
Saludos y hasta la próxima!!!