Contenido


Construya su Propio Dispositivo Portátil con IBM IoT Foundation e IBM Cloud

Conecte un kit de dispositivo portátil habilitado para Bluetooth a una aplicación móvil y envíe datos de sensores a la nube de IBM IoT Foundation

Comments

En la evolución de Internet de las Cosas (IoT), los dispositivos portátiles son uno de los segmentos con mayor crecimiento. La computación portátil puede tomar muchas formas, como relojes, pulseras de fitness, lentes y hasta ropa. Vivimos en tiempos emocionantes en los cuales los portátiles permiten que la tecnología se filtre en nuestras vidas en formas que los dispositivos de computación más grandes y teléfonos inteligentes no lo hicieron anteriormente.

Los posibles usos y aplicaciones de los dispositivos portátiles solo tienen el límite de la imaginación del diseñador. Este tutorial le lleva a través del proceso fundamental de conectar un kit de dispositivo portátil habilitado para Bluetooth a una aplicación móvil híbrida y enviar datos de sensor a la nube de IBM Internet of Things Foundation (IoT Foundation). Cuando los datos de sensor llegan a IoT Foundation, se puede utilizar IBM Cloud para desencadenar varios flujos basados en los datos de sensor recolectados.

El acercamiento básico

La Figura 1 muestra un abordaje arquitectónico típico que se puede utilizar para diseñar un dispositivo portátil que se comunique con la nube. Los dispositivos portátiles de seguimiento poseen muchas funciones para el seguimiento y presentación de informes de actividades individuales — generalmente, utilizando la comunicación con un teléfono inteligente o dispositivo tipo pizarra digital que muestra los datos de estado e informe. A medida que la tecnología y el mercado para dispositivos portátiles siguen en expansión, también lo hará la necesidad de transmitir estos datos a otros servicios. Este abordaje arquitectónico representa solo uno de los varios métodos que puede utilizar para transmitir datos de sensor de dispositivos portátiles a la nube para su procesamiento.

Figura 1. Arquitectura portátil a la nube
Diagram of an architecture for wearable-cloud communication
Diagram of an architecture for wearable-cloud communication

Selección de hardware del dispositivo portátil

El actual mercado de consumo de dispositivos portátiles está repleto de distintos tipos de dispositivos. En general, el abordaje de comunicación de baja energía del dispositivo portátil al dispositivo inteligente (como teléfonos inteligentes o pizarras digitales) es preciso para detectar los distintos tipos de actividades realizadas por el usuario diariamente. La calidad y precisión de la recolección de datos del dispositivo depende en grande medida del número y clase de sensores incluidos en el dispositivo. Esta dependencia representa un acto de malabarismo para los desarrolladores de dispositivos portátiles, que deben equilibrar el factor de forma, procesamiento, vida útil de la batería e interfaces de usuario atractivas.

Introducción al kit de desarrollo WICED Sense

Desde una perspectiva económica y "hágala usted mismo" (DiY), el kit de desarrollo WICED Sense de Broadcom es un punto de entrada accesible para el mundo de IoT siempre en expansión. Este kit es una opción de dispositivo adecuada para ingenieros, ingeniosos, practicantes del "hágalo usted mismo" y emprendedores que están haciendo el prototipo de casos de uso de dispositivos portátiles.

WICED (pronunciado wicked) significa Conectividad de Internet Inalámbrica para Dispositivos Incorporados. El kit consta de una placa de Bluetooth de baja energía (BLE) y cinco sensores (eCompass, presión, humedad y temperatura, giroscopio y acelerómetro); además, se ejecuta con una batería plana 2032. La placa, los sensores y la batería se encuentran en un estuche de plástico resistente (ver Figura 2). Estas características, combinadas con un factor de forma pequeño, hacen que el kit WICED Sense sea una opción atractiva para la experimentación. Para los efectos de este tutorial, el kit WICED Sense será utilizado como dispositivo portátil. A continuación, verá cómo conectar el dispositivo portátil WICED Sense a una aplicación móvil híbrida.

Figura 2. Kit de desarrollo WICED Sense de Broadcom
Photo of the WICED Sense Development Kit
Photo of the WICED Sense Development Kit

Lo que necesita

