Go Down

Topic: Projektvorstellung: Analoguhr mit Amperemetern (Read 6016 times) previous topic - next topic

nachtaktiv68

Das Ding meinte ich:

http://www.conrad.de/ce/de/product/641138/DCF-EMPFAENGERPLATINE/?ref=detview

Ist etwas schwer zu finden. Aber das bei Pollin ist günstiger und funktioniert wahrscheinlich genauso gut :)
twitter: @darktom

sth77

Na gut, ich nehme alles zurück und behaupte das Gegenteil. :D Wenn man nach "DCF" sucht, wird man von den Ergebnissen erschlagen, bei "DCF77" findet er gar nichts, bei "Funkuhr" nur die Uhren, keine Module. Und im Laden hab ich auch nicht in der C-Control-Ecke geschaut, muss ich zugeben. Geht ja nicht, dass man als Arduindianer bei der (teureren, unfreien) Konkurrenz hängenbleibt.
Aber wie gesagt, mein Paket ist unterwegs, mal schauen, ob ich meinen "Tinyduino" dazu bewegen kann, die DCF77-Daten zu entschlüsseln.
Mein Arduino-Blog: http://www.sth77.de/ - letzte Einträge: Teensy 3.0 - Teensyduino unter Window 7 - Teensyduino unter Windows 8

volvodani

Das Problem der Pollkn Dinger ist das sie extrem stoeranfaellig sind also eine schlechte Empfangsqualität haben. Aus eigener Erfahrung weiß ich das oft schon ein elektronischer Halogentrafo ausreicht das Dingen aus dem Konzept zu bringen.
Nur ne kleine Anmerkung.
Gruß Daniel
So ist das Leben:
Manchmal bis du das Denkmal, manchmal die Taube!

Marcus W

Und wenn man "einfach" ein Skaleninstrument umbaut? Innenleben raus, Im größeren Maßstab zusammenbasteln...

Udo Klein

Man kann die Servos aber solange sie stillstehen sollen auch von der Versorgungsspannung trennen. Wenn die Zeiger leicht sind sollte die Servos dann dort stehen bleiben wo sie sind.
Check out my experiments http://blog.blinkenlight.net

uwefed

Wenn die Zeiger leicht aber vor allem ausbalanciert sind müßte der Zeriger bei einem ausgeschaltenen Servo sicher still stehen. Der Lärm ist aber sicher nicht mit dem lautlosen Vorbeihuschen eines Drehspulinstruments zu vergleichen.

Innenleben Austauschen: Ich traue es mir nicht zu ein Drehspulinstrument bauen zu können. Obwohm die Dinger einfach aussehen ist viel Know How drin.

Grüße Uwe

sth77

#21
Feb 01, 2012, 11:16 am Last Edit: Feb 01, 2012, 11:19 am by sth77 Reason: 1
So, meine DCF77-Module von Pollin sind da, ein paar Experimente habe ich mit den entsprechenden Librarys schon gemacht - leider erfolglos. Ein Modul von Conrad fiel mir ebenso in die Hände, daher habe ich probeweise auch dieses zur Zeitausgabe mittels Libraries überreden wollen.

Also habe ich mich gestern abend rangesetzt und im 10ms-Takt mitgeloggt, was sich am Ausgang des Moduls (von Conrad) so tut. Da es sich um ein Open Collector handelt, wurde ein Pull-Up-Widerstand eingebaut. In Ermangelung eines Speicheroszilloskopes musste ein Arduino Duemilanove herhalten, der am Analogeingang lauscht. Anhand eines Triggerwertes habe ich also nach High- und Low-Pegeln unterschieden. Das ganze sah dann so aus (Ausschnitt der Gesamtmessung):

