Sadržaj:

Glava gospodina Wallplatea okreće se da vas prati: 9 koraka (sa slikama)
Glava gospodina Wallplatea okreće se da vas prati: 9 koraka (sa slikama)

Video: Glava gospodina Wallplatea okreće se da vas prati: 9 koraka (sa slikama)

Video: Glava gospodina Wallplatea okreće se da vas prati: 9 koraka (sa slikama)
Video: Я работаю в Страшном музее для Богатых и Знаменитых. Страшные истории. Ужасы. 2024, Novembar
Anonim
Image
Image
Motor za senzor
Motor za senzor

Ovo je naprednija verzija robota Eye Illusion Robota gospodina Wallplatea https://www.instructables.com/id/Mr-Wallplates-Eye-Illusion. Ultrazvučni senzor omogućava glavi g. Wallplatea da vas prati dok hodate ispred njega.

Proces se može sažeti na sljedeći način. Senzor se prvo okreće u smjeru suprotnom od kazaljke na satu (lijevo) za 60 stepeni, a zatim skreće udesno dok skenira objekt bliži od 3 stope. Ako ništa ne otkrije prije nego što dosegne 60 stupnjeva udesno, ponavlja skretanje ulijevo, a zatim skenira sve dok ne otkrije objekt. Zatim se glava okreće prema njoj, senzor skreće ulijevo do lijeve granice (-60 stepeni) i ponovo skenira udesno. Ovo okretanje glave i skeniranje nastavljaju se sve dok se objekt ne pomakne dalje od 3 stope ili ode previše lijevo ili desno. Detaljniji sažetak programske logike nalazi se u koraku #6.

Ova metoda praćenja nije prikladna za objekte koji se brzo kreću, što je vidljivo iz videa. Na samom kraju ovog zapisivanja postoje komentari koji opisuju različite metode praćenja pomoću nekoliko ultrazvučnih senzora.

Motor senzora postavljen je da se kreće prilično niskom brzinom. Pokušao sam s većim brzinama, ali oni su rezultirali trzavim pokretima koji nisu izgledali dobro, a praćenje nije bilo mnogo brže.

Zanimljivo je da senzor najbolje radi pri otkrivanju objekata s tvrdim površinama koji dobro reflektiraju zvuk. Objekt s mekom površinom, poput nekoga tko nosi debeli džemper, možda se uopće neće otkriti ako je predaleko (više od 3 i pol metra u mojim testovima). Kad sam ispred sebe držao komad valovitog kartona otprilike 13 x 20 inča i krenuo prema senzoru, otkrio me je otprilike 8 stopa dalje.

U videu sam namjerno ostao udaljen oko 2 i pol metra dok sam se kretao u stranu, kako bi senzor i glava bili usmjereni prema meni. U testovima na bližim udaljenostima, senzor je pokazao nešto lijevo, jer je desna ivica vidnog polja senzora otkrila moju ruku. Vidno polje je oko 25 ili 30 stepeni.

Softver Mindstorms EV3 na računaru koristi se za generiranje programa, koji se zatim preuzima na mikrokontroler pod nazivom EV3 Brick. Metoda programiranja zasniva se na ikonama i koristi programske blokove kao što su blok motora, ultrazvučni senzorski blok, matematički blok itd. Svaki blok ima opcije i parametre. Vrlo je jednostavan i svestran. Također, u svrhu testiranja, kada je Brick povezan s računarom i program radi, zaslon na računaru prikazuje u stvarnom vremenu, kut svakog motora i udaljenost koju senzor detektira. Nadalje, kursor miša može biti postavljen preko podatkovne žice u programu, a vrijednost te podatkovne žice (u stvarnom vremenu) prikazana je u malom prozoru blizu kursora. (Data Wire se koristi za prijenos vrijednosti iz jednog programskog bloka u drugi.)

Supplies

  1. Komplet LEGO Mindstorms EV3.
  2. LEGO ultrazvučni senzor M3 Mindstorms EV3. Nije uključeno u komplet EV3.
  3. 2 okrugle, plastične posude za izvlačenje prečnika najmanje 6 cm (16 cm) i visine 4 ½ cm (1 ¾ inča). Ili, kadica istog promjera i visine oko 3 i pol inča također bi bila u redu.
  4. 4 #8 vijka s ravnom glavom, dugački 1 ½ inča (oko 4 cm).
  5. 4 matice za vijke.
  6. 2 #6 vijka sa okruglom glavom, dugačka oko 1 ½ inča (1 cm), po mogućnosti iste boje kao i posude za vađenje.

ALATI:

  1. Bušilica i burgije.
  2. Šrafciger.
  3. Makaze.

Korak 1: Motor za senzor

Motor za senzor
Motor za senzor
Motor za senzor
Motor za senzor
Motor za senzor
Motor za senzor

