Game it now! Tampereen pilottikouluissa

Kolme upeaa päivää Innokas 2019 -ohjelmointi- ja robotiikkaturnauksessa on nyt takana. Tapahtumassa oli ensimmäistä kertaa pilottina pelinkehityskilpailu, jossa oli mukana ilahduttava määrä osallistujia sekä upeita ja erilaisia pelejä.

Tampereen pilottikouluissa kokeiltiin eri ohjelmointiympäristöjä. Alakoulussa eli Etelä-Hervannan koulussa käytettiin Scratchia ja oppilaat osallistuivat Scratch-sarjaan. Yläkoululaiset eli Kaukajärven ja Linnainmaan oppilaat osallistuivat Junior Track -sarjaan GDevelop- ja Unity-peleillä.

Etelä-Hervannassa peliä suunniteltiin ja ohjelmoitiin viikoittain valinnaisainetunneilla. Ensin tutustuttiin ohjelmoinnin perusteisiin ja muutamiin ohjelmointiympäristöihin sekä iPadeilla ja tietokoneilla. Kilpailua varten oppilaat muodostivat vuoden alussa 2-5 hengen ryhmiä, jotka lähtivät suunnittelemaan kestävään kehitykseen liittyviä pelejä. Suunnittelu ja työnjako kirjattiin papereille, jotka pidettiin koko projektin ajan työn ohjenuorana. Varsinainen pelien teko pääsi kunnolla vauhtiin helmikuussa. Oppilaat tekivät taustoja, hahmoja, musiikkia, äänitehosteita ja koodeja toisiaan tsempaten. Loppukevät puurrettiin viimeistellen pelejä, lopulliset silaukset tehtiin kisapaikalla. Loppujen lopuksi Lappeenrantaan Etelä-Hervannasta lähti kolme joukkuetta: Kidgames, Pelivasarat ja Ehtan tytöt.

Linnainmaalla pelintekoon ryhtyi kolme kolmihenkistä tiimiä. Ensin perehdyttiin grafiikan tekoon tarvittaviin ohjelmiin sekä opiskeltiin GDevelop -ympäristön perusteita. Pian, kun päästiin vähän jyvälle, aloitettiin oman pelin suunnittelu kevättalvella. Nopeasti kolmikoista valikoitui yksi koodariksi ja muut kaksi keskittyivät grafiikan ja musiikin tekemiseen. Pilotin aikataulu oli tiukka ja pelien edistyminen oli välillä nopeaa ja välillä painittiin ongelmien kanssa. Lopulta yksi tiimi, Boomerang Croc Mate, sai pelin valmistumaan siihen malliin, että voitiin lähteä Lappeenrantaan.

Kaukajärven koululla kolme luokkaa tutustui pelintekoon GDevelopilla. Aluksi tehtiin yhteinen harjoitus ohjelmointiin liittyen. Sen jälkeen jokainen kehitteli siitä jonkun pienen muunnoksen. Muutama oppilas halusi kokeilla GDevelopin sijasta ohjelmointia Unitylla. Lukujärjestyksellisistä syistä tämä kokeilu oli lyhyt. Tunteja pidettiin vain 3*2h. Kaksi ryhmää kiinnostui pelintekokilpailusta, mutta toinen ryhmä ei lähtenyt mukaan heille hankalan ajankohdan vuoksi. Yksi ryhmä halusi osallistua kisaan, vaikka pelin tekemiseen ei varattu kouluaikaa. Tässä 4-henkisessä ryhmässä kaksi vastasi koodauksesta, yksi musiikista ja yksi grafiikasta. Aluksi peli valmistui pikkuhiljaa. Tehtiin ensimmäisiä hahmoja, ensimmäistä tasoa ja musiikkia. He ideoivat peliä yhdessä ja jokainen teki oman osuutensa. Nopeasti he huomasivat tekevänsä peliä useita tunteja viikossa ja lopussa jo useita tunteja päivässä. Pelin etenemistä tarkasteltiin opettajan kanssa aluksi joka toinen viikko ja lopussa joka viikko. Välitöntä yhteyttä pidettiin whatsapp-ryhmän kautta. Peli kehittyi hurjasti ja oppilaiden yhteistyö toimi erittäin hyvin.

Lappeenrannassa ensimmäisenä kisapäivänä avajaisten jälkeen kokoonnuttiin pelitilaan, johon pystytettiin omat pelipisteet joukkueittain. Tuomarit kiersivät aamupäivän aikana jokaisen ryhmän luona. Ryhmä sai pelistään palautetta, jonka perusteella he pystyivät vielä kehittämään peliään. Oppilaat muokkasivat peliä paikan päällä ja vielä majoituspaikoissaankin. Toisena pelipäivänä tuomarit kiersivät arvioimassa pelit, haastattelivat oppilaita pelintekoprosessista ja tutustuivat dokumentointeihin. Pelejä pääsivät kokeilemaan kaikki halukkaat, muut pelintekijät ja tilassa käyneet vieraat.  Pelintekokilpailun ohessa ryhmille jäi aikaan kierrellä tutustumassa muihin kisalajeihin ja oheisohjelmiin.

Tamperelaiset joukkueet KidGames ja Team Kauksu sijoittuvat omissa erittäin kovatasoisissa sarjoissaan toiseksi. Matkalta mukaan tarttui menestyksen lisäksi kaikille onnistumisia, innostusta ja uskoa omiin kykyihin. Tapahtumassa tutustuttiin uusiin ihmisiin ja opittiin paljon ohjelmoinnista. Paluumatkalla kotiin suunniteltiin jo ensi vuoden pelejä.

Kiitos Lappeenranta mahtavista kolmesta päivästä ja muille pilottiin osallistuville tästä vuodesta. Syksyllä jatketaan!

Pelejä voit käydä lataamassa ja pelaamassa osoitteessa https://thegdwc.com/innokas/games/

Marianne Ilola, Nina Pukkila ja Eerikki Rönkkö, Tampere

Mainokset

Make it Now!-hankkeen kuulumisia Jynkänlahden koululta Kuopiosta

Hei!

Oheisesta linkistä pääsette tarkastelemaan Make it Now!-hankkeen etenemistä Jynkänlahden koululla Kuopiossa.

Linkki Jynkänlahden koulun powerpoint-esitykseen

Jynkänlahden koulun puolesta,

Juho Laitinen

Innokas koordinaattori

Kuopio

 

Arduino-ohjelmointi Circuit Playground Express -mikrokontrollerilla

Seuraavassa tarkastellaan esimerkkien avulla miten Circuit Playground Express  (CPX) – mikrokontrolleria voidaan ohjelmoida Arduino-ohjelmointiympäristössä C++ ohjelmointikielellä. Esimerkeissä tutustutaan miten CPX kanssa käytetään ulkoisia elektroniikan  komponentteja tai levylle valmiiksi integroituja  input/output -laitteita.  Esimerkeissä havainnollistetaan myös miten CPX vuorovaikuttaa muiden tietokoneiden, kuten raspberry pi:n kanssa.

CPX:n levylle on liitetty valmiiksi monipuolinen joukko erilaisia sensoreita ja laitteita, joten CPX:n kanssa voi harjoitella ohjelmointia ja elektroniikan komponenttien ohjausta perehtymättä paljoa elektroniikan komponenttien kytkentöihin. Toisaalta kouluprojekteissa on usein välttämätöntä rakentaa sovellus ulkopuolisten laitteiden avulla, joten on hyvä osata ja tuntea millaisia komponentteja (esimerkiksi säätövastus, ultraäänianturi, servo-moottori) on olemassa ja miten niitä ohjataan mikrokontrollerilla esimerkiksi Circuit Playground Expressillä.  Perustiedot elektroniikassa käytettyjen erilaisten komponenttien toiminnasta ja kytkennöistä on Kyösti Blinnikan Arduino tutuksi -oppaassa.

CPX ja ultraäänianturi etäisyysmittarina

photo_2019-04-25 22.19.43

Esimerkissä 1 ulkoisena sensorina on ultraäänianturi, jonka avulla voidaan mitata etäisyys halutusta kohteesta.Ultraäänianturilla mitattu etäisyys havainnollistetaan CPX:n levylle integroitujen RGB-LEDien (Neopixel) avulla. Mitattu etäisyys voidaan lukea myös Arduinon ohjelmointiympäristön Serial -tulosteikkunasta. 

Sensori toimii siten, että anturista lähetetty ultraääniaalto heijastuu takaisin kohteesta. Anturin avulla mitataan edestakaiseen matkaan kulunut aika, josta etäisyys voidaan laskea tunnetun  äänen nopeuden (noin 340 m/s) avulla. Ultraäänianturi saa käyttöjännitteen CPX:n vikasuojatusta VOUT -kytkentäpinnistä, joka tarjoaa sensorille riittävän suureen käyttöjännitteen.  Kuvassa CPX:ään on kytketty paristot (6.0V DC) tasajännitelähteeksi, jos laitetta halutaan käyttää ilman mikrousb-johtoa. Ultraäänianturin liipaisu- ja kaiku-toiminnot ohjataan digitaalisten pinnien D6 ja D9 kautta. Kytkennät on taulukoitu esimerkkikoodin alussa olevassa kommenteissa.

Esimerkkikoodi GitHubissa (25.4.2019).

Digitaalisen porttiin D8 kytkettyjen ledien ohjaus on toteutettu  suoraan  Adafruit_NeoPixel.h -kirjaston ja koodissa määritetyn strip -olion avulla. CPX:ssä on erilliset pinnit ulkoisten laitteiden (ultraäänisensori D6 ja D9) ja levylle integroitujen laitteiden (Neopixel D8) ohjaukseen, joten ulkoisten ja levyllä olevien laitteiden samanaikainen käyttö on mahdollista ilman että pinnit menisivät sekaisin. 

Circuit Playground Express -mikrokontrollerille on olemassa myös oma  Adafruit_CircuitPlayground.h  -kirjasto, jonka avulla olisi ollut mahdollista toteuttaa ledien ohjaus  (esimerkiksi kommenolla CircuitPlayground.setPixelColor(0, 255, 0, 0)). Tämä CPX:n apukirjasto käyttää sisäisesti myös Adafruit_NeoPixel.h luokan strip oliota led-nauhan ohjaukseen. Suosittelen alkuperäisen NeoPixel.h kirjaston suoraa käyttöä, koska tällöin käytössä on enemmän apufunktioita ja monipuolisempi dokumentaatio. Lisäksi samaa Arduino -koodia voidaan tällöin käyttää myös esimerkiksi Arduino Uno-mikrokontrollerissa ulkoisen led-nauhan kanssa.

