NEWS
Ferraris Zähler mit TCRT5000 und esp8266
-
@Eisbaeeer sagte in Ferraris Zähler mit TCRT5000 und esp8266:
Die Werte werden nach jeder KWh als JSON auf dem ESP abgespeichert und beim Neustart wieder geladen. Eventuell bau ich hier noch eine Zyklische Speicherung (jede Stunde oder so) mit ein.
Wäre es dann vielleicht nicht sinnvoll eine SD für das Logging zu verwenden? So ein SD Breakout kostet <2€, das ist voll vertretbar. Ich weis natürlich nicht wieviel aufwand das ist.
@Eisbaeeer sagte in Ferraris Zähler mit TCRT5000 und esp8266:
- Ich habe noch ein OTA-update mit eingebaut, damit man den ESP auch ohne USB-Kabel über W-Lan updaten kann (hab keinen Bock das Ding immer auszubauen oder mit dem Laptop da hin zu laufen).
da hab ich auch kein Bock drauf.
Bin schon gespannt wie deine Erfahrung damit ist.
-
@Jey-Cee So, mal eingebaut. Das Einstellen war ein wenig rumtesten, aber jetzt scheint es zu klappen. Ich beobachte jetzt mal die nächste Zeit.
-
@Eisbaeeer
Ich lese da schon die ganze Zeit mit und nun hab ich mir dann eben auch mal nen TCRT5000 bestellt. Bin schon gespannt... -
@FredF Freut mich, wenn es doch noch mehr Leute gibt, die noch sowas brauchen.
Was mir jetzt schon aufgehalten ist. Ich muss noch einen Timeout für die Umdrehugen setzen. Meine Wärmepumpe läuft ja nur ab und zu. Ohne Timeout zeigt sie mir aber immer noch die 1,7KW an, weil ja keine rote Marke mehr vorbei kommt. Aber das lässt sich ja noch ändern.
Wenn es stabil ist, stelle ich es auf Guthub, dann könnt ihr auch testen.
Denke nächste Woche irgendwann.
Gruß Eisbaeeer -
Hallo,
meine zwei TCRT5000 sind auch angekommen und ein Gehäuse hab ich auch ausgedruckt. Hab das ganze mal mit espeasy getestet um die Impulse anzuzeigen. Angeschlossen hab ich das ganze mal an einen Wemos D1 im Arduino Uno Format. Mit einer Powerbank hat er die Impulse genau gezählt, aber wenn ich den Wemos mit einem 12V Schaltnetzteil versorge dann waren die Impulse meistens doppelt, die LED am TCRT5000 geht aber nur einmal aus pro Umdrehung.
Ich freue mich schon aufs testen. -
@Ritter Hallo "Ritter"
Herzlich willkommen als tester. Ich mag keine "Bastel" Lösungen. Deshalb hab ich mich dazu entschlossen, ein Image für einen ESP8266 zur Verfügung zu stellen. Ich bin schon so lange dabei, dass ich inwzischen vergessen habe, wie iobroker vorher gehiesen hat (irgend was mit ccu.io). Wie schon geschrieben, denke ich, dass ich noch diese Woche eine Release für zwei Zähler veröffentliche. Du kannst gerne Bescheid geben, wenn es bei dir dann funktioniert hat.
Grüße Eisbaeeer -
@Eisbaeeer soll ich dann einen nodemcu nehmen oder geht auch ein Wemos D1 mini?
-
@Ritter Guten Morgen.
Es spielt keine Rolle, ob du einen D1 Mini oder NodeMCU verwendest. Die Basis ist die selbe. Du kannst auch einen esp32 verwenden, habe ich aber noch nicht getestet. Gruß Eisbaeeer -
Version 0.1 ist online
Ich habe heute die initiale Version 0.1 hochgeladen. Ich lade hiermit alle dazu ein, den Code zu testen. Falls jemand kein IDE (Arduino IDE) installieren "will / kann", bitte kurz Bescheid geben. Ich kann auch gerne die Binary zur Verfügung stellen. Allerdings sollte das Board dann ein "NodeMCU Ver.1" mit 4MB flash sein, da dies mein Entwicklungsboard ist und ich keine Sonderlösungen compilieren werde!
Falls ihr (vermeintliche) Fehler findet, bitte hier posten oder noch besser ein issue auf Github erstellen. Dann kann ich direkt auf die Fehler reagieren.
Ich habe mich dazu entschlossen, den Code auf max. 4 Zähler zu beschränken (sorry @Jey-Cee). Wer noch mehr Zähler erfassen möchte, kann den Code gerne selbst auf die maximalen Eingänge des Prozessors erweitern oder mich nach den Kosten fragen. Der Code ist soweit verständlich beschrieben.
Im README.md sind auch noch Links zu Thingiverse. Dort habe ich einen Halter für die TCRT5000 entworfen. Über einen Thumb-up würde ich mich freuen. Auch hier im Forum gibt es die Möglichkeit, den Post zu bewerten. Ich verdiene NULL KOMMA NIX damit.
Und bitte nehmt das ernst, was im Footer steht. Ich werde keinen Support per E-Mail anbieten. Wenn, dann bitte nur hier im Forum. Dann haben alle etwas davon!
Nun wünsche ich Euch viel Spaß beim testen. Ich freue mich auf Eure Rückmeldungen!
Github Code: Link Text
Thingiverse: Link TextGrüße Eisbaeeer
-
@Eisbaeeer sagte in Ferraris Zähler mit TCRT5000 und esp8266:
Ich habe mich dazu entschlossen, den Code auf max. 4 Zähler zu beschränken (sorry @Jey-Cee).
Kein Ding ich versteh das. Werd es schon irgendwie hinbekommen.
-
@Jey-Cee Melde dich, wenn du die Stellen nicht findest! Sonst bist halt 8 Euro mehr für einen weiteren NodeMCU los
-
@Eisbaeeer Hallo, vielen Dank fürs bereitstellen. Ich teste es gerade auf einem Wemos D1 mit einem Zähler. Bis jetzt läuft alles.
-
Was mir noch so in den Kopf kommt. Die Firmware sollte sich auch für S0 und die Impulsausgaben von digitalen Zählern, Wasserzählern, Gaszählern, etc. nutzen lassen. Lediglich die Eingangsbeschaltung müsste man ändern. Aber ein Impuls bleibt ein Impuls. Hat das schon jemand getestet oder umgesetzt?
Grüße Eisbaeeer -
@Eisbaeeer
Das wäre meine nächste Frage gewesen...
Z.Zt zähle ich die Gasimpulse mit einem Tasmota geflashten D1 mini. Damit alles im Haus an einer Stelle ankommt bin ich gerade am umverkabeln... Ziel wäre Strom, Gas und 2 Wasserzähler (fehlen auch noch) mit deiner Lösung zu erfassen.
Wenn mein TSCT5000 (endlich) kommt, werde ich das mit testen... -
@FredF Prima. Ich habe selbst kein Gas und auch noch keinen Intelligenten Zähler, mit dem ich das testen könnte. Mein Wasserzähler hat auch noch keinen Impulsausgang. Falls das funktioniert, könnte man die Firmware noch soweit anpassen, dass man auswählen kann, was man am Eingang messen will (Gas, Strom, Wasser, etc) und dementsprechend auch andere MQTT Daten senden.
Bisher laufen meine zwei Zähler ohne Ausfälle. Die Zählerstände an den Rollenzählwerken stimmen auch mit dem im ESP überein. Scheint also ganz gut zu laufen.
Grüße Eisbaeeer -
Kurzer Zwischenbericht, es läuft.
-
@Eisbaeeer super. Meine sensoren sind da, hatte aber noch keine Zeit damit was zu machen.
Musstest du deine Sensoren modifizieren? -
@Jey-Cee nein, die waren ohne Modifizierung super zum einstellen. Ich musste aber die IR Dioden von einem Sensor nachlöten. Die waren so krumm bestückt, dass sie sonst wo hingeleuchtet haben, nur nicht gerade aus auf die Zählerscheibe. Aber was will man von Chinaware erwarten. Wenigstens war die Beschaltung korrekt.
Gruß Eisbaeeer -
@Eisbaeeer sagte in Ferraris Zähler mit TCRT5000 und esp8266:
Was mir noch so in den Kopf kommt. Die Firmware sollte sich auch für S0 und die Impulsausgaben von digitalen Zählern, Wasserzählern, Gaszählern, etc. nutzen lassen. Lediglich die Eingangsbeschaltung müsste man ändern. Aber ein Impuls bleibt ein Impuls. Hat das schon jemand getestet oder umgesetzt?
Das geht schon mit den üblichen Verdächtigen wie ESPEasy sehr gut. Dazu braucht es keine Eigenentwicklung.
Man muß sich dann noch lediglich um die Totalisierung kümmern, da ESPEasy zwar auch die Summe übertragen kann, die aber bei Reset wieder nullt. Hier kann ioBroker mit einem Skript aushelfen, welches den "Rückwärtssprung" des ESP Summierers erkennt und berücksichtigt. So überlebt die Gesamtsumme sowohl ein Update von ioBroker als auch einen Neustart des ESP.Die TCRT5000 Module kann man auch einfach zu einem Lesekopf für die optische Info-Schnitstelle der "modernen Meßeinrichtung", welche für Verbraucher bis 6000kWh/a den Ferraris Zähler ersetzen wird, umbauen.
-
@klassisch Ja das stimmt sicher, dass man das mit ESPEASY und Scripten in iobroker erschlagen kann. Ich denke da immer an die "User", welche nicht so viel Erfahrung mit Javascript oder Blockly haben und möchte einen leichten Einstieg in iobroker ermöglichen. Die ganzen Funktionen erschlagen den "Erstbenutzer" meist. Da ist es doch schön, wenn man eine "fertige" Lösung hat.
Meine Philosophie von Adaptern (bzw. Anwendungen, wie dieses Projekt) ist, möglichst alle Funktionen die benötigt werden, direkt zur Verfügung zu stellen. Was passiert z.B. mit dem Zählerstand, wenn ich iobroker warten muss, oder ich eine downtime des Servers habe? Dann stimmt der Zählerstand auch nicht mehr.
Glaub mir, ich habe schon Erfahrung mit iobroker und vorher ccu.io. Es ist und bleibt open-source. Da ist man nach einem Update nicht davor geschützt, dass etwas nicht läuft. Es wurde schon mega viel getan, damit nichts passiert, aber in der Vergangenheit gab es immer wieder mal Probleme. Deshalb habe ich meine Wärmepumpensteuerung, ehemals Raspi, auf ein MEGA2560 umgestellt und die Firmware selbst geschrieben. Ein Microcontroller ist für Steuerungen gebaut und iobroker ist eben kein Echtzeitbetriebssystem.
Kurzum, ich finde schon, dass man es den Usern einfacher machen kann und genau deshalb hab ich dieses Projekt gestartet. Ich kann mir gut vorstellen, dass dies die Basis für ein "all-in-one" Zählersystem werden kann. Und Dein Hinweis, dass man den TCRT5000 auch für die Datenkommunikation per IR-Auge verwenden kann, bringt noch eine neue Idee.
Warum nicht das Projekt auch für smarte Stromzähler verwenden und die Werte 1.8.0 - 1.8.2 und 2.8.0 - 2.8.2 mit auslesen?
Also meine Idee wäre ein universelles Image für den ESP mit folgenden Möglichkeiten:- Strom (Ferraris, smart mit IR-Auge, S0)
- Gas (Reed-Kontakt, S0) (gibt es den auch schon smart?)
- Wasser per Impuls (S0)
- Modbus
Somit hätte man ein günstiges System, mit dem man alle Energiearten erfassen bzw. auslesen kann.
Leider (oder zum Glück
) habe ich bisher nur einen Ferraris, Gas werde ich nie brauchen, da ich eine Wärmepumpe habe. Solar habe ich auch nicht, also kommt eine Rückspeisung erstmal auch nicht vor. Das ganze soll auch nur ein Denkanstoß sein, falls jemand diese ganzen Medien hat und braucht und eventuell auch Arduino IDE oder C beherrscht, kann er hier gerne weiter machen oder mich ansprechen. Mich freut es auf jeden Fall immer wieder (siehe auch Onkyo Adapter), wenn andere auch davon einen Nutzen haben.
Danke auch an Dich für deine Unterstützung von iobroker. Du hilfst ja auch an jeder Ecke!
Gruß Eisbaeeer