Der Bau eines Linienfolgeroboters ist ein klassisches, aber sehr lehrreiches Projekt für jeden, der sich mit Robotik, eingebetteten Systemen und sensorbasierter Steuerung befasst. Durch die Kombination eines einfachen Mikrocontrollers, Infrarotsensoren und eines Motortreibers können Sie eine Maschine erstellen, die autonom einer dunklen oder hellen Linie auf einem kontrastierenden Hintergrund folgt. Dieser Leitfaden erweitert jeden Aspekt des Builds - von der Physik der IR-Sensoren bis hin zu fortschrittlichem Tuning und Fehlersuche. Ob Sie ein Student, Hobbyist oder Pädagoge sind, die folgenden Schritte helfen Ihnen, einen zuverlässigen Linienfolger zu konstruieren, der als Grundlage für komplexere autonome Roboter dienen kann.

Infrarotsensoren für die Linienerkennung verstehen

Infrarot-Sensoren sind die Augen Ihres Roboters. Sie senden Infrarotlicht von einer LED aus und messen die Menge, die zurück zu einem Fotodetektor reflektiert wird. Wenn der Roboter über eine Oberfläche reist, ändert sich die Reflektivität: eine weiße oder helle Oberfläche reflektiert mehr IR-Licht, während eine schwarze oder dunkle Oberfläche es absorbiert. Der Sensor gibt entweder eine analoge Spannung oder ein digitales HIGH / LOW-Signal aus, abhängig von dem Schwellenwert, der auf dem Modul festgelegt ist.

Die meisten IR-Zeilensensoren der Hobbyklasse verwenden einen Komparatorchip (wie den LM393), um den analogen Messwert in ein sauberes digitales Signal umzuwandeln. Die Empfindlichkeit ist über ein kleines Potentiometer am Modul einstellbar. Zum Zeilenfolgen werden typischerweise zwei oder mehr Sensoren verwendet, die an der Vorderseite des Roboters nebeneinander angeordnet sind. Wenn der Roboter über die Linie zentriert ist, sehen beide Sensoren die Linie (oder beide sehen den Hintergrund). Wenn er nach links driftet, verliert der linke Sensor die Linie, während der rechte Sensor sie noch sieht, und umgekehrt.

Die richtigen Sensormodule auswählen

Zu den allgemeinen Entscheidungen gehören der TCRT5000 und der KY-033. TCRT5000 Modul ist weit verbreitet, billig und funktioniert gut auf den meisten Oberflächen mit ausreichend Kontrast. KY‐033 Eine Platine hat den gleichen Chip, aber ein anderes Pin-Layout. Überprüfen Sie immer die Kompatibilität mit der Logikebene Ihres Mikrocontrollers (3,3 V oder 5 V). Für einen Arduino Uno (5 V) funktioniert jedes 5 Volt-tolerante Modul. Wenn Sie eine 3,3 V-Platine wie eine ESP32 verwenden, wählen Sie Module, die mit dieser Spannung arbeiten können, oder fügen Sie einen Pegelschieber hinzu.

Für einen robusteren Roboter sollten Sie drei oder sogar vier Sensoren verwenden. Ein Drei-Sensor-Array gibt Ihnen einen "verlorenen" Zustand, der eine Suchroutine auslösen kann, während vier Sensoren PID-ähnliche Korrekturen ermöglichen.

Materialien und Werkzeuge