Seuraavassa on lyhyesti esimerkkien avulla esitelty CPX:n levylle integroitujen sensorien käyttömahdollisuuksia.

CPX ja leposyke tekstiviestinä -sovellus

Circuit Playground Expressissä on valon voimakkuutta mittaava led (vastaanotin), jota voidaan käyttää optisessa sykkeen mittauksessa. Veri absorboi hyvin kahden ledin lähettämää vihreää valoa, ja sormesta takaisin heijastuvan valon voimakkuus vaihtelee sormen verisuonissa kiertävän veren määrän eli sykkeen mukana. CPX mittaa takaisin heijastuneen valon voimakkuutta ja laskee siitä sykkeen ja sen lähettää usb-serial-yhteyden kautta raspberry pi:lle, jonka tehtävä on lähettää syke tekstiviestinä Telegram-sovellukseen.

BPM-curve

 

Arduino-koodi GitHubissa.

Python-koodi raspberry pi:lle GitHubissa.

Vihellyksen ominaistaajuudet ja viheltämällä toimiva laite

Circuit Playground Expressissä on mikrofoni, joka tallettaa äänen intensiteetin vaihtelua eli ääniaallon aiheuttamaa ilmanpaineen muutoksia. CPX:n laskentateho riittää siihen, että mitatulle ääninäytteelle tehdään Fourier-muunnos, jolloin saadaan selville mitä taajuuksia ääniaalto sisältää, eli minkä taajuuksien yhdistelmä kuultava ääni on. Selvittämällä korkealla ja matalalla taajuudella tehtyjen vihellysten tunnusomaiset ominaistaajuudet saadaan CPX:lle opetettua erilaisia vihellyskomentoja, joilla voidaan ohjata esimerkiksi lampun toimintaa. Lamppu on rakennettu led-nauhasta kuumaliimaamalla pöytätennispalloja ledien päälle. Palloon on porattu reikä ledin kohdallepingpong_lamp

 

Äänen intensiteetin jakautuminen eri ominaistaajuuksille voidaan havainnollistaa myös led-valoilla toteutetussa music Visualizerissa eli musiikin tahtiin välkkyvissä valoilla.

 

Arduino-koodi GitHubissa.

CPX ja InfraPuna-säteilyn vastaanotin ja lähetin

Circuit Playground Express:ssä on integroituna esimerkiksi 2 lämpösäteilyn alueella toimivaa lediä: CPX voi siis toimia TV:n kaukosäätimen vastaanottimena, joka samalla ohjaa PingPong-palloista tehdyn koristeen ledvalojen toimintaa. Toisaalta CPX:llä voi itse emuloida kaukosäädintä, jolloin yhdessä raspberry pi:ssä pyörivän Google Assistantin avulla TV -kanavia voidaan valita puheohjauksella.

Lähdekoodi Arduinolle GitHubissa.

Arduinon lähdekoodi GitHubissa.

CPX ja liikuntasuoritusta seuraava Telegram-bot

Circuit Playground Express – Arduinossa on kiihtyvyysanturi, josta voi rakentaa esimerkiksi keväisen trampoliinipomppujen laskuribotin Telegram -tekstiviestisovellukseen . Koska trampoliinitemppujen aikana on vaikea kirjoittaa botille tekstiviestiä, voi bottia puheohjata Google Assistantin avulla. Botti tulostaa Google Assistantille esitetyt kysymykset ja käskyt chattiin, jos keskustelua ja tallennettua mediaa halutaan tutkia jälkikäteen. CPX:n kiihtyvyysanturia ja raspberryn kameraa ohjataan Google Assistantin puheohjauksella seuraavilla komennoilla:
”start counting” – aloittaa hyppyjen laskemisen
”stop counting ” – lopettaa hyppyjen laskemisen.
”photo” – ottaa valokuvan
”record a video” -ottaa 4 sekunnin videoklipin.

Arduino ja raspberryn lähdekoodi GitHubissa.

Circuit Playground Express on monipuolinen mikro-ohjain, jonka avulla koululaiset voivat kehitellä mitä erikoisempia projekteja!

Matti Heikkinen ja Simo Naatula

26.4.2019 Espoo

E-tekstiilit ja tekstiilileikkuri-ideoita Minna Canthin koululta

Pehmeiden käsitöiden puolella on jatkettu e-tekstiilien suunnittelua seiskojen ryhmissä. Valinnaisen käsityön ryhmiä ei ole, joten tekeminen on perustunut vapaaehtoisuuteen.  Pojat ovat toteuttaneet mm. amigurumeille silmiä led-valoista. Valitettavasti osa töistä on vielä kesken.

kuva1kuva2kuva3

Lukuvuonna 2019-2020 meille on muodostumassa useita ryhmiä valinnaisiin käsitöihin. Olen itse ideoinut ja toteuttanut tulevaa lukuvuotta ajatellen, millaisiin töihin e-tekstiilejä voisi yhdistää.

E-tekstiili = märkä- ja kuivahuovutus + kirjonta + led-valot

E-tekstiili = virkkaus + ompelu + led-valot

ScanNcut-leikkuri

Olemme käyttäneet muutamien oppilaiden kanssa ScanNcut-leikkuria.  Leikkurilla on leikattu kokeilumielessä erilaisia kankaita, jotka on kiinnitetty toiselle kankaalle kaksipuolisella liimakankaalla.  Joistakin kokeiluista on ommeltu erilaisia käyttötekstiilejä.

