NEWS
Ferraris Zähler mit TCRT5000 und esp8266
-
@chr2002 Ähm ja, die Entprellzeit. Stell die mal niedriger, dann sollte das klappen.
-
@eisbaeeer Auch schon probiert Leider ohne Erfolg. Der Graph macht immernoch was er will.
-
Ich gebs auf. Hier ist was faul. ESPeasy zählt aber vernünftig. Keine Ahnung, am ESP liegt es nicht. Mit der Lichtschranke kommen auch keine anständigen Impulse zustande. Sehr seltsam. Vllt ist die 0.92 verbuggt ? Kann das sein ?
Ich lasse das sein. Und werde eine anständige Wandlermessung hinter den Zähler packen Von dort per Modbus weiter.
-
@Eisbaeeer
Hallo Lars,
ich bin mal ein bisschen durch deinen Code gegangen.Ich baue gerade einen Ferraris Zähler mit Analogauswertung via Maxim MAX127 ADC mit 12Bit mit "programmierbarer" Hysterese auf der Basis deines Codes. Ich bin auch bei 80% des Projekts
Grund:
Ich hatte in der Vergangenheit das Problem das sich zwei ESP Wemos D1 nach 3-4 Monaten nicht mehr gemeldet haben. Nach neu flashen ging es immer so ein paar Wochen und später meldete sich der ganz Kram auch nach Neustart nicht.Wenn ich das ja soweit verstanden habe wir ja quasi in den "EEPROM" geschrieben den der ESP aber nicht hat und das durch den Flash emuliert wird.
Die macht der ja über die beiden JSON "Strukturen" dash und configuration .
Soweit ich das jetzt Überblicke wird bei jedem Impuls und neuem kW und bei der MQTT übertragen daten in den Flash geschrieben.
Somit haben wir ja nach 2-3 Monaten die sicheren Schreibzyklen von (100.000) mal erreicht und haben das Risiko eines Speicherschädigung.
Bei einer Schreibzeit alle 30s wären es 720 Zyklen am Tag. 100.000/720 = 138,8 Tage.
Oder liege ich mit den häufigen Schreibzyklen auf dem falschem Weg?Ich habe die Quellen bzw die Beschreibung der Libs für des Dashboard.h und configuaration.h leider nicht auf Anhieb gefunden.
Aber vielleicht liebe ich da auf dem Holzweg.Ich habe den Sinn der ProcInput1-4() Routinen nicht ganz verstanden mit array und modulo. Wozu hast du die mit im Programm?
Gruß
DerDani -
@dan-master sagte in Ferraris Zähler mit TCRT5000 und esp8266:
@Eisbaeeer
Hallo Lars,
ich bin mal ein bisschen durch deinen Code gegangen.Wenn ich das ja soweit verstanden habe wir ja quasi in den "EEPROM" geschrieben den der ESP aber nicht hat und das durch den Flash emuliert wird.
Die macht der ja über die beiden JSON "Strukturen" dash und configuration .
Soweit ich das jetzt Überblicke wird bei jedem Impuls und neuem kW und bei der MQTT übertragen daten in den Flash geschrieben.
Somit haben wir ja nach 2-3 Monaten die sicheren Schreibzyklen von (100.000) mal erreicht und haben das Risiko eines Speicherschädigung.
Bei einer Schreibzeit alle 30s wären es 720 Zyklen am Tag. 100.000/720 = 138,8 Tage.
Oder liege ich mit den häufigen Schreibzyklen auf dem falschem Weg?Ja, das EEPROM wird emuliert und im flash gespeichert. ABER ich speichere nur bei vollen KWh ab. Ich habe dir mal die Stellen markiert:
Schau mal im Code nach "saveconfig", nur dann wird gespeichert.
Gruß Lars -
@dan-master sagte in Ferraris Zähler mit TCRT5000 und esp8266:
Grund:
Ich hatte in der Vergangenheit das Problem das sich zwei ESP Wemos D1 nach 3-4 Monaten nicht mehr gemeldet haben. Nach neu flashen ging es immer so ein paar Wochen und später meldete sich der ganz Kram auch nach Neustart nicht.
Gruß
DerDaniWie macht man das denn?
btw....Ich nutze aber eine eigens compillierte und abgespeckte ESPeasy Version für den Counter.....mit 160 MHz Tacktung
Von 9 D1 Mini und 2 NodeMCU ist mir bis Dato noch keiner abgeraucht.
Alle mit Tasmota und ESPeasy geflasht....einer ist noch im Testmode mit ESPhome.Irgendwas muss ich wohl falsch machen......
-
Wemos D1 Mini, Beispiel mit selbstgefrickeltem Programm:
Betriebszeit: 1241 17:01:49 (Tage Std:Min:Sek)
Man bekommt viele Clones mit unterschiedlicher Qualität.
Also erst mal die Lötvebindungen zwischen Modul und Platine inspizieren und oft einfach alle nachlöten.
Dann IMMER noch einen 1000µF Kondensator parallel zu den 3.3V und meist auch einen parallel zu den 5V. Im Notfall noch einen 10µF Cerco dirakt an die 3.3V am Modul zum Gehäuse.
Dann laufen die jahrelang stabil.
Was manchmal vorkommt: Wenn die Funkverbindung schlecht wird, gibt es bei manchen Programmen Neustarts.
Einen ESP32 habe ich tatsächlich verloren. Der war immer nach einigen Stunden weg.
Ansonsten laufen die 8266 D1 Mini recht rund. Mit selbstgefrickelter SW, ESPEasy, ESPHome, Tasmota. -
@klassisch , ich bestelle auch immer beim Händler des Vertrauens....hier in DE.
....auch mein China Mann schickt kostenlosen Ersatz. Das hatte ich mal bei einem CC1001....der schickte mir dann gleich drei Stück nach.
Da habe ich bei ihm eine glückliche Hand gehabt..... -
Inzwischen habe ich eine -43 dBm Verbindung zum Zählerschrank.....
Da brauche ich mir keine Sorgen machen.....
-
@menne Sauber! Da ist mein Zählerschrank spartanisch. Altes Metallgehäuse ohne Platzreserven.
Und nur noch dee Lesekopf für die "moderne Meßeinrichtung" mit einer Ethernet Flachband-Fensterdurchführung durch den Spalt an der Metalltür und dann via RS485 durchs Haus bis zum RS485 <-> Ethernet-Wandler. -
@klassisch , ich hatte vorher den Counter im Metall Zählerschrank eingebaut....die magnetischen Wechsel Felder wirkten sich aber negativ auf das Zählverhalten aus.
Nun habe ich neben dem Schrank eine Aufputzunterverteilung installiert.
Seither ist Ruhe.....auch habe ich mich jetzt soweit mit der Debounce Time heran getastet, das ich im Monat noch ca. 1KWh Abweichung habe...ich stelle nur noch einstellige Werte nach.....das dauert halt.
Das Problem habe ist nur bei dem geforderten Zähler. Der andere dümpelt vor sich hin und habe ihn derzeit nur einmal um 3 Ticks geändert seit dem Frühjahr.... -
@klassisch
Jahrelange Betriebszeit sind auch mit den Chinaböllern kein Problem
Ich habe insgesamt schon einige ESP8266 und 32 er im Einsatz. Mache den Kram auch schon einige Zeit die zusätzliche Beschaltung habe ich nicht ganz so fett mit 100µ oder 220µ.
Das verhalten aber bei meinen beiden sieht aber ganz nach kaputt geschriebenem Flash aus. Klar kann das hier an der miesen Qualität liegen. Ich war nur in der Überlegung ob es eben halt durch das evtl häufige schreiben in den Flash durch die ESP -IOT Framework kommen kann. Ich habe den Code aber noch nicht soweit durch. -
Alternativer Sensor RPR220'
Nachdem ich mit dem TCRT5000 immer wieder Probleme (Justierung ging verloren, komische Werte von der Drehscheibe, etc.) hatte, hab ich mich nach Alternativen umgesehen und bin über den Beitrag im loxforum.com auf den RPR220 gestoßen.
Es handelt sich um den Grove - Infrared Reflective Sensor v1.2 welcher für ca. 5,00 € bei diversen deutschen Versendern zu beziehen ist.
Den Sensor habe ich gegen meinen TCRT5000 getauscht, welcher bisher über einen 74HC14 Schmitt-Trigger an dem WEMOS D1 angeschlossen war.
Die .stl Datei für den Halter habe ich aus dem Beitrag im loxforum.com und die Montage /Justierung war ein "Klacks". Nach wenigen Sekunden hatte ich den Sensor positioniert und mit dem Poti richtig justiert.
Habe beim Ersteller der .stl Datei nachgefasst ob man diese weitergeben darf. Das Feedback war: „Die Datei stelle ich zur freien Verfügung. Es darf gerne ein Verweis auf mich gemacht werden.“
Daher findet ihr die Datei bei Interesse hier im Beitrag.
Stromzaehleradapter_RPR220_Grove_von_He.Slar.zip.zip
ACHTUNG: Das gedruckte Teil sollte eine Größe von 2cm x 2cm haben.Vielleicht ist das ja auch für Euch interessant, falls der Frust mit dem TCRT5000 zu groß wird?!
-
@w00dst0ck
Würdest du die STL. Datei teilen oder mir übersenden. Im Loxforum ist downlaod auch nach Anmeldung nicht möglich. (bzw bin ich wohl zu Blind den Link zu finden)
Gruß
DerDani -
Habe beim Ersteller nachgefasst ob ich die Datei hier als Attachment teilen darf und meinen Beitrag hier im Forum mit Downloadlink aktualisiert.
-
Hallo,
habe die Tage mich auch an das Thema gewagt. Die Einstellung habe ich irgendwann auch mal hinbekommen, dass die Werte auch gezählt werden. Ich habe jedoch mit MQTT so meine Probleme. Ich nutze den Sonoff Adapter (da ich viele Tasmota-Geräte habe). Leider kommt vom ESP8266 nur ein Alive und sonst wird nichts angezeigt. Habe dann auch mal versucht die Strucktur für den Zähler 1 nachzubauen. Jedoch auch dann werden die Werte nicht im iobroker angezeigt.
Auf der WebUI wird hinter MQTT Connected true angezeigt. Ich nutze die aktuellste Firmware hier aus dem Thread (0.93).
Hat vielleicht jemand einen Tipp was ich noch machen könnte, dass ich die Werte im iobroker auch sehe?EDIT:
Mit dem MQTT-Adapter (welchen ich eigentlich nicht nutzen möchte) funktioniert es. Da sieht es jedoch von der Strucktur anders aus:Und noch etwas was mir aufgefallen ist. Wenn ich einen Reboot über die Oberfläche mache, dass werden alle Werte zurückgesetzt Welche nicht in der Konfiguration stehen. Bedeutet, dass auch der Zählerstand auf den Wert in der Konfiguration gesetzt wird und nach einiger Zeit dann natürlich ganz falsch ist.
Nächstes Thema was mir aufgefallen ist. In der Konfiguration würde ich gerne die Nachkommazahl des Zählerstands erfassen. Es wird allerdings weder Punkt noch Komma "akzeptiert". Im Dashboard wird es zumindest entgegen der Screenshots hier nicht dargestellt.
Gruß
Taz -
@tazdevil20
Du kannst auch den MQTT Adapter auf dem Prot 1884 laufen lassen dies kann man dann perfekt auch auf der Webovberfläche einstellen. Bie mir läuft das MQTT (Port 1884) neben dem SonOff (Port 1883) hervoragend Nebeneinander.
Eine MQTT INstanz kostet dich doch nur rund 90MBGruß
DerDani -
@dan-master
Das ist richtig. So läuft es bei mir auch gerade. Jedoch fänd ich es trotzdem besser, wenn ich pro Protokoll nur einen Adapter verwenden könnte. -
Hallo zusammen,
habe das Thema für mich nach längerer Zeit mal wieder aktivieren wollen. Ich habe die "Firmware" auf eine Node-MCU geflasht und im Zählerkasten montiert. Er scheint auch munter zu zählen. Bislang hatte ich aber nie die Notwendigkeit, einen MQTT-Adapter zu installieren. Ich habe nun mqtt-client installiert. Es gelingt mir aber keine sinnvolle Einstellung, um mit dem Ferraris-MQTT zu kommunizieren. Wäre jemand so nett und würde mir einen Screen-shot von den Einstellungen des Ferraris und von mqtt-client zur Verfügung stellen? Nutze auch Sonoff und wollte den Port auf 1833 stellen.
Vielen Dank!
Jo -
@xxjooo
Hi,
der Sonoff will wohl einfach nicht. Musst leider den mqtt Adapter nehmen. Falls du Sonoff auf 1833 laufen lässt muss der mqtt natürlich auf einen anderen Port reagieren.
Hier meine Einstellungen: