Arvutiteaduse instituut
  1. Esileht
  2. Programmeerimine lastele ja noortele
EN
Logi sisse

Programmeerimine lastele ja noortele

  • PEALEHT
  • TUNNIKAVAD
    • Python ja matemaatika
    • Scratch ja muusika
    • Scratch ja funktsioon
    • 3D Creationist
    • EV3 ja Python
    • 3D mudel ja Cura
  • HUVILAAGRID

Lego Mindstorm EV3 roboti aju programmeerimine Python keskkonnas

Õppeaine ja -valdkond: Tehnoloogia , tehnoloogiaõpetus, Tehnoloogia igapäevaelus
Klass, vanuse- või haridusaste: III kooliaste, 7-9 klass
Tunni kestvus: 45 min (põhjalikum 75 min)
Tunni teema (sh alateemad): Lego Mindstorm EV3 roboti aju programmeerimine Python keskkonnas

  • Lego Mindstorms ev3dev operatsioonisüsteemi käivitamine
  • Lego Mindstorms ev3dev operatsioonisüsteemi internetiga ühendamine
  • Lego ajuga ühendumine sama WiFi-ga ühendatud arvutist
  • Lego ajule Python koodi laadimine arvutist, mis kasutab vähemalt ühte andurit ja mootorit

Autor: Alo Peets (Robotimeister OÜ)
Tunni eesmärgid: Edasijõudnud õpilastele pakkuda võimalust programmeerida LEGO MINDSTORMS EV3 robotit Python programmeerimiskeeles ja juhtida arvutist.
Milliseid üld- ja ainepädevusi (sh läbivad teemad) toetatakse:

  • Python programmeerimine praktikas
  • Linuxi käsurida
  • Kahe süsteemi vaheline digitaalne suhtlus
  • matemaatika (tehete realiseerimine programmis)

Õpitulemused: Õpilased on võimelised pärast tunni läbimist käivitama LEGO MINDSTORMS ev3 robotit ev3dev operatsioonisüsteemiga sinna looma python koodi.
Mõisted: Python, LEGO MINSTORMS EV3, Linux, käsurida, Putty, SSH, SD kaart
Õpilaste eelteadmised ja -oskused: Õpilased peaksid olema tuttavad LEGO MINDSTORMS EV3 robotiga ja Python programmeerimiskeelega.
Eelnevalt vajalikud tegevused õpetajale ja õpilasele: Õpetaja võiks võiks asjad ise eelnevalt läbi katsetada.
Tunniks vajalikud materjalid, vahendid, tarkvara ja veebiaadressid: @@Veebilehed: http://www.ev3dev.org/ , http://ev3python.com/ , http://www.putty.org/ , https://etcher.io/ , https://youtu.be/9m0E4ZLW0y0 Grupi peale: LEGO MINDSTORMS EV3 robotid, 2-16 GB uSD kaart, USB WiFi adapter (näiteks Edimax 7811), kõrvaklapid, WiFi toega arvuti kuhu õpilastel on tarkvara paigaldamise õigus. @@

Tunni käik:

  • Õpetaja alustab tunniga ja palub õpilastel vaadata õppevideo teemal Lego Mindstorm EV3 roboti aju programmeerimine Python keskkonnas https://youtu.be/9m0E4ZLW0y0 ~10 min

  • Õpilased harjutavad kahestes gruppides LEGO MINDSTORMS EV# prorammeerimist Pythonis ~30 min
    • Laadi alla ev3dev tarkvara http://www.ev3dev.org/

• Kopeeri ev3dev SD kaardile Etcher programmiga https://etcher.io/ • Ühenda SD kaart ev3 ajuga ja käivita see • Ühendab ev3 aju WiFi-ga ja loo SSH ühenduse http://www.putty.org/ • Katseta ev3python lehel olevaid näidisülesandeid http://ev3python.com/

  • Õpilased lõpetavad tegevused, tagastavad robotid ja teevad iseendale pika pai ~5 min

PDF kujul tunnikava on alla laetav siit. Tunnikava_ev3dev.pdf

Täiendav näidiskood:

LEGO robot ütleb sulle inglise aktsendiga oma nime!

from ev3dev.ev3 import *
Sound.speak("Hommik! Minu nimi on robot!").wait()

Mootori juhtimine

from ev3dev.ev3 import *
mA = LargeMotor('outA')
mA.run_to_rel_pos(position_sp=1080, speed_sp=180, stop_action="brake")

Vajutustundliku nupu vajutamis epeale ledide lülitamine!

#!/usr/bin/env python3
# Eelnev rida on vajalik kui tahad programmi k2ivitada LEGO robotist

# ühenda lüliti vabalt valitud porti 1-4
from ev3dev.ev3 import *
ts = TouchSensor()

while True:
    if ts.value()==1:   #touch sensor vajutatud
        Leds.set_color(Leds.LEFT, Leds.RED)
    else:
        Leds.set_color(Leds.LEFT, Leds.GREEN)

# vajuta Ctrl-C katekestamiseks

Kaugusanduri näidu kvamine ekraanil.

from ev3dev.ev3 import *
from time import sleep

us = UltrasonicSensor()
assert us.connected
us.mode = 'US-DIST-CM'
lcd = Screen()
btn = Button()

while True:
 if btn.any():
  exit()
 lcd.draw.text((0, 0), "Kaugus on " + str(int(round(us.distance_centimeters / 10, 0))) + " sentimeetrit.")
 sleep(1)
 lcd.update()
 lcd.clear()

ROhkem näiteid Henry Maalinn bakalaureusetöös https://comserv.cs.ut.ee/home/files/maalinn_informaatika_2017.pdf?study=ATILoputoo&reference=B2E3B02D01F135007E9388F25768BFD3322E5EB7

  • Arvutiteaduse instituut
  • Loodus- ja täppisteaduste valdkond
  • Tartu Ülikool
Tehniliste probleemide või küsimuste korral kirjuta:

Kursuse sisu ja korralduslike küsimustega pöörduge kursuse korraldajate poole.
Õppematerjalide varalised autoriõigused kuuluvad Tartu Ülikoolile. Õppematerjalide kasutamine on lubatud autoriõiguse seaduses ettenähtud teose vaba kasutamise eesmärkidel ja tingimustel. Õppematerjalide kasutamisel on kasutaja kohustatud viitama õppematerjalide autorile.
Õppematerjalide kasutamine muudel eesmärkidel on lubatud ainult Tartu Ülikooli eelneval kirjalikul nõusolekul.
Courses’i keskkonna kasutustingimused