NEWS
Zählen eines Zustandes
-
Hey Leute,
suche nun schon länger nach einer Lösung für mein Anliegen.
Ich würde gerne in der Vis einfach nur die Anzahl der Spülmaschinen Ladungen anzeigen. Also wie oft die Maschine angemacht wurde. Am besten in der Woche im jeweiligen Monat und im Jahr.
Habe den Device Reminder Adapter, der ja erkennt ob die Spülmaschine läuft oder aus ist. Und eigentlich müsste man doch den Zustand "Maschine AN" zählen können. Suche bei google, youtube, hier im Forum und Github ergab nix was in meinen Fall zu gebrauchen wäre.
Hab keine Widgets gefunden die den Zweck erfüllen wurden. Hab nen Datenpunkt erstellt in den geschrieben werden könnte. Nur womit. Hab versucht noch andere Adapter zu finden die den Zweck erfüllen könnten. Keinen Erfolg.
Hab sogar mit Blockly angefangen. Wollte mich mit dem Thema erst Später beschäftigen (Blockly scheint der Hammer zu sein, aber kopliziert für einen Dumbatz wie mich) aber wat solls.
Glaube das Zählen von einer Zustandsänderung, oder genauer gesagt von einem brstimmten Zustand, ist so einfach das da keiner auf die Idee kommt eine Anleitung im Netz zu hinterlassen.. Also auch da bin ich nicht weiter gekommen. Auch wenn ich glaube das da die Lösung liegen könnte.Ich hoffe ihr habt eine Rettende Idee oder Einen Rat für mich.
-
@random-0 Ich nutze ihn derzeit nicht, denke aber der Adpater Statistics ist das was du suchst
-
-
@paul53 Geht das, mit Variable ausserhalb von Trigger?
Hatte gerade das Problem gehabt, dass die Variable bei einem ähnlichem Block als aussen global und innen lokal scheinbar angesehen wurde und daher die äussere Variable (hier analog "zyklen") nicht geändert wurde.
Als Neuling, würde ich vermutlich einen Trigger auf "Spülmaschine an" setzen,
dann nochmal 3min für "oops, Teller vergessen" hinzufügen
und danach Objekt-ID.Zyklen erhöhen -
@chris-1 sagte: Geht das, mit Variable ausserhalb von Trigger?
Ja. Die Variable ist global.
@chris-1 sagte in Zählen eines Zustandes:
innen lokal
Dann muss ein vordefinierter Bezeichner (value, oldValue) verwendet worden sein.
-
@paul53 Hat bei mir nicht funktioniert :'-(
Die Variable "vor" dem Trigger (wollte extra initiallisieren) hat sich nicht durch Änderungen "innerhalb" des Trigger-Blocks nicht beeindrucken lassen. Schreibvorgänge innerhalb des Trigger-Block liefen korrekt. Danach war wieder alles vergessen.
-
@chris-1 sagte in Zählen eines Zustandes:
Die Variable "vor" dem Trigger (wollte extra initiallisieren) hat sich nicht durch Änderungen "innerhalb" des Trigger-Blocks nicht beeindrucken lassen.
woher weisst du das?
lässt du sie dir ausgeben?Die Variable lebt nur solange das Skript läuft.
-
@homoran Ich habe mir sogar extra die Werte per "SayIt" vorlesen lassen :'-(
Ich probier das gleich nochmal aus (altes Skript existiert nicht mehr),
um dann einen Screenshot zu machen - ok -
@chris-1 sagte in Zählen eines Zustandes:
um dann einen Screenshot zu machen - ok
sehr gute Idee!
dann wissen wir auch was du da machst. -
@homoran Ich glaube, inetwa so war das.....
Objekte (unbeeindruckt):
Als Test-Trigger benutze ich ein Skript, welches im Minutentakt FensterLinksOffen zwischen true & false hin und her schaltet
-
@chris-1 sagte in Zählen eines Zustandes:
Ich glaube, inetwa so war das.....
und was soll das bringen?
ist weit entfernt von dem was Paul schrieb.@chris-1 sagte in Zählen eines Zustandes:
Objekte (unbeeindruckt):
kein Wunder. die werden ja auch nur einmal bei Skriptstart befüllt.
sayit übrigens auch -
@homoran Also doch ein Unterschied zwischen Wüstenwurm global und Wüstenwurm innerhalb Trigger?
-
@chris-1 sagte in Zählen eines Zustandes:
@homoran Also doch ein Unterschied zwischen Wüstenwurm global und Wüstenwurm innerhalb Trigger?
nein.
ein Unterschied zwischen steuere in oder außerhalb des Triggersbau einfach das Blockly von Paul nach
-
@chris-1 sagte in: Also doch ein Unterschied zwischen Wüstenwurm global und Wüstenwurm innerhalb Trigger?
Nein. Die beiden "steuere"-Blöcke müssen in den Trigger, damit sie den innerhalb des Triggers veränderten Wert senden.
Blöcke außerhalb von Triggern - egal ob oben oder unten - werden nur einmal bei Skriptstart ausgeführt. -
@paul53 Danke
Läuft auf meine Vermutung global/local hinaus
-
@chris-1 sagte: Läuft auf meine Vermutung global/local hinaus
Nein,
wuestenwurm
ist eine globale Variable.
Der Unterschied ist: Ablauf bei Skriptstart - Operationen innerhalb einer Callback-Funktion, die durch den Trigger aufgerufen wird. -
@chris-1 sagte in Zählen eines Zustandes:
Läuft auf meine Vermutung global/local hinaus
wieso das?
hat doch nichts mitcder Variable zu tun.
Der Befehl wird nicht abgesetzt. Die Variable wird korrekt behamdelt. -
@paul53 Da scheint mir wohl schlicht der Java-Ansatz zu fehlen,
was den Ablauf im Code betrifft.
Komme aus einer c Zeit Anfang der 90er.... -
@paul53 said in Zählen eines Zustandes:
Der Unterschied ist: Ablauf bei Skriptstart - Operationen innerhalb einer Callback-Funktion, die durch den Trigger aufgerufen wird.
Interessierte Nachfrage: Wie würde ich die Variable, die innerhalb der CallbackFuktion durch Trigger geändert wurde, so "setzen" (wie in Trigger Funktion), dass sie von angehängten Blöcken in aktuallisiertem Status verwendet werden könnte?
-
@chris-1 sagte in Zählen eines Zustandes:
dass sie von angehängten Blöcken in aktuallisiertem Status verwendet werden könnte?
da ist dein Denkfehler.
Es darf nichts angehängt werden!
Dies Blöcke müssen in den Trigger unter die Logik, den falls/sonstfalls Block
Dort ist das eigentliche Skript beendet.alles was außerhalb (angehängt) ist, wird nur einmalig berücksichtigt: bei Skriptstart