Mit unserem Projekt "autonomes Fahren" standen wir - der WP MINT 8 Kurs - im Finale des landesweiten Wettbewerbs "digiyou - digitalisiere deine Zukunft" 2020.
Das Projektziel war die Realisierung eines Modellzuges, der autonom fahren kann.
Unsere Ideen, (Irr-)Versuche und den Weg zum fertigen Modell sind hier dokumentiert..
Selbstständig fahrende Fahrzeuge sind faszinierend - und zukunftsweisend. Für unser Projekt haben wir den Zug ausgewählt, da bei diesem Verkehrsmittel das Lenken wegfällt - und es für die Grundlagenforschung somit einfacher macht.
Wir haben zum Einstieg erst einmal folgende Dinge recherchiert : Was bedeutet autonom im Schienenverkehr? Welche Beispiele gibt es schon? Und natürlich die Kosten für Microbit (Mikrokontroller), Kabel, batteriebetriebenen Modellzug usw.
Aufbau und Funktionstest des gekauften Modellzuges. Im Anschluss haben wir die Lok auseinandergeschraubt, um ihre Funktionen und Bauteile zu analysieren.
Was benötigen wir noch an einer Lok, die per Schalter vorwärts und rückwärts fahren kann - und dazu Geräusche macht und vorne beleuchtet ist? Da die Funktion der Platine nicht ersichtlich war und wir kein Spielzeug mit Geräuschen herstellen wollten reduzierten wir die Ausstattung auf das benötigte Minimum: den Motor und das Betteriefach. Alles Weitere an Elektronik musste raus...
In der Technik wird zwischen Regel und Steuerstrom unterschieden. Die Leistungsaufnahme vom Motor ist zu hoch und kann durch die steuerbaren Anschlüsse (PINS) des Microbit nicht direkt angeschlossen werden. Dies sollte durch eine einfache Transistorschaltung erledigt sein. Wir haben einen Versuch aufgebaut und im Programm makecode programmiert, dass der Motor angeschaltet wird wenn wir Knopf A am microbit drücken.
Der Probemotor lief gut - also löteten wir für jedes Modell eine Transistorschaltung und schlossen sie an. Jedoch funktionierte das Probeprogramm nun nicht mehr zuverlässig. Nach dem Entfernen der Motorwiderstände ließ sich das Problem jedoch auch nicht beheben.
Die Lösung war ein IC - die Anschlüsse ergaben sich aus einer Fachzeitschrift.
Der Vorteil: So lässt der Zug sich auch rückwärts ansteuern. Jedoch ging es jetzt erst einmal darum, den Zug anzusteuern. Die erste Programmieraufgabe bestand darin, dass der Zug 10sec fährt und dann anhält. Nach erfolgreicher Erprobung ging es nun an den Autonomisierungsgrad. Wie fährt ein Zug eigenständig ohne Augen - klar, mit Sensoren. Ein einfacher Sensor ist der Photosensor - er erkennt Hell und Dunkel. Diese Funktionen wurden in einem Experiment erkundet.
Versuchsaufbau mit 10kOhm Widerstand und Photowidersatnd in Reihe
Programm zum Einlesen und Anzeigen des Wertes vom Photowiderstand
Die Photosensoren wurden unter den Zug geklebt und an den Microbit angeschlossen. In die Schienen wurden LED's an Haltepunkten installiert.
Wir haben den Zug so programmiert, dass er fährt, bis ein Signal erreicht wird.
An unserem Projekttag haben wir das Programm so erweitert, dass der Zug an allen Signalen hält und wartet, bevor er nach einer vorgegebenen Zeit wieder losfährt.
Mittlerweile sind 2 Züge einsatzbereit.
Unsere Züge fahren!
Weitere Eindrücke auf dem Weg dahin finden sich im Folgenden...
Wir haben uns Gedanken gemacht, was der Zug tun muss und es einfach umschrieben - danach haben wir es in "Computersprache" übersetzt und uns so ein WIKI erstellt, woraus wir die Programme zusammengestellt haben. Jedes Programm wurde immer mit den entsprechenden Stellen kommentiert, damit das PRogramm bei Erweiterung jeder Zeit noch nachvollziehbar bleibt.
Der Zug liest über den Fotosensor die Helligkeit der Schienen. Kommt der Zug auf eine LED sinkt der Referenzwert erheblich ab. Zuerst sollte der Zug eigenständig anhalten. Dies war mit nur einer Schleife möglich. Komplizierter wurde es, wenn der Zug wieder anfahren soll, da er ja immer noch auf dem Licht steht. Hier musste eine Pause in die Schleife integriert werden, bevor das Programm wieder von vorne startet.
Die schwierigste Aufgabe war das Pendeln zwischen zwei LED's. Die Fahrtrichtung musste als Variable gespeichert und geändert werden, wodurch lange "wenn-dann" Beziehungen entstanden.