www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Genauer Oszillator


Autor: Peter S. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

da der interne Takt meines Mikrocontrollers sehr ungenau ist +-2% und 
dadurch auch die Timer sehr ungenau sind, möchte ich durch einen 
externen Oszillator eine genauere Zeitgebung erreichen.
Ich habe mir das so vorgestellt, dass ich einen Oszillator der mit 
0.5kHz (--> 2ms Periodendauer) schwingt auf einen Pin des 
Mikrocontrollers verbinde (--> TTL Pegel!). Dann wird per externen 
Interrupt jeder Flankenwechsel gezählt (--> nach jedem Flankenwechsel 
ist 1ms vergangen). Diesen Wert kann ich dann für diverse Berechnungen 
benützen.
Der Oszillator soll dabei möglichst genau und möglichst 
temperaturunabhängig sein.

Meine Fragen:
1) Muss ich so einen Oszillator selbst entwerfen oder gibt es dafür 
fertige ICs (die auch genau sind)?
2) Falls ja, welche Genauigkeit kann ich mir für welchen Preis erwarten?
3) Würde es mehr sinn machen, den Oszillator als externen Clock zu 
verwenden und die internen Timer zur Zeitgebung verwenden?

Als Mikrocontroller wird ein SILABS 8051F120 verwendet.

Danke für eure Hilfe!

Autor: Lehrmann Michael (ubimbo)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Peter S. schrieb:
> Muss ich so einen Oszillator selbst entwerfen

Das kannst du nicht - Quarzoszillatorn herzustellen ist eine Kunst

Peter S. schrieb:
> gibt es dafür
> fertige ICs (die auch genau sind)?

Nein - das ganze nennt sich Quarz oder Quarzoszillator und ist die 
Grundlage eines jeden Mikrocontroller-Projektes

Peter S. schrieb:
> Würde es mehr sinn machen, den Oszillator als externen Clock zu
> verwenden und die internen Timer zur Zeitgebung verwenden?

Ja so macht man es ...

Peter S. schrieb:
> 2) Falls ja, welche Genauigkeit kann ich mir für welchen Preis erwarten?

Die Genauigkeit gibt man nicht in % sondern in ppm an. Ein großes 
Problem für Quarze ist die Temperaturänderung. Darum steckt man 
hochgenaue Quarze in einen sog. Quarzofen. Das ist sozusagen ein 
permanent temperiertes Gehäuse.

Was für Anforderungen hast du denn an die Genauigkeit ? Bitte konkrete 
Daten ...

Autor: thorstendb (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hmmmm ...

lt. Datenblatt hat der nen clock / PLL curquid, kann man da nicht direkt 
nen Quarz mit 2x 22pF nach GND ansaften?

Autor: thorstendb (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
XTAL 1 und 2 ...

Autor: Sven W. (Firma: basement industries) (dj8nw)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
thorstendb schrieb:
> XTAL 1 und 2 ...

da nen Quarz drüber und an jedem Pin nen C gegen Masse und "Zack die 
Bohne!";)

Autor: Oliver Ju. (skriptkiddy)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Peter S. schrieb:
> 1) Muss ich so einen Oszillator selbst entwerfen oder gibt es dafür
> fertige ICs (die auch genau sind)?
Schließ einfach einen Quarz mit passenden Lastkapazitäten an.

> 2) Falls ja, welche Genauigkeit kann ich mir für welchen Preis erwarten?
So 50ppm bei Zimmertemperatur --> 0,005%



Gruß Skriptkiddy

Autor: Peter S. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Konkret geht es um eine Teleskopsteuerung. Das Teleskop soll auf 1 
Bogensekunde genau Nachführen (d.h. die Drehung der Erde ausgleichen).
Dafür wurde ein digitaler PID-Regler implementiert. Zum genauen 
Berechnen der aktuellen Sollposition muss ich allerdings eine wirklich 
genau Zeitgebung haben.
Bei einer Nachführung mit stellarer Geschwindigkeit, benötigt das 
Teleskop für 360° 23h 56min 4,091s.
Ziel ist es, dass während einer Aufnahme die im Schnitt 3-5min belichtet 
wird die Genauigkeit von 1 Bogensekunde eingehalten wird.

