Uso y creación de tipos de componentes - AWS IoT TwinMaker

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.

Uso y creación de tipos de componentes

En este tema se explican los valores y estructuras que se utilizan para crear un tipo de AWS IoT TwinMaker componente. En él se muestra cómo crear un objeto de solicitud que se puede pasar a la CreateComponentTypeAPI o mediante el editor de tipos de componentes de la AWS IoT TwinMaker consola.

Los componentes proporcionan contexto para las propiedades y los datos de sus entidades asociadas.

Tipos de componentes integrados

En la AWS IoT TwinMaker consola, al elegir un espacio de trabajo y, a continuación, elegir Tipos de componentes en el panel izquierdo, aparecen los siguientes tipos de componentes.

  • com.amazon.iotsitewise.resourcesync: tipo de componente que sincroniza automáticamente los activos y modelos de AWS IoT SiteWise activos y los convierte en componentes y tipos de componentes de entidades. AWS IoT TwinMaker Para obtener más información sobre el uso de la sincronización de activos, consulta Sincronización de activos con. AWS IoT SiteWiseAWS IoT SiteWise

  • com.amazon.iottwinmaker.alarm.basic: es un componente de alarma básico que extrae datos de la alarma de un origen externo a una entidad. Este componente no contiene una función que se conecte a un origen de datos específico. Esto significa que el componente de la alarma es abstracto y lo puede heredar otro tipo de componente que especifique un origen de datos y una función que lea desde ese origen.

  • com.amazon.iottwinmaker.documents: es una asignación sencilla de títulos a URL para documentos que contienen información sobre una entidad.

  • com.amazon.iotsitewise.connector.edgevideo: componente que extrae vídeo de un dispositivo IoT mediante el componente Edge Connector for Kinesis Video Streams a una entidad. AWS IoT Greengrass El componente Edge Connector para Kinesis Video AWS IoT Greengrass Streams no es AWS IoT TwinMaker un componente, sino un componente AWS IoT Greengrass prediseñado que se implementa localmente en su dispositivo de IoT.

  • com.amazon.iotsitewise.connector: es un componente que introduce datos de AWS IoT SiteWise en una entidad.

  • com.amazon.iottwinmaker.parameters: es un componente que agrega pares clave-valor estáticos a una entidad.

  • com.amazon.kvs.video: componente que extrae vídeo de Kinesis Video Streams a una entidad. AWS IoT TwinMaker

La página de la consola de tipos de componentes con una lista de varios tipos de componentes predefinidos.

Características principales de los tipos de AWS IoT TwinMaker componentes

En la siguiente lista se describen las principales características de los tipos de componentes.

  • Definiciones de propiedades: el PropertyDefinitionRequestobjeto define una propiedad que se puede rellenar en el compositor de escenas o se puede rellenar con datos extraídos de fuentes de datos externas. Las propiedades estáticas que establezca se almacenan en AWS IoT TwinMaker. Las propiedades de las series temporales y otras propiedades que se extraen de los orígenes de datos se almacenan de forma externa.

    Las definiciones de propiedades se especifican dentro de una cadena en el mapa PropertyDefinitionRequest. Cada cadena de la asignación debe ser exclusiva del mapa.

  • Funciones: el FunctionRequestobjeto especifica una función Lambda que lee y, potencialmente, escribe en una fuente de datos externa.

    Un tipo de componente que contiene una propiedad con un valor almacenado externamente, pero que no tiene una función correspondiente para recuperar los valores es un tipo de componente abstracto. Puede ampliar tipos de componentes concretos a partir de un tipo de componente abstracto. No puede agregar tipos de componentes abstractos a una entidad. No aparecen en el compositor de escenas.

    Las funciones se especifican dentro de una cadena a un mapa FunctionRequest. La cadena debe especificar uno de los siguientes tipos de función predefinidos.

    • dataReader: es una función que extrae datos de un origen externo.

    • dataReaderByEntity: es una función que extrae datos de un origen externo.

      Cuando se utiliza este tipo de lector de datos, la operación de la GetPropertyValueHistoryAPI solo admite consultas específicas de la entidad para las propiedades de este tipo de componente. (Solo puede solicitar el historial de valores de las propiedades para componentName + entityId).

    • dataReaderByComponentType: es una función que extrae datos de un origen externo.

      Cuando se utiliza este tipo de lector de datos, la operación de la GetPropertyValueHistoryAPI solo admite consultas entre entidades para las propiedades de este tipo de componente. (Solo puede solicitar el historial de valores de la propiedad para componentTypeId).

    • dataWriter: es una función que escribe datos en un origen externo.

    • schemaInitializer: es una función que inicializa automáticamente los valores de las propiedades cada vez que se crea una entidad que contiene el tipo de componente.

    En un tipo de componente no abstracto se requiere uno de los tres tipos de funciones de lectura de datos.

    Para ver un ejemplo de una función de Lambda que implementa componentes de telemetría de Timestream, incluidas las alarmas, consulte el lector de datos en Muestras de AWS IoT TwinMaker.

    nota

    Como el conector de la alarma hereda del tipo de componente de la alarma abstracta, la función de Lambda debe devolver el valor alarm_key. Si no devuelve este valor, Grafana no lo reconocerá como una alarma. Esto es obligatorio para todos los componentes que devuelven alarmas.

  • Herencia: los tipos de componentes promueven la reutilización del código mediante la herencia. Un tipo de componente puede heredar hasta 10 tipos de componentes principales.

    Utilice el parámetro extendsFrom para especificar los tipos de componentes de los que su tipo de componente hereda propiedades y funciones.

  • isSingleton: algunos componentes contienen propiedades, como las coordenadas de ubicación, que no se pueden incluir más de una vez en una entidad. Establezca el valor del parámetro isSingleton como true para indicar que su tipo de componente solo se puede incluir una vez en una entidad.

Creación de definiciones de propiedades

En la tabla siguiente se describen los parámetros de una PropertyDefinitionRequest.

Parámetro

Descripción

isExternalId

Un booleano que especifica si la propiedad es un identificador único (como un identificador de AWS IoT SiteWise activo) del valor de una propiedad que se almacena externamente.

El valor predeterminado de esta propiedad es false.

isStoredExternally

Un valor booleano que especifica si la propiedad está almacenada externamente.

El valor predeterminado de esta propiedad es false.

isTimeSeries

Un valor booleano que especifica si la propiedad almacena datos de serie temporal.

El valor predeterminado de esta propiedad es false

isRequiredInEntity

Un booleano que especifica si la propiedad debe tener un valor en una entidad que utilice el tipo de componente.

dataType

DataTypeObjeto que especifica el tipo de datos (como cadena, mapa, lista y unidad de medida) de la propiedad.

defaultValue

DataValueObjeto que especifica el valor predeterminado de la propiedad.

configuration

Un string-to-string mapa que especifica la información adicional que necesita para conectarse a una fuente de datos externa.

Creación de funciones

En la tabla siguiente se describen los parámetros de una FunctionRequest.

Parámetro

Descripción

implementedBy

DataConnectorObjeto que especifica la función Lambda que se conecta a la fuente de datos externa.

requiredProperties

Una lista de propiedades que la función necesita para leer y escribir en un origen de datos externo.

scope

El ámbito de una función. Utilice Workspace para funciones con un alcance que abarca todo un espacio de trabajo. Utilice Entity para funciones con un alcance limitado a la entidad que contiene el componente.

Para ver ejemplos que muestran cómo crear y extender tipos de componentes, consulte Tipos de componentes de ejemplo.