port1.jpg

Bueno, ya ha llegado el momento de conectarlo todo. Hasta ahora tenemos un sensor de temperatura y una placa Arduino, hemos comprobado que todo funciona y hemos preparado Pachube para recibir todos los datos. Ahora necesitamos enviarlos. Para enviar los datos necesitaremos añadir a la placa Arduino el modulo de conexión de red “Ethernet Shield”. Aunque hay también alternativas inalámbricas, Ethernet Shield es la mejor documentada por el momento y además, la más barata.

A los materiales que ya tenías deberás añadir lo siguiente:

  • 1 Placa Arduino Ethernet shield
  • 1 Cable Ethernet para conectarla a tu router de cable o ADSL. La longitud dependerá de la distancia del router a la que quieras poner la placa con el sensor .

La placa Ethernet Shield puedes comprarla en cualquiera de los enlaces de Arduino de nuestra página de enlaces > empresas- tiendas .

El cable lo puedes comprar probablemente en casi cualquier tienda donde vendan ordenadores (es muy probable que ya tengas uno ya que suele venir al menos uno en la caja del router)

Paso 1 – La unión de las placas

Las placas ya vienen preparadas para que puedas unirlas fácilmente. La placa Ethernet Shield se conecta sobre la placa Arduino pinchando los pines alargados de los conectores a los dos lados. Sólo hay una posición posible. ¡Adelante!

Paso 2 – La preparación de los datos de red

Antes de continuar debes recuperar los datos de la red formada por tu(s) ordenador(es) y el router de tu acceso ADSL, ya que los necesitarás para configurar el programa de Arduino que hará la conexión. Necesitaras conocer :

  • Una dirección IP de tu red (que necesitarás poner manualmente ya que la placa Ethernet Shield no permite la asignación dinamica de una dirección IP)
  • La mascara de red
  • Una dirección MAC Ethernet
  • La dirección del router

[Si sabes como obtenerlos puedes seguir en el paso 3.]

Una forma sencilla de obtener esta información es leyendola de un ordenador que tengas ahora conectado a Internet . Si tu sistema operativo es Microsoft haz lo siguiente :

  • Abre una ventana de ejecución a través de Inicio > Ejecutar o pulsando las teclas “Windows” y <R> simultaneamente
  • En la linea que se ha abierto , teclea “cmd” y pulsa la tecla <Intro>
  • Se abrirá una ventana con fondo negro como esta. Teclea lo siguiente en la pantalla “ipconfig” y pulsa la tecla <Intro>

Direccion ip y otros datos

De este ejemplo podemos re-utilizar los datos siguientes :

La direccion IP (IP Address) : Sumaremos 10 al numero final [*] , en este caso 192.168.1.43

La máscara de red (Network mask) : 255.255.255.0

La dirección del router (default gateway) : 192.168.1.1

(*) Normalmente los routers te asignan las direcciones automaticamente , al sumar 10 intentamos no re-utilizar ninguna de las que tu router haya asignado a los equipos de casa (portatiles, puestos fijos, etc). Si no tienes mas de 10 equipos en casa esto deberia funcionar.

Paso 3 La descarga de los programas necesarios

Ahora necesitamos descargar el programa que usaremos en Arduino para enviar los datos.

Vamos a utilizar el programa de entrada salida que esta disponible en Pachube con alguna modificación.

Descarga el programa que hemos modificado para que sólo tengas que adaptar y que servira para que los datos del sensor de temperatura se envien automaticamente : Descargar zip

Puedes descargar el programa original directamente desde el enlace siguiente si prefieres hacer tus propias modificaciones: Programa de entrada / salida de Pachube para Arduino (ZIP) .

Paso 4 Recuperación de los datos de la clave de tu API en Pachube

En el paso siguiente necesitaremos introducir la clave que Pachube asignó a tu cuenta para que puedas enviar y leer datos . Entra en Pachube , y en la barra negra superior elige la opción My settings

Ahora copia la clave que aparece en la sección “Your API Key”

Paso 5 La personalización del programa

Los siguientes pasos van a depender de la version del entorno de programación que tengas de Arduino. Hemos probado lo siguiente para la versión 0017.

  • Descomprime el zip del programa que has descargado en el punto 3 ,en la carpeta \hardware\libraries\enerzuulTemperatura_pde_v_0_1 de tu instalación de Arduino.
  • Abre el entorno Arduino
  • Abre ahora el programa desde el menu File>Examples>enerzuulTemperatura_pde_v_0_1

Inport_Enerzuul_InOut

  • Veras que has abierto un fichero con el código que hemos preparado basado en el propuesto por Pachube y que contiene 3 pestañas: enerzuulTemperatura_pde,ethernet_functions y pachube_functions

Arduino-3pestanas

  • Ahora vamos a personalizar los valores de la pestaña enerzuul_Temperatura

Indica el valor SHARE_FEED_ID donde debes poner el numero de tu feed

Ahora la clave API para tu cuenta PACHUBE_API_KEY

Y finalmente los valores de red que has optenido en el paso 2 , recuerda respetar el formato que esta en el codigo . Ahora el separador entre los numeros es una coma.

Debes modificar :

byte ip[] –> La dirección IP que daras a la placa Arduino

byte gateway[] –> La dirección del router

byte subnet[] –> La mascara de red El resto de valores puedes dejarlos por defecto. Guarda ahora tu programa antes de continuar.

Paso 5 La prueba de envío

La configuración ya está hecha . Ahora vamos a cargar el programa en la placa Arduino y vamos a probar que todo funciona correctamente.

  • Conecta la placa Arduino (con el ethernet shield ensamblado) a tu ordenador a través del cable usb.
  • Verifica las conexiones que hicimos del sensor en la primera parte del tutorial , ahora en los zócalos de pines (son idénticos) de Ethernet shield de manera que quede todo conectado en los mismos pines antes de continuar.
  • Conecta también el cable ethernet entre la placa Ethernet shield y un puerto libre de tu router (si tu ordenador no esta cerca del router y no puedes desplazarlo espera a conectarlo mas tarde)
  • Sube el programa a la placa y comprueba que no ha habido ningún error.
  • Ahora abre la monitorización serie (botón Serrial Monitor del entorno Arduino) para verificar que los datos de temperatura se están actualizando correctamente. Si tu placa ya estaba conectada al router ya ha empezado a enviar datos. Si no lo está verás que al menos esta recuperando la temperatura y te mostrará los errores de conexión. Algo parecido a esto :

  • reset ethernet
    setup complete
    Temperatura (Celsius) = 21
    Connecting...
    connection failed!1reset ethernet
    setup complete
    Temperatura (Celsius) = 21
    Connecting...
    connection failed!2reset ethernet
    setup complete

  • Si tienes oportunidad de monitorizar con el cable usb mientras esta conectado a tu router deberias ver en la venta del serial monitor algo parecido a lo siguiente :


reset ethernet
setup complete
Temperatura (Celsius) = 20
Connecting...
GET request to retrieve
disconnecting.
=====

  • Si has comprobado lo anterior ahora sólo necesitas verificar en la página de tu feed en Pachube que los datos se estan recibiendo correctamente . ¿Es así? ¡Pues ya lo tienes!

PachubefeedView

  • Si quieres dejar que los datos se midan continuamente necesitaras mantener conectada la placa a la alimentación . Una forma sencilla es mediante un cable usb y un adaptador usb de corriente. Puedes usar también una pila de 9V

Paso 6 El uso de los widgets de Pachube

Como los datos están guardandose en Pachube tambien puedes utilizarlos para visualizar y compratir los datos. Prueba las aplicaciones de Pachube para hacerlo en Pachube.apps