Hallo,
kann dir nur eine Lösung in Skript geben, da ich Blockly nicht nutze:
const idInputAmpere = "ADAPTER.NR.INSTANZ"; // Hier den Strommesser definieren
const idSchlepp = "javascript." + instance + ".Schleppzeiger.Ampere; // Neuer Datenpunkt für VIS
const minimal = 0; // statt 0 kannst du natürlich auch einen anderen Minimalwert nehmen
createState(idSchlepp, minimal, false, {
name: "Schleppzeiger Ampere",
desc: "Schleppzeiger für Stromstärke",
type: "number",
unit: "A",
role: "value.max"
});
on({
id: idInputAmpere,
change: "gt" // neuer wert größer als alter wert
}, function(obj) {
log("Schleppzeiger Stromstärke - alter Wert: " + obj.oldState.val + "A - neuer Wert: " + obj.state.val + "A");
setState(idInputAmpere, obj.state.val);
});
schedule("0 0 0 0 0", function() { // Mitternacht
setState(idSchlepp, minimal);
log("Schleppzeiger zurückgesetzt");
});
Dazu musst du in den VIS-Widget-Einstellungen den Maximalwert unter "max" als Binding einfügen. Ich gehe jetzt mal von der javascript-Instanz "0" aus, dann sieht das so aus:
{javascript.0.Schleppzeiger.Ampere}
So passt sich dieser Wert immer dem Maxwert an.
Und natürlich die gleiche ID ohne die geschweiften Klammern in ID eintragen.
Gruß
Pix