RUN PANDA RUN

Konzept:

RUN PANDA RUNist ein interaktives Jump’n’Run Spiel, welches statt auf einer Spielkonsole den Spieler selber auffordert sich zu bewegen und nur so die Figuren des Spiels bewegt werden. Dabei treten zwei Spieler gegeneinander an, sie müssen auf dem Weg ins Ziel mehrere Hindernisse überwinden und als erster ankommen. Durch das Ersetzen des Joysticks durch Sensoren wird somit der Spieler zur Spielfigur, da er selber aufgefordert ist, sich zu bewegen.

Aufbau:

Um RUN PANDA RUNumzusetzen haben wir an unserem Arduino MEGA ein Motorshield angeschlossen. An das Motorshield haben wir zwei Motoren gesetzt und eine externe Stromquelle, die uns 12 Volt liefert, damit die Motoren mit voller Leistung arbeiten können. Die Motoren haben wir an jeweils einen Gewindespindel festgeschraubt. An den beweglichen Teil der Spindel haben wir mit dem Lasercutter eine Vorrichtung für die Spielfigur geschnitten. In dieser Vorrichtung haben wir auch einen Servomotor verbaut, welcher die Figur nach oben bewegen kann, wodurch wir den Sprung über die Hindernisse realisieren konnten. Damit aber auch das Programm erkennen kann, dass die Spielfigur auf ein Hindernis trifft, haben wir an den beweglichen Teil der Vorrichtung für die Spielfigur ein Aluklebeband geklebt, und diesen mit einem Kabel verbunden, welches ständig mit 5V verbunden ist. An die Hindernisse haben wir ein anderes Stück Aluklebeband geklebt und diesen mit einem Kabel verbunden, welches zu zwei in Reihe geschaltete Widerstände führt, dabei ist das erste ein kleiner Widerstand, bei uns 12 und der hintere ein größerer Widerstand, bei uns mit 150 . Zwischen den beiden Widerständen geht ein Kabel ab, das mit einem Pin unseres Arduinos verbunden ist. Hinter den beiden Widerständen führt ein Kabel zum GND. Somit wird ein Stromkreis geschlossen, wenn das Aluklebeband der Figur mit dem Aluband des Hindernisses in Berührung kommt. Dabei haben wir darauf geachtet, dass wenn der Servomotor der Spielfigur oben ist das Hindernis nicht berührt wird. Falls ein Hindernis berührt wird fährt der Motor zurück und der Spieler wird zurückgeworfen und muss das Hindernis erneut bewältigen. Am Anfang und am Ende der Spindel haben wir auch zwei solche Kontakte gebaut, die dem Programm sagen, ob die Spielfigur sich am Start oder Ende befindet. Dazu haben wir noch einen Schalter eingebaut, der die Spielfiguren wieder an den Startpunkt zurückführt, falls man während des Spiels abbrechen will.

Für die Steuerung der Motoren und der Servomotoren haben wir vier Hindernis-Sensoren mit unserem Arduino verbunden. Für jeden Spieler sind zwei Sensoren vorhergesehen. Ein Sensor ist dabei für die Vorwärtsbewegung zuständig und der andere Sensor für den Sprung. Die Vorwärtsbewegung wird durch das Drehen der Spindel erzeugt und der Sprung mit dem Auf- und Abfahren des Servomotors erzeugt. Die Sensoren senden dabei ein Infrarot Licht aus. Falls dieses auf ein Hindernis stößt wird es reflektiert. Somit kann erkannt werden, ob sich etwas vor dem eingebauten Sensor befindet. Wenn das der Fall ist wird die Spielfigur bewegt. Damit man aber nicht schummeln kann und einfach die ganze Zeit etwas vor den Sensor hält, haben wir über den Code geregelt, dass nach einer Bewegung der Spielfigur das Hindernis des Sensors entfernt werden muss, um den nächsten Schritt machen zu können.

Materialliste:

Arduino MEGA

Motorshield

2x Servomotoren

2x Motoren

4x Hindernissensoren KY 032

Schalter

LED

Widerstände 12 Ω, 150 Ω

Circuit diagram(fritzing)

Video

https://www.youtube.com/watch?v=VFSfZBxCqsQ