(Licht-)Schranke - Sensor für Drehung

Hallo erni-berni,

vielen dank für deine tips.

Das hilft mir schon sehr weiter... Ich werde mir am Montag so eine Reflexlichtschranke mal kaufen und ein bisschen herum probieren.

So wie ich das jetzt lese, schaltet dieses Ding wie ein Relais?
Bei Pin 1 und 6 lege ich die Betriebsspannung von 5V an... und sobald die Alufolie reflektiert, schaltet diese Reflexlichtschranke zwischen 3 und 4 auf Durchfluss und ich kann wie in einem Relais den Motorbetrieb unterbrechen?
(kenne mich leider noch schlecht auf diesem Elektronikgebiet aus :smiley: )

Hoffe ich habe das so richtig verstanden. Bitte um Korrektur.

LG
Etzl
ps. das mit Interrupt muss ich mir nochmal genauer ansehen. Ist sicher die elegantere lösung. Gibt es da gute Anleitungen? Werd mich auch mal durch-googeln...

Hallo Etzl,
der Vergleich zum Relais passt nicht ganz, passender wäre der Vergleich zum Optokoppler. Ein sehr gutes Tutorial dazu findest du hier: mitchsoft.de. Wichtig ist, dass die Sende-LED vor Pin 1 einen Vorwiderstand benötigt. Im Datenblatt ist If=10mA empfohlen. Bei 5V Versorgungsspannung und der Durchlassspannung der LED von 1,25V ergibt sich nach Ohmschen Gesetz: (5V-1,25V)/0,01A=375 Ohm. Der nächstgrößere Wert in der Normreihe wäre 390 Ohm, es schadet nichts, wenn der Wert auch etwas größer ist, dann wird die Reichweitet der Reflexlichtschranke höchstens geringer, Du kannst ja experimentieren. Pin 6 legst du auf Masse.
Am Fototransistor legst du Pin 3 auf Masse und Pin 4 an einen Eingang des Arduino, wobei du den Pullup des Eingangs aktivieren musst. Immer, wenn Licht auf den Fototransistor fällt, wird er leitend und der Arduino Eingang wird auf LOW gezogen.
Zum Gebrauch von Interrupts solltest du dir mal das Tutorial http://www.arduino.cc/en/Reference/AttachInterrupt durchlesen.

Hallo,

ich hab mir jetzt mal diese Reflex-Lichtschranke bei Conrad gekauft und nach deinen Anweisungen eingebaut:

Pin1 = 5V+ von Arduino - davor 390 Widerstand
Pin 6 = Ground
Pin 3 = Ground
Pin 4 = interruptpin auf Arduino (digital Pin 2 habe ich genommen)

Dannach habe ich an Pin 12 meinen Rotationsmotor angeschlossen, und einmal mit dem Standard Beispiel von der Interrupt Seite probiert.

Leider funktioniert es nicht. Es schaltet nichts.

Entweder ich habe beim Löten etwas kaputt gemacht, oder es irgendwie falsch angeschlossen.
Ich werde es mal mit weniger Widerstand versuchen.
Stimmen Collector und Emitter Anschluss auf Pin 3 und 4...?

Komischerweise schaltet es, sobald ich mit irgend einem leitendem Gegenstand auf eine der 4 Reflexlichtschranken Pins greife. Oder ich die Verbindung zu Arduino unterbreche, schaltet es auch.

Hat jemand eine idee?

LG
thx,
Etzl

Hallo Etzl !

Du hast einen Gleich-Strom-Motor ? ( braucht natürlich Rückmeldung für die Position durch Licht-Schranke oder Reflex-Koppler)

Versuche dich doch mal an Schrittmotoren ( billig aus Disketten-Laufwerken zu gewinnen ) - Du gibst einen Impuls und der Motor dreht sich um einen bestimmten Winkel ( z.B. 1° ) Schrittmotor – Wikipedia

Oder an Servo-Motoren aus dem Modell-Bau ( Servomotor – Wikipedia )

MfG

Hi,

Du hast einen Gleich-Strom-Motor ? ( braucht natürlich Rückmeldung für die Position durch Licht-Schranke oder Reflex-Koppler)

Versuche dich doch mal an Schrittmotoren ( billig aus Disketten-Laufwerken zu gewinnen ) - Du gibst einen Impuls und der Motor dreht sich um einen bestimmten Winkel ( z.B. 1° ) Schrittmotor – Wikipedia

Oder an Servo-Motoren aus dem Modell-Bau ( Servomotor – Wikipedia )

MfG

Ich verwende einen 12V Scheibenwischer Motor vom Auto. Und dieser Motor wird über ein Relais von Arduino an und ausgeschalten. Das dürfte also kein Problem sein.
Das Problem liegt glaube ich bei der Reflexlichtschranke... die noch nicht richtig angeschlossen wurde.

LG
Etzl

die noch nicht richtig angeschlossen wurde.

Male doch mal eine Skizze, scanne sie ein, und veröffentliche sie .

Keine Angst - Gekritzel ist 'volvodani-CAD' :slight_smile:

( nur als Beispiel )

Oder wenn du echte CAD-Programme kannst ( lernen willst ): http://www.cadsoft.de/freeware.htm

MfG

Bitte Gurkengraeber
Mach nur solche Ratschläge die das Thema betreffen und die realisierbar sind. Mit einem Schrittmotor ohne Übersetzung drehst Du keine 68cm Holzplatte; die Hat ein zu grßes Trägheitsmoment.

