03 ruj Odabir boje bežičnom komunikacijom i servo motorom
Opis projekta
Za izradu ovog projekta trebate 2 micro:bita koji će međusobno komunicirati i servo motor iz BOSON seta. Ideja projekta da se servo motor pozicionira iznad jedne od 6 mogućih boja nakon što njegov micro:bit primi poruku od drugog micro:bita. Pritiskom oba tipkala A i B istovremeno na micro:bitu koji šalje poruku, odabire se nasumičan broj između 1 i 6 i šalje micro:bitu koji je povezan sa servo motorom. Taj micro:bit će temeljem primljene poruke upravljati radom servo motora i odrediti kut na kojem se servo motor mora pozicionirati. Dakle, poluga na servo motoru se mora zaustaviti na nekom mjestu na skali boja koju ste prethodno izradili od papira ili kartona. Prije nego što se poluga zaustavi na nekoj boji, dodajte da se motor zakreće 4 puta u rasponu kuta od 60 do 120 stupnjeva kako bi se stekao dojam biranja.
U kreativnom kutku pogledajte primjer izrade ovog projekta te pronađite inspiraciju za izradu svog modela.
Potrebni moduli
- pločica za spajanje elektroničkih modula
- USB kabel za napajanje
- servo motor
Spajanje modula
U pločicu smjestite micro:bit. Na mjestima za spajanje elektroničkih modula kablovima povežite i spojite servo motor kao što vidite na prikazu spoja. U ovom primjeru servo motor je spojen na izvodu P0. Prema prikazu spajanja kabelima povežite modul na izvod upravljačke pločice. Možete ga rasporediti i na druga mjesta ako vam tako bolje odgovara kad ćete spoj implementirati u svoj kreativni rad. Pripazite pri tome da i u programskome kôdu bude postavljen odgovarajući izvod jer se u suprotnome program neće izvršavati.
Napomena: Kad završite s prebacivanjem programa na micro:bit, spojite kabel za napajanje na upravljačku pločicu.
Najprije izradite program za prvi micro:bit (micro:bit pošiljatelj), a zatim izradite program za drugi micro:bit koji pokreće servo motor.
1. korak
Program za prvi micro:bit
Naredbom radio set group 1, iz kategorije naredbi Radio, definirajte radio kanal na kojem će micro:biti komunicirati. U kategoriji Variables kreirajte varijablu broj pomoću koje će se drugom micro:bitu poslati neki nasumičan broj. Postavite varijablu broj na 0 naredbom set broj to 0 iz kategorije Variables. Sve naredbe stavite u on start blok.
2. korak
Želite da se pritiskom na oba tipkala A i B istovremeno pošalje nasumičan broj na drugi micro:bit pa iz kategorije Input odaberite naredbu on button A pressed i promijenite A u A+B. U blok on button A+B pressed stavite naredbu set broj to i kao argument naredbe stavite pick random 0 to 10 iz kategorije Math. Umjesto 0 i 10 upišite brojeve 1 i 6. Na kraju dodajte naredbu radio send number 0 iz kategorije Radio i kao argument stavite varijablu broj koja se nalazi u kategoriji Variables.
Sada se pritiskom na A+B tipkala u varijablu broj sprema nasumično odabran broj između 1 i 6 te se naredbom radio send number broj vrijednost šalje drugom micro:bitu. Time je program za prvi micro:bit gotov.
3. korak
Program za drugi micro:bit
U programu za drugi micro:bit prvo je potrebno postaviti radio kanal na vrijednost 1 kako bi mogao primati poruke od prvog micro:bita. U on start blok stavite naredbu radio set group 1 iz kategorije Radio.
Nakon što primi vrijednost u obliku broja, treba definirati što želite da micro:bit radi. U prostor za programiranje, iz kategorije Radio, stavite blok on radio received receivedNumber. Unutar njega ćete dodavati sve iduće naredbe.
4. korak
Odaberite repeat petlju iz Loops kategorije naredbi i stavite je unutar on radio received receivedNumber bloka. Zadano je da se poluga na servo motoru, prije odabira boje, pomiče 4 puta u rasponu kuta od 60 do 120 stupnjeva kako bi se stekao dojam biranja. To ćete napraviti naredbama servo write pin P0 to 60 i servo write pin P0 to 120 iz Pins kategorije naredbi. Nakon svake naredbe stavite pauzu od pola sekunde.
5. korak
Odaberite repeat petlju iz Loops kategorije naredbi i stavite je unutar on radio received receivedNumber bloka. Zadano je da se poluga na servo motoru, prije odabira boje, pomiče 4 puta u rasponu kuta od 60 do 120 stupnjeva kako bi se stekao dojam biranja. To ćete napraviti naredbama servo write pin P0 to 60 i servo write pin P0 to 120 iz Pins kategorije naredbi. Nakon svake naredbe stavite pauzu od pola sekunde.