Was ist der Vorteil, wenn ich in Lego Mindstorms, Variablen für einen Linienfolger mit zwei Sensoren gebrauche? Reagiert er schneller?

3 Antworten

nxtgeneration schreibt, "mit zwei Sensoren verläuft die Fahrt weniger Zackig". Nun frage ich mich, warum überhaupt Zackig? Mit nur einem Sensor und einer Programmierung wie in meinem Bild läuft die Fahrt vollständig am Linierand, ohne "Ententanz". So nenne ich das gewackele, oder meinetwegen auch Zackig.

Der Farbsensor vom EV3 kann kallibriert werden, also Min- und Max-Werte zur Spreizung des Nutzbereichs auf 0-100% angepasst werden. Das muss beim NXT noch angepasst werden. Aber es läuft bei normalen Lichtverhältnissen auch ohne Kallibrierung.

Bei geraden Stecken kann die Geschwindigkeit noch erhöht werden. Hier muss man mit dem Multiplikator herumspielen. Dann verringert sich aber die Fangwirkung. Einfach mal ausprobieren.

Woher ich das weiß:eigene Erfahrung – Coach der hiesigen LEGO-Robotik Gruppe
EV3 sehr ruhige und schnelle Fahrt - (Technik, Technologie, Programm)

Die beiden Sensoren können so programmiert werden, dass beide die Linie suchen. Idealerweise vorne nebeneinander plaziert. Einmal gefunden, nehmen sie die "Linie in die Zange". Der linke Sensor sucht von rechts, der ander von links. Dadurch kann die Linie schneller abgefahren werden und die Fahrt verläuft weniger "zackig"

Nein, er reagiert nicht schneller. Wie schon bei deiner anderen Frage: Man verwendet Variablen, wenn man sie benötigt, oder zur Übersichtlichkeit. Du kannst dir das wie einen Schuhkarton vorstellen, in welchen du etwas reinlegen kannst, z.B. eine Zahl oder einen Buchstaben.

lenovochaschi 
Fragesteller
 05.10.2017, 11:47

Aber kann man also genauso viel machen, wie ohne Variablen?

0
tavkomann  05.10.2017, 11:56
@lenovochaschi

Es kommt auf den Algorithmus an. Einige Variablen - bzw. die meisten - dienen als Datenspeicher und können somit nicht ersetzt werden, andere sind nur aus Gründen der Übersichtlichkeit vorhanden und könnten theoretisch ersetzt werden, was aber nicht empfohlen wird, da dadurch die Lesbarkeit des Codes für andere Leute - oder dich selbst nach einigen Wochen - verschlechtert wird. 

0