I forbindelse med oppdateringen av Scratch fra 2.0 til 3.0 er også Lego Mindstorms EV3 blitt mulig å programmere. På lik linje som for Micro:bit finnes det et tillegg som gir deg tilgang til en del blokker som er spesialdesignet for Lego Mindstorms EV3. Og likheten med andre tillegg gjør det enkelt å komme i gang.
For at du skal kunne programmere EV3 i Scratch, er det en del småting som må være på plass.
- Bluetooth — Scratch overfører dataene til EV3 via bluetooth, så maskinen du skal gjøre det på må ha fungerende bluetooth som er slått på.
- Parr/koble sammen EV3 og maskinen du skal bruke. Anbefales å gjøres før neste sted. Søk etter nye Bluetooth enhet å koble sammen med fra maskinen.
- Scratch Link — Deretter må en laste ned en Scratch-link herfra, pakke ut og installere. Dette er et lite program som kjøres hele tiden, og holder styr på hvilke EV3 som er koblet til. NB! Finnes foreløpig kun for Windows og er ikke godkjent av Microsoft slik at en må overstyre Windows sitt ønske om å IKKE installere tillegget. Har du allerede installert Scratch Link for å kode Micro:bit, trenger du ikke gjøre dette på nytt.
Mer informasjon og hjelp finner du på hjelpesiden.
Nå er vi nesten klare til å programmere. Vi åpner nettsiden for Scratch 3.0 og velger å legge til tillegget for EV3 nederst til venstre.
Dette åpner en oversikt over tillegg for Scratch. Her vil en blant annet finne tillegg med blokker for tegning og lyd, samt nye tillegg for å bruke kamera, Google Translate, Micro:bit, Lego Mindstorms EV3 og Lego WeDo 2.0.
Velg tillegget for EV3 for å legge til blokker som er spesifikke for EV3 samt starte prosessen med å koble opp EV3 til Scratch.
Når du har valgt tillegget søker Scratch etter tilkoblede EV3 ved hjelp av Scratch Link. EV3 trenger ikke være koblet til med USB kabel, men må da ha egen batteripakke. Den lister opp tilgjengelige EV3 og en kan velge den en ønsker å koble seg til. Navnet på din EV3 vises på skjermen på EV3.
Velg din EV3 og du blir sendt tilbake til Scratch lerettet, hvor du har fått tilgang til nye blokker spesifikk for EV3.
Det er et begrenset utvalg av blokker tilgjengelig, og det først som slår meg er at det er vanskelig å kjøre to motorer samtidig. Da må de eventuelt ligge i to forskjellige script, og en kjapp test av dette viser at koden ikke blir kjørt samtidig, og dermed drar den mot den ene eller andre siden.
Ikke alle sensorer er tilgjengelige heller. Lys og fargesensoren er presentert ved en lyssensor som måler lysintensitet, og det finnes heller ikke gyrosensor.
Den har heller ingen oversikt over hvilken motorer og sensorer som er koblet til, så en må være nøye med valgene av porter (A-D for motorer og 1-4 for sensorer).
Altså vil det foreløpig ikke være et alternativ å kode roboten i Scratch med tanke på First Lego League eller typiske robotoppdrag fra Lego.
De største mulighetene er nok samhandling med de allerede eksisterende blokkene i Scratch til å samhandle med et program i Scratch. Eksempelet under er inspirert av et eksempel som allerede ligger på hjelpesidene. Hver gang en trykker på knappen koblet til port 1, vil Scratch spille av en lyd, og avstanden som ultralydsensoren måler vil være utgangspunkt for effekten.
Her er en flaksefugl variant for EV3 hvor fuglen stiger hver gang jeg trykker på knappen som er koblet til port 1.
Her er et lite kunstprosjekt der avstanden ultralydsensoren måler bestemmer rotasjonen for hver enkelt figur som klones. Ganske stilig.
Foreløpig konklusjon: Til arbeid med bare Lego Mindstorms er Scratch 3.0 for enkelt og mangler blokker og egenskaper i forhold til andre verktøy som MakeCode og LabView. Derimot ser jeg en del spennende muligheter sammen med andre blokker i Scratch, der blant annet verdiene fra sensorene kan brukes.