Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
lehrkraefte:blc:informatik:glf22:linefollower [2023/02/24 09:20] Ivo Blöchliger [Variante 3: Kurve ermitteln] |
lehrkraefte:blc:informatik:glf22:linefollower [2023/02/28 09:55] (current) Ivo Blöchliger [Variante 1] |
||
---|---|---|---|
Line 1: | Line 1: | ||
====== Line Follower ====== | ====== Line Follower ====== | ||
- | Ziel ist es, den Roboter so zu programmieren, | + | Ziel ist es, den Roboter so zu programmieren, |
===== Grundideen ===== | ===== Grundideen ===== | ||
Line 25: | Line 25: | ||
<code python> | <code python> | ||
while True: | while True: | ||
- | # | + | hell = licht.reflection() |
+ | # fahrwerk.drive(Geschwindigkeit vorwärts in mm/s, Drehgeschwindigkeit in Grad/s) | ||
+ | if hell< | ||
+ | fahrwerk.drive(100, | ||
+ | elif hell> | ||
+ | fahrwerk.drive(100, | ||
+ | | ||
+ | fahrwerk.drive(100, | ||
+ | |||
</ | </ | ||
Das Programm kann dann entweder über den Computer oder durch Drücken der Escape-Taste auf dem Roboter (Taste oben links) gestoppt werden. | Das Programm kann dann entweder über den Computer oder durch Drücken der Escape-Taste auf dem Roboter (Taste oben links) gestoppt werden. | ||
Line 44: | Line 53: | ||
===== Variante 3: Kurve ermitteln ===== | ===== Variante 3: Kurve ermitteln ===== | ||
- | Mit der Variante 2 fährt der Roboter in einer Kurve immer neben der Mitte (sonst würde er ja keine Kurve fahren). Idealerweise sollte der Roboter auch in Kurven genau auf der Kante fahren. Das kann mit folgender Idee realisiert werden: | + | Mit der Variante 2 fährt der Roboter in einer Kurve immer neben der Kante zwischen weiss und schwarz |
* Man summiert bei jeder Messung die Helligkeitsdifferenzen auf. Nennen wir diese Summe $I$ (Integral). | * Man summiert bei jeder Messung die Helligkeitsdifferenzen auf. Nennen wir diese Summe $I$ (Integral). | ||
* Beim Geradeausfahren ist die Summe $I$ ungefähr gleich Null. | * Beim Geradeausfahren ist die Summe $I$ ungefähr gleich Null. |