12
NXT – Napred Skripta je pisana s naglaskom na ona prilikom vožnje oblikuju razn zamišljena su robotska kolica „Vj kolica crtaju svoju putanju po po Sadržaj Uvod……………………………… 1. Hardver…………………… 2. Osjetilo okretanja…. 3. Programiranje i vježb 4. Prije nastavka nekol 5. Crtanje…………………… Zaključak……………………… 1. Hardver Upute za sklapanje: Slika 1. Robotska ko LEGO® NXT – NAPREDNO PROGRAMIRA Marino Čikeš dno programiranje programiranje motora koji moraju voditi robotsk ne geometrijske likove (na primjer krugove). Da b jeran pas“ s držačem za flomaster. Time je omogu odlozi od bijelog papira. …………………………………………………………………………… …………………………………………………………………………… .………..………………………………………………………………banje…………………………………………………………………… liko pitanja…………………………………………………………… …………………………………………………………………………… ……………………………………………………………………………… Robotska kolica „Vjeran pas“ olica s dva motora, tri osjetila i ugrađenim floma ANJE 3 1. rujan 2010 1 3 ka kolica na način da bi ugođaj bio potpun gućeno da robotska ………………………………1 ……………………………1 ………………….…………..5 ……………………………..7 ……………………………10 ……………………………..10 ……………………………12 asterom

