Hallo, ich hab beim Stöbern auf der Pollin-Seite gerade das DCF77-Modul (Best.Nr 810054) entdeckt. Gibt es damit schon Erfahrungen? http://www.pollin.de/shop/detail.php?pg=OA==&a=NTQ5OTgxOTk=&w=OTk4OTY4&ts=0
Das ist aber im moment wohl nicht lieferbar, ich hab ein paar bestellt und die waren nicht dabei und werden irgendwann nachgeliefert.
Hat jemand sowas wie eine DCF-lib für AVR+GCC? Ich hab schon lange Interesse daran mal einen DCF-Empfänger zu realisieren.
Such mal in der Codesammlung nach "DCF77" und "DCF 77", da gibt es einige Treffer.
Heute sind meine Module von Pollin nachgesendet worden. Habe gleich eins probiert und festgestellt, daß es funktioniert. Es ist so ähnlich, wie das Reichelt Modul, nur viel kleiner, hat eine push-pull-Endstufe mit 5µA Ausgangs"leistung" und kann somit direkt an einen CMOS-Eingang geschaltet werden. Der PON-Pin hat bei diesem Modul tatsächlich eine Bedeutung: liegt er auf Vcc, ist das Empfangsmodul abgeschaltet. Liegt er auf Masse, ist das Empfangsmodul eingeschaltet. Das Modul muß nach dem Einschalten der Betriebsspannung mindestens eine High-Low-Flanke an diesem Pin sehen, um aktiviert zu werden. Dies kann auch durch ein externes R/C-Glied mit einer Zeitkonstante von mindestens 1 Sekunde geschehen, wenn man keinen extra Controllerpin opfern will und das Modul immer an sein soll.
uii das ist ja sehr günstig. Pollin ist echt super :) Billiger geht's wohl nur direkt aus china.
Hallo, >Das Modul muß nach >dem Einschalten der Betriebsspannung mindestens eine High-Low-Flanke an >diesem Pin sehen, um aktiviert zu werden. ist zumindest ungewöhnlich. In den Datenblättern, die ich bisher von solchen ICs gesehen habe, war das immer ein statischer Eingang. Vielelicht nur nicht lange genug gewartet? Andere Module brauchen teilweise etliche Sekunden, bis der Empfänger eingeregelt hat und Impulse kommen. Gruß aus Berlin Michael
Nee Michael, ich hab´s lange genug getestet. Beim direkten an Masse legen des Eingangs läuft das Modul nicht los. Beim H/L-Tasten startet es sofort mit der Ausgabe der DCF-Impulse. Ich denke mal, daß intern eine Reset-Logik oder ähnliches verknüpft ist. Es arbeitet aber nach der beschriebenen Methode sehr ordentlich. Die Leuchtstofflampe direkt an der Arbeitsplatte bringt es jedenfalls nicht durcheinander.
Hi! Kannst du die nötige Schaltung inkl. R/C-Glied bitte mal hier posten? Habe nun auch so ein Pollin Modul und bekomme es nicht zum werkeln. Wie würde eine Verstärkerstufe (Transistor?) wenn man es nicht direkt an einen µC hängen will? Gruß
Also die Flanke an dem Eingang des Moduls muß steil genug sein, ein einfaches R/C-Glied reicht nicht (muß wohl Zufall gewesen sein). Mit einem Schmitt-Trigger geht es auf jeden Fall. Zwischen dem Einschalten der Betriebsspannung und der H/L Flanke muß wenigstens eine Sekunde liegen.
wie sieht die Schaltung denn dann aus? Brauch man dann nicht auch ein Verzögerungsglied (C?)?
Hallo, Travel Rec.: werd ich mir mal vorsichtshalber merken, dieses Verhalten. Naja, noch ein Pin am AVR frei? Dann ist es doch schon gelöst. ;) Gruß aus Berlin Michael
Ja, ein R, ein C und ein Schmitt-Trigger oder zwei Rs und ein C und ein Transistor. Letzteres habe ich nicht getestet.
Hab hier auch so ein Pollin DCF Modul geordert. Das mit dem PON Pin scheint traurige Wahrheit :( Man muss es wirklich etwas spaeter starten, und mit einem RC bekomme ich es nicht sauber hin. Steht ja auch im "Datenblatt", ab der ersten neg.Flanke. Mal schaun, wie ich das endgueltig loese. Ansich wollte ich das teuere Conrad DCF ersetzen. Aber das Pollin scheint bei mir auch auf der Versorgung sehr viel stoerempfindlicher zu sein. VDD sollte man also unbedingt filtern. Der Datenausgang ist uebrigends high activ. Falls Ihr Erfahrungen/Vergleiche mit anderen DCFs habt, oder eine einfache Loesung des PON bitte posten :) Gruss G.
Ich habe das Modul letzthin mal ausprobiert. Klappt in fliegender Verdrahtung wunderbar. Stundenlang durchgängig ein störungfreies Signal trotz allerlei Hardware daneben, Röhrenmonitore inklusive. Ist allerdings richtungsabhängig, in der falschen Richtung geht garnichts. PON frisst in dem (Test-) Aufbau halt einen zweiten Pin vom Controller.
Hallo, was meinst Du mit Richtung? Horizontal/vertikal? Oder muss man damit tatsächlich "zielen"? Schöne Grüße, Oliver
Wenn der Stab in Richtung Mainflingen zeigt kann der Empfang etwas schwierig werden. Horizontal quer dazu ist besser.
Bei meinem Exemplar ist die ansteigende Flanke nicht sonderlich steil und hat einen kleinen Sägezahn draufmoduliert. Da die Hysterese der AVR-Eingänge sehr gering ist, ist es je nach AVR Typ/Exemplar schon vorgekommen, dass der Impuls vom AVR gelegentlich nicht als ein einzelner vollständiger Impuls erkannt wurde, sondern ein sehr kurzer vorneweg erkannt wurde.
Andreas Kaiser wrote: > Bei meinem Exemplar ist die ansteigende Flanke nicht sonderlich steil > und hat einen kleinen Sägezahn draufmoduliert. Da die Hysterese der > AVR-Eingänge sehr gering ist, ist es je nach AVR Typ/Exemplar schon > vorgekommen, dass der Impuls vom AVR gelegentlich nicht als ein > einzelner vollständiger Impuls erkannt wurde, sondern ein sehr kurzer > vorneweg erkannt wurde. Hmmm... - Ein Grund mehr, das Ding über einen entprellten Tasteneingang auszuwerten (PeDa-Bulletproof-Entprellung, so modifiziert, dass sie steigende und fallende Flanken separat erkennt). ;-) ...
Ja, ein Problem ist das nicht wirklich, das war mehr als Tip für andere gedacht. Ist softwareseitig leicht zu lösen. Da in meiner Anwendung allerdings sowieso ein bischen Hardware dazwischen für Einschaltflanke und Signalverstärkung nötig war, habe ich das kurzerhand einen übrig gebliebenen Tiny15 machen lassen. Dahinter schaut's nun deutlich schöner aus und der Code am anderen Ende der Leitung ist einfacher.
Hat schon jemand nachgemesen wie hoch die Stromaufnahme im Power Down ist ? Ich habe da eine Akkugestützte Schaltung mit RTC und möchte die gerne um DCF erweitern. Natürlich zählt hier jedes µA :D
Die Stromaufnahme des Moduls kann "0,nix" sein, wenn man es über einen Portpin versorgt und halt abschaltet, wenn man es nicht braucht ;-).
Stimmt ! Auf die Idee bin ich noch gar nicht gekommen. Danke dann bestell ich das Teil mal.
Ich hab das Pollin DCF77-Modul auch und kann das mit der H-L-Flanke nicht bestaetigen. Bei mir habe ich den PON-Pin einfach auf Masse gelegt und es funktioniert wunderbar. Dauert allerdings etwas (3-5 min) bis es Signale ausgibt. Im Datenblatt steht auch das es bis zu 20 Minuten dauern kann bis der Empfaenger sich mit dem Signal synchronisiert hat. Das Problem mit der langsam steigenden Flanke und den Saegezaehnen hab ich mit einem Verstaerker zwischen Signalausgang und uC Eingang geloest. Damit ist der Saegezahn komplett raus und die Flanke steigt in ~100 us. Die Qualitaet der Signale ist auch super. Hab mir mal ein Testprogramm geschrieben was auf dem Display meiner Uhr-Schaltung die Laenge der Pulse ausgibt und die sind recht konstant (Abweichung +-3ms). Meine Uhr laeuft damit nun schon >18 h ohne einen einzigen Bitfehler.
Ich habe mir auch dieses Pollin-Modul bestellt und bin mir etwas unsicher, wie ich es an einem µC anschliesen soll. Kann ich den Ausgang des Moduls einfach mit einem Eingang meines PICs verbinden, oder sollte da noch ein Transistor dazwischen? Könnt ihr mir mal eure Schaltung skizieren oder beschreiben, wie ihr das Modul angeschlossen habt? Danke. Sven
Direkt anschliessen sollte funktionieren. Schmitt-Trigger-Eingang ist zwar von Vorteil, es sollte aber auch ohne den etwas dabei rauskommen. Kein Pullup, kein Transistor. Ein bipolarer Transistor wäre bei der immensen Treiberleistung von dem Teil (glatte 5µA) ohnehin ein Schuss ins Knie. Rechne damit, dass die ansteigende Flanke möglicherweise prellt. Also Entprellung wie bei Taster.
OK. Ich wollte den Empfänger an einen Captureeingang des PIC16F887 anschliesen. Das ist schon mal ein ST-Eingang. Wie bekomme ich denn nun heraus, welchen Strom der Eingang des PIC zieht? Ist der Parameter "Input Leakage Current" der richtige? Dann würde das ja mit max. 1µA funktionieren. Wie lange denkst du denn, dass das Signal prellt? Sven
hi, ich bekomme das DCF Modul einfach nicht zum laufen, habe Ausgang und PON am AVR angeschlossen aber es wird auch nach 30min. am Terminal keine Uhrzeit bzw. Datum aktualisiert. hier mal mein Code:
1 | $regfile = "M8def.dat" |
2 | $crystal = 4000000 |
3 | $baud = 9600 |
4 | |
5 | $hwstack = 128 |
6 | $swstack = 128 |
7 | $framesize = 128 |
8 | |
9 | '///////////////PORT Zuweisungen//////////////////////// |
10 | 'Port C =6543210 |
11 | Ddrc = &B1111111 '0 = Eingäng; 1 = Ausgänge |
12 | Portc = &B1111111 |
13 | |
14 | Power_dcf Alias Portc.1 |
15 | |
16 | '////////////////Schnittstellenkonfiguration///////////////// |
17 | Config Dcf77 = Pinc.0 , Timer = 1 , Debug = 1 , Check = 1 , Gosub = Sectic |
18 | 'Config Dcf77 = Pinc.0 , Timer = 1 , Debug = 1 |
19 | |
20 | Enable Interrupts |
21 | Config Date = Dmy , Separator = . |
22 | Declare Function Dcf_timezone() As Byte |
23 | |
24 | |
25 | Dim I As Integer |
26 | Dim Sec_old As Byte , Dcfsec_old As Byte |
27 | |
28 | Sec_old = 99 : Dcfsec_old = 99 |
29 | |
30 | Wait 2 |
31 | |
32 | '////////////////Initialisierungen///////////////////////// |
33 | |
34 | Print "Modul wird einschalten" |
35 | Power_dcf = 0 |
36 | While Power_dcf = 1 |
37 | nop |
38 | Wend |
39 | |
40 | Do |
41 | For I = 1 To 78 |
42 | Waitms 10 |
43 | If Sec_old <> _sec Then |
44 | Exit For |
45 | End If |
46 | If Dcfsec_old <> Dcf_sec Then |
47 | Exit For |
48 | End If |
49 | Next |
50 | Waitms 220 |
51 | Sec_old = _sec |
52 | Dcfsec_old = Dcf_sec |
53 | Print Time$ ; " " ; Date$ ; " " ; Time(dcf_sec) ; " " ; Date(dcf_day) ; " " ; Bin(dcf_status) ; " " ; Bin(dcf_parity) ; " " ; Bin(dcf_bits) ; " " ; Bdcf_impuls ; " " ; Bdcf_pause '; " " ; db1 ; " " ; db2 |
54 | If Dcf_sec > 45 Then |
55 | Reset Dcf_status.7 |
56 | End If |
57 | Print "Timezone : " ; Dcf77timezone() |
58 | Loop |
59 | |
60 | |
61 | 'optional, is called every second by the library |
62 | Sectic: |
63 | nop |
64 | Return |
65 | |
66 | |
67 | End |
was mach ích falsch?
Fang doch mal vorne an und schau nach ob überhaupt ein brauchbares Signal kommt. Debug=2 könnte da helfen, und dann halt in die entsprechenden Variablen reinschauen.
stepp64 wrote: > OK. Ich wollte den Empfänger an einen Captureeingang des PIC16F887 > anschliesen. Das ist schon mal ein ST-Eingang. Ein Comparator-Eingang ist nur dann ein Schmitt-Trigger, wenn man den Schwellwert entsprechend umprogrammiert. Ich bin da bei diesem PIC grad nicht auf dem Laufenden, bei manchen jedenfalls geht das. > Ist der Parameter > "Input Leakage Current" der richtige? Dann würde das ja mit max. 1µA > funktionieren. Korrekt. > Wie lange denkst du denn, dass das Signal prellt? Weiss ich nicht mehr. Worst case ist ein kurzer Puls vorneweg. Probier's aus, vielleicht klappt es auch so.
Normalerweise prellt das Signal gar nicht und ist ein sauberes Rechteck. Nur wenn der Empfang mies ist, wird dieses Rechtech durch unregelmäßige Pulse unterbrochen oder fällt ganz aus.
Travel Rec. wrote: > Normalerweise prellt das Signal gar nicht und ist ein sauberes Rechteck. Ich hatte bei durchaus sauberem Empfang den Effekt, dass die ansteigende Flanke bei sehr genauer Betrachtung nicht ganz steil und mit einem kleinen Sägezahn überlagert war. In Verbindung mit der eher kleinen Hysterese der AVR-Eingänge führte das dazu, dass ab und zu ein sehr kurzer Impuls vorweg erkannt wurde. Ich hatte nicht weiter untersucht, ob das nur bei diesem Exemplar der Fall war.
Ahh ja. Naja, bei einem Polling des Pins in einem 5ms-Raster würde dies nicht in´s Gewicht fallen, dabei werden solche Ausreißer weginterpoliert ;-)
Travel Rec. wrote: > Ahh ja. Naja, bei einem Polling des Pins in einem 5ms-Raster würde dies > nicht in´s Gewicht fallen, dabei werden solche Ausreißer weginterpoliert > ;-) Stimmt. Wenn das allerdings per Timer-Capture macht, weil noch frei, dann merkt man das.
DCF macht man nicht per Timer-Capture! Selbst wenn nur der Pin noch frei ist, kann man diesen in einer ohnehin laufenden Timer-ISR pollen, ohne die Capturefunktion zu nutzen.
> Ich hatte bei durchaus sauberem Empfang den Effekt, dass die ansteigende > Flanke bei sehr genauer Betrachtung nicht ganz steil und mit einem > kleinen Sägezahn überlagert war. > ... > Ich hatte nicht weiter untersucht, > ob das nur bei diesem Exemplar der Fall war. Das ist bei meinen beiden auch so. Ein kleiner Sägezahn mit ca. 1,7 kHz überlagert die steigende Flanke. Da der Sägezahn im Vergleich zur Impulsbreite des Nutzsignals klein ist, ist es keine großes Problem, den in Software "auszuknipsen".
Was spricht denn gegen capturn? Ich hatte mir das eigentlich einfacher vorgestellt. Bei jeder LH-Flanke wird der Zählerstand ausgelesen und verglichen ob es nun 100ms oder 200ms waren. Dabei kann man natürlich auch noch leichte Abweichungen mit einbauen. Allerdings hast du natürlich mit dem Pollen auch recht. Da bei mir sowiso alle 10ms ein Interrupt ausgelößt wird (welcher die Grundlage für die Sekunden darstellt) könnte ich natürlich in der Routine auch gleich das Signal des Empfängers abfragen und dann halt auf 10 oder 20 eines Zählers vergleichen. Ist eigentlich auch machbar und würde das Problem der Peaks entschärfen. Sven
Genau. Setze Dein Zählerfenster auf 8...12 für logisch 0 und auf 18...22 für logisch 1 und Du hast alle Probleme, was unsaubere Pulse angeht, auf einmal erschlagen. Damit kann Deine Software recht tolerant abtasten und zu verkorkste Bits gleich ausmaskieren.
Mein Pollin-Modul macht ausser dem Sägezahn auf der Steigenden Flanke auch noch auf der Fallenden Flanke einen kurzen Zacken wieder nach oben, und zwar ziemlich genau in der Mitte 0-VCC. Scheint der Umschaltpunkt der Gegentakt-Endstufe zu sein. Hat jedenfalls Ärger gemacht, bis ich das gefunden habe. Sieht man nur auf dem Speicheroszi. Ist softwaremässig leicht in den Griff zu kriegen, wenn man's weiss.
Mit der Poll-Methode sind noch so an den Flanken ausgefranste Impulse sauber zu detektieren, da es ja nun mal nur 1 und 0 gibt und keine Flanke eines noch so lausigen Modus flacher als 1V/ms ist.
Hallo, bei mir (zwischen Ostsee und Berlin, Holzhaus) hat das Pollin Modul vorgestern beim ersten Versuch recht saubere Signale (Oszi) abgegeben, war aber stark richtungsempfinglich. Gestern + heute gab es dann anstelle von sauberen Rechteckimpulsen nur noch wilde Zacken (Modul solo, ohne uC ausprobiert) von sich. Ich habe alle Lötstellen (auch die an Spule und C auf dem Ferrit-Stab) nachgelötet, einen Widerstand seriell und einen C parallel in die (stabilisierte, 5V, Signal ist sauber) Spannungszuführung gelegt, das Modul mit geschirmten Leitungen einen Meter von allen Stromleitungen angebracht -- alles ohne Erfolg. Mal kommen wilde Zacken anstelle der Bit-Signale, mal fallen Bits aus. Alle DCF77-Uhren im Haus funktionieren ohne Probleme. Momentan denke ich daran, das Modul abzuschreiben und es mit dem Modul von C** zu versuchen. Hat jemand Ideen zu den Ursachen, Lösungsvorschläge? Danke, obake
> Ich habe alle Lötstellen (auch die an Spule und C auf dem Ferrit-Stab) > nachgelötet, Und dabei wahrscheinlich mehr kaputt gemacht als kaputt war. > Alle DCF77-Uhren im Haus funktionieren ohne Probleme. Klar, die schalten ihren Empfänger auch nur einmal in der Stunde zum synchronisieren an. Wenn sie dann nichts bekommen, dann ticken sie einfach munter mit ihrem internen Quarz weiter. Denen gehen DCF77-Störungen ziemlich am A. vorbei. > Momentan denke ich daran, das Modul abzuschreiben und es mit dem Modul > von C** zu versuchen. Ähm, dir ist schon klar, dass es bei Funksignalen zu allen Arten von Störungen kommen kann?
Hallo pnübergang,
> Und dabei wahrscheinlich mehr kaputt gemacht als kaputt war.
Was soll die implizite Unterstellung, dass ich das nicht kann? Muss ich
hier erklären, dass ich regelmäßig mit 0402 Komponenten arbeite, um
solche Kommentare zu vermeiden? Hauptsache Leute runtermachen! Macht dir
das eigentlich Spaß? Hilft es irgendwie, davon auszugehen, dass
Fragesteller prinzipiell unfähig sind?
Ansonsten Danke für die hilfreichen Antworten.
Das Problem scheint wohl eher mit den Ausbreitungsbedingungen als mit der Hardware zusammenzuhängen: momentan ist das Signal wieder sauber (laut Oszi und meiner Software).
Störquelle in der Nachbarschaft oder in den eigenen 4 Wänden! Ermitteln und abschalten.
braucht das modul jetzt eigentlich eine HIGH-LOW Flanke an PON oder geht es auch ohne?
Meine brauchen diese. Ohne laufen sie auch nach ´ner halben Stunde nicht an.
Dito -- ohne H->L an PON (ich mach's ca. 1 s nach Anlegen von Vdd) kein Ausgangssignal.
Ich habe 47µF von Vdd nach PON und 1k von PON nach Masse. Klappt prima! Gruß Herby
Ja, funktioniert seit ca. 3 Wochen ohne jedes Problem. Nur die pos. Flanke vom Ausgang nervt etwas. Gruß Herby
man kann den widerstand ja noch erhöhen, irgendwann muss es ja funktionieren :)
>Alle DCF77-Uhren im Haus funktionieren ohne Probleme.
Kein Wunder: Nachts um 2 oder 3 Uhr hat man auch die relativ besten
Empfangsbedingungen. Wenn man das Empfangsmodul nur alle 24 h um diese
Zeit
einschaltet (falls kein Empfang, eine Stunde später nochmals versuchen
etc.), um die permanent laufende Software-RTC nachzustellen, spart das
auch noch schön Batteriestrom.
Ein Genauigkeitsproblem gibt es übrigens nicht, wenn man so verfährt:
Ein Standardquarz hat ca. 20 ppm Ganggenauigkeit (Richtwert), also kann
eine RTC damit nur höchstens 20 * 10^-6 60 60 * 24 = 1.7 s pro Tag
vor- oder nachgehen. Das merkt (noch) niemand.
Also: Fauler Zauber sind sie, die allzeit perfekt funktionierenden
DCF-Uhren im Haus... ;-)
Hallo, ich verwende die Sourcen V1.5 von Ulrich Radig und habe folgende Änderungen am Code gemacht: clock.h:
1 | #if defined (__AVR_ATmega644__)
|
2 | //Interrupt an dem das DCF77 Modul hängt hier INT0
|
3 | #define DCF77_INT_ENABLE() EIMSK |= (1<<INT0);
|
4 | #define DCF77_INT SIG_INTERRUPT0
|
5 | #define INT0_CONTROL MCUCR
|
6 | #define INT0_FALLING_EDGE 0x02
|
7 | #define INT0_RISING_EDGE 0x03
|
8 | //#define TIMSK1 TIMSK
|
9 | #endif
|
und in clock.c:
1 | //############################################################################
|
2 | //Diese Routine startet und inizialisiert den Timer
|
3 | void Start_Clock (void) |
4 | //############################################################################
|
5 | {
|
6 | // Modul einschalten, PON auf VDD aund dann PON auf GND ziehen
|
7 | DDRD |= (1<PD3); // Ausgangsrichtung |
8 | PORTD |= (1<<PD3); |
9 | _delay_us(5); |
10 | PORTD &= ~(1<<PD3); |
11 | |
12 | //Interrupt DCF77 einschalten auf ansteigende Flanke
|
13 | DCF77_INT_ENABLE(); |
14 | INT0_CONTROL = INT0_RISING_EDGE; |
15 | |
16 | //Interrupt Overfolw enable
|
17 | TIMSK1 |= (1 << TOIE1); |
18 | //Setzen des Prescaler auf 1024
|
19 | TCCR1B |= (1<<CS10 | 0<<CS11 | 1<<CS12); |
20 | //SYSCLK defined in USART.H
|
21 | TCNT1 = 65535 - (F_CPU / 1024); |
22 | return; |
23 | };
|
Die Anzeige auf der seriellen zeigt (ich habe ein delay von 5ms im Hauptprogramm): 0-0-0 Time: 0:0:0 Sync: 0 Rx: 0 0-0-0 Time: 0:0:5 Sync: 0 Rx: 0 0-0-0 Time: 0:0:10 Sync: 0 Rx: 0 etc. Irgendwie ist das keine Uhrzeit bzw. Datumsangabe :-(
Leute, tut euch den Pollin-Schrott (Reichelt hat die gleichen) nicht an! Die 10€-Teile vom Blauen C haben mich noch nie enttäuscht , zu Dutzenden verbaut und nie Probleme gehabt.
Mag sein, aber ich habe zwei Stück hier und da will man sie natürlich auch zum Laufen bringen :-)
> Finde ich schon. Besonders, wenn man kein Oszi zur Verfügung hat. Wieso? Die kann man doch mit einem hochohmigen Multimeter messen. Die Ausgangsfrequenz von 1 Hz führt sogar auf trägen Multimeter zu erkennbaren Zuckungen im 1 Sekunde Abstand. Zur Not sollte sogar ein einfaches Monoflop mit hochohmigem Eingang das eine LED treibt ausreichen. Dann geht es sogar ohne Multimeter. Das die Teile von Pollin den Signalflanken noch einen langsamen Rechteck überlagern kann man hier nachlesen und einfach glauben. Dafür braucht man kein Oszilloskop. Ansonsten ist auf den Dingern gar nichts, auf das man mit einem Oszilloskop-Tastkopf pieken könnte. Wenn die kaputt sind hilft ein Oszilloskop nicht weiter. Eine erste Testsoftware ist primitiv einfach, wenn man mal den überlagerten Rechteck ignoriert: In einer Schleife einen Eingangspin auslesen, das Ergebnis in ein Zeichen ('0' oder '1') wandeln und über die serielle Schnittstelle schicken. Im Sekundentakt sollte man Einsen sehen (eventuell mit etwas Gezappel wegen dem Rechteck).
Ja, das Digi-Multimeter zeigt etwas im Abstand von 1 Sekunde an. So 0,2 Volt, aber ich vermute mal, das das Multimeter zu träge ist, um die 5V des Interrupts anzuzeigen. D.h. ich kann wohl davon ausgehen, dass das Modul funktioniert (?).
Da hängt man eine LED dran und fertig. Da das vom Strom her direkt nicht geht, kopiert der Controller eben im Interrupt den Pinzustand auf einen Portpin mit LED. Das ist auch später in Produktion nützlich, damit man sieht ob das auch noch läuft.
Achtung der Pollin kommt nicht wie angegeben mit bis zu 5,5V klar, bei mehr als 4V hatte ich kein Empfang
Hier kommen ein paar (hoffentlich) aufschlussreich Bilder der Signalform für alle, die kein Oszi zur Hand haben. MfG, Flo
Ich hatte mit 5V noch nie Probleme. Allerdings setze ich generell eine RC-Kombination vor den VCC-Anschluß (240R + 100uF//100nF). Auch sehen bei mir die Ausgangsimpulse wesentlich sauberer aus, als auf den Bildern. Vermutlich hast Du ein Problem mit Deiner VCC.
> Allerdings setze ich generell eine > RC-Kombination vor den VCC-Anschluß (240R + 100uF//100nF). Beim Radio nannte man das "Siebkette". Ist so ein DCF77-Modul nicht auch (im weitesten Sinne) ein Radio?
Ich habe das Pollin DCF77 Modul ohne weiteren Schnickschnack an den Int0 eines ATMega644 gehängt. Durch Portspiegelung auf eine LED kann ich erkennen, dass jede Sekunde ein Signal kommt. PON-Flanke zum Starten scheint auch zu funktionieren. Ich setze die Software von Ulrich Radig ein. Allerdings bekomme ich keine Zeit in der Ausgabe zu sehen. Das habe ich bisher probiert: - Austausch Netzteil durch Batterie - Absenken der Spannung von 5 auf 4,2V über Spannungsteiler - 100nF und 47uF zwischen VDD und GDN So langsam weiss ich nicht mehr weiter. Hat jemand noch eine Idee, was der Fehler sein könnte?
Auch mit einem zwischengeschalteten OpAmp TLC272 bekomme ich zwar ein Blinken im Sekundenrhythmus, aber noch keine Uhrzeit ... Ich habe das Modul über ein 1m geschirmtes Kabel ans Fenster gestellt. Ein Funkwecker, welcher genau daneben steht, kann die Zeit synchronisieren. Anbei der Source-Code.
>...an den Int0 eines ATMega644 gehängt.
Toll. Dann hast Du auch bestimmt sichergestellt, dass Dein Signal
absolut frei von z. B. ultrakurzen Spikes (Mikrosekundenbereich) ist.
Weil der Int0 gnadenlos auf jeden einzelnen reagiert - das ist ja seine
besondere Eigenschaft.
Spikes braucht man dafür garnicht. Die Pollin-Funkuhr darf man nicht über einen signalbezogenen Interrupt auswerten, es sei denn man schaltet einen Schmitt-Trigger mit erheblicher Hysterese davor, denn dem Signal ist im ansteigenden Teil eine Schwingung aufmoduliert, wie man hier erkennt: Beitrag "Re: DCF77-Modul von Pollin" Besser: Timer auf beispielsweise 10ms Raster programmieren und in dessen Interrupt den Eingang pollen.
> Besser: Timer auf beispielsweise 10ms Raster programmieren und in dessen > Interrupt den Eingang pollen. Dann kann man ihn ja gleich mit den Tastern zusammen per PeDa-Entprellung behandeln... ;-) ...
Hannes Lux schrieb: >> Besser: Timer auf beispielsweise 10ms Raster programmieren und in dessen >> Interrupt den Eingang pollen. > > Dann kann man ihn ja gleich mit den Tastern zusammen per > PeDa-Entprellung behandeln... ;-) > > ... Wenn die schon vorhanden ist, joa. Man kann aber auch direkt Peters bulletprof DCF Decoder benutzen ;) Der hatte doch da auch was im Angebot.
Simon, damit habe ich mich noch nicht beschäftigt, denn ich brauchte noch keine Eigenbau-DCF77-Uhr. Zum Anzeigen der Zeit reicht mir eine gekaufte Funkuhr. Falls ich aber mal eine (Eigenbau) brauche, dann braucht die auch ein Benutzerinterface, denn dann muss die mehr können, als nur die Zeit anzuzeigen. Und da die Tastenentprellung in ASM sehr leicht auf "Taste loslassen" erweitert werden kann, würde ich die Bits mit durch die Tastenentprellung jagen. Ist aber alles hypothetisch, ich brauche vorläufig keine Eigenbau-Funkuhr. ...
Hannes Lux schrieb: > Dann kann man ihn ja gleich mit den Tastern zusammen per > PeDa-Entprellung behandeln... ;-) Kann man, aber wenn man nicht zu schnell pollt löst sich das Problem in Luft auf.
@Tom: - wenn über Interrupt die Flanken des Moduls verarbeitet werden sollen, dann einen Schmitt-Trigger dazwischenschalten. Ich habe einen 4093 verwendet. - wie an anderen Stellen schon mehrfach geschrieben, KEIN Schaltnetzteil verwenden, sondern ein "Standard"-NT mit Trafo. Mit Schaltnetzteil bekomme ich gar nichts vernünftiges empfangen, nur Gezappel am Interrupt-Eingang (mit LED via anderem Port-PIN direkt sichtbar gemacht). Mit Standard-Netzteil klappts sogar direkt neben dem Laptop mit daran angeschlossenem Schaltnetzteil.
Was für eine Spule hatte das Schaltnetzteil und wie weit war die weg? Mit einer offenen Spule oder gar einer Stabkerndrossel würde mich das nicht wundern.
> Und welche Schaltwandlerfrequenz. Ist unter Umständen auch interessant.
Na 77,5 kHz...
Duck&weg...
...
Nun gut, dann muss ich wohl noch einmal von vorne anfangen und Polling mit 10ms ausprobieren. Einen 4093 habe ich gerade nicht zur Hand.
Num macht mal nicht die Pferde verrückt wegen der Flanken. Ich habe ein Pollin Funkuhrmodul am INT2 laufen (Mega2560) - ohne OPV und sonstigen schnickschnack. Es funktioniert einwandfrei. Man muß nur eine kleine Kapazität (100nF oder ähnlich) zwischen Data-Out und Masse des Moduls schalten. Wenn du durch Portspiegelung schon ein Sekundensignal siehst, dann ist ja schonmal soweit alles in Ordnung. @A.K.: Die Oszillogramme haben meiner Meinung nach nicht so viel Aussagekraft. Die Schwingungen können genausogut von deiner Versorgung kommen. Außerdem reagiert der externe Inteingang nur wenn die Spannung auch die Schaltschwelle überschreitet (lt. Datenblatt 0.7*VCC)... @Tom: Sind die Timereinstellungen für die Zählschleife korrekt? Soweit ich weiß ist der Code von Ulrich Radig für 8Mhz angepaßt.
Mario Grafe schrieb: > @A.K.: Die Oszillogramme haben meiner Meinung nach nicht so viel > Aussagekraft. Die Schwingungen können genausogut von deiner Versorgung > kommen. Wie oben schon geschrieben habe ich sehr ähnliche Bilder bekommen. Das ist eindeutig nicht Vcc. > Außerdem reagiert der externe Inteingang nur wenn die Spannung > auch die Schaltschwelle überschreitet (lt. Datenblatt 0.7*VCC)... Nope. Diese 0,7*Vcc ist der Wert, den der Hersteller für jeden Betriebsfall garantiert, die tatsächliche Schwelle liegt aber um ca. 0,5*Vcc.
@Mario: In den Timereinstellungen habe ich SYSCLK (welches ja 8MHz war) auf F_CPU umgestellt (ich benutze AVRStudio). TCNT1 = 65535 - (F_CPU / 1024); Ich hoffe doch, dass keine weiteren Änderungen notwendig sind. Prescaler steht auf 1024.
Habe auch gerade mal gemessen. Es stimmt, daß die ansteigende Flanke etwas verrauscht ist. Dies ist hauptsächlich im unteren Drittel des Anstiegs so. Die abfallende Flanke ist sauber. Die Länge der High-Pulse ist etwas unterschiedlich, so daß man bei zu grobem Polling größer als 10ms eventuell Überlappungen von 0 und 1 Bits erhält. Bei meinen Versuchen hat sich ein Polling von 8ms als sinnvoll erwiesen, da alle Zeiten dann innerhalb eines Timer-Zählbytes bleiben und die Auflösung von 8...13 für "0" und 19...26 für "1" ausreichend hoch ist. Die Austastlücke der 59 Sekunde bewegt sich um Werte von 180...220.
Also das mit 100nF hat noch nicht den gewünschten Erfolg gebracht. Könnte wohl dann doch an der Software (s.o.) liegen.
Ich verstehe diese Zeile noch nicht so ganz: TCNT1 = 65535 - (F_CPU / 1024); Das Register beinhaltet doch den Counter1 und sollte bei jedem Interrupt hochgezählt werden, oder ? Warum wird das Register mit 57722 gefüllt (bei 8Mhz)?
Jetzt hängt das Modul an einer 3V Knopfzelle. Kann vielleicht noch jemand etwas zu meinem vorherigen Posting mit dem TCNT1 sagen? Merci.
Hi >Warum wird das Register mit 57722 gefüllt (bei 8Mhz)? Da hat jemand die Funktion der Output Compare Register nicht verstanden. >Kann vielleicht noch jemand etwas zu meinem vorherigen Posting mit dem >TCNT1 sagen? Merci. Damit wird der Zählbereich des Timer verkleinert. Der Timer Overflow Interrupt würde sonst nur alle 65535 Takte ausgelöst. MfG Spess
spess53 schrieb: > Hi > >>Warum wird das Register mit 57722 gefüllt (bei 8Mhz)? > > Da hat jemand die Funktion der Output Compare Register nicht verstanden. Ich glaub damals beim Classic AVR gabs welche ohne CTC Einheit, daher rührt das.
>Das Register beinhaltet doch den Counter1 und sollte bei jedem Interrupt >hochgezählt werden, oder ? Wie kommst Du denn darauf? Das Register TCNT1 wird von der Hardware mit der Frequenz F_OSC/1024 hochgezählt (falls der T/C1-Prescaler auf 1024 eingestellt ist) und wenn es von 65535 auf 65536 --> 0 umspringt, wird ein Overflow-Interrupt ausgelöst. Für ein präzises Timing empfiehlt es sich jedoch, wie schon erwähnt, den CTC-Modus zu verwenden.
Die ansteigende Flanke ist wirklich etwas langsam und dauert mehrere ms. ich schicke das Signal 2x durch 1/4 lm324 und das Reset-Problem habe ich mit einer weiteren Stufe dieses Bausteins gelöst.
Ich habe das gleiche Problem wie Tom (kein Signal an INT0/PD2 bei Atmega644), verwende den Sourcecode von U.Radig und habe folgende Ergänzung in code.h hinzugefügt:
1 | #if defined (__AVR_ATmega644__)
|
2 | //Interrupt an dem das DCF77 Modul hängt hier INT0
|
3 | #define DCF77_INT_ENABLE() EIMSK |= (1<<INT0);
|
4 | #define DCF77_INT SIG_INTERRUPT0
|
5 | #define INT0_CONTROL EICRA
|
6 | #define INT0_FALLING_EDGE 0x02
|
7 | #define INT0_RISING_EDGE 0x03
|
8 | #endif
|
Das interessante an der Sache ist, das der Empfang mit einem Atmega32 und der selben Software und Beschaltung (STK500 + Conrad DCF77-Empfänger über 7m Leitung an INT0/PD2) funktioniert! Beim Atmega644 kann ich "händisch" Impulse an INT0/PD2 generieren, aber nicht durch das DCF77-Modul. Irgendwelche Tipps? Gruß Joe_D
Hallo, hab heut das Pollinmodul auch endlich zum Laufen bekommen. Dies hat schon ewig gedauert, weil Pollin in den Datenblättern (sowohl Online, als auch mitgeliefert) die falsche Pinbelegung angegeben hat. Nicht VDD,GND,DATA,PON (von oben nach unten im Bild) sondern genau umgekehrt, also PON,DATA,GND,VDD. Hab ich erst durch zufall in nem anderen Forum gelesen (http://www.jogis-roehrenbude.de/forum/forum/forum_entry.php?id=40180&page=4&category=0&order=last_answer). Jetzt hab ich die Probleme mit dem Sägezahn. Kann ich den INT0 (da hängts dran) in BASCOM irgendwie entprellen? Habe da so meine Probleme, da das über das DCF77 Modul mache. Würde ungern extra Hardware einsetzen, zumal ich im Moment keinen Schmitt-Trigger zur Hand habe. Gruß, Florian PS: Habe Pollin mal ne Mail geschickt, und auf die beiden Fehler hingewiesen.
Das Signal sollte man deshalb nicht per Interrupt-Leitung auswerten, sondern in einem Timer-Interrupt alle zig Millisekunden abfragen.
Florian Schütte schrieb: > Pollin in den Datenblättern (sowohl Online, > als auch mitgeliefert) die falsche Pinbelegung angegeben hat. Nicht > VDD,GND,DATA,PON (von oben nach unten im Bild) sondern genau umgekehrt, > also PON,DATA,GND,VDD. Bei meinem Modul hat die in den Datenblatt angegebene Pinbelegung gestimmt. Die Pinbelegung bezieht sich auf den Anschluss wenn der Quarz und die Anschlussstifte nach oben zeigen. Habe es in einem externen Gehäuse mit ca 1m Anschlusskabel und RN 3pol Stecker eingebaut. Spannungsversorgung mit 10µF, 100nF, 480R und 3V3 Z-Diode geregelt. Signal mit Transistor verstärkt. Direkt auf Basis ohne Widerstand. Verstärktes Signal auf Transistor und 3mm LED zur Signal Anzeige. Beim anschliessen leuchtet LED kurz auf, nach ca 70 sek ist das Signal dann da. (Also nur geduldig warten.) Man könnte noch Pon mit einer Resetschaltung aus C und R versehen, um den ersten Empfang zu beschleunigen. Anbei Fotos. Zum Schaltplanzeichnen bin ich noch nicht gekommen. Hatte noch alle Teile, inkl. Gehäuse, in der Bastelkiste. PS: Wenn genug MC Pins frei sind, können auch Pon und +5V/3V3 an den MC angeschlossen werden. Zum Ein-Ausschalten und als Reset.
Hallo, heute nacht gegen 4Uhr hatte ich guten Empfang und alles hat funktioniert. Wahrscheinlich weniger Störeinflüsse. Werde mal, wie du, einen Transistor zwischenschalten. Das Datenblatt zeigt nun ein anderes Bild (darauf ist nun der Chip eingezeichnet, siehe Online bei Pollin) auf dem die Belegung gleich geblieben ist. Vielleicht daher der Fehler. Aber auch nach deiner Belegung auf dem Datenblatt-Foto könnte das dann niemals stimmen. Wahrscheinlich haben sie verschiedene Chargen des Empfängers.
Könnten wirklich verschiedene Modelle sein. Waren ja mal kurz Zeit nicht online bestellbar gewesen.
@Uwe: Na das mit der Belegung hatte ich ja schon herausgefunden, und heut Nacht auch schon nen Sync bekommen. Trotzdem Danke für den Link. Also wenn ich nen Transistor zwischenschlte (BC547B) passiert nix mehr. Entweder ich bin grad zu verplant den richtig anzuschließen, oder die 5uA vom Ausgang reichen nich den zu schalten.
Habe mal angefangen einen Schaltplan zu zeichnen. Für Kritik und Verbesserungsvorschläge bin ich offen. Mein erster mit Eagle. Spannungsversorgung fehlt noch. Hoffe ich habe die Dateiformate bis jetzt richtig gewählt.
Meine zwei DCF77 Modelle, vor ca. 2 Wochen erhalten, passen überhaupt nicht zum Datenblatt, mir ist es aber zum Glück direkt beim Verlöten aufgefallen, da die Masse nicht an ihrem Platz lag - hab dann die Bahnen zurückverfolgt und mir meine eigene Übersicht über die Pins verschafft. Was soll man sagen... ist halt Pollin :/
@Holger: Genau wie du es beschriben hast hatte ich es auch aufgebaut. Der Transistor war wohl defekt. Habe nen neuen genommen und siehe da, es geht. Ich habe das ganze mit einem BC548C und nem 547A probiert. Mit dem 548 scheint es besser zu klappen, da gibt der DCF das korrekte Signal nach 2-3 Minuten aus. Beim 547 dauerts 3-5 (mit beiden ca. 10 mal getestet). Mit dem 547 gibts noch einige Störungen, daher dauerts wohl länger. Mit dem 548 störts nurnoch, wenn draußen die Straßenbahn vorbeifährt. Den Teil mit der LED hab ich weg gelassen. Also nur Transistor und 10k. Jetzt bin ich glücklich, dass ich dieses Kapitel abschließen kann. Hat mich viele Stunden wertvolle Freizeit gekostet ;)
Und wie ich grade in einem weiteren Versuch feststellen musste, scheint mein Modul ohne PON-Flanke auszukommen. Also direkt an GND. Ist ja wohl nicht bei allen der Fall, soweit ich dass hier lesen konnte. Hatte vorher über nen Portpin 1s High-Signal zur Verfügung gestellt. Wieder ein Pin frei :happy:
@Holger: Hab nochmal just for fun den 547 mit der LED aus deinem Schaltplan drangehängt. Es entsteht ein leichtes Dauerleuchten an der LED, welches bei den Impulsen heller wird. Eine simpele Diode 4148 zwischen Emitter des 547 und GND behebt dieses Problem. Bin mir nur nicht sicher warum sie das tut. Schwellspannung?
Florian Schütte schrieb: > Es entsteht ein leichtes Dauerleuchten an der > LED, welches bei den Impulsen heller wird. Tippe mal auf internen PullUp Widerstand. Deaktiviere Ihn mal, dann müsste es funktionieren. Das gibt dann nähmlich mit R1 einen Spannungsteiler, deswegen das glimmen.
Hallo, ich häng mich mal rein hier. Habe auch das DCF von Pollin, und ziemlich arg Probleme damit! Habe die kleine Schaltung von Holger mal angeschlossen, und der Empfang ist mal da, sonst würde die Led ja nicht blinken, oder!? Dann habe ich das Teil mit mein AVR-Testboard von Pollin verbunden, das DCF-Signal liegt bei meinem ATmega8 an Pind.2 an, da war dann die Led immer an. Darauf hin habe ich mein Programm(.bas) so wie es jetzt als zip dabei ist abgeändert, und die Led blinkt wieder. Ich bekomme aber KEINE Zeit oder Datum auf's Display! Das Display-Programm läuft! Was mache ich falsch? mfg mario
Pollin hat nach meiner kleinen "Konstruktive Kritik"-Mail (siehe Beitrag "Re: DCF77-Modul von Pollin" ) das Datenblatt geändert. Belegung ist endlich korrekt und ein Hinweis auf die Entstörung des Signal ist auch drin. Wie ich grad feststellte (Dateieigenschaften) haben sie es schon einen Tag nach der Mail geändet.
@Ulrich Wenn du mich meinst, bitte... Achtung! Schaltplan ist noch für die alte Pinbelegung.
Nabend, ich hab ein kleines Problem mit dem Pollin Modul. Hatte es schon mal an einer Schaltung aufem Steckbrett laufen und hatte auch ein ordentliches Signal. Jetzt habe ich das Modul an einer anderen gedruckten Schaltung und wenn ich es so laufen lasse, kommt nur Mist raus, aber sobald ich die Platine des Moduls mit den Fingern seitlich anfasse, bekomme ich ein perfektes Signal. Hat jemand dazu eine Idee??? Ich hab das Modul mit ca. 30cm Flachbandkabel angeschlossen... Gruß Eike
ich hab gerade noch mal genau gefummelt...^^ Also wenn ich den großen Elko, der auf dem Modul ist, mit meinem Daumen "brücke", denn ist alles super. Ohne meinen Daumen kommt nur Schrott raus...
dann liegt die lösung ja auf der hand^^, elko auslöten und nur kleine Keramikkondensatoren benutzen.
ja ich weiß, klingt echt bescheuert. habs ja auch nur durch zufall rausgefunden...
ich hab den kondensator jetzt auch mal ausgetauscht bzw ganz weggelassen, es hilft aber alles nichts...
und wenn ich den finger nicht draufhalte, denn sind es grisselige 50Hz mit einer Amplitude von ca 1V auf dem Ausgang... Hat keiner ne Idee was dagegen hilft? Weil meinen Daumen wollte ich da nicht dranlöten...
Speist Du die Schaltung aus einem NT, dann teste mal mit Batterie. Ist das Problem damit weg, hast Du einem Lösungsansatz.
also mit batterie sind zumindest die 50Hz weg. das heißt der ausgang ist die ganze zeit auf low. Wenn ich wieder in die nähe des Moduls komme bzw. es berühre hab ich guten empfang.. check ich nicht.
Hallo, ich hatte ein ähnliche gelagertes Problem. Das Modul gab nur dann Sinnvolle Daten aus, wenn der ISP Anschluss an der Schaltung steckte. Mit Batterieen lief es auch erst, wenn ich mit dem Finger das Modul berührt habe. Aber dann auch nach loslassen des selben. Ich habe dann nach mehreren Versuchen und dank der Hilfe dieses Forums herausgefunden, daß 1. die Versorgungsspannung nicht zu hoch sein darf ich hatte die 3V für das modul über einen Spannungsteiler generiert und mit 4 Batterien war diese zu hoch. Und da ich auch noch ein LCD angeschlossen hatte, konnte ich nicht auf 2 Zellen herunter gehen. 2. das Netzteil eine sehr saubere Spannung abgeben muß. Nachdem ich das Chinabillignetzteil (stand Intel drauf) durch ein noName Netzteil (nicht mehr made in China sondern in England) erstetzt hatte, lief es einwandfrei, ohne Hand auflegen und ohne ISP Kabel. Frank
Lustig, ich hab' das Gegenteil: sobald der ISP steckt, kommt nur mehr Rauschen aus dem Modul. Netzteil oder Batterie ist dabei egal.
Mahlzeit! Auch ich hatte die letzten Tage mit dem "tollen" Redesign des Pollin-DCF-Moduls zu kämpfen. Das Problem war: die neue Pinbelegung hatte ich bemerkt, aber nicht, daß das Modul nurnoch mit 3V versorgt werden möchte! Die Folge: die Impulse kamen nicht sauber raus, sondern so zu sagen als "Burst-"Pakete. Diese Burst-Pakete htten zwar die länge von dem jeweiligen Impuls, aber das machte die Auswertung nicht einfacher ;) ... Dann hab ich 100nF zwischen DATA und GND gepackt. Die Burst-Pakete wurden hübscher, aber immernoch weitweitweit von sauber entfernt... So, und DANN hab ich das mit den 3V "mitbekommen". Also quick & very dirty einen Spannungsteiler aus 1k und 1k5 gebaut und drangehängt. Das lief dann mit den 100nF an DATA... ähm... nicht. Nur ein leichtes Zucken von ca. 0,2V auf der Leitung (mir wurde später auch klar warum... ;) ). Also dann den Kondensator weggenommen, und daaaannnnn.... WIEDER BURST-PAKETE (mit 2,9V)!!! Ich also am fluchen und schimpfen... Und auf einmal: wassn das? Urplötzlich wurden aus den Burst saubere Impulse. Warum? Keine Ahnung, aber jetzt läufts! Also: neues Pollin-Modul über Spannungsteiler versorgen, 100nF zwischen VDD und GND und KEIN(!) Kondensator an DATA. Gruß, Joachim
Hallo, habe weiter oben schon mal gepostet, egal das Pollin-Modul läuft mal jetzt, aber die Sekunden laufen ca.2sek zu schnell bei Ausgabe von Time$! Bzw. , wenn ich die Time(dcf_sec)-Ausgabe wähle, dann springt die Minute bei 28sek schon um 1min weiter. Was kann ich da machen. Benutze Bascom. gruß mario
Hi @ all habe mir auch das Modul von Pollin bestellt und habe es jetzt nach ca 6 Std. zum laufen gebracht. Für alle die am verzweifenl sind, das waren meine Schritte: 1. Überprüfen ob man das neue oder alte modul hat! (hab das neue und hab das nicht gewusst, dito falsch angeschlossen) 2. Versogungsspannung sicherstellen hatte auch erst 5V aber neues Modul darf max 3,5V bekommen habe das ganze jetzt über einen Vorwiederstand, Kondensatoren und einer Z-Diode gelöst 3. Überprüfen ob ein Signal vorhanden ist dazu habe ich einen Schmitt-Trigger schaltung ähnlich der obigen gebaut, allerding greife ich das signal am 2.Transistor am Collector ab. Wenn die Led dann bei eingescalteter Versorgungsspannung Blinkt ist alles OK. 4. Signal einlesen da ich mit BASCOM programiere sieht die inizialisierung für das Modul folgender maßen aus ---> Config Dcf77 = Pind.0 , Inverted = 1 , Timer = 1 , Debug = 1 , Check = 1 , Gosub = Sectic <------- Invertet = 1 weil ich das signal an der led abreife und es somit inv ist, Debug = 1 da ich mir während der initialisierungsphase die Debugdaten ausgeben lasse um zu sehen ob der zwerg was schafft. Ich hoffe damit konnt ich helfen Liebe Grüße Christopher
Hallo! bin gerade auf der Suche nach Hinweisen zum DCF Modul von Pollin über diesen Thread hier gestolpert. Ich habe mir vor ca 2 Monaten auch dieses Modul bestellt. Heute abend habe ich dann versucht es mit Arduino (ATmega8 mit Quarz auf Steckbrett) ans laufen zu bekommen. Dazu habe ich den Sourcecode benutzt den ich hier gefunden habe: http://gonium.net/md/2007/01/06/arduino-dcf77-v02-released/ (Der ist eigentlich für das Conrad GPS-Modul) Erstmal habe ich den DCF so angeschlossen wie es im Datenblatt stand. Da nach ca 1h immer noch kein gültiges DCF Signal erkannt wurde, habe ich nachgesucht und den Empfänger so angeschlossen wie ich meine es hier verstanden zu haben. Dazu habe ich mal ein kleines Schaubild mit Foto gemacht (Sorry, ist nur mit ner Webcam) Anfangs habe ich den Empfänger mit 5V über eine 1n4001 Diode versorgt (ca 4,5V). Nachdem ich hier den Thread gelesen habe, erzeuge ich VCC mit nem Spannungsteiler (1k + 510) aus 5V (ergibt dann ca 2,8V). Andere Widerstände habe ich gerade leider nicht hier. Was mich wundert, ist dass der Data Ausgang wenn ich mit dem Multimeter nachmesse bei ca 200mV liegt, also quasi GND. Sollte der nicht High sein und nur bei einem Impuls auf Low gehen??? Ach ja das PON mache ich momentan noch von Hand. Nach einschalten der ganzen Schaltung Stöpsel ich den von VCC auf GND um. Versorgt wird die ganze Schaltung über den USB-Port. Folgende Fragen kann ich mir momentan nicht selber beantworten: 1. Ist das so richtig angeschlossen? Anhand der blanken Kontaktfläche oben rechts meine ich zu erkennen, dass es ein DCF neuerer Bauart ist. 2. Kann ich mit dem Data-Ausgang direkt an den Eingang des AVR gehen? 3. Kann das Modul kaputt gegangen sein als ich es falsch herum angeschlossen hatte? Ich hoffe ihr könnt mir da weiterhelfen.... Gruß Daniel
Christopher schrieb: > (Der ist eigentlich für das Conrad GPS-Modul) Ehrlich? > Sollte der nicht High sein > und nur bei einem Impuls auf Low gehen??? Ich habe das selbe Modul und die Pulse haben Highpegel. Steht außerdem im Datasheet von Pollin. > 1. Ist das so richtig angeschlossen? Ja > 2. Kann ich mit dem Data-Ausgang direkt an den Eingang des AVR gehen? 0.6*VCC sollte der Pegel laut Atmega8-Datenblatt mindestens sein. Das sind bei 5V Betriebsspannung 3V. Mit 2.8V liegst du knapp drunter. Sollte aber trotzdem funktionieren. > 3. Kann das Modul kaputt gegangen sein als ich es falsch herum > angeschlossen hatte? Kann durchaus sein. Du könntest den Pin, an dem das Modul angeschlossen ist, pollen und je nach Pegel eine LED leuchten lassen oder nicht. So kann man wunderbar ein solches Modul testen. Achja: Die Position der Antenne ist sehr wichtig.
Danke für die Antworten. Habe den Aufbau über Nacht laufen lassen, aber bis heute immer noch keine Empfang. Danach habe ich die Antenne um 90° gedreht (liegend), nach 30 min aber immer noch kein Empfang. Ich werde dann heute mal folgendes probieren: - 3,3V Regler (mit dem Oszi mal kucken wie sauber die Spannung ist) - simples Programm in den ATmega das den Eingang pollt und den PON ca 2sek nach start von High auf Low zieht (habe ich pollen richtig verstanden, dass ich einfach in ner Endlosschleife den Eingang abfrage und dementsprechend den LED-Ausgang setze? brauche ich da eigentlich einen internen oder externen Pullup?) - wenn da nach 60 min auch nix ankommt werde ich mal ein zweites Modul ausprobieren. Die Belegung sollte dann ja so wie ich es jetzt habe ok sein. Gruß Daniel
Daniel T. schrieb: > habe ich pollen richtig > verstanden, dass ich einfach in ner Endlosschleife den Eingang abfrage > und dementsprechend den LED-Ausgang setze? Genau so ist es. > wenn da nach 60 min.... Das geht nach der fallenden Flanke an PON sofort los. Wenn du ein suberes Signal reinbekommst, dann sollte deine LED dann ungefähr so blinken wie die LED in diesem Projekt: http://www.youtube.com/watch?v=W5649MnG_Ek Wenn du ein solches blinken hast, dann ist hardwareseitig alles in Ordnung und du musst dich blos noch um die Software kümmern. Achja halte die Antenne von Störquellen fern. Diese "beschissenen" Module von Pollin sind hyperempfindlich. Also am besten 5m vom Oszi weg. > brauche ich da eigentlich > einen internen oder externen Pullup?) Sollte eigentlich auch ohne Pullup funktionieren. Ich hab bei mir keinen aktiviert. Aber wenn du auf Nummer sicher gehen willst, dann schalte doch einfach den internen hinzu.
Hallo! Es funktioniert. Das erste Modul scheint wirklich durch zu sein. Mit dem Poll-Testprogramm und dem zweiten Modul fing nach wenigen sekunden die LED an zu blinken. Danach habe ich das o.g. Programm ausprobiert, nach ein wenig Antennenausrichtung hatte ich da auch Zeit und Datum. Ich habe noch eine Library gefunden, mit der das ganze im Arduino noch einfacher geht: http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1267904090 Seltsamerweise wird hier ein Analogport (im Beispielprogramm Analog 1) benutzt. Leider ist diese Library auch ca 1kB größer als das o.g. Programm. Danke für eure (insbesonder deine, Skript Kiddy) Hilfe!!! Gruß Daniel P.S.: Bei mir muss der PON nicht von VDD auf GND geswitched werden. Funktioniert auch wenn ich den von vornerein auf GND lege. Und ich brauche keinen internen Pullup (bei keinem der Skripte).
Daniel T. schreibt: > P.S.: Bei mir muss der PON nicht von VDD auf GND geswitched werden. > Funktioniert auch wenn ich den von vornerein auf GND lege. Ich habe letzte Woche auch ein DCF-Modul von Pollin bekommen, bei dem ich PON fest mit GND verbunden habe. Das Modul läuft damit einwandfrei. Eine High-Low-Flanke an PON zum Einschalten braucht man bei den aktuellen Modulen offenbar nicht mehr, auch wenn das Datenblatt etwas anderes behauptet. > Und ich brauche keinen internen Pullup (bei keinem der Skripte). Den Pullup sollte man sowieso nicht einschalten, denn das Modul kann am Datenausgang sowohl nach VDD und nach GND aussteuern, allerdings nur mit Iout > 5 µA. Im Datenblatt des ATmega8 werden 20 kOhm als Mindestwert für den Pullup genannt. Im schlimmsten Falle hat man also nur 5 µA * 20 kOhm = 100 mV Spannungsabfall über dem Pullup, also nur VDD - 0,1 V am ATmega-Eingang, wenn das Modul seinen Datenausgang nach Low zieht. Am ATmega-Eingang ergäbe sich also fälschlicherweise High-Pegel, obwohl das DCF-Modul Low ausgibt. Christian.
Stimmt PON auf GND Modul läuft zwar mit etwas Verzögerung an, aber ohne Probleme, mit H-L an PON, läuft es sofort an, ansonsten Problemlose Synchroniesierung, innerhalb von 2 min
Ich finde die Sache mit dem PON-Pin bei weitem nicht so kritisch, wie vielmehr die Tatsache, dass das Modul SEHR empfangsschwach ist! Ich habe mir vor einigen Wochen zwei Module bestellt und bekomme nur dann ein halbwegs sauberes DCF-Signal, wenn die Antenne weitgehend horizontal und quer zu Frankfurt liegt. Sobald ich sie mehr als 45 Grad neige oder die Spitze des Ferrit-Stabes mehr als 45 Grad in Richtung Frankfurt drehe, wird das Signal sofort unbrauchbar. Um es halbwegs zuverlässig in einem etwas größeren Ausrichtungsbereich empfangen zu können, sind im Microcontroller zudem Filtermechanismen nötig. Für den Einbau in ein nicht stationäres (bewegliches) Gerät ist das völlig inakzeptabel. Ich bin in Hannover, also nicht so extrem weit von Frankfurt weg und habe sonst hervorragenden DCF-Empfang. Mit dem Conrad-Modul kann ich in jeder Lage problemlos und sauber empfangen, sogar hinter meinem Computergehäuse - und völlig egal, wie die Antenne liegt. Außerdem gibt es immer ein absolut sauberes Signal, ohne Störungen oder Sägezähne. Filter sind da völlig überflüssig. Hinzu kommt, dass es in einem weiten Spannungsbereich von 1,2 bis 15 Volt arbeitet, also ohne Anpassung direkt in jeder Schaltung betrieben werden kann. Das Conrad-Modul kostet zwar etwa das doppelte vom Pollin-Modul, aber dieser Mehrpreis ist wegen der erheblich höheren Qualität mehr als angemessen! Also ich werde nur noch das Conrad-Modul verbauen. Die Preisersparnis beim Pollin-Modul kann die Nachteile absolut nicht aufwiegen. Es sei denn, man wohnt in Mainflingen ;-). Gruß, Volker
Zu den hier zu besichtigenden Signalflanken: Beitrag "Re: DCF77-Modul von Pollin" Ich habe meine Pollin-Module Anfang 2011 gekauft und sehe auch bei schwer gestörtem DCF77-Empfang nur saubere Rechtecke mit Anstiegs- und Abfallzeiten von 200 ns. Von Sägezähnen, oder "Prellern" keine Spur. Offensichtlich wurden die Module überarbeitet.
Uhu Uhuhu schrieb: > Zu den hier zu besichtigenden Signalflanken: > Beitrag "Re: DCF77-Modul von Pollin" > > Ich habe meine Pollin-Module Anfang 2011 gekauft und sehe auch bei > schwer gestörtem DCF77-Empfang nur saubere Rechtecke mit Anstiegs- und > Abfallzeiten von 200 ns. Von Sägezähnen, oder "Prellern" keine Spur. > > Offensichtlich wurden die Module überarbeitet. Hast du dazu auch ein aktuelles Datenblatt denn das auf der Pollinseite kann man wohl nicht mehr downloaden, vllt liegts auch an mir.
P. S. schrieb: > Hast du dazu auch ein aktuelles Datenblatt denn das auf der Pollinseite > kann man wohl nicht mehr downloaden, vllt liegts auch an mir. Sowohl als auch.
Uhu Uhuhu schrieb: > Zu den hier zu besichtigenden Signalflanken: > Beitrag "Re: DCF77-Modul von Pollin" > > Ich habe meine Pollin-Module Anfang 2011 gekauft und sehe auch bei > schwer gestörtem DCF77-Empfang nur saubere Rechtecke mit Anstiegs- und > Abfallzeiten von 200 ns. Von Sägezähnen, oder "Prellern" keine Spur. > > Offensichtlich wurden die Module überarbeitet. Das glaube ich nicht! Ich habe meine Module im März 2011 gekauft und die selben Probleme. Selbst bei relativ gutem Empfang immer wieder "Preller". Zumindest sieht es im Oszilloskop so aus wie Preller. Es ist sehr schwer, ein halbwegs sauberes Signal hinzubekommen. Da muss man einen Transistor nachschalten und digitale Filterroutinen im MC bemühen. Und selbst dann ist es eine Sisyphusarbeit, die Antenne so auszurichten, dass man ein brauchbares DCF-Signal empfängt. Ich bastele an der Sache nun schon seit März immer wieder mal rum und habe bisher keine wirklich brauchbare Lösung gefunden, weshalb ich wieder zu dem doppelt so teuren, dafür aber ganz erheblich besseren Conrad-Modul zurück bin. Ich bin der Auffassung, dass das Modul (wie schon geschrieben) einfach extrem empfangsschwach ist. Je näher man an Mainflingen wohnt, desto unproblematischer wird es. Aber in Hannover (wo ich z.B. bin) ist es schon kaum noch brauchbar. Selbst wenn man rundum freie Sicht zum Horizont hat. Gruß, Volker
Anbei übrigens mal die Schaltung, die ich persönlich nach zahlreichen Versuchen als die beste identifiziert habe. Diese liefert bei mir das sauberste und zuverlässigste Ausgangssignal. Sie lehnt sich bei der Spannungsversorgung an die Schaltung von Holger H. (onifred) an. Allerdings ziehe ich den DCF-Pin am Microcontroller über einen Transistor auf low. Das bedeutet, dass der Pullup-Widerstand für den betreffenden Eingangs-Pin am Microcontroller aktiviert werden muss(!) und dass das Signal invertiert eingeht. Aber die Invertierung ist ohnehin sinnvoll, weil das Pollin-Modul das Signal invertiert liefert und es nach der zweiten Invertierung dann wieder richtig ist (es ist dann identisch mit dem Signal des Conrad DCF-Moduls und die Software muss beim Wechsel des Moduls nicht extra angepasst werden). Gruß, Volker
Wieviel zieht denn dein AVR-Pin ohne Pullup? Die 5 µA, die der DCF-Modul bringen kann, sollten doch locker ausreichen, den Port-Pin zu treiben. Bei mir funktioniert es ohne irgendwelchen Schnickschnack. Ich habe noch nichtmal einen Extra-Filter für die Stromversorgung - die 10 µF auf dem Platinchen machen das schon - und die hängt am 3,3 V Regler auf meinem µC-Board, der den Controller versorgt.
Sicher sollte das reichen. Die Eingangspins vom AVR sollten ohne Pullups eigentlich gar keinen Strom ziehen, denn sie sind extrem hochohmig, da in CMOS Technologie ausgeführt. Das Handbuch gibt 1 µA als "Leakage Current" an. Entspricht einer Impedanz von 5 MOhm bei 5 V. Da sollte es folglich keine Probleme geben. Es funktioniert ja auch, nur sind dann die Störungen ziemlich stark. Mit dem Transistor und dem Pullup erhöhen sich die Ströme. Auch der 220k Widerstand an der Basis zieht dann 15 µA. Ich vermute, dass durch die höheren Ströme einfach die Störanfälligkeit für externes Rauschen sinkt und das der Grund für das bessere Verhalten ist. In welchem Ort betreibst du dein Modul? Wie weit weg ist das von Frankfurt / Mainflingen? Gruß, Volker
Volker schrieb: > Wie weit weg ist das von Frankfurt / Mainflingen? Etwas über 120 km, Richtung SW. > Mit dem Transistor und dem Pullup erhöhen sich die Ströme. Auch der 220k > Widerstand an der Basis zieht dann 15 µA. Ich vermute, dass durch die > höheren Ströme einfach die Störanfälligkeit für externes Rauschen sinkt > und das der Grund für das bessere Verhalten ist. Ich betreibe hier meine Testschaltung vor den TFT und hinter der Tastatur. Der DCF-Modul liegt 10 cm von meinem µC-Board entfernt und 5 cm neben der Tastatur. Der Modul ist über ein 20 cm langes Flachbandkabel (ohne Schirm) am µC-Board angeschlossen. Außerdem hängen Oszi-Probes dran - alles nicht gerade geeignet, Störungen fernzuhalten. Allerdings ist das Board mit Abblockkondensatoren gepflastert.
Meine Erfahrung ist, dass der Ausgang Belastungen so gar nicht mag. Mein Verdacht: Es ist Iout <5µA und nicht > ;-) Nachdem ich einen BS170 mit 470k (1M) am Gate als Treiber genommen habe, waren die Signale deutlich besser. Der hohe Gatewiderstand macht das Schalten etwas langsamer, evtl. stört sich dann das Modul selber weniger :-/
Uhu Uhuhu schrieb: > Volker schrieb: >> Wie weit weg ist das von Frankfurt / Mainflingen? > > Etwas über 120 km, Richtung SW. Aha, bei mir etwa 260 km Nordost. Die 140 km mehr könnten mit eine Ursache sein. > Ich betreibe hier meine Testschaltung vor den TFT und hinter der > Tastatur. Der DCF-Modul liegt 10 cm von meinem µC-Board entfernt und 5 > cm neben der Tastatur. Lustig, unter exakt den gleichen Bedingungen betreibe auch ich das Modul. :-) > Allerdings ist das Board mit Abblockkondensatoren gepflastert. Davon habe ich auch so einige verteilt. Ich habe auch sonst keine Probleme mit der Peripherie und am MC hängt so einiges frei verdrahtet dran. I2C EEPROMs, LC-Display, MAX232, digitale Temperatursensoren. Alles absolut störungsfrei. Nur das DCF-Modul zickt ohne Ende. Schließe ich eins von Conrad an, gibts Null Probleme. Außerdem habe ich festgestellt, dass die Streuung in der Produktion bei den Modulen scheinbar sehr groß ist. Wenn ich ein anderes Pollin-Modul aus der selben Lieferung anschließe, gibt es zwar auch noch Probleme, aber deutlich weniger. Irgendwie ist das alles nicht sehr Vertrauen erweckend, wenn man immer zwei Module kaufen muss, um ein halbwegs funktionierendes zu haben. Dann kann ich auch gleich das Doppelte in ein ordentliches Modul investieren. Tschö, Volker
Henrik V. schrieb: > Meine Erfahrung ist, dass der Ausgang Belastungen so gar nicht mag. > Mein Verdacht: Es ist Iout <5µA und nicht > ;-) Jaaaaa!!! Ich habe mich auch schon gewundert. Das Größer macht bei dieser Angabe irgendwie keinen Sinn! > Nachdem ich einen BS170 mit 470k (1M) am Gate als Treiber genommen habe, > waren die Signale deutlich besser. Der hohe Gatewiderstand macht das > Schalten etwas langsamer, evtl. stört sich dann das Modul selber weniger > :-/ Netter Vorschlag! Mit einem FET habe ich es noch nicht probiert. Ich werde das auch nochmal testen :)
Nach weiterem Tüfteln bin ich übrigens auf einen Algorithmus gekommen, der die Empfangseigenschaften des Pollin-Moduls um etwa das dreifache verbessert. Ohne jede zusätzliche Beschaltung. Also z.B. einfach Modul über einen 1 k Widerstand und eine 3,3 V Z-Diode an 5 V Versorgungsspannung anschießen, ohne Kondensatoren, ohne Transistor. Ausgang direkt an einen AVR-Port (mit Interrupt und ohne Pullup). Die Filterung des gestörten Eingangssignals findet dann über Software im MC statt, die eine Beprobung des DCF-Pins im 10 ms Takt über einen Timer-Interrupt durchführt und alle High-Zustände in prob_hi, sowie Low-Zustände in prob_lo speichert. Ein Zähler prob_count, der im Timer-Interrupt inkrementiert wird, zählt dabei die verstrichene Zeit. Der Algorithmus ist recht klein und geht folgendermaßen: * Beprobungsroutine des Timer-Interrupts deaktivieren (prob_count = 0) * Timer-Interrupt mit Prescaler auf 10 ms einstellen * Pin-Interrupt am DCF-Pin aktivieren auf "rising edge", also steigende Flanke - Beim ersten "rising edge" Pin-Interrupt die Beprobungsroutine aktivieren (prob_count = 1), den Pin-Interrupt deaktivieren, die Variable prob_hi auf 1 setzen und prob_lo auf 0. - Nun über einen Zeitraum von 60 ms im 10 ms Takt (im Timer-Interrupt) den Zustand des DCF-Pins analysieren und alle weiteren High-Zustände in der Variablen prob_hi addieren, sowie prob_count inkrementieren (ergibt 7 Proben, prob_count ist dann auf 7). - Wenn weniger als 4 von den 7 Proben High waren (prob_hi < 4) liegt kein stabiles DCF-Signal an und alles wird von vorne gestartet: prob_count = 0, Pin-Interrupt wieder aktivieren. - Waren 4 oder mehr Proben positiv, wird die Beprobung augesetzt, bis 110 ms vergangen sind. - Ab 110 ms (prob_count > 11) bis 200 ms (prob_count > 20) wird erneut beprobt: Alle Low-Zustände des DCF-Pins werden in der Variablen prob_lo addiert (ergibt 10 Proben, prob_count ist dann auf 21). - Wenn weniger als 5 Proben Low waren (prob_lo < 5), wurde vom DCF-Sender eine logische 1 gesendet und wenn 5 oder mehr Proben Low waren, wurde eine logische 0 gesendet - diese können nun verarbeitet werden. - Am Schluss wird alles von vorne gestartet: Beprobung deaktivieren (prob_count = 0) und DCF Pin-Interrupt aktivieren. Dieser Algorithmus ist erstaunlich robust, selbst bei sehr stark gestörtem Empfangssignal. Ich konnte damit den Winkel, in dem die Antenne guten Empfang liefert, von 10-20 Grad mit einem Standard-Algorithmus (z.B. dem von Ulrich Radig) auf 40-80 Grad vergrößern. Je nach Signalstärke, die ja auch von den atmosphärischen Bedingungen abhängig ist. Die Dauer für die Decodierung einer korrekten DCF-Zeit ist dadurch signifikant gesunken. Die Wirkung dieses Algorithmus ist erheblich stärker, als die Wirkung aller hier vorgestellten Lösungen durch externe Beschaltung des Empfangsmoduls. Damit kommt das Pollin-Modul dann relativ nahe an das Conrad-Modul ran (das allerdings ohne solche programmtechnischen Klimmzüge schon beste Ergebnisse liefert). Wegen des Preisunterschieds kommt das Pollin-Modul nun aber doch wieder in die engere Wahl. ;-) Evtl. kann durch Änderung der Probenlogik (häufigere Beprobung, andere Bewertungskriterien) die Zuverlässigkeit noch weiter erhöht werden. Gruß, Volker
Volker schrieb: > Die Wirkung dieses > Algorithmus ist erheblich stärker, als die Wirkung aller hier > vorgestellten Lösungen durch externe Beschaltung des Empfangsmoduls. Meine Vermutung: Die Beschaltung ist Snakeoil, wenn man man den Modul nicht gerade mit meterlangen Zuleitungen in nächster Nähe starker Störer betreibt. Die Sache steht und fällt mit dem Auswertealgorithmus.
Ich vermute das Modul erzeugt selber Störungen auf der Versorgungsleitung, durch den Widerstand werden diese gedämpft und der Empfang entsprechend besser. Muss mal mein Modul ans Oszi hängen um das zu prüfen. Wenn ich dich richtig verstanden habe verwirft dein Algorithmus einfach die falschen Daten, die syncronisation dauert also entsprechend länger. Besser wäre es wenn die Daten erst gar nicht verkehrt empfangen werden, deswegen würde ich selber die Filterung der Versorgungsspannung möglichst nah am Modul bevorzugen und die Aufbereitung des schwachen Ausgangssignals mittels FET, im Programm würde ich dann nur kurze Spikes filtern.
Thomas O. schrieb: > Ich vermute das Modul erzeugt selber Störungen auf der > Versorgungsleitung, durch den Widerstand werden diese gedämpft und der > Empfang entsprechend besser. Wie soll das bei einem Maximalstrom von 90 µA gehen? Doch nur wenn die Stromversorgung nichts taugt, oder?
Thomas O. schrieb: > Wenn ich dich richtig verstanden habe verwirft dein Algorithmus einfach > die falschen Daten, Das stimmt! > die syncronisation dauert also entsprechend länger. Genau das stimmt nicht. Die Synchronisation hat sich dadurch von vorher ca. 5-7 Minuten auf 2 Minuten verkürzt. Denn es werden ja nicht nur falsche Daten verworfen (kurze Spikes), sondern es wird auch versucht, vermutlich richtige Daten zu regenerieren, die aber verrauscht ankommen. Dazu werden statistische Methoden bemüht (Beprobung und nachfolgende qualitative Bewertung der Proben). Der Erfolg dabei ist beachtlich. Sogar besser, als ich vorher vermutet hatte. > Besser wäre es wenn die Daten erst gar nicht verkehrt empfangen werden, > deswegen würde ich selber die Filterung der Versorgungsspannung > möglichst nah am Modul bevorzugen und die Aufbereitung des schwachen > Ausgangssignals mittels FET, im Programm würde ich dann nur kurze Spikes > filtern. Grundsätzlich hast du Recht! Störungen vermeiden ist natürlich immer besser als Störungen ausfiltern. Die Lösung mit dem FET als "Filter" kann man ja zusätzlich anwenden, wenn man das möchte. Trotzdem bringt die Softwarelösung deutlich mehr, als diese elektronische Filterlösung allein. Die drei von mir angehängten Oszillogramme vom Pollin-Modul zeigen: 1. Ein sauberes DCF-Signal, wie ich es sehr selten empfange 2. Ein besonders stark gestörtes Signal, wie es sehr oft vorkommt 3. Vergrößerte Störung und teilweise ausgefallene Impulse Mein Algorithmus ist in der Lage, auch noch das Signal aus Oszillogramm 2 korrekt auszuwerten. Hier bestehen die DCF-Impulse nur aus einer Ansammlung von vielen, direkt aufeinander folgenden Spikes. Eine reine Filterung von Spikes ohne Beprobung würde da nichts mehr rausholen, wenn das Signal so schlecht ist. Ausgefallene Impulse, wie in Oszillogramm 3, sind natürlich durch nichts zu regenerieren ;-).
Volker U. schrieb: > Es werden ja nicht nur falsche Daten verworfen (kurze Spikes), > sondern es wird auch versucht, vermutlich richtige Daten zu > regenerieren, die aber verrauscht ankommen. Dazu werden statistische > Methoden bemüht (Beprobung und nachfolgende qualitative Bewertung der > Proben). Kann man mit einer einfachen Tiefpassfilterung (also praktisch Kondensator parallel am Ausgang) nicht genau das gleiche erreichen? Gruss Harald
achso habe nicht gesehen das du versucht die Impulse zu regenerieren, dachte du verwirfst Sie einfach und wartest auf die nächsten. (Das nenn ich mal Bildformat und -Größe, weiter so)
Harald Wilhelms schrieb: > Kann man mit einer einfachen Tiefpassfilterung (also praktisch > Kondensator parallel am Ausgang) nicht genau das gleiche erreichen? Jupps, das war auch mein allererster Gedanke und Versuch! :-) Aber aus bislang ungeklärten Gründen ist so ein Versuch zum Scheitern verurteilt, wie auch andere Teilnehmer dieses Threads schon geschrieben haben. Wählt man den Kondensator zu klein (22 pF oder so), ist die Wirkung gleich Null. Wählt man ihn größer (10 nF), kommt aus dem Ausgang gar nix mehr raus. Mein Vorrat an Kondensatoren zwischen 22 pF und 10 nF ist sehr begrenzt - ich brauche sowas selten. ;-) Daher kann ich nicht sagen, was mit dem Signal passiert, wenn man die Kapazität sukzessive erhöht. Das könnte man nochmal ausprobieren. Vielleicht mit einem Drehkondensator. Aber ich hege den Verdacht, dass "größere" Kapazitäten am Ausgäng parasitäre Effekte zusammen mit der Endstufe im DCF-Modul entwickeln und daher ihre Funktion beeinträchtigen. :-(
So, hier die Ergebnisse meiner weiteren Untersuchungen: 1. Der Grund, warum das Beschalten des Ausgangs mit einem Kondensator (ca. 10 nF) das Signal kaputt macht, liegt schlichtweg daran, dass der Kondensator die Ausgangsspannung absenkt. Und zwar bei einer Versorgung des Moduls mit 3 Volt auf ca. 2,7-2,8 Volt. Da die Spannung ohnehin schon an der zulässigen Grenze des MC liegt, reicht sie dann nicht mehr aus, um den AVR-Port zu triggern. Deshalb sagt der MC auch nix mehr. Ein Vorwiderstand vor dem Kondensator löst das Problem zwar, aber dann ist auch die Wirkung des Kondensators futsch. An den Ausgang ist ein direkter Kondensator-Anschluss wegen der geringen Spannung des Moduls also nicht möglich. 2. Eine sehr schöne Wirkung als Tiefpass hat tatsächlich ein FET oder auch ein ganz normaler Schalttransistor (z.B. BC547), wie aus dem ersten Oszillogramm in der angehängten Grafik erkennbar ist. Unten sieht man in gelb das Original-Signal, wie es aus dem DCF-Modul kommt und oben in blau das invertierte Signal am Kollektor des Schalt-Transistors. Der AVR-Port wurde direkt mit aktiviertem Pullup an den Kollektor angeschlossen (siehe meine entsprechende Mail mit Schaltplan weiter oben in diesem Thread). Fast alle Spikes sind weitgehend weg. Das erklärt auch, warum so viele hier gute Erfahrungen mit einem Transistor am Ausgang gemacht haben: Er wirkt als Tiefpass und verstärkt zudem noch schön das Signal auf 5 Vss. 3. Schließlich habe ich vom Kollektor des Schalttransistors noch einen 10 nF Kondensator als Filter gegen Masse gelegt (Cce). Das Ergebnis ist im zweiten Oszillogramm zu sehen. Der Kondensator am Kollektor macht die Filterwirkung des Transistors teilweise wieder zunichte, obwohl man eigentlich genau das Gegenteil erwarten würde! Eine wirklich plausible Erklärung habe ich dafür nicht, warum die obere Grenzfrequenz durch diese Beschaltung offenbar steigt. Könnte es sein, dass der Kondensator Cce das Ausräumen der Sperrschichten beschleunigt und damit den Tiefpass des Transistors abschwächt? Eigentlich kenne ich sowas nur bei Speed-Up Kondensatoren parallel zum Basis-Vorwiderstand. Schlussendlich bleibt zu sagen, dass die Wirkung eines Transistors am Ausgang etwa die selbe ist, wie die Wirkung der von mir weiter oben vorgestellten, digitalen Filterroutine. Beides zusammen anzuwenden bringt übrigens KEINE Vorteile, wie ich durch Experimente festgestellt habe. Es bringt sogar eher leichte Nachteile, da sich durch den Verstärker-Transistor die Impulslängen leicht verkürzen. Also meine Empfehlung nach langer Bastelei: AVR-Pin direkt an den DCF-Ausgang ohne irgendwelchen Schnickschnack und dann die oben vorgestellte Filterroutine im MC anwenden! Besser gehts offenbar nicht. Schönen Gruß, Volker
Ich hätte noch ein Erklärungsmodell für die unerwartete Wirkung des Kondensators Cce: Er beschleunigt ja nicht den Sperrvorgang des Transistors, sondern offenbar den Einschaltvorgang. Durch den Kondensator wird ja der mögliche Kollektorstrom beim Einschaltvorgang erhöht. Ich bin nicht mehr ganz so firm in Festkörperphysik, aber könnte es sein, dass der höhere Kollektorstrom den Durchbruch der Emitter-Kollektor-Strecke beschleunigt und daher die obere Grenzfrequenz steigt?
Und wieso betreibst du den µC mit 5V? Wenn der µC mit 5V läuft, brauchst eben einen Levelshifter - das ist dein Transistor. Wenn der µC mit derselben Spannung läuft, wie der Modul, dann kannst du dir das Theater sparen.
@Volker: stimmt, ähnliche Beobachtungen hab ich auch gemacht. Mit irgendwelchen HW-Filtern am DATA-Pin hab ich keine guten erfahrungen gemacht. Vor allem kapazitive belastung sind ja bekanntlich bei dem Modul ein Problem. Bei mir übernimmt der Controller die Filterungen. Hier hab ich die Theorie zugrunde gelegt, daß die jeweiligen Impulse als Spike-Pakete vorliegen. Ob ich jetzt ein sauberes Signal oder so ein gestörtes habe - auf jeden Fall kommt das gleiche dabei heraus. Ich wohne ganz weit im Norden von Schleswig-Holstein. Ich hab hier beide Versionen der Pollin-Module am laufen, und beide funktionieren. Meiner Meinung nach sollte an softwareseitigen Filterroutinen auf keinen Fall gespart werden. Die kosten nichts, machen aber die Synchronisation zuverlässiger und robuster. Und dann ist es auch egal, welches Modul verwendet wird.
Joachim schrieb: > Meiner Meinung nach sollte an softwareseitigen Filterroutinen auf keinen > Fall gespart werden. Denke ich auch. Alles Hardwaregefummel - außer levelshifting, falls nötig - macht nichts besser. Die Kollegen, die mit den P.-Modulen Schwierigkeiten haben, bekommen wohl überwiegend ihre Software nicht in den Griff. Der aufwendiger konstrierte C.-Modul konfrontiert sie seltener mit Problemen, an denen das Programm scheitert.
Uhu Uhuhu schrieb: > Und wieso betreibst du den µC mit 5V? Weil ich z.B. TTL-kompatible Peripherie dran habe, die 5 Volt benötigt. Und bei 20 MHz Taktfrequenz ist für den MC auch 4,5 Volt Pflicht. > Wenn der µC mit 5V läuft, brauchst eben einen Levelshifter - das ist > dein Transistor. Normalerweise ist das nicht nötig, weil die vom DCF-Modul bei einer Versorgungsspannung von 3 Volt zur Verfügung gestellte Ausgangsspannung gerade noch direkt für die Logikpegel des MC ausreicht. > Wenn der µC mit derselben Spannung läuft, wie der Modul, dann kannst du > dir das Theater sparen. Ja, das ist mir auch schon klar. :)
0,6VCC=3V also genau an der Grenze zur Schaltschwelle, ich würde da mit Transistor arbeiten.
Volker schrieb: > Normalerweise ist das nicht nötig, weil die vom DCF-Modul bei einer > Versorgungsspannung von 3 Volt zur Verfügung gestellte Ausgangsspannung > gerade noch direkt für die Logikpegel des MC ausreicht. Abgesehen davon, das "gerade noch" schlechte Betriebsbedingungen für einen störungsfreien Betrieb sind, sollte das nur zu Problemen führen, wenn auf der digitalen Leitung Störungen einkoppeln. Hier ist das Kind jedoch schon in den Brunnen gefallen, da die Störungen von der Analogseite stammen und mit vollem Logikpegel Bestandteil des digitalen Signals sind. Die einen nennen es SDR, die anderen nennen es Flickschusterei, das gestörte Analogsignal mit hoher Bandbreite per irgendetwas Delta-Modulation-Artigem in ein Digitalsignal umzuwandeln, dass dann im µC durch ein digitales TP-Filter geschickt werden muß, nur um das im Frontent vor der Schwellwerterkennung fehlende TP-Filter nachzurüsten.
Thomas O. schrieb: > 0,6VCC=3V also genau an der Grenze zur Schaltschwelle, ich würde da mit > Transistor arbeiten. Oder eine Z-Diode nehmen, die das Modul mit 3,3-3,5 Volt versorgt. Spart Platz und Geld. ;) Der MC kommt etwa noch mit 2,9 V Logikpegel klar. Bei 2,8 ist Sense.
Michael A. schrieb: > Die einen nennen es SDR, die anderen nennen es > Flickschusterei, das gestörte Analogsignal [..] in ein Digitalsignal > umzuwandeln, dass dann im µC durch ein digitales TP-Filter geschickt > werden muß, nur um das im Frontent vor der Schwellwerterkennung fehlende > TP-Filter nachzurüsten. Ja, dann bau mal ein preiswertes TP-Filter für das Modul! Wenn ich mit einem Software-TP ein besseres Ergebnis erziele, als mit dem Hardware-TP (der einzig preiswerte TP war hier der Transistor), dann ist das für mich keine Flickschusterei, den Software-TP zu nehmen. Ob ich nun mit Hardware oder per Software filtere, ist für mich kein Unterschied. Das ist eine Glaubensfrage. Im übrigen habe ich den Übeltäter jetzt ausgemacht, der die HF eingestreut hat. Es war ein altes Notebook, das etwa 10 cm entfernt vom Modul stand. Nachdem ich das Modul an einer anderen Stelle (noch 10 cm weiter weg) aufgebaut habe, sind die Störungen vollkommen verschwunden. Jetzt empfängt die Antenne sogar in nehazu jeder Lage. Womit das Pollin-Modul noch etwas mehr rehabilitiert wäre. Die Filter sind damit auch eigentlich überflüssig geworden. Aber der positive Effekt ist m.E., dass die zufällig stark gestörte Umgebung zu einer Filter-Idee geführt hat, die dem Modul nun auch einen Betrieb unter sehr ungünstigen Bedingungen ermöglicht.
Vielleicht gibt es verschiedene Versionen des Pollin-DCF77-Empfängers. Dieses Modul habe ich gerade erworben. Die beschriebene PON-Problematik tritt hier nicht auf. PON ist fest auf Masse gelegt und das Teil sendet sofort nach dem Einschalten die Daten. Laut Datenblatt ist die max. Betriebsspannung 3,3V. Für den Anschluss an einen mit 5V betriebenen Mikrocontroller muss also eine Pegelanpassung per Transistor gemacht werden. Dazu gibt es ja ein paar Beiträge. Hier wird einfach ein Transistor in Emitterschaltung verwendet (4k7 zur Basis, 4k7 vom Kollektor zu +5V); das Signal wird dadurch natürlich invertiert. Mir fällt auf, dass das Ausgangssignal während der Pegelabsenkung des DCF77-Signals -die ja je nach Länge Auskunft über 0 oder 1 gibt- keinen stabilen Zustand hat, sondern mit einer Frequenz von knapp 2kHz zwischen 0 und 1 hin- und herspringt. Möglicherweise rühren die beschriebenen Probleme daher. Pollin schreibt im mitgelieferten Datenblatt -vielsagend- "Sollte es bei der Auswertung des DATA-Signals zu Fehlern kommen, muss das Signal entstört werden". Danke!
DL9MWE schrieb: > Vielleicht gibt es verschiedene Versionen des Pollin-DCF77-Empfängers. Ja, gibt es. Die ältere Version kann noch mit 5 V betrieben werden. Aber die gibt es schon seit gut einem Jahr nicht mehr. > Dieses Modul habe ich gerade erworben. Die beschriebene PON-Problematik > tritt hier nicht auf. PON ist fest auf Masse gelegt und das Teil sendet > sofort nach dem Einschalten die Daten. Naja, sofort? Also bei mir dauert es zwischen 10 Sekunden und 2-3 Minuten. Auch bei den neueren Modulen. > Laut Datenblatt ist die max. Betriebsspannung 3,3V. Für den Anschluss an > einen mit 5V betriebenen Mikrocontroller muss also eine Pegelanpassung > per Transistor gemacht werden. Aller Erfahrung nach muss man diesen Aufwand gar nicht treiben. Da das Modul einen extrem geringen Stromverbrauch hat, reicht zur Stromversorgung ein 1k Widerstand in Reihe mit einer 3,6V Z-Diode. Da kommt man dann auf rund 3,0-3,2V Versorgungs- und Ausgangsspannung. Das geht dann direkt an den Controller-Eingang. Eine andere Stromversorgung verbessert die Empfangsqualität unwesentlich. Das Ausgangssignal durch einen Schalttransistor zu leiten verringert lediglich geringfügig die Störanfälligkeit, die bei dem Modul etwas höher ist, als bei anderen, teureren Modulen. Der Transistor wirkt dann als Tiefpass. Ich bevorzuge aber eine digitale Filterung, wie ich sie hier im Thread weiter oben beschrieben habe. Diese ist erheblich wirksamer, als jede Hardware-Filterung (Transistor etc.). > Mir fällt auf, dass das Ausgangssignal während der Pegelabsenkung des > DCF77-Signals -die ja je nach Länge Auskunft über 0 oder 1 gibt- keinen > stabilen Zustand hat, sondern mit einer Frequenz von knapp 2kHz zwischen > 0 und 1 hin- und herspringt. Das ist genau die Störanfälligkeit, von der ich berichtet habe. Da ist entweder das Empfangssignal etwas zu schwach oder es wird HF von irgendwo eingestreut. Bei mir war ein altes Notebook in 20 cm Entfernung die Störquelle. Man kriegt das aber alles mit der weiter oben beschriebenen, digitalen Filterung im Controller weg. Dann ist das Modul genauso zuverlässig, wie teurere Module z.B. von Conrad, die ich jedoch immer vorziehen würde, wenn es auf hohe Betriebssicherheit bei schwachem Eingangssignal ankommt. Für Feld-Wald-Wiesen Anwendungen ist das preiswerte Pollin-Modul super! Gruß, Volker
Hallo Volker, vielen Dank für deine Antwort! Mit der Pegelanpassung meinte ich nicht die Stromversorgung, sondern die Anpassung des Datenausgangs an den "TTL-kompatiblen" Eingang des Atmel-Controllers. Die Stromversorgung mache ich über einen LT1086. Ja ja, ich weiß: mit Kanonen auf Spatzen schießen, aber es ist ja ein Einzelstück, da kommt es auf ein paar Cent nicht an... Und als Tiefpassfilter kann ein einfacher Transistor, der lediglich zur Pegelanpassung (3,3V->5V) dient, eh nicht wirken. So ein BC549 ist weit schneller als die Impulse, die er weiterreichen soll. Btw: mir erzählte jemand, dass Atmel künftig nur noch 3,3V-Controller herstellen würde. Die 5V-Typen würden nur noch "abverkauft" und nicht mehr produziert...Sch...hausparole oder Tatsache??? Ich bin mir sicher, dass das hier vorliegende Pollin-Modul in jedem Fall bei der Pegelabsenkung nur Impulse (ca. 1,7kHz) liefert. Unabhängig von der Empfangslage. Es kann natürlich sein, dass ich hier (Standort Hannover -inhouse) keinen wirklich guten Empfang habe, obwohl ich das Modul (also die Ferrit-Antenne) weit abseits aller möglichen Störquellen so gut wie möglich positioniert habe. Wie dem auch sei: ich habe aus der Not eine Tugend gemacht und die Ulrich Radig-Software so modifiziert, dass einfach die Anzahl der Impulse gezählt wird. Sind es weniger als 240, so wurde eine Null übertragen sonst eine Eins. Damit läuft die Uhr absolut stabil. Ich habe mir den Spaß gemacht und die Zählwerte ausgegeben (und auch die RS232-Schnittstelle auf 28800 Baud gesetzt, was problemlos geht). Bei einer Null sind es gut 150 Pulse; eine 1 liefert etwa 330 Pulse. Das schwankt jeweils ein wenig. Deine Einschätzung, dass die Empfindlichkeit des Empfängers besser sein könnte, ist völlig richtig. Lege ich die Ferritantenne auf eine Metallplatte (sprich das Gehäuse des Netzgerätes), bricht die Übertragung zusammen. Bei 3cm Abstand liegen wieder saubere Impulse an. Gruß und Dank, Matthias
Hi, gut dass dieser Thread noch lebt. Habe mir auch vor längerem 2x das 3V-DCF1-Modul von Pollin zum spielen gekauft. Inbetriebnahme kein Problem, Signal ist schnell da und ich kann auch die wechselnden Pulslängen 100ms/200ms erkennen. Problem: Es ist kein Rechteckpuls, sondern der Puls fällt nach der aufsteigenden Flanke offensichtlich nach einer e-Funktion und die fallende Flange pulst ins Negative und eiert dann gegen 0 (siehe Anhang Oszi.PNG). Das Verhalten ist bei beiden Modulen gleich. Irgendwo hier im Thread hat jemand Bilder von Rechteck gezeigt wie ich es erwartet hätte. Woher könnte das Signal stammen?
Dann ist irgendwo ein C dazwischen, denn danach sieht es aus. Miss mal mit deinem Scope eine Gleichspannung. Vermutlich wird das trotz DC-Coupling nicht gehen.
Klaus 2m5 schrieb: > Dann ist irgendwo ein C dazwischen, denn danach sieht es aus. Miss mal > mit deinem Scope eine Gleichspannung. Vermutlich wird das trotz > DC-Coupling nicht gehen. Hurra, das wars. Bei der Messung einer Gleichspannung gings auch bergab. Muss irgendwas am Oszi verfummelt haben. Jetzt sieht das Signal so aus wie es soll. Besten Dank für die Antworten.
Es muss ja auch nicht das coupling des trigggersignals auf dc gestellt werden, sondern das des eingangssignals. ;-) das wird es sicher gewesen sein.
Hi Matthias! DL9MWE schrieb: > Mit der Pegelanpassung meinte ich nicht die Stromversorgung, sondern die > Anpassung des Datenausgangs an den "TTL-kompatiblen" Eingang des > Atmel-Controllers. Ich weiß, aber ich habe ja auch über beides geschrieben. Da der Ausgangspegel des DCF-Moduls bei Versorgung mit 3,3V mindestens 3V beträgt (eher darüber), ist eine Pegelanpassung eigentlich nicht nötig. Laut Spezifikation kommen die meisten AVR-Controller bei 2,4-5,5V Versorgungsspannung mit 3V Eingangssignal klar (0,6 * Vcc). Bei 5V Versorgung kommt er nach meinen Tests sogar noch mit 2,8V klar. Ich betreibe alle Pollin-Module ohne Anpassung direkt am Controller und es gibt keine Probleme dabei. > Und als Tiefpassfilter kann ein einfacher Transistor, der lediglich zur > Pegelanpassung (3,3V->5V) dient, eh nicht wirken. So ein BC549 ist weit > schneller als die Impulse, die er weiterreichen soll. Das dachte ich mir zuerst auch. Die Messungen ergeben aber, dass ein Schalttransistor zusammen mit der Ausgangsstufe des Moduls einen recht effektiven Tiefpass bildet. Ein FET bildet sogar einen noch effektiveren Tiefpass. Siehe dazu die Diskussionen weiter oben. > Btw: mir erzählte jemand, dass Atmel künftig nur noch 3,3V-Controller > herstellen würde. Die 5V-Typen würden nur noch "abverkauft" und nicht > mehr produziert...Sch...hausparole oder Tatsache??? Ich habe das noch nie irgendwo gelesen. Außer als Vermutung. Ich halte es für ein Märchen. Im Gegenteil, die neuen Microcontroller für den Automotive-Bereich haben sogar bis zu 40V Versorgungsspannung. Macht auch Sinn, wenn sie in Kfz eingesetzt werden. Alle neueren Controller, die in den letzten Jahren erschienen (z.B. ATtiny87/167), sind nach wie vor 5,5V fähig. Auch die Pico-Power Versionen sind es, obwohl sie runter bis auf 1,8V versorgt werden können. Es geht dabei ja i.d.R. nur um Energieeinsparung. Atmel erreicht dies offenbar bei seiner Technologie auch ohne Einschränkungen bei der oberen Versorgungsspannungsgrenze. Zudem gibt es viel zu viel Peripherie, die 5V benötigt, ob nun EEPROMs, LC-Displays oder I²C Peripherie. Da wäre es geradezu töricht, 3,3V als Obergrenze festzusetzen. > Ich bin mir sicher, dass das hier vorliegende Pollin-Modul in jedem Fall > bei der Pegelabsenkung nur Impulse (ca. 1,7kHz) liefert. Unabhängig von > der Empfangslage. Es kann natürlich sein, dass ich hier (Standort > Hannover -inhouse) keinen wirklich guten Empfang habe, obwohl ich das > Modul (also die Ferrit-Antenne) weit abseits aller möglichen Störquellen > so gut wie möglich positioniert habe. Hmmm! Also ich bin auch in Hannover und habe festgestellt, dass die Empfangsbedigungen hier höchst unterschiedlich sind. An manchen Stellen ist der Empfang auch fast gar nicht vorhanden. Wände (vor allem, wenn es mehrere sind) wirken sehr stark abschirmend auf die niederfrequenten DCF-Signale. Was in jedem Fall gute Ergebnisse bringt ist, das Modul möglichst nah ans Fenster zu legen. Regelmäßige Impulse sollten auf keinen Fall erscheinen. Das bedeutet ja, dass die Endstufe schwingt! Also ich würde (zum Testen!) mal meinen Vorschlag prüfen: Als Versorgung einen 1k-Widerstand in Reihe mit einer 3,6V Z-Diode an 5V und den Ausgang des Moduls direkt an den Controller. Ich glaube nicht, dass dann noch Schwingungen auftreten. > Wie dem auch sei: ich habe aus der Not eine Tugend gemacht und die > Ulrich Radig-Software so modifiziert, dass einfach die Anzahl der > Impulse gezählt wird. Sind es weniger als 240, so wurde eine Null > übertragen sonst eine Eins. Damit läuft die Uhr absolut stabil. Grins. Bei dir funktioniert die Lösung zur Zeit vielleicht. Aber wenn du die Schaltung mal woanders hin transportierst, wird sie mit hoher Wahrscheinlichmeit nicht mehr funktionieren, fürchte ich ;-). Welchen Mikrocontroller benutzt du denn und mit welcher Frequenz taktest du ihn? Gruß, Volker
Volker U. schrieb: > Hmmm! Also ich bin auch in Hannover und habe festgestellt, dass die > Empfangsbedigungen hier höchst unterschiedlich sind. Hmm, die PTB in Braunschweig hat jedenfalls keine Probleme mit dem Empfang. :-) Empfangsstörungen gibts meist nur, wenn irgendwelche Störquellen in der Nähe sind, z.B. Röhrenmonitore/fernseher. Gruss Harald
Harald Wilhelms schrieb: > Hmm, die PTB in Braunschweig hat jedenfalls keine Probleme mit dem > Empfang. :-) Ich habe das Gegenteil gelesen. Schon in Braunschweig soll es hin und wieder Probleme aufgrund der durch Interferenzen zwischen dem Bodensignal und dem an der Ionosphäre reflektierten Signal verursachten Schwebungen geben. Eigentlich soll das Problem eher im Bereich von 600-1000 km Entfernung auftreten, aber auch hier tritt es hin und wieder schon auf. Das hängt sicher stark von den momentanen atmosphärischen Verhältnissen ab. Dennoch denke ich, dass das nicht das eigentliche Problem ist, denn es sind ja keine Schwebungen (die übrigens nur mit einer Periode von ca. 15 Minuten auftreten), sondern grundsätzliche Ausfälle. > Empfangsstörungen gibts meist nur, wenn irgendwelche Störquellen > in der Nähe sind, z.B. Röhrenmonitore/fernseher. Das ist ein Grund für Empfangsstörungen, aber ein schwaches Signal innerhalb von Gebäuden ist keineswegs ungewöhnlich. Ich habe es hier im Raum Hannover nun an verschiedensten Orten getestet und es gibt im selben Gebäude manchmal Räume (sogar im Erdgeschoss), wo ein starkes Signal ankommt und andere Räume (auch in der 2. Etage), wo fast gar nichts ankommt. Ohne dass nun mehr oder weniger Störquellen vorhanden wären! Das Signal scheint sehr leicht an Gebäuden reflektiert oder gestreut zu werden und dann kommt es zu Auslöschungen, die sich aufgrund der großen Wellenlänge über viele Meter erstrecken.
Hallo zusammen. ich habe auch das Pollin Modul und mit diesem Modding funktioniert dieses bei mir einwadfrei. Die 3,3 Volt Betriebsspannung wird einfach mit 3 Dioden einem R und 2 C´s erzeugt. Auch sehr schön die LED Anzeige (Daten) mit dem "Rest" vom Schmitt- Trigger realisiert... http://www.amateurfunkbasteln.de/dcf77/index.html Grüße, Stefan
Volker U. schrieb: > es für ein Märchen. Im Gegenteil, die neuen Microcontroller für den > Automotive-Bereich haben sogar bis zu 40V Versorgungsspannung. Drinnen und an den normalen I/O-Signalen? Link bitte! Oder haben die einen Regler drinnen, der interne 1,8-3,3V draus macht, wie man das heute oft findet.
Hi Stefan, sehr interessante Idee mit dem Schmitt-Trigger! Den alten 4093 setze ich aber eher nicht ein, meist 74HC132 bzw. 74HCT132. Da die Triggerlevel dort deutlich anders sind, bin ich nicht sicher, ob es damit auch funktioniert. Evtl. ist ein Spannungsteiler nötig. Ich werde damit mal etwas experimentieren. Es steht grade wieder ein neues Gerät mit Pollin DCF-Modul zum Bau an ;). Gruß, Volker
A. K. schrieb: >> es für ein Märchen. Im Gegenteil, die neuen Microcontroller für den >> Automotive-Bereich haben sogar bis zu 40V Versorgungsspannung. > > Drinnen und an den normalen I/O-Signalen? Link bitte! Ich sprach von Versorgungsspannung! Die Logiklevel liegen bei den üblichen maximal 5,5 Volt. Nur am LIN-Bus sind höhere Spannungen erlaubt. http://www.atmel.com/devices/ata6617.aspx?tab=documents Gruß, Volker
Guten Abend Allerseits. Ich habe die 3.3 Volt die das Pollin DCF 77 Modul braucht mit einem AS2810AT erzeugt. 5 Volt rein und 3.3 Volt raus. Den AS2810AT habe ich aus einem alten CD Brenner. Ich kann nicht negatives über die Pollin DCF Module sagen - laufen bei mir prima. Ein kleines Schaltbild vom AT2810AT habe ich beigefügt. Stefan
Hallo, bitte nicht schlagen - ich bin Laie. Ganz einfache und grundsätzliche Frage: Das Pollin DCF Modul mit high-aktiv Ausgang soll bei mir an einer Hauptuhr arbeiten, die low-aktiv braucht. Habe ich da überhaupt eine Chance? Danke Stefan
Stefan schrieb: > Hallo, > > bitte nicht schlagen - ich bin Laie. Ganz einfache und grundsätzliche > Frage: Das Pollin DCF Modul mit high-aktiv Ausgang soll bei mir an einer > Hauptuhr arbeiten, die low-aktiv braucht. Habe ich da überhaupt eine > Chance? > > Danke > > Stefan Ja, brauchst doch nur einen Inverter dazwischen zu schalten.
Hallo Stefan, von mir wirst du nicht geschlagen. Zu deiner Sache: Die Pegelumkehr ist die einfachste Sache der Welt. Du brauchst einen Inverter. Ich bin nicht gut mit Malen, darum eine einfache Erklärung, die auch du verstehen kannst. Das DCF77-Modul kann ja nur µAs am Ausgang; darum: Ein N MOS-Fet (z.B. BS170 o.ä.), Gate an den Ausgang des DCF77; Source an Masse, von Drain 1kOhm an +Ub, fertig ist die Laube. Am Drain hast du das invertierte Signal. Das Pollin-Modul läuft ja auf 3,3V ,aber wenn du +Ub auf 5V hast, ergibt der Anschluss des Widerstands an +5V Ub 5V TTL Pegel. Ich hoffe, das war verständlich genug. Viel Spass beim Basteln. 73 Wilhelm
Vielen Dank, Wilhelm. Ich habe das soweit verstanden bis auf die Spannungsversorgung: Da meine Spannungsquelle 15,5VDC ist, habe ich das Modul über 10kOhm parallel zu einer weißen LED angeschlossen; Ergebnis 2,6VDC. Ändert sich dadurch der Wert des Widerstands des Inverters? Ich habe keine Angabe darüber, welche Signalspannung (Pegelstärke) die Hauptuhr benötigt. Stefan
@ Stefan Du solltest schon zusehen, daß du vernünftige Betriebsspannungen bereitstellst! Mit der weissen LED war das ja einfach, aber das DCF-Modul soll ja 3.3V Ub erhalten. Das erreicht du in diesem Fall, indem du zu der LED eine 1N4148 o.ä. in Durchflussrichtung! in Serie legst. Dann bist du in etwa bei 3.3V. Das Modul soll ja ab 1.5V Ub laufen aber dann bekommst du am Gate nicht genug Pegel, um den FET zu schalten. Mit einer 3.3V Z-Diode ginge das ja auch; die Ströme spielen ja keine Rolle, weil das Modul ja nur µAs braucht. Wie kommst du an die +15V? Schmiede einen 78(L)05 mit der entsprechenden Beschaltung dahinter, damit du eine vernünftige und verlässliche Betriebsspannung hast. Den Pegelbedarf deiner Hauptuhr kenne ich auch nicht, aber ich denke, daß 5V TTL Pegel schon mal kein schlechter Anfang ist. 73 Wilhelm
Meine Empfehlung: 74HC132 oder 74HCT132. Der Chip kostet ein paar Cent und hat sogar 4 NAND Schmitt Trigger (= Inverter). Drei bleiben dann ungenutzt übrig. Die Lösung hat außerdem noch den Vorteil, dass die Ausgangssignale des DCF-Moduls durch den Schmitt Trigger geschärft werden. Für die 5 Volt Versorgungsspannung des IC dann einen 78L05 und für die 3,3V Versorgungsspannung dahinter einen TS1117, wenn es ganz exakt sein soll. Eine Zenerdiode mit Vorwiderstand tut es für das DCF-Modul aber genauso gut (nicht aber für den 74HC132!). Gruß, Volker
Hallo, Auch ich möchte hier mal meinen Senf dazugeben. Ich habe mir vor Jahren mal 2 Pollin DCF Module gekauft und diese ohne weitere Beschaltung direkt an den Atmega gehängt, war völlig unkompliziert und die Module lieferten ausser bei Gewitter immer zuverlässig ihre Daten. Da ich nun gerade eine Nixieuhr gebaut habe und diese natürlich auch mit DCF-Zeit laufen soll, hatte ich noch mal 5 Module nachbestellt. Zunächst mal musste ich feststellen das die beigelegte Bedienungsanleitung mit ihrem schlechten Bild irgendwie nicht zur Platine passte und die Platine auch anders aussah als meine alten... Also noch mal bei Pollin die Doku angesehen und siehe da, das war nicht das gleiche Bild. Also, neue Module wie schon mehrfach hier beschrieben aber noch die alte Beschreibung! Ja, die mit den 5V versorgungsspannung. Und diese Schei..-Dinger wollten um´s verrecken nicht laufen. Im Oszilloskopbild zwar das Signal aber wie weiter oben schon beschrieben als Bursts... bis ich dahintergekommen bin das ich die 3,3V Module erwischt hatte. Also einfach einen 1K Widerstand auf eine 3,3V Z-Diode und diese Spannung noch mit 100nF gebuffert. Am Ausgang dann 2 2N7000 Mosfets und alles läuft super. Die Spannungsversorgung kommt aus einem 12V Schaltnetzteil, daran hängt noch ein 5W Stepupwandler zur Erzeugung von 180V für die Nixieröhren. Die 5V für den Atmega liefert ein LM7805 und dieser steuert eine ganze Batterie von Schieberegistern an. Wenn ich mir die 5V Spannungsversorgung auf dem Oszi ansehe kriege ich graue Hare, da schlägt das 12V Schaltnetzteil durch, der Stepupwandler und auch die Impulse für die Schieberegister kann ich sehen. Also die denkbar schlechtesten Bedingungen um damit das Pollin DCF-Modul zu betreiben, zumal der Stepupwandler auch noch mit einer Stabdrossel bestückt ist und quasi einen Radiosender darstellt. Über dem DCF Modul leuchtet gerade eine Energiesparlampe das Modul liegt auf einem eingeschalteten Laserdrucker direkt neben dem Computer und was soll ich sagen.... LIEFERT SUPER SAUBERE SIGNALE!!! Und das in der Regel bereits 3-10 Sekunden nach dem Einschalten. PON übrigens stumpf auf Masse! Gruß, Andreas
Volker U. schrieb: > Dann wohnst du bestimmt in der Nähe von Mainflingen, oder? *lach* Nö, ich komme aus der hier schon mehrfach zur DCF benachteiligten Zone erklährten Region Hannover! ;-)
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.