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à.
AWS IoT SiteWise
L'azione AWS IoT SiteWise (iotSiteWise) invia i dati da un messaggio MQTT alle proprietà degli asset in. AWS IoT SiteWise
Puoi seguire un tutorial che ti mostra come importare dati dalle cose. AWS IoT Per ulteriori informazioni, consulta il tutorial Immissione di dati AWS IoT SiteWise da AWS IoT oggetti o la sezione Acquisizione di dati utilizzando le regole di AWS IoT base della Guida per l'utente. AWS IoT SiteWise
Requisiti
Questa operazione della regola presenta i seguenti requisiti:
-
Un ruolo IAM che AWS IoT può assumere l'esecuzione dell'operazione.
iotsitewise:BatchPutAssetPropertyValuePer ulteriori informazioni, consulta Concessione di un AWS IoT regola l'accesso che richiede.È possibile collegare al ruolo la seguente policy di fiducia di esempio.
-
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iotsitewise:BatchPutAssetPropertyValue", "Resource": "*" } ] }
Per migliorare la sicurezza, puoi specificare un percorso gerarchico AWS IoT SiteWise degli asset nella
Conditionproprietà. L'esempio seguente è una policy di attendibilità che specifica un percorso della gerarchia di un asset.-
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iotsitewise:BatchPutAssetPropertyValue", "Resource": "*", "Condition": { "StringLike": { "iotsitewise:assetHierarchyPath": [ "/root node asset ID", "/root node asset ID/*" ] } } } ] }
-
Quando invii dati a AWS IoT SiteWise con questa azione, i tuoi dati devono soddisfare i requisiti dell'
BatchPutAssetPropertyValueoperazione. Per ulteriori informazioni, consulta BatchPutAssetPropertyValue nella documentazione di riferimento dell’API AWS IoT SiteWise .
Parameters
Quando si crea una AWS IoT regola con questa azione, è necessario specificare le seguenti informazioni:
putAssetPropertyValueEntries-
Un elenco di voci del valore della proprietà dell'asset che contengono ciascuna le seguenti informazioni:
propertyAlias-
(Facoltativo) L'alias di proprietà associato alla proprietà dell'asset. Specifica un
propertyAliaso unassetIde unpropertyIdinsieme. Per ulteriori informazioni sugli alias di proprietà, consulta Mappatura dei flussi di dati industriali alle proprietà degli asset nella Guida per l'utente AWS IoT SiteWise .Supporta modelli di sostituzione: sì
assetId-
(Facoltativo) L'ID della AWS IoT SiteWise risorsa. Specifica un
propertyAliaso unassetIde unpropertyIdinsieme.Supporta modelli di sostituzione: sì
propertyId-
(Facoltativo) L'ID di una proprietà di asset. Specifica un
propertyAliaso unassetIde unpropertyIdinsieme.Supporta modelli di sostituzione: sì
entryId-
(Facoltativo) Un identificatore univoco per questa voce. Definisci
entryIdper monitorare meglio il messaggio che ha causato un errore, se del caso. Il valore predefinito è un nuovo UUID.Supporta modelli di sostituzione: sì
propertyValues-
Un elenco di valori di proprietà da inserire che contengono timestamp, quality e value (TQV) nel formato seguente:
timestamp-
Una struttura timestamp contenente le seguenti informazioni:
timeInSeconds-
Una stringa che contiene il tempo in secondi nel tempo di epoca Unix. Se il payload del messaggio non ha un timestamp, è possibile utilizzare timestamp(), che restituisce l'ora corrente in millisecondi. Per convertire il tempo in secondi, è possibile utilizzare il seguente modello di sostituzione:
${floor(timestamp() / 1E3)}.Supporta modelli di sostituzione: sì
offsetInNanos-
(Facoltativo) Una stringa che contiene l'offset del tempo in nanosecondi dal tempo espresso in secondi. Se il payload del messaggio non ha un timestamp, è possibile utilizzare timestamp(), che restituisce l'ora corrente in millisecondi. Per calcolare l'offset del nanosecondo da quel momento, è possibile utilizzare il seguente modello di sostituzione:
${(timestamp() % 1E3) * 1E6}.Supporta modelli di sostituzione: sì
Per quanto riguarda l'ora dell'epoca Unix, AWS IoT SiteWise accetta solo voci con un timestamp fino a 7 giorni nel passato e fino a 5 minuti nel futuro.
quality-
(Facoltativo) Una stringa che descrive la qualità del valore. Valori validi:
GOOD,BAD,UNCERTAIN.Supporta modelli di sostituzione: sì
value-
Una struttura di valori che contiene uno dei seguenti campi valore, a seconda del tipo di dati della proprietà dell'asset:
booleanValue-
(Facoltativo) Una stringa che contiene il valore booleano della voce di valore.
Supporta modelli di sostituzione: sì
doubleValue-
(Facoltativo) Una stringa che contiene il doppio valore della voce di valore.
Supporta modelli di sostituzione: sì
integerValue-
(Facoltativo) Una stringa che contiene il valore intero della voce di valore.
Supporta modelli di sostituzione: sì
stringValue-
(Facoltativo) Il valore stringa della voce valore.
Supporta modelli di sostituzione: sì
roleArn-
L'ARN del ruolo IAM che concede il AWS IoT permesso di inviare il valore di una proprietà dell'asset a. AWS IoT SiteWise Per ulteriori informazioni, consulta Requisiti.
Supporta modelli di sostituzione: no
Esempi
Il seguente esempio JSON definisce un' SiteWise azione IoT di base in una regola. AWS IoT
{ "topicRulePayload": { "sql": "SELECT * FROM 'some/topic'", "ruleDisabled": false, "awsIotSqlVersion": "2016-03-23", "actions": [ { "iotSiteWise": { "putAssetPropertyValueEntries": [ { "propertyAlias": "/some/property/alias", "propertyValues": [ { "timestamp": { "timeInSeconds": "${my.payload.timeInSeconds}" }, "value": { "integerValue": "${my.payload.value}" } } ] } ], "roleArn": "arn:aws:iam::123456789012:role/aws_iot_sitewise" } } ] } }
Il seguente esempio JSON definisce un' SiteWise azione IoT in una AWS IoT regola. In questo esempio vengono utilizzati l'argomento come alias di proprietà e la funzione timestamp(). Ad esempio, se si pubblicano i dati su /company/windfarm/3/turbine/7/rpm, questa operazione invia i dati alla proprietà dell'asset con un alias di proprietà uguale all'argomento specificato.
{ "topicRulePayload": { "sql": "SELECT * FROM '/company/windfarm/+/turbine/+/+'", "ruleDisabled": false, "awsIotSqlVersion": "2016-03-23", "actions": [ { "iotSiteWise": { "putAssetPropertyValueEntries": [ { "propertyAlias": "${topic()}", "propertyValues": [ { "timestamp": { "timeInSeconds": "${floor(timestamp() / 1E3)}", "offsetInNanos": "${(timestamp() % 1E3) * 1E6}" }, "value": { "doubleValue": "${my.payload.value}" } } ] } ], "roleArn": "arn:aws:iam::123456789012:role/aws_iot_sitewise" } } ] } }
Consulta anche
-
Cos'è AWS IoT SiteWise? nella Guida per l'utente di AWS IoT SiteWise
-
Inserimento di dati utilizzando AWS IoT Core le regole della Guida per l'utente AWS IoT SiteWise
-
Inserimento di dati AWS IoT SiteWise da AWS IoT elementi contenuti nella Guida per l'utente AWS IoT SiteWise
-
Risoluzione dei problemi relativi all'azione di una AWS IoT SiteWise regola nella Guida per l'utente AWS IoT SiteWise