@Etzl
hast Du den internen PullupWiderstand aktiviert?
Bitte Schick uns Dein Programm.

Grüße Uwe

Mach nur solche Ratschläge die das Thema betreffen und die realisierbar sind. Mit einem Schrittmotor ohne Übersetzung drehst Du keine 68cm Holzplatte; die hat ein zu großes Trägheitsmoment.

Halte ich für realisierbar.

Hi,

also, ich verwende testweise folgende programmierung:

int pin = 12;
volatile int state = LOW;

void setup()
{
  pinMode(pin, OUTPUT);
  attachInterrupt(0, blink, CHANGE);
}

void loop()
{
  digitalWrite(pin, state);
}

void blink()
{
  state = !state;
}

Anschlüsse der Pins bei der Reflexlichtschranke:

Pin1 = 5V+ von Arduino - davor 390 Widerstand
Pin 6 = Ground bei digitalen Pins von Arduino
Pin 3 = Ground bei digitalen Pins von Arduino
Pin 4 = interruptpin auf Arduino (digital Pin 2 habe ich genommen)

Im Datenblatt steht was von "Emitter-Kollektor-Sperrspannung" 7V... Kann das das problem sein, da es von Arduino nur 5V bekommt?

LG
Etzl

Die Beschaltung sieht auf den ersten Blick richtig aus. Wird denn ein Interrupt ausgelöst, wenn du Pin 3 und Pin 4 brückst, bspw. mit einem Stück Draht?

sth77:
Die Beschaltung sieht auf den ersten Blick richtig aus. Wird denn ein Interrupt ausgelöst, wenn du Pin 3 und Pin 4 brückst, bspw. mit einem Stück Draht?

Ja, wird auch ausgelöst...

heißst das, dass meine Reflexlichtschranke kaputt ist? Kann sowas beim löten kaputt gehen?

Ich denke nicht, dass die Reflexlichtschranke beim Löten das Zeitliche gesegnet hat. Du schreibst, dass Anode an 5V mit Vorwiderstand hängt, Kathode an Masse. Das resultiert ja in einem Dauerleuchten der LED. Das kannst du kontrollieren, indem du mit einer Digitalkamera bzw. einem Handy mit Fotofunktion die Diode betrachtest. Die Bildsensoren sind nämlich anfällig für IR-Licht. Solltest du ein permanentes Leuchten bemerken, ist die Reflexlichtschranke in Ordnung.

ich sehe mit meiner kamera LEUCHTEN,

dh, das ding funktioniert...

kann ich das signal mit einer alufolie zum empfänger überhaupt umleiten?

Das ist ja eine Reflexlichtschranke, die genau für diesen Anwendungsfall gedacht ist. Probier doch mal manuell, die Alufolie vor den Sensor zu halten. Vielleicht ist dein Abstand zur reflektierenden Fläche zu groß. Wo du uns schon mal darauf aufmerksam gemacht hast: nimm mal deine Kamera und mach uns ein schönes Bilöd deines Aufbaus. :wink:

Ich hab jetzt mal ein hübsches Bild...

ich glaub nicht, dass sich jemand auskennen wird :smiley:
ist etwas improvisiert... Aber ich wollte erstmal nur den interrupt testen...

Hoffe ihr versteht es irgendwie...

lg Etzl :smiley:

[edit: img deleted]

Okay, ist mir jetzt ehrlich gesagt ein bisschen zu viel Gehirnakrobatik, ich schaue nochmal raus, wenn ich zuhause bin. Wenn ich es schaffe, werde ich mal den Spaß nachbauen, hab noch einige CNY70 rumzuliegen. Ansonsten, dürfen auch andere mal ihre Ideen zur Fehlerbehebung in den Raum stellen.

ich zeichne heut abend auchnochmal einen schaltplan, so wie ich es jetzt gebaut habe... ist vielleicht verständlicher :smiley:

sth77 + Etzl sind das selbe.

Macht aber nix, weil beide sind cool :slight_smile:

So, jetzt hab ichs geschafft...

Eagle ist ziemlich cool...
Ist meine erste Zeichnung (wenn ich rausfinde, wie man einfärbt, kommt noch mehr Farbe rein :smiley: )

Was ab "Relais, Motor usw." passiert ist nicht so wichtig, weil das funktioniert... :smiley:
Pin 12 könnte auch ein LED sein, welches ich mit interrupt an und aus machen möchte.

Hier nochmal meine eingebaute Reflexlichtschranke.

Den interrupt auslösen, versuche ich mit einer Alufolie, die ich in verschiedenen Abständen (1-5mm) über dem LED hin und herschiebe... doch nichts passiert :frowning:

Hoffe es hat jemand eine idee.

vielen dank schonmal,

LG
Etzl

Hallo Etzl,
ich bin mir nicht sicher, aber muss der INT Pin 2 nicht als Eingang und mit Pullup programmiert werden ? Ich weiß: im Beispiel aus dem Tutorial wird das auch nicht gemacht....
Sonst versuchs mal mit einem externen Pullup vom 10k.
Zum testen, ob der Interrupt am Pin 2 sauber schaltet, kannst du einen NPN Transistor genauso wie den Fototransistor von der Relexlichtschranke dranhängen und die Basis über einen 1k Widerstand wechselweise auf +5V oder Masse schalten.