HandSpin 360

Das Projekt

HandSpin 360 ist ein mechanisch-elektronisches Spielgerät, das mit Steppermotor, LEDs und Sensorik Schere-Stein-Papier gegen dich spielt. Der Name ist selbsterklärend, denn schließlich drehen sich die Hände um den Motor.

Der intuitive Spielablauf ist einfach und schnell zu verstehen. Zunächst lässt sich mithilfe langer Taster-Klicks über die LED-Matrix-Anzeige zwischen den Modi M1, M2 und M3 wählen. Dann eröffnet ein Startklick das Spielerlebnis. Anschließend wartet ein Ultraschallsensor auf die typische Handbewegung des Spielers und die Hand, die der Bot auswählt, dreht sich in das Fenster. Der Spieler meldet dem Punktezähler nun zurück, wer gewonnen hat. Ein einfaches Klicken bedeutet, dass der Spieler gewonnen hat, bei einem Doppelklick bekommt der Bot einen Punkt. Dreifaches Klicken zeigt eine unentschiedene Runde. HandSpin360 wartet im Anschluss auf die Handbewegung des Spielers und zeigt den aktuellen Punktestand an. Nach einer weiteren Runde kann der Spieler dann wieder eine Rückmeldung geben, oder er drückt lange - das erreicht das Zurücksetzen der Hände, des Modusses und des Punktestandes. Ein automatisches Spielende wird beim Erreichen von 10 Punkten durch den Spieler oder den Bot erreicht. Dann zeigt der HandSpin 360 seine Emotionen, anschließend wird das Spiel zurückgesetzt und von vorne gestartet.

In der Planung beschäftigten wir uns zunächst mit den Mitteln, die uns für das Projekt zur Verfügung standen. Da wir Zugriff auf 3D-Drucker, sowie Arduino-Bauteile wie Steppermotoren oder Sensoren hatten, beschlossen wir die Maschine sowohl aus elektrischen Elementen als auch aus mechanischen Teilen zu bauen. Ein einfaches Glücksrad oder eine Lotterietrommel als rein mechanische Lösung aber auch ein Programm als digitale Lösung hat uns nicht gereicht. Die für uns ideale Möglichkeit, beide Bereiche in der Maschine zu vereinen, war es also, ein motorbetriebenes Rad, an welchem die unterschiedlichen Handfiguren angebracht waren, mit einem von uns beschriebenen Arduino zu steuern.
Im Gegensatz zu den hochkomplexen aber vollkommen logikbasierten und analysierenden Verhaltensmethoden, die die Strategien in Modus 2 und 3 bilden, wird die richtige Hand (also Schere, Stein oder Papier) beim Modus 1 vollkommen zufällig gewählt.
Aber ist das wirklich echter Zufall? Ja, denn es werden keine Pseudo-Zufallszahlen verwendet, die auf einem statischen Algorithmus basieren. Bei der realRandom()-Funktion, die wir für das HandSpin360-Projekt eigens programmiert haben, wird auf Basis des XOR-Zusammenschlusses aus der System-Uptime in Millisekunden und der Button-Druckzeit (ebenfalls in Millisekunden), die ein physisch beeinflusster und damit einmaliger und zufälliger Wert ist, ein Zufallswert gebildet.
Mehr Infos bei Das Zufallsverfahren!
Die Taktik des HandSpin 360 ist nicht leicht zu durchschauen. Er besitzt zwei Primär-Taktiken: 1. Win-Stay, Lose-Shift; 2. Copy-Behaviour. Diese beiden Namen beziehen sich auf das erwartete Verhalten des Spielers. Viele Recherchen haben ergeben, dass diese Taktiken besonders auf mental inresistente Personen und Personen, die sich leicht vom Unterbewusstsein leiten lassen, zutreffen. Da diese Personengruppen dem Großteil der Menschen entsprechen, ist die Maschine gut aufgestellt. Die Zufallsfunktion, die bereits für Modus 1 verwendet wird, entscheidet dabei, welche der beiden Taktiken in jeder Runde verwendet wird. Versucht nun ein kompetenter Spieler mit bestimmten Reihenfolgen gegen die Maschine zu gewinnen, wird er ebenfalls scheitern, denn der HandSpin 360 erkennt unterschiedlich frequente Muster. Sollte der Spieler also versuchen, mit einem ständigen Schere-Stein-Schere-Stein den Bot zu besiegen, so erkennt die Maschine das.

Die Primär-Taktiken im Detail:
  • Win-Stay, Lose-Shift: Der Benutzer wird stark durch sein Unterbewusstsein beeinflusst. Wenn er gewinnt, bleibt er bei der selben Auswahl. Wenn er verliert, wechselt er zu der Hand, die die Hand des Gegners gerade besiegt hätte. Bei Unentschieden wählt er ebenfalls die Hand, mit der er soeben gewonnen hätte.
  • Copy-Behaviour: Der Benutzer wird stark durch das Verhalten des Gegners beeinflusst. Wenn er gewinnt, steigt er mit seiner Auswahl um eine Hand auf, das heißt er wählt die Hand, die ihn selbst gerade geschlagen hätte. Bei einer Niederlage wechselt er zu der Hand, die der Gegner gerade für seinen Sieg verwendet hat. Ist die Runde unentschieden, wählt er die Hand, mit der er soeben gewonnen hätte.
  • Die Taktik des HandSpin 360 ist nicht leicht zu durchschauen. Wie auch in Modus 2 besitzt er zwei Primär-Taktiken: 1. Win-Stay, Lose-Shift; 2. Copy-Behaviour. Diese beiden Namen beziehen sich auf das erwartete Verhalten des Spielers. Viele Recherchen haben ergeben, dass diese Taktiken besonders auf mental inresistente Personen und Personen, die sich leicht vom Unterbewusstsein leiten lassen, zutreffen. Da diese Personengruppen dem Großteil der Menschen entsprechen, ist die Maschine gut aufgestellt. Im Gegensatz zum Modus 2 wird beim Modus 3 die Taktik auf einem logischen Hintergrund ausgwählt. Merkt sie, dass sie mit der aktuellen Taktik keine Siege erzielt, wechselt sie. Sollte auch hier nun ein kompetenter Spieler mit bestimmten Reihenfolgen versuchen, gegen die Maschine zu gewinnen, wird er ebenfalls scheitern, denn der HandSpin 360 erkennt unterschiedlich frequente Muster. Versucht der Spieler also, mit einem ständigen Schere-Stein-Schere-Stein den Bot zu besiegen, so erkennt die Maschine das.

    Hier nochmal die Primär-Taktiken:
  • Win-Stay, Lose-Shift: Der Benutzer wird stark durch sein Unterbewusstsein beeinflusst. Wenn er gewinnt, bleibt er bei der selben Auswahl. Wenn er verliert, wechselt er zu der Hand, die die Hand des Gegners gerade besiegt hätte. Bei Unentschieden wählt er ebenfalls die Hand, mit der er soeben gewonnen hätte.
  • Copy-Behaviour: Der Benutzer wird stark durch das Verhalten des Gegners beeinflusst. Wenn er gewinnt, steigt er mit seiner Auswahl um eine Hand auf, das heißt er wählt die Hand, die ihn selbst gerade geschlagen hätte. Bei einer Niederlage wechselt er zu der Hand, die der Gegner gerade für seinen Sieg verwendet hat. Ist die Runde unentschieden, wählt er die Hand, mit der er soeben gewonnen hätte.
    • Arduino
    • 3D-gedruckte Hände
    • L293D Motorshield zum Motoren-Betrieb
    • 17HS08-1004S Schrittmotor zur Bewegung der Plastikhände
    • LED-Matrix zur Anzeige
    • Taster zur Auswahl
    • Ultraschallsensor zur Handerkennung
    • Sunon Axiallüfter 40x40x10mm zur Motorshield-Kühlung
    • Fusion 360 (3D-Design)
    • Arduino IDE (Programmierung)
    • dotdesign.de/Cloud ➟ Cloud zum Sichern ➟ Austauschen von Dateien
    • to-do.dotdesign.de ➟ To-Do-Liste ➟ Strukturieren der Arbeitsschritte
    • funduino.de ➟ Webseite ➟ Informatieren über Verwendung von spezifischer Arduino-Hardware
    • google.com ➟ Suchmaschine ➟ Recherche
    • Feilen und Schleifgerät
    • Dremel
    • 3D-Drucker
    • Zangen
    • Seitenschneider
    • Schraubzwingen
    • Lötkolben
    • Lötpumpe
    • Schraubenzieher
    • dritte Hand
    • Klebstoff
    • Laptop und Computer
    • IPad
    • 1538 Zeilen Code
    • 153 Stunden gesamte Arbeitszeit
    • 137 Euro Gesamtkosten (mehr Infos bei Mitwirkende & Unterstützer)
    • 1095 Gramm Filament ➟   >1kg !
    • 318 Meter Filament ➟   1/3 km !