NEWS
Ferraris Zähler mit TCRT5000 und esp8266
-
Zu der Kommastellen probelamtik denke ich man könnte sich dann komplett von den floats trennen und alles mit dem Faktor 1000 höher "setzen" und damit 3 Kommastellen in den "ganzzahlen" Bereich bringen. Damit hat man vor allem die Float ungenauigkeit bei der Addition von kleinen Zahlen mit großen Zahlen umgangen, die hier in der Natur der Zählweise der Floats besteht.
Damit hat man auch nur "3 Nachkommastellen" aber über die Zeit/Impulsauswertung auf 1 Watt genau zu sein ist hier auch eher ein Schätzeisen.
Nur so als "Gedanke".Gruß
DerDani -
@dan-master Ja, das ist wohl die einzige Möglichkeit, das vernünftig zu realisieren. Leider gibt es Rechenfehler mit float und ausserdem reicht die Stellenzahl bei weitem nicht. Ich bin mir nur noch nicht sicher, ob ich das wirklich realisiere oder ob ich einfach die aktuelle Anzahl der Umdrehungen per MQTT mitsende. Dann kann sich das jeder selbst zusammenbasteln. Ich selbst habe für die Nachkommastelle keinen usecase. Mir reichen die vollen KWh.
Gruß Eisbaeeer -
@mahumuc Ja genau da war der Hund vergraben. Die MQTT Library und die LittleFS Library hat dazu geführt, dass der ESP eine exception verursacht hat. Ich bin jetzt den Weg gegangen, dass bei einer MQTT Übertragung und beim Speichern der Werte in den Flash der Interrupt abgeschaltet wird. Das bedeutet natürlich, dass während dieser "kurzen" Zeit kein Impuls gezählt wird. Ich denke aber, dass das nicht ins Gewicht fällt.
Was heißt das jetzt genau?- Der MQTT Server sollte erreichbar sein. Falls er das nicht ist oder nicht verwendet wird, wird während dem Versuch zum MQTT Server eine Verbindung aufzubauen, kein Impuls gezählt. Ich denke aber, dass hier alle MQTT nutzen werden, deshalb habe ich erstmal keine Möglichkeit eingebaut, MQTT abzuschalten.
- Währen dem Speichern wird ebenfalls kein Impuls gezählt. Gespeichert wird bei jeder vollen KWh.
Ich denke aber trotzdem, dass es besser ist, die Impulse mittels Interrupt zu detektieren, also ohne.
Wer testen möchte, hier die Binary:
firmware.bin
Grüße Eisbaeeer -
so gleich mal die neue Version versucht aufzuspielen. Über Fileupload, klappt das bei mir irgendie nicht so richtig. Also komplett neu geflasht. Jetzt wird mir das Gerät als Ferraris Mqtt im WLAN angezeigt. Verbindung klappt auch, aber irgendwie will der die WLAN Daten (copy & paste) nicht fressen.
Die WLAN Verbindung wird auch getrennt, dann wird mir das Gerät immer noch im WLAN angezeigt und es lässt sich auch wieder verbinden.
Ich habe es in der Fritzbox s eingestellt, dass das Gerät eigentlich die selbe IP wieder bekommen sollte.
Aber weder unter der alten IP ist das Gerät erreichbar, noch wird irgenein neues Gerät in der Fritzbox angezeigt. DHCP ist aber aktiviert.Könntest Du das vielleicht nochmal prüfen?
-
@falke69 An der Stelle habe ich eigentlich nichts gemacht. Bei einer Fritz Box (hab ich hier auch) solltest du ihn unter http://ferraris.fritz.box im Netzwerk erreichbar sein. Ich teste aber gerne nochmal.
-
das Gerät verschwindet halt nicht in den WLAN Einstellungen. Das heißt, ich kann mich jeder Zeit
wieder mit dem Gerät direkt über WLAN verbinden.
Wenn sich das Gerät mit der Fritzbox verbinden würde, wäre es auch bei den verfügbaren WLAN Geräten nicht mehr zu sehen.
Das ist das Problem, was ich aktuell habe. So wie es aussieht, werden die eingegebenen WLAN Daten nicht gespeichert.
Bisher ging das immer ohne Probleme. Das Gerät war auch jedesmal, nachdem ich die WLAN Daten eingetragen habe unter der alten IP erreichbar.Ansonsten sehr gute Leistung! und ein tolles Projekt!
-
Firmware Update über Webinterface hatte bei mir diesmal auch nicht funktioniert, er zeigte zwar Erfolg an, war dann aber immer noch auf der alten Version.
Dann habe ich neu geflasht und wunderbar jetzt funktioniert Alles - auch keine Abstürze mehr - sehr schön.
Auch der neue MQTT_Connected Status im Dashboard gefälltMir ist jetzt noch aufgefallen dass wenn man die Daten für mqtt ändert (zb Port) scheint das keine direkte Auswirkung zu haben
und wirken erst nach einem Neustart. Könnte man ins Dashboard für eine zukünftige Version vielleicht noch einen Neustart Button einbauen ?Vielen Dank für deine Arbeit @Eisbaeeer
-
geht bei Dir das WLAN?
Ich habe meinen vorher komplett gelöscht und dann die neue Firmaware aufgespielt. Aber die WLAN Verbindung will einfach nicht. -
ja ich muss nach dem neu flashen zwar erst mit fixer ip zum esp verbinden aber nach Änderung meiner WLAN Daten war er wieder ganz normal online.
-
Danke!
Da muss ich nochmal schauen.
Das ist komisch. habe bereits zweimal die aktuelle drübergebügelt..
Komisch...... -
i grig de motten.
Nach dem dritten flashen, hat er die WLAN Daten gefressen. So ein Miststück aber auch. -
@eisbaeeer said in Ferraris Zähler mit TCRT5000 und esp8266:
Ich bin mir nur noch nicht sicher, ob ich das wirklich realisiere oder ob ich einfach die aktuelle Anzahl der Umdrehungen per MQTT mitsende
Wenn es einfacher ist dann habe ich damit auch kein Problem.
Das lässt sich ja schnell umrechnen! Nur ganz ohne fände ich schade. -
seit ich das gestern mit dem WLAN klären konnte, lief das Gerät auch durch.
Heute wollte ich die Entprellzeit etwas justieren, da er etwas zu viel gezählt hatte,
schwups waren wieder alle Daten und Einstellungen weg.
Das einzige, was noch da war, waren die WIFI Daten. -
@falke69 Hmm, hast du genau dann gespeichert, als ein Impuls kam? Denn das kann ich leider nicht abfangen.
-
@dan-master sagte in Ferraris Zähler mit TCRT5000 und esp8266:
Ich habe auch sehr lange nach einer Lösung für die TCRT5000 Sensoren. Ich habe immer wieder Probleme gehabt mit Fehlerhaften impulsen Teilweise im IOBroker duch prellen bis 20MW Verbrauch gehabt. Alles Mögliche Probiert.
Am Ende hat mit die eine Info aus dem Nachbarforum geholfen. Ich habe zwei Sachen geändert.
Den Widerstand von 180kOhm zwischen Pin 5 und 7 gesezt (2)
Den Kondensator entfernt oben zweite Position von rechts (1).
Es funktioniert jetzt seit Wochen perfekt.
Gruß
DerDaniSo, das muss ich jetzt auch mal testen. Ich bekomme immer noch Fehlimpulse. Und zwar nicht nur beim Übergang, sondern auch mitten im Silber. Werde berichten.....
Hier noch die neue Version mit "Reboot im Dashboard" und den aktuellen loops in MQTT.
firmware.bin
Grüße EisbaeeerP.S.: bitte beim OTA update darauf achten, dass keine Impulse kommen. Sonst bricht der upload fehlerhaft ab.
-
Vielleicht ist der in diesem Projekt verwendete Ansatz, das Analog Signal auszuwerten eine verlässlichere Alternative?!
https://github.com/lrswss/esp8266-wifi-power-meter -
@w00dst0ck Schau mal ein paar Seiten vorne
Aber der ESP8266 hat nur einen ADC und @Eisbaeeer möchte mit einem Gerät mehrere Zähler auslesen, wenn ich das richtig verstanden habe. -
@klassisch
Das @Eisbaeeer das Analoge Signal zum Justieren eingebaut hatte, hab ich doch gelesen.
Aber in dem Projekt wird dieses Signal dann als Trigger verwendet.Stimmt aber, dass es mit mehreren Stromzählern dann natürlich nicht mehr geht.
-
@eisbaeeer sagte in Ferraris Zähler mit TCRT5000 und esp8266:
@falke69 Hmm, hast du genau dann gespeichert, als ein Impuls kam? Denn das kann ich leider nicht abfangen.
das wäre natürlich möglich. Habe es gerade nochmal getestet. Jetzt ist alles noch da.
Dann wäre der Impuls sicherlich der jenige, der zur Verantwortung gezogen werden müsste.
-
Boahh Leute. Ich bin gerade echt an einem Tiefpunkt. Ich habe jetzt viele Stunden investiert. Auch der Hack mit dem Kondensator und der Rückkopplung zwischen Ausgang und Eingang des OP hat nicht wirklich funktioniert (habe ich am 2. Sensor versucht). Ich benutze derzeit zwei TCRT5000. Der erste TCRT macht eigentlich keine Probleme. Inzwischen werden die Impulse sauber erkannt. Der zweite (meine Wärmepumpe) ist echt Müll. Das habe ich schon beim kalibrieren bemerkt. Der Einstellbereich war sehr viel empfindlicher als beim Ersten. Ich werde die Tage mal den Sensor des 2. Zählers austauschen, wenn ich noch Bock darauf habe.
Grün = lass mich verzweifeln (maximal 3,5 KW. Wie man sieht