Hallo Leute!
Ich bin ziemlichter Anfänger und möchte mir eine Lichtschranke selber bauen.
Dafür habe ich mir diesen Empfänger
http://www.conrad.de/ce/de/product/171115/IR-Empfaenger-Modul-Vishay-TSOP-4838-Wellen-Laenge-950-nm
und diesen Sender
http://www.conrad.de/ce/de/product/171140/GaALAs-IR-Sendediode-Vishay-TSAL-6200-Gehaeuseart-5-mm-Wellen-Laenge-940-nm/SHOP_AREA_26432
gekauft. Sind die geeignet?
Ich habe aber keine Ahnung wie ich an das ganze heran gehen soll.
Habe schon mehrere TUtorials und vorherige Projekte durchgelesen aber keines gefunden welches mit ähnlichen sensoren funktioniert hat.
Über tipps und Links würde ich mich freuen!!
CTSMeatboy
Zumindest das Empfänger-Modul ist eigentlich für eine Infrarot-Fernsteuerung gedacht und nicht in erster Linie für Lichtschranken (Filterung 38kHz Modulation).
Wofür willst Du die Lichtschranke denn brauchen? Ist Infrarot-Licht Voraussetzung? Welche Strecke willst Du überbrücken? Inwiefern hängt Dein Projekt mit dem Arduino zusammen?
erstmal danke für die antwort.
ich brauche die lichtschranke ( sollen dann mehrere hintereinander werden ) für messungen bei welchen eine bahn vorbeirullt und ich dann anhand der messwerte verschiedene physikalische regeln beweisen und erklären soll.
die zu überbrückende strecke sind ca 10- 15 cm.
ich will letztendlich werte bekommen die ich dann in processing in ein diagramm umwandle und dadurch anschaulicher mache.
ctsmeatboy
Du kannst mit einem 38Hz getakteten LED und dem Empfänger eine Lichtschranke aufbauen. Code kann ich Dir heute abend geben.
Der Vorteil dieser kombination ist daß der Ampfänger unempfindlich gegenüber Umgebungslicht ist. Da er aber getaktet ist ist er für schnelle Messungen nicht geeignet ( für Genauigkeiten in mS Bereich).
Grüße Uwe
.
ok wäre super cool wenn du mir den schicken könntest.
danke uwe!
ctsmeatboy
Hatten wir doch vorgestern noch:
Bewegungsschranke
PS: Im Projektbericht steht auch genau drin wie du das zusammenbauen kannst, einschließlich dem Generator für die 38kHz
#define RXTSOP 3 //Pin TSOP
#define TXIR 2 //LED IR
#define LED13 13 //LED on pin 13
//flag
boolean transmitting_IR; //transmission flag
// turn_off , turn_on, detect functions come as is from
// http://www.eng.utah.edu/~cs1410/Labs/lab09.html
void turn_off_IR ()
{
// Instead of just adjusting the output on pin 11, this code also
// turns off the timer controlling the PWM output on pin 11
TCCR2A = 0; // Disconnect PWM
TCCR2B = 0; // Stops the timer
OCR2A = 0; // No timer top
digitalWrite(TXIR, LOW); // Ensure output is off
transmitting_IR = false;
}
void turn_on_IR ()
{
// Set up Timer2 (which can be connected to pins 3 and 11)
// For full details, see:
// arduino.cc/en/Tutorial/SecretsOfArduinoPWM
// The syntax here has me baffled, but the patterns of usage
// are clear if you look at the ATMega328 diagrams.
// _BV appears to stand for 'bit value'
// Different bits need to be set to control each timer
// Refer to diagrams for clarity
TCCR2A = _BV(WGM21) | _BV(COM2A0); // This mode toggles output once per timer cycle
TCCR2B = _BV(CS20); // Do not scale the clock down - use 16 MHz timer rate.
OCR2A = 210; // Divide sys. clock by 210, 1/2 cycle = 76 khz, 1 cycle = 38 khz
// Output pin 11 should now be emitting a 38 khz signal.
transmitting_IR = true;
}
void detectIR()
{
if(digitalRead(RXTSOP)){
digitalWrite(LED13 ,LOW);
}else{
digitalWrite(LED13 ,HIGH);
}
}
void setup(){
pinMode(TXIR, OUTPUT);
pinMode(RXTSOP, INPUT);
turn_on_IR();
delay(100);
}
void loop(){
detectIR(); // search for IR
delay(50);
}
danke an alle für eure hilfe.
aber ich verstehe nicht so richtig was mit der38kHz led gemeint ist?
kann ich meine sendediode jetzt nichtmehr benutzen?
kann ich meine sendediode jetzt nichtmehr benutzen?
Doch kannst Du, aber Du musst sie so betreiben, dass sie 38'000 Mal pro Sekunde ein- und ausgeschaltet wird, sonst sieht der Empfänger nichts davon. Das wird deshalb gemacht, weil in unserem Umgebungslicht einiges an Infrarot enthalten ist und somit der Empfang empfindlich gestört sein könnte. Im Umgebungslicht ist allerdings (normalerweise) keine Quelle enthalten, die das Infrarot-Licht mit einer hohen Frequenz ein-/ausschaltet, womit alles andere Licht einfach herausgefiltert werden kann.
Der Sketch von Uwe programmiert einen PWM-Ausgang so, dass er die gewünschten 38kHz liefert.
pylon:
Der Sketch von Uwe programmiert einen PWM-Ausgang so, dass er die gewünschten 38kHz liefert.
Das Beispiel mit der Bibiothek von Jomelo tuts auch. Da ist die Programmierung des Timers für die Rechteckspannung aber in der Bibliothek versteckt.
Grüße Uwe
ok verstanden vielen dank nochmal an alle!