Sadržaj:

Zagonetka u boji: 6 koraka
Zagonetka u boji: 6 koraka

Video: Zagonetka u boji: 6 koraka

Video: Zagonetka u boji: 6 koraka
Video: Как жить с комфортом в кухне 6 метров. Дизайн и планировка с посудомойкой и всей техникой. #Хрущевка 2024, Srpanj
Anonim
Zagonetka u boji
Zagonetka u boji
Zagonetka u boji
Zagonetka u boji

Hej tamo!

Za školski projekt pod nazivom "If This Then That" morao sam izgraditi interaktivni objekt pomoću Arduina. Odlučio sam sastaviti zagonetku temeljenu na bojama s jednostavnim sustavom povratnih informacija.

Što radi (ukratko):

  1. Određuje boju objekta iznad senzora boje.
  2. Provjerava odgovara li ta boja ispravnom rješenju.
  3. Ili podiže znak "umro si" ili ne, ovisno o tome je li zagonetka riješena ili ne.

Pa biste mogli pomisliti da je ovu zagonetku lako riješiti?

Pa, nekome tko zna kako to funkcionira nekako jest, iako se možete prebaciti oko rješenja! Ali ne brinite, nekome tko nema pojma kako to funkcionira izgleda kao čarolija. Prema mom iskustvu, mnogi su ljudi mislili da se zagonetka odnosi na težinu, a ne na boju. I da ne zaboravimo, vi ste gospodar zagonetke, koliko tragova ćete dati ovisi o vama.

Kako bih ga (želio) koristiti:

Ovu zagonetku bih želio upotrijebiti kao interaktivni dio svoje D&D kampanje.

Korak 1: Materijali

Materijali
Materijali
Materijali
Materijali

Prije početka gradnje trebat će vam sljedeće stvari:

Općenito:

(Kreativan) mozak da smisli zagonetku

Arduino stvari:

  • Arduino Uno
  • Oglasna ploča
  • Servo motor
  • (TCS3200) Senzor boje
  • 7x muški - ženske kratkospojne žice (po mogućnosti sve različite boje, toplo se preporučuje)
  • 11x muški - muške kratkospojne žice
  • powerbank (u slučaju da želite da radi bez vašeg računala/prijenosnog računala)

Kućište:

  • Kutija (za cipele) s poklopcem (za izradu slagalice)
  • par komada kartona (da zidovi, stup u sredini i umrete umrete)
  • Drveni blokovi, (barem) jedna strana moraju biti veći od senzora boje.
  • boja: crna, crvena, plava i zelena (i sve dodatne boje ako želite*)
  • A4 komad bijelog papira
  • Škare
  • Crni marker
  • Jaka dvostrana ljepljiva traka
  • Olovka
  • Instant ljepilo
  • Nož za sjeckanje ili Stanley nož

* mala napomena o bojama: u početku sam također koristio ljubičastu, ali senzor nije mogao razlikovati crvenu i ljubičastu pa sam je izostavio. Imajte na umu da i druge boje možda neće tako dobro funkcionirati (ali možda, nisam probao). Moj je senzor bio jeftin, precizniji senzor vjerojatno može razlikovati više boja.

Korak 2: Zagonetka

Zagonetka
Zagonetka

Najvažniji dio ovog projekta je imati dobru zagonetku za razbijanje mozga.

Kao što možete vidjeti na prvoj slici (onoj s uvodom), na svoje sam blokove naslikao norsonske rune (sa svih strana osim na dnu). Imaju veze s zagonetkom. Zatim sam zalijepio jednostavno pitanje na slučaju: "Pravo bogatstvo je …?".

Koristio sam gornju sliku za prijevod runa. Dao sam i prijevode ljudima koji isprobavaju moju zagonetku.

Rješenje zagonetke:

Pravo bogatstvo je sreća!

Dakle, ono što igrač treba učiniti je zamijeniti blago (blok sa simbolom bogatstva) blokom sa simbolom sreće na njemu.

Iskoristite moju zagonetku, ali ja bih vas potaknuo da smislite svoju.

Korak 3: Ožičenje

Ožičenje
Ožičenje
Ožičenje
Ožičenje

Ožičenje je vrlo jednostavno jer postoje samo 2 komponente (i arduino). U opisu koristim minimalni broj žica, ako želite koristiti više, slobodno to učinite. (Koristio sam više žica na slici)

Arduino na ploču: (Koristite 2 muške - muške žice)

  1. spojite 5V pin na + stranu ploče.
  2. spojite jedan od igle za uzemljenje sa - strane vaše ploče za izradu ploča.

Servo: (Koristite 3 muške - muške žice)

servo ima tri žice: napajanje, uzemljenje i signal.

  1. Napajanje je obično crvena žica, povežite ovu žicu s + stranom ploče.
  2. Uzemljenje je obično crna ili smeđa žica, povežite ovu žicu sa - stranom ploče.
  3. Signal je obično žuta ili narančasta žica, povežite ovu žicu s vodoravnim redom na matičnoj ploči.*

Senzor boje: (Koristite 7 muških - ženskih žica)

  1. VCC: povežite ovu žicu s + stranom ploče (ovo je napajanje).
  2. GND: spojite ovu žicu na - stranu vaše matične ploče (ovo je uzemljeno).
  3. S0: povežite ovu žicu s vodoravnim redom na vašoj ploči.*
  4. S1: povežite ovu žicu s vodoravnim redom na vašoj ploči.*
  5. S2: povežite ovu žicu s vodoravnim redom na vašoj ploči.*
  6. S3: povežite ovu žicu s vodoravnim redom na ploči.*
  7. IZLAZ: spojite ovu žicu u vodoravni red na ploči.*

*Ne govorim vam točno gdje ga postaviti na ploču jer je lakše sami zaključiti što je najbolje u kombinaciji s vašom građom.

Oglasna ploča za Arduino: ** (Koristite 6 muških - muških žica)

Pametno je provjeriti radi li sve prije nego što ga stavite u kutiju, imajte na umu da za to morate izvaditi te kabele i kasnije ih vratiti. Svakako zapamtite ili zapišite koji je kabel na što spojen.

  1. spojite red koji ste spojili sa signalnim pinom servo pogona na pin 9 na Arduinu.
  2. spojite red koji ste spojili sa S0 pinom senzora boje na pin 4 na Arduinu.
  3. spojite red koji ste spojili sa S1 pinom senzora boje s pinom 5 na Arduinu.
  4. spojite red koji ste spojili sa S2 pinom senzora boje na pin 6 na Arduinu.
  5. spojite red koji ste spojili sa S3 pinom senzora boje na pin 7 na Arduinu.
  6. spojite red koji ste spojili s OUT pinom senzora boje na pin 8 na Arduinu.

** Gore navedeni redovi su oni na vašoj ploči.

Korak 4: Kôd

U privitku ovdje pronaći ćete kôd koji vam je potreban za pokretanje ovog projekta. Komentari u kodu trebaju biti jasni o tome što radi. Ako želite detaljnije informacije o tome kako senzor boje radi (ako želite u potpunosti razumjeti kôd), preporučio bih vam da pogledate ove vodiče "Kako senzor radi?" odjeljak.

Iako još niste tamo, postoji nekoliko stvari koje morate prilagoditi u kodu:

  • Prilagodite varijable.
  • Podesite if-naredbe tako da odgovaraju vašoj zagonetki (ako je potrebno).

Zgodno je izraditi stup i obojiti blokove od sljedećeg koraka prije nego prilagodite varijable tako da to ne morate ponoviti.

Prilagodite varijable:

Ako ste pravilno izgradili ožičenje, kôd bi trebao funkcionirati, uzmite komad papira, olovku i (obojene) blokove.*

  1. Privremeno komentirajte funkciju void checkRiddle iz koda. (tako da taj dio ne radi)
  2. Prenesite kôd na svoj Arduino.
  3. Otvorite serijski monitor, on će se početi prikazivati i pokazat će vam R = … G = … B = … (i još neke stvari, sada nisu bitne)
  4. Držite obojeni blok ispred senzora (koliko god bio blizu u vašem konačnom dizajnu) nekoliko sekundi.
  5. Dok ga još držite ispred senzora, isključite Arduino iz struje. (izvucite ga iz USB priključka)
  6. Zapišite vanjske (najviše i najniže) vrijednosti osjetnika boje izmjerene za svaku boju (R, G i B).
  7. Odaberite dvije vrijednosti koje najmanje variraju (na primjer R i B). **
  8. Računajte +10 na najveću vrijednost i -10 na najmanju vrijednost tako da senzor dopušta male pogreške.
  9. Sada zamijenite vrijednosti u kodu onima koje sada imate. (Komentari kažu koje biste vrijednosti trebali zamijeniti)
  10. Ako koristite drugu boju od mene, promijenite i serial.print.
  11. Sada ponovno učitajte kôd na svoj Arduino pomoću svježe izmjerenih vrijednosti.
  12. Testirajte da li serijski monitor lijepo ispisuje boju koju ste upravo unijeli u kôd držeći isti blok u boji ispred njega. Uvjerite se da je dosljedan sve dok ga držite ispred senzora.
  13. Ako ne:: (provjerite vrijednosti, provjerite trebate li povećati raspon. Ako da::) kôd sada prepoznaje ovu boju.
  14. Sada ponavljajte ovaj postupak (korak 4 - 13) dok se sve boje koje želite koristiti ne integriraju u kôd.
  15. Ne zaboravite otkomentirati funkciju void checkRiddle!