U jedan od posuda za vađenje stavite veliki motor i označite gdje ćete izbušiti 2 rupe na dnu. Moji spremnici imaju kružnu udubljenje, pa sam odlučio napraviti rupe unutar nje, tako da glave vijaka ne bi stršile i činile jedinicu klimavom.

Pričvrstite motor pomoću 2 vijka koji prolaze kroz rupe, s crnim LEGO elementima s 3 rupe za podupiranje motora.

Škarama izrežite komad sa stražnje strane spremnika kako biste oslobodili prostor za kabele.

Pričvrstite ultrazvučni senzor na motor pomoću 3 siva LEGO elementa kao što je prikazano na jednoj od fotografija.

Korak 2: Motor za glavu

Motor za glavu
Motor za glavu
Motor za glavu
Motor za glavu
Motor za glavu
Motor za glavu

Najprije škarama odrežite okomitu rubu s druge posude za vađenje, tako da se okrene naopako u rub prve posude. 2 vodoravna ruba kasnije će se pričvrstiti vijcima kako bi 2 spremnika bila čvrsto pričvršćena.

Drugi veliki motor postavite na naopako okrenutu posudu za vađenje, s kabelskim spojem oko ½ inča preko ruba. To je potrebno kako bi glava pravilno stala na spremnik. Označite i izbušite 2 rupe za 2 najudaljenije rupe na motoru.

Pričvrstite motor pomoću 2 vijka koji prolaze kroz rupe, s crnim elementima s 3 rupe za podupiranje motora.

Makazama izrežite komad sa strane spremnika kako biste napravili razmak širok oko 11 cm. To je potrebno da ultrazvučni senzor strši i pomiče se s jedne na drugu stranu. Osovina motora treba se poravnati sa sredinom zazora.

Korak 3: Izmijenite glavu

Izmijenite glavu
Izmijenite glavu
Izmijenite glavu
Izmijenite glavu
Izmijenite glavu
Izmijenite glavu

Uzmite glavu Mr. Wallplate iz „Mr. Wallplate’s Eye Illusion”robota i uklonite stražnje postolje. Može se jednostavno povući.

Pozivajući se na jednu od fotografija, uzmite 2 crna elementa u obliku X i 2 plava elementa koji imaju presjek poput "X" na jednom kraju i "O" na drugom kraju. Pričvrstite ih na donji element na glavi kao što je prikazano. Glava će kliziti oko kontejnera na njima.

Korak 4: Pričvrstite glavu na motor

Pričvrstite glavu na motor
Pričvrstite glavu na motor
Pričvrstite glavu na motor
Pričvrstite glavu na motor
Pričvrstite glavu na motor
Pričvrstite glavu na motor

Uzmite elemente prikazane na prvoj fotografiji (osim duge) i spojite ih zajedno kao što je prikazano na drugoj fotografiji. Zatim ga pričvrstite pri dnu glave, kao što je prikazano. To će podržati glavu i spriječiti joj klimanje gore -dolje.

Motor pričvrstite na rupe ispod usnog motora, koristeći dugački, sivi element X-presjeka. Gurnite element dalje do oslonca iz prethodnog odlomka, kao što je prikazano.

Korak 5: Spojite EV3 Brick na Mr. Wallplate

Spojite EV3 Brick na Mr. Wallplate
Spojite EV3 Brick na Mr. Wallplate
Spojite EV3 Brick na Mr. Wallplate
Spojite EV3 Brick na Mr. Wallplate

Ravni kabeli u setu EV3 spajaju se na opeku na sljedeći način:

Priključak A: kabel od 14 inča (35 cm) do malog usnog motora.

Priključak B: kabel od 10 inča (26 cm) do velikog motora za glavu.

Priključak C: kabel od 14 inča (35 cm) do velikog motora za ultrazvučni senzor.

Priključak 4: Najduži kabel do ultrazvučnog senzora, s petljom blizu opeke. Petlja će omogućiti senzoru da se bolje kreće.

Provjerite je li senzor okrenut ravno prema spremniku. Motor senzora možete okrenuti ručno. Postavite sklop glave na spremnik senzora tako da senzor strši na sredini praznine. Izbušite 2 probne rupe kroz oba ruba kontejnera otprilike 1 inč iza rubova zazora. Provucite 2 vijka kroz ove rupe kako bi 2 spremnika bila čvrsto pričvršćena.

Korak 6: Opis programa

