SparkTwister: eine tragbare Spiel mit der Spark.io Funkenkern

3 Schritt:Schritt 1: Stellen Sie den Sensor PCB Schritt 2: Erstellen Sie das Armband Schritt 3: um Ihren Funken Cores Laden Sie den Code SparkTwister

SparkTwister: eine tragbare Spiel mit der Spark.io Funkenkern

SparkTwister: eine tragbare Spiel mit der Spark.io Funkenkern

SparkTwister ist eine physische Spiel für 4 oder mehr Spieler. Jeder Spieler trägt einen einfachen Controller Armband eines Spark.io Platte mit einer SparkButton Schild und ein RGB-Sensor. Wenn das Spiel beginnt, alle LEDs auf Ihrem Armband leuchten in der gleichen Farbe. Jetzt haben Sie einen anderen Spieler mit der gleichen Farbe zu finden und zu halten Ihr Armband gegen ihre. Wenn Sie das tun, wird der RGB-Sensor auf Ihrem Armband dies zu erkennen, und die beiden von Ihnen jedes Tor einen Punkt. Eine LED auf Ihre Armbänder wird ausgeschaltet, um dies anzuzeigen, und der Rest wird in eine neue zufällige Farbe, für die Sie jetzt haben, um einen neuen passenden Spieler zu finden ändern. So sind Sie immer herumlaufen und versuchen, zu finden (und zu überzeugen) andere, ihre Farbanpassungs-Armbänder mit Ihnen anstelle von denen anderer Spieler zu koppeln. Wer es schafft, schalten Sie zuerst alle LEDs auf ihrem Armband, gewinnt das Spiel. Aber natürlich, die ihr Armband mit einem Kerl, der nur eine aus das Spiel zu gewinnen LED weg paaren würde? ...
Jedes Armband sendet auch seine aktuelle Player-ID, Partitur und Farbe drahtlos mit dem iWall , einer Open-Source interaktiven Fassade Display mit 20.000 RGB LEDs wir vor kurzem entwickelt. Das zeigt eine aktuelle iWall Balkendiagramm aller Spieler im Wettbewerb, auf der Seite unseres Informatik Gebäude.
SparkTwister wurde vollständig während unseres November 2014 Körperbau Nacht erstellt. Dank Spark.io und Instructables für Ihre Unterstützung!
Autor: Dominik Schlütter (Core Code), Gustavo Brant de Carvalho Marques (Armband), David Peters (RGB-Sensor-Code), Jan Thar (RGB Sensorplatine) und Prof. Jan Borchers (Projektleitung), die alle aus Dorkbot Aachen an der RWTH Aachen in Deutschland. Vielen Dank an alle anderen Dorkbotters für ihre Unterstützung, vor allem Wolfgang für seine Drehung auf unsere Spielidee!
Für 8 Spieler, benötigen Sie:
8 Spark.io Funken Cores 8 Spark.io Funken Buttons (Schilde) 8 Kingbright KPS-5130PD7C RGB-Farbsensoren (zB von Farnell Deutschland ) 3 SMD Widerstände, 0603, für den Sensor (1 x 2.2MΩ, 2 x 1MΩ) Eight kleine benutzerdefinierte einseitigen Sensor PCBs (wir stellen die Designdateien) als ein kleines Schild, um den SMD-RGB-Farbsensorchip zum Löten auf jeden Sensor PCB 8 zweipolige geraden Kunststoffbuchsenleisten für die Haltestreifen 3 von 40 geraden Kopf Stiften Batteriekabel mit Steckern (und ein Presswerkzeug) Eight 3-AAA-Batterie Halter mit Kabel Crimp 24 AAA-Alkaline-Batterien oder NiMH-Akkus (eneloops funktionieren gut) Der Zugang zu einem 60x30cm lasercutter (zB ein Epilog Zing) Ein 60x30 cm Blech von 3 mm Karton (wir verwenden "Finnpappe") zum Ausschneiden der Doppelschicht-Armbänder 6 m von 1 cm breite Klettband für die Armbänder (die Art, die Haken auf der einen Seite und Fleece auf der anderen hat) Acht 20cm Kabelbinder, um die Batterien im Inneren der Batterie zu halten Inhaber und sie an dem Armband

Schritt 1: Stellen Sie den Sensor PCB


  1. Wir stellen die Adler Quelldateien für die schematische und über Bord. Die Dateien befinden sich ebenfalls in PDF-Renderings des Platten und schematische zum schnellen Nachschlagen.
    Löten Sie die RGB-Sensor, Widerstände und Stiftleisten auf der Platine, wie angegeben.

Schritt 2: Erstellen Sie das Armband

    1. Befestigen Sie den Funken Kern und der RGB Sensorplatine an die Spark-Button. Die RGB-Sensor Bord geht in die Anschlüsse an der Seite der analogen A0 ... Vin der Funken Kern, mit der RGB-Sensor nach oben und weg von der MCU. Schneiden Sie die angehängte Datei aus der 60x30cm Bogen aus Karton mit der lasercutter. Die Datei "x8" ist in VisiCut Format (siehe http://hci.rwth-aachen.de/visicut) und bereit, auf Epilog Laserschneider mit VisiCut geschnitten. Allerdings haben wir auch eingeschlossen DXF- und PDF-Versionen der oberen und unteren Teile des Armbands. Sandwich jeweils montiert Spark-Button zwischen einem oberen und unteren Teil des Armbandes Crimpen Sie die Buchsenleiste Steckverbinder auf die Batteriekabel, und schieben Sie sie in die zwei-polige Buchse Kunststoff-Header Verbinden Sie die zusammengebauten Batterie-Anschlüsse in die beiden separaten Pins auf der RGB-Sensor Board (überprüfen Sie die Polarität) Setzen Sie die AAA-Zellen in den Batteriehalter Bringen Sie den Batteriehalter mit dem Unterteil des Armbandes mit einem Kabelbinder Schleife ein 40 cm Stück Klettverschluss durch das Armband und hängen Sie es an Ihrem Handgelenk mit einem zweiten 30 cm Länge Velcro, und führen Sie es um Ihren Batteriehalter und Handgelenk für zusätzliche Stabilität

Schritt 3: um Ihren Funken Cores Laden Sie den Code SparkTwister


  1. Das Spiel-Code ist ziemlich einfach: Es stellt sich auf alle LEDs mit einer zufälligen Farbe, wartet dann auf den RGB-Sensor, um einen passenden Farbe zu melden, dann schaltet eine LED und schaltet den Rest in eine neue zufällige Farbe. Dies setzt sich fort, bis die letzte LED ausgeschaltet ist, an welcher Stelle Sie haben das Spiel gewonnen und einen Regenbogen-Effekt.
    In der Praxis sind die Dinge ein wenig komplizierter. Zum einen sollten die LEDs wirklich ausgeschaltet werden, während wir fragen Sie die RGB-Sensor (wir das nicht noch tun), denn jetzt bekommen wir Bias durch die Farbe der LEDs herum reflektiert von der Oberfläche des anderen Bord zurück. Auch ist die RGB-Sensor ziemlich laut, und es ist eine Menge Feinabstimmung Schwellenwerte gute Farb Klassifizierungen zu erhalten. Das sollte wirklich unter Verwendung eines geeigneten Support Vector Machine (SVM) Algorithmus durchgeführt werden. Denn jetzt bekommen wir anständige Klassifikationen mit ein paar einfachen linearen Vergleiche. Wir haben auch ein laufendes Mittel, um zu entscheiden, ob wir in einer passenden Farbe suchen, aber mit gemischten Ergebnissen. Schließlich kann der Sensor auch bei Temperaturänderung, so sitzt direkt neben der klassischen Funkenkern MCU ein Problem sein könnte.