Im Folgenden finden Sie eine vollständige Liste der Hardware, die Sie benötigen.Die meisten Artikel sind bei Online-Elektronikhändlern oder lokalen Maker-Stores erhältlich.

  • MikrocontrollerArduino Uno, Nano oder kompatibel (z. B. Elegoo, SparkFun RedBoard).
  • IR-Sensormodule: Zwei TCRT5000- oder KY‐033-Module (einstellbar).
  • Motortreibermodul: H‐Brücke auf L298N- oder L293D-Basis. Die L298N ist sehr verbreitet und kann zwei Gleichstrommotoren unabhängig voneinander antreiben.
  • Gleichstrommotoren mit Rädern: Zwei 3-6 V Getriebemotoren, vorzugsweise mit Encodern (optional für die Drehzahlregelung).
  • Fahrwerk: Roboter-Fahrgestell-Kit (Acryl oder Metall, mit Befestigungslöchern für Motoren und Räder).
  • Stromversorgung: Batteriepack (6 V / 4 × AA oder 7,4 V Li‐Po). Der Arduino kann über seinen VIN-Pin oder USB betrieben werden, aber das Antreiben von Motoren aus der gleichen Quelle kann Geräusche verursachen. Ein separater Akku für die Motoren ist für Anfänger empfehlenswert.
  • Brotbrett- und Brückendrähte: Eine kleine lötfreie Brotplatte vereinfacht das Prototyping; verwenden Sie männlich-weibliche und männlich-männliche Drähte.
  • Multimeter: Zur Überprüfung von Spannungen und Kontinuität.
  • Werkzeuge: Drahtabstreifer, Schraubenzieher, Heißklebepistole (zur Sicherung von Sensoren).
  • Gleismaterial: Schwarzes Elektroband auf weißer Plakattafel oder gedruckte Spur auf mattem Papier.

Den Roboter bauen: Mechanische Montage

Fahrwerk und Motormontage

Zunächst werden die beiden Gleichstrommotoren nach den Anweisungen des Bausatzes am Chassis befestigt. Die meisten Bausätze sind mit Halterungen oder einer Aufschraubplatte versehen. Die Räder drehen sich frei und sind parallel zueinander ausgerichtet. Vorder- oder hinten ein Lenkrad oder ein Kugellager anbringen, um den Roboter stabil zu halten. Die IR-Sensoren werden vorne montiert, so dass die Lenkrolle zur Vermeidung von Störungen gegenüber der Sensorseite platziert werden sollte.

Montage der IR-Sensoren

Die beiden IR-Sensormodule sind vorne am Chassis angebracht, etwa 3-5 cm voneinander entfernt. Der genaue Abstand hängt von der Breite der Linie ab, der Sie folgen möchten (normalerweise 15-20 mm). Eine gute Faustregel ist, die Sensoren so zu positionieren, dass sich bei zentriertem Roboter der linke Sensor direkt am linken Rand der Linie und der rechte Sensor direkt am rechten Rand befindet. Verwenden Sie Heißkleber oder doppelseitiges Schaumstoffband, um sie zu sichern. Die Module sollten direkt nach unten zeigen, etwa 1-2 cm über dem Boden.

Zu hoch und die Reflexion wird schwächer; zu niedrig und der Roboter kann auf Hindernisse stoßen.

Verdrahtung der Komponenten

Nun zu den elektrischen Anschlüssen. Verwenden Sie eine Steckdose, um Strom und Signale zu verteilen, es sei denn, Sie löten direkt. Die folgende Verdrahtungskarte nimmt einen Arduino Uno und einen L298N-Motortreiber an. Überprüfen Sie die Pinout Ihres Sensormoduls: Die meisten haben VCC, GND und OUT (digital). Einige haben auch einen Enable-Pin oder einen analogen Ausgang - wir verwenden den digitalen Ausgang der Einfachheit halber.

  1. Strom: Verbinden Sie den positiven Anschluss des Akkupacks mit dem +12 V-Eingang (oder der Leistungsaufnahme) des Motorfahrers und dem GND des Fahrers mit dem Batterienegativ. Wenn Ihre Batterien 6 V (4 × AA) haben, kann der 5 V-Ausgang des Fahrers den Arduino und die Sensoren über seinen 5 V-Pin versorgen. Andernfalls versorgen Sie den Arduino separat vom USB oder einer zweiten Batterie.
  2. Motortreiber:
    • Verbinden Sie die beiden Motoren mit dem OUT1/OUT2 und dem OUT3/OUT4 des Fahrers.
    • Verbinden Sie die ENA- und ENB-Pins des Fahrers (aktiv) mit den Arduino-Digital-Pins 5 und 6 (PWM-fähig).
    • Verbinden Sie IN1, IN2, IN3, IN4 mit den Arduino Digital Pins 7, 8, 9, 10.
    • Verbinden Sie den 5 V-Ausgang des Fahrers mit dem 5 V-Pin des Arduino (bei Verwendung des gleichen Akkus) oder lassen Sie ihn getrennt, wenn Sie Arduino separat mit Strom versorgen.
  3. IR-Sensoren:
    • Linker Sensor VCC → Arduino 5 V, GND → GND, OUT → Arduino digital pin 2.
    • Rechtssensor VCC → 5 V, GND → GND, OUT → Arduino digital pin 3.
  4. Gemeinsamer Boden: Verbinden Sie alle GNDs (Arduino, Motortreiber, Sensoren, Batterie).