Logika programa je sažeta u nastavku. Mislim da bi koraci #3 i #6 vjerojatno bili drugačije izvedeni u programu za drugačiji sistem kao što je Arduino. LEGO Mindstorms EV3 je vrlo koristan i jednostavan za upotrebu, ali postoje neka ograničenja u tome što se može učiniti. Jedini način skeniranja koji sam mogao shvatiti bio je okretanje senzora za 10 stupnjeva odjednom i provjeravanje da li se otkriva neki predmet.

  1. Inicijalizacija: postavite varijable na nulu i pričekajte 7 sekundi.
  2. Okrenite senzor u smjeru suprotnom od kazaljke na satu (lijevo), do lijeve granice (-60 stepeni).
  3. Okrenite senzor za 10 stepeni udesno.
  4. Je li se senzor pomaknuo na desnu granicu (+60 stupnjeva)?
  5. Ako da, provjerite je li netko otkriven. Ako se ne otkrije, senzor se okreće za 120 stupnjeva ulijevo i program nastavlja na sljedeći korak. Ako se otkrije, osoba se odselila. Program kaže "Zbogom", glava i senzor se okreću prema naprijed, a program se zaustavlja.
  6. Vratite se na korak #3 ako senzor ne vidi ništa unutar 36 inča.
  7. Ovaj korak se izvodi ako je senzor otkrio nešto unutar 36 inča. Okrenite glavu prema otkrivenoj osobi. Ako niko ranije nije otkriven, recite "Zdravo".
  8. Vratite se na korak #2 za nastavak skeniranja. Ali ako se petlja ponovi 20 puta, program nastavlja na sljedeći korak.
  9. Recite "Igra je gotova". Glava i senzor se okreću prema naprijed i program se zaustavlja.

Korak 7: Izgradite program

Izgradite program
Izgradite program
Izgradite program
Izgradite program
Izgradite program
Izgradite program

LEGO Mindstorms EV3 ima vrlo prikladnu metodu programiranja zasnovanu na ikonama. Programski blokovi prikazani su pri dnu ekrana i mogu se povući i ispustiti u prozor za programiranje za izradu programa. Napravio sam 4 „Moja bloka“, koji su mini programi, poput potprograma u redovnim programima. Ovo je učinilo logiku glavnog programa na snimku ekrana lakšom za razumijevanje.

Nisam mogao shvatiti kako vama postaviti preuzimanje programa, pa sam uključio i snimke zaslona programa. Snimci ekrana sadrže komentare koji opisuju šta Blokovi rade. Ne bi vam trebalo puno vremena da ga izgradite i/ili promijenite prema svojim potrebama. Snimke ekrana prikazuju se sljedećim redoslijedom:

  1. Glavni program.
  2. “Inicijaliziraj” Moj blok.
  3. “Okrenite senzor lijevo do lijeve granice” My Block.
  4. „Okreni glavu“Moj blok.
  5. „Završi“Moj blok.

Prilikom izrade ovog programa predložio bih sljedeće:

  1. Prvo izgradite "Moje blokove".
  2. Važno je raditi s lijeva na desno i povećati blokove petlje i prekidača prije nego što povučete druge blokove unutra. Naišao sam na neuredne probleme pokušavajući da ubacim dodatne blokove unutar petlji tokom testiranja i usavršavanja gotovo završenog programa.
  3. Veći blok petlje trebao bi se povećati gotovo do desne ivice programskog platna, prije nego počnete umetati blokove. To je potrebno kako bi imali dovoljno prostora za uvlačenje ostalih blokova unutra. Nakon toga se može smanjiti.

Korak 8: Preuzmite program na EV3 Brick

EV3 Brick se može povezati sa računarom putem USB kabla, Wi-Fi ili Bluetooth veze. Kada je povezan i uključen, to je naznačeno u malom prozoru u donjem desnom kutu prozora EV3 na računaru. Klikom na odgovarajuću ikonu s krajnje desne strane u donjem desnom kutu program će se preuzeti na EV3 Brick i odmah se pokrenuti.

Nakon preuzimanja, EV3 Brick se može odvojiti od računara i program se može pokrenuti na EV3 Brick.

Korak 9: ZAKLJUČNE NAPOMENE

Ovo je bio zabavan projekt i poučan o ultrazvučnom senzoru. Nadam se da će vam i to biti zanimljivo.

Postoji još jedan pristup skeniranju: Nekoliko ultrazvučnih senzora moglo bi se postaviti jedan do drugog, razlijevajući se na otprilike 25 ili 30 stepeni jedan od drugog. Glava bi se mogla okrenuti u smjeru onog koji senzor otkrije objekt. Ova metoda bi otkrila objekt koji se brzo kreće mnogo bolje od metode opisane u prethodnom projektu. Međutim, glava bi imala samo mali broj pravaca s kojima bi se suočila. Ova metoda bi trebala biti moguća s Mindstorms EV3. Brick ima 4 ulaza za senzore za do 4 ultrazvučna senzora (programiranje zahtijeva da se broju portova dodijeli senzor). Više senzora moglo bi se smjestiti lancem druge opeke.

Ideja za povećanje broja položaja glave: Ako su senzori okrenuti možda 20 stepeni jedno od drugog, vidna polja bi se preklapala, a 2 senzora bi otkrila objekt u preklopljenom području. Glava bi tada mogla biti okrenuta u smjeru preklapanja. Ne znam da li je to moguće; to jest, ako bi 2 senzora mogla otkriti objekt u preklopljenom području, a da njihovi signali ne ometaju jedni druge.

Preporučuje se: