Inhaltsverzeichnis:

Farbbasiertes Puzzle - Gunook
Farbbasiertes Puzzle - Gunook

Video: Farbbasiertes Puzzle - Gunook

Video: Farbbasiertes Puzzle - Gunook
Video: ASMR modernized Makarov pistol #Shorts 2024, Juli
Anonim
Farbbasiertes Puzzle
Farbbasiertes Puzzle
Farbbasiertes Puzzle
Farbbasiertes Puzzle

Sie da!

Für ein Schulprojekt namens "If This Then That" musste ich mit Arduino ein interaktives Objekt bauen. Ich beschloss, ein farbbasiertes Puzzle mit einem einfachen Feedback-System zu bauen.

Was es macht (kurz gesagt):

  1. Er bestimmt die Farbe des Objekts über dem Farbsensor.
  2. Es prüft, ob diese Farbe der richtigen Lösung entspricht.
  3. Es hebt entweder das "Du bist gestorben"-Zeichen an oder nicht, je nachdem, ob das Rätsel gelöst wurde oder nicht.

Sie könnten also denken, dass dieses Rätsel einfach zu lösen ist?

Nun, für jemanden, der weiß, wie es funktioniert, ist es irgendwie, obwohl Sie die Lösung umstellen können! Aber keine Sorge, für jemanden, der keine Ahnung hat, wie es funktioniert, sieht es wie Magie aus. Nach meiner Erfahrung dachten viele Leute, dass es beim Puzzle um das Gewicht ging, nicht um die Farbe. Und nicht zu vergessen, Sie sind der Meister des Rätsels, wie viele Hinweise Sie geben, liegt bei Ihnen.

Wie ich (möchte) es verwenden:

Ich möchte dieses Puzzle als interaktiven Teil meiner D&D-Kampagne verwenden.

Schritt 1: Materialien

Materialien
Materialien
Materialien
Materialien

Sie benötigen die folgenden Dinge, bevor Sie mit dem Bauen beginnen können:

Im Allgemeinen:

Ein (kreatives) Gehirn, um ein Rätsel zu entwickeln

Arduino-Sachen:

  • Arduino Uno
  • Steckbrett
  • Ein Servomotor
  • (TCS3200) Farbsensor
  • 7x Male - Female Überbrückungsdrähte (vorzugsweise alle verschiedenen Farben, sehr zu empfehlen)
  • 11x Male - Male Überbrückungsdrähte
  • Powerbank (falls Sie möchten, dass es ohne Ihren Computer/Laptop funktioniert)

Gehäuse:

  • Eine (Schuh-)Box mit Deckel (um das Puzzle aufzubauen)
  • ein paar Pappstücke (um die Wände zu machen, Säule in der Mitte und du bist gestorben)
  • Holzklötze, (mindestens) eine Seite muss größer sein als der Farbsensor.
  • Farbe: Schwarz, Rot, Blau und Grün (und weitere Farben, wenn Sie möchten*)
  • A4-Blatt weißes Papier
  • Schere
  • Ein schwarzer Marker
  • Starkes doppelseitiges Klebeband
  • Ein Bleistift
  • Sekundenkleber
  • Gemüsemesser oder Stanleymesser

* kleine Randnotiz zu den Farben: Anfangs habe ich auch Lila verwendet, aber der Sensor konnte Rot und Lila nicht unterscheiden, also habe ich es weggelassen. Beachten Sie, dass andere Farben möglicherweise auch nicht so gut funktionieren (aber sie könnten, ich habe es nicht versucht). Mein Sensor war billig, ein genauerer Sensor kann wahrscheinlich mehr Farben unterscheiden.

Schritt 2: Das Puzzle

Das Puzzle
Das Puzzle

Der wichtigste Teil dieses Projekts ist es, ein gutes Puzzle zum Knacken des Gehirns zu haben.

Wie Sie im ersten Bild (dem mit dem Intro) sehen können, habe ich nordische Runen auf meine Blöcke gemalt (auf allen Seiten außer der Unterseite). Sie haben mit dem Rätsel zu tun. Ich habe dann eine einfache Frage zu dem Fall eingefügt: "Wahrer Reichtum ist …?".

Ich habe das Bild oben verwendet, um die Runen zu übersetzen. Ich gab die Übersetzungen auch den Leuten, die an meinem Puzzle versuchten.

Die Lösung des Rätsels:

Wahrer Reichtum ist Glück!

Der Spieler muss also den Schatz (Block mit dem Reichtumssymbol) durch den Block mit dem Glückssymbol ersetzen.

Fühlen Sie sich frei, mein Puzzle zu verwenden, aber ich würde Sie ermutigen, sich Ihr eigenes auszudenken.

Schritt 3: Die Verkabelung

Die Verkabelung
Die Verkabelung
Die Verkabelung
Die Verkabelung

Die Verkabelung ist recht einfach, da es nur 2 Komponenten (und das Arduino) gibt. In der Beschreibung verwende ich die Mindestanzahl an Drähten, wenn Sie mehr verwenden möchten, können Sie dies gerne tun. (Ich habe mehr Drähte auf dem Bild verwendet)

Arduino zum Steckbrett: (Verwenden Sie 2 männliche - männliche Drähte)

  1. Verbinden Sie den 5V-Pin mit der + Seite Ihres Steckbretts.
  2. Verbinden Sie einen der Massestifte mit der - Seite Ihres Steckbretts.

Das Servo: (Verwenden Sie 3 Male - Male Drähte)

Das Servo hat drei Drähte: Strom, Masse und Signal.

  1. Die Stromversorgung ist normalerweise ein rotes Kabel. Verbinden Sie dieses Kabel mit der + Seite Ihres Steckbretts.
  2. Masse ist normalerweise ein schwarzer oder brauner Draht, verbinden Sie diesen Draht mit der - Seite Ihres Steckbretts.
  3. Das Signal ist normalerweise ein gelber oder orangefarbener Draht. Verbinden Sie diesen Draht mit einer horizontalen Reihe auf Ihrem Steckbrett.*

Der Farbsensor: (Verwenden Sie 7 männliche - weibliche Drähte)

  1. VCC: Verbinden Sie dieses Kabel mit der + Seite Ihres Steckbretts (dies ist Strom).
  2. GND: Verbinden Sie dieses Kabel mit der - Seite Ihres Steckbretts (dies ist Masse).
  3. S0: Verbinden Sie dieses Kabel mit einer horizontalen Reihe auf Ihrem Steckbrett.*
  4. S1: Verbinden Sie dieses Kabel mit einer horizontalen Reihe auf Ihrem Steckbrett.*
  5. S2: Verbinden Sie dieses Kabel mit einer horizontalen Reihe auf Ihrem Steckbrett.*
  6. S3: Verbinden Sie dieses Kabel mit einer horizontalen Reihe auf Ihrem Steckbrett.*
  7. OUT: Verbinden Sie dieses Kabel mit einer horizontalen Reihe auf Ihrem Steckbrett.*

*Ich sage Ihnen nicht genau, wo Sie es auf dem Steckbrett anheften sollen, da es einfacher ist, selbst herauszufinden, was in Kombination mit Ihrem Build am besten ist.

Steckbrett zu Arduino: **(Verwenden Sie 6 männliche - männliche Drähte)

Es ist klug zu sehen, ob alles funktioniert, bevor Sie es in das Gehäuse legen. Beachten Sie, dass Sie dazu diese Kabel herausnehmen und später wieder einstecken müssen. Denken Sie daran oder notieren Sie sich, welches Kabel womit verbunden ist.

  1. Verbinden Sie die Reihe, die Sie mit dem Signalpin des Servos verbunden haben, mit Pin 9 des Arduino.
  2. Verbinden Sie die Reihe, die Sie mit dem S0-Pin des Farbsensors verbunden haben, mit Pin 4 des Arduino.
  3. Verbinden Sie die Reihe, die Sie mit dem S1-Pin des Farbsensors verbunden haben, mit Pin 5 des Arduino.
  4. Verbinden Sie die Reihe, die Sie mit dem S2-Pin des Farbsensors verbunden haben, mit Pin 6 des Arduino.
  5. Verbinden Sie die Reihe, die Sie mit dem S3-Pin des Farbsensors verbunden haben, mit Pin 7 des Arduino.
  6. Verbinden Sie die Reihe, die Sie mit dem OUT-Pin des Farbsensors verbunden haben, mit Pin 8 des Arduino.

