lehrkraefte:blc:informatik:glf22:linefollower

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

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, dass er einer Linie (möglichst auch mit Kurven) folgen kann.+Ziel ist es, den Roboter so zu programmieren, dass er der äusseren, dicken Linie auf der Plane einmal links herum auf der Aussenkurve folgen kann (ohne Abkürzungen)Fastest wins ;-)
  
 ===== Grundideen ===== ===== Grundideen =====
Line 25: Line 25:
 <code python> <code python>
 while True: while True:
-   # Tu was+   hell = licht.reflection() 
 +   fahrwerk.drive(Geschwindigkeit vorwärts in mm/s, Drehgeschwindigkeit in Grad/s) 
 +   if hell<40:  # Wert anpassen 
 +      fahrwerk.drive(100,20) 
 +   elif hell>60:  # Wert anpassen! 
 +      fahrwerk.drive(100,-20) 
 +   else: 
 +      fahrwerk.drive(100,0) 
 +    
 </code> </code>
 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 (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:
   * 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.
  • lehrkraefte/blc/informatik/glf22/linefollower.1677226817.txt.gz
  • Last modified: 2023/02/24 09:20
  • by Ivo Blöchliger