Forum: Mikrocontroller und Digitale Elektronik IR-LED und SFH 5110-36


von a guest (Gast)


Lesenswert?

Servus!

Ich mache gerade meine ersten Versuche mit der IR zur Datenübertragung.
Zuerst einmal habe ich mir zwei kleine Module gebastelt:

1) Sender mit einer mir leider unbekannten IR-LED, da es ein restposten 
war.

Ich habe also mal diesen LED-Rechner genommen:
http://www.dieaerzte.de/vdb/
Und 20mA mit den vorgeschlagenen 1.5V benutzt -> 175 Ohm
Hab dann zwei widerstände kombiniert und kam so auf ~170 Ohm.

Die Sender schaltung ist also bloß zwei Stifte für VCC und Masse, zwei 
widerstände und die LED.

2) Empfänger mit einem SFH 5110-36.
Datenblatt:

Zur Spannungsglättung wird dort ein 47µF kondensator und ein 100 Ohm 
widerstand vorgeschlagen. Da ich gerade keinen 47µF zur hatte habe ich 
den weggelassen und mal nur den widerstand eingebaut. Der kondensator 
kommt morgen wenn die läden wieder offen haben dazu.

---

Nun habe ich das ganze an einen Atmega32 gekabelt und versuche nun bloß 
zu erreichen, dass der Empfänger das signal der LED erkennt. Noch keine 
besondere Kodierung.

Der µ-Controller ist mit internen 1 MHZ getaktet.
Also habe ich einen Vorteiler von 1024 genommen.
Und als OCR vergleich den wert 37 benutzt.
1000000 Herz / 1024 -> 976 Herz
976 Herz * 37 = 36112 Herz -> ~ 36 Kiloherz
1
TCCR0 = 0x00;
2
TCCR0 |= ( (1<<WGM01) | (1<<COM00) | (1<<CS02) | (1<<CS00) );
3
OCR0  = 37;

Was der emfänger bekommt habe ich auf eine eine LED an einem anderen 
port weitergeleitet. Steckt man das Stromkabel zum empfänger aus 
leuchtet die LED (0), steckt man es ein ist sie aus (1), da der 
datenausgang des SFH 5110-36 low aktiv ist.

Hält man nun die LED mit dem trägersignal vor den Emfänger passiert 
nichts.
Wenn ich das richtig verstanden habe sollte die LED am anderen port aber 
angehen, wenn der empfänger ein IR signal bekommt.

Wo ist der Fehler?
Wenn ich das Kabel zum Sender mehrmals ein und ausstecke flackert die 
empfänger led manchmal auf.
Kann man daraus schließen, dass die wellenlänge der IR-LED stimmen muss 
und der fehler im der frequenz des trägersignals liegt?

Ich hoffe ihr könnt mir helfen,
Ein Gast

von a guest (Gast)


Lesenswert?

entschuldigung, habe ausverstehen den link zum datenblatt vergessen 
reinzukopieren: http://neo.dmcs.p.lodz.pl/tm/pdf/sfh5110.pdf

von a guest (Gast)


Lesenswert?

noch ein paar infos:

Wenn der timer den vergleichswert 37 erreicht wird OC0 invertiert.
Nimmt man einen höheren vergleichswert als 37 kann man die IR-LED über 
eine Handy-Cam blinken sehen, sie funktioniert also.

von a guest (Gast)


Lesenswert?

ich habe zufällig die LED bei reichelt wiedergefunden.
der maximale durchlass-strom beträgt 150mA.
habe also den widerstand auf 30 ohm verkleinert.
wenn ich jetzt die led direkt vor den empfänger halte flackert die 
empfänger led ab und an mal auf.
was ist nun noch das problem?
led zu schwach? aber so schwach?
wie genau muss das 36khz trägersignal sein?

von a guest (Gast)


Lesenswert?

warum hat eigentlich niemand lust mir mal zu helfen?
ich bemühe mich so viele infos wie möglich zu posten, vielleicht 
zuviele? :P
naja, obs wer liest oder nicht, aktueller stand:

die IR-LED scheint eine CQY-99 zu sein.
http://www.datasheet4u.com/html/C/Q/Y/CQY99_ETC.pdf.html
sie ist jetzt über ein mosfet mit gate an controller, source an VCC und 
drain über 30 ohm an IR-LED nach ground verbunden.

wegen den 36khz bin ich jetzt völlig verwirrt nachdem ich mal den code 
des asuro roboters angeschaut hab:
1
// timer 2 is set up to generate 36 KHz square wave, output compare mode.
2
TCCR2=0b00001010;
3
OCR2=139;
4
TIMSK|= (1<<(OCIE2)); // timer 2 output compare interrupt enable
5
sei(); // global interrupt enable

es handelt sich um einen atmega8 mit 8MHZ getaktet...
wenn ich mir die bits anschaue wie sie im TCCR2 gesetzt werden heißt das 
für mich:
- vorteiler von 8
- CTC

wie kommt man auf 36KHZ wenn in den interrups der ausgang getoggelt 
wird, der takt 8 MHZ / 8 ist und der vergleichswert 139?
irgendwas muss ich grundlegend falsch verstanden haben :(
würde mich freuen wenn mir jemand einen hinweis gibt was ;-)

bis auf eine antwort vielleicht?
ein gast

von a guest (Gast)


Lesenswert?

http://www.societyofrobots.com/member_tutorials/files/TSOP2.pdf
hier findet man den code des asuro roboters.

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
Noch kein Account? Hier anmelden.