Necesita algunos artículos para continuar con este tutorial:

  • Un kit de desarrollo WICED Sense de Broadcom . Puede utilizar otros kits de etiquetas de sensor, pero este tutorial se enfoca en WICED Sense.
  • Apache Cordova versión 3.6.3 o más reciente.
  • Un dispositivo inteligente (teléfono inteligente o pizarra digital) con capacidades de BLE. El tutorial utiliza una pizarra digital Android que ejecuta Android 4.4 (que posee capacidad de BLE).
  • Una cuenta IBM Cloud para que pueda utilizar IBM IoT Foundation y Node-Red. Está disponible una prueba gratuita de IBM Cloud.

Consulte Descargar para obtener el código de origen para este tutorial.

Conectar su dispositivo portátil a la aplicación híbrida

En primer lugar, para poder leer los datos recolectados de los sensores en su dispositivo portátil WICED Sense, cree una aplicación híbrida con Apache Cordova. La aplicación híbrida se ejecuta en el dispositivo inteligente habilitado para BLE y se vincula al kit WICED Sense. Cuando el enlace esté completo, su aplicación híbrida podrá leer todas las lecturas de los sensores del kit WICED Sense y enviarlas a la nube de IoT Foundation.

Descargar el código de origen de la aplicación híbrida y extraiga el archivo comprimido a la carpeta de su elección (por ejemplo, WICED-Sense-IoT). Se proporcionan todos los artefactos necesarios, con excepción de dos archivos: easy-ble.js y mqttws31.js; descárguelos desde los enlaces proporcionados aquí. Ubique easy-ble.js y mqttws31.js en la carpeta lib de la aplicación.

La aplicación híbrida está organizada en los siguientes archivos y carpetas:

  • index.html: El archivo HTML principal de la aplicación. Controla la carga de otros archivos de la biblioteca de JavaScript y sirve a la UI.
  • common.css: Mantiene cualquier marcación de las Hojas de estilo en cascada (CSS) necesaria para la aplicación.
  • lib/easy-ble.js: biblioteca de JavaScript utilizada para simplificar la conexión con los dispositivos de BLE. Proporcionada por Evothings.
  • lib/mqttws31.js: biblioteca de JavaScript que permite que un cliente utilice el protocolo MQTT V3.1 para conectarse a un servidor de mensajería de soporte de MQTT. Usted lo utiliza para conectarse a IBM IoT Foundation.
  • lib/WICED-Sense.js: biblioteca de JavaScript para conectarse al kit WICED Sense.
  • lib/iotFoundation.js: biblioteca de JavaScript que simplifica la interacción con el protocolo MQTT y la conexión a IBM IoT Foundation.

Antes de empezar a personalizar la aplicación híbrida, vaya a IBM Cloud para registrar su nuevo dispositivo portátil WICED Sense. Al hacerlo, habilita el dispositivo WICED Sense para enviar datos de sensor a la nube, luego de que se vincule el dispositivo a la aplicación híbrida.

Para ingresar a IBM Cloud

Diríjase a IBM Cloud y cree una cuenta de prueba gratuita, si aún no tiene una.Inicie sesión en IBM Cloud.Ahora, configure una nueva aplicación Node-RED para poder establecer un servicio de IoT Foundation:

  1. En el panel de instrumentos de IBM Cloud, haga clic en CREAR UNA APLICACIÓN y seleccione WEB como el tipo.
  2. Seleccione Navegar Aplicaciones de Muestra , haga clic en EXPLORAR MUESTRAS y, luego, seleccione Iniciador Node-RED de la categoría Boilerplates.
  3. En el recuadro de diálogo Crear una Aplicación en el lado derecho, asígnele un nombre único a la aplicación (como developerWorks-App) y haga clic en CREAR.
  4. Se ha configurado la aplicación Node-RED. En el panel de instrumentos, haga clic en AÑADIR UN SERVICIO.
  5. Desplácese hacia abajo hasta Internet de las Cosas y selecciónelo para añadir el servicio.
  6. En el recuadro de diálogo Añadir un Servicio a la derecha, asegúrese de que la aplicación Node-RED esté seleccionada en la aplicación: campo. Puede elegir Gratuito para el plan seleccionado. Haga clic en CREAR.
  7. Cuando se le solicite implementar nuevamente la aplicación, haga clic en VOLVER A IMPLEMENTAR.

El panel de instrumentos de su aplicación debe parecerse a la Figura 3.

