Geschwindigkeit mit Phototransistoren messen ?

Hallo Leute,

leider habe ich über die sufu nichts gefunden deswegen beschreibe ich euch meine Frage.
Im Vorraus ich bin Anfänger also bitte ich um Nachsicht was Verständnis und Begriffe betrifft.

Die Frage geht aus einem vorigen Projekt hervor, wo wir simpel einen Bahnübergang dargestellt haben mithilfe von 2 Phototransistoren.
So fuhr der Zug am ersten Transitor vorbei was einem Led bescheid gab zu blinken fuhr er auch am zweiten vorbei hörte es wieder auf. Sozusagen ein Warnzeichen für arme.

Die Frage wäre es jetzt möglich bei einer festgelegten Strecke z.B 10 cm, die Zeit zwischen den beiden Transistoren zu messen da ja Zeit/Strecke die Geschwindigkeit ergibt und das ich den Wert vom Wiederstand der Transistoren seriell als Zahl (Km/h) ausgeben kann ?

Vielen Dank
Bongkopper

... und das ich den Wert vom Wiederstand der Transistoren seriell als Zahl (Km/h) ausgeben kann ?

Hat zwar nichts mit dem Widerstand zu tun. Ja, mit 2 Lichtschranken kannst Du die Geschwindigkeit berechenen und seriell ausgeben.
Grüße Uwe

Danke Uwe
Gibt es den schon ein Thread wo ein ähnlicher Aufbau erklärt wird ?
Mir geht es vorallem ums coden da hier bei mir am meisten unklarheit herscht.

Viele Grüße
Bongkopper

Da es ja laut Deinem Post schon ein vorheriges Projekt gibt, bei dem die Lichtschranken benutzt werden, mußt Du nur den Code um zwei Variablen erweitern und jeweils die aktuelle "Zeit" speichern, wenn das erste Ereignis (Zug unterbricht Lichtschranke 1 - Blinken fängt an) und das zweite Ergeignis (Zug unterbricht Lichtschranke 2 - Blinken hört auf) eintritt.
Danach ist dann STRECKE ( zeit2 - zeit1 ) = geschwindigkeit.

//zeiten in millisekunden
unsigned long zeit1 = 0;
unsigned long zeit2 = 0;
//strecke in mm
int strecke = 100;
float geschwindigkeit = 0.0;

loop() {
...
//Ergeignis 1
zeit1 = millis();
...
//Ergeignis 2
zeit2 = millis();
...

// geschwindigkeit in km/h
geschwindigkeit = (float) (strecke / ( zeit2 - zeit1)) * 3.6;
}

Achtung! Code ist ungetestet :slight_smile:

Grüße,
Mario.

Hallo Mario,

super das probier ich gleich mal morgen aus ! Vielen Dank schonmal klingt aufjedenfall logisch =)

Viele Grüße
Bongkopper

Klärt mich mal auf, wieso man programmieren können möchte, ohne sich nur ansatzweise gedanken zu machen, wie es funktionieren könnte bzw welche mathematischen Grundformeln man dazu benutzt? Ganz im Ernst - die Aufgabe geb ich nem 10-jährigen Schüler und der bekommt nach in wenig nachdenken die lösung heraus. Ein bisschen mehr Initiative bitte. :roll_eyes: