71
FLL-i suvekool 31.07-2.08 2018 Kopra turismitalu

FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

FLL-i suvekool31.07-2.08 2018 Kopra turismitalu

Page 2: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Millega täna tegeleme?• Muutuja ja tehted nendega.

• Alamprogrammid (MyBlocks).

• Ühtlane kiirendamine ja aeglustamine.

• Proportsionaalne otsesõitmine.

• Keskpunkti arvutamine käsitsi ja automaatselt.

• Lihtne joonejärgimine.

• Proportsionaalne joonejärgimine.

• Pööramine güroanduri abil.

07.08.2019 Rasmus Kits | Lego Innovation Studio 2

Allikas: https://www.odoo.com/apps/modules/8.0/project_task_repetition/task_scheduling.png

Page 3: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

MuutujadMis on muutuja ja kuidas seda kasutada?

07.08.2019 Rasmus Kits 3

Page 4: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Mis on muutuja?

• Suurus, millele saab omastada väärtuse

• Programeerimises eristatakse tüübi järgi:• Tekstilised (text; string)

• Arvulised (numeric, integer)

• Loogikalised (logic, boolean)

• Massiivid (array)

• Erijuhtum - konstant

07.08.2019 Rasmus Kits | Lego Innovation Studio 4

Allikas: http://www.elearningminds.com/wp-content/uploads/2016/04/variable.png

Page 5: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Tegevused muutujatega

• Deklareerimine

• Väärtustamine

• Üleväärtustamine

07.08.2019 Rasmus Kits | Lego Innovation Studio 5

Allikas: http://www.elearningminds.com/wp-content/uploads/2016/04/variable.png

x = 2

y = 2 * x

y = ?

y = y + 1

y = ?

y = 5

y = 4

Page 6: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

„Muutuja“ plokk

• 1 – režiimi valik• Väärtuse lugemine (read)

• Väärtuse kirjutamine (write)

• 2 – muutuja tähis (nimi) – Peab olema unikaalne väärtus, mis kehtib terve projekti piires.

• 3 – vastavalt muutuja tüübile muutuja väärtuse andmine ehk väärtustamine.

07.08.2019 Rasmus Kits | Lego Innovation Studio 6

Allikas: Lego® Mindstorms® EV3 Educational Tarkvara

Page 7: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Muutuja deklareerimine• Tegevused muutuja deklareerimisel:

• 1. Režiimi „write“ määramine koos muutuja tüübiga.

• 2. Muutuja tähise loomine ja sisestamine.• Ükskõik missugune täheline või

numbriline sümbol. Võib olla ka pikem (nt sõna).

• Unikaalne terve projekti piires.

07.08.2019 Rasmus Kits | Lego Innovation Studio 7

Allikas: LEGO® MINDSTORMS® EV3 Educational Tarkvara

Page 8: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Muutuja väärtustamine• 3. Muutuja väärtustamine.

• Muutujale väärtuse sisestamine. • Tekstilise puhul mõni sõna või sümbolite

kombinatsioon• Numbrilise puhul arv (numbrite jada)• Loogikalise puhul:

• 1 – tõene• 0 – väär

• NB! Peale muutuja väärtustamist salvestatakse väärtus koos muutuja tähisega roboti mällu ÜHE PROGRAMMI PIIRES!

07.08.2019 Rasmus Kits | Lego Innovation Studio 8

Allikas: LEGO® MINDSTORMS® EV3 Educational Tarkvara

Page 9: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Muutuja tüübid• Muutujate tüübid:

• Text – tekstiline muutuja ehk string

• Numeric – numbrilise väärtusega muutuja ehk arv

• Locic – loogikalise väärtusega muutuja ehk binaarmuutuja tõene (1) ja väär (o)

• Numeric Array – numbriliste muutujate kogum

• Logic Array – loogikamuutujate kogum

07.08.2019 Rasmus Kits | Lego Innovation Studio 9

Allikas: LEGO® MINDSTORMS® EV3 Educational Tarkvara

Page 10: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Muutuja kustutamine

• Menüü „mutrivõti“ või Program/Experiment List

• Menüü „Variables“

• Valida õige muutuja

• Kustutada muutuja vajutades „Delete“

• NB! Muutuja kustutamine on lõplik ja seda ei saa hiljem taastada!

07.08.2019 Rasmus Kits | Lego Innovation Studio 10