--> Nach 66,4846ms ist das Teleskop also um eine Bogensekunde gewandert 
(bei Stellarer Geschwindigkeit).

Auf 5 Minuten (= 3 * 10^5 ms) soll die Abweichung weniger als eine 
Bogensekunden sein --> der Takt um weniger als 66ms falsch sein.
Es wäre jedoch besser einen Fehler der geringer als 33ms ist zu 
erreichen, da ja noch Ungenauigkeiten durch die Positionsmessung, 
Getriebespiel, etc. hinzukommen.


Jedoch ist das eigentliche Problem nicht eine Konstante Abweichung des 
Taktes, sondern die Temperaturabhängige Abweichung. Eine konstante 
Abweichung würde sich durch erhöhen oder veringern der Stellaren 
Geschwindigkeit leicht korrigieren lassen. Es sollt jedoch nicht 
notwendig sein, bei jeder Temperaturänderung die Geschwindigkeit neu 
einzustellen müssen.

Autor: Peter S. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Genauigkeit die benötigt wird wäre dann 0.00011% --> 1ppm wenn es 
ein 1ms Takt ist.

D.h. es wäre besser eine geringere Frequenz zu wählen, oder?

Autor: Kamui (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich glaube du hast da einen kleinen Rechenfehler.
Wenn du in 5 Minuten eine Abweichung von 33ms tolerierst,
ergibt das prozentual eine Abweichung von 0,011%
Damit sollte ein normaler Schwingquarz mit 50ppm normalerweise 
ausreichen.
Oder habe ich da was falsch verstanden?

Autor: Peter S. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nein du hast recht, war mein Fehler. Habe vergessen durch 100 zu 
dividieren.

Und wie sieht es mit der Temperaturabhängigkeit aus? So ein Teleskop 
sollte in einem Temperaturbereich von -30° - +50° gut funktionieren.

Wie ermittle ich nun, welchen Quarz ich brauche (wenn ich die XTAL 
Methode verwende) bzw. welche Kapazitäten benötigt werden?

Autor: tt2t (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
wenn Du eine supergenau RTC suchst, nimm den DS3132 von maxim-ic.com, 
der hat einen I2C-Port und einen Oszillator-Ausgang, der eingebaute 
Quarz-Oszillator ist temperaturkompensiert ...

http://www.maxim-ic.com/datasheet/index.mvp/id/4627

Autor: Sven W. (Firma: basement industries) (dj8nw)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
tt2t schrieb:
> wenn Du eine supergenau RTC suchst, nimm den DS3132 von maxim-ic.com,
> der hat einen I2C-Port und einen Oszillator-Ausgang, der eingebaute
> Quarz-Oszillator ist temperaturkompensiert ...

Oder ein Cäsium-Frequenznormal;)

Ne ich denk mal mit nem herkömmlichen Quarz solltest Du eigentlich genug 
Genauigkeit erreichen. Sollte sich doch durch nen Test ermitteln lassen.
Und wenns ungenügend ist, kann man sich immernoch ne andere Taktquelle 
einbauen. Wie oben genannt Quarzofen etc...

Und Peter, wegen den Kapazitäten, die sollten im µC-Datenblatt stehen 
bzw. du hälst dich zur Not an die Bürde des Quarzes.

Gruß, Sven

Autor: Simon K. (simon) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du kannst auch einen Quarztakt nehmen und per DCF77 oder GPS ständig den 
Fehler ermitteln und herausrechnen.

Autor: Michael Roek (mexman) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Peter,

solche "Frequenzwandler" fuer die frueher meist bei den NAchfuehrungen 
verwendeten Synchronmotoren habe ich vor zig Jahren mal entwickelt.

Ein ganz normaler Quarz ist voellig ausreichend!

Hast DU einen Schritt- oder Synchronmotor?

Fuer schnell/langsam (=vor/rueck) waren zwei RC-Oszillatoren drinnen, 
die statt der geteilten Quarzfrequenz dann eine hoehere bzw. niedrigere 
Frequenz eingespeist haben.

Die eingebauten Oszillatoren in den uC sind ganz miserabel.
Schlechte Genauigkeit und noch schlechterer Temperaturgang!

Gruss


Michael

Autor: Peter S. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@tt2t: Laut datenblatt geht der doch nur auf Sekunden genau oder? 
Außerdem ist mir die aktuelle Zeit eher weniger wichtig. Wichtiger ist 
ein auf 5 minuten gesehen möglichst genauer Takt.

@Simon K.: Per GPS?

@Michael Roek-ramirez:

Ich verwende Schrittmotoren. Der Schrittmotor wird allerdings über eine 
seperate Steuerung gesteuert. Dieser kann ich über einen Analogwert die 
Geschwindigkeit übergeben, mit der sie den Schrittmotor betreiben soll. 
Die Steuerung überwacht automatisch den Motorstrom, ob Schritte verloren 
gegangen sind etc.
Der analoge Wert ist dann direkt der Ausgang meines digitalen 
PID-Reglers.

Hat mich selbst überrascht, dass diese Methode alle 
Genauigkeitsanforderungen bestens erfüllt!

D.h. mit einem relativ genauen Quarz, den ich über XTAL hinzuschalte 
sollte es getan sein?

Worauf muss ich denn beim kauf eines Quarzes achten, außer auf die ppm? 
Bzw. wie errechne ich mir nun die Kapazitäten die auf XTAL1/2 gegen GND 
verbunden werden?

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lehrmann Michael schrieb:
> Peter S. schrieb:
>> Muss ich so einen Oszillator selbst entwerfen
>
> Das kannst du nicht - Quarzoszillatorn herzustellen ist eine Kunst

Das stimmt nicht.

Einen Quarz passend zu schleifen ist eine Kunst.  Mit einem passend
geschliffenen einen Oszillator aufzubauen ist Handwerk.

Peter S. schrieb:
> @tt2t: Laut datenblatt geht der doch nur auf Sekunden genau oder?
> Außerdem ist mir die aktuelle Zeit eher weniger wichtig. Wichtiger ist
> ein auf 5 minuten gesehen möglichst genauer Takt.

Das schafft jeder ordentliche Quarz problemlos.  Allerdings musst du
ihn kalibrieren, denn er hat einen Grundfehler.  Dazu führt man einen
der beiden Lastkondensatoren variabel aus; entweder als Trimmer oder
man lötet sie passend zurecht (aber zwischen den Kalibriermessungen
abk]hlen lassen).  Alternativ kann man in Software kalibrieren, indem
man den Offset nur erfasst und bspw. im EEPROM hinterlegt.  Die
Korrektur erfolgt dann, indem aller N Zyklen 1 addiert oder subtrahiert
wird (was allerdings dazu führt, dass man einen Zeitsprung hat).

