Grundlegende Konfiguration
Bei der Standardbereitstellung von Manufacturing Data Engine (MDE) werden standardmäßig keine Konfigurationseinstellungen angewendet, die für die Datenerfassung erforderlich sind.
In dieser Anleitung wird eine grundlegende MDE-Einrichtung beschrieben. Sie können sie beispielsweise verwenden, um zu testen, ob das System durchgängig funktioniert. Mit dieser Anleitung können Sie Nachrichtenklassen, Typen und Parser für alle drei Archetypen erstellen.
Wenn Sie Manufacturing Connect edge (MCe) zum Erfassen von Daten verwenden möchten, stellen Sie stattdessen das Standardkonfigurationspaket bereit.
Sie können diese Konfiguration entweder über die MDE API oder die Weboberfläche vornehmen.
Nachrichtenklassen
In diesem Abschnitt finden Sie Beispiele für die in MDE verfügbaren Nachrichtenklassen.
Nachrichtenklasse für numeric
Das folgende Beispiel zeigt eine basic-numeric-Nachrichtenklasse:
REST
POST /configuration/v1/message-classes
{
"name": "basic-numeric",
"priority": 2000,
"expression": "#root.event['value'] instanceof T(Number) && #root.event['timestamp'] != null && #root.event['tagName'] != null"
}
Weboberfläche
Name der Nachrichtenklasse: basic-numeric
- Klicken Sie auf der MDE-Weboberfläche auf Nachrichtenklassen.
- Klicken Sie auf Neue Nachrichtenklasse hinzufügen.
- Geben Sie als Name der Nachrichtenklasse
basic-numericein. Kopieren Sie den folgenden Ausdruck und fügen Sie ihn in das Feld Ausdruck ein:
#root.event['value'] instanceof T(Number) && #root.event['timestamp'] != null && #root.event['tagName'] != nullÄndern Sie die Priorität in
2000.Klicken Sie auf Erstellen.

Nachrichtenklasse für discrete
Das folgende Beispiel zeigt eine basic-discrete-Nachrichtenklasse:
REST
POST /configuration/v1/message-classes
{
"name": "basic-discrete",
"priority": 1975,
"expression": "#root.event['value'] != null && !(#root.event['value'] instanceof T(Number)) && #root.event['timestamp'] != null && #root.event['tagName'] != null"
}
Weboberfläche
Name der Nachrichtenklasse: basic-discrete
- Klicken Sie auf der MDE-Weboberfläche auf Nachrichtenklassen.
- Klicken Sie auf Neue Nachrichtenklasse hinzufügen.
- Geben Sie als Name der Nachrichtenklasse
basic-discreteein. Kopieren Sie den folgenden Ausdruck und fügen Sie ihn in das Feld Ausdruck ein:
#root.event['value'] != null && !(#root.event['value'] instanceof T(Number)) && #root.event['timestamp'] != null && #root.event['tagName'] != nullÄndern Sie die Priorität in
1975.Klicken Sie auf Erstellen.

Nachrichtenklasse für continuous
Das folgende Beispiel zeigt eine basic-continuous-Nachrichtenklasse:
REST
POST /configuration/v1/message-classes
{
"name": "basic-continuous",
"priority": 1950,
"expression": "#root.event['value'] != null && !(#root.event['value'] instanceof T(Number)) && #root.event['startTimestamp'] != null && #root.event['endTimestamp'] != null && #root.event['tagName'] != null"
}
Weboberfläche
Name der Nachrichtenklasse: basic-continuous
- Klicken Sie auf der MDE-Weboberfläche auf Nachrichtenklassen.
- Klicken Sie auf Neue Nachrichtenklasse hinzufügen.
- Geben Sie als Name der Nachrichtenklasse
basic-continuousein. Kopieren Sie den folgenden Ausdruck und fügen Sie ihn in das Feld Ausdruck ein:
#root.event['value'] != null && !(#root.event['value'] instanceof T(Number)) && #root.event['startTimestamp'] != null && #root.event['endTimestamp'] != null && #root.event['tagName'] != nullÄndern Sie die Priorität in
1950.Klicken Sie auf Erstellen.

Typen
In diesem Abschnitt finden Sie eine Übersicht über die in MDE verfügbaren Typen.
Typ für numeric
Das folgende Beispiel zeigt einen basic-numeric-Typ:
REST
POST /configuration/v1/types
{
"archetype": "NUMERIC_DATA_SERIES",
"name": "basic-numeric"
}
Weboberfläche
Name: basic-numeric
- Klicken Sie auf der MDE-Weboberfläche auf Typen.
- Klicken Sie auf Neuen Typ hinzufügen.
- Geben Sie als Typname
basic-numericein. Wählen Sie im Drop-down-Menü für Archetyp die Option
NUMERIC_DATA_SERIESaus:
Öffnen Sie den Bereich Speichereinstellungen.
Aktivieren oder deaktivieren Sie die Option An BigQuery senden.
Klicken Sie auf Erstellen.
Typ für discrete
Das folgende Beispiel zeigt einen basic-discrete-Typ:
REST
POST /configuration/v1/types
{
"archetype": "DISCRETE_DATA_SERIES",
"name": "basic-discrete"
}
Weboberfläche
Name: basic-discrete
- Klicken Sie auf der MDE-Weboberfläche auf Typen.
- Klicken Sie auf Neuen Typ hinzufügen.
- Geben Sie als Typname
basic-discreteein. Wählen Sie im Drop-down-Menü für Archetyp die Option
DISCRETE_DATA_SERIESaus:
Öffnen Sie den Bereich Speichereinstellungen.
Aktivieren oder deaktivieren Sie die Option An BigQuery senden.
Klicken Sie auf Erstellen.
Typ für continuous
Das folgende Beispiel zeigt einen basic-continuous-Typ:
REST
POST /configuration/v1/types
{
"archetype": "CONTINUOUS_DATA_SERIES",
"name": "basic-continuous"
}
Weboberfläche
Name: basic-continuous
- Klicken Sie auf der MDE-Weboberfläche auf Typen.
- Klicken Sie auf Neuen Typ hinzufügen.
- Geben Sie als Typname
basic-continuousein. Wählen Sie im Drop-down-Menü für Archetyp die Option
CONTINUOUS_DATA_SERIESaus:
Öffnen Sie den Bereich Speichereinstellungen.
Aktivieren oder deaktivieren Sie die Option An BigQuery senden.
Klicken Sie auf Erstellen.
Parser
In diesem Abschnitt finden Sie eine Übersicht über die verschiedenen in MDE verfügbaren Parser. Achten Sie darauf, dass die Typen vollständig bereitgestellt und active sind, bevor Sie die Parser erstellen. Dieser Vorgang kann bis zu drei Minuten dauern.
Parser für numeric
Das folgende Beispiel zeigt einen basic-numeric-Parser:
REST
POST /configuration/v1/parsers
{
"name": "basic-numeric-to-basic-numeric",
"messageClassName": "basic-numeric",
"typeReference": {
"name": "basic-numeric",
"version": 1
},
"script": "package mde\n\n[{\ntagName: $root.tagName;\ntimestamps: MapTimestamp($root);\ndata: MapData($root);\nembeddedMetadata: $root[where ($.field != \"value\" and $.field != \"tagName\" and $.field != \"timestamp\" and $.field != \"messageId\")];\n}]\n\ndef MapTimestamp(input) {\n eventTimestamp: input.timestamp;\n}\n\ndef MapData(input) {\n numeric: input.value;\n}"
}
Weboberfläche
Name: basic-numeric-to-basic-numeric
- Klicken Sie auf der MDE-Weboberfläche auf Parser.
- Klicken Sie auf Neuen Parser hinzufügen.
- Geben Sie als Parsername
basic-numeric-to-basic-numericein. - Wählen Sie im Drop-down-Menü für Name der Nachrichtenklasse die Option
basic-numericaus. Kopieren Sie den folgenden Whistle-Code und fügen Sie ihn in das Feld Parser ein:
package mde [{ tagName: $root.tagName; timestamps: MapTimestamp($root); data: MapData($root); embeddedMetadata: $root[where ($.field != "value" and $.field != "tagName" and $.field != "timestamp" and $.field != "messageId")]; }] def MapTimestamp(input) { eventTimestamp: input.timestamp; } def MapData(input) { numeric: input.value; }Wählen Sie im Drop-down-Menü für Typ die Option
basic-numeric | version: 1aus.Klicken Sie auf Erstellen.

Parser für discrete
Das folgende Beispiel zeigt einen basic-discrete-Parser:
REST
POST /configuration/v1/parsers
{
"name": "basic-discrete-to-basic-discrete",
"messageClassName": "basic-discrete",
"typeReference": {
"name": "basic-discrete",
"version": 1
},
"script": "package mde\n\n[{\ntagName: $root.tagName;\ntimestamps: MapTimestamp($root);\ndata: MapData($root);\nembeddedMetadata: $root[where ($.field != \"value\" and $.field != \"tagName\" and $.field != \"timestamp\" and $.field != \"messageId\")];\n}]\n\ndef MapTimestamp(input) {\n eventTimestamp: input.timestamp;\n}\n\ndef MapData(input) {\n complex: input.value;\n}\n"
}
Weboberfläche
Name: basic-discrete-to-basic-discrete
- Klicken Sie auf der MDE-Weboberfläche auf Parser.
- Klicken Sie auf Neuen Parser hinzufügen.
- Geben Sie als Parsername
basic-numeric-to-basic-discreteein. - Wählen Sie im Drop-down-Menü für Name der Nachrichtenklasse die Option
basic-discreteaus. Kopieren Sie den folgenden Whistle-Code und fügen Sie ihn in das Feld Parser ein:
package mde [{ tagName: $root.tagName; timestamps: MapTimestamp($root); data: MapData($root); embeddedMetadata: $root[where ($.field != "value" and $.field != "tagName" and $.field != "timestamp" and $.field != "messageId")]; }] def MapTimestamp(input) { eventTimestamp: input.timestamp; } def MapData(input) { complex: input.value; }Wählen Sie im Drop-down-Menü für Typ die Option
basic-discrete | version: 1aus.Klicken Sie auf Erstellen.

Parser für continuous
Das folgende Beispiel zeigt einen basic-continuous-Parser:
REST
POST /configuration/v1/parsers
{
"name": "basic-continuous-to-basic-continuous",
"messageClassName": "basic-continuous",
"typeReference": {
"name": "basic-continuous",
"version": 1
},
"script": "package mde\n\n[{\ntagName: $root.tagName;\ntimestamps: MapTimestamp($root);\ndata: MapData($root);\nduration: $root.duration;\nembeddedMetadata: $root[where ($.field != \"value\" and $.field != \"tagName\" and $.field != \"startTimestamp\" and $.field != \"endTimestamp\" and $.field != \"messageId\")];\n}]\n\ndef MapTimestamp(input) {\n continuousTimestamp: {\n eventTimestampStart: input.startTimestamp;\n eventTimestampEnd: input.endTimestamp;\n };\n}\n\ndef MapData(input) {\n complex: input.value;\n}\n"
}
Weboberfläche
Name: basic-continuous-to-basic-continuous
- Klicken Sie auf der MDE-Weboberfläche auf Parser.
- Klicken Sie auf Neuen Parser hinzufügen.
- Geben Sie als Parsername
basic-numeric-to-basic-continuousein. - Wählen Sie im Drop-down-Menü für Name der Nachrichtenklasse die Option
basic-continuousaus. Kopieren Sie den folgenden Whistle-Code und fügen Sie ihn in das Feld Parser ein:
package mde [{ tagName: $root.tagName; timestamps: MapTimestamp($root); data: MapData($root); duration: $root.duration; embeddedMetadata: $root[where ($.field != "value" and $.field != "tagName" and $.field != "startTimestamp" and $.field != "endTimestamp" and $.field != "messageId")]; }] def MapTimestamp(input) { continuousTimestamp: { eventTimestampStart: input.startTimestamp; eventTimestampEnd: input.endTimestamp; }; } def MapData(input) { complex: input.value; }Wählen Sie im Drop-down-Menü für Typ die Option
basic-continuous | version: 1aus.Klicken Sie auf Erstellen.
