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 ?
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.
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;
}
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.