Utilizzo e creazione di tipi di componenti - AWS IoT TwinMaker

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Utilizzo e creazione di tipi di componenti

Questo argomento illustra i valori e le strutture utilizzati per creare un tipo di AWS IoT TwinMaker componente. Viene illustrato come creare un oggetto di richiesta che è possibile passare all'CreateComponentTypeAPI o utilizzando l'editor dei tipi di componenti nella AWS IoT TwinMaker console.

I componenti forniscono il contesto per le proprietà e i dati delle entità associate.

Tipi di componenti incorporati

Nella AWS IoT TwinMaker console, quando si sceglie un'area di lavoro e quindi si sceglie Tipi di componenti nel riquadro sinistro, vengono visualizzati i seguenti tipi di componenti.

  • com.amazon.iotsitewise.resourcesync: un tipo di componente che sincronizza automaticamente gli asset e i modelli di asset e li converte in entità, componenti e tipi di componenti. AWS IoT SiteWise AWS IoT TwinMaker Per ulteriori informazioni sull'utilizzo della sincronizzazione delle risorse, AWS IoT SiteWise consulta Sincronizzazione AWS IoT SiteWise delle risorse con.

  • com.amazon.iottwinmaker.alarm.basic: un componente di allarme di base che estrae i dati di allarme da una fonte esterna a un'entità. Questo componente non contiene una funzione che si connette a una fonte di dati specifica. Ciò significa che il componente di allarme è astratto e può essere ereditato da un altro tipo di componente che specifica una fonte di dati e una funzione che legge da tale fonte.

  • com.amazon.iottwinmaker.documents: una semplice mappatura dei titoli agli URL per i documenti che contengono informazioni su un'entità.

  • com.amazon.iotsitewise.connector.edgevideo: un componente che estrae video da un dispositivo IoT utilizzando il componente Edge Connector for Kinesis Video Streams in un'entità. AWS IoT Greengrass Il componente Edge Connector for Kinesis AWS IoT Greengrass Video Streams AWS IoT TwinMaker non è un componente, ma piuttosto AWS IoT Greengrass un componente precostruito che viene distribuito localmente sul tuo dispositivo IoT.

  • com.amazon.iotsitewise.connector: un componente che inserisce i dati in un'entità. AWS IoT SiteWise

  • com.amazon.iottwinmaker.parameters: un componente che aggiunge coppie chiave-valore statiche a un'entità.

  • com.amazon.kvs.video: un componente che trasferisce i video da Kinesis Video Streams in un'entità. AWS IoT TwinMaker

La pagina della console dei tipi di componenti con un elenco di diversi tipi di componenti predefiniti.

Caratteristiche principali dei tipi di AWS IoT TwinMaker componenti

