Kann ich das so im Protokoll schreiben?
Hey,
wir programmieren/-bauen gerade in der Schule in Einzelarbeit einen Linienfolger und einen Erkundungsroboter. Vorab müssen wir die technische Funktionsweise protokollieren, weshalb ich euch bitten würde mir mitzuteilen, ob ihr grobe Form/-Logik Fehler entdeckt. Thanks!
=>
Damit der Linienfolger seine ihm zugeschriebene Aufgabe erfüllen kann macht man sich zunutze, dass helle/-dunkle Oberflächen Licht variierend reflektieren. Links und rechts neben den DC-Motoren an der Grundplatte werden zwei Fotowiderstände, sowie in relativer Nähe zwei LEDs installiert, welche auf die zu befahrende Oberfläche zeigen. Um eindeutige Werte vom Fotowiderstand nutzen zu können, bestrahlt man die Fläche vor dem Fotowiderstand jeweils mit der LED, damit der Kontrast der beiden Farben klar messbar wird. Nun messen die Fotowiderstände, welcher mit dem Arduino Uno R3 verbunden sind, konstant die eingehenden Reflektionswerte der Oberfläche. Überfährt der Linienfolger nun die schwarze Leitlinie an einer Stelle, so sinkt die Reflektion der LED und der Widerstand des Fotowiderstandes steigt an. Dieser Anstieg bis über eine definierte Grenze wird im Sketch erkannt/-ausgewertet und führt anschließend zu einem beschleunigen des DC-Motors, welcher sich auf der Seite des LDRs mit den gestiegenen Werten befindet. Wird der Wert wieder unterschritten auf beiden Seiten befindet sich der Linienfolger genau auf der Leitlinie und fährt mit konstanter Geschwindigkeit weiter.
2 Antworten
> damit der Kontrast der beiden Farben klar messbar wird.
der Kontrast (= Unterschied hell/dunkel) wäre auch bei Umgebungslicht messbar. Sinn der LED ist vermutlich, definierte Helligkeits- und damit Widerstandswerte zu bekommen.
beschleunigen des DC-Motors, welcher sich auf der Seite des LDRs mit den gestiegenen Werten befindet.
Mein Gefühl sagt, dass man den Motor der gegenüberliegenden Seite beschleunigen müsste.
Vielen Dank 👍 Und ja, dein Gefühl täuscht dich keineswegs, meine Antwort war Nonsens 🗿
variierend ...: ungeschickt, denn sie reflektieren Licht unterschiedlich, aber nicht variierend, denn der Reflektionsgrad ist nicht schwankend, sondern nur anders.
konstant die eingehenden...: Der Arduino misst nicht konstant, sondern periodisch, wobei die Frequenz der Messung hoch ist.
dieser Algorithmus führt dazu, dass der Linienfolger die Linie verlässst. Es muss der andere Motor beschleunigen, damit die schwarze Linie wieder zwischen den LDRs liegt.