Blog relacionado a la informática. Principalmente a la plataforma Arduino

Arduino Yun Analog Input Json

No hay comentarios

¿Que es JSON?

JSON (JavaScript Object Notation) es un formato para el intercambios de datos, básicamente JSON describe los datos con una sintaxis dedicada que se usa para identificar y gestionar los datos. JSON nació como una alternativa a XML, el fácil uso en javascript ha generado un gran numero de seguidores de esta alternativa. Una de las mayores ventajas que tiene el uso de JSON es que puede ser leído porcualquier lenguaje de programación. Por lo tanto, puede ser usado para el intercambio de información entre distintas tecnologías.

Por lo tanto en esta publicación mostraremos como visualizar los valores obtenidos por las entradas analógicas en formato JSON con nuestra Arduino Yun. 


Código:

#include <Bridge.h>
#include <YunServer.h>
#include <YunClient.h> 
YunServer servidor;

void setup() {
  //inicializa bridge
  Bridge.begin();
  
  //inciar servidor local
  servidor.listenOnLocalhost();
  servidor.begin();
}

void loop() {
  
  YunClient cliente = servidor.accept();

  if (cliente) {
    String comando = cliente.readString();
    comando.trim();
    //url valida que capturara para mostrar los valores
    if (comando == "entradas") {

      //Inicio de data en JSON 
      cliente.println("Status:200");
      cliente.println("content-type:application/json");
      cliente.println();
      cliente.println("{");
      
      /*
      loop a través de los pines analógicos y por cada
      entrada analógica genera una linea JSON con su valor,
      como:
      "A0" : 450
      */
      for(int i = 0; i <= 5; i++) {        
        cliente.print("\"A");
        cliente.print(i);
        cliente.print("\":");        
        if (i == 5) {
          cliente.println(analogRead(i));
        } 
        else {
          cliente.print(analogRead(i));
          cliente.println(",");
        }
      }
      //cierre
      cliente.println("}");     
    }

    cliente.stop();
  }

  delay(50); // Lo realiza cada 50 milisegundos
}

Luego es necesario ingresar la siguiente url para poder visualizar o consumir los datos en formato JSON.
Ej: http://ip-arduino/arduino/entradas




No hay comentarios :

Publicar un comentario