Raspberry Pi Pico: Line-Tracking / Linienfolgen mit einem TCRT5000 ohne Fahrzeug

Das Line-Tracking bzw. Linienfolgen ist eine Technik, die es Robotern oder Fahrzeugen ermöglicht, eine Linie auf dem Boden zu erkennen, und sich anhand dem Linienverlauf zu bewegen. Diese Technik wird häufig in der Robotik verwendet, insbesondere in der Automatisierung.
Zum Line-Tracking werden optische Sensoren verwendet, um die Linie zu erkennen. Die Sensoren sind normalerweise an einem Fahrzeug befestigt und ein auswertender Mikrocontroller steuert die Motoren des Fahrzeugs so, dass das Fahrzeug der Linie folgt.

Mit dem folgenden Aufbau wollen wir das Line-Tracking mit einem TCRT5000 ohne Fahrzeug einfach mal ausprobieren.

Hierzu haben wir mehrere, unterschiedlich breite Linien auf ein DIN A4 Blatt gedruckt, über das wir den TCRT5000 führen wollen. Es geht hier auch darum herauszufinden, wie breit eine Linie sein muss, damit das Line-Tracking funktionieren kann.

Aufbau und Bauteile

Raspberry Pi Pico: Line-Tracking / Linienfolgen mit einem TCRT5000 ohne Fahrzeug

Zentraler Bestandteil des Aufbaus ist der TCRT5000. Der ist zur Erkennung der Linie notwendig. Zur Signalisierung der Linien-Erkennung oder besser gesagt, dass die Linie nicht erkannt wird, wird die Onboard-LED verwendet. Weil man nicht gleichzeitig auf den Sensor und die LED schauen kann, empfiehlt es sich zusätzlich einen GPIO-Ausgang mit einem Summer oder Vibrationsmotor zu beschalten. Wenn man beides nicht hat, muss man sich mit der Onboard-LED begnügen.

Raspberry Pi Pico TCRT5000
Pin 36 3V3 OUT VCC
Pin 33 GND GND
Pin 31 GPIO 26 (ADC0) AOUT

Schnell und einfach alle Bauteile zusammen bestellen

Programmcode

In diesem Programmcode wird die Onboard-LED initialisiert, ein zusätzlicher Ausgang zum Schalten eines Summers oder Vibrationsmotors und ein ADC-Eingang, der mit dem analogen Ausgang des TCRT5000 verbunden ist.
Im Programmcode ist ein Schwellwert hinterlegt (threshold), der bestimmt, ab welchem Wert die Linie erkannt wird. Dieser Wert ist anzupassen.

# Bibliotheken laden
from machine import Pin, ADC
from time import sleep_ms

# Schaltschwelle
threshold = 4000

# Initialisierung: Onboard-LED
led_onboard = Pin(25, Pin.OUT, value=0)

# Initialisierung: OUT (GPIO16)
out = Pin(16, Pin.OUT, value=0)

# Initialisierung des ADC0 (GPIO26)
sensor_a = ADC(0)

# Endlos-Schleife
while True:
    sleep_ms(100)
    value_a = sensor_a.read_u16()
    print(value_a)
    if value_a > threshold:
        led_onboard.off()
        out.off()
    else:
        led_onboard.on()
        out.on()

Experimente

Starte den Programmcode und führe den Sensor über die Linien auf dem Blatt. Versuche zuerst herauszufinden, ob der Wert für „threshold“ im Programmcode für Dein Experiment richtig gewählt ist. Zum Vergleich wird in der Kommandozeile der aktuelle Wert des Sensor angezeigt.

Weitere verwandte Themen:

Frag Elektronik-Kompendium.de

Hardware-nahes Programmieren mit dem Raspberry Pi Pico und MicroPython

Elektronik-Set Pico Edition

Das Elektronik-Set Pico Edition ist ein Bauteile-Sortiment mit Anleitung zum Experimentieren und Programmieren mit MicroPython.

  • LED: Einschalten, ausschalten, blinken und Helligkeit steuern
  • Taster: Entprellen und Zustände anzeigen
  • LED mit Taster einschalten und ausschalten
  • Ampel- und Lauflicht-Steuerung
  • Elektronischer Würfel
  • Eigene Steuerungen programmieren

Elektronik-Set jetzt bestellen Online-Workshop buchen

Online-Workshop: Programmieren mit dem Raspberry Pi Pico

Programmieren mit dem Raspberry Pi Pico

Gemeinsam mit anderen und unter Anleitung experimentieren? Wir bieten unterschiedliche Online-Workshops zum Raspberry Pi Pico und MicroPython an. Einführung in die Programmierung, Sensoren programmieren und kalibrieren, sowie Internet of Things und Smart Home über WLAN und MQTT.

Online-Workshop buchen

Besuchen Sie unser fast monatlich stattfindendes Online-Meeting PicoTalk und lernen Sie uns kennen. Die Teilnahme ist kostenfrei.

Termine und Newsletter-Anmeldung

 

Elektronik-Sets für das Hardware-nahe Programmieren