Obsah:

Barevná logická hra: 6 kroků
Barevná logická hra: 6 kroků

Video: Barevná logická hra: 6 kroků

Video: Barevná logická hra: 6 kroků
Video: Tento Tvar Je NEMOŽNÝ Nakreslit!😱 2024, Červenec
Anonim
Barevné puzzle
Barevné puzzle
Barevné puzzle
Barevné puzzle

Zdravím!

Pro školní projekt s názvem „If This Then That“jsem musel postavit interaktivní objekt pomocí Arduina. Rozhodl jsem se postavit barevnou hádanku s jednoduchým systémem zpětné vazby.

Co to dělá (ve zkratce):

  1. Určuje barvu objektu nad barevným senzorem.
  2. Zkontroluje, zda tato barva odpovídá správnému řešení.
  3. Buď zvýší značku „zemřeli“, nebo ne, v závislosti na počasí byla hádanka vyřešena nebo ne.

Můžete si tedy myslet, že tuto hádanku lze snadno vyřešit?

Pro někoho, kdo ví, jak to funguje, je to tak, i když můžete řešení přepnout! Ale nebojte se, někomu, kdo neví, jak to funguje, to vypadá jako kouzlo. Podle mých zkušeností si mnoho lidí myslelo, že hádanka je o hmotnosti, ne o barvě. A abych nezapomněl, jste pánem skládačky, kolik indicií dáte, je jen na vás.

Jak bych (chtěl) použít:

Chtěl bych tuto hádanku použít jako interaktivní součást své kampaně D&D.

Krok 1: Materiály

Materiály
Materiály
Materiály
Materiály

Než začnete stavět, budete potřebovat následující věci:

Obecně:

(Kreativní) mozek, který vymyslí hádanku

Věci Arduino:

  • Arduino Uno
  • Prkénko
  • Servomotor
  • (TCS3200) Barevný senzor
  • 7x propojovací kabel samec - samice (nejlépe všechny různé barvy, vysoce doporučeno)
  • 11x Male - Male propojovací vodiče
  • powerbank (v případě, že chcete, aby fungovala bez vašeho počítače/notebooku)

Kryt:

  • Krabice (na boty) s víkem (pro sestavení logické hry)
  • pár kusů lepenky (znamení na zdi, sloup uprostřed a zemřeli)
  • Dřevěné bloky (alespoň) jedna strana musí být větší než barevný senzor.
  • barva: černá, červená, modrá a zelená (a jakékoli další barvy, pokud chcete*)
  • Kus bílého papíru formátu A4
  • Nůžky
  • Černý fix
  • Silná oboustranná lepicí páska
  • Tužka
  • Okamžité lepidlo
  • Odlamovací nůž nebo nůž Stanley

* malá poznámka k barvám: zpočátku jsem také používal fialovou barvu, ale senzor nerozeznal červenou a fialovou barvu, takže jsem ji vynechal. Uvědomte si, že ani jiné barvy nemusí fungovat tak hezky (ale mohou, nezkoušel jsem). Můj senzor byl levný, přesnější senzor pravděpodobně dokáže rozlišit více barev.

Krok 2: Hádanka

Hádanka
Hádanka

Nejdůležitější částí tohoto projektu je mít dobrou logickou hádanku.

Jak vidíte na prvním obrázku (ten s úvodem), namaloval jsem na své bloky (ze všech stran kromě dna) norské runy. Mají co do činění s hlavolamem. Poté jsem na případ vložil jednoduchou otázku: „Skutečné bohatství je …?“.

K překladu run jsem použil výše uvedený obrázek. Také jsem dal překlady lidem, kteří zkoušeli moje puzzle.

Řešení hádanky:

Skutečné bohatství je štěstí!

Hráč tedy musí nahradit poklad (blok symbolem bohatství) blokem se symbolem štěstí.

Neváhejte použít moji hádanku, ale doporučil bych vám, abyste si vymysleli vlastní.

Krok 3: Zapojení

Zapojení
Zapojení
Zapojení
Zapojení

Zapojení je poměrně jednoduché, protože existují pouze 2 komponenty (a arduino). V popisu používám minimální počet vodičů, pokud chcete použít více, klidně to udělejte. (Na obrázku jsem použil více drátů)

Arduino na prkénko: (Použijte 2 male - male dráty)

  1. připojte 5V pin na + stranu vašeho prkénka.
  2. připojte jeden ze zemnicích kolíků k - straně vašeho prkénka.

Servo: (Použijte 3 male - male dráty)