ScanNcut-leikkurilla voi leikata myös kalvoa. Olemme leikanneet kalvoista sabluunoita ja painaneet kuvioita kankaalle. Valitettavasti nämäkin työt ovat vielä kesken.

ScanNcut- leikkurilla on tehty myös pieniä töitä paperille ja pahville.

Molemmat tekniikat vaativat lähes kokoaikaista opettajan läsnäoloa, olen kokenutkin näiden asioiden opettamisen suurissa käsityöryhmissä haasteelliseksi. Toivon saavani  menetelmät aktiivisempaan käyttöön valinnaisryhmien kanssa ensi vuonna.

Mari Nyyssönen, Minna Canthin koulu, Kuopio

BLOGIKIRJOITUS KEVÄT 2019 MAKE IT NOW – Minna Canthin koulu

Kevään 2019 osalta teemana on ollut vierailut 9- luokan ja 10- luokan osalta toisen asteen oppilaitoksessa ja Ammattikorkeakoulussa. Nuorempien ikäluokkien osalta jatkoimme syksyllä esitellyllä kaavalla.

Kaikkia erikoiskoneita ei ole mahdollista, eikä järkevääkään hankkia vielä peruskouluopetukseen. Tekniikka ja koneet kehittyvät huimaa vauhtia ja koneet vanhenevat hetkessä. Moderniin tekniikkaan voidaan tutustua erilaisten harjoitustöiden avulla ja oppilaitokset ottavat mielellään vierailijoita vastaan. Esittelen tässä kaksi harjoitustyöideaa.

 

KATTOTUOLIEN RAKENTAMINEN JA KOEPONNISTUS

10- luokkalaisten tehtävä oli rakentaa mahdollisimman luja kattotuolirakenne kotimaisesta puusta. Kattotuolin pituudeksi rajattiin 400 mm ja maksimipainoksi 300 grammaa.

Töiden valmistuttua kävimme ne koeponnistamassa ja särkemässä Kuopion Ammattikorkeakoulun tekniikan osastolla. Sieltä löytyy puristin, joka on yhdistetty tietokoneessa olevaan piirturiin. Näin saimme dokumentoitua koeponnistuksen eri vaiheet.

kuva1

Oppilaat tutkivat rakenteita, tekivät materiaalikokeiluja ja valmistivat kukin omat kattotuolinsa. Rakenteissa oli lähinnä kolmea eri lähestymistapaa. Ristikkorakenne, kaarirakenne sekä umpinaiset puurakenteet. Lisäksi otimme verrokiksi metallinen huonekaluputki ja kulmarautarakenne.

Puinen ristikkorakenne osoittautui kestävimmäksi 801 – 1304 kg. Seuraavaksi kestävimpiä olivat kaarirakenteet, joissa puuta liimattiin erilaisiin puun syysuuntiin. Jousto oli hyvin erilasta eri palkeilla ja kesto oli 480 – 640 grammaa. Umpipuiset rakenteet osoittautuivat rakenteina heikoimmiksi noin 474 – 544 kg.

 

Testiasetelma oli kaikille palkeille sama ja puristuspaine kasvoi tasaisesti, kunnes rakenne särkyi.

 

PUUKKOAIHIOIDEN PLASMALEIKKAUS

Käsityön kurssisuunnitelmaan 8 –luokalla on vuosikymmeniä kuulunut vuolupuukon valmistus. Opittavina asioina on taonta, hitsaus, kahvan valmistus puusta, messinkihelan teko ja parkkinahasta ommeltu tuppi.

Teoriapuolella käydään läpi seosteräkset ja esitellään erilaisia teräslaatuja sekä klassiset lämpökäsittelyt teräksen karkaisu ja päästö.

Hiiliteräslevy, josta puukot valmistetaan, tulee koululle isona levynä. Aihiot on taloudellisinta ja helpointa valmistaa numerisesti ohjatulla plasmaleikkurilla. CNC –koneet ovat nykypäivää ja sopivat hyvin Make it now -hankkeen sisällöiksi. Tällainen kone löytyy Savon ammatilliselta koulutusyhtymältä (ammattioppilaitos), jonka kanssa olemme jo vuosia tehneet yhteistyötä.

 

Tämän vuoden osalta aikataulu ei mahdollistanut vierailun dokumentointia ja koneen toiminnan kuvaamista kuvin, joten edellä olevat kuvat ovat edellisen vuoden vierailun tuotoksia. Kuvissa myös pari valmista puukkoa.

Lopuksi laitan muutaman kuvan kevään tulostusprojekteista. Kone on ollut ahkerassa käytössä sen jälkeen, kun kiinnipysymisongelmat saatiin selätettyä ja yksi suutin vaihdettua.

 

Pekka Rissanen, Minna Canthin koulu, Kuopio

 

 

 

 

 

 

 

 

 

Adafruit Circuit Playground Express -mikrokontrolleri ja sen käyttö opetuksessa

Adafruit Cicuit Playground Express (CPX) mikrokontrolleri sopii hyvin eri kouluasteiden teknologiaprojekteihin, koska sitä voidaan ohjelmoida 1) koodilohkoilla eli JavaScrpitillä, 2) pythonilla ja 3) Arduino editorissa C++ ohjelmointikielellä. Lisäksi CPX:ssä on integroituna runsaasti erilaisia sensoreita. Esittelemme CPX:n sensorit ja kuinka pääset alkuun erilaisissa ohjelmointiympäristöissä. Circuit Playgroundista on olemassa Classic ja uudempi Express-versio, johon tutustumme alla.

