Hallo zusammen, ich habe nebenher gerade ein kleines Projekt laufen, bei dem ich die Netzfrequenz als Zeitbasis benutzen möchte. Es geht dabei nur um die Langzeitgenauigkeit, die Phase im Bezug zum Nulldurchgang ist egal. Die AVR-Appnotes sehen hier einfach einen 1Meg-Widerstand zwischen L und AVR-Eingang vor. Ausserdem wird nach erkanntem Nulldurchgang noch 5 mal nachgesehen, ob der Pegel stabil bleibt, um Spikes zu unterdrücken. Ich habe in meiner Anwendung 14VAC mit Brückengleichrichter, greife die Wechselspannung vor dem Glr. ab und gehe über einen RC-Filter 22k und 2n2 auf den Analog-Komparator, Referenz ist die Bandgap-Ref des AVR. Ich hatte mir davon eigentlich erhofft, dass die Hysterese mir hilfreich zur Seite steht, aber dem scheint nicht so zu sein. Über 12h gemittelt habe ich eine scheinbare Frequenz von ca. 58Hz. Mein nächster Schritt wird nun sein, mit jedem erkannten Nulldurchgang einen Portpin zu toggeln und zu beobachten, ob sich die Phasenlage zwischen Wechselspannung und toggelndem Portpin ab und an mal ändert - das würde dann auf fehlerhaft erkannte Nulldurchgänge hindeuten. Die Lösung könnte dann darin bestehen, nach einem erkannten ND zB 1ms später noch einmal nachzuschauen, ob der Komparatorausgang seinen Pegel behalten hat und nur dann den 20ms-Zähler zu inkrementieren. Noch ein Stück weiter gehen könnte man, indem man nach bestätigtem Nulldurchgang den Eingang für >10ms taub schaltet, so dass nach der erkannten fallenden Flanke die nächste Steigende durch evtl. Störungen nicht zu erneutem Triggern führen kann. Was meint ihr dazu? Für das Projekt ist leider keine Zeit, daher sträube ich mich etwas, das Rad neu zu erfinden, denn ich bin mir sicher, dass hier jemand schon die gleichen Sorgen hatte. Wenn's fertig ist, kommt's auch auf meine Homepage ;)
mal was zur grundidee: langzeitgenauigkeit und netzfrequenz sind zwei nicht miteinander vereinbare dinge...
> langzeitgenauigkeit und netzfrequenz sind zwei > nicht miteinander vereinbare dinge Doch genau das ist beim Netz garantiert, dass über lange Zeit (Tage, Wochen) der Mittelwert 50Hz ist. Kurzzeitig (Stunden) sind da schon Abweichungen bis 0,1% drin. Siehe u.A. auch http://members.magnet.at/alpha-channel/electro/Lastvert/inetz.htm
Prinzipiell funktioniert das. Meine Uhr läuft so seit Jahren stabil und pendelt immer so +/-30s um die Funkuhrzeit. Ich greife das Signal ähnlich ab wie du: Hinter dem Gleichrichter und einem RC Filter. Allerdings lasse ich parallel dazu einen Timer mit 1kHz laufen, und lasse die Netzimpulse (2x50Hz) nur dann als gültige Werte zu, wenn der im 1kHz Interrupt erhöhte Wert zwischen 8 und 12, also zwischen 80 und 120Hz liegt. Damit vermeide ich Störungen rund um den Umschaltpunkt. Einfach geht das z.B. indem man den Interrupt den das externe Signal auslöst, immer für 8ms nach jedem Interrupt abschaltet.
Andi D. wrote: > mal was zur grundidee: langzeitgenauigkeit und netzfrequenz sind zwei > nicht miteinander vereinbare dinge... Das würd ich so nicht sagen. Die Langzeitgenauigkeit der Netzfrequenz ist sogar ziemlich gut. Die Kurzzeitgenauigkeit ist nicht so toll.
@Andy Du irrst, gerade bei der Netzfrequenz ist die Langzeitstabilität sehr gut (siehe z.B. die netzsynchronen Uhren) - die Kurzzeitstabiltät ist allerdings nicht so doll(hier wird aus Lastgründen nachgeregelt). @shaun Den Komparator brauchst du nicht, das Signal formen die eingebauten Schutzdioden an jedem Portpin - ich würde aber einen 22n C nehmen. Schau mal bei den ganzen Uhrenbastlern in den Code, da findest du sicher was! Viele Grüße, egberto
Danke ihr alle, das ging ja schnell. Ich merke schon, ich war hier zu lange nicht mehr :) @Benedikt: die 8ms-Ausblendung hatte ich ja auch schon angedacht. Fürs Multiplexen habe ich eine 500Hz-Zeitbasis laufen, da liesse sich also was machen. Dadurch, dass Du die Werte (8 und 12) klein genug gewählt hast, brauchst Du die beiden Ereignisse auch nicht synchronisieren. @Egberto: Ich hatte die 2n2 eingesetzt, um eine gewissen Flankensteilheit zu erhalten. Da ich nur mit 14VAC arbeite, kriecht das Signal schon ganz ordentlich zwischen den durch die Schutzdioden definierten Grenzen hin und her, kein Vergleich mit den Appnote-Schaltungen, die direkt am Netz hängen - da sieht der Port in der Tat fast ein Rechteck, bei mir ist es dann doch eher ein angeplatteter Sinus (naja.....) Am wichtigsten scheint mir das Ausblenden potenzieller Störungen, ich werde das heute abend mal einbauen. Das Ganze ist übrigens eine Ersatz-Platine für die Original-Berlinuhr aus den 80ern (Tischmodell). Für den Nostalgiker, der an seinem Stück hängt und keinen Nachbau für teuer Geld erwerben will ;)
http://www.etrans.ch/services/online/frequency/ mal so als anhaltspunkt. über den tag und über das jahr gesehen ist die netzfrequenz sehr gut. aber wenn vormittags die belastung zunimmt, geht die frequenz minimal zurück, das wird aber in der regel nachts ausgeglichen
... ich habe so z.B. Betriebsstundenzähler realisiert die "hinreichend" aussagekräftig sind.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.