lehrkraefte:blc:informatik:glf22:robotik-mit-svcode:lichtsensor

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:robotik-mit-svcode:lichtsensor [2023/02/10 10:25]
Ivo Blöchliger [Lichtsensor]
lehrkraefte:blc:informatik:glf22:robotik-mit-svcode:lichtsensor [2023/02/21 10:09] (current)
Ivo Blöchliger
Line 9: Line 9:
   * Scrollen Sie nach unten und versichern Sie sich, dass der Modus ''COL-REFLECT'' eingstellt ist. Falls nicht, ändern Sie das weiter unten.   * Scrollen Sie nach unten und versichern Sie sich, dass der Modus ''COL-REFLECT'' eingstellt ist. Falls nicht, ändern Sie das weiter unten.
   * Wählen Sie dann ''Watch values'' aus und stellen Sie den Roboter auf verschiedene Flächen (vor allem der Teppich und die Klebestreifen sind interessant).   * Wählen Sie dann ''Watch values'' aus und stellen Sie den Roboter auf verschiedene Flächen (vor allem der Teppich und die Klebestreifen sind interessant).
-  * Notieren Sie sich zu jeder der verschiedenen Flächen die typische kleinsten und grössten Werte, die gemessen werden. Bewegen Sie dabei den Roboter auch.+  * Notieren Sie sich zu jeder der verschiedenen Flächen die typischen kleinsten und grössten Werte, die gemessen werden. Bewegen Sie dabei den Roboter auch.
   * Mit den gemessenen Wertebereich können später diese Bereich erkannt, bzw. sauber voneinander unterschieden werden.   * Mit den gemessenen Wertebereich können später diese Bereich erkannt, bzw. sauber voneinander unterschieden werden.
 </WRAP> </WRAP>
  
-Kenn man nun die Werte, kann damit z.B. bis zu einer Linie gefahren werden:+Kennt man nun die Werte, kann damit z.B. bis zu einer Linie gefahren werden:
  
 <WRAP todo> <WRAP todo>
   * Legen Sie ein neues EV3-Projekt an und fügen Sie folgenden Code hinzu:   * Legen Sie ein neues EV3-Projekt an und fügen Sie folgenden Code hinzu:
 <code python> <code python>
-licht = ColorSensor(Port.S3)  # Bitte Anschluss überprüfen.+licht = ColorSensor(Port.S3)  # Bitte Anschluss-Nummer überprüfen.
  
 links = Motor(Port.A) links = Motor(Port.A)
 rechts = Motor(Port.B) rechts = Motor(Port.B)
 fahrwerk = DriveBase(links, rechts, 55, 135)  # Motor links, Motor rechts, Raddurchmesser (in mm), Radabstand (in mm) fahrwerk = DriveBase(links, rechts, 55, 135)  # Motor links, Motor rechts, Raddurchmesser (in mm), Radabstand (in mm)
 +
 +stopuhr = StopWatch()   # Stopuhr unmittelbar vor der ersten Bewegung starten
  
 fahrwerk.drive(150,0)    # Vorwärts ohne Kurve fahrwerk.drive(150,0)    # Vorwärts ohne Kurve
 hell = licht.reflection() hell = licht.reflection()
-while hell<50: +while hell<50:           # Wiederholen, solange die Helligkeit weniger als 50% beträgt 
-    hell = licht.reflection() +    hell = licht.reflection()    # Helligkeit messen 
-    print(hell) +    print(hell)                  # und ausgeben 
-fahrwerk.stop()+fahrwerk.stop()  # Danach anhalten 
 + 
 +print("Zeit in ms") 
 +print(stopuhr.time())  # Gemessene Zeit auf dem Computer ausgeben.
 </code> </code>
   * Passen Sie nötigenfalls die Parameter fürs ''DriveBase'' an.   * Passen Sie nötigenfalls die Parameter fürs ''DriveBase'' an.
Line 39: Line 44:
 **Situation**  **Situation** 
  
-Der Roboter startet mit dem Lichtsensor auf einer 1m Linie. Der Roboter soll mit dem Lichtsensor genau auf der gegenüberliegenden 1m Linie stoppen, und das möglichst schnell.+Der Roboter startet mit dem Lichtsensor auf einer 1m Linie.  
 +Der Roboter soll die gegenüberliegende Linie mit dem Sensor mindestens berühren, um 180 Grad wenden und dann 
 +möglichst genau mit dem Lichtsensor in der «Mitte» der Startlinie stoppen, und das möglichst schnell.
  
 Das Score ist die Zeit in Sekunden plus $\frac{1}{10}$ vom Quadrat des Abstands in mm von der Mitte vom Klebestreifen. Das Score ist die Zeit in Sekunden plus $\frac{1}{10}$ vom Quadrat des Abstands in mm von der Mitte vom Klebestreifen.
Line 54: Line 61:
  
  
 +<WRAP todo> 
 +Schreiben Sie ein Programm, so dass der Roboter einer Linie folgen kann. Testen erst mit Geraden Linien, dann auch mit Kurven (Blache). 
 +</WRAP>
  
  • lehrkraefte/blc/informatik/glf22/robotik-mit-svcode/lichtsensor.1676021108.txt.gz
  • Last modified: 2023/02/10 10:25
  • by Ivo Blöchliger