Paso 3: Código de Arduino
Este código dejó Arduino para enviar los valores de temperatura y humedad al Xively, via Ethernet Shield.
Está la temperatura del sensor de DHT22
Autor Giacomo Bellazzi
*/
#include
#include
#include
#include
#include
#include "DHT.h"
#define DHTPIN 3 / / PIN de datos de DHT22
#define DHTTYPE DHT11 / / DHT 11
#define DHTTYPE DHT22 / / DHT 22 (AM2302)
#define DHTTYPE DHT21 / / DHT 21 (AM2301)
DHT dht (DHTPIN, DHTTYPE);
Dirección MAC para el shield Ethernet
mac de bytes [] = {0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED};
La clave de Xively para que pueda cargar los datos
char xivelyKey [] = "";
Definir las cadenas de nuestro flujo de datos identificadores de
char sensorId1 [] = "Temperatura";
char sensorId2 [] = "Humedad";
XivelyDatastream datastreams [] = {}
XivelyDatastream (sensorId1, strlen(sensorId1), DATASTREAM_FLOAT),
XivelyDatastream (sensorId2, strlen(sensorId2), DATASTREAM_FLOAT),
};
Finalmente, envuelva los datastreams en un feed. Establecer el valor de la alimentación en lugar de 12345678
XivelyFeed alimentación (12345678, datastreams, 2 / * número de datastreams * /);
Cliente EthernetClient;
Xivelyclient(client) de XivelyClient;
void setup() {}
Serial.Begin(9600);
Serial.println ("a partir solo de flujo de datos subir a Xively...");
Serial.println();
DHT.Begin();
mientras que (Ethernet.begin(mac)! = 1)
{
Serial.println ("Error obteniendo dirección IP vía DHCP, intentando otra vez...");
Delay(15000);
}
Serial.Print ("server es a");
Serial.println(Ethernet.localIP());
}
void loop() {}
Float h = dht.readHumidity(); Valor de la temperatura
Float t = dht.readTemperature(); Valor de la humedad
datastreams[0].setFloat(t); Valor de la temperatura
datastreams[1].setFloat(h); Valor de la humedad
Serial.Print ("leer valor del sensor");
Serial.println(datastreams[0].getFloat());
Serial.println ("subirla a Xively");
Enviar datos a Xively
int ret = xivelyclient.put (alimentación, xivelyKey);
Serial.Print ("xivelyclient.put devuelto");
Serial.println(RET);
Delay(15000);
}
Para poder hacer que funcione, debe introducir los datos ID alimentación y API en su lugar, dentro del código.
Ahora que ya tenemos todo configurado, finalmente podemos compilar y ver el resultado final!