Inleiding robotica Programmeren op de LEGO-robot EV3 Philip Habing; Versie 1.0 aug 2014 Inleiding Robotica vs 1.0 1/13 0 Inleiding Het wereld-record Rubick-kubus oplossen door een robot, staat momenteel op naam van -mede door LEGO aangestuurde- Cubestormer CS3. De CS3 haalt een recordtijd van ca 3.2 seconde. Dat is natuurlijk leuk, maar weinig nuttig. Wel zeer nuttig is wat de 12-jaar oude Shubham Banerjee maakte in 2014 met de EV3: BRAIGO een braille-printer. Het apparaat van Shubham kostte ongeveer 300 dollar; een commerciële braille-printer daarentegen kost ca 2000 dollar. Shubham won allerlei internationale prijzen met zijn printer en momenteel wordt gewerkt aan verbeteringen en commercialisering van zijn uitvinding. Sinds ongeveer 1994 is LEGO bezig om naast de traditionele LEGO-steen een ‘intelligente-steen’ te maken waarin een volledige computer is verwerkt die: 1. signalen van sensoren kan verwerken; 2. is te programmeren; 3. motoren kan aansturen; 4. andere intelligente stenen kan aansturen. Met deze excellentie-opdracht ga je aan het werk met programmeren van de EV3 die sinds 2014 verkrijgbaar is. Met de EV3 kun je allerlei robots maken. Inleiding Robotica vs 1.0 2/13 1 Omschrijving van deze module Doel: Programmeren van een eenvoudige LEGO-robot. (Afhankelijk van je ervaring met de EV3 kun je deze opdracht op verschillende niveau’s uitvoeren.) NB: Dit is een uitdagende opdracht die vraagt om creativiteit, doorzettingsvermogen en veel zelfstandigheid. Daarnaast maakt deze module regelmatig gebruik van Engelstalige uitleg die op internet is te vinden. Tot slot: Je bent voornamelijk bezig met programmeren van je robot. Het ouderwets legoën is maar een klein stuk van de opdracht. In deze module ga je zelf: ● kennis te verwerven over programmeren; ● programmeren van een robot; ● zelf een robot uitkiezen en programmeren. Tijdsbesteding 15 uur: ● Circa een uurtje: eenvoudige LEGO-robot bouwen. ● Vier uur: zelfstandig bestuderen van de programmeer-software (dit kan ook thuis op je eigen computer). ● Tien uur: programmeren van de software en besturen van de robot. Inleiding Robotica vs 1.0 3/13 2 Voorafgaand Vier opmerkingen vooraf: 1. Hoewel je de programmeer-software thuis kan downloaden en je programma’s thuis kunt schrijven, wel een hele duidelijke voorwaarde: De complete LEGO-bouwdoos inclusief = de intelligente steen EV3, = de accupack, = vier sensoren (IR, tast, kleur, gyro) en = drie motoren blijven altijd op school. Na ieder gebruik lever je de doos in bij de TOA: dhr. Volk (uiteraard mag je je robot intact laten). 2. In de intelligente-steen, de EV3 (zie afbeelding hiernaast) zitten of oplaadbare batterijen of een accu die circa twaalf uur moet laden (12uur voor batterijen, 4 uur voor een accupack). Zoek een TOA op (dhr. Volk van natuurkunde bijvoorbeeld) en vraag om de batterijen/accu op te laden. 3. Het LEGOMINDSTORMSEV3programma (zie logo hiernaast) staat op de school PC’s en is ook gratis te downloaden voor op je eigen MAC/PC: www.lego.com > mindstorms. NB: Voor sommige sensoren (bijv de gyro) moet je extra software-patches downloaden. 4. Er is een uitstekende help beschikbaar in het mindstorms programma: Inleiding Robotica vs 1.0 4/13 LEGOMINDSTORMSEV3 > HOMEmenu > EV3 Help(onderin het scherm, rechts:) 3 De Rover Opdracht 1: Robots? 1. Zoek uit wat het verschil is tussen een robot en een automaat. 2. Noem enkele robots. 3. Wat is de reden dat mensen robots maken? 4. Welke drie onderdelen bevat een robot? 5. Wat zijn eigenschappen van robots waarover slechts nog kan worden gefantaseerd? Opdracht 2: Voorbereiden, onderdelen en software. 1. Haal een LEGO-EV3 doos op bij de TOA uit het Sciencelab. 2. Laad de batterijen/accu op (ca 12 uur/4 uur). 3. Start op een computer (PC of Mac) het LEGOMINDSTORMSEV3 programma. Dit kan op de PC’s op school of download het gratis programma op je eigen computer/laptop: www.lego.com > mindstorms. Let op dat op internet vaak de educatie software wordt gebruikt. Deze software is vrijwel hetzelfde, en verschilt voornamelijk in uiterlijk van de gratis beschikbare thuis-software. Je start deze module met een simpele robot de Riley Rover (lijkend op de Opportunity Rover dit momenteel op Mars rond rijdt). De Rover kan rijden en je kunt het makkelijk uitbreiden met sensoren, grijparmen en andere zaken. De Rover is bedoeld om je de basis van de robotica te leren: het programmeren. De robot kan heel veel doen, maar (bijna) nooit meer dan het van tevoren geprogrammeerd is te doen (en cyborgs bestaan nog niet…). Centraal in het Inleiding Robotica vs 1.0 5/13 werken met een robot/de Rover is een programmeerbaar blik, in dit geval de EV3 ‘intelligente steen’. De EV3 is de hersens van de robot, het is een kleine -te programmeren- LINUX-computer met een intern- en extern geheugen. Door het geheugen van de computer te voorzien van één of meerdere programma’s kun je de Rover dingen laten doen volgens de exacte regels van zo’n programma. Andersom geldt natuurlijk ook: Zonder programma doet de Rover helemaal niets. Inleiding Robotica vs 1.0 6/13 Opdracht 3: De rover bouwen 1. Zoek op internet naar het bouwplan (pdf is wel handig) van de eenvoudige Riley Rover (zie afbeelding) of de iets geavanceerdere Educator Vehicle (EV3-robot-educator). Beide robots hebben dezelfde opbouw: twee aangedreven wielen aan de voorzijde en een zwenk-wiel aan de achterzijde. Sensoren en extra motoren kun je naar wens monteren op het frame van de Rover. 2. Bouw de Rover. 3. Je zult merken dat je sommige LEGO-onderdelen niet hebt. Staar je niet blind op de kleuren, een ander kleur onderdeel kan natuurlijk ook. Verzin zelf een oplossing voor onderdelen die je niet hebt. Er is echter ook nog genoeg technisch lego aanwezig dat je kunt gebruiken. Vraag de de Toa. 4. Bouw de IR-sensor aan je Rover. (Tip: Voor een goede werking van de sensor: Monteer de IR-sensor niet te laag.) 5. Eventueel kun je de Rover ook voorzien van de tast- en de optische sensor. 6. Eventueel kun je een grijp-arm voorop monteren. Het vervolg van deze module bouwt voort op de Rover klaar is en gaat er vanuit dat je een computer (met USB en liefst bluetooth) hebt met de EV3-mindstorm-software. Het vervolg van deze module splitst in twee delen: 1. Als je nog geen, of weinig ervaring hebt met robotica, start dan bij 4 Robotica voor starters. 2. Ben je een ervaren EV3-gebruik, ga dan direct naar opdracht 7: Eindopdracht voor starters. Daarna kun je verder met 5 Robotica als je ervaring hebt. Inleiding Robotica vs 1.0 7/13 4 Robotica voor starters Eerst wat theorie. Opdracht 4: Introductie op de EV3 via het web 1. Bekijk de onderstaande link: www.stemcentric.com > EV3 Tutorial > EV3 Introduction Uitleg van het systeem (18 minuten, in het Engels). Deze uitleg behandelt: 0 min - 5:38 min: opbouw van het systeem, de verschillende motoren, de sensoren, de slimme steen de EV3. 5:38 min - 15:00 min: programmeren van de EV3. 15:00 min - 18:00 min: Downloaden naar de EV3 en vervolgens uitvoeren van een programma. Opdracht 5: Een eerste programma 1. Een Amerikaans robotcentrum heeft een uitstekende online-cursus gemaakt voor de EV3-Rover. 2. Carnegie Mellon Robotics Academy > Lego > EV3 > curriculum > View Online Version. Bekijk in ieder geval nog wat theorie: = Basics: Getting started 14 (4x 1,5 min) = Basics: Big Ideas 15 (3 x 2min) En vervolgens kun je zelf aan de slag: = Behaviors: Movements > 1: Moving straight > 3 Steering forward (2 min)(Hier leer je een eerste programma maken, downloaden en tot slot door de EV3 je programma uit te laten voeren.) Tip bij deze opdracht Inleiding Robotica vs 1.0 8/13 Je kunt proberen om een bluetooth verbinding tot stand te brengen tussen de EV3 en je laptop. Dat werkt erg makkelijk want dan kun je heel snel programma’s aanpassen en downloaden naar de EV3 en hoef je niet steeds de USB-kabel aan- en af te koppelen. (Bluetooth daarentegen geeft nogal eens problemen. Maar: ook daar vind je met even zoeken op internet wel oplossingen voor. Google op: EV3 bluetooth problem. Het is de bedoeling dat je deze module afsluit met eindopdracht 7. Voordat je echter zover bent, moet je eerst leren de Rover goed te kunnen programmeren. Dat ga je nu doen. Opdracht 6: Zelf aan de slag met programmeren 1. Gebruik de cursus uit opdracht 5. Deze kun je naar eigen inzicht doorlopen totdat je genoeg weet om de eindopdracht te kunnen voltooien. Kies vooral de lesjes uit die je handig vindt, je hoeft niet alle instructies te doorlopen. Het gaat erom dat je voldoende leert om de eindopdracht 7 te kunnen volbrengen. In ieder geval moet je daarvoor kunnen: = programmeren met als-dan (IF THEN) en herhaal (REPEAT UNTILL) opdrachten. = sensoren gebruiken. Enkele opmerkingen: ● Het kan zijn dat jou Rover een iets andere opbouw/componenten heeft dan de gebruikte Rover in de online-lessenserie. Dat houdt dan meteen in dat je Rover soms iets anders zal reageren op gegeven commando’s. Pas je programma aan op jou Rover. ● Houd je projecten en programma’s op een computer bij elkaar in een eigen folder. Zo kun je later aanpassen en met je docent bespreken. ● De programma’s moeten een verduidelijkende naam hebben (bijv: latparcours.ev3 enz). ● Voorzie je programma van opmerkingen. Dit helpt jou of iemand anders om op een later tijdstip te kunnen begrijpen hoe het programma is opgebouwd en wat de verschillende programma-blokken doen. Kies van Inleiding Robotica vs 1.0 9/13 de onderstaande voorbeelden een aantal opgaven uit. Als je ervaren bent, kies je twee, als je begint met de EV3 kies je er drie. Programmeer de Rover, download en laat het programma uitvoeren. Vervolgens moet je waarschijnlijk verfijnen. Je kunt alle drie de programma’s geheel afronden en in het geheugen van de EV3 laten staan. Als je drie programma’s hebt verwerkt, kom je de Rover demonstreren in de klas. Opdracht 7 Eindopdracht voor starters 1. Maak op de grond/tafel in het sciencelab met gekleurde-tape een rechthoekig vlak ( ca. 1 x 2 m). (Overleg met de TOA’s waar je dat het beste kunt doen). In het vak staan een aantal kleine objecten ter grootte van een bidon/fles. Je Rover moet nu zo snel mogelijk rijden van twee diagonale hoeken zonder: 1. Het vlak te verlaten; 2. De objecten om te gooien. 2. Een vak van 2 x 1m. Staat vol met enkele blikjes. Vindt de blikjes en duw ze uit het vak. Inleiding Robotica vs 1.0 10/13 5 Robotica als je al ervaring hebt Als het goed is heb eerst gemaakt opdracht 7: Eindopdracht voor starters. Opdracht X: Verdieping Op school is veel technisch LEGO, vraag de Toa daar om. Met deze uitbreidingen kun je bijvoorbeeld maken en programeer een: 1. Een kleur sorteerder; 2. Een grijparm; 3. Een Useless-machine. Inleiding Robotica vs 1.0 11/13 6 Links Op het web vind je heel veel over de LEGO-EV3 robot en mogelijkheden. ● Download de Lego mindstorms software die je nodig hebt om te programmeren. Let op dat je soms extra besturingsblokken moet downloaden, bijvoorbeeld voor de gyro-sensor. ● Bouwplan van de EV3 robot educator (driewieler). ● Bouwplan van Riley Rover van Damien Kee. ● Complete gratis en online lessenserie EV3 intro en training. Circa zestig korte filmpjes met uitleg, opdrachten en dan enkele vragen. Zo leer je snel en effectief programmeren met de software. ● Een heldere introductie en uitleg van het EV3-systeem (18 min Engels). De uitleg gaat er vanuit dat je de mindstorm-software al op je computer hebt staan. ● pdf-file met EV3 uitleg ● Door middel van gestrucureerd programmeren dwing je jezelf om effectief na te denken wat je programma moet gaan doen. Het is een eerste stap naar een effectief robot-programma. Met een zogenaamd Nassi–Shneiderman diagram (NSD) (zie afbeelding voor het progammeren van een kaartjes-machine) is daarbij een compact Inleiding Robotica vs 1.0 12/13 en duidelijke methode. Hiermee kun je de opzet van een programma maken om het vervolgens in de mindstorms-software uit te werken en te programmeren. ● Shannon’s Useless machine van Lego, hier zijn de bouw-instructies. ● Een braille-printer van LEGO de BRAIGO en op youtube. ● Zelf kopen? Koop niet de Mindstorms doos in de winkel, maar koop de Education-set (380 euro in juli 2014). De educatie-set is goedkoper omdat je o.a. een accu-pack krijgt. En daarnaast bevat deze set geen overbodige lego. ● www.robocup.orgwaat in 2050 een team van robots de WK-voetbal laten winnen. Om dat te bereiken zijn er nu al jaarlijks wedstrijden. ● Classroom Activities for the Busy Teacher: EV3, Damien Kee Inleiding Robotica vs 1.0 13/13
© Copyright 2024 ExpyDoc