Nach der Verkabelung die Anschlüsse vor dem Einschalten überprüfen; mit einem Multimeter überprüfen, ob die 5 V-Schiene tatsächlich 5 V ist und keine Kurzschlüsse bestehen.

Programmierung der Logik

Das Programm liest die beiden Sensorausgänge kontinuierlich aus und entscheidet über motorische Aktionen. Nachfolgend finden Sie eine komplette Arduino-Skizze, die eine grundlegende Bang-Bang-Steuerung implementiert. Der Roboter dreht sich nach links oder rechts, je nachdem, welcher Sensor die Linie sieht, und er stoppt, wenn keiner der beiden Sensoren die Linie erkennt (verlorener Zustand).

Hinweis zur Sensorlogik: Der obige Code nimmt an, dass die Sensormodule bei der Erkennung der Linie LOW ausgeben (schwarze Linie auf weißem Hintergrund). Viele Module haben eine aktive Low-Indikator-LED. Wenn Ihre Sensoren bei der Erkennung HIGH ausgeben, invertieren Sie die Bedingungen (Ändern von in in den if-Angaben oder passen Sie das Potentiometer des Moduls an).

Kalibrierung der Sensoren

Bevor Sie den Code ausführen, stellen Sie den Roboter über die Linie und stellen Sie das Potentiometer jedes Sensors so ein, dass er LOW in der Linie und HIGH im Hintergrund ausgibt.

Die Sensoren sollten empfindlich genug sein, um die Linie aus einem Abstand von 10-15 mm zu erkennen.

Testen und Troubleshooting

Der Roboter wird auf einen geraden Abschnitt der Strecke gestellt und eingeschaltet.

  • Strom: Erhalten die Motoren genug Spannung? Der L298N benötigt mindestens 7 V für den ordnungsgemäßen Betrieb, aber viele arbeiten bis zu 6 V mit reduziertem Drehmoment. Wenn sich der Roboter langsam oder überhaupt nicht bewegt, versuchen Sie es mit einer frischen Batterie oder erhöhen Sie den PWM-Tastzyklus.
  • Sensorausrichtung: Sind beide Sensoren äquidistant von der Linie, wenn der Roboter zentriert ist?
  • MotoranschlüsseWenn der Roboter sich an Ort und Stelle dreht, wenn er vorwärts gehen soll, tauschen Sie die Motordrähte auf einem Kanal aus.
  • Logische InversionWenn der Roboter in die falsche Richtung dreht (z. B. nach rechts lenkt, wenn der linke Sensor die Linie sieht), tauschen Sie die Motorrichtungsstifte im Code oder tauschen Sie die Sensorverbindungen aus.

Bei anhaltenden Problemen erstellen Sie eine einfache Testskizze, die jeden Motor unabhängig bewegt, um die Hardware-Integrität zu bestätigen, und überprüfen Sie auch, ob die Sensormodule nicht in einem Winkel montiert sind, der einen toten Winkel erzeugt.

Performance Tuning und Verbesserungen

Anpassen von Geschwindigkeit und Wenderadius