Allikas: LEGO® MINDSTORMS® EV3 Educational Tarkvara

Page 11: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Andmeedastus ja tüübid

• Liidestuste värvid

1. Loogikaline

2. Numbriline

3. Tekstiline

4. Numbriline massiiv

5. Loogikaline massiiv

6. Sisendplokk

7. Väljundplokk

8. värv

07.08.2019 Rasmus Kits | Lego Innovation Studio 11

Allikas: LEGO® MINDSTORMS® EV3 Educational Tarkvara

Page 12: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Matemaatilised funktsioonid

• 1 – tehte valik• Liitmine

• Lahutamine

• Jagamine

• Korrutamine

• Absoluutväärtus

• Ruutjuur

• Astendamine

• „laiendatud“

07.08.2019 Rasmus Kits | Lego Innovation Studio 12

Allikas: LEGO® MINDSTORMS® EV3 Educational Tarkvara

Page 13: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Matemaatilised funktsioonid

• 2 – režiimi valikust tulenevad parameetrid• Muutuja liidestamine või

• Väärtuse omistamine

• 3 – andmete väljastamine andmelingi kasutamiseks

07.08.2019 Rasmus Kits | Lego Innovation Studio 13

Allikas: LEGO® MINDSTORMS® EV3 Educational Tarkvara

Page 14: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Ülesanne 3.1.1.

• Deklareeri kaks muutujat nimetusega x ja y

• Määra muutujatele arvulised väärtused 1 ja 2

• Liida muutujate väärtused

• Väljasta tulemus ekraanile 5 sekundi jooksul

07.08.2019 Rasmus Kits | Lego Innovation Studio 14

Allikas: https://www.intheblack.com/~/media/intheblack/allimages/ethics/2017/x-y.jpg

Page 15: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

„Laiendatud“ režiim

• Kuni neli muutuja sisendit

• Palju erinevaid matemaatilisi tehteid

• Keeruliste matemaatiliste algoritmide koostamise võimekus

07.08.2019 Rasmus Kits | Lego Innovation Studio 15

Allikas: LEGO® MINDSTORMS® EV3 Educational Tarkvara

Page 16: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Ülesanne 3.1.2.

• Deklareeri kaks muutujat nimetusega a ja b. Muutujad on ristküliku külgede väärtusteks

• Määra muutujatele arvulised väärtused 5 ja 6

• Koosta „laiendatud“ versiooni kasutades ristküliku ümbermõõtu arvutav algoritm

• Väljasta tulemus ekraanile 5 sekundi jooksul

07.08.2019 Rasmus Kits | Lego Innovation Studio 16

Page 17: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Ülesanne 3.1.3.

• Deklareeri kaks muutujat nimetusega a ja h vastavalt kolmnurga alus ja kõrgus

• Määra muutujatele arvulised väärtused 5 ja 6

• Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav algoritm

• Väljasta tulemus ekraanile 5 sekundi jooksul

07.08.2019 Rasmus Kits | Lego Innovation Studio 17

Page 18: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

AlamprogrammidAlamprogrammide loomine, rakendamine ja muutmine.

07.08.2019 Rasmus Kits 18

Page 19: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Miks kasutada alamprogramme?

• Tegevustike (algoritmide) kordumisel on kergem

• Parem ja ülevaatlikum

• Kiirem ja mugavam

07.08.2019 Rasmus Kits | Lego Innovation Studio 19

Allikas: https://le-www-live-s.legocdn.com/sc/media/lessons/mindstorms-ev3/ev3-coding-activities/images/start-myblock-satnav-c440cc80033c67d895f0b5607533a531.png?fit=inside|1200:1000

Page 20: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Alamprogrammi (MyBlock) loomine

• Märgistada programmi osa (Ilma Start plokita), mille ulatuses soovitakse alamprogrammi luua

• Valik Tools>My Block Builder

• NB! Hiljem on võimalik seadistusi muuta!

07.08.2019 Rasmus Kits | Lego Innovation Studio 20

Allikas: LEGO® MINDSTORMS® EV3 Educational Tarkvara

Page 21: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

MyBlock-i seadistamine

• Name: nimi – sisestada nimi, mis iseloomustaks väga hästi

• Description: kirjeldus, mis kirjeldab lühidalt ploki tööpõhimõtet nt „joonejärgimine vasakult või kolmnurga pindala arvutamine“

• My Block Icons – saab valida sobiva ikooni, mis plokki iseloomustab

07.08.2019 Rasmus Kits | Lego Innovation Studio 21

Allikas: LEGO® MINDSTORMS® EV3 Educational Tarkvara

Page 22: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

MyBlock-i parameetrid

• Võimaldab muuta eelnevalt seadistatud alamprogrammi parameetreid

• Sisendparameetrid

• Väljundparameetreid

• Eelnevalt tuleb välja mõelda ja otsustada, mis parameetreid on muuta vaja.

07.08.2019 Rasmus Kits | Lego Innovation Studio 22

Allikas: LEGO® MINDSTORMS® EV3 Educational Tarkvara

Page 23: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

MyBlock-i parameetri loomine ja seadistamine• Loo parameeter „+“ nupule

vajutades

• Name: parameetri nimetus

• Parameter Type: parameetri tüüp• Input – sisenev väärtus

• Output – väljuv väärtus

• Data Type: andmetüüp

• Default Value: vaikeväärtus

• Parameter Style: parameetri stiil

• Parameter Icons: parameetri ikoon

07.08.2019 Rasmus Kits | Lego Innovation Studio 23

Allikas: LEGO® MINDSTORMS® EV3 Educational Tarkvara

Page 24: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

MyBlock-i parameetri liidestamine

• Parameeter tekib alamprogrammi algusesse või lõppu vastavalt tüübile

• Parameeter tuleb liidestada andmelingi abil

07.08.2019 Rasmus Kits | Lego Innovation Studio 24

Allikas: LEGO® MINDSTORMS® EV3 Educational Tarkvara

Page 25: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Ülesanne 3.1.4.

• Leia ülesanne 3.1.2.

• Loome selle ülesande põhjal alamprogrammi (MyBlock)

• Kasuta väliseid parameetreid, millele saab anda väärtuseid ja mis vastavad programmi muutujatele

07.08.2019 Rasmus Kits | Lego Innovation Studio 25

Page 26: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Ülesanne 3.1.4.1• Selgitada välja, mitu millimeetrit liigub robot

ühe ratta täispöördega!

• Koostada iseseisvalt programm, mille abil on võimalik sisestada roboti läbimise vahemaa millimeetritest!

• Luua algoritm, mis arvutab välja vastava seose!

• Luua sellest vajaminevate parameetritega alamprogramm!

07.08.2019 Rasmus Kits | Lego Innovation Studio 26

Joonis: Rasmus Kits

Joonlaud

Page 27: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Kiirendamine ja aeglustamine

07.08.2019 Rasmus Kits 27

Page 28: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

07.08.2019 Rasmus Kits | Lego Innovation Studio 28

Kahe mootori juhtimine – Move Steering

• 1 – mootor 1 – juhtiv mootor

• 2 – mootor 2 – järgiv mootor

• 1 – port, kuhu mootor on ühendatud• Vastavalt valikule „mootor 1“ ja „mootor 2“

• „mootor 1“ asub alati vasakpoolses pesas

• 2 – töörežiimi valik

• 3 - Parameetrid

Programmeerimine – suur mootor

Allikas: LEGO® MINDSTORMS® Education EV3 tarkvara

Allikas: LEGO® MINDSTORMS® Education EV3 tarkvara

Page 29: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Programmeerimine – suur mootor

07.08.2019 Rasmus Kits | Lego Innovation Studio 29

Kahe mootori juhtimine – Move Steering

• 3 – parameetrid• Liikumise suund (ühe mootori töötamine

teise suhtes).Seadistamise vahemik -100 – 0 – 100

-100/100 -50/100 0/100 50/100 100/100 100/50 100/0 100/-50 100/-100

-100 100

% %

Allikas: LEGO® MINDSTORMS® Education EV3 tarkvara

Joonis: Rasmus Kits

Page 30: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Lihtne ühtlane kiirendamine

• Toimub ühtlane kiirendamine või aeglustamine sobiva aja jooksul.

• Aeglustamine on kiirendamise pöördtegevus.

• peab olema sujuv ja sõltub otseselt vajadusest.

• Saab määrata lõppkiiruse.

• Saab määrata kiirendamise kiiruse.

• Ei korrigeerita otse sõitmist.

07.08.2019 Rasmus Kits | Lego Innovation Studio 30

Allikas: https://accoladetechnology.com/wp-content/uploads/2017/10/fpga-cpu-offloading-application-acceleration.jpg