Figura 3. Panel de instrumentos de IBM Cloud
Screen capture of newly created app in IBM Cloud dashboard
Screen capture of newly created app in IBM Cloud dashboard

Configuración del kit WICED Sense en IoT Foundation

Con el servicio de Internet de las Cosas vinculado a la aplicación de IBM Cloud, puede desencadenar flujos fácilmente desde un dispositivo. Pero antes, debe registrar el dispositivo WICED Sense. Al momento de esta redacción, el dispositivo WICED Sense no es una "receta" formal en IoT Foundation, entonces debe improvisar y añadir el dispositivo usted mismo:

  1. Desde el panel de instrumentos de IBM Cloud, haga clic en el servicio Internet de las Cosas y luego haga clic en INICIAR.
  2. Desde el panel de instrumentos de IBM Internet of Things Foundation, haga clic en el enlace Añadir Dispositivo .
  3. En el formulario Registrar dispositivo, defina el Tipo de Dispositivo comoCrear un Tipo de Dispositivo. En el recuadro de texto directamente debajo del recuadro Tipo de Dispositivo, ingreseWICED-Sense.
  4. En el recuadro de texto ID de Dispositivo, ingrese cualquier identificador único (por ejemplo, 8675309). Necesitará este identificador más adelante, así que anótelo. Haga clic en Continuar.
  5. La página siguiente presenta credenciales importantes para el dispositivo WICED Sense recién registrado. Copie esta información en un archivo de texto para conservarla y haga clic en Listo .

De vuelta a la aplicación híbrida

Hasta ahora, usted ha:

  • Creado una aplicación IBM Cloud Node-RED
  • Vinculado la aplicación Node-RED a IoT Foundation
  • Registrado el kit WICED Sense en IoT Foundation

Ahora, puede enfocarse nuevamente en la aplicación híbrida. Empiece por conectar algunos de los valores generados en IoT Foundation a la aplicación híbrida para que se puedan comunicar entre sí:

  1. En su sistema local de archivos, navegue hasta la ubicación en la cual extrajo los archivos de origen de la aplicación híbrida.
  2. En un editor de texto, abra el archivo lib/iotFoundation.js.
  3. Por la línea 17, ubique un comentario que le pida ingresar la información de credenciales que recibió de IoT Foundation luego de haber registrado el dispositivo WICED Sense.
  4. Ingrese los valores para: CLIENT_ID, ORG_ID, la primera parte de IOT_URL e IOT_PASS.
  5. Salve cualquier código modificado.

Construir la aplicación Cordova

La última tarea para leer y procesar los datos de sensor del dispositivo portátil WICED Sense es construir la aplicación híbrida, desplegarla y probarla en un dispositivo inteligente. Puede crear y alcanzar muchas cosas con Apache Cordova. Para los efectos de este tutorial, solo hablo sobre cómo construir la aplicación.

Con Apache Cordova instalado, abra la ventana de comando y realice los siguientes pasos:

  1. Ingrese cordova create project-folder app-identifier app-name (por ejemplo: cordova create dw-project com.developerWorks.wiced WicedSenseApp).
  2. Cambie a su directorio de proyecto:
     cd dw-project
  3. Desde la carpeta de proyecto, borre los archivos de la carpeta www.
  4. Mueva o copie todos los archivos del proyecto de aplicación híbrida a la carpeta www.
  5. Añada el plug-in BLE de Evothings:
     cordova plugin add com.evothings.ble
  6. Añada la plataforma a la cual desea construir al ingresar:
     cordova platform add ios cordova build ios

    o
     cordova platform add android Type: cordova build android
  7. Despliegue el código al dispositivo correcto y pruébelo.

Ahora tiene una aplicación híbrida que se ejecuta en un dispositivo inteligente habilitado para BLE y que se puede vincular al kit WICED Sense. Cuando ejecuta la aplicación híbrida en el dispositivo inteligente, es similar a la Figura 4.

Figura 4. Aplicación híbrida
Screen capture of the running hybrid app
Screen capture of the running hybrid app

Para probar su aplicación híbrida

Al ejecutar la aplicación híbrida, puede iniciar la etiqueta de WICED Sense. Luego de que el dispositivo inteligente detecta la etiqueta de WICED Sense, usted ve que el Estado de la aplicación indicaSensores online. Además la aplicación híbrida abre una conexión a IBM IoT Foundation con la conexión a Internet del dispositivo inteligente. Finalmente, los datos de sensor de WICED Sense aparecen en la pantalla como una serie de números. A medida que mueva la etiqueta de WICED Sense, los números cambiarán.

La aplicación híbrida ya ha sido codificada para enviar un evento de movimiento a IoT Foundation cuando esta detecte que la etiqueta de WICED Sense se está moviendo. El movimiento se define como un movimiento constante de la etiqueta de WICED Sense por más de seis segundos. Como prueba, coloque la batería en la etiqueta de WICED Sense. Al ser detectada por la aplicación híbrida, mueva la etiqueta de WICED Sense en su mano por seis o siete segundos. En la aplicación, vea como el estado ¿Se está moviendo? cambia de falso a verdadero.

A medida que el movimiento cambia a verdadero, se envía un evento de movimiento a la nube de IoT Foundation. Ahora, mantenga la etiqueta de WICED Sense lo más inmóvil posible durante seis o siete segundos y vea el estado¿Se está moviendo? volver afalso. A medida que el movimiento cambia a falso nuevamente, se envía otro evento a la nube de IoT Foundation. Repita estas acciones para seguir enviando eventos a IoT Foundation. Para ver los eventos, consulte el panel de instrumentos Dispositivos de IoT Foundation (que se muestra en la Figura 5), al que se puede acceder desde el panel de instrumentos de IBM Cloud.

Figura 5. Vista de Dispositivos de IoT Foundation
Screen capture of the IoT Foundation devices view
Screen capture of the IoT Foundation devices view

Cosas para hacer después

Ahora que tiene datos de sensor que se mueven a través de IoT Foundation, puede crear fácilmente una aplicación Node-RED que trabaja en los datos de movimiento recibidos. Por ejemplo, podría enviar un mensaje de alerta, grabar datos en una base de datos o iniciar innumerables otras acciones.

Además, podría cambiar el código para actuar en distintos sensores desde el kit WICED Sense. Este tutorial utiliza el giroscopio para detectar movimiento. También podría utilizar el código del tutorial para obtener lecturas de otros sensores (como sensores de temperatura o humedad) y desencadenar eventos en función de esas lecturas.


Recursos para Descargar


Temas relacionados

  • kit de desarrollo WICED Sense : Descubra más acerca del kit WICED Sense en el sitio web de Broadcom.
  • IBM Internet of Things Foundation: IoT Foundation está disponible a través de IBM Cloud e IBM Marketplace. Pruébelo con una evaluación gratuita de 30 días.
  • Evothings: Evothings es un habilitador de aplicaciones móviles para la industria de IoT, que ofrece una suite de desarrollo de origen abierto para crear aplicaciones que interactúen con servicios de dispositivos de bajo nivel.
  • Apache Cordova: Cordova es una plataforma de origen abierto para construir aplicaciones móviles nativas que utilicen HTML, CSS y JavaScript.
  • El servicio Internet of Things: obtenga un acceso sencillo pero poderoso de aplicación a dispositivos y datos de IoT.
  • Guía de inicio de Internet of Things Foundation: Construya aplicaciones sencillas pero poderosas para acceder a dispositivos y datos de IoT con IBM Internet of Things Foundation (IoTF) en IBM Cloud.
  • Node-RED: Aprenda más sobre Node-RED, una herramienta para unir dispositivos de hardware, API y servicios online.
  • Crear aplicaciones con Node-RED para IBM Cloud: Implemente una aplicación Node-RED que procesa eventos de dispositivos en tiempo real en su organización de IoT. Amplíe la aplicación para responder a eventos en tiempo real al enviar comandos a los dispositivos.
  • Explore MQTT y el servicio Internet of Things en IBM Cloud (Chun Bin Tang, developerWorks, febrero de 2015): Observe cómo funciona MQTT. Construya aplicaciones fácilmente con el servicio IoT y una aplicación de muestra de Java o el editor Node-RED.
  • Internet de las Cosas: Aprenda más acerca de IoT en developerWorks.

Comentarios

Inicie Sesión o Regístrese para agregar comentarios.

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=90
Zone=Internet of Things
ArticleID=1015913
ArticleTitle=Construya su Propio Dispositivo Portátil con IBM IoT Foundation e IBM Cloud
publish-date=02242015