Creación de un flujo con dispositivos y un servicio - AWS IoT Things Graph (Gráfico de objetos de AWS)

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Creación de un flujo con dispositivos y un servicio

En este tema se explican los pasos para crear e implementar un flujo de trabajo sencillo (flujo) que consta de un Raspberry Pi conectado a tres dispositivos: un Sensor de movimiento Aukru HC-SR501, un Cámara Raspberry Pi, y un Pantalla de Raspberry Pi. También contiene un AWS IoT Things Graph modelo de servicio que expone la capacidad de detección de rostros de Amazon Rekognition.

El flujo se activa cuando el detector de movimiento detecta a una persona que se mueve. El detector de movimiento envía un mensaje a la cámara, que toma una imagen y lo envía al Amazon Rekognition modelo de servicio. El modelo de servicio envía la imagen para que se muestre en la pantalla. El modelo de servicio no procesa los resultados del DetectFaces o enviar cualquier otra cosa que no sea la imagen a la pantalla.

Puede modificar este ejemplo añadiendo un modelo de servicio entre la Amazon Rekognition y la pantalla. El modelo de servicio adicional puede procesar los resultados (como determinar si la imagen debe mostrarse en la pantalla) antes de enviar la imagen a la pantalla.

Prerequisites

Para crear este ejemplo, necesita los siguientes recursos:

Configuración de su Raspberry Pi

Para ejecutar el flujo de trabajo (flujo), debe configurar su Raspberry Pi.

Ahora ha configurado su Raspberry Pi para comunicarse con el sensor de movimiento, la cámara y la pantalla.

Creación de un AWS IoT Greengrass grupo

nota

Para obtener información sobre el uso de AWS CloudFormation para crear y gestionar AWS IoT Greengrass grupos y recursos, consulte AWS IoT Greengrass referencia de tipos de recursos.

Instalación AWS IoT Greengrass en el mismo Raspberry Pi al que ha conectado su sensor de movimiento, cámara y pantalla.

Realice los pasos de Configuración del entorno de en su Raspberry Pi. Asegúrese de que que has creado IAM rol de para AWS IoT Greengrass (paso 4 en el paso Creación de un AWS IoT Greengrass grupo procedimiento en ese tema). Acople el AmazonS3FullAccess para darle acceso a su bucket de S3.

nota

El AWS IoT Greengrass y Amazon S3 El bucket de que utiliza en este ejemplo debe crearse en la misma región de AWS. El AWS IoT Things Graph Las entidades que cree deben también está en la misma región que estos recursos.

Crear cosas

Abra el cuadro de diálogo AWS IoT consola y crear tres cosas: una cosa para el sensor de movimiento y dos cosas para la cámara y la pantalla que se asocian a su Raspberry Pi.

Para obtener instrucciones sobre cómo crear objetos en el registro, consulte Registrar un dispositivo en la registro.

En la de la hierba de Greengrass en la pestaña AWS IoT consola, elige tu grupo, elige Dispositivosy, a continuación, añade las tres cosas nuevas a tu AWS IoT Greengrass del grupo de.

Para obtener información general sobre AWS IoT conceptos, consulte ¿Qué es AWS IoT?

Crear y publicar el flujo

Para crear este flujo con la AWS CLI en lugar de la Consola de AWS IoT Things Graph, siga las instrucciones en Creación de un flujo con dispositivos y un servicio mediante la AWS CLI.

  1. Abra el cuadro de diálogo Consola de AWS IoT Things Graph.

    Elegir Crear flujo.

  2. Cree un flujo.

    En la pestaña Configuración de flujo que aparece, asigne un nombre a su flujo (como RekognitionFlow). Elegir Crear flujo.

  3. Añada los modelos de dispositivo y el modelo de servicio al flujo.

    1. Buscar la Sensor de movimiento Modelo de dispositivo de. Seleccione la opción dispositivo y arrástrelo al diseñador de flujo.

    2. Buscar la EjemploCámaraRkgn Modelo de dispositivo de. Seleccione la opción del dispositivo y arrástrelo al diseñador de flujo.

    3. En la Servicios , busca el Recodificación modelo de servicio. Seleccione el modelo de servicio y arrástrelo al diseñador de flores.

    4. En la Dispositivos , haz lo mismo para el Selección Modelo de dispositivo de.

  4. Conecte los modelos de dispositivo.

    En el diseñador de flores, selecciona el borde de la pestaña Sensor de movimiento y conectarlo al modelo de dispositivo EjemploCámaraRkgn Modelo de dispositivo de. A continuación, conecte el EjemploCámaraRkgn del modelo del dispositivo, Recodificación el modelo de servicio y el Selección del dispositivo de la misma manera.

    
              
                EjemploCámaraRkgn del modelo del dispositivo,
                  Recodificación modelo de servicio, y
                  Selección modelo de dispositivo conectado mediante líneas rectas.
  5. Actualice el disparador del sensor de movimiento.

    En el editor del disparador que aparece en el panel derecho, para Condición, elige EstadoCambiado. Para Acción, elige Gráfico de objetos.inicioFlujo.

  6. Actualice la acción del modelo del dispositivo de cámara.

    1. En el diseñador de flores, selecciona la opción EjemploCámaraRkgn Modelo de dispositivo de.

    2. En el editor de acciones que aparece en el panel derecho, seleccione Ninguna acción configurado.

    3. Para Acción, elige capturar.

    4. Expandir Saliday, a continuación, introduzca cameraRkgnExampleResult.

  7. Actualización de la Recodificación Actividad del modelo de servicio de.

    1. En el diseñador de flores, selecciona la opción Recodificación modelo de servicio.

    2. En la pestaña que aparece en el panel derecho, seleccione Ninguna acción configurado.

    3. Para Acción, elige detectarcaras.

    4. Expandir Entradasy, a continuación, selecciona Definir entrada.

    5. Para Nombredecubo, introducir ${cameraRkgnExampleResult.s3BucketName}.

    6. Para nombre de artículo, introduzca ${cameraRkgnExampleResult.s3ItemName}.

    7. Expandir Saliday, a continuación, introduzca rekognitionResult.

  8. Actualice la actividad del modelo de dispositivo de pantalla.

    1. En el diseñador de flores, selecciona la opción Selección Modelo de dispositivo de.

    2. En el editor de acciones que aparece en el panel derecho, seleccione Ninguna acción configurado.

    3. Para Acción, elige visualización.

    4. Expandir Entradasy, a continuación, selecciona Definir entrada.

    5. Para URL de imagen, introduzca ${cameraRkgnExampleResult.lastClickedImage}.

  9. Publique el flujo.

    Elegir Publicar en la parte superior derecha de la página. Esto crea el y lo añade a la lista de flujos que se pueden implementar.