Code: [Select]
-------------------------------__------------_------------------------------------------------------ 21
----____--------------------------------------------------_______________--------------------------- 22
------___-------------------------------------------------____________------------------_----------- 23
-------___-----------------_-___________------------------_____________----------------------------- 24
---------------------------------------------------------___________________________---------------- 25
---------------------------------------------------------________________________------------------- 26
---------------------------------------------------------______________------------------______----- 27
-------------------------_--------------------------------_____________________--------------------- 28
--------------------------------------------------------_______________________------_-------------- 29
--------------------------------------------------------__________________-------------------------- 30
-------------------------------------------------------________________---------------------------__ 31
_--------------------------------------------------------__________--------------------------------- 32
------------------------------------------------------__________________-------------__-_----------- 33
--------------__---------------------------------------_____________________------------------------ 34
------------------------------------------------------___________________________------------------- 35
----------------____-----------------------------_--____________________________-------------------- 36
-------------------------------------------------__--_____________---------------------------------- 37
--______------------------_--------------------------____________----------------------------------- 38
------------_______-----------------------------------___________----------------------------------- 39
-----------------------------------------------------_____________________-------------------------- 40
---------------------------__-------------------_--____________------------------------------------- 41
----------------------------------------------------_________________________----------------------- 42
---------------------------------------------------______________--------------------------------_-- 43
---------------------------------------------------________________________------------------------- 44
--------------------------------------------------______________________---------------------------- 45
--------------------------------------------------____________-------------------------------------- 46
--------------------__-------------____----__--_________________________---------------------------- 47
------------------------------------------------________________------------------------------------ 48
------------------------------------------------__________________---------------------------------- 49
-------------------------------------------------_______________________---------------------------- 50
-----------------------------------------------_________________------------------------------------ 51
---_----___-------------------------------------_______________--_________-_------------------------ 52
-----------------------------------------------_____________---------------------------------------- 53
--------------------------------------------_________________--------------------------------------- 54
---------__-----------------------------------______________---------------------------------------- 55
---------------------------------------------_____________------------------------------------------ 56
------___-------------____--------------------_____________----------------------------------------- 57
---------------------------------------------_________________________------------------------------ 58
---------------------------------------------__________--------------------------------------------- 59
------------------------------------------------________-------------------------------------------- 60
---------------------------------------------____________-------_-----------------------_--______--- 61
------___-------------____------------------___________-----------------------------------______---- 62
--------------------------------------------____________-------------------------------------------- 63
-------------------__----------------------_______________________---------------------------------- 64
------------------------------------------__________________________-------------------------------- 65
-----------------------------------------________________--___-------------------------------------- 66
-------------------------------------------_____________------------___----------------------------- 67
------______-----------------------------_________________________---------------------------------- 68
-----------------------------------------_____________---------------------------------------------- 69
------__---------------------------------_____________---------------------------------------------- 70
----------------------------------------____________-------------------------------------__--------- 71
----------------------------------_-----_____________---___----------------------------------------- 72
-_______--------------------__--------________________________------_------------------------------- 73
---------------------------------------______________----------------------------------------------- 74
----------------------------------------____________------------------------------------------------ 75
-----------------------__---------__________________________------------------------_____----------- 76
_--------------------------------------_______________---------------------------------------------- 77
--------------------------------------__________----------------------------------------------_----- 78
--------------------------------------_________----------------------------------------------__----- 79
-----_--------------------------------__________---------------------------------------------------- 80
---------------------------------------_----_------------------------------------------------------- 81

Hier als komplette Textdatei zum Download über 120 Sekunden: http://dl.dropbox.com/u/57859158/dcf.txt

Nach 21 Sekunden meiner Messung erfolgt die Synchronisation des Signals, danach erfolgt der Minutenwechsel. Dann habe ich durch Sichtung dieser Messergebnisse lange und kurze Impulse herausgearbeitet, lange Impulse (ca. 200 ms) ergeben 1, kurze (ca. 100ms) werden zur 0. Wie man das auswertet findet man hier: http://de.wikipedia.org/wiki/DCF77
Das ergibt in meinem Fall 00:16 Uhr, Mittwoch, 01.02.2012 - passt soweit.
Aber ihr seht es ja selbst, da sind einige dumme Peaks im Signal, die ich durch Änderung der Triggerschwelle des Analogsignals nicht ausmerzen konnte. Habt ihr Erklärungen dazu? Kennt ihr Schaltungen oder Programmroutinen zur Aufwertung des Signals, also als hardware- oder softwareseitige Filter?
Mein Arduino-Blog: http://www.sth77.de/ - letzte Einträge: Teensy 3.0 - Teensyduino unter Window 7 - Teensyduino unter Windows 8

MaFu

Ich habe auch den Conrad Empfänger. Zum Auslesen verwende ich die DCF77 Library von Mathias Dalheimer. Da ich damit aber große Probleme beim Auslesen hatte, habe ich sie modifiziert/erweitert. Diese erweiterte Version kann hier heruntergeladen werden: http://www.mafu-foto.de/elektronik/arduino/108-arduino-library-fuer-dcf77-funkuhrempfaenger
Kannst Sie ja mal ausprobieren.
_______
Manfred

sth77

#23
Feb 01, 2012, 01:25 pm Last Edit: Feb 01, 2012, 01:27 pm by sth77 Reason: 1
Werde ich auf jeden Fall mal testen, wenngleich ich der Meinung bin, dass mein unsauberes Signal die Flankenerkennung behindern wird. Besten Dank!
[edit] Worin bestanden deine Änderungen?
Mein Arduino-Blog: http://www.sth77.de/ - letzte Einträge: Teensy 3.0 - Teensyduino unter Window 7 - Teensyduino unter Windows 8

MaFu

Puh. Das hab ich 2009 gemacht, keine Ahnung. Da müsst ich irgendwo die Originalversion ausgraben und vergleichen.
_______
Manfred

sth77

Tut mir leid, getestet und wieder ohne Erfolg. Ich verstehe es einfach nicht... :(
Mein Arduino-Blog: http://www.sth77.de/ - letzte Einträge: Teensy 3.0 - Teensyduino unter Window 7 - Teensyduino unter Windows 8

MaFu

Sorry, dann weiß ich leider auch nicht weiter. Mit meinem Conrad-Empfänger funktioniert die Lib einwandfrei.
_______
Manfred

sth77

Das glaube ich dir gern, aber bei mir streut irgendwas ins Signal ein, wie man ja an dem mitgeloggten Verlauf sehen kann. Das kann die Lib einfach nicht ausbügeln. Letztlich machen diese DCF-Auswertungen anfangs das selbe, sie warten die Synchronisation ab, also warten darauf, dass in einem Zeitraum über 1 Sekunde kein Flankenwechsel stattfindet. Und das passiert durch die sporatischen Peaks bei mir nicht.
Nun ja, das Wochenende rückt in greifbare Nähe. Vielleicht teste ich dann noch ein anderes Board, ein anderes Modul, einen anderen Aufstellungsort. Jeder billige Funkwecker ausm Aldi bekommt das hin... ;)
Mein Arduino-Blog: http://www.sth77.de/ - letzte Einträge: Teensy 3.0 - Teensyduino unter Window 7 - Teensyduino unter Windows 8

Udo Klein

Also nur mal so zum Nachdenken: interessant sind ja nur die Flanken die im Sekundenraster liegen. Da der Arduino ja ein Quarz hat, weiß man schon vorher ziemlich genau wie lange eine Sekunde ist. Deshalb könntest Du im Millisekundenraster (MsTimer2 !!!) samplen und schauen mit welche Phasenlage (und ggf. Frequenzkorrektur) Du am Besten auf das Sekundenraster kommst. Danach könntest Du die Sache phasenveriegeln und nur noch auf die Flanken schauen die im Raster liegen. Und plötzlich wird der Signalrauschabstand schon viel größer ;) Als nächstes könntest Du auf die Idee kommen, daß aufeinanderfolgende Minutenframes ja nur sehr begrenzte Unterschiede haben können und daß man diese Unterschiede auch noch mit einer einfachen Formel korrelieren kann. Damit könntest Du mit ausreichend vielen Samples sicher nochmal ein paar dB rausquetschen. Allerdings ist das in der Theorie viel einfacher als in der Praxis ;)

Check out my experiments http://blog.blinkenlight.net

uwefed

Quote
Jeder billige Funkwecker ausm Aldi bekommt das hin... smiley-wink

Das hat mich auch schon verärgert.
Grüße Uwe


Go Up