** Die Zeilen, auf die ich mich hier oben beziehe, sind die auf Ihrem Steckbrett.

Schritt 4: Der Code

Im Anhang hier finden Sie den Code, den Sie zum Ausführen dieses Projekts benötigen. Die Kommentare im Code sollten klar sein, was er tut. Wenn Sie ausführlichere Informationen zur Funktionsweise des Farbsensors wünschen (wenn Sie den Code vollständig verstehen möchten), empfehle ich Ihnen, diese Tutorials "Wie funktioniert der Sensor?" Sektion.

Obwohl Sie noch nicht dort sind, müssen Sie einige Dinge im Code anpassen:

  • Passen Sie die Variablen an.
  • Passen Sie die if-Anweisungen an Ihr Rätsel an (falls erforderlich).

Es ist praktisch, die Säule zu erstellen und die Blöcke aus dem nächsten Schritt zu malen, bevor Sie die Variablen anpassen, damit Sie dies nicht erneut tun müssen.

Passen Sie die Variablen an:

Wenn Sie die Verkabelung richtig aufgebaut haben, sollte der Code funktionieren, greifen Sie zu einem Blatt Papier, einem Stift und den (bemalten) Blöcken.*

  1. Kommentieren Sie die Funktion void checkRiddle vorübergehend aus dem Code. (damit das Teil nicht läuft)
  2. Laden Sie den Code auf Ihren Arduino hoch.
  3. Öffnen Sie den seriellen Monitor, er beginnt zu laufen und zeigt Ihnen R= … G= … B= … (und noch einige andere Dinge, die jetzt keine Rolle spielen)
  4. Halten Sie einen farbigen Block einige Sekunden lang direkt vor den Sensor (so nah wie er in Ihrem endgültigen Design sein wird).
  5. Während Sie es immer noch vor dem Sensor halten, schalten Sie Ihr Arduino aus. (Ziehen Sie es aus dem USB-Anschluss)
  6. Notieren Sie die äußeren (höchsten und niedrigsten) Werte, die der Farbsensor für jede Farbe (R, G und B) gemessen hat.
  7. Wählen Sie die beiden Werte aus, die am wenigsten variieren (z. B. R und B).**
  8. Zählen Sie beim höchsten Wert +10 und beim niedrigsten Wert -10, damit der Sensor kleine Fehler zulässt.
  9. Ersetzen Sie nun die Werte im Code durch die, die Sie jetzt haben. (Ein Kommentar sagt, welche Werte Sie ersetzen sollten)
  10. Wenn Sie eine andere Farbe als ich verwenden, ändern Sie auch den serial.print.
  11. Laden Sie nun den Code mit Ihren frisch gemessenen Werten erneut auf Ihren Arduino hoch.
  12. Testen Sie, ob der serielle Monitor die Farbe, die Sie gerade in den Code eingegeben haben, gut druckt, indem Sie den gleichen Farbblock davor halten. Stellen Sie sicher, dass es konsistent ist, solange Sie es vor den Sensor halten.
  13. Falls nein::(Überprüfen Sie die Werte, sehen Sie, ob Sie den Bereich vergrößern müssen. Wenn ja::) Der Code erkennt jetzt diese Farbe.
  14. Wiederholen Sie nun diesen Vorgang (Schritt 4 - 13), bis alle Farben, die Sie verwenden möchten, in den Code integriert sind.
  15. Vergessen Sie nicht, die Funktion void checkRiddle zu entkommentieren!

* Gehen Sie zuerst zum Schritt "der Fall", wenn Sie sie noch nicht gemalt haben.

** Sie können genauer sein, wenn Sie alle 3 (R, G und B) verwenden, aber für dieses Projekt wird dies nicht benötigt.

Passe die if-Anweisungen an dein Rätsel an: (nur wenn du die Lösung ändern möchtest)

Schritt 5: Der Fall und das Bemalen der Blöcke

Der Fall und das Bemalen der Blöcke
Der Fall und das Bemalen der Blöcke
Der Fall und das Bemalen der Blöcke
Der Fall und das Bemalen der Blöcke
Der Fall und das Bemalen der Blöcke
Der Fall und das Bemalen der Blöcke
Der Fall und das Bemalen der Blöcke
Der Fall und das Bemalen der Blöcke

Das Gehäuse ist ein etwas kniffliges Teil, aber es ist nicht schwer zu machen, es geht hauptsächlich um die richtigen Maße. Ich gebe meine Maße nicht an, weil wir (höchstwahrscheinlich) keine Materialien der gleichen Größe verwenden.

Bemalen der Blöcke:

Malen Sie die Blöcke in den Farben, die Sie verwenden möchten. Ich empfehle Rot, Grün und Blau, da diese mit dem Sensor am einfachsten zu unterscheiden sind.

Wenn Sie nicht Ihr eigenes Puzzle herstellen, malen Sie auch die Runen.

Die Säule:

Die Säule soll den Farbsensor und die daran befestigten Kabel (teilweise) verbergen. Um die Maße der Säule zu bestimmen, müssen Sie die Seiten Ihres Farbsensors messen und bestimmen, wie hoch Ihre Säule sein soll siehe auf dem Bild ist 3 cm hoch). Dann malen Sie das auf Karton und schneiden Sie es aus, Sie können es bemalen, wenn Sie möchten.

Befestigen Sie die Drähte am Sensor, BEVOR Sie ihn in die Säule einbauen, Sie können die Stifte nicht mehr erreichen.

Ich habe das doppelseitige Klebeband verwendet, um den Sensor in der Säule zu befestigen. Dies ist auf dem dritten Bild zu sehen.

Stellen Sie sicher, dass sich die LEDs am Sensor innerhalb der Säule befinden (nicht über die Kante), die Blöcke müssen später darauf stehen.

Das "Du bist gestorben"-Zeichen:

Schneide ein Stück Pappe aus und schreibe "du bist gestorben" darauf. Wie Sie im ersten Bild sehen können, habe ich auf der anderen Seite ein Bild eines wütenden Mannes mit Schwert aufgeklebt. Stellen Sie sicher, dass das Schild unten eine Lasche hat. Verwenden Sie die Lasche, um das Schild an das Servo zu kleben.

Raum erstellen:

  1. Malen Sie die Box, die Sie für den Fall ausgewählt haben. (Jede Farbe, die du magst, ich habe schwarz verwendet)
  2. Zeichnen Sie die Form des Raumes auf den Boden der Schachtel, um die Länge der Wände zu bestimmen. (Messen Sie die Linien mit einem Lineal).
  3. Bestimmen Sie, welche Höhe die Wände haben sollen. Die Wände in meinem Beispiel sind 5 Zentimeter hoch.
  4. Jetzt hast du die Maße deiner Wände, zeichnest sie auf den Karton und schneide sie aus.
  5. Wände anmalen. (Ich habe sie schwarz gemalt)
  6. Kleben Sie die Wände auf die Schachtel, auf den Linien, die Sie zuvor gezeichnet haben.

Sie haben jetzt den Raum eingerichtet.

Löcher für die Kabel und das Schild:

Sie müssen zwei Löcher in die Box bohren, eines für die Kabel und eines für das "Du bist gestorben"-Schild. und sei vorsichtig! Löcher können nicht entfernt werden, wenn sie einmal da sind.

Machen Sie ein Loch unter der Stelle, an der der Farbsensor angebracht werden soll. Machen Sie das Loch so klein wie möglich, aber vermeiden Sie Spannungen an den Kabeln, Sie möchten nicht, dass sie sich lösen.

Das Loch für das "Du bist gestorben"-Schild muss etwas dicker sein als der Karton, den du verwendest, damit es hochkommen kann, ohne das Gehäuse zu treffen. Die Länge des Lochs hängt davon ab, wie groß das Schild ist. Verwenden Sie ein Stanley-Messer oder ein Gemüsemesser, um das Loch zu machen.

Verwenden Sie nun das doppelseitige Klebeband, um den Servomotor an der Seite der Box zu befestigen.

Schritt 6: Irgendwelche Fragen??

Jetzt sollten Sie also in der Lage sein, mit Arduino ein fantastisches farbbasiertes Puzzle zu erstellen. Bei Fragen unbedingt stellen!

Viel Spaß beim Bauen!

Empfohlen: