NEWS
Anfängerfrage ob das in Blockly möglich ist
-
Moin,
ich habe mir etwas vor genommen, weiß nur noch nicht ob ich da mit Blockly ans Ziel komme.
Ich denke, ich stelle erstmal vor, was ich vor habe.
Ich würde gerne eine Anwesenheitserkennung der Anwohner im Haus machaen. Dies möchte ich aber nicht mit Smartphone oder so machen. Hab mein Handy nicht ständig bei mir somit nicht brauchbar.
Ich würde gerne auf RFID Tags zurückgreifen. Ein Minimalteil vom ganzen läuft, wobei das eigentlich übertrieben ist. Ich habe ein RFID Reader an ein Wemos D1 Mini gehängt, dieser übermittelt die TagID an ein Datenpunkt ("RFID_Read")im ioBroker per mqtt. Das läuft auch. Und war gar nicht schwer.
Eine Werteliste mit den "bekannten" RFID Tags habe ich erstellt und diese in ein weiteren Datenpunkt ("RFID_Tags") unter "vordefinierte Werte" verpackt. Im Format [{RFID Tag}:Name;{RFID Tag}:Name;...]. Zusätzlich habe ich für jeden Bewohner des Hauses einen Datenpunkt mit Logikwert definiert. Schließlich ist man Anwesen oder eben nicht.
Nun ist meine erste Frage, kann ich den Wert der im Datenpunkt RFID_Read mit den Datenpunkten im RFID_Tags vergleichen und dann aus der Werteliste den Namen nehmen um Datenpunkt Zwischen Wahr und Falsch hin und her zu schalten? Oder muss ich mir eher die Mühe machen, die RFID Tags direkt im Blocklycode zu verpacken?
Nachdem der Vergleich statt gefunden hat, soll der Datenpunkt "RFID_Read" geleert werden bzw. auf 0 gesetzt werden, so könnte man den Trigger nutzen, wenn geändert wurde.
Ich hoffe man kann meinem Gedankengang verfolgen. Den nun die Frage, ist die Umsetzung in Blockly möglich oder sprengt es die Möglichkeiten von Blockly? Und darüber hinaus, kann mir jemand dabei helfen?
Bei kleineren Sachen in Blockly komme ich langsam dahinter, nur dieses "Projekt" ist natürlich deutlich umfangreicher.
Michael
-
Nicht das es heißt, ich fang zumindest nicht wenigstens an und Probiere zumindest etwas. Hier schonmal der erste Ansatz, nicht unbedingt super Toll, aber funktioniert soweit.
Was oben fehlt ist:
Schöner wäre natürlich eine Wertetabelle oder noch besser eine Art Datenbank wo die Tags hinterlegt sind aber zumindest geht etwas.
Nur eines klappt nicht, wenn ich den RFID Tag vom "ResetUser" nutze springt der Datenpunkt "RFID_Unbekannt" um auf False, wenn ich die Karte aber entferne und somit der Datenpunkt "RFID_Read" wieder geleert wird springt der Datenpunkt auf True und ich weiß nicht warum. Oder hängt dies mit dem recht "schwammig" formulierten Sonst zusammen?
Michael
-
@raspido
Weshalb verwendest Du 5 mal Timeout ? Einmal außerhalb des falls-Blockes würde genügen. -
Dachte viel hilft viel. Aber kann ich später mal ändern.