Paso 4: Descargar y adaptar guión de arduino
Descargar el croquis que se adjunta a este paso y adaptarlo:
En primer lugar, copie y pegue el deviceId, clientId y clientKey de la página de dispositivo de Monitor de bebé en SmartLiving Maker. Estas son necesarias para autenticar en plataforma de SmartLiving Maker.
char deviceId[] = ""; // Your device id comes here char clientId[] = ""; // Your client id comes herechar clientKey[] = ""; // Your client key comes here;
Entonces, adaptar la dirección mac de tu placa de arduino dentro método setup() .
byte mac[] = { 0x90, 0xA2, 0xDA, 0x0D, 0xE1, 0x3E };
Por último, cambiar los valores de las variables TEMP_SENSOR y SOUND_SENSOR a los números donde usted tapara al escudo de Arboleda.
int TEMP_SENSOR = 0; <br>int SOUND_SENSOR = 1;
Breve explicación de la secuencia de comandos
Secuencia de comandos utiliza ATT_IOT.h, que envuelve la API HTTP y comunicación MQTT SmartLiving plataforma.
Setup()
Método de configuración se utiliza para inicializar el dispositivo en SmartLiving plataforma.
if(Device.Connect(ðClient, httpServer)) { Device.AddAsset(TEMP_SENSOR, "Temperature", "Temperature Sensor", false, "number"); Device.AddAsset(SOUND_SENSOR, "Noise", "Noise sensor", false, "number"); Device.AddAsset(DISABLE_ACTUATOR, "Disabled", "Monitor Disabled", true, "boolean"); Device.Subscribe(pubSub); Device.Send(F("false"),DISABLE_ACTUATOR); }
La plataforma pide función SmartLiving fabricante API activo de configuración Device.AddAsset .
Device.Subsribe se utiliza para suscribirse en el corredor MQTT de SmartLiving plataforma. Recibimos mensajes de la plataforma (web, aplicación móvil) para activar o desactivar el monitor.
Loop()
Lectura de temperatura
a = analogRead(TEMP_SENSOR); resistance=(float)(1023-a)*10000/a; temperature=1/(log(resistance/10000)/B+1/298.15)-273.15;
Sonido de lectura
soundValue = analogRead(SOUND_SENSOR);
Envío de temperatura y valores sanos a la plataforma de SmartLiving
if(!monitorDisabled){ if(lastSentTemperature != temperature){ Device.Send(String(temperature), TEMP_SENSOR); lastSentTemperature = temperature; Serial.println(F("temperature changed")); } if(lastSentSoundValue != soundValue){ Device.Send(String(soundValue), SOUND_SENSOR); lastSentSoundValue = soundValue; Serial.println(F("sound changed")); } } Device.Process(); delay(1000); }
Device.Send publicará un valor al asunto MQTT apropiado.