Page 31: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Ülesanne 3.1.14

• Loome programmi, kus mootorite kiirus suureneb ühtlaselt määratud intensiivsusega kuni sobiva lõppkiiruseni.

07.08.2019 Rasmus Kits | Lego Innovation Studio 31

Joonis: Rasmus Kits

Page 32: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Otse sõitmineLihtne proportsionaalne otse sõitmine

07.08.2019 Rasmus Kits 32

Page 33: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Mis mõjutab kõige rohkem otse sõitmist?

• Mootorite erinevused• Erinevad lõtkud – hammasrataste

vahel

• Alalisvoolu pingeerinevus mootorite töötamisel

• Keskkond• Ebatasane või ebaühtlase

haardumisega pind ja rehvid

• Liiga suur kiirendus ja kiirus

• Liiga järsk aeglustamine

07.08.2019 Rasmus Kits | Lego Innovation Studio 33

Allikas: LEGO® MINDSTORMS® Education EV3 tarkvara

Page 34: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Mis on rootor?

• Tuleneb kreekakeelsest sõnast „rotare“ – pöörlema

• Rootor on masina (nt mootori) pöörlev tööseadeldis.

07.08.2019 Rasmus Kits | Lego Innovation Studio 34

Allikas: LEGO® MINDSTORMS® Education EV3 tarkvara

Allikas: LEGO® MINDSTORMS® Education EV3 tarkvara

Page 35: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Mootori rootori lõtk

• Lõtk tekib hammasülekannetes ja on loomulik

• Sellega peab arvestama

• Lõtku mõõdetakse raadides

• Nurk-kiirus

• Joonkiirus

07.08.2019 Rasmus Kits - kõik õigused kaitstud 35

Joonis: Rasmus Kits

Page 36: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Mootori rootori lõtk - järeldus

• Lõtku suurus kraadides ei muutu!

• Mida kaugemal on raadius, seda suurem on joonkiirus ehk seda pikem läbimaa tuleb samas ajaühikus läbida

• Järeldus: Mida suuremat ratast kasutada, seda suurem on lõtkust tulenev läbitud vahemaa!

07.08.2019 Rasmus Kits - kõik õigused kaitstud 36

Joonis: Rasmus Kits

Page 37: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Lihtne otse sõitmine

• Mõõdame mootorite pöördeid kraadides

• Võrdleme tulemusi ja arvutame välja vea

• Kasutame viga mootorite omavahelise suhtelise töötamise korrigeerimisel

07.08.2019 Rasmus Kits | Lego Innovation Studio 37

Allikas: https://cloudblogs.microsoft.com/dynamics365/wp-content/uploads/sites/4/2015/06/232720_5F00_customer_2D00_service_2D00_roadmap.jpg

Page 38: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Ülesanne 3.1.13

• Deklareerime ja väärtustame muutujad OsK, OsV ja OsE• OsK – Proportsionaalse otsesõitmise algoritmi kordaja• OsV – Proportsionaalse otsesõitmise mootorite võimsus (kiirus)• OsE – Proportsionaalse otsesõitmise mootorite erinevus ehk viga (hälve)

• Loome programmi, kus mootorite tagasiside abil korrigeeritakse roboti liikumise suunda. Robot liigub otse 5 sekundit.

• Näidata sõitmise ajal mõlema mootori pööramist kraadides ning viga kontrolleri ekraanil, et võrrelda andmeid sõidu lõppemisel.

07.08.2019 Rasmus Kits | Lego Innovation Studio 38

Joonis: Rasmus Kits

Page 39: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Keskpunkti arvutamineKeskpunkti arvutamine värvianduri rakendamiseks

07.08.2019 Rasmus Kits 39

Page 40: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Värviandur

• Mõõdab valguse tagasipeegeldumist.

• Mõõdab erinevaid värve.

• Edastab andmeid kontrollerile 1000 korda sekundis.

• Digitaalne andur.

Allikas: http://www.intorobotics.com/wp-content/uploads/2013/09/rsz_legoek_f9udjoijfoidgrt-0ih0tf0001.jpg

15.05.2017 Rasmus Kits 40

Page 41: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Värviandur

• Mõõtenurk ca 45 kraadi (a)

• Mõõtekaugus ca 5-55 mm (b)

• Mõõtelaius ca 54 mm (c)