* prijeđite na korak "slučaj" ako ih još niste naslikali.

** možete biti precizniji ako želite koristeći sve 3 (R, G i B), ali za ovaj projekt to nije potrebno.

Prilagodite if-naredbe svojoj zagonetki: (samo ako želite promijeniti rješenje)

Korak 5: Slučaj i bojanje blokova

Slučaj i bojanje blokova
Slučaj i bojanje blokova
Slučaj i bojanje blokova
Slučaj i bojanje blokova
Slučaj i bojanje blokova
Slučaj i bojanje blokova
Slučaj i bojanje blokova
Slučaj i bojanje blokova

Slučaj je pomalo lukav dio, ali nije teško napraviti, uglavnom se radi o ispravnim mjerenjima. Ne dajem svoje mjere jer (najvjerojatnije) ne koristimo materijale iste veličine.

Bojanje blokova:

Obojite blokove bojama koje želite koristiti. Preporučujem crvenu, zelenu i plavu boju jer je najlakše razlikovati one sa senzorom.

Ako ne izrađujete vlastitu boju za zagonetke i na runama.

Stub:

Stup treba (djelomično) sakriti senzor boje i kablove pričvršćene na njega. Da biste odredili mjere stupa, morate izmjeriti stranice osjetnika boje i odrediti koliko želite da vaš stup bude visok (onaj koji vidi na slici visok je 3 cm). Zatim nacrtajte to na karton i izrežite, možete ih slikati ako želite.

Pričvrstite žice na senzor PRIJE nego što ga ugradite u stup, više nećete moći dohvatiti igle.

Koristio sam dvostranu ljepljivu traku za pričvršćivanje senzora unutar stupa. To možete vidjeti na trećoj slici.

Uvjerite se da su diode na senzoru unutar stupa (ne preko ruba), da blokovi moraju stajati na njemu kasnije.

Znak "umro si":

Izrežite komad kartona i napišite "umro". Kao što možete vidjeti na prvoj slici, zalijepio sam sliku bijesnog čovjeka s mačem s druge strane. Uvjerite se da znak ima ušicu na dnu. Upotrijebite držač da zalijepite znak na servo.

Kreiranje sobe:

  1. Obojite kutiju koju ste odabrali za kućište. (Bilo koju boju koju volite, koristila sam crnu)
  2. Nacrtajte oblik sobe na dno kutije kako biste odredili duljinu zidova. (Izmjerite linije ravnalom).
  3. Odredite koju visinu želite da zidovi imaju. Zidovi u mom primjeru visoki su 5 centimetara.
  4. Sada imate dimenzije svojih zidova, nacrtajte ih na karton i izrežite ih.
  5. Obojite zidove. (Obojala sam ih u crno)
  6. Zalijepite zidove na kutiju, na linije koje ste prethodno nacrtali.

Sada ste postavili sobu.

Rupe za kabele i znak:

Morate napraviti dvije rupe u kutiji, jednu za kabele i jednu za znak "umrli ste". i budi oprezan! rupe se ne mogu ukloniti nakon što su tamo.

napravite rupu ispod mjesta na koje želite da ide senzor boje. Učinite rupu što je moguće manjom, ali izbjegavajte zatezanje kabela, ne želite da se olabave.

Rupa za znak "umrla si" mora biti malo deblja od kartona koji koristite kako bi se mogao pojaviti bez udarca u kućište. Duljina rupe ovisi o tome koliko je veliki znak. Za izradu rupe upotrijebite Stanley nož ili nož za sjeckanje.

Sada pomoću dvostrane trake pričvrstite servo motor sa strane kutije.

Korak 6: Imate li pitanja ??

Dakle, sada biste trebali moći sastaviti sjajnu zagonetku temeljenu na bojama s Arduinom. Ako imate pitanja, svakako pitajte!

Uživajte u izgradnji!

Preporučeni: