Ir al contenido principal
Todas las coleccionesConecta tus dispositivos
Conectar un Siemens SIMATIC IOT2000 a Ubidots a través de HTTP utilizando el Arduino IDE
Conectar un Siemens SIMATIC IOT2000 a Ubidots a través de HTTP utilizando el Arduino IDE

Programa la serie SIMATIC 2000 utilizando el IDE de Arduino y envía los datos de manera eficiente a Ubidots a través de HTTP.

Sergio M avatar
Escrito por Sergio M
Actualizado hace más de una semana

La simplicidad de Arduino combinada con la fiabilidad y la historia de Siemens hace que la serie SIMATIC IOT2000 sea una elección perfecta para modernizar o implementar el IoT en fábricas o instituciones inteligentes que exploran opciones de conectividad o modernización. Nuevos sensores en máquinas antiguas o simplemente actualizar sensores hace que la serie SIMATIC IOT2000 sea perfecta, ya que armoniza, analiza y reenvía datos de manera eficiente con protocolos comunes como HTTP y MQTT. Basada en un Yocto Linux, la serie SIMATIC IOT2000 incluye los modelos IoT2020 e IoT2040, que son compatibles con la mayoría de los Sketches de Arduino y se pueden cargar directamente desde el IDE de Arduino. El IOT2040 es ideal para fábricas, mientras que el IOT2020 es mejor en instituciones educativas con sus periféricos adicionales y protocolos de comunicación.

El siguiente tutorial demuestra cómo configurar el hardware de la serie SIMATIC IOT2000 utilizando el IDE de Arduino y un código de muestra proporcionado para enviar una solicitud HTTP a Ubidots para habilitar datos con sus aplicaciones IoT impulsadas por Ubidots.

Requisitos

Primero, debe registrarse o tener acceso al Portal de Soporte de Siemens para descargar todas las configuraciones iniciales. Este portal también proporcionará solución de problemas y soporte de Siemens para cualquier consulta relacionada con el hardware. Toda la serie IOT2000 se configura de la misma manera y este tutorial, por lo tanto, se aplica a cualquier hardware dentro de la serie.

Paso a Paso

  1. Configuración de la serie Siemens SIMATIC IoT 2000

  2. Configuración del Arduino IDE

  3. Envío (POST) de datos a Ubidots

  4. Visualización de datos en Ubidots

  5. Resumen

1. Configuración de la serie Siemens SIMATIC IoT 2000

Si esta es su primera vez trabajando con la serie Siemens SIMATIC IoT 2000, hemos creado una guía de inicio específicamente para la serie Siemens SIMATIC IoT 2000 para guiarlo en la configuración del dispositivo para comunicarse fácilmente con Ubidots.

2. Configuración del Arduino IDE

El SIMATIC IOT2000 es compatible con el Arduino IDE utilizando el paquete Intel Galileo. Siga los pasos a continuación para configurar el hardware correctamente:

1. Abra el Arduino IDE

2. Abra Gestor de Placas desde Herramientas –> Placa –> Gestor de Placas e instale el "paquete galileo". Para encontrar el dispositivo correcto, busque "Intel i5" en la barra de búsqueda, luego descargue e instale la última versión.
Si no está familiarizado con cómo instalar o gestionar placas en Arduino, consulte esta guía simple para comenzar con Arduino.

3. Con la placa "Galileo" instalada, seleccione a continuación Intel Galileo gen2 del menú Herramientas –> Placa .

4. Conecte el Micro USB a su IOT2000 y seleccione el puerto com asignado desde Herramientas –> Puerto –> Intel Galileo. Si está trabajando en Windows y su PC no reconoce su IOT2000, debe actualizar los controladores manualmente.

5. Ahora que todo está configurado, cargue el Blink Sketch para verificar que todo esté funcionando correctamente. Vaya a Archivo –> Ejemplos –> Básicos –> Blink y compile el código.

6. Una vez que el código se haya actualizado correctamente, el LED DE USUARIO comenzará a parpadear.

3. Envío (POST) de datos a Ubidots

Una vez que pueda compilar el código Blink en el SIMATIC IOT2000, puede continuar con los siguientes pasos:

  1. Copie y pegue el código de muestra a continuación en el IDE de Arduino. Una vez que haya pegado el código, asegúrese de asignar su TOKEN único de Ubidots donde se indica. Si no sabe dónde encontrar su TOKEN de Ubidots, consulte este artículo.

#include <EthernetClient.h>const char server[] = "industrial.api.ubidots.com";const char device_label[] = "simatic-iot2000"; // la etiqueta del dispositivo a enviarconst char variable_label[] = "humidity"; // la etiqueta de la variable a enviarconst char token[] = "your_ubidots_token_here"; // asigne su Token de Ubidotschar* payload  = (char *) malloc(sizeof(char) * 20);  /* Inicializar la biblioteca del cliente Ethernet */EthernetClient client;void setup() {  Serial.begin(9600);  while (!Serial) {    ; /* esperar a que se conecte el puerto serie */  }  /* Configuración de entrada analógica */  const int IOShield_U0 = A0;    int value = analogRead(IOShield_U0);  /* Construir la carga útil a enviar. e.i -> {"humidity": 55} */  sprintf(payload, "{\"%s\":%d}", variable_label, value);  Serial.println("conectando...");    /* si obtiene una conexión, informe a través del serial: */  if (client.connect(server, 80)) {    Serial.println("conectado");    /* Hacer la solicitud HTTP al servidor*/    client.print(F("POST /api/v1.6/devices/"));    client.print(device_label);    client.println(F(" HTTP/1.1"));    client.println(F("Host: industrial.api.ubidots.com"));    client.println(F("User-Agent: siemenes/1.1"));    client.print(F("X-Auth-Token: "));    client.println(token);    client.println(F("Connection: close"));    client.println(F("Content-Type: application/json"));    client.println(F("Content-Length: 17"));    client.println();    client.print(payload);    client.println();    free(payload);  }  else {    /* si no obtuvo una conexión con el servidor: */    Serial.println("conexión fallida");  }}void loop(){  /* si hay bytes entrantes disponibles     del servidor, léalos e imprímalos: */  if (client.available()) {    char c = client.read();    Serial.print(c);  }  /* si el servidor se ha desconectado, detenga el cliente: */  if (!client.connected()) {    Serial.println();    Serial.println("desconectando.");    client.stop();    /* no hacer nada para siempre: */    for (;;)      ;  }}

NOTA IMPORTANTE DE DESPLIEGUE: El código anterior es un código de muestra que demuestra cómo enviar una solicitud HTTP POST a Ubidots utilizando la biblioteca EthernetClient. Para implementar su propio código, consulte la Referencia de la API REST de Ubidots y Soporte de Siemens para recursos adicionales.

2. A continuación, verifique y cargue el código eligiendo el icono de "marca de verificación" y luego el icono de "flecha derecha" que se encuentra en la esquina superior izquierda de su IDE de Arduino.
Haga clic aquí para obtener detalles adicionales sobre cómo Verificar y Cargar su código utilizando Arduino.

3. Para visualizar la respuesta del servidor y su conectividad con el hardware de Siemens, abra el Monitor Serial del IDE de Arduino. Puede abrir el monitor serial seleccionando el icono de "lupa" en la esquina superior derecha de nuestro IDE de Arduino.

4. Visualización de datos en Ubidots

Confirme su código yendo a su cuenta de Ubidots para encontrar el nuevo dispositivo creado llamado "simatic-iot2000" que contiene una variable llamada "humidity", que es la lectura de la entrada A0 del escudo de Arduino contenido en el SIMATIC IOT2000.

5. Resumen

En solo unos minutos, integramos un hardware industrial, el Siemens SIMATIC IOT2000, con Ubidots.

Ahora es el momento de crear Dashboards de Ubidots para visualizar e interpretar sus datos.

Otros lectores también han encontrado útil...


¿Ha quedado contestada tu pregunta?