Paso 18: Escribir el código
Quemar este código en su placa
CÓDIGO-
#include "Barometer.h"
#include
#define WIFI_AP "iPhone"
#define WIFI_PASSWORD "helloworld1"
#define WIFI_AUTH LWIFI_WPA / / elegir entre LWIFI_OPEN, LWIFI_WPA o LWIFI_WEP.
Información de Ubidots
#define URL "things.ubidots.com"
#define símbolo (token) "WF1hbsrYltg5vwGDowAejTykHigEi5" / / reemplazar con la ficha de Ubidots generada en tu ficha de perfil
#define VARIABLEID "55d5f6047625422bxxxb0441"
#define VARIABLEID1 "55d5f5e37625xxxce1e0358f" //temprature
#define VARIABLEID2 "55d4c74xxx25424830973c35" //dust
#define VARIABLEID3 "55d5xxx7762542363264e715" //crow
Barómetro myBarometer;
Float temperatura;
duración largo sin firmar;
starttime largo sin firmar;
unsigned sampletime_ms largo = 3000;
lowpulseoccupancy largo sin signo = 0;
relación de flotador = 0;
concentración de flotador = 0;
int contador = 0;
void setup()
{
LTask.begin();
LWiFi.begin();
pinMode(8,INPUT);
Serial.Begin(9600);
myBarometer.init();
Mantenga reintentando hasta conectado al AP
Serial.println ("conexión a AP");
mientras que (0 == LWiFi.connect (WIFI_AP, LWiFiLoginInfo (WIFI_AUTH, WIFI_PASSWORD)))
{
Delay(1000);
}
}
void loop()
{
temperatura = myBarometer.bmp085GetTemperature(myBarometer.bmp085ReadUT()); Obtener la temperatura, primero se debe llamar bmp085ReadUT
duración = pulseIn (8, bajo);
lowpulseoccupancy = lowpulseoccupancy + duración;
cociente = lowpulseoccupancy/1000; Porcentaje de número entero 0 = > 100
concentración = 1.1 * pow (relación 3)-3.8 * pow (cociente 2) +520 * cociente + 0,62;
save_value(String(analogRead(a0)), String(temperature), String(concentration), String(analogRead(A2)));
Delay(500);
}
void save_value (valor de cadena, cadena a, polvo de cadena, Cuervo de cadena) {}
Serial.println ("envío valor de Ubidots...");
LWiFiClient c;
mientras (! c.connect (URL, 80))
{
Serial.println ("reintentando conectar...");
Delay(100);
}
Datos de la secuencia = "{\"value\":"+ valor + "}";
String thisLength = String(data.length());
Crear petición HTTP POST
c.Print ("POST /api/v1.6/variables/");
c.Print(VARIABLEID);
c.Print("/Values?token=");
c.Print(token);
c.println ("HTTP/1.1");
c.println ("Content-Type: aplicación/json");
c.println ("Content-Length:" + thisLength);
c.Print ("Host:");
c.println(URL);
c.Print ("\n" + datos);
c.Print(Char(26));
datos = "{\"value\":"+ un + "}";
thisLength = String(data.length());
Crear petición HTTP POST
c.Print ("POST /api/v1.6/variables/");
c.Print(VARIABLEID1);
c.Print("/Values?token=");
c.Print(token);
c.println ("HTTP/1.1");
c.println ("Content-Type: aplicación/json");
c.println ("Content-Length:" + thisLength);
c.Print ("Host:");
c.println(URL);
c.Print ("\n" + datos);
c.Print(Char(26));
//////////////////////////////////////////////////////////
datos = "{\"value\":"+ cuervo + "}";
thisLength = String(data.length());
Crear petición HTTP POST
c.Print ("POST /api/v1.6/variables/");
c.Print(VARIABLEID3);
c.Print("/Values?token=");
c.Print(token);
c.println ("HTTP/1.1");
c.println ("Content-Type: aplicación/json");
c.println ("Content-Length:" + thisLength);
c.Print ("Host:");
c.println(URL);
c.Print ("\n" + datos);
c.Print(Char(26));
///////////////////////////////////////////////////////////////////
datos = "{\"value\":"+ polvo + "}";
thisLength = String(data.length());
Crear petición HTTP POST
c.Print ("POST /api/v1.6/variables/");
c.Print(VARIABLEID2);
c.Print("/Values?token=");
c.Print(token);
c.println ("HTTP/1.1");
c.println ("Content-Type: aplicación/json");
c.println ("Content-Length:" + thisLength);
c.Print ("Host:");
c.println(URL);
c.Print ("\n" + datos);
c.Print(Char(26));
//////////////////////////////////////////////////////
Lea la respuesta del servidor
mientras que (c) {}
Serial.Print((Char)c.Read());
}
c.STOP();
}