CPX on monipuolinen ja suorituskykyinen laite, joka on hyvä vaihtoehto koulujen valitsemaksi mikrokontrolleriksi erilaisiin teknologiaprojekteihin, koska laitteeseen on pakattu runsaasti erilaisia sensoreita ja laitteita. CPX:llä on mahdollista toteuttaa mitä erilaisimpia projekteja.

playground express

Käyttöjännite ja Input- ja output-laitteet

CPX:n käyttöjännitteen voit syöttää mikrousb-portista tai akkuliittimestä. Ulkoisten CPX:n ohjaamien laitteiden käyttöjännite voidaan ottaa 3.3V tai VOUT -porteista. Ulkoisten laitteiden virransyötössä kannattaa käyttää porttia VOUT, koska siihen on rakennettu sisäinen suojaus liian suuria virtoja varten. Näin et vahingossa riko CPX -ohjainta liian suurella sähkövirralla.

Kytkentäpinnit ulkoisia laitteita ja sensoreita varten

CPX:ssä on ulkokehällä 8 kytkentäpinniä A0 – A7, joita voi käyttää sekä analogisen että digitaalisen signaalin lähettämiseen ja vastaanottamiseen.  Pinni A0 toimii lisäksi ääniulostulona (D/A -muunnin), jos haluat käyttää ulkoista kaiutinta.

Alustalle integroidut laitteet

Circuit Playground Express-mikrokontrollerin vahvuus on levylle integroiduissa laadukkaissa sensoreissa ja laitteissa, joiden avulla on mahdollista toteuttaa hyvin monipuolisia teknologiaprojekteja.

  • painonapit A ja B, jotka ovat liitetty portteihin D4 ja D5.
  • liukukytkin (D7)
  • 10 Neopixel RGB-LEDiä (D8)
  • 1 punainen LED (D13)
  • kiihtyvyysanturi (D27)
  • infrapunalähetin (D25)
  • infrapunavastaanotin (D26)
  • kauitin (A0)
  • valoisuusanturi (A8)
  • lämpötila-anturi (A9)
  • infrapunasäteilyyn perustuva etäisyysmittari (A10)

Tarkemmat kuvaukset kytkentäpinneistä ja levylle liitetyistä i/o -laitteista  löydät Adafruitin sivuilta.

Ohjelmointiympäristöt ja niiden käyttöönotto

Seuraavassa esitellään lyhyesti miten pääset alkuun CPX:n ohjelmoimisessa eri ohjelmointikielillä.

Mac tai linux tietokoneella ohjelmointi ei vaadi CPX:lle erillisten ajurien asennusta.

Windows tietokoneella ohjelmointi alkaa ajurien asennuksella. Aloita asennus windows-ajurin lataussivulta.

Arduino-ohjelmointiympäristö ja C++

Arduinon ohjelmointiympäristön editori on varma valinta CXP:n ohjelmointiin, koska CPX:lle on kirjoitettu valmiiksi Arduino-kirjasto, jonka sisältämillä funktioilla on helppo ohjata ja lukea CPX:n sensoreita. Lisäksi ohjelmassa on valmiiksi hyvä sarjaportti-ikkuna, josta hyötyä ohjelmakoodin muuttujien arvojen tulostamisessa ja mahdollisten virheiden etsinnässä. Voit myös esittää muuttujien arvoja ajan funktiona erillisessä kuvaajassa (ns. Serial Plotter) ohjelman suorituksen aikana.

  1. Jos et ole aikaisemmin tehnyt tietokoneellasi Arduino-ohjelmointia, niin asenna ensin Arduino-ohjelmointiympäristö. 
  2. Asenna Arduino editoriin SAMD-boardien tuki valitsemalla Työkalut–> Kortti –> Boards Manager. Kirjoita hakukenttään SAMD ja valitse asenna ( Install).Näyttökuva 2019-4-18 kello 16.08.07.png
  3. Käynnistä Arduinon ohjelmointiympäristö eli editori uudelleen.
  4. Kun aloitat ohjelmoinnin muista vaihtaa käytettäväksi mikro-ohjaimeksi eli kortiksi Työkalut –>Kortti: ”Circuit Playgroud Express”.
  5. Yhdistä CPX mikrousb-johdolla tietokoneeseen.  Paina CPX:n keskellä olevaa RESET -näppäintä useamman sekunnnin ajan, jolloin ulkokehän ledit palavat hetken punaisena ja jäävät palamaan vihreänä. Tällöin CPX on lataustilassa (BootLoader Mode), ja voit syöttää siiheen koodia arduinon editorista. Tarkista onko Circuit Playground Express valittu usb-serial-laitteksi: Työkalut–> Portti: ”Circuit Playground Express” .Näyttökuva 2019-4-18 kello 16.39.01
  6. Kirjoita editoriin alla oleva esimerkkikood ja lähetä se CPX:n painamalla editorin ”Lähetä” näppäintä (nuoli oikealle).
// the setup function runs once when you press reset or power the board
void setup() {
// initialize digital pin 13 as an output.
pinMode(13, OUTPUT);
}

// the loop function runs over and over again forever
void loop() {
digitalWrite(13, HIGH); // turn the LED on (HIGH is the voltage level)
delay(1000); // wait for a second
digitalWrite(13, LOW); // turn the LED off by making the voltage LOW
delay(1000); // wait for a second
}
  1. Näyttökuva 2019-4-18 kello 16.52.37.png

Jos koodin lataus CPX:ään onnistui, levyyn integroitu pieni punainen led vilkkuu 1 sekunnin taajuudella.

CircuitPython ja Mu-editori

Circuit-python on hyvä valinta, koska python on selkeä ja pelkistetty ohjelmointikieli, joka sopii aloittelijalle. CircuitPythonissa on laaja kirjasto erilaisten sensorien ohjaukseen. Lisäksi CircuitPython tukee tiedostojen tallentamista, eli voit tehdä projekteja joissa käytetään esimerkiksi valmiita äänitiedostoja. Mu-editorissa on myös Serial -ikkuna, eli  seurata ohjelman suoritusta erilaisilla tulosteilla.

Ohjeet Mu-editorin käytön aloittamiseksi CircuitPythonilla:

  1. Asenna Mu -editori lataussivulta. Valitse Adafruit CircuitPython.Näyttökuva 2019-4-18 kello 17.19.23
  2. Lataa  CircuitPython kääntäjä ja samalla tarvittavat kirjastot täältä . Ladattavan tiedoston nimen loppuosa on muotoa *.uf2 riippuen käytettävästä versiosta. Nimi voi olla esimerkikiksi: ”adafruit-circuitpython-circuitplayground_express-3.1.2.uf2”.
  3. Kytke CPX usb-porttiin ja paina CPX:n RESET näppäintä useamman sekunnin ajan pohjassa, jonka jälkeen ulkokehällä olevat led -valot palavat hetken punaisena ja jäävät palamaan vihreänä. Tämän jälkeen CPX näkyy resurssien hallinnassa (finder macissa) nimellä CLAYBOOT.

Näyttökuva 2019-4-18 kello 16.39.01

  1. Rahaa hiirellä ladattu uf2-tiedosto CLAYBOOT-kansioon, jonka jälkeen vihreät led -valot sammuvat ja CPX on valmis ohjelmoitavaksi pythonilla mu-editorissa.
  2. Huomaa, että tiedosto on oltava  nimetty code.py . Ohjelman suoritus alkaa heti kun tallennat tiedoston.
  3. Kirjoita testikoodi ja tallenna tiedosto nimellä code.py, jolloin ohjelman suoritus alkaa välittömästi tallennuksen jälkeen.

# Write your code here 🙂 Tama rivi on kommentti!
import time

import board
from digitalio import DigitalInOut, Direction, Pull

led = DigitalInOut(board.D13)
led.direction = Direction.OUTPUT

while True:
led.value = True
time.sleep(0.5)
led.value = False
time.sleep(0.5)

Näyttökuva 2019-4-18 kello 17.42.12

Huomaa pythonissa suoritettavat lohkot merkitään sisennyksillä! Hipsujen sisällä olevat vihreät tekstit ovat kommentteja, joita pythonkääntäjä ei suorita. Poistamalla kommenttimerkit voit muokata koodia siten, että lediä voi ohjata napilla A. Komentoi tällöin ylempi while-lohko pois.

Huomaa, että Mu-editorilla voit ohjelmoida myös microbittiä pythonin avulla. Tarvitset tähän micropython asennuksen, jota ei tässä yhteydessä käsitellä.

Mu-editori ei tykkää ääkkösistä edes kommenteissa eli älä käytä ääkkösiä! Myös muiden editorien käyttö on mahdollista, mutta niitä ei tässä käsitellä.

MakeCode ja koodilohkot & JavaScript

Jos olet ohjelmoinut microbitillä koodilohkojen avulla, niin MakeCode:n koodilohkot ovat sinulle tuttu ja turvallinen aloitusympäristö. Microsoftin MakeCode ympäristöstä löydät eri valmiit koodilohkot erilaisten i/o-laitteiden ohjaukseen. Voit siirtyä BLOCKS ja JAVASCRIPT välilehtien välillä ja vertailla koodeja. Käytössä on myös microbitistä tuttu simulaattori.

MakeCode sivuilta löydät runsaasti valmiita projektisiemerkkejä ja ideoita!

Näyttökuva 2019-4-18 kello 17.54.53

  1. Siirry sivulle: https://makecode.adafruit.com/
  2. Valitse tarvitsemasi koodilohkot. Hakukenttä on tehokas työkalu sopivien lohkojen etsintään.
  3. Kytke CPX usb-porttiin ja paina CPX:n RESET näppäintä useamman sekunnin ajan pohjassa, jonka jälkeen ulkokehällä olevat led -valot palavat hetken punaisena ja jäävät palamaan vihreänä. Tämän jälkeen CPX näkyy resurssien hallinnassa (finder macissa) nimellä CLAYBOOT.

Näyttökuva 2019-4-18 kello 16.39.01

  1.  Paina MakeCode-ohjelmointiympäristön Download-nappia, jolloin tietokoneesi ladatut tiedostot-kansioon ilmestyy *.uf2 niminen projektitiedosto. Esimerkissä: circuitplayground-blink.uf2.
  2. Raahaa tämä tiedosto kansioon CLAYBOOT, jolloin ohjelman suoritus alkaa.

Kannattaa rohkeasti tutustua kolmeen eri tapaan ohjelmoida CPX:ää. Iloisia hetkiä Circuit Playgroundin Expressin parissa toivoen,