> @Simon K.: Per GPS?

Eine der wesentlichen Grundlagen des GPS (und vergleichbarer Systeme)
ist eine genaue Zeitbasis.  Diese wird mittels eines Cäsium-Normals
("Atomuhr") in den Satelliten realisiert.  Dadurch bist du als
Betreiber eines GPS-Empfängers ab dem 1. Satelliten, den du empfangen
kannst, automatisch auch im Besitz einer recht genauen Uhrzeit.

Autor: Peter S. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ok der Fehler lässt sich dann auch leicht per Software korrigieren, da 
man die unterschiedlichen Nachführgeschwindigkeiten sowieso einstellen 
kann.

Aber wie dimensioniere ich nun die Lastkapazitäten bzw. den quarz?

Autor: U.R. Schmitt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Peter S. schrieb:
> Aber wie dimensioniere ich nun die Lastkapazitäten bzw. den quarz?

Sieh im Datenblatt des von dir verwendeten Microcontroller nach.

Autor: Peter R. (pnu)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nimm lieber einen fertigen Quarzoszillator. Den kann man ohne große 
Vorkenntnisse einsetzen: richtige Betriebsspannung anlegen und den 
Kontroller für externen Takt programmieren.
Es gibt davon auch temperaturkompensierte Versionen, TCXO's, die nur 
wenige ppm Frequenzfehler haben, zu einem noch erträglichen Preis.

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
U.R. Schmitt schrieb:
> Peter S. schrieb:
>> Aber wie dimensioniere ich nun die Lastkapazitäten bzw. den quarz?
>
> Sieh im Datenblatt des von dir verwendeten Microcontroller nach.

Die Lastkapazität ist eine Eigenschaft des Quarzes, nicht
des Controllers.  Der Controller trägt allerdings (durch die
Pinkapazitäten) zu einem Teil zur Lastkapazität bei.  Diese
addierst du zu den externen Kondensatoren, und dann schaltest du
beide so erhaltenen in Reihe, damit hast deine effektive Lastkapazität,
die der Quarz "sieht".

OK, ein gutes Datenblatt eines Controllers könnte diese Berechnung
erwähnen, muss aber nicht.

Autor: Peter S. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ok also soll ich überhaupt den gesamten Mikrocontroller per externen 
Clock betreiben? Es wäre nämlich durchaus möglich den Mikrocontroller 
per internen Oszillator laufen zu lassen und nur für den Timer den 
externen Takt verwenden:

Aus Datenblatt:
 EXTERNAL CLOCK/8 (Synchronized to the System Clock)

Ist es ein Problem, dass der externe Takt dann mit dem System Clock 
synchronisiert ist? Das schafft doch dann wieder Ungenauigkeiten, oder?

@Peter R.:

So wie in Option 4, im Datenblatt auf Seite 189: 
http://pdf1.alldatasheet.com/datasheet-pdf/view/11...
?

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Peter S. schrieb:

> Ok also soll ich überhaupt den gesamten Mikrocontroller per externen
> Clock betreiben? Es wäre nämlich durchaus möglich den Mikrocontroller
> per internen Oszillator laufen zu lassen und nur für den Timer den
> externen Takt verwenden:

Das ist letztlich wurscht.

> Ist es ein Problem, dass der externe Takt dann mit dem System Clock
> synchronisiert ist?

Das ist normal.  Der Controller arbeitet intern synchron mit dem
CPU-Takt.

> Das schafft doch dann wieder Ungenauigkeiten, oder?

Einen Jitter im Bereich eines CPU-Taktes.  Den wird dein Rotor
vermutlich verkraften. ;-)

Autor: Peter S. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Peter R. schrieb:
> Nimm lieber einen fertigen Quarzoszillator. Den kann man ohne große
> Vorkenntnisse einsetzen: richtige Betriebsspannung anlegen und den
> Kontroller für externen Takt programmieren.
> Es gibt davon auch temperaturkompensierte Versionen, TCXO's, die nur
> wenige ppm Frequenzfehler haben, zu einem noch erträglichen Preis.

Könnte mir bitte jemand die Typenbezeichnung eines guten 
Quarzoszillators geben (als Anhaltspunkt zum Suchen)?

Habe ich das richtig verstanden, der muss dann nur an XTAL1 
angeschlossen werden, und XTAL2 bleibt in der Luft (Option 4 im 
Datenblatt)?

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Michael Roek-ramirez schrieb:
> Die eingebauten Oszillatoren in den uC sind ganz miserabel.
> Schlechte Genauigkeit und noch schlechterer Temperaturgang!

Das scheint meinen MCs (Atmel 8051, AVR) aber niemand gesagt zu haben, 
daß sie das müssen.

Die laufen nämlich alle besser als 1min/Jahr. Und nur billigst MC-Quarze 
dran (11,0592MHz).
Und eine MC-Uhr steht sogar auf dem Heizkörper (im Winter oft mal 50° 
heiß).

Auch mein MC-Frequenzmesser läuft sehr genau.
Ich kann damit z.B. schön sehen, wie ältere TTL-Quarzoszillatoren 
(10..80MHz) wegdriften, wenn sie sich nach Anlegen der VCC leicht 
aufheizen.


Peter

Autor: bingo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Könnte mir bitte jemand die Typenbezeichnung eines guten
> Quarzoszillators geben (als Anhaltspunkt zum Suchen)?

Such mal bei farnell nach dem Stichwort TCXO

Autor: Carsten Sch. (dg3ycs)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Peter S. schrieb:
> Peter R. schrieb:
>> Nimm lieber einen fertigen Quarzoszillator. Den kann man ohne große
>> Vorkenntnisse einsetzen: richtige Betriebsspannung anlegen und den
>> Kontroller für externen Takt programmieren.
>> Es gibt davon auch temperaturkompensierte Versionen, TCXO's, die nur
>> wenige ppm Frequenzfehler haben, zu einem noch erträglichen Preis.
>
> Könnte mir bitte jemand die Typenbezeichnung eines guten
> Quarzoszillators geben (als Anhaltspunkt zum Suchen)?

Es kommt ein wenig darauf an wie viel du ausgeben möchtest...
In der Preisklasse bis 5-25 Eur. kommen ein paar Brauchbare TCXOs in 
Frage (wie schon geschrieben). Wobei die Modelle für unter 10Eur. leider 
etwas Probleme mit deiner unteren Temperaturgrenze haben könnten. Die 
sind oft für -20/-30 bis +80 C Spezifiziert.
Wenn -50C tatsächlich eine harte Anforderung ist, dann kommst du auch 
schon nahe an die 100 Eur. Dran.
Machbar ist in der Preisklasse unter 25 Eur. auf jeden Fall eine 
Genauigkeit von ca. 3ppM oder besser.

Sind 100Euro oder mehr für dein Projekt kein Problem dann könnte man 
auch über OCXO nachdenken (Geheizte Oszillatoren) was man dann noch mit 
D-OCXO steigern könnte. Allerdings kann man dann auch schonmal 500 Eur. 
dafür ausgeben. Genauigkeiten von 0,01 bis 0,000xxx sind damit denkbar.

Ist natürlich weit weniger als deine Minimalanforderung, schafft aber 
mehr Raum für andere Toleranzen ;-)

Von ganz einfachen µC Quarzen oder CMOS Oszillatoren der Preisklasse von 
unter 5Eur (tw bei Quarzen um weniger als 50ct) würde ich Abstand 
nehmen, denn da ist schon innerhalb eines geringeren Temperaturbereichs 
als von dir gefordert 50ppm Drift angegeben. Verbunden mit einer 
Herstellertoleranz von 30 ppm. Das kann sich addieren. Und wenn du den 
Temp. Bereich dann nach unten überschreitest, dann kann es auch weit 
mehr als 80ppm Summentoleranz sein.
Die einfachen Cmos Oszillatoren haben sowieso nur 100ppm.

Natürlich sind auch diese Taktgeber oft besser als angegeben, aber 
garantieren kann dir das niemand.

Wenn du etwas sparen willst und zugang zu alter elektronik hast, dann 
findet man solche Takquellen oft auch in  hochwertigen Funkgeräten oder 
(industriellen) Breitbandmodems wie z.B. die IDUs von 
Richtfunkfeldern...

Ach ja, falls du auch mit 12,8MHz klarkommst kann ich dir gegen 
großzügiges Porto gerne ein oder zwei TXCOs zukommen lassen. Die sind 
dann auch schon vorgealtert. (Stammen aus C-Netz Telefonen)
OCXOs habe cih hier auch, diejenigen de ich abgeben kann haben 
allerdings etwas krumme Frequenzen. Wenn dir aber einen Frequenz von 
z.B. 18,688000 nichts ausmacht, dann kannst du gerne auch davon ein oder 
zwei gegen Porto haben (deutlich weniger als 0,x ppm -Stammen aus Indoor 
Units von Richtfunkanlagen als Taktgeber für die Modemeinheit)
>
> Habe ich das richtig verstanden, der muss dann nur an XTAL1
> angeschlossen werden, und XTAL2 bleibt in der Luft (Option 4 im
> Datenblatt)?