Asociar cosas a modelos de dispositivos

  1. Asocie objetos a modelos de dispositivos.

    Seleccione el icono de menú en la parte superior izquierda de la página. Luego elige Cosas.

    En la Cosas selecciona el sensor de movimiento que creado anteriormente. Luego elige Asociar con dispositivo.

  2. En la Seleccionar modelo de dispositivo selecciona Sensor de movimiento HCSR501. Elegir [EMPTY]. Este paso asocia el objeto del sensor de movimiento HCSR501MotionSensor en su registro con el modelo de dispositivo del sensor de movimiento en su flujo. El dispositivo HCSR501MotionSensor implementa la capacidad del modelo de dispositivo sensor de movimiento.

  3. Después de volver al paso Seleccionar modelo de dispositivo , actualice la página para verificar que el sensor de movimiento El objeto de está asociado al dispositivo HCSR501MotionSensor. Repite el los dos pasos anteriores para la RaspberryPiCameraRkgnExample y RaspberryPiScreen dispositivos.

Crear e implementar la configuración de flujo

  1. Cree la configuración de flujo.

    Seleccione el icono de menú en la parte superior izquierda de la página y, a continuación, seleccione Caudales para volver al paso Caudales página. En la Caudales , selecciona la casilla junto al flujo que acabas de y, a continuación, selecciona Crear configuración de flujo.

  2. Asigne un nombre a la configuración de flujo.

    En la Describir configuración de flujo , selecciona tu flujo y, a continuación, introduce un nombre de configuración de flujo. El nombre de la configuración de flujo no puede contener espacios. Elegir de la hierba de Greengrassy, a continuación, selecciona Siguiente.

  3. Configure el destino.

    En la Página Configure target (Configurar destino), introduce el nombre de tu Amazon S3 y el bucket de AWS IoT Greengrass en el que tu AWS IoT Greengrass El dispositivo del núcleo de pertenece a. Amazon S3 Los buckets de son únicos globalmente, por lo que el nombre del bucket será diferente del de la siguiente captura de pantalla. Elegir Siguiente.

  4. Seleccione objetos para su implementación.

    El Objetos del mapa proporciona una interfaz para seleccionar los objetos específicos que incluirá en la implementación. Los menús en cada modelo de dispositivo de la implementación contiene todos los objetos que ha asociado con el Modelo de dispositivo de. Al empezar, los menús de cada modelo de dispositivo de esta página incluya solo un objeto (el objeto que ha asociado a cada modelo de dispositivo).

    En la Objetos del mapa página, para sensor de movimiento, selecciona el objeto del sensor de movimiento que que creó anteriormente. Selecciona la cámara y las cosas de la pantalla para el Cámara y Selección del dispositivo de EE.UU.. Elegir Siguiente.

  5. Vea el disparador.

    En la Definir activador , el GraphQL que define el disparador de eventos de movimiento para el flujo aparece en el editor. Cuando el sensor de movimiento detecta el movimiento, el ThingsGraph.startFlow La función inicia el flujo. No es necesario editar este código.

    Elegir Revisión.

  6. Revise y cree.

    En la Revisar y crear , revise la información que ha introducido para la configuración de flujo. Elegir [EMPTY].

  7. Implemente.

    Cuando el Configuración de flujo creada aparece el mensaje, selecciona Implementar ahora.

    Actualizar el Implementaciones para verificar que el flujo ha implementado. Después de una implementación correcta, la Implementaciones se muestra la página Implementado en el destino en el Estado columna.

Ejecute el flujo

Porque la pantalla no utiliza la información devuelta por el Amazon Rekognition del modelo de servicio, los pasos para ejecutar este flujo son los mismos que en Creación de un flujo con dispositivos.

Eliminar el flujo y la configuración del flujo (opcional)

Para obtener instrucciones sobre cómo anular la implementación de una configuración de flujo y eliminar la configuración de flujo y el flujo que ha creado, consulte Eliminación de configuraciones de flujo y Eliminación de sistemas, flujos y espacios de nombres en Administración del ciclo de vida de entidades, flujos, sistemas e implementaciones de AWS IoT Things Graph.