Matti Heikkinen ja Simo Naatula

18.04.2019

Kontiolahden robotiikkatapahtuma

Kontiolahdella järjestettiin perinteinen robottitapahtuma lauantaina 30.3.2019 osana Innokkaan Make it now! –hankkeen toimintaa yhteistyössä Kontiolahden lasten ja nuorten teknologian tuki Ry:n kanssa.  Tapahtumassa kisailtiin sumo- ja freestyle-lajeissa. Freestyle sarja oli jaettu ”ensikertalaisten sarjaan” ja jo aiemmin osallistuneiden sarjaan. Ensikertalaisten sarjassa aihe oli vapaa ja toisessa sarjassa kilpailutyön aihe tuli liittyä valtakunnallisen Innokas-tapahtuman freestyle-aiheeseen: ”Green reality”.

Tapahtuma keräsi n. 60 osallistujaa ja oli kaikin puolin mukava ja innostava tapahtuma jälleen kerran. Tapahtuma järjestettiin lauantaina, jotta myös huoltajilla oli paremmat mahdollisuudet osallistua mukaan ja nähdä lastensa tuotoksia. Tapahtumassa oli mahdollisuus testailla myös Micro:bit ohjelmointia Innokkaan tuottamia tehtäväkortteja hyödyntäen tai kokeilla Lego-robotiikan rakentelua ja ohjelmointia ohjatusti. Esittelimme myös osana Make it now –hankkeen toimintaa 3d-tulostusta ja olipa Visiot-hankkeen cardboard vr-lasitkin vapaassa kokeilussa halukkaille.

 

 

Innokkain terveisin,

Lauri Parkkonen

Game it Now! projektin tiimellyksessä

Projektia aloiteltiin Sammonlahdessa kolmen 9.luokan valinnaisryhmän kanssa. Alkuhämmennystä aiheutti meillä, kuten varmaan muuallakin pelimoottorin valintaan ja materiaalin puutteeseen liittyvät ongelmat. Niinpä perehdyimme aluksi ohjelmoinnin perusteisiin mm. HTML-kieltä pyörittelemällä. Samalla kävimme läpi Viopen peliartisti materiaalia ja opiskelimme animointia myös muuten.

Sitten meille aukesi taivas (niin  luulimme), kun yliopiston taholta tarjoutui tilaisuus Unity verkkokurssin testaamiseen peruskoululaisilla. Teimme innolla 3d pallonpyörityspelejä ja opiskelimme hiukan C# kielen ohjelmointia. Jossakin vaiheessa tuli vastaan tunne (seinä?), että verkkokurssi on sittenkin liian vaativa koko porukan suoritettavaksi. Ongelmia aiheutti esim. se, että samaan aikaan peliin liittyvien tehtävien kanssa olisi pitänyt edetä myös puhtaasti ohjelmointikielen tehtäviä tehden. Kun oli päästy näyttävien pelinäkymien makuun, oli vaikeaa saada motivaatioita ”Hello world” tyyppisten ja toki vaativampienkin konsolitehtävien ratkomiseen.  Tulosta saatiin aikaiseksi, mutta kaikki Unityllä tuotetut pelit noudattivat aika pitkälle kurssin opastusvideoiden mallia. Olisi tarvittu runsaasti enemmän aikaa, että olisi saatu oma luovuus kukoistamaan paremmin.

Seuraavaksi aloimme pikkuhiljaa siirtyä Gdevelop maailmaan ja päädyimme tekemään omaa opetusmateriaalia Gdevelop5 moottorille. Ideana oli saada aikaiseksi yksinkertainen tasohyppelypeli, joka lähtee liikkeelle ihan puhtaalta pöydältä ja kaikki hahmot ja animaatiot tehdään alusta asti itse. Tässä vaiheessa alkoi erottua jo innostusta ryhmäprojektien tekemiseen. Ajatus oman  materiaalin tekemisestä osoittautui hyväksi ja varsinkin hiukan arkaillen ohjelmointiin suhtautuvat fiksut tytöt pystyivät etenemään sen pohjalta mukavasti ja lisäämään peleihin omia elementtejään.

Aikaa olisi koko ajan voinut olla enemmän käytössä. Osalla 2 ja osalla 4 viikkotuntia tuntui aina kuluvan melko pieniin edistysaskeliin. Konkreettisena esimerkkinä vaikkapa pelaajan animaatioiden luominen erikseen: pysähtyneelle, vasemmalle liikkuvalle ja oikealle liikkuvalle hahmolle veivät 2-4 tuntia tekijästä riippuen. Pelikilpailun lanseeraaminen tekijöille on ollut paljon haastavampaa, kuin itse pelinteon opiskelu. Välillä on tuntunut siltä, että tähän astinen työ on ollut puhdasta pelinteon opiskelua ja nyt valmiudet omien juttujen luomiseen alkaisivat olla vasta kasassa. Viopen ohjelmointimateriaalin hyödyntäminen on osoittautunut aika vaikeaksi myöhäisen julkaisuajankohdan vuoksi. Ehkä tilanne on parempi ensi vuonna. Materiaali sinällään vaikuttaa ihan käyttökelpoiselta.

Ideoita kilpailua varten alkaa osalla syntyä vasta nyt. Toki pojilla on ollut jo pitempään kilpailuprojekteja tekeillä. Jännityksellä odotetaan, miten projektit saadaan tällä aikataululla kasattua loppuun.

No kyseessä on onneksi pilotti, joten kaikki kokemukset, mitä saadaan kerättyä ovat hyödyllisiä. Vaikkakin varsinaiset ohjelmointitunnit on nyt käytetty, saamme onneksi vielä tunteja valinnaisista matikasta ja fysiikasta lopuksi lukuvuotta.

Reijo Varonen & Olli-Jussi Rissanen – Sammonlahden koulu, Lappeenranta

Thinglinkit Suomen eläinten talvehtimisesta (Karhunmäen koulu, Joensuu)

Aluksi harjoittelimme Thinglink-sovelluksen käyttöä kolmosluokissa tekemällä pienemmät esitelmät Suomen linnuista. Oppilaat innostuivat kovasti helposta tavasta esittää tietoa mukavassa visuaalisessa muodossa. Oppilaat omaksuivat nopeasti sovelluksen käytön.

Varsinainen projekti tehtiin pareittain eläinten talvehtimisesta. Parit arvottiin rinnakkaisluokista, koska halusimme samalla vahvistaa luokkien yhtenäisyyttä. Aluksi sovittiin projektisuunnitelma ja käytettävissä oleva aika. Parit saivat valita itseään kiinnostavan Suomessa talvehtivan eläimen, josta he alkoivat etsimään tietoa. Osa tiedonhausta hoidettiin kotona. Työnjako hoidettiin ryhmissä sisäisesti pienellä ohjauksella. Samassa yhteydessä kävimme läpi tekijänoikeuksia ja lähteiden merkintää ja merkitystä.

Valmiit työt oppilaat upottivat luokan Pedanet-sivuille, josta jokaisen tuli käydä tutustumassa ja antamassa rakentavaa palautetta muiden töistä. Lopuksi lapset täyttivät projektista itsearviointilomakkeen, jossa he joutuivat miettimään ja arvioimaan projektityötä ja työskentelyään sen parissa.

Muutamia lainauksia itsearvioinneista:

  • Mitä teit?
    • Etsin tietoa ja editoin.
    • Kirjoitin, etsin tietoa ja laitoin kuvia.
    • Kirjoitin vihkoon tietoja kirjasta ja ipadistä. Etsittiin tietoa majavasta?
  • Miten jaksoit keskittyä tekemiseen?
    • Jaksoin keskittyä, kun se työ oli kiinnostava.
    • Keskityin lukemaan kirjaa ja kaikkea muuta. Se oli kiinnostava eläin.
    • Keskityin tekemiseen omasta mielestäni hyvin
  • Oletko tyytyväinen lopputulokseen?
    • Olen tyytyväinen työhöni
    • Olen tyytyväinen, vaikka ei saatu yhtä juttua kirjoitettua.
    • Siitä tuli mahtava, juuri sellainen kuin halusin.
  • Mitä tekisit jatkossa toisin?
    • Laittaisin enemmän tietoa
    • En ole aivan varma, laittaisin enemmän tietoa.
    • Yrittäisin tehdä isomman teoksen.
  • Miten yhteistyö parin kanssa sujui?
    • Yhteistyö sujui mahtavasti!
    • Yhteistyö onnistui erinomaisesti eikä tullut mitään riitoja.
    • Hyvin, meillä oli kivaa ryhmässäni.
  • Mikä oli parasta?
    • Kokeilla Thinglinkiä.
    • Parasta oli videoiden etsiminen.
    • Parasta oli kaikki.
  • Mikä oli haastavinta?
    • Etsiä tietoa netistä ja löytää videoita.
    • Haastavinta oli löytää talvehtimisesta se, missä se eläin talvehtii.
    • Pedanettiin siirtäminen.

Kuten oppilaiden kommenteista huomaa, niin projekti oli oppilaiden mielestä innostava ja negatiivisia kommentteja itse työstä tai sovelluksesta ei tullut lainkaan.

Thinglink innostamassa

Sammonlahden koulun 7.luokkalaisten testailimme pariin otteeseen interaktiivisuuden lisäämistä kuviin. Ensimmäisen kerran thinglink otettiin haltuun biologian tunneilla. Oppilaat tekivät esittelyn valitsemastaan eläimestä ja lisäsivät kuvan yhteyteen tärkeäksi katsomiaan tietoja (ravinto, koko, levinneisyys, …). Thinglinkin avulla oppilaat pystyivät esittelemään tuotoksensa muille.

Toinen kerta thinglinkin parissa toteutettiin Ponssen vierailun yhteyteen. Ryhmät valitsivat metsäkoneet ja niihin etsittiin tietoa. Projekti oli mukava ja oppilaat tekivät hyvin hommia. Toki viime metreillä oppilaat paljastivat, että vastaavat konekohtaiset esittelyt löytyivät myös Ponssen sivuilta. (Opettaja oli siis unohtanut tehdä taustatutkimuksen…)

https://www.thinglink.com/channel/1044861876581695493/slideshow

(Kuvien lähteet: https://www.ponsse.com/fi)

Tekeminen thinglinkillä oli mukavaa ja työskentely ahkeraa! Jatkossa Thinglink integroidaan koulussamme 7.luokkalaisille mukaan opetukseen monipuolistamaan ict-taitojen oppimista.

Olli-Jussi Rissanen, Sammonlahden yläkoulu, Lappeenranta