Autor Thema: ArduCounter Support und neue Versionen (war: Stromzähler mit S0 Schnitt...)  (Gelesen 85102 mal)

Offline StefanStrobel

  • Developer
  • Hero Member
  • ****
  • Beiträge: 1157
Antw:Stromzähler mit S0 Schnittstelle nochmals
« Antwort #330 am: 13 Juni 2018, 18:52:57 »
Hallo,

Dann ist da wohl ein Bug in der letzten eingecheckten Version.
Umso wichtiger wäre es mir dass die neue Version keine Probleme macht, bevor ich sie einchecke.
Sie sollte sowohl auf dem ESP als auch auf einem Arduino funktionieren.

In der neuen Version wird die Pulslänge übrigens immer geprüft. Falls sie nicht angegeben wurde, wird sie auf 2ms gesetzt. Das Problem sollte mit der neuen Version aus dem Thread also nicht mehr auftreten können.

Gruß
  Stefan

Offline StefanStrobel

  • Developer
  • Hero Member
  • ****
  • Beiträge: 1157
Antw:Stromzähler mit S0 Schnittstelle nochmals
« Antwort #331 am: 04 September 2018, 18:42:42 »
Hallo,

ich habe die neue Version soeben eingecheckt.

Gruss
   Stefan

Offline sash.sc

  • Hero Member
  • *****
  • Beiträge: 1522
Läuft die Version auf nen esp mit wlan?

Habe mit espeasy und dem pulse counter so meine Probleme.

Bin da auf der Suche nach was neuen bzw anderem.

Gruß Sascha

Gesendet von meinem E6653 mit Tapatalk
« Letzte Änderung: 20 Oktober 2018, 19:00:26 von sash.sc »
Raspi 2 ; LaCrosse; HomeMatic; 1x TX 29 als Lichtsensor umgebaut;
ESP8622 ;nanoCUL a-fw (433 & 868 MHz); miniCULwlan;
WLANduino 433&868 ; WlanCul

Offline StefanStrobel

  • Developer
  • Hero Member
  • ****
  • Beiträge: 1157
Hallo Sascha,

Ich habe es bei mir auf einem Wemos D1 am Laufen.
Zum Flashen musst Du den Sketch (habe ich unter contrib/arduino abgelegt) für Deinen ESP neu übersetzen und von der Arduino IDE aus auf den ESP übertragen. Im Quellcode muss dabei Deine SSID und Passort eingetragen werden.

Gruß
   Stefan

Offline sash.sc

  • Hero Member
  • *****
  • Beiträge: 1522
Besten Dank.

Gruß Sascha

Gesendet von meinem E6653 mit Tapatalk

Raspi 2 ; LaCrosse; HomeMatic; 1x TX 29 als Lichtsensor umgebaut;
ESP8622 ;nanoCUL a-fw (433 & 868 MHz); miniCULwlan;
WLANduino 433&868 ; WlanCul

Offline GlennDandy

  • New Member
  • *
  • Beiträge: 23
hallo, ich glaube ich bin unfähig die neue Version zuflashen bei mir erscheint immer

Arduino: 1.6.5 (Windows 8.1), Platine: "Arduino Nano, ATmega328"

WARNUNG: Bibliothek ESP8266WiFi behauptet auf [esp8266] Architektur(en) ausgeführt werden zu können und ist möglicherweise inkompatibel mit Ihrer derzeitigen Platine, welche auf [avr] Architektur(en) ausgeführt werden kann.



In file included from C:\Program Files (x86)\Arduino\libraries\ESP8266WiFi\src\ESP8266WiFi.h:33:0,
                 from C:\Program Files (x86)\Arduino\libraries\ESP8266WiFi\src\ESP8266WiFi.cpp:25:
C:\Program Files (x86)\Arduino\libraries\ESP8266WiFi\src\ESP8266WiFiType.h:26:19: fatal error: queue.h: No such file or directory
 #include <queue.h>
                   ^
compilation terminated.
Fehler beim Kompilieren.

  Dieser Report hätte mehr Informationen mit
  "Ausführliche Ausgabe während der Kompilierung"
  aktiviert in Datei > Einstellungen

übersehe ich irgendwo eine einstellung damit es auf dem Arduino Nano zuflashen geht?

Offline StefanStrobel

  • Developer
  • Hero Member
  • ****
  • Beiträge: 1157
Hallo,