servo má tři vodiče: napájení, zem a signál.

  1. Napájení je obvykle červený vodič, připojte jej k + straně vašeho prkénka.
  2. Uzemnění je obvykle černý nebo hnědý vodič, připojte jej k - straně vašeho prkénka.
  3. Signál je obvykle žlutý nebo oranžový vodič, připojte jej k vodorovné řadě na prkénku.*

Barevný senzor: (Použijte 7 mužských - ženských vodičů)

  1. VCC: připojte tento vodič k + straně vašeho prkénka (to je napájení).
  2. GND: připojte tento vodič k - straně vašeho prkénka (toto je uzemnění).
  3. S0: připojte tento vodič k vodorovné řadě na prkénku.*
  4. S1: Připojte tento vodič k vodorovné řadě na desce.*
  5. S2: připojte tento vodič k vodorovné řadě na prkénku.*
  6. S3: připojte tento vodič k vodorovné řadě na prkénku.*
  7. VYPNUTO: připojte tento vodič k vodorovné řadě na prkénku.*

*Neříkám vám, kam přesně ho připnout na prkénko, protože je snazší zjistit sami, co je nejlepší v kombinaci s vaší sestavou.

Breadboard na Arduino: ** (Použijte 6 vodičů samec - samec)

Je chytré zjistit, zda vše funguje, než jej vložíte do pouzdra. Uvědomte si, že k tomu musíte tyto kabely vytáhnout a později je znovu zapojit. Nezapomeňte si zapamatovat nebo zapsat, který kabel je k čemu připojen.

  1. připojte řádek, který jste připojili, k signálnímu pinu serva k pinu 9 na Arduinu.
  2. připojte řádek, který jste připojili, ke kolíku S0 barevného senzoru ke kolíku 4 na Arduinu.
  3. připojte řádek, který jste připojili, ke kolíku S1 barevného senzoru ke kolíku 5 na Arduinu.
  4. připojte řádek, který jste připojili, ke kolíku S2 barevného senzoru ke kolíku 6 na Arduinu.
  5. připojte řádek, který jste připojili, ke kolíku S3 barevného senzoru ke kolíku 7 na Arduinu.
  6. připojte řádek, který jste připojili, ke kolíku OUT barevného senzoru ke kolíku 8 na Arduinu.

** řádky, na které odkazuji výše, jsou ty na vašem prkénku.

Krok 4: Kód

V příloze zde najdete kód, který potřebujete ke spuštění tohoto projektu. Komentáře v kódu by měly být jasné o tom, co dělá. Pokud chcete nějaké podrobnější informace o tom, jak funguje barevný senzor (protože pokud chcete plně porozumět kódu), doporučuji vám, abyste si přečetli tyto návody „Jak funguje senzor?“sekce.

Ačkoli tam ještě nejste, je zde několik věcí, které musíte v kódu upravit:

  • Upravte proměnné.
  • Upravte příkazy if tak, aby odpovídaly vaší hádance (v případě potřeby).

Je užitečné vytvořit sloup a namalovat bloky z dalšího kroku, než upravíte proměnné, takže to nebudete muset dělat znovu.

Upravte proměnné:

Pokud jste kabeláž postavili správně, kód by měl fungovat, vezměte si kousek papíru, pero a (malované) bloky.*

  1. Dočasně okomentujte neplatnou funkci checkRiddle z kódu. (aby ta část neběžela)
  2. Nahrajte kód do svého Arduina.
  3. Otevřete sériový monitor, spustí se a ukáže vám R =… G =… B =… (a některé další věci, na kterých teď nezáleží)
  4. Držte barevný blok přímo před senzorem (tak blízko, jak to bude ve vašem konečném návrhu) na několik sekund.
  5. Zatímco jej stále držíte před senzorem, vypněte napájení Arduina. (vytáhněte jej z USB portu)
  6. Zapište si vnější (nejvyšší a nejnižší) hodnoty, které barevný senzor naměřil pro každou barvu (R, G a B).
  7. Vyberte dvě hodnoty, které se nejméně liší (například R a B). **
  8. Počítejte +10 na nejvyšší hodnotě a -10 na nejnižší hodnotě, aby byly senzoru povoleny malé chyby.
  9. Nyní nahraďte hodnoty v kódu těmi, které máte nyní. (Komentář říká, které hodnoty byste měli nahradit)
  10. Pokud používáte jinou barvu než já, změňte také serial.print.
  11. Nyní pomocí čerstvě naměřených hodnot znovu nahrajte kód do svého Arduina.
  12. Vyzkoušejte, zda sériový monitor pěkně vytiskne barvu, kterou jste právě vložili do kódu, tím, že před něj přidržíte stejně barevný blok. Ujistěte se, že je konzistentní, pokud jej držíte před senzorem.
  13. Pokud ne:: (zkontrolujte hodnoty, zjistěte, zda potřebujete rozsah zvětšit. Pokud ano::) kód nyní tuto barvu rozpoznává.
  14. Nyní opakujte tento postup (krok 4 - 13), dokud nejsou v kódu integrovány všechny barvy, které chcete použít.
  15. Nezapomeňte odkomentovat neplatnou funkci checkRiddle!

* nejprve přejděte na krok „případ“, pokud jste je ještě nenamalovali.

** můžete být přesnější, pokud chcete pomocí všech 3 (R, G a B), ale pro tento projekt to není potřeba.

Upravte příkazy if na svou hádanku: (pouze pokud chcete změnit řešení)

Krok 5: Pouzdro a malování bloků

Případ a malování bloků
Případ a malování bloků
Případ a malování bloků
Případ a malování bloků
Případ a malování bloků
Případ a malování bloků
Případ a malování bloků
Případ a malování bloků

Případ je poněkud ošidná část, ale není těžké ho vyrobit, jde především o správné měření. Neuvádím svá měření, protože (s největší pravděpodobností) nepoužíváme materiály stejné velikosti.

Malování bloků:

Malovat bloky v barvách, které chcete použít. Doporučuji červenou, zelenou a modrou barvu, protože nejsnáze je rozeznáte pomocí senzoru.

Pokud si netvoříte vlastní logickou barvu také na runách.

Pilíř:

Sloupek má (částečně) skrýt barevný senzor a kabely k němu připojené. Chcete -li určit rozměry sloupku, musíte změřit strany barevného senzoru a určit, jak vysoko chcete, aby váš sloupek byl (ten, který viz obrázek je vysoký 3 cm). Pak to nakreslete na lepenku a vystřihněte, můžete je namalovat, pokud chcete.

Připojte kabely k senzoru DŘÍVE, než jej zabudujete do sloupku, už se nedostanete na kolíky.

Pomocí oboustranné lepicí pásky jsem připevnil senzor uvnitř sloupku. To můžete vidět na třetím obrázku.

Ujistěte se, že diody na senzoru jsou uvnitř pilíře (ne přes okraj), bloky na něm musí stát později.

Znamení „zemřel jsi“:

Odřízněte kousek lepenky a napište na něj „zemřeš“. Jak vidíte na prvním obrázku, na druhou stranu jsem nalepil obrázek rozzlobeného muže s mečem. Zkontrolujte, zda má značka na spodní straně výstupek. Pomocí oka nalepte značku na servo.

Vytvoření místnosti:

  1. Namalujte krabici, kterou jste vybrali pro případ. (Jakoukoli barvu chcete, použil jsem černou)
  2. Nakreslete tvar místnosti na dno krabice a určete délku stěn. (Změřte čáry pomocí pravítka).
  3. Určete, jakou výšku mají mít stěny. Stěny v mém příkladu jsou vysoké 5 centimetrů.
  4. Nyní máte rozměry svých stěn, nakreslete je na lepenku a vystřihněte.
  5. Malovat stěny. (Namaloval jsem je černě)
  6. Přilepte stěny na krabici, na čáry, které jste předtím nakreslili.

Nyní máte místnost nastavenou.

Otvory pro kabely a značku:

Do krabice musíte udělat dva otvory, jeden pro kabely a jeden pro nápis „zemřel jsi“. a pozor! díry nelze odstranit, jakmile jsou tam.

udělejte díru pod místem, kam chcete, aby šel barevný senzor. Zhotovte otvor co nejmenší, ale vyhněte se napětí na kabelech, nechcete, aby se uvolnily.

Otvor pro nápis „zemřel jsi“musí být o něco silnější než karton, který používáte, aby se mohl objevit, aniž by narazil do pouzdra. Délka otvoru závisí na tom, jak velký znak je. K vytvoření otvoru použijte nůž Stanley nebo odřezávací nůž.

Nyní pomocí oboustranné pásky připevněte servomotor k boku krabice.

Krok 6: Nějaké otázky ??

Nyní byste tedy měli být schopni postavit úžasné barevné puzzle s Arduinem. Pokud máte nějaké dotazy, určitě se ptejte!

Bavte se stavět!

Doporučuje: