Lichtschranken mit TSOP17xx, TSAL6200 und ATmega16.

OP #2029473
Lesenswert?

Hallo,

ich beschäftige mich erst seit Kurzem wieder mit Mikrocontrollern und 
Elektronik. Ich habe dazu einige Grundlagen vor vielen Jahren während 
meiner Ausbildung erlernt.

Folgendes Problem soll gelöst werden.

Acht kurze Strecken (20cm) sollen mittels Lichtschranken überwacht 
werden. Immer wenn jemand eine der Strecken mit der Hand durchkreuzt, 
soll die Nummer der Lichtschranke an einen angeschlossenen Rechner per 
serieller Schnittstelle übermittelt werden. Das system muss bei 
Temperaturen zwischen 5 und 40 Grad Celsius stabil laufen.

Folgende Dinge habe ich schon geschafft.

ATmega16 mit 8MHz externen Takt ist auf Steckbrett aufgebaut. Dieser 
kann programmiert werden. Ich nutze dazu AVR Studio 4 und WINAVR. Ich 
programmiere also in C. Als Lichtschranken-Ersatz sind momentan Taster 
angeschlossen und die Übermittlung an den Rechner funktioniert.

Kommen wir nun zum eigentlichen Problem.

Die Lichtschranken müssen die Taster ersetzen. Damit Fremdlichteinflüsse 
vermieden werden, soll gepulstes Licht verwendet werden. Als Empfänger 
bieten sich dadurch die TSOP17xx Bausteine an. Diese können direkt an 
den µC angeschlossen werden. Mein Problem ist aber die Signalerzeugung 
für die Senderdiode (TSAL6200).

Wie kann ich das benötigte Signal mit dem ATmega16 erzeugen? Das Signal 
muss z.B. beim TSOP1738 38kHz betragen und nach 10 bis 70 cycles für 
min. 14 cycles unterbrochen werden.

Ich habe schon einige Tutorials und Anleitungen zu Timern und PWM 
gelesen, aber noch nichts passendes dabei gefunden. Freue mich auf eure 
Anregungen.

Viele Grüße,
Martin
OP #2030472
Lesenswert?

Hallo AJKANER,

danke für den Tipp. Der Preis ist nicht das Problem, zumal die Dinger 
für
ca. 2,50EUR zu beschaffen sind. Hat jemand damit Erfahrungen gemacht?

Die Strecke zwischen Diode und Empfänger ist ca.20cm lang und die Hand 
kann sehr dicht am Empfänger die Strecke unterbrechen.... unter 
http://www.hc08.eu/de/articles.php?article_id=3 habe ich gefunden, dass 
dies ein Problem sein kann, da die Gegenstände 7 bis 10 CM entfernt sein 
sollen?
#2030513
Lesenswert?

> Ich habe schon einige Tutorials und Anleitungen zu Timern und PWM
> gelesen, aber noch nichts passendes dabei gefunden.

38kHz liegt noch im machbaren Bereich bei 8Mhz.
Du nimmst den Timer 1 und den Modus 14 oder 15, bei dem du den Top-Wert 
vorgeben kannst. Die 8-Bit Timer haben leider keinen derartigen Modus.

8000000 / 38000 = 210

Also Top Wert auf 210, den OCR Wert auf die Hälfte davon und du hast 
deine 38kHz.
Gast #2030702
Lesenswert?

Ein TSOP spricht bei 38 kHz innerhalb von 7 Impulsen von off nach on an 
und innerhalb von 15 Impulsen von on nach off. Das sind bei 38 kHz 180 
bzw. 390 µsec. Du musst dir halt im klaren darüber sein, ob eine solche 
Verzögerung für Deine Anwendung tragbar ist.
OP #2030710
Lesenswert?

die 38kHz bekomm ich also recht leicht erzeugt. Muss ich denn beim 
TSOP17xx eine Sendepause haben oder gehen die auch bei "Dauerbeschuss" 
mit 38kHz? Wie könnte ich die Sendepause einrichten und den 
Schaltvorgang erst dann erkennen wenn die Pause mehrfah 
vorbeigeschritten ist? Die Verzögerung bis ca. 250ms ist bei der 
Anwendung kein Problem.

Ich werde mir heute Abend auf jedenfall mal einige IS471F-SH und 
TSOP17xx bei Conrad holen (Haben einen in Dresden) und morgen beides 
ausprobieren.

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