Das kommt auf den Controller an. HAbe ich das jetzt überlesen oder hast 
du keine Angabe dazu gemacht? Bei einem PIC würde das z.B. passen.

Gruß
Carsten

Autor: tt2t (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> @tt2t: Laut datenblatt geht der doch nur auf Sekunden genau oder?
> Außerdem ist mir die aktuelle Zeit eher weniger wichtig. Wichtiger ist
> ein auf 5 minuten gesehen möglichst genauer Takt.

> Es wäre nämlich durchaus möglich den Mikrocontroller
> per internen Oszillator laufen zu lassen und nur für den Timer den
> externen Takt verwenden

Der DS3231 hat einen 32.768 kHz Ausgang, den kannst Du mit einem Pin 
Deines µC abfragen bzw. besser einen µC-internen Timer/Counter 
hochzählen oder Du fragst über I2C die sekundengenaue Uhrzeit ab und 
führst entsprechend nach. Vorteil der letzten Methode ist, dass sich der 
µC nicht um die Uhrzeit kümmern muss, sondern diese dann abfragen kann, 
wenn er dazu Zeit hat. Das spart enorm Code und damit Programmierarbeit.

Den DS3231 gibt es als DS3231SN mit -40° bis +85°C, die Genauigkeit ist 
3.5 ppm von -40° bis 0°, 2 ppm von 0° bis +40° und 3.5 ppm von +40° bis 
+85°. Besorg Dir doch ein Sample bei Maxim und teste das mal. Ich habe 
letztes ein Exemplar des DS3231 gegen eine DCF-Uhr laufen lassen, da 
betrug nach 180 Tagen die Abweichung nur 7 Sekunden (knapp 0.5 ppm ). 
Auf dem Balkon war es im Frühjahr noch teils unter 0° und im Sommer in 
der Sonne locker 50°.

Autor: tt2t (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe mir nochmal Deine o.a. Anforderungen durchgelesen: kann Deine 
Mechanik denn auf 0.5 Bogensekunden genau arbeiten ??? Das muss ja ein 
high-tech-Teleskop sein.

Dann würde ich die 32.768 kHz an einen geeigneten Eingang des µC legen, 
der löst ca. alle 305 µsec einen Interrupt aus und führt das Teleskop 
dann ggf. nach (bzw. jeden xx-ten Interrupt)

Autor: Joe (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Habe vor einiger Zeit mal das gelesen.

Beitrag "Genaue Sekunde und Zeitscheibe mit Timer0 erzeugen"


Geht mit jedem Quarz.

Autor: Carsten Sch. (dg3ycs)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Joe schrieb:
> Habe vor einiger Zeit mal das gelesen.
> Beitrag "Genaue Sekunde und Zeitscheibe mit Timer0 erzeugen"
> Geht mit jedem Quarz.

Das hat aber mit dem Anliegen des TE wenig zu tun...
Denn der TE will ja keine "Sekunde" sondern einfach eine genaue 
Referenz.

Und das GENAU in dem Thread ist nun einmal auch abhängig von der 
genauigkeit des Quarzes. Mit einem 100ppm Quarz kann man im besten Fall 
auch nur eine auf 100ppm genaue Zeit ableiten.

Ausnahmen sind da nur möglich wenn der Quarz "Abstimmbar" ist und dieser 
Langzeitsynchronisisert wird, wie es z.B. bei GPS oder DCF77 Normalen 
gemacht wird.
(Dort gibt es einen möglichst genauen Primäroszillator - von diesem wird 
ein Zeitsignal abgeleitet was in regelmäßigen Abständen mit dem über GPS 
oder DCF übermittelten Zeitsignal verglichen wird. Eilt die eigene Zeit 
vor, so wird der Oszillator "nach unten" getunt, eilt die Zeit nach, so 
wird die Frequenz erhöht. (In sehr geringen Maße natürlich).
Je länger das dann so läuft um so genauer wird das dann...
(Daher ist ein DCF oder GPS Normal anfangs nur so genau wie sein 
Primäroszillator. Denn direkt aus dem DCF Signal oder dem GPS Signal 
kann man keinen brauchbaren Takt für µC oder Messanwendungen ableiten)

Gruß
Carsten

Autor: Ralli (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ganz schön umständlich gedacht, was hier als Lösungs-
angebot eingebracht wurde.

Nehmen wir doch einfach mal die geforderten Zahlen:

1 Tag: 360° = 21.600' = 1.296.000"
5 Minuten: 1,25° = 75' = 4.500" = (9000/2)"

Egal, ob Sonnen- oder Sterntag, dazwischen liegt nur
die Konstante 1,002737... bzw. der Kehrwert.

Also darf der Fehler (für 1/2") 1/10.000 = 100ppm sein.

Das müsste ein direkt am µC angeschlossener Quarz
bei +30° .. -30° C noch schaffen, ein TCXO bestimmt.

Macht denn der Rest der Teleskopsteuerung diese
Temperaturen mit, oder auch nur der µC?

Übrigens:
Schließt man diesen Quarz an XTAL1/2 oder den TCXO
an XTAL1 an und setzt die FUSEs entsprechend, ist der
interne Oszillator abgeschaltet.

Bei dieser Anwendung sollte es auf die ABSOLUTE
Genauigkeit der Quarzfrequenz weniger ankommen.
Ansonsten ist meine Erfahrung: 8 MHz-Quarz am AVR mit
2 x 27 pF fangen schon ganz gut an. Ersetzt man einen
davon mit einem Trimmer 10...36 pF, kriegt mans gut hin.

Autor: Tüll (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Peter S. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für eure zahlreichen Vorschläge!

Ich habe mir nun einen TXCO herausgesucht der meiner Meinung nach die 
Aufgabe bestens erfüllen sollte:

http://at.rs-online.com/web/search/searchBrowseAct...

Highlights: 20Mhz, 3.3V, 0.5ppm Frequenzstabilität, 2ppm 
Frequenztolleranz, 10pF Load Kapazität, Preis 2,37€

Kann ich diesen für meinen Mikrocontroller verwenden (Silabs 8051F120)?
Datenblatt: 
http://pdf1.alldatasheet.com/datasheet-pdf/view/11... 
(Seite 189)

Bzw. ich verstehe noch nicht ganz, wie ich so einen TXCO hineinhängen 
muss? Genügt es wenn ich den Output vom TXCO mit XTAL1 verbinde und VDD 
und GND verbinde (und XTAL2 bleibt frei?)? Benötigt der nun auch 
Kapazitäten?

Im Datenblatt wird erwähnt, dass der so nahe als möglich am XTAL1 Pin 
platziert werden soll (im Layout). Leider habe ich erst ab ungefähr 
3.5-4cm Leiterbahnlänge die Möglichkeit den TXCO zu platzieren. Ist das 
ein Problem?

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Peter S. schrieb:

> Bzw. ich verstehe noch nicht ganz, wie ich so einen TXCO hineinhängen
> muss? Genügt es wenn ich den Output vom TXCO mit XTAL1 verbinde und VDD
> und GND verbinde (und XTAL2 bleibt frei?)?

Ja, so sollte es sein.  Details müsste dir das Datenblatt des
Controllers sagen.

> Benötigt der nun auch
> Kapazitäten?

Nein.

> Im Datenblatt wird erwähnt, dass der so nahe als möglich am XTAL1 Pin
> platziert werden soll (im Layout). Leider habe ich erst ab ungefähr
> 3.5-4cm Leiterbahnlänge die Möglichkeit den TXCO zu platzieren. Ist das
> ein Problem?

Sollte bei 20 MHz noch kein Thema sein.  Du könntest noch einen 100-Ω-
Widerstand als Serienterminierung an den Anfang der Leitung setzen,
um Überschwingen zu dämpfen.

Autor: Peter S. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ok dann werde ich den nun kaufen!

Nochmal vielen dank für eure Hilfe!

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.