Ein Viereck fahren – Grundlegende Bewegungsbefehle

Der Arduino Alvik ist ein Lernroboter, der präzise gesteuert werden kann. Um komplexere Fahrmanöver wie ein Viereck zu programmieren, benötigst du drei grundlegende Bewegungsbefehle. In diesem Tutorial lernst du, wie du diese Befehle kombinierst, um geometrische Formen zu fahren.

Die drei wichtigsten Bewegungsbefehle

💡 Grundbefehle:
alvik.move() – Vorwärts/Rückwärts fahren
alvik.rotate() – Drehen auf der Stelle
alvik.stop() – Alle Motoren stoppen

1. alvik.move() – Bewegen

Bewegt den Roboter um eine bestimmte Entfernung vorwärts oder rückwärts.

Syntax:

alvik.move(distance, unit='cm', blocking=True)

Parameter:

Beispiel:

alvik.move(50)  # Fährt 50 cm vorwärts

2. alvik.rotate() – Drehen

Dreht den Roboter um einen bestimmten Winkel auf der Stelle.

Syntax:

alvik.rotate(angle, unit='deg', blocking=True)

Parameter:

Beispiel:

alvik.rotate(90)  # Dreht 90° im Uhrzeigersinn

3. alvik.stop() – Stoppen

Stoppt alle Motoren sofort. Dieser Befehl benötigt keine Parameter.

Beispiel:

alvik.stop()  # Stoppt den Roboter

Beispiel 1: Viereck fahren (einfach)

Ein Viereck besteht aus vier gleich langen Seiten und vier 90°-Drehungen. Hier ist die einfachste Variante:

from arduino_alvik import ArduinoAlvik
from time import sleep

alvik = ArduinoAlvik()
alvik.begin()

# Erste Seite
alvik.move(50)
alvik.rotate(90)
sleep(1)

# Zweite Seite
alvik.move(50)
alvik.rotate(90)
sleep(1)

# Dritte Seite
alvik.move(50)
alvik.rotate(90)
sleep(1)

# Vierte Seite
alvik.move(50)
alvik.rotate(90)
sleep(1)

# Stoppen
alvik.stop()

Wie funktioniert das Viereck?

  1. Seite fahren: alvik.move(50) fährt 50 cm geradeaus
  2. Ecke drehen: alvik.rotate(90) dreht 90° für die nächste Ecke
  3. Pause: sleep(1) wartet 1 Sekunde (optional, zur besseren Beobachtung)
  4. Wiederholen: Diese Schritte werden 4 mal ausgeführt

Beispiel 2: Viereck mit Funktion (besser)

Wiederholungen schreibt man eleganter mit Schleifen und Funktionen:

from arduino_alvik import ArduinoAlvik
from time import sleep

alvik = ArduinoAlvik()
alvik.begin()

def viereck(seitenlaenge=50, pause=1):
    """
    Lässt den Alvik ein Viereck fahren.
    
    Parameter:
    - seitenlaenge: Länge einer Seite in cm (Standard: 50)
    - pause: Pause nach jeder Ecke in Sekunden (Standard: 1)
    """
    for i in range(4):
        alvik.move(seitenlaenge)
        alvik.rotate(90)
        sleep(pause)

# Viereck fahren
viereck()

# Optional: Mehrere Vierecke mit unterschiedlichen Größen
# viereck(30)  # Kleines Viereck
# viereck(70, 0.5)  # Großes Viereck mit kürzerer Pause

Vorteile der Funktions-Variante

Erweiterungsideen

Nachdem du das Viereck gemeistert hast, probiere diese Variationen:

Tipps für präzises Fahren

Mathematischer Hintergrund

Die Summe aller Außenwinkel eines Vierecks beträgt immer 360°. Bei einem Quadrat sind das vier mal 90°. Für andere regelmäßige Formen gilt:

🎯

Challenge: Geometrische Formen fahren

Meistere Bewegungsbefehle und Schleifen!

🧠 Wissens-Check

1. Welcher Befehl bewegt den Alvik vorwärts?

2. Wie viel Grad muss der Alvik für jede Ecke eines Quadrats drehen?

3. Welche Schleife ist am besten, um ein Viereck mit 4 Seiten zu fahren?

💻 Programmier-Challenge

📝 Universelle Form-Funktion

Erstelle eine Funktion, die verschiedene regelmäßige Formen fahren kann (Dreieck, Viereck, Fünfeck, Sechseck).

💡 Anforderungen:
  • Funktion mit Name fahre_form(seiten, laenge)
  • Parameter: Anzahl der Seiten und Seitenlänge
  • Berechne automatisch den richtigen Drehwinkel (360° ÷ Seiten)
  • Nutze eine for-Schleife
  • Teste mit: Dreieck (3 Seiten), Quadrat (4 Seiten), Sechseck (6 Seiten)

Selbsttest: Das kann ich jetzt!

Hake ab, was du verstanden hast:

0/4

Punkte verstanden