Go Down

Topic: Plötzlich komisches verhalten Uno/Mega fehlerhafte Impulse (Read 2 times) previous topic - next topic

sth77

Das war ein versehen meinerseits. Im Startposing hast du ja geschrieben, dass du die S0-Schnittstelle anzapfst. Ich hatte noch ein vergleichbares projekt im Hinterkopf, wo jemand das Blinken der LED mit einem Fotowiderstand oder -transistor ausgewertet hat.

Hab mal nach deinem Stromzähler gegoogelt: http://www.debnar-messtechnik.de/DRT428B.pdf Passt es denn mit den angegebenen 800 Impulsen pro kWh besser? ;)
Mein Arduino-Blog: http://www.sth77.de/ - letzte Einträge: Teensy 3.0 - Teensyduino unter Window 7 - Teensyduino unter Windows 8

losNOXos

Hi,

ich prüfe ich später noch mal.

Allerdings steht auf meinem Zähler 1000imp/kWh.

Und das sind auch keine 200 imp Unterschied.

sth77

Zählst du eigentlich zu viele Impulse gegenüber der Display-Anzeige oder zu wenige? Für den ersten Fall sollte man mal das Signal untersuchen, ob da irgendwelche Störungen drin sind. Nach den Spezifikationen der S0-Schnittstelle sollte ja eine bestimmte Mindestimpulslänge vorliegen. Eventuell könnte man das in den Code einbauen, dass bspw. nur Impulse gezählt werden, die mindestens 50 ms lang sind. pulseIn() kann das zwar, blockiert aber auch den Programmablauf ähnlich einer delay()-Anweisung, zum Testen reicht das aber im Allgemeinen aus.
Mein Arduino-Blog: http://www.sth77.de/ - letzte Einträge: Teensy 3.0 - Teensyduino unter Window 7 - Teensyduino unter Windows 8

losNOXos

Hi,

es werden zu viele Impulse gezählt. Allerdings nicht sofort, sondern erst mit der Zeit.
Habe schon mit Delay rumgespielt, leider ohne erfolg.

Auch Interrupt nutzen hat leider keine Veränderung gebracht.

Ich werte es später genau aus und melde mich noch mal.


Danke!
nox

sth77

Du sollst ja auch kein delay benutzen, sondern testweise die pulseIn-Funktion, um ausschließlich entsprechend lange Impulse zu messen. Laut dem von mir verlinkten Datenblatt soll so ein Impuls etwa 90 ms dauert. Somit würde ich alles verwerfen, was kürzer als 50 ms ist - vielleicht gibt es kurze Störungen/Unterbrechungen im Signal, die das Ergebnis verfälschen.
Mein Arduino-Blog: http://www.sth77.de/ - letzte Einträge: Teensy 3.0 - Teensyduino unter Window 7 - Teensyduino unter Windows 8

Go Up