Der Bang-Bang-Controller arbeitet gut bei langsamen Geschwindigkeiten (PWM-Werte um 150-200), bei höheren Geschwindigkeiten kann der Roboter die Linie überschreiten. Eine Proportionalregelung kann man durch Ablesen des analogen Ausgangs der Sensoren (falls vorhanden) und entsprechendes Einstellen der Motordrehzahlen realisieren. Ein einfacher "PID-like"-Ansatz nutzt die Differenz zwischen linken und rechten Sensorwerten, um die Motordrehzahlen kontinuierlich zu variieren.

Hinzufügen eines dritten oder vierten Sensors

Mit drei Sensoren können Sie erkennen, wenn der Roboter komplett ausgeschaltet ist, und ein „Suchmuster implementieren – zum Beispiel, indem Sie sich drehen, bis ein Sensor die Linie wieder aufnimmt. Vier Sensoren ermöglichen eine differentielle Lenkung, die einen echten Linienfolger-Wettbewerbsbot nachahmt. Viele Open-Source-Bibliotheken wie die ROBOTIS-Linienfolgerbibliothekund fortschrittliche Algorithmen zur Verfügung stellen.

Verwendung eines LCD- oder Bluetooth-Moduls

Schließen Sie zum Debuggen und Tuning ein I2C LCD (16x2) an, um Sensorwerte und aktuellen Zustand anzuzeigen. Alternativ können Sie ein HC‐05 Bluetooth-Modul verwenden, um Telemetrie an eine Smartphone-App zu senden. Dies ist besonders hilfreich, wenn sich der Roboter bewegt.

Stromsparfunktionen

Wenn Ihr Roboter mit Batterien läuft, sollten Sie einen Spannungsregler hinzufügen, um stabile 5 V für den Arduino und die Sensoren zu liefern. Eine separate 7,4 V Li-Po-Batterie für die Motoren und ein 5 V UBEC für die Logikplatine können die Leistung dramatisch verbessern.

Erweiterung des Projekts: Beyond the Basic Line Follower

Sobald Ihr Roboter zuverlässig einer einfachen schwarzen Linie folgt, können Sie sie auf viele Arten erweitern:

  • Hindernisvermeidung: Fügen Sie einen Ultraschallsensor (HC‐SR04) hinzu und programmieren Sie den Roboter, um Objekte, die auf der Linie erscheinen, anzuhalten oder zu umfahren.
  • Verbindungsleitungen und Kreuzungen: Mehr Sensoren nutzen, um T-Übergänge und Winkelkurven zu erkennen, wodurch der Roboter in einem Labyrinth navigieren kann.
  • Drahtlose Steuerung: Integrieren Sie ein Wi-Fi-Modul (ESP8266/ESP32), um Befehle von einem Computer oder Telefon zu empfangen, die für die Telepräsenz oder die Koordination mit mehreren Robotern nützlich sind.
  • Datenprotokollierung: Verwenden Sie ein SD-Kartenmodul, um Sensorprotokolldaten für die Analyse der Leistung des Roboters aufzuzeichnen.

Für Inspiration und Community-Unterstützung, schauen Sie sich die folgenden Ressourcen an:

Schlussfolgerung

Der Bau eines Linienroboters mit Infrarotsensoren ist eine perfekte Mischung aus Hardware-Assembler und Software-Logik. Er lehrt die praktische Umsetzung von Sensor-Feedback, Motorsteuerung und Entscheidungsalgorithmen. Durch die Befolgung dieses Leitfadens haben Sie einen voll funktionsfähigen Roboter konstruiert, der autonom eine Spur navigieren kann. Noch wichtiger ist, dass Sie die Fähigkeiten erworben haben, um Fehler zu beheben, zu iterieren und das Design zu verbessern. Ob Sie an einem Robotik-Wettbewerb teilnehmen, eine MINT-Klasse unterrichten oder einfach nur Ihre Neugier befriedigen möchten, dieses Projekt bietet eine solide Grundlage für ehrgeizigere Robotersysteme.