ZM61 ZM62 Magnetschalter am EI-OT 4 Kanal Trigger Modul ![]() |
Grundlagen
Das Wichtigste vorab, in diesem Beispiel geht es nicht um die GPIO Funktion Counter / Zähler! Eine typische Anwendung ist das Erfassen und Triggern von Zählerständen mittels einem ESP8266 und die jeweiligen Zählerstände mittels einer Tasmota Rule im Netzwerk bereitzustellen. In diesem Beispiel geht es um die Erfassung eines Gasverbrauch, in Kombination mit einen BK-G4 Gaszähler und einem Z61 Magnetschalter. Der Z61 ist ein magnetischer Impulsgeber, der pro 10 Liter Gas (0,01m3) einen Impuls ausgibt. Ziel ist es mittels einer Tasmota Rule
Der Anschluss ist denkbar einfach
Gibt nun der Impulsgeber ein Signal aus, so schliesst der PC817 sodass am Ausgang des Optokopplers 3,3V auf den GPIO (im Beispiel IN4 = GPIO13), ein HIGH geschaltet wird. An dieser Stelle sei erwähnt – da im Internet viele Beispiele ohne Optokoppler beschreiben werden – Zähler insbesondere Gaszähler verfügen über eine notwendige Erdung / Potentialausgleich diesbezüglich sollte stets auf eine galvanische Trennung geachtet werden. |
EI-OT 4 Kanal Trigger Modul Signal Konfiguration für eine Tasmota Zähler Rule ![]() |
Konfiguration
Wie bereits erwähnt handelt es sich bei diesem Tasmota Rules Beispiel nicht um einen GPIO Counter / Zähler, sondern um das Bereitstellen eines kumulierten Zählers. Diesbezüglich wird der Eingang, in unserem Tasmota Rules Beispiel IN4 als einfacher Button konfiguriert. Bitte beachten Button 1 hat neben den typischen Button Funktionen weitere, „spezielle“ Funktionen, diesbezüglich sollte für Tasmota Rules nicht Button 1 verwendet werden. Nachdem der GPIO entsprechend konfiguriert wurde bedarf es zunächst das typische Tasmota Verhalten, Button 2 ON == Power 2 ON zu deaktivieren. Hierzu in der Tasmota Konsole SetOption68 1 eingeben und mit der Taste ENTER bestätigen, es erscheint RSL: RESULT = {"SetOption68":"ON"} Bevor wir nun zur eigentlichen Tasmota Rule kommen bedarf es einem entsprechenden Zähler, jener Zähler der fortlaufend, mit jedem Impuls mittels der Tasmota Rule kumuliert wird. Neben den typischen 16 Variablen Var1 bis Var16 gibt es zusätzlich Mem1 bis Mem16, bei letztgenannten wird der Wert im ESP8266 Flashspeicher abgelegt, sodass der Wert auch nach einem Neustart verfügbar ist. Da typischerweise der Zähler, in unserem Beispiel Gaszähler, nicht den Zählerstand 0 hat muss zunächst ein entsprechender Offset / Startwert gesetzt werden, in unserem Beispiel verwenden wir einen Zählerstand 1234,56 m3 und setzen unseren Zähler Mem1 mittels Konsole wie folgt auf den Wert Mem1 1234.56 und bestätigen die Eingabe mit der Taste Enter, sodass die Konsole den Wert wie folgt bestätigt RSL: RESULT = {"Mem1":"1234.56"} Kommen wir zur eigentlichen Tasmota Rule für unseren kumulierenden Zähler. Sobald der Optokoppler durch den Impulsgeber geschlossen wird, erhält der GPIO ein HIGH Signal. Dieses High Signal entspricht einem Durchfluss von 10 Liter / 0,01m3 Gas. Mittels der Tasmota Rule muss nun
Unsere Tasmota Zähler Rule nun zusammengefasst als Rule1 Rule1 ON Button2#State DO Mem1= %Mem1% + 0.01 ENDON lediglich über die Konsole eingeben und mittels der Taste Enter bestätigen. Abschließend muss lediglich die Tasmota Rule1 durch Eingabe von Rule1 1 und drücken der Taste Enter aktiviert werden. Sobald nun ein Impuls vom Gaszähler, bzw. Magnetschalter ausgegeben wird kumuliert sich der Zähler Mem1 BUTTON2#STATE performs "mem1= 1234.56 + 0.01" RSL: RESULT = {"Mem1":"1234.570"} |