• NB! Täpseim mõõtekaugus on vahemikus 5-9 mm (b)

07.08.2019 Rasmus Kits | Lego Innovation Studio 41

Allikas: https://gambiergigaflops.files.wordpress.com/2014/12/ev3_color_spread.png

Page 42: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Värvianduri mõõtmise keskpunkt

• Mõõtmise keskpunkt erineb anduri enda keskpunktist

• Anduri asend on oluline

Anduri keskpunkt

LED valgusallika asendi keskpunkt

Fotodioodi asendi keskpunkt

07.08.2019 Rasmus Kits - kõik õigused kaitstud 42

Joonis: Rasmus Kits

Page 43: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Värvianduri paiknemise suund

07.08.2019 Rasmus Kits - kõik õigused kaitstud 43

Joonis: Rasmus KitsJoonis: Rasmus Kits

Page 44: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Tagasipeegelduva valguse mõõtmise režiim

• Mõõdab tagasipeegelduva valguse abil heledust/tumedust

• 0 – täielik tumedus

• 100 – täielik heledus

07.08.2019 Rasmus Kits | Lego Innovation Studio 44

Allikas: https://i.stack.imgur.com/ciNGS.png

Page 45: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Värvianduri kasutamine – „Oota“ plokk

• 1 – Režiimi valik (reflected light)

• 2 – Pordi number, kuhu andur on ühendatud

• 3 – suurem kui/väiksem kui

• 4 – võrreldav tulem

• 5 – anduri näidu väljund andmelingi kasutamiseks

07.08.2019 Rasmus Kits | Lego Innovation Studio 45

Allikas: LEGO® MINDSTORMS® EV3 Educational Tarkvara

Page 46: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Värvianduri kasutamine – „värviandur“ plokk

• 1 – mõõdetav väljund

• 2 – Pordi number, kuhu andur on ühendatud

• 3 – Režiimi valik

07.08.2019 Rasmus Kits | Lego Innovation Studio 46

Allikas: LEGO® MINDSTORMS® EV3 Educational Tarkvara

Page 47: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Keskpunkti arvutamine

• Keskpunktiks (asendikeskmiseks) nimetatakse asendipunkti algus-ja lõppnäidu vahel.

• Et seda punkti leida on vaja arvutada, – just selles punktis toimub üleminek kahe näidu vahel.

07.08.2019 Rasmus Kits | Lego Innovation Studio 47

Allikas: http://teachersconnect.com.ng/wp-content/uploads/2017/09/1505606811_maxresdefault.jpg

50%50%

Page 48: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Keskpunkti arvutamine

07.08.2019 Rasmus Kits | Lego Innovation Studio 48

Tingimus: a>b

3. -> + B=x x=((a-b)/2)+b1 2 3

2. -> / 2= ->

1. a-b= ->

0% 100%b a

50% 50%

X

bJoonis: Rasmus Kits

Page 49: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Ülesanne 3.1.5.

• Loo programm, mis näitab värvianduri näitu tagasipeegelduva valguse režiimis ekraanil.

• Panna kirja (jätta meelde) näit kõige tumedamat pinda ja kõige heledamat pinda mõõtes

• Arvuta välja ülemineku keskpunkt! Allikas: http://curriculum.cs2n.org/robotc_ev3/lesson/media_images/try_6-3-colSens1.png

07.08.2019 Rasmus Kits | Lego Innovation Studio 49

Page 50: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Ülesanne 3.1.6.

• Deklareeri muutujad VaH, VaT, KpV.• VaH – Valgusanduri heledaim näit• VaT – Valgusanduri tumedaim näit• KpV – Keskpunkti väärtus

• Mõõda tumedaima ja heledaima väärtused anduriga ning sisesta automaatselt väärtused muutujate väärtusteks

• Arvutada algoritmi abil keskpunkti väärtus

• Väljastada arvutatud väärtus kontrolleri ekraanil kuni 5 sekundit

07.08.2019 Rasmus Kits | Lego Innovation Studio 50

x=((a-b)/2)+b1 2 3

Page 51: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Ülesanne 3.1.7.

• Loo alamprogramm, mis arvutab automaatselt keskpunkti väärtuse.

• Alamprogrammis peab olema üks väljund, milleks on muutuja KpV väärtus!

• Loome faili, millesse kirjutada keskpunkti väärtus

