Arquitectura IoT: primer vistazo bajo el capó

El concepto de IoT (Internet de las cosas) se ha incluido durante mucho tiempo en el vocabulario de los especialistas en TI. Aunque no encontré ese centro, espero que se solucione pronto :)


Sin embargo, muchas personas aún confunden la arquitectura de IoT con la arquitectura de automatización, donde la tarea principal es obtener información de los sensores y, sobre esta base, se controlan los mecanismos ejecutivos.


imagen

La arquitectura de TI incluye dos cosas aparentemente incompatibles: por un lado, esta es una gran cantidad de periféricos con bajo poder de cómputo, bajo consumo de energía, alta velocidad de reacción a eventos y, por otro lado, servidores en la nube con alto poder de cómputo para procesar grandes matriz de datos, su almacenamiento y clasificación, a menudo con elementos de inteligencia y análisis de máquinas. Estos dos mundos usan principios completamente diferentes de construcción y arquitectura interna. Parecen incompatibles y hoy en el mercado laboral hay pocos especialistas con los mismos conocimientos en soluciones integradas y en la nube. Este es un tipo de "pila completa". Pero en este conocimiento yace el poder que une dos, a primera vista, tecnologías completamente no relacionadas. De su integración obtenemos un sorprendente efecto sinérgico. Es como la unión de un hombre y una mujer: grosero y fuerte, refinado y débil. En este artículo intentaré describir la arquitectura básica de IoT, considerando la aplicación "en general".


La siguiente figura muestra la arquitectura general de la solución IoT. Es muy predecible que todo comience con sensores. Además, cuanto mejor sea el sensor adecuado para su tarea, más eficiente será el sistema. Este es un tipo de "piedra angular" del sistema. Es importante tener en cuenta que el sensor detecta un cambio en el entorno, no su estado estático. Los sensores se dividen en activos: emiten las señales y reciben reflexión; y pasivo, trabajando solo en la recepción. Naturalmente, estos últimos se benefician significativamente en términos de consumo de energía. La mayoría de los sensores se basan en la recepción de ondas: sonido, ultrasonido, luz de varios rangos, térmica. Sin embargo, hay una categoría de sensores basada en cambios en sus características físicas, como inductancia, capacitancia, presión. Se obtienen buenos resultados de una combinación de varios sensores, como un detector PIR y un sensor capacitivo para detectar movimiento.



imagen

En cualquier caso, el sensor genera una señal analógica, que debe convertirse a un dígito para su posterior procesamiento, que es lo que hace el convertidor AtoD. Después de recibir información digital, debe ser procesada por el procesador local del dispositivo periférico. Su tarea principal es colocar una etiqueta de la información recibida o simplemente clasificarla. Las etiquetas pueden ser simples, como por ejemplo, hay movimiento, y más complejas, movimiento + velocidad. A veces se necesitan etiquetas multidimensionales: movimiento, máquina. Cuanto más compleja sea la etiqueta, naturalmente más potencia tendrá el procesador periférico y el consumo de energía correspondiente. Por otro lado, cuanto más informativa es la etiqueta, menor es la cantidad de información requerida transmitida a la nube y, por consiguiente, se necesita menos ancho de banda, y la velocidad de reacción al evento también aumenta. Por supuesto, todas las etiquetas tienen una etiqueta de marca de tiempo.


El siguiente enlace puede estar tanto en la nube como en la periferia, y a veces en ambas partes. El conmutador redirige la información recibida a varios objetos, clasificando las etiquetas. Estos objetos pueden ser servidores, colas, lambda o simplemente almacenamiento. Hasta ahora, el trabajo se ha llevado a cabo con información de un dispositivo periférico específico y, de hecho, no es diferente del trabajo de los sistemas de control automatizados. Sin embargo, en el siguiente nivel: integración, comienza una diferencia cualitativa. La información de varios dispositivos periféricos se resume en el mismo tipo de etiquetas. Además, los tipos de dispositivos periféricos pueden incluso ser diferentes. Es importante que las etiquetas caigan en un solo punto responsable de recibir el evento correspondiente: la etiqueta.
El bloque analítico sistematiza más información de todos los objetos que suman etiquetas. Consiste en la lógica básica, o, por así decirlo, los cerebros del sistema. Hay IA, aprendizaje automático, etc. El resultado del trabajo del bloque analítico se transmite al bloque de presentación para mostrarlo al usuario. Puede parecer como enviar un mensaje a un dispositivo móvil, un horario en una WEB u otro.


Dado que el sistema IoT está distribuido y conectado por un canal de comunicación poco confiable, es necesario contar con mecanismos para garantizar la entrega de información. En el caso de que no sea posible transferir información desde el dispositivo periférico a la nube, se realizan repetidos intentos de transmisión. Lo mismo debería suceder a la inversa. Para estos fines, se introduce una unidad de Presentación Virtual del dispositivo periférico en la que se registra la información para la transmisión al dispositivo periférico o su nuevo estado. A menudo esto es solo un archivo de texto, pero puede haber un modelo de representación más preciso. Es de destacar que los cambios en el módulo de vista virtual se pueden inicializar desde varios módulos del circuito de entrada, como se muestra en la figura.


Después de analizar el diagrama de bloques físicos de la arquitectura IoT, podemos considerar su diagrama lógico


imagen

Entonces, todo comienza de nuevo con sensores que registran el cambio en el entorno a lo largo del tiempo. El siguiente módulo de etiquetado realiza la segmentación inicial para ciertos eventos del sistema. En principio, el desarrollo de la arquitectura de la aplicación IoT debería comenzar con una lista de estos eventos. La suma de etiquetas se realiza de acuerdo con un grupo de dispositivos periféricos con el mismo tipo de etiquetas. El módulo de integración está diseñado para tomar decisiones sobre aproximación (predicción de eventos posteriores) o determinación (identificación de una situación a partir de una variedad de opciones). Esta información sirve como una especie de coeficiente clave para el módulo del modelo virtual del dispositivo periférico, en el que la información real del dispositivo periférico se convierte en función del coeficiente clave en el nuevo estado del dispositivo periférico.


Ahora un poco sobre lo que no se incluyó en el esquema de arquitectura descrito anteriormente, pero ciertamente lo que debe tener en cuenta:

  • Almacenamiento de información . El almacenamiento de información debe realizarse tanto a nivel del dispositivo periférico como en la nube. El dispositivo periférico guarda su programa, configuración, estado y almacena temporalmente información de los sensores hasta que se garantice su transferencia a la nube. El almacenamiento de información basado en la nube es obvio y no requiere explicación, al menos como parte de este artículo.
  • Seguridad / autorización . Cada dispositivo periférico debe estar autorizado en el sistema, e individualmente. Este es un tema separado que también está más allá del alcance de este artículo.
  • Colas y tuberías . Una categoría separada de arquitectura es el medio de transmitir información a través del sistema, tanto dentro de los dispositivos periféricos como en la nube y entre ellos.

Espero que esta breve revisión sea útil. En el futuro, planeo continuar con los artículos y hacer un ciclo de apodos dedicado a las soluciones de IoT. Les agradecería a todos los comentarios y temas que serán de su interés.

Source: https://habr.com/ru/post/es420173/


All Articles