Pollin DCF1 Modul per Bascom

    This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

    • Pollin DCF1 Modul per Bascom

      Hallo,

      ich habe ein Pollin DCF1 Modul zum empfangen des DCF77,5 Signals an einen AtMega48 angeschlossen.
      Aber ohne Verstärkung um den Faktor 5,7 - wollte eigendlich nur um das 3 fache verstärken nur ich fand keine passenden Widerstände -
      geht überhaupst nichts.

      Mit 5,7 facher verstärkung bekomme ich erstmals brauchbare Daten. Datum geht ohne Probleme. Nur die Uhrzeit weicht um ein paar Minuten ab von meiner festen Funkuhr im Bad.

      Woran kann dass liegen? Muss ich den ding vielleicht eine gewisse Hysterse verpassen? Das Pollin Modul hat die hälfte meiner Mega Spannung.

      Source Code

      1. '+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
      2. 'Mikrochip Konfigurieren, Chip, Frequenz, Speicher
      3. $regfile = "m48def.dat"
      4. $crystal = 1000000
      5. $hwstack = 32
      6. $swstack = 64
      7. $framesize = 24
      8. $baud = 19200
      9. 'Ende Mikrochip Konfigurieren, Chip, Frequenz, Speicher
      10. '=============================================================
      11. '+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
      12. 'Ports für Display Konfigurieren PortD, PortB.6, PortB.7
      13. Config Portb = Output 'LCD Display Datenbits
      14. 'LCD Datenbits im 8BIT Mod
      15. Config Portd.5 = Output 'LCD E
      16. 'LCD Enable
      17. Config Portd.6 = Output 'LCD Rs
      18. 'LCD Reset
      19. 'Ende Ports für Display Konfigurieren PortD, PortB.6, PortB.7
      20. '=============================================================
      21. '+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
      22. 'LCD Displayö Konfigurieren PORTD, PortB.6, PortB.7
      23. Waitms 100
      24. Config Lcdpin = Pin , Port = Portb , E = Portd.5 , Rs = Portd.6
      25. Config Lcdbus = 8 ' LCD arbeitet über 8-Bit
      26. Config Lcd = 16 * 2
      27. Initlcd
      28. 'Ende LCD Display Konfigurieren PORTD, PortB.6, PortB.7
      29. '=============================================================
      30. Config Portd.3 = Input
      31. Config Dcf77 = Pind.3 , Timer = 1 , Timer1sec = 1 , Debug = 1
      32. Enable Interrupts
      33. Config Date = Dmy , Separator = .
      34. Dim I As Integer
      35. Dim Sec_old As Byte , Dcfsec_old As Byte
      36. Sec_old = 99 : Dcfsec_old = 99 ': DCF_Debug_Timer = 0
      37. ' Testroutine für die DCF77 Clock
      38. 'Print "Test DCF77 Version 1.00"
      39. Do
      40. For I = 1 To 78
      41. Waitms 10
      42. If Sec_old <> _sec Then
      43. Exit For
      44. End If
      45. If Dcfsec_old <> Dcf_sec Then
      46. Exit For
      47. End If
      48. Next
      49. Waitms 220
      50. Sec_old = _sec
      51. Dcfsec_old = Dcf_sec
      52. Cls
      53. Locate 1 , 1
      54. Lcd Time$ ; " " ; Date$ 'Time$ ; " " ; Date$ ; " " ; Time(dcf_sec) '; " " ; Date(dcf_day) ; " " ; Bin(dcf_status) ; " " ; Bin(dcf_bits) ; " " ; Bdcf_impuls ; " " ; Bdcf_pause
      55. Locate 2 , 1
      56. Lcd Time(dcf_sec) ; " " ; Date(dcf_day)
      57. Loop
      58. End
      Display All
      Grüße & Danke!
      Alex
    • Alex_T wrote:

      Nur die Uhrzeit weicht um ein paar Minuten ab von meiner festen Funkuhr im Bad.
      Dein DCF77 AVR und deine Uhr im Bad empfangen dieselben Daten zur selben Zeit.
      Aus Stromspargründen werden besonders bei Bad-Uhren* die Empfangseinheiten abgeschaltet und vielleicht 1x täglich aktiviert, um die Uhrzeit abzugleichen.
      In der Zwischenzeit läuft die Baduhr mit dem internen Clock, der ja nicht besonders genau sein muss, wenn alle 24h sowieso die richtige Uhrzeit kommt.
      Fällt so eine Synchronisation mal weg, weil zufällig grad der Nachbar seinen neuen Fernseher eingeschaltet hat, dann macht die Uhr eben morgen nochmal eine Synchronisation.
      Oder übermorgen.
      In der Zwischenzeit zeigt die Uhr immer falscher an.

      *auch bei Wohnzimmeruhren, also daran kann es vermutlich nicht liegen ;)
    • Hallo,

      daran kann es nicht liegen.
      Meine selbstgebaute Uhr auf Steckboard geht eine Minute vor - korregiert dann wieder zurück auf die "echte" Zeit laut referenz Funkuhr. Die Sekunden und Stunden gleichen sich fast immer.

      Manchmal gibt es auch totalen quatsch aus ;) was aber vermudlich an ein paar gebrochnen/schlecht kontaktierten Display Kabeln liegt.

      Nur ab und zu zeigt es sowas an wie
      "00:40:89 01.09.00"

      Den Fehler mit dem eine Minute vor gehen kapier ich einfach nicht.
      Besonders da dass ding ja von selbst nachkorriegiert.

      Außerdem: Muss das so sein das ich das Signal verstärken muss?
      (Habs inzwischen auf Faktor 2 reduziert)
      Bei einigen Projekten hab ich gesehen das Sie das Signal invertieren vom Pollin DCF1 Modul - sollte ich das auch machen?

      Grüße
      Alex
    • Alex_T wrote:

      Außerdem: Muss das so sein das ich das Signal verstärken muss?
      Das ist eher eine "Glaubensfrage". In einem anderen Threat betreiben die Leute teilweise einen erheblichen Aufwand das DCF-Modul Ausgangssignal aufzubereiten. Eigendlich kann es auch direkt an den Avr-Pin angeschlossen werden. Der Pegel sollt nur passen: DCF 3V - AVR 5,5V wäre kritisch (<0,6Vcc wird nicht immer als High erkannt) (lt Datenlatt min 0,7Vcc) Mit Dcf 3,5V Avr 5V habe ich keine Probleme.
      Was sagt den ein Zeitvergleich mit anderen? GPS/Timeserver /TV?

      The post was edited 1 time, last by Pluto25 ().

    • Üblicherweise benutzt man dann einen Pegelwandler oder betreibt den MC mit 3,3V, sofern die Taktfrequenz das zulässt (oder außerhalb der Spec. betreiben, dass wäre meine Variante ).
      Aus datenschutzrechtlichen Gründen befindet sich die Kontaktdaten auf der Rückseite dieses Beitrages.
    • Der Unterschied ist halt, dass der Prozessor läuft, weil dort erhebliche Reserven vorhanden sind und im Allgemeinen die Grenzwerte selten angekratzt werden. Meine Erfahrung ist, dass gute (Fertig-) Baugruppen teurer sind.
      Und ich habe neben der Pollin-Bariante auch andere DCF-Module verwendet. Die teuren Modelle haben oft einen größeren Versorgungsspannungsbereich und sind belastbarer (Strom).
      Aus datenschutzrechtlichen Gründen befindet sich die Kontaktdaten auf der Rückseite dieses Beitrages.
    • Ich schmier auch meinen Senf dazu.
      Meine Uhren gehen immer mit Pollinempfänger. Verstärken tue ich nie. Was ich schon gemacht habe: einfache Transistorstufe nachgeschaltet, invertiert das Signal, Empfänger gnd an Kontroller gnd und Vcc vom Empfänger mit Spannungsteiler reduziert. Oder Empfänger gnd mit mit Dioden über den Kontroller gnd angehoben und direkt mit pin verbunden. Oder aufwändiger mit einem Opv als Treiber. Wichtig ist aus meiner Sicht nur, den Modulausgang möglichst wenig zu belasten.
      Wenn die Flanke in die falsche Richtung geht (invertiert/nicht invertiert), dann synchronisiert sich bei mir nix.
      Was ich auch als ganz hilfreich empfinde, das Signal auf einer Led auszugeben. Dazu kann man ein bit vom dcf_status verwenden, oder über einen Treiber vom Empfänger abgreifen. Störungen kann man gut erkennen und durch drehen der Antenne eine Optimierung finden.
      Raum für Notizen

      -----------------------------------------------------------------------------------------------------

      -----------------------------------------------------------------------------------------------------
    • Hallo,

      meine Erfahrungen mit dem Pollinmodul bezüglich vernüftigen Resultaten ist folgende:

      Der Versorgungsspannungsbereich des Moduls wird mit 1,2 - 3,3 V angegeben.

      Mein Controller war mit 3,3V Versorgung, und das Pollinmodul ebenso.

      Hier hatte ich immer Empfangsprobleme.

      Erst als ich die Versorgungsspannung am Pollinmodul um ca. 0,5V (Reihenschaltung mit Diode 1N4148) verringert habe,
      waren die Empfangsergenisse in einem akzeptablen Bereich.

      Vielleicht nutzt Dir dieser Hinweis.

      Viel Erfolg
    • Hallo,

      mein Senf zu dem Thema:
      Zu aller erst einmal sollte man hier mit begrifflichkeiten aufräumen...
      Verstärken im Sinne von x2, x5,7 usw. braucht Verstärkerstufen und macht man in der Analogtechnik.
      Worum es hier geht ist eher das treiben statt verstärken und hat exakt garnichts mit exakten Verstärkungsfaktoren zu tun.

      Das Pollin DCF-1 welches ich schon in verschiedenen Modulvarianten ziemlich häufig verbastelt habe, hat generell das Problem eines eher extrem hochohmigen Ausganges. Statt einer Push-Pull-Stufe wo zig mA raus könnten, hat der DCF-1 da nur einige dutzend µA am Ausgang.
      Läuft DCF-1 und µC zusammen auf Vcc = 3,3V KANN es direkt am Portpin funktionieren, muss aber nicht.
      Daher schalte ich als Treiber auch unter reinen 3,3V-Bedingungen generell einen kleinen N-FET dazwischen.
      Der Ausgang des DCF-1 hängt direkt am Gate und der N-FET schaltet einen externen PullUp auf GND.

      Was die Signalpolarität angeht muss man verstehen was damit gemeint ist, alles andere ist stochern im Dunkel - eben weil es mitunter auch darauf ankommt ob man einen N-FET als Treiber dazwischen hat oder nicht.

      Kleines Beispiel aus meinem letzten Projekt:
      Platine hatte einen N-FET nebst PullUp vorgesehen, weil ich dort ein DCF-1 (Pollin) anschließen wollte.
      Bei der eingesetzten Version hätte ich keine Invertierung gebraucht - durch den vorgesehenen N-FET aber doch, weil dieser ja invertiert.
      Soweit so gut.
      Das DCF-1 von Pollin machte trotz optimierung der Antennenausrichtung Probleme, saumiserabler Empfang.
      Also testete ich statt dessen einen DCF-2 (ELV) welcher auch tatsächlich wesentlich zuverlässiger funktionierte.
      Der DCF-2 hingegen hat auf seinem Modul einen NPN-Treiber welcher das eigentlich nichtinvertierte Signal invertiert ausgibt.
      Der N-FET auf meiner Platine wäre also überflüssig, invertiert aber dennoch nochmals, also kommt das Signal im Portpin - zwei mal invertiert, wieder uninvertiert an.

      Generell ist im Umgang mit solchen DCF-Modulen ein Oszi enorm hilfreich um das Ausgangssignal zu bewerten.
      Nicht nur die tatsächliche Polarität des Signals ist zu erkennen, sondern auch die Probleme an den Flanken bei Empfangsproblemen.

      Grüße

      Jürgen
    • Ich muss auch mal meinen Senf dazugeben.

      Ich habe mich lange mit DCF Modulen herumgeärgert, in Steuerungen mit Schaltnetzteil, keine Chance die DCF Zeit zu empfangen. Also extern untergebracht und so weit wie möglich weg. Irgendwann bin mal auf das NEO-6 GPS Modul gestoßen.

      Wo der Stromverbrauch nicht unbedingt eine Rolle spielt, lasse ich es immer laufen. Wo ich darauf achten muss, schalte ich das Modul 10 Minuten bevor ich die Zeit einlese über einen Transistor ein.

      Auch wenn das volle GPS Signal in Räumen nicht immer da ist, die Uhrzeit ist nach wenigen Sekunden vom Modul empfangen worden. Funktioniert immer und überall.

      Und beim Chinesen bekommt man 2 Neo-6 für ein DCF Modul.
    • @Bella-Amica hast du mal paar Zeilen code, wie du die Zeit aus dem Modul raus liest? Und vielleicht einen link zum verwendeten Modul? Mit den doch weit verbreiteten Schaltnetzteilen macht dcf77 häufig nicht so viel Spaß, oder man muss lange nach geeigneten NTs suchen.
      Oder antworte am besten im thread, den ich gleich eröffnen werde. Genaue Zeit für das Projekt, verschieden Verfahren
      Raum für Notizen

      -----------------------------------------------------------------------------------------------------

      -----------------------------------------------------------------------------------------------------

      The post was edited 1 time, last by tschoeatsch ().

    • Zufällig hatte ich gester in meinem "Archiv" eine Conrad GPS-Maus mit USB-Kabel gefunden. Keine Ahnung woher die kommt.
      Ich hatte die mal unbedarft angesteckt und mit einem Terminalprogramm ausgelesen.
      Beim ersten Verbinden kommt

      Source Code

      1. $GPTXT,01,01,02,u-blox ag - www.u-blox.com*50
      2. $GPTXT,01,01,02,ANTARIS ATR062x HW 00040001*2E
      3. $GPTXT,01,01,02,EXT CORE 5.00 Jul 17 2006 15:08:10*78
      4. $GPTXT,01,01,02,INT EXT0 (RCV) M4H1.1C Jul 17 2006 16:42:30*0E
      5. $GPTXT,01,01,02,LIC 000-0000-0000-0000-0000*50
      6. $GPTXT,01,01,02,ANTSUPERV=AC SD PDoS *21
      7. $GPTXT,01,01,02,ANTSTATUS=SHORT*6D
      8. $GPRMC,,V,,,,,,,,,,N*53
      9. $GPVTG,,,,,,,,,N*30
      10. $GPGGA,,,,,,0,00,99.99,,,,,,*48
      11. $GPGSA,A,1,,,,,,,,,,,,,99.99,99.99,99.99*30
      12. $GPGSV,1,1,00*79
      13. $GPGLL,,,,,,V,N*64
      14. $GPZDA,,,,,00,00*48
      Display All

      Dann werden die unteren sieben Zeilen immer wieder wiederholt.
      Ich denke mal, dass das in der Wohnung nicht funktioniert aber in den sieben Zeilen wird wohl neben der Position auch Datum unf Uhrzeit drinnen sein, wenn das Ding mal Satelliten findet. Nach einigen Minuten sieht man jedenfalls Datum Und Uhrzeit.

      Ich denke mal, dass die Zeilen einer Norm unterliegen was ich aber jetzt auf die schnelle nicht weiter recherchiert habe.

      Source Code

      1. $GPRMC,142415.00,V,,,,,,,020719,,,N*77
      2. $GPVTG,,,,,,,,,N*30
      3. $GPGGA,142415.00,,,,,0,00,99.99,,,,,,*61
      4. $GPGSA,A,1,,,,,,,,,,,,,99.99,99.99,99.99*30
      5. $GPGSV,1,1,01,16,,,29*74
      6. $GPGLL,,,,,142415.00,V,N*4D
      7. $GPZDA,142415.00,02,07,2019,00,00*6E
    • Hallo!

      Bella-Amica wrote:

      Ich muss auch mal meinen Senf dazugeben.

      Ich habe mich lange mit DCF Modulen herumgeärgert, in Steuerungen mit Schaltnetzteil, keine Chance die DCF Zeit zu empfangen. Also extern untergebracht und so weit wie möglich weg. Irgendwann bin mal auf das NEO-6 GPS Modul gestoßen.
      Puh...GPS nur für Zeit?
      Wollte schon einige male was mit GPS machen, kam bislang nur nicht dazu.
      Habe aber dafür bereits seit zwei Jahren zwei Maestro A2200-A (Mouser 14€ Netto Stück) rumliegen.
      Für eine RTC die "nur" nie exakte Zeit braucht käme GPS für mich nicht in Frage...zu teuer, zu komplex.

      Und DCF77 krankt eigentlich nur an der desulaten Qualität der verfügbaren DCF-Module.

      Prinzipiell wären auch Schaltregler und Schaltnetztele kein Problem, solange die mit ihrer PWM ordentlich Abstand zu den 77kHz einhalten.
      In meinem aktuellen Projekt befindet sich ein µC mit RFM69HW, einem 5V Schaltnetzteil (open frame) sowie bis vor wenigen Wochen noch ein PFM-PWM-Schaltregler für 3,3V sowie ein DCF-Modul, alles auf relativ kleinem Raum in einem Schuko-Steckergehäuse.

      Pollin DCF-1 flog ziemlich schnell raus, funktionierte gar nicht.
      ELV DCF-2 funktionierte ansatzweise.
      Problem hier war nicht das Netzteilplatinchen 230V->5V und auch nicht der Schaltregler 3,3V mit 1,5MHz PWM, sondern die Einstrahlung in das DCCF-Modul wenn das RFM69HW (868MHz) ein Paket alle 60 Sekunden sendete.

      Nach dieser Erkentniss alles wieder zurück auf Anfang: DCF-Module abschirmen mit Alufolie und Anschlüsse verdrosseln.
      Mit Pollin DCF-1 keine nennenswerte verbesserung.
      Die ELV DCF-2 hingegen stört sich nun auch an der RFM69HW nicht mehr, selbst bei maximaler Sendeleistung nicht.
      Dennoch fällt mitunter der DCF-Empfang gelegentlich aus, im extremfall für 12-18h, in der Regel aber durchaus mehrere Wochen durchgängig ohne Probleme.

      Und wie bereits erwähnt:
      Zeitempfang über Langewelle könnte viel besser sein wenn die verfügbaren Module besser abgestimmt wären, die Empfänger selektiver wären, und insgesamt nicht so extrem hochohmig gebaut wären.

      Und neben DCF77 gäbe es mit etwas mehr flexibilität durchaus noch mehr Zeitquellen auf Langewelle.
      So schlummert in meiner To-Do-Liste ein Projekt wo ich mal schauen will wie aufwändig und teuer ein komplett eigener LW-Zeitempfänger wäre:
      Neben DCF77 (77,5kHz) z.B. noch optional umschaltbar auf:
      DCF49 (129kHz)
      DCF39 (139kHz)

      Anderes Format (200Bd FSK) aber dafür ziemlich exakte Zeitstempel alle 10 Sekunden.
      Besonders interessant ist das die DCF39/49 ungefähr die doppelte Sendeleistung (100kW statt 50kW DCF77) haben, und räumlich verteilt stehen (Burg im Nordosten deutschlands und Frankfurt).

      Bella-Amica wrote:

      Und beim Chinesen bekommt man 2 Neo-6 für ein DCF Modul.
      Hmm, GPS zum halben Preis von DCF? Link?

      Jürgen
    • Das gps-modul nur für die Zeit zu verwenden, hat schon seinen Reiz. Man blockiert keine hw wie timer, weil man alles in sw machen kann. Ich bin gespannt, wie brauchbar die Module in indoor-Bereich sind.
      Raum für Notizen

      -----------------------------------------------------------------------------------------------------

      -----------------------------------------------------------------------------------------------------
    • Die gibt es für nochmal einen Euro weniger bei den einschlägigen Modellbauhändlern, 4 Stück für 10€ inkl. Versand. Die habe ich auf den größeren Quadrocoptern drauf. Wenn es nicht mitten im Beton ist und ein Netzteil genutzt werden kann ist es sehr, sehr genau. In unserem Altbau kann ich in allen Zimmern mindestens 1-2 Satelliten empfangen, dass Schwanken ist lange nicht so stark wie beim Funkwecker der in der gleichen Werkstatt hängt.
      Aus datenschutzrechtlichen Gründen befindet sich die Kontaktdaten auf der Rückseite dieses Beitrages.