07.08.2019 Rasmus Kits | Lego Innovation Studio 51

Page 52: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Ülesanne 3.1.8.• Mõõda väärtused ja arvuta

automaatselt välja keskpunkt.

• Robot alustab sõitu puuteanduri nupule vajutamisel

• Robot sõidab senikaua otse, kuni värviandur mõõdab musta värvi joone väljakul.

• NB! Kasuta joone alguse tuvastamiseks keskpunkti väärtust!

• Kasuta programmis MyBlock-i „Keskpunkti arvutamine“.

07.08.2019 Rasmus Kits | Lego Innovation Studio 52

Joonis: Rasmus Kits

Page 53: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Roboti kalibreerimine joonel kahe anduri abil

• Üks kalibreerimise viis on joonejärgimine

• Teine viis on kalibreerida robotit pöörates senikauaks, kuni mõlemad andurid mõõdavad musta joone

07.08.2019 Rasmus Kits | Lego Innovation Studio 53

Joonis: Rasmus Kits

Page 54: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Ülesanne 3.1.9.

• Koosta iseseisvalt programm, kus robot läheneb musta jooneni ning kahe anduri abil roboti asend kalibreeritakse.

• Joone tuvastamisel kasuta keskpunkti väärtust ja selle automaatset arvutamist

07.08.2019 Rasmus Kits | Lego Innovation Studio 54

Joonis: Rasmus Kits

Page 55: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Lihtne ja proportsionaalne joonejärgimineJoonejärgimise rakendamine missioonide lahendamisel

07.08.2019 Rasmus Kits 55

Page 56: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Joonejärgimine - teooria

• Tegelikkuses järgitakse joone äärt, mitte joont

• Vastavalt sellele, missugust äärt järgitakse, toimuvad pööramised

• Kaks liikumise strateegiat – üldine ja kohalik.

07.08.2019 Rasmus Kits | Lego Innovation Studio 56

Allikas: http://www.legoengineering.com/wp-content/uploads/2014/12/image004.jpg

Page 57: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Ülesanne 3.1.10.

• Programmeeri robot kõige lihtsamal viisil joont järgima!

• Leia sobivaim mootorite kiirus, et robot täidaks ülesande!

07.08.2019 Rasmus Kits | Lego Innovation Studio 57

Allikas: LEGO® MINDSTORMS® Education EV3 tarkvara

Page 58: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Proportsionaalne joonejärgimine

• Võtab arvesse näidu järk-järgulist muutumist

• Seostab muutunud näidu mootorite kiirusega

• Kasutab kordajat mootorite viitest tekkivaks vea silumiseks

• Kordaja on otseses sõltuvuses• Liikumise kiirusest

• Joone laiusest

07.08.2019 Rasmus Kits | Lego Innovation Studio 58

Allikas: https://i.ytimg.com/vi/M8SIccEbbW8/maxresdefault.jpg

Page 59: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Ülesanne 3.1.11.• Deklareeri ja väärtusta

muutujad• Kp – proportsionaalne

kordaja• VaE - keskpunkti ja

valgusanduri mõõdetud tulemuse vahe ehk hälve

• Mv - Mootorite võimsus joonejärgimisel

• Programmeeri robot joont järgima kasutades proportsionaalset joonejärgimist! Allikas: https://i.ytimg.com/vi/M8SIccEbbW8/maxresdefault.jpg

07.08.2019 Rasmus Kits | Lego Innovation Studio 59

Page 60: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Ülesanne 3.1.12.

• Loo joonejärgimise alamprogramm koos vajaminevate muudetavate parameetritega:• Liikumise kiirus

• Proportsionaalne kordaja

Allikas: https://i.ytimg.com/vi/M8SIccEbbW8/maxresdefault.jpg

07.08.2019 Rasmus Kits | Lego Innovation Studio 60

Page 61: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

PööraminePööramine güroandurit rakendades

07.08.2019 Rasmus Kits 61

Page 62: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Roboti pööramine

• Ei ole võimalik liikuda ainult sirgjooneliselt.

• Vaja on pöörata.

• Pööramine on ringliikumine.

• Roboti pööramisel on palju erinevaid võimalusi ehk strateegiaid.

07.08.2019 Rasmus Kits | Lego Innovation Studio 62

Allikas: LEGO® MINDSTORMS® Education EV3 tarkvara

Page 63: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Pööramise keskpunkt ja pöörderaadius• Piirkonda, mida robot kasutab

pööramiseks nimetatakse pöörderaadius.

• Mida väiksem on pöörderaadius, seda vähem vajab robot ruumi pööramiseks.

• Keskpunktiks nimetakse kujutletavat punkti, mille ümber toimub pööramine.

• Pöörderaadius on ratta keskosa kaugus pööramise keskpunktist.

07.08.2019 Rasmus Kits | Lego Innovation Studio 63

r

Joonis: Rasmus Kits

Page 64: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Roboti pööramine kohapeal

• Kõige väiksema pöörderaadiusega pööramise strateegia.

• Kasutatakse samaaegselt kahte mootorit.

• Mootorid töötavad võrdse võimsusega.

• Rootorid pöörlevad vastassuunaliselt.

07.08.2019 Rasmus Kits | Lego Innovation Studio 64

Allikas: LEGO® MINDSTORMS® Education EV3 tarkvara

Page 65: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Roboti pööramine ühe rattaga

• Robotit pööratakse kasutades selleks ainult ühte ratast (mootorit).

• Võimalus programmeerida mitmel erineval moel.

• Pöörderaadius on suurem.

• Pöörderaadius võrdub kahe ratta keskpunkti vahelise kaugusega.

07.08.2019 Rasmus Kits | Lego Innovation Studio 65

Allikas: LEGO® MINDSTORMS® Education EV3 tarkvara

Page 66: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Ühe rattaga pööramise strateegia

Ühe rattaga pööramine

• Ühe rattaga pööramise pöörderaadiuse skeem

• Pöörderaadius on kaks korda suurem.

• Välimise ratta teepikkus on kaks korda suurem kohapealsega võrreldes.

• Pööramise keskpunkti asukoht on sisemise ratta keskpunkt.

07.08.2019 Rasmus Kits | Lego Innovation Studio 66

r

Joonis: Rasmus Kits

Page 67: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Roboti pööramine kahe rattaga

• Robotit pööratakse kasutades selleks kahte ratast (mootorit) samaaegselt.

• Võimalus programeerida mitmel erineval moel.

• Pöörderaadius on suurem ja väga muutuv.

07.08.2019 Rasmus Kits | Lego Innovation Studio 67

Allikas: LEGO® MINDSTORMS® Education EV3 tarkvara

Page 68: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Kahe rattaga pööramise strateegia

Kahe rattaga pööramine

• kahe rattaga pööramise pöörderaadiuse skeem.

• Vastavalt ühe ja teise ratta omavahelisele pöörlemise suhtele on pöörderaadius väga erinev.

• Pööramise keskpunkt on väljaspool robotit ja varieeruv.

07.08.2019 Rasmus Kits | Lego Innovation Studio 68

r

Joonis: Rasmus Kits

Page 69: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Mis mõjutab kõige rohkem pööramist?

• Mootorite erinevused• Erinevad lõtkud –

ülekandepunktide (hammasrataste) vahel

• Alalisvoolu pingeerinevus mootorite samaaegsel töötamisel

• Keskkond• Ebatasane või ebaühtlase

haardumisega pind ja rehvid

• Liiga suur kiirendus ja kiirus

• Liiga järsk aeglustamine

07.08.2019 Rasmus Kits | Lego Innovation Studio 69

Allikas: LEGO® MINDSTORMS® Education EV3 tarkvara

Page 70: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Ülesanne 1.6.19• Robot pöörab kohapeal:

• paremale 90 kraadi.

• Saavutada tuleb võimalikult täpne tulemus.

• Kasutada tuleb güroandurit

07.08.2019 Rasmus Kits | Lego Innovation Studio 70

Joonis: Rasmus Kits

Page 71: FLL-i suvekool - Robootika · kolmnurga alus ja kõrgus •Määra muutujatele arvulised väärtused 5 ja 6 •Koosta „laiendatud“ versiooni kasutades kolmnurga pindala arvutav

Ülesanne 1.6.20• Robot pöörab kohapeal:

• paremale 90 kraadi.

• vasakule 90 kraadi.

• paremale 180 kraadi.

• vasakule 270 kraadi.

• Iga pööramise vahel on paus.

• Saavutada tuleb võimalikult täpne tulemus.

• Kasutada tuleb güroandurit

07.08.2019 Rasmus Kits | Lego Innovation Studio 71

Joonis: Rasmus Kits