bei mir compiliert ArduCounter 2.36 ohne Problem für den Nano. die ESP8266-Stellen stehen eigentlich immer in einem #ifdef ESP8266 #endif, so dass die beim compilieren ausgeblendet werden sollten wenn Du für einen Nano compilierst.
Ich verwende allerdings die Arduino IDE in Version 1.8.5

Für den Nano muss Du aber auch gar nicht selbst compilieren. Mit set <device> flash kanst Du die Nano-Firmware direkt aus Fhem heraus flashen. Die 2.36er Firmware ist eingecheckt (landet unter FHEM/Firmware).

Gruss
   Stefan

Offline heinemannj66

  • Newbie
  • Beiträge: 1
Hi,

ist der ArduCounter Sketch in der aktuellen Version auch auf einem Arduino Mega 2560 lauffähig?
Hatte den Sketch mal vor ~2,5 Jahren ausporbiert - bin leider vor die Pumpe gelaufen.

Ich benötige derzeit ~30 S0 Zähler - Tendenz steigend  8)

Gruß
Jörg

Offline StefanStrobel

  • Developer
  • Hero Member
  • ****
  • Beiträge: 1157
Hallo Jörg,

Der 2560 unterstützt leider nicht auf allen Pins einen Pin change interrupt
https://arduino.stackexchange.com/questions/9481/why-is-my-interrupt-code-not-working
Daran wird es dann wohl scheitern.
Mit 2 oder 3 Nanos parallel kommst Du eher weiter.

Gruß
    Stefan

Offline StefanStrobel

  • Developer
  • Hero Member
  • ****
  • Beiträge: 1157
Hallo,

da ich auch noch einen alten Ferraris-Zähler im Keller habe und mir die Auswertung per Funk mit meinem alten Sensor zu unzuverlässig wurde, habe ich die Idee mit Reflexlichtschranke an einem Arduino von Martin Kompf übernommen und die Firmware dazu in den ArduCounter integriert. (siehe https://www.kompf.de/tech/emeir.html)

Als Hardware muss man eigentlich nur einen Fototransistor und eine LED jeweils mit Vorwiderstand an einen Arduino Nano anlöten.
Bei der Gelegenheit habe ich ein paar Altlasten im ArduCounter-Modul behoben:

1) der Faktor zur Umrechnung der Anzahl Impulse in kWh oder andere Einheiten. Das war bisher sehr unschön gelöst. Als Alternative gibt es jetzt ein Attribut pulsesPerKWh. Das würde man bei einem Ferraris-Zähler typischerweise auf 75 setzen (75 Umdrehungen der Scheibe je kWh).

2) die Attribute zum Umbenennen von Readings etc. Die mussten bei Pin D4 z.B. readingNameCount4 lauten, auch wenn der Pin mit dem Attribut pinD4 definiert wurde. Unschön ist das für analoge Pins wie A7 geworden, wie man es für Ferraris-Zähler benötigt. Deshalb habe ich das geändert. Jetzt können die Zusatzattribute immer genauso benannt werden, wie auch der Pin definiert wurde. Bei Pin2 also readingNameCount2, bei PinD2 readingNameCountD2 und bei pinA7 readingNameCountA7.
Auch die Readings (sofern sie nicht mit einem Attribut umbenannt wurden) orientieren sich jetzt klar an der Definition. Wenn Pin 5 als pin5 definiert wurde, wird ein Reading power5 erzeugt. Wenn der gleiche Pin aber als PinD5 definiert wurde, wird auch das Reading powerD5 genannt.

Das könnte in einzelnen Fällen zu Änderungsbedarf führen, ist aber langfristig deutlich klarer. Sorry falls Ihr betroffen seid.

Für Ferraris-Counter, die über eine Reflexlichtschranke analog gelesen werden, gibt es noch das neue Attribut analogThresholds und um die Definition zu erleichtern, gibt es einen neuen get-Befehl, mit denen man die analogen Messwerte ansehen kann (get levels), allerdings liefert der nur werte, wenn vorher das Verbose-Level im Arduino auch mit dem Attribut devVerbose auf 20 gesetzt wurde.

Die Referenz sollte im angehängten Modul aktualisiert sein.

Vielleicht möchte es ja jemand nachbauen.

Gruss
   Stefan



Online Otto123

  • Hero Member
  • *****
  • Beiträge: 12555
  • schon mal restore trainiert?
    • Otto's Technik Blog
Hallo Stefan,

Du bist der Größte! Ich habe genau diese Lösung (mangels Fähigkeit) auf zwei Arduinos (eine Lichtschranke und ein Arducounter) nebeneinander/zusammen laufen.
Läuft bei mir sehr zuverlässig.

Danke, ich werde das zeitnah probieren!

Gruß Otto
Viele Grüße aus Leipzig
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7490+7412,WRT1900ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266

Offline FunkOdyssey

  • Hero Member
  • *****
  • Beiträge: 1668

2) die Attribute zum Umbenennen von Readings etc. Die mussten bei Pin D4 z.B. readingNameCount4 lauten, auch wenn der Pin mit dem Attribut pinD4 definiert wurde. Unschön ist das für analoge Pins wie A7 geworden, wie man es für Ferraris-Zähler benötigt. Deshalb habe ich das geändert. Jetzt können die Zusatzattribute immer genauso benannt werden, wie auch der Pin definiert wurde. Bei Pin2 also readingNameCount2, bei PinD2 readingNameCountD2 und bei pinA7 readingNameCountA7.
Auch die Readings (sofern sie nicht mit einem Attribut umbenannt wurden) orientieren sich jetzt klar an der Definition. Wenn Pin 5 als pin5 definiert wurde, wird ein Reading power5 erzeugt. Wenn der gleiche Pin aber als PinD5 definiert wurde, wird auch das Reading powerD5 genannt.


Perfekt. Trifft zwar vermutlich viele. Aber ist konsistenter.
Hat mich damals auch schon gewundert.

Offline no_Legend

  • Hero Member
  • *****
  • Beiträge: 1151
Besten Dank.

Gruß Sascha

Gesendet von meinem E6653 mit Tapatalk

Kannst du schon etwas dazu sagen?

Habe auch noch einen ESP mit ESPEasy und Impulscounter am laufen.
Gefällt mir so aber auch absolut nicht.

Danke und Gruß Robert
IntelNUC mit Ubuntu mit FHEM immer aktuell,2x HMLAN, CUL443, CUL868 -homekit/siri -tablet ui -homebridge
Device, diverse:
HM-SEC-KEY,HM-LC-BL1-FM,HM-SEC-SD,HM-Sen-DB-PCB,HM-Sec-RHS,HM-Sec-SC-2,HM-WDS10-TH-O,Harmony,Netamo, 433MHz Steckdosen uvm.

Offline sash.sc

  • Hero Member
  • *****
  • Beiträge: 1522
Kannst du schon etwas dazu sagen?

Habe auch noch einen ESP mit ESPEasy und Impulscounter am laufen.
Gefällt mir so aber auch absolut nicht.

Danke und Gruß Robert
Bis heute noch nicht. Hatte da noch keine Zeit für bzw andere Sachen vorgezogen. Wenn ich was weiß dann sage ich hier bescheid.

Gesendet von meinem E6653 mit Tapatalk

Raspi 2 ; LaCrosse; HomeMatic; 1x TX 29 als Lichtsensor umgebaut;
ESP8622 ;nanoCUL a-fw (433 & 868 MHz); miniCULwlan;
WLANduino 433&868 ; WlanCul

Offline no_Legend

  • Hero Member
  • *****
  • Beiträge: 1151
Bis heute noch nicht. Hatte da noch keine Zeit für bzw andere Sachen vorgezogen. Wenn ich was weiß dann sage ich hier bescheid.

Gesendet von meinem E6653 mit Tapatalk

Ich hoffe der Nachwuchs geht heute früh genüg ins bett.
Dann komm ich vll dazu es ausprobieren.
Ich hab nur gerade garkeine Ahnung mehr wie es momentan verdrahtet ist!  ;D

Noch was anderes, beim Einsatz mit nem Gazähler.
Das zählen erfolgt nur auf die Flanken oder?

Edit: Gefunden, hast sich erledigt.

Gruß Robert
« Letzte Änderung: 17 Januar 2019, 13:00:28 von no_Legend »
IntelNUC mit Ubuntu mit FHEM immer aktuell,2x HMLAN, CUL443, CUL868 -homekit/siri -tablet ui -homebridge
Device, diverse:
HM-SEC-KEY,HM-LC-BL1-FM,HM-SEC-SD,HM-Sen-DB-PCB,HM-Sec-RHS,HM-Sec-SC-2,HM-WDS10-TH-O,Harmony,Netamo, 433MHz Steckdosen uvm.