L'elenco seguente descrive le caratteristiche principali dei tipi di componenti.

  • Definizioni delle proprietà: l'PropertyDefinitionRequestoggetto definisce una proprietà che è possibile inserire nel compositore di scene oppure può essere popolata con dati estratti da fonti di dati esterne. Le proprietà statiche impostate vengono memorizzate in. AWS IoT TwinMaker Le proprietà delle serie temporali e altre proprietà estratte dalle fonti di dati vengono archiviate esternamente.

    Le definizioni delle proprietà vengono specificate all'interno di una stringa nella mappa. PropertyDefinitionRequest Ogni stringa deve essere unica per la mappa.

  • Funzioni: l'FunctionRequestoggetto specifica una funzione Lambda che legge e potenzialmente scrive su un'origine dati esterna.

    Un tipo di componente che contiene una proprietà con un valore memorizzato esternamente ma che non dispone di una funzione corrispondente per recuperare i valori è un tipo di componente astratto. È possibile estendere tipi di componenti concreti da un tipo di componente astratto. Non è possibile aggiungere tipi di componenti astratti a un'entità. Non compaiono nel compositore di scene.

    Si specificano le funzioni all'interno di una stringa da FunctionRequest mappare. La stringa deve specificare uno dei seguenti tipi di funzione predefiniti.

    • dataReader: Una funzione che estrae dati da una fonte esterna.

    • dataReaderByEntity: Una funzione che estrae dati da una fonte esterna.

      Quando si utilizza questo tipo di lettore di dati, l'operazione GetPropertyValueHistoryAPI supporta solo query specifiche dell'entità per le proprietà di questo tipo di componente. (Puoi richiedere la cronologia dei valori della proprietà solo per componentName +.) entityId

    • dataReaderByComponentType: Una funzione che estrae dati da una fonte esterna.

      Quando si utilizza questo tipo di lettore di dati, l'operazione GetPropertyValueHistoryAPI supporta solo query tra entità per le proprietà di questo tipo di componente. (È possibile richiedere solo la cronologia dei valori della proprietà percomponentTypeId.)

    • dataWriter: Una funzione che scrive dati su una fonte esterna.

    • schemaInitializer: Una funzione che inizializza automaticamente i valori delle proprietà ogni volta che si crea un'entità che contiene il tipo di componente.

    Uno dei tre tipi di funzioni di lettura dei dati è richiesto in un tipo di componente non astratto.

    Per un esempio di funzione Lambda che implementa componenti di telemetria del flusso temporale, inclusi gli allarmi, consulta il lettore di dati in Samples.AWS IoT TwinMaker

    Nota

    Poiché il connettore di allarme eredita dal tipo di componente di allarme astratto, la funzione Lambda deve restituire alarm_key il valore. Se non restituisci questo valore, Grafana non lo riconoscerà come allarme. Questo è necessario per tutti i componenti che restituiscono allarmi.

  • Ereditarietà: i tipi di componenti promuovono la riutilizzabilità del codice attraverso l'ereditarietà. Un tipo di componente può ereditare fino a 10 tipi di componenti principali.

    Utilizzate il extendsFrom parametro per specificare i tipi di componenti da cui il tipo di componente eredita proprietà e funzioni.

  • isSingleton: alcuni componenti contengono proprietà, come le coordinate di posizione, che non possono essere incluse più di una volta in un'entità. Imposta il valore del isSingleton parametro su true per indicare che il tipo di componente può essere incluso una sola volta in un'entità.

Creazione di definizioni di proprietà

La tabella seguente descrive i parametri di aPropertyDefinitionRequest.

Parametro

Descrizione

isExternalId

Un valore booleano che specifica se la proprietà è un identificatore univoco (ad esempio un AWS IoT SiteWise asset Id) del valore di una proprietà memorizzato esternamente.

Il valore predefinito di questa proprietà è false.

isStoredExternally

Un valore booleano che specifica se il valore della proprietà è memorizzato esternamente.

Il valore predefinito di questa proprietà è false.

isTimeSeries

Un valore booleano che specifica se la proprietà memorizza dati di serie temporali.

Il valore predefinito di questa proprietà è false

isRequiredInEntity

Un valore booleano che specifica se la proprietà deve avere un valore in un'entità che utilizza il tipo di componente.

dataType

Un DataTypeoggetto che specifica il tipo di dati (ad esempio stringa, mappa, elenco e unità di misura) della proprietà.

defaultValue

Un DataValueoggetto che specifica il valore predefinito della proprietà.

configuration

Una string-to-string mappa che specifica le informazioni aggiuntive necessarie per la connessione a un'origine dati esterna.

Creazione di funzioni

La tabella seguente descrive i parametri di aFunctionRequest.

Parametro

Descrizione

implementedBy

Un DataConnectoroggetto che specifica la funzione Lambda che si connette all'origine dati esterna.

requiredProperties

Un elenco di proprietà di cui la funzione ha bisogno per leggere e scrivere su un'origine dati esterna.

scope

L'ambito della funzione. Da utilizzare Workspace per funzioni con un ambito che si estende su un intero spazio di lavoro. Utilizzare Entity per funzioni con un ambito limitato all'entità che contiene il componente.

Per esempi che mostrano come creare ed estendere i tipi di componenti, vedereEsempi di tipi di componenti.