LEGO NXT Napredno programiranje 3 · LEGO® NXT – NAPREDNO PROGRAMIRANJE 3 1. rujan 2010 Marino Čikeš 7 Dakle, ubacite još jedan blok „ MOTOR “ između „ MOTOR C “ i

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

  • NXT – Napredno programiranje 3

    Skripta je pisana s naglaskom na programiranje motora koji moraju voditi robotska kolica na način da ona prilikom vožnje oblikuju razne geometrijskezamišljena su robotska kolica „Vjeran pas“ s držačem za flomaster. Time je omogućeno da robotska kolica crtaju svoju putanju po podlozi Sadržaj Uvod………………………………………………………………………………………………………………………………………1

    1. Hardver………………………………………………………………………………………………2. Osjetilo okretanja….3. Programiranje i vježbanje………………………………………………………………………………………………..74. Prije nastavka nekoliko pitanja………………………………………………………………………………………105. Crtanje………………………………Zaključak………………………………………………………………………………………………………………………………12

    1. Hardver

    Upute za sklapanje:

    Slika 1. Robotska kolica s dva motora, tri o

    LEGO® NXT – NAPREDNO PROGRAMIRANJE 3

    Marino Čikeš

    Napredno programiranje 3

    Skripta je pisana s naglaskom na programiranje motora koji moraju voditi robotska kolica na način da oblikuju razne geometrijske likove (na primjer krugove). Da bi ugođaj bio potpun

    su robotska kolica „Vjeran pas“ s držačem za flomaster. Time je omogućeno da robotska crtaju svoju putanju po podlozi od bijelog papira.

    Uvod………………………………………………………………………………………………………………………………………1Hardver………………………………………………………………………………………………

    ….………..………………………………………………………………………………….Programiranje i vježbanje………………………………………………………………………………………………..7Prije nastavka nekoliko pitanja………………………………………………………………………………………10Crtanje………………………………………………………………………………………………………

    Zaključak………………………………………………………………………………………………………………………………12

    Robotska kolica „Vjeran pas“

    Slika 1. Robotska kolica s dva motora, tri osjetila i ugrađenim flomasterom

    NAPREDNO PROGRAMIRANJE 3 1. rujan

    2010

    1

    Napredno programiranje 3

    Skripta je pisana s naglaskom na programiranje motora koji moraju voditi robotska kolica na način da a bi ugođaj bio potpun

    su robotska kolica „Vjeran pas“ s držačem za flomaster. Time je omogućeno da robotska

    Uvod………………………………………………………………………………………………………………………………………1 Hardver……………………………………………………………………………………………………………………………1

    ………………….…………..5 Programiranje i vježbanje………………………………………………………………………………………………..7 Prije nastavka nekoliko pitanja………………………………………………………………………………………10

    …………………………………………………………………………………………..10 Zaključak………………………………………………………………………………………………………………………………12

    sjetila i ugrađenim flomasterom

  • Slika 2. Gradnju za

    Slika 3. U nastavk

    Slika

    LEGO® NXT – NAPREDNO PROGRAMIRANJE 3

    Marino Čikeš

    Slika 2. Gradnju započni od tijela s motorima

    Slika 3. U nastavku, dodajte nosač glave

    Slika 4. Dodajte i ove pomoćne dijelove

    NAPREDNO PROGRAMIRANJE 3 1. rujan

    2010

    2

  • Slika 5. Sve skupa treba ukrutiti

    Slika 7. Učvrsti

    LEGO® NXT – NAPREDNO PROGRAMIRANJE 3

    Marino Čikeš

    Slika 5. Sve skupa treba ukrutiti pa dodajte i ove pomoćne dijelove

    Slika 6. Dodajte kotače i mikrofon

    Učvrstite nosač glave i dodajte osjetilo dodira

    NAPREDNO PROGRAMIRANJE 3 1. rujan

    2010

    3

    i ove pomoćne dijelove

  • Slika 8. Dodaj

    Slika 10. Sagradi

    LEGO® NXT – NAPREDNO PROGRAMIRANJE 3

    Marino Čikeš

    Slika 8. Dodajte radar i dodatke za nosač flomastera

    Slika 9. Dodajte još dva kotača

    Slika 10. Sagradite pomoćni oslonac na kotačima

    NAPREDNO PROGRAMIRANJE 3 1. rujan

    2010

    4

  • Slika 11. Spojite pomoćni oslonacKolica su zgotovljena. Priključite

    2. Osjetilo okretanja To osjetilo nije u posebnom kućištutahometar.

    Slika 12. LEGO motor bez jednog poklopca. Tahometa

    Pokrenite „NXT 2.0 PROGRAMMINGU prozoru „START NEW PROGRAMZatvorite „ROBOT EDUCATOR“ i otvoriIz mape „ACTION“ dovucite blok „U svojstvima motora ugodite „PORT: C

    LEGO® NXT – NAPREDNO PROGRAMIRANJE 3

    Marino Čikeš

    pomoćni oslonac s robotskim kolicima. Dodajte rep i sagradite

    te kablove: lijevi motor na B, a desni motor na C. Mdodira i radar nemojte priključivati

    m kućištu, već je u samome LEGO motoru ugrađeno osjetilo okretanja ili

    . LEGO motor bez jednog poklopca. Tahometar je precizni mjerni instrument

    NXT 2.0 PROGRAMMING“. START NEW PROGRAM“ upišite „VJERAN PAS“ te klikni na „GO>>“.

    “ i otvorite „COMPLETE PALETTE“. blok „MOTOR“.

    PORT: C“.

    NAPREDNO PROGRAMIRANJE 3 1. rujan

    2010

    5

    te nosač flomastera. a desni motor na C. Mikrofon, osjetilo

    ugrađeno osjetilo okretanja ili

    r je precizni mjerni instrument

  • LEGO® NXT – NAPREDNO PROGRAMIRANJE 3 1. rujan

    2010

    Marino Čikeš 6

    Iz palete u mapi „FLOW“ dovucite blok „WAIT“. U njegovim svojstvima ugodite „SENSOR: ROTATION SENSOR“ (osjetilo okretanja), zatim „PORT: C“ (spojen na izlaz C) i na kraju „UNTIL: 720 DEGREES“ (preko 720 stupnjeva). Ostale postavke zasad ne dirajte.

    Slika 13. Nakon opisanih radnji dijagram bi morao izgledati ovako Otpremite program u NXT kocku i isprobajte ga. Robotska kolica će se zavrtjeti oko kotača motora B. Nekoliko riječi o stupnjevima Stupanj se koristi u geometriji i označava veličinu kuta. Mali kružić iznad broja je oznaka za stupanj.

    Slika 14. Jedan puni okretaj kotača daje 360o

    Ako je jedan puni krug 360o, koliko je stupnjeva kada kotač napravi dva puna kruga? Odgovor: 720o. 720o = 2 okretaja × 360o. 3 okretaja je 1080o, a 1,5 okretaj je 540o. Prepravite program tako da kolica voze ravno 720o osjetila okretanja.

    Slika 15. Robotska kolica voze ravno kada su pokrenuta oba motora

  • LEGO® NXT – NAPREDNO PROGRAMIRANJE 3 1. rujan

    2010

    Marino Čikeš 7

    Dakle, ubacite još jedan blok „MOTOR“ između „MOTOR C“ i „ROTATION SENSOR C“. Ugodite mu „PORT: B“. Novi dijagram otpremite u NXT kocku i isprobajte ga. Robotska kolica bi morala voziti ravno sve dok osjetilo okretanja ne javi da je ostvareno okretanje od 720o. Tada motori staju. Da li su kotači motora napravili stvarno 720o (odnosno dva puna kruga → 2 × 360o)? Radi preciznog izvida učinite slijedeće: školskom kredom ili bijelim korektorom napravite malu oznaku na obodu crne gume desnog kotača te prepravite dijagram da oba motora vrte sporije, na primjer „POWER: 25“. Otpremite program i ponovno isprobajte, ali sada precizno brojite koliko se puta okrene kotač. Oh! Što se to dogodilo? Kotači robotskih kolica rade dva kruga i još malo. Da, to je bilo za očekivati. Radi inercije, motori vrte još malo pa smo dobili neprihvatljivu nepreciznost. To valja popraviti. Nakon 720o motore treba na silu zaustaviti.

    Slika 16. Prepravite dijagram. Dodajte još dva bloka „MOTOR“ te prepravite njihova svojstva tako da se motori zaustave trenutno

    Otpremite prepravljeni dijagram u NXT kocku te ponovno provjerite da li kotači robotskih kolica rade točno dva puna kruga. Jeste li zadovoljni? Naravno, ipak je ovaj robot „vjeran pas“. 3. Programiranje i vježbanje

    Učinite slijedeće: prepravite gornji dijagram kako bi robotska kolica umjesto naprijed vozila unatrag. Učinite to i provjerite!

    Slika 17. Motor C → unatrag; motor B → unatrag; osjetilo okretanja C → unatrag

    Vrlo je važno da i osjetilo bude ugođeno u istom smjeru okretanja motora koji se nadzire. Isprobajte! Slijedeći zadatak glasi: Nadovežite program slike 17. s programom slike 16. tako da dobijete kolica koja voze dva okretaja kotača naprijed i zatim dva okretaja kotača unazad.

    Slika 18. Radi bržeg crtanja koristite se metodom „COPY/PASTE“. Pretpostavka je da niste pobrisali program sa slike 17. koji tjera kolica unazad. Kliknite i držite lijevi klik miša te ga razvucite preko pet

  • postojećih blokova tako da blokovi poplave. „COPY“, a zatim na „PASTE“. Zalijepljenu kopiju blokova zakači

    nastavku dijagrama. Prva tri bloka prepravi Otpremite program u NXT kocku te ga isprobajočekivanju? Da li su se robotska kolica zaustavila na istomOh! Robotska kolica se nisu zaustavila na istoduži od puta unaprijed. Dva okretaja kotača naprijed, a zatim četiri okretaja kotača unazad. Što je posrijedi?

    Slika 19.Raščlanimo događanja. A) Motori naprijed do 720

    C) Motori unazad dok osjetilo ne D) Osjetilo uvijek broji od nule.

    Slika 20. Ovako se to radi ispravno

    C) Narediti osjetilu okretanja da se k

    LEGO® NXT – NAPREDNO PROGRAMIRANJE 3

    Marino Čikeš

    tako da blokovi poplave. Na alatnoj traci, u padajućem izborniku. Zalijepljenu kopiju blokova zakačite mišem te dovuci

    nastavku dijagrama. Prva tri bloka prepravite kako bi motori i osjetilo vrtjeli i mjerili prema naprijed

    program u NXT kocku te ga isprobajte. Da li se robotska kolica ponašaju prema

    Da li su se robotska kolica zaustavila na istome mjestu otkud su krenula? obotska kolica se nisu zaustavila na istome mjesto, je li tako? U stvari, put unaz

    duži od puta unaprijed. Dva okretaja kotača naprijed, a zatim četiri okretaja kotača unazad. Što je

    .Raščlanimo događanja. A) Motori naprijed do 720o B) Do ove točke sve je uredu

    C) Motori unazad dok osjetilo ne pročita 720o unazad. Strelica označava gdje je osjetilu 720D) Osjetilo uvijek broji od nule. A gdje je nula? Eto, zbog toga se dogodilo neočekivano

    . Ovako se to radi ispravno. A) Motori naprijed do 720B) Do ove točke je sve uredu

    Narediti osjetilu okretanja da se kod ove točke resetira. Sad je ova točka nulaD) Motori unazad do 720o

    NAPREDNO PROGRAMIRANJE 3 1. rujan

    2010

    8

    traci, u padajućem izborniku „EDIT“ kliknite na mišem te dovucite i otpustite u

    rtjeli i mjerili prema naprijed

    lica ponašaju prema

    , je li tako? U stvari, put unazad je dvostruko duži od puta unaprijed. Dva okretaja kotača naprijed, a zatim četiri okretaja kotača unazad. Što je

    trelica označava gdje je osjetilu 720o unazad og toga se dogodilo neočekivano

    . A) Motori naprijed do 720o

    točka nula

  • LEGO® NXT – NAPREDNO PROGRAMIRANJE 3 1. rujan

    2010

    Marino Čikeš 9

    Popravite program. Iz palete izaberite žutu ikonu „SENSOR“ (četvrta odozdo) te zakačite i odvucite blok „ROTATION SENSOR“. Otpustite ga između petog i šestog bloka.

    Slika 21. Ovo je komandni blok i stoga nemojte ga zamijeniti s narančastim koji je „WAIT“ (sačekaj) blok. Jednostavno zapamtite: ŽUTO → RESET, a NARANČASTO → SAČEKAJ BROJ OKRETANJA

    U svojstvima žutog bloka ugodite: „PORT: C“ i „ACTION: RESET“. Dakle, nakon vožnje naprijed 720o osjetilo okretanja se resetira tako da se radnja - unazad 720o, broji od nule. Otpremite program u NXT kocku i provjerite ispravnost. Novi zadatak glasi: Neka robotska kolica vrte ulijevo za 720o desnog kotača.

    Slika 22. Nacrtajte dijagram, ugodite postavke i otpremite u NXT kocku

    Robotska kolica bi trebala zavrtjeti desnim kotačem. Cijela kolica se zakreću oko lijevog kotača i pritom opisuju oko pola kruga. Ako je sve kako treba, radi vježbe prepravite program tako da robotska kolica vrte udesno za 720o lijevog kotača. Program otpremite u NXT kocku te ga isprobajte.

    Slika 23. Robotska kolica bi trebala zavrtjeti lijevim kotačem

    Konačno, radi vježbe prepravite program tako da robotska kolica zavrte u mjestu, udesno za 720o okretanja kotača.

    Slika 24. Ako je sve kako valja robotska kolica se zakreću oko svoje osi udesno

  • 4. Prije nastavka nekoliko pitanja

    Razmislite i odgovorite!

    I. Program za LEGO NXT crta se kao blokovisi redoslijed pokretanja određenih blokova? Objasni

    II. Što će se desiti ako prespojitea pritom ne dirate program? Objasni

    III. Svojstva kojeg bloka trebateokretanja kotača.

    IV. Da li veličina kotača može utjecati na to koliko će se robotska kolicprepravljate program? Objasni

    V. U jednom od prijašnjih programa robotska kolica naprijed. Mogu li ta kolica još nekako vrtjeti udesno? Na primjer, da li će kolica vrtjeti udesno ako samo desni motor vrti unazad? Objasni

    VI. Napišite i isprobajte program koji vrti robotska kolica udesno kad unazad!

    6. Crtanje

    Proučite donju sliku. Spojite flomaster za nosač kompleta. Flomaster morate okrenuti s vrhom prema dolje na način da sam vrh lagano premašuje donju ravninu robotskih kolica. Na taj će način flomaster pritiskati prema paspustite na podlogu pa se neće desiti

    Slika 25. Flomaster nije

    Isprobajte da li robotska kolica štogod dužine nekoliko centimetara kao ovaj na slici 26

    Slika 26. Napomena: želite li pisati podsjetn„Ugođen je kut od 1440“) dovoljan je lijevi dvostruki klik po praznom dijelu, na primjer iznad nekog bloka. Pojavljuje se crni pravokutnik, a to je znak da se može započeti pisati po tipkovnici računa

    LEGO® NXT – NAPREDNO PROGRAMIRANJE 3

    Marino Čikeš

    4. Prije nastavka nekoliko pitanja

    Program za LEGO NXT crta se kao blok-dijagram. Kojim se redom odvija program? O čemu ovisi redoslijed pokretanja određenih blokova? Objasnite! Što će se desiti ako prespojite kablove motora tako da na NXT kocki zamijenite

    program? Objasnite! Svojstva kojeg bloka trebate prepraviti ako želite da se kotači robotskih kolica vrte za 1440

    Da li veličina kotača može utjecati na to koliko će se robotska kolica zakrenuti, a da ne program? Objasnite!

    U jednom od prijašnjih programa robotska kolica su vrtjela udesno kada je lijevi motor vrtio Mogu li ta kolica još nekako vrtjeti udesno? Na primjer, da li će kolica vrtjeti udesno desni motor vrti unazad? Objasnite!

    program koji vrti robotska kolica udesno kad samo desni motor vrti

    flomaster za nosač na robotskim kolicima uz pomoć dviju žutih gumicaokrenuti s vrhom prema dolje na način da sam vrh lagano premašuje

    donju ravninu robotskih kolica. Na taj će način flomaster pritiskati prema papiru kad robotska kolica na podlogu pa se neće desiti da se crta ne nacrta zbog možebitnih grba.

    . Flomaster nije sastavni dio kompleta LEGO 9797

    da li robotska kolica štogod crtaju. Napišite jednostavan program za crtanje ravne crte

    kao ovaj na slici 26.

    li pisati podsjetnike ili napomene po dijagramu (kao na ovoj slici tekst:

    dovoljan je lijevi dvostruki klik po praznom dijelu, na primjer iznad nekog bloka. Pojavljuje se crni pravokutnik, a to je znak da se može započeti pisati po tipkovnici računa

    Probajte!

    NAPREDNO PROGRAMIRANJE 3 1. rujan

    2010

    10

    Kojim se redom odvija program? O čemu

    a tako da na NXT kocki zamijenite „PORT“ B i C,

    da se kotači robotskih kolica vrte za 1440o

    a zakrenuti, a da ne

    su vrtjela udesno kada je lijevi motor vrtio Mogu li ta kolica još nekako vrtjeti udesno? Na primjer, da li će kolica vrtjeti udesno

    desni motor vrti

    uz pomoć dviju žutih gumica iz okrenuti s vrhom prema dolje na način da sam vrh lagano premašuje

    piru kad robotska kolica

    jednostavan program za crtanje ravne crte

    po dijagramu (kao na ovoj slici tekst: dovoljan je lijevi dvostruki klik po praznom dijelu, na primjer iznad nekog

    bloka. Pojavljuje se crni pravokutnik, a to je znak da se može započeti pisati po tipkovnici računala.

  • LEGO® NXT – NAPREDNO PROGRAMIRANJE 3 1. rujan

    2010

    Marino Čikeš 11

    Kad si program otpremio u NXT kocku robotska kolica namjestite na pod učionice iznad bijelog komada papira. Uputite program. Da li se nacrtala neprekinuta ravna crta dužine oko 30-35 centimetara? Ako treba, popravite flomaster. Krenite sa zadacima: 1. Neka robotska kolica oblikuju veći krug.

    Slika 27. Treba se iscrtati cijeli krug. Nakon nekoliko autorovih pokušaja došlo se do kuta od 2500o. I vi isprobajte razne kutove kako bi došli do zadovoljavajućeg rješenja

    2. Neka robotska kolica oblikuju ravnu crtu dužine 10 centimetara.

    Slika 28. Nacrtajte dijagram i otpremite ga u NXT kocku Kako ste odredili kut osjetila okretanja da kolica naprave točno 10 centimetra puta? Malo matematike:

    Slika 29. Ovo su imena iz geometrije koja trebate zapamtiti Opseg je teško izmjeriti, a on određuje koliko će centimetara prijeći robotska kolica za jedan puni krug kotača.

    Slika 30. Dužina crvene crte jednaka je prijeđenom putu jednog punog kruga kotača, a to je opseg

  • LEGO® NXT – NAPREDNO PROGRAMIRANJE 3 1. rujan

    2010

    Marino Čikeš 12

    No postoji matematička formula koja će vam olakšati posao i ona glasi:

    Opseg = Promjer × π

    π je grčko slovo (čita se PI) koje iznosi 3,14 i nikad ne mijenja vrijednost, to je konstanta. Koliki je promjer kotača robotskih kolica? Izmjerite! Dobiti ćete 3 centimetra. Koliki je onda opseg? Opseg = 3 × 3,14 = 9,42 cm. Koliko stupnjeva mora napraviti kotač da bi kolica prešla put od 10 cm? Odgovor je: jedan puni krug (360o) i još malo. Koliko je to – još malo? Razmislite i postavite zadatak! Za 3600 okretaja kotača kolica naprave 9,42 centimetra. Za koliko će stupnjeva (A) kolica napraviti 10 centimetra? Matematika i za to ima rješenje, relaciju, a ona glasi: ���

    �,�� =

    � ili 360 × 10 = 9,42 × A → A =

    �����

    �,�� →A = 382,16.

    Kotač mora napraviti 382o kako bi kolica prevalila put od 10 centimetara (jedan puni krug i još 22o). U svojstvima bloka osjetila okretanja C dijagrama sa slike 28. upišite „UNTIL: 382 DEGRESS“. Otpremite program u NXT kocku i uputite ga. Izmjerite crtu koju je ostavio flomaster na papiru. Da li je dužina crte 10 centimetara? Ako vam je sve jasno, vratite se do poglavlja 4. te ponovno pročitajte i objasnite pitanje IV. Zaključak Izvrsno obavljen posao. Želite li samostalno vježbati eto još jedan zadatak: napišite program tako da robotska kolica na papiru nacrtaju slovo S. Kad završite pozovite učitelja/učiteljicu pa pokažite što ste učinili. Nekoliko riječi o relaciji:

    Relacija je matematička tehnika rješavanja jednadžbi. Valja ju koristiti kad treba pronaći jednu nepoznatu promjenljivu. Bacite pogled na jednadžbu koja slijedi:

    =

    Upotrebom tehnike preslagivanja relacije došlo se do spoznaje da je ovu jednadžbu dovoljno pomnožiti u križ, a to znači pomnožiti lijevi brojnik s desnim nazivnikom te lijevi nazivnik s desnim brojnikom. Dobiva se slijedeća jednakost:

    A × D = B × C. Sad je dovoljno lijevu i desnu stranu podijeliti s promjenljivom D kako bi na lijevoj strani jednadžbe ostala samo nepoznata promjenljiva A:

    A × D = B × C │ : D. Dobiva se:

    ���

    � =

    ��

    �.

    Rješenje je:

    A =

    ��

    � jer se s lijeve strane krate dvije promjenljive D.