Das Grundgerüst jeder Custom-Logik ist ein JSON-Objekt mit den vier Schlüsseln
...
Wie in anderen Programmiersprachen kann über Kommentar-Kennzeichnungen nicht nur der Code erläutert werden, sondern es können auch Code-Zeilen (vorübergehend) “ausgeschaltet” werden. Dies kann die Fehlersuche erleichtern.
Ergänzende Hinweise zum Bearbeitungsprozess einer Logik
Für Ersteller von Custom-Logiken ist zusätzlich noch Folgendes von Bedeutung: Variablen, die im Verlauf des Nach einem Durchgang behalten die Variablen ihre Werte, d.h. sie können bei einem zweiten Durchgang bleiben erhalten →
Custom-Logik Ein Abbruch wirkt unmittelbar, dies bedeutet, dass die Logik; abgerechnet wird am Schluss:
Level-Array
...
Der Level-Array dient der Deklaration von Variablen. Es müssen hier sämtliche Variablen deklariert werden, die im Logikmodul angewendet.
...
Austausch von Informationen zwischen den Modulen, In-und Output;
Ablaufsteuerung innerhalb des Moduls, indem einer Variable abhängig vom erfüllen einer Bedingung einen bestimmten Wert zugewiesen wird (Beispiele siehe ….)
Verwendung als Konstante, um bestimmte fixe Werte in den Modulen zu verwenden.
...
Codeblock |
---|
"Level": [ ["$true","bool",true], ["$false","bool",false], ["$Start","integer",0], ["$Ende","integer",0], ["$Zaehler","integer",0], ["$Period","integer",0], ["$Out","integer",0], ["$Z0", "integer",0], ["$Z1", "integer",1], ["$Z2", "integer",2], ["$Z3", "integer",3], ["$Z4", "integer",4], ["$Z5", "integer",5], ["$Z6", "integer",6], ["$Z7", "integer",7], ["$Z8", "integer",8], ["$Z9", "integer",9] ] |
Modul-Array
...
Im Modul-Array werden die Variablen mit den Ein- und Ausgängen der Modulbausteinen verknüpft und so die eigentliche(n) Funktion(en) des Logiksmoduls definiert.
...
Codeblock |
---|
"Module": [ ["Clocksignal","$true",0,"$Period"], // Intervalltakter ["Polynomial","$Z1","$Startwert",["$Start","-$Z1"]], // Startwert setzen, muss um 1 kleiner als Start sein, weil am Schluss Zaehler noch um 1 erhöht wird ["Polynomial","$Z1","$Endwert",["$Ende","-$Z1"]], // Endwert setzen, muss um 1 kleiner als Ende sein, siehe oben ["Comparator", "$Zaehler","$Test", "$Startwert"], // Prüfen, ob Zaehler über Startwert liegt ["Latch","$Start","$Zaehler","-$Test",0], // wenn Bedingung nicht erfüllt, Zaehler auf Start setzen ["Comparator", "$Zaehler", "$Test", "$Endwert"], // Prüfen, ob Zaheler über Endwert liegt ["Latch","$Startwert","$Zaehler","$Test",0], // wenn Bedingung erfüllt, Zaehler auf Startwert setzen ["Polynomial","$Z1","$Zaehler",["$Zaehler","$Z1"]] // Zaehler um 1 erhöhen ], |
Input-Array
Im Input-Array werden die Eingänge der Custom-Logikzelle festgelegt und je mit einer Variable verknüpft.
...
Codeblock |
---|
"Input": [ ["Startwert","Wert (integer), der als erstes ausgegeben wird ","$Start","c" ], ["Endwert","Wert (integer), der als letztes ausgegeben wird ","$Ende","c" ], ["Intervalldauer","in Sekunden","$Period","c"] ], |
Output-Array
Im Output-Array werden die Ausgänge der Custom-Logikzelle festgelegt und je mit einer Variable verknüpft.
...