Frequenzmessung bei Infrarotempfang

Gast #86758
Lesenswert?

Hallo,

ich möchte ein Infrarotsignal (moduliert mit Trägerfrequenz) auf einem
8515 empfangen und dazu noch die Trägerfrequenz des Signals messen!

Benötige ich dazu zusätzliche Hardware oder kann ich das Signal einfach
an meinen Atmel legen?
Wie würde so eine Messung der Trägerfrequenz funktioniern (Timer0?)?

Danke,
Andi
Gast #86759
Lesenswert?

hi,

du kannst 'nen timer als counter betreiben und die overflows pro
torzeit (zweiter timer) zählen. wenn torzeit rum (z.b. 1 sec.)
timerstand auslesen + overflows x255 (8-bit timer), dann haste die
freq. des trägers. funzt gut bis ca. 1/2 quarzfreqenz.

gruss, harry
Gast #86760
Lesenswert?

Hallo,

das Problem dürfte sein, die Trägerfrequenz soweit zu verstärken, um
ein sauberes, starkes Signal für den AVR zu bekommen. Das kann schon
mal etwas Aufwand sein. Früher war eh alles diskret aufgebaut, heute
bekommst Du die Teile eigentlich nur noch fertig im Chip incl. Filter
und Verstärkungsregelung, wo am Ausgang nur noch das demodulierte
Signal auftaucht...


Gruß    R A L F
Gast #86761
Lesenswert?

Dies trifft auf die integrierten IR Empfänger wie den TSOP18xx, TSOP48xx
und SFH5110 zu. Für stinknormale IR Phototransistoren oder Photodioden
aber nicht. Aber gereade bei denen wirst du um externe Verstärkung und
Filterung des Signals nicht drumherum kommen.

Gruß Hagen
#86762
Lesenswert?

Ich denke mal es geht darum die Frequenz einer anderen FB zu lernen.

In dem Fall ist es zumutbar, die FB direkt an den Fototransistor zu
halten.

Du brauchst also nur einen extra Fototransistor mit Arbeitswiderstand
und ab damit z.B. auf den T0 Eingang.
Frequenzmessung wurde ja schon öfter beschrieben:

fx = fQuarz * n / m


Peter
Gast #86763
Lesenswert?

Das Problem bei fester Torzeit:
Die Fernbedienung sendet nur kurz, Obwohl die Trägerfrequenz 36kHz
beträgt, kommen warscheinlich nicht mehr als 4000 Impulse pro Sekunde
an...
Ich messe die Frequenz mit nem PC Oszilloskop und da mit FFT. Dann
bekommt man genau die Frequenz angezeigt.
Gast #86765
Lesenswert?

Viel Spaß beim Schätzen... Denn eine genaue Messung kann es kaum sein,
wenn man 889us als Torzeit nimmt. Auflösung 1kHz +/-1 digit.. Ergibt
2kHz  Gesamtgenauigkeit, dazu kommen noch die restlichen
Messungenauigkeiten.
#86766
Lesenswert?

@Benedikt,

wußte nicht, daß Du es so genau brauchst.

Bei 16MHz sind das 16 * 889 = 14224 Impulse.

Damit komme ich auf:

fx = 16e6 * 1 / 14224 = 1124,86 Hz

Die Genauigkeit ist dabei +/-1 Impuls, also

16e6 * 1 / 14223 - 1124,86 = 0,08 Hz

D.h. es ist auf >4 Digits genau.

Wenn Du es noch genauer willst, soweit mir bekannt sind die Pulse immer
mindestens 6 Takte lang.
Dann mußt Du allerdings auch erstmal den Quarz genau ausmessen und dann
noch die Temperatur kompensieren.


Peter
Gast #86767
Lesenswert?

Da ist aber ein kleiner Fehler drin...
z.B. das RC5 Signal wird dadurch übertragen, dass immer abwechselnd 32
Impulse übertragen und dann 32 Impulse (1Impuls = 36kHz) nicht (für
eine logische 0).
Oder anderstrum für eine logische 1.

Also am Stück 32Impulse, was 889us sind.
Misst man nun den Abstand zwischen 2 Impulsen, kommt man auf 444,444
Impulse, also etwa 80Hz. Das reicht ja.
Ich verwende eigentlich die Impulsdauermessung, sondern nur die
Impulszählung, denn so werden viele Werte gemittelt und das Ergebnis
ist genauer.
Gast #86768
Lesenswert?

@Peter

"fx = fQuarz * n / m"

Was ist denn n und m ?

Brächte ich denn nicht noch hinter den Fototransistor einen
Schmitt-Trigger um ein sauberes TTL-Signal zu erhalten?

Gruß,
Andi
Gast #86769
Lesenswert?

@Peter

"fx = fQuarz * n / m"

Was ist denn n und m ?

Bräuchte ich denn nicht noch hinter den Fototransistor einen
Schmitt-Trigger um ein sauberes TTL-Signal zu erhalten?

Gruß,
Andi
Gast #86771
Lesenswert?

Bevor ich dann aber den Code an meinem AVR auslesen möchte, muss ich
dann nicht vorher das Signal einer Bandpassfilterung/Demodulation
unterziehen (machen die TSOPs und SFHs ja auch)?

Wenn ja, was benötige ich dafür für Hardware?

Danke,
Andi

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren