Ausdrücke
Ausdrücke ermöglichen die Durchführung von Berechnungen, hauptsächlich für die Konvertierung von Rohdaten in Geräten.
Was sind Ausdrücke?
Ausdrücke sind Texte, die es ermöglichen, Daten auszuwerten, Berechnungen durchzuführen und letztendlich einen einzelnen Wert zurückzugeben. Ausdrücke können Variablen enthalten, sodass die Werte dieser Variablen in den Berechnungen verwendet werden.
Datentypen
Die in Cloud Studio integrierte Ausdrucks-Engine unterstützt drei Datentypen: Zahl, Zeichenkette und Boolean, wie nachfolgend dargestellt:
| Data type | Comments |
|---|---|
| Number | Number data types represent numbers, either integers or floating-point (with decimals). |
| String | Represent texts, and when written as constants, they must be enclosed using single quotes ('). When a text must contain a single quote, it can be represented as a constant using two consecutive single quotes (''). |
| Boolean | Represents a boolean (logical) condition, which can only be true or false. |
Variablen
Wenn Ausdrücke für die Konvertierung von Rohdaten in Geräten verwendet werden, gibt es eine implizite Variable RawData, die den vom Gerät gesendeten Rohwert enthält. Diese Variable kann direkt in jedem Datenkonvertierungsausdruck verwendet werden, aber es ist wichtig zu beachten, dass die Variable vom Typ Zeichenkette ist. Es ist in der Regel erforderlich, die Variable in eine Zahl zu konvertieren (unter Verwendung der Funktion ToNumber) und bei Bedarf weitere Konvertierungsfunktionen anzuwenden.
Einige Beispiele für Ausdrücke
| Expression | Comments |
|---|---|
| 25 | Constant, with value 25 (number) |
| 'Hola, mundo' | Constant, with value "Hola, mundo" (string) |
| False | Constant, with value false (boolean) |
| 'I''m happy with expressions' | Constant with value "I'm happy with expressions" (string). Note the use of double single quotes for the single quote after "I". |
| 5 * 6 | Expression with value 30 (number), corresponding to the multiplication of 5 by 6. |
| (2 + 3) * 6 | Expression with value 30 (number), corresponding to an addition and a multiplication. |
| 'Tengo ' + ToString(6 * 5) + ' anos' | Expression with value "Tengo 30 anos" (string), using a multiplication and a number-to-string conversion using the ToString function. |
| 25 < 8 | Expression with value false (boolean), corresponding to a less-than comparison. |
| not (25 < 8) | Expression with value true (boolean), corresponding to the negation of a less-than comparison. |
| Sqrt(81) | Expression with value 9 (number), calculated as the square root of 81 using the Sqrt function. |
| ToNumber(RawData) / 10 | Numeric expression whose value depends on the special RawData variable. The expression takes the value of RawData, converts it to a number, and then divides it by 10. |
Welche Auswirkung haben Groß- und Kleinschreibung auf Ausdrücke?
In der Ausdrucks-Engine der Cloud Studio-Plattform wird bei Variablennamen, Funktionen usw. nicht zwischen Groß- und Kleinschreibung unterschieden, das heißt, es spielt keine Rolle, ob sie in Großbuchstaben, Kleinbuchstaben oder einer Mischung aus beidem geschrieben werden. Beispielsweise sind alle folgenden Ausdrücke gleichwertig:
ToString(NOT (valor < 25))
tostring(not (valor < 25))
TOSTRING(not (VALOR< 25))Wo können Ausdrücke verwendet werden?
Derzeit können Ausdrücke für die Konvertierung von Rohdaten in Geräten verwendet werden. Dies ermöglicht es, Rohinformationen von bestimmten Geräten (typischerweise Sensoren) zu erhalten und mithilfe von Ausdrücken diese Daten in Werte zu konvertieren, die in die Plattform eingespeist werden können.
Kann ich mit Ausdrücken programmieren?
Nein, Ausdrücke sind kein Programmierwerkzeug, sondern ein Berechnungswerkzeug. Ausdrücke verfügen nicht über Kontrollstrukturen wie for, while usw. und sind nicht für diesen Zweck konzipiert.
Wie kann ich meine Ausdrücke testen?
Im Allgemeinen verfügt jede Funktionalität, die die Verwendung von Ausdrücken ermöglicht, über die Möglichkeit, jeden Ausdruck direkt dort mit Testwerten zu testen. Als Beispiel können Sie die Referenz zur Konvertierung von Rohdaten für Geräte konsultieren.
Wie kann ich hexadezimale Zahlen darstellen?
Die Ausdrucks-Engine ermöglicht die Darstellung hexadezimaler Zahlen durch Voranstellen des Präfixes "0x" oder alternativ des Präfixes "$" (beide Methoden sind gleichwertig). Beispielsweise stellt der Wert 0x100 (oder alternativ $100) die hexadezimale Zahl 100 dar, was der Dezimalzahl 256 entspricht.
Weitere Informationen
Für weitere Informationen über Ausdrücke konsultieren Sie die Referenz zu Operatoren und Funktionen.
Konvertierung von Rohdaten (Raw)
Die Konvertierung von Rohdaten führt Berechnungen an den von einem Gerät erhaltenen Daten durch und passt sie an die für die Eingabe in die Plattform benötigten Werte an.
Datenformate
Bei der Verwendung der APIs über HTTP und MQTT müssen bestimmte Datenformate eingehalten werden, wie nachfolgend beschrieben.