Doorlopende Leerlijn Robotica. Robotica. Doorlopende leerlijn

Vergelijkbare documenten
NLT JuniorSoccer Robot NXT 2015

NLT Robotica Deel 2 - Level 1 V

NLT Robotica Deel 1 - Level 1 V

Snelstartgids KUBO CODING+

MINDSTORM LEGO ROBOTS

MINDSTORM LEGO ROBOTS

NLT Robotica Deel 3 - Level 2 V

WEDSTRIJD ORGANISATIE

Informatie voor de leerkracht Introductie nieuw concept (pagina 1) Programmeren met Bomberbot (pagina 1)

Fable Robotica Lesgids

LEGO Mindstorms NXT 2.0

WELKOM BIJ BOMBERBOT! LES 2: SEQUENTIES I LES 2: SEQUENTIES I WAAR GAAT DEZE LES OVER? INTRODUCTIE

BLOCKLY VISUEEL PROGRAMMEREN LEVEL 2

De eenparige rechtlijnige beweging

15 Jan Er zijn drie categorieën waaraan je kunt meedoen: Voetbal (Soccer), Redden (Rescue) en Dansen (Dance).

Logicsim Hydraulics. Vak/onderwerp Techniek, motorvoertuigentechniek, hydrauliek, mechanica

SaNdWiCh RoBoT. Wat leren leerlingen van deze les?

programmeren leeromgeving

INHOUDSTAFEL... 2 VOORWOORD... 3 INLEIDING... 4 GEBRUIK VAN MOTOREN... 9 DE HERHAALFUNCTIE ZELF EEN BLOK MAKEN... 11

Introductiekaart Niveau B Installatie software

Inhoud. Introductie tot de cursus

Productoverzicht 2005

WELKOM BIJ BOMBERBOT! LES 1: WAT IS PROGRAMMEREN LES 1: WAT IS PROGRAMMEREN WAAR GAAT DEZE LES OVER? INTRODUCTIE

Je kunt de mbot ook draadloos programmeren via Bluetooth of met 2.4G Wireless. Bekijk de instructies op mbot draadloos.

Blue-Bot ONDERWIJSGIDS

MINICURSUS PHP. Op dit lesmateriaal is een Creative Commons licentie van toepassing Sebastiaan Franken en Rosalie de Klerk Bambara

Workshop FLL. Leer robots programmeren. Marieke Peelen Lennart de Graaf Daryo Verouden -

INHOUDSTAFEL... 2 VOORWOORD... 3 INLEIDING... 4 GEBRUIK VAN MOTOREN... 8 DE HERHAALFUNCTIE... 9 SAMENVATTENDE OEFENING... 10

Inleiding LEGO MINDSTORMS Education EV3-programmeerapp

Introductiekaart Niveau B Installatie software

Microsoft Excel. It s all about Excel - VBA

Module 3: Scratch programmeren: is het logisch of is het niet logisch?

Producten en prijzen 2012

afrondende suggesties worden gebruikt om dieper op het onderwerp in te gaan als daar tijd voor is.

Lego Mindstorms NXT practicum Middag 1

Samenvatting. Context. Doelstellingen. Vaardigheden computationeel denken. Katholiek onderwijs. Gemeenschapsonderwijs

Vak/onderwerp werktuigbouwkunde (en metaal- en elektrotechniek in het tweede en vierde leerjaar).

g. Je kan nu door op de play knop te drukken je programma versturen naar de EV3 brick waarna het zal uitgevoerd worden.

De lol van wetenschap en technologie ontdekken,

Snelstartgids. voor programmeren met KUBO

Lego Mindstorms NXT practicum Middag 1

+ + Leaseprijs robotkist 599,- p/m incl. leerplannen Aanschafwaarde robots euro

BBR programmeren met Ardublock

INDELING LESPLAN RESULTATEN EN BEOORDELING VOORBEREIDING DOOR DOCENT. OVERZICHT: Lesplan 3

Inhoud. Introductie tot de cursus

Educatief pakket duurzame energie Didactische onderbouwing

Inhoud Inhoud. Over dit boek 7. 1 Eclipse IDE (Integrated Development Environment) 9. 2 Functionele specificatie 13

CITY SHAPER SM Challenge Updates

Programmeren met lego mindstorms.

DE ASTRO PI PROGRAMMEREN VOOR MISSION ZERO

Verbredings- Verdiepingsuren

Producten en prijzen 2012

Vermogen snelheid van de NXT

PROGRAMMEREN KLASSE STUDENT EEN INITIATIEF VAN. Lesmap. Programmeren. Door KlasseStudent

Algemene opzet cursus

Producten en prijzen 2012

afrondende suggesties worden gebruikt om dieper op het onderwerp in te gaan als daar tijd voor is.

LES 4 & 5 GAMEMAKER4YOU

Nascholing voor leerlingen. Software-ontwikkeling met behulp van Lego Mindstorms

LES 1: AAN DE SLAG MET WORDPRESS. Lesoverzicht: Aan de slag Wat is WordPress CMS Front-end Back-end Samenvatting. Tijd: 5 minuten

ontwerpdocumentatie doelgroep

Eenparig rechtlijnige beweging met de NXT

INSPIRATIEBOEK EDISON V.2

Omschrijving bij bestellijst project Robot Brainbox Robot

In Vlaanderen bestaat er nog geen leerlijn programmeren! Hierdoor baseren wij ons op de leerlijn die men in Nederland toepast voor basisscholen.

Digitale Geletterdheid. Voor Praktijkonderwijs, VMBO, en HAVO / VWO. Producten en prijzen 2018 DIGIT DIGIT. DigitaleGeletterdheid.

Modulewijzer tirprog02/infprg01, programmeren in Java 2

Instructies zijn niet alleen visueel, maar ook auditief, met hoogkwalitatief ingesproken geluid (geen computerstem).

Vakinhoudelijke uitwerking Keuzevak Applicatieontwikkeling van het profiel MVI vmbo beroepsgericht

Digitale Geletterdheid. Voor Praktijkonderwijs, VMBO, en HAVO / VWO. Producten en prijzen 2018 DIGIT DIGIT. DigitaleGeletterdheid.

Docentenhandleiding module Overheid, Burger en DigiD

Zonnevangers met een functie

Taal: Informatie verwerven uit gesproken taal, Groep 5 of hoger.

FLL 2012/2013 MISSIES

Eenmaal de robotauto of dancebot naar wens beweegt worden de leerlingen geprikkeld door middel van doelgerichte opdrachten

SPELREGELS ROBOCUP JUNIOR 2017

Uitgebreid eindwerkvoorstel Lokaliseren van personen en objecten met behulp van camera s

Studiehandleiding. Positieve psychologie

Studiehandleiding. Excel 2010

Technologie. Bluetooth gebruiken

Hardware-eisen 800 MHz processor, 128 Mb RAM geheugen, Internet Explorer 5.5, Windows ME of hoger, 16 speed cd-rom drive.

Sita (VWO2) Aaron Sams. Natuurkunde en Flipping the Classroom

RTC Opleidingen Beckhoff TwinCAT. Voorbereiding

Introductie tot de cursus

PROGRAMMA Vak: Informatica..

FLL 2009/2010 Missies

Mindstorms NXT practicum

Getallen 1 is een computerprogramma voor het aanleren van de basis rekenvaardigheden (getalbegrip).

Over Betuwe College. Lego Mindstorm project

Small Basic Programmeren Text Console 2

Virtual Welding. De cursusmethode van de toekomst

Kennis na het volgen van de training. Na het volgen van deze training bent u in staat:

1. INLEIDING 2. LESMATERIAAL

bug fixen F. Vonk versie

Docentenbijlage An Eye-Opener Eureka!Cup 2010: Movin On! Beste docent(e),

Workshop Engino. 1 Aanvang workshop. 2 Bouwen. 1.1 Wat kan ik voor de workshop doen?

FIRST LEGO League als onderwijsprogramma

School voor. Jungiaanse. Psychologie. C.G. Jung. Studiegids

Producten en prijzen 2012

Transcriptie:

Doorlopende Leerlijn Robotica Robotica Doorlopende leerlijn geschikt voor RoboCup en NLT voor leerlingen van 9 19 jaar versie 4.3 Okt 2011 1

Doorlopende leerlijn In Nederland worden verschillende robotica activiteiten ontwikkeld. De bekendste daarvan zijn de First Lego League, RoboCup Junior en de NLT module robotica voor VWO. De afgelopen jaren is gewerkt aan een doorlopende leerlijn, waarbij voor alle RoboCup wedstrijden en de NLT robotica module lesmateriaal is ontwikkeld voor leerlingen van 9 tot 19 jaar. Een doorlopende leerlijn is een didactische aanpak waarbij de leerstof is gespreid over meerdere jaren en schooltypes en ervoor zorgt dat er een goede aansluiting is tussen alle onderdelen van de leerstof. De leerlingen worden op drie niveaus vertrouwd gemaakt met het programmeren van eenvoudige robots. Het gebruik van een simulator staat hierbij centraal. De leerlijn voert langs drie niveaus: Het conceptuele niveau is vooral gericht op het basisonderwijs. Op dit niveau concentreren de leerlingen zich uitsluitend op het probleem. Vanuit de programmeertaal krijgen ze kant- en- klare deeloplossingen aangereikt die ze op de juiste manier moeten samenvoegen en waarvan ze de variabelen zelf moeten instellen. Hierdoor raken de leerlingen in korte tijd vertrouwd met het programmeren van een robot en leren ze snel te doorzien wat er in de praktijk van robotica zoal komt kijken. Op het fysieke niveau leren de cursisten om te gaan met sensoren en motoren en gaan ze dieper in op het programmeren van robots. De leerlingen moeten veel meer zelf ontdekken en doen, waardoor ze inzicht krijgen in hoe 2

programma s worden gemaakt. Ze moeten nu zélf de oplossingen maken die ze op het conceptuele niveau nog kant- en- klaar voorgeschoteld kregen. De andere onderdelen van de doorlopende leerlijn op dit niveau zijn eveneens beschikbaar in RoboPAL. Het programmeer niveau is het hoogste en moeilijkste niveau van de leerlijn. Hierbij krijgen de leerlingen dezelfde problemen op te lossen, maar nu moeten ze dit doen in de programmeertaal Java. Java is wijdverbreid in het bedrijfsleven en de internetwereld. De NLT- module Robotica is volledig opgenomen in deze doorlopende leerlijn robotica en vormt daarvan het sluitstuk op zowel het fysieke niveau (NXT) als op programmeerniveau (Java). In het overzicht hiernaast is de totale leerlijn geschetst. Alle onderdelen van de leerlijn zijn beschikbaar in RoboPAL, maar maken niet allemaal deel uit van de NLT- module. Lesmateriaal voor de overige onderdelen zijn apart beschikbaar. De bestaande Java- versie van de NLT- module Robotica valt samen met Level 3 (programming level); de NXT- versie valt samen met Level 2 (physical level). Level 1 (conceptueel niveau) maakt geen deel uit van de roboticamodule, maar kan afzonderlijk daarvan worden ingezet. De beide versies voor Java en voor de NXT zijn eveneens afzonderlijk van elkaar te gebruiken. In dit document gaan we dieper in op de volledige leerlijn voor Robotica. 3

RoboPAL Doorlopende Leerlijn Robotica RoboPAL (Play And Learn) is een complete ontwikkelomgeving met het bedieningsgemak van een eenvoudige grafische programmeertaal. In RoboPAL bouw je programma s op uit icoontjes die door middel van parameters aangepast kunnen worden om de verschillende opdrachten uit te voeren. De programma s die de leerlingen moeten maken worden gaandeweg meer complex en bereiken in het derde deel de hoogste moeilijkheidsgraad. Simulator De toepassing van een simulator is één van de belangrijkste aspecten van de Robotica leerlijn. Niet alleen is het een veelvuldig toegepast onderdeel van vrijwel alle roboticaprojecten, maar het helpt de leerlingen ook om beter en sneller het lesmateriaal te verwerken. In de dagelijkse praktijk van robotica zijn simulators niet meer weg te denken. Ten eerste levert het uittesten van belangrijke functies in een simulatie aanzienlijke tijdwinst op. Een robot, die onderhevig is aan slijtage of defect kan raken, is vooralsnog niet nodig. Ten tweede werkt een simulator veel sneller omdat er niet telkens opnieuw een programma in het geheugen van de robot geladen hoeft te worden, om daarna te worden uitgeprobeerd. In de klas is het een groot voordeel dat alle onderdelen van de lessen op de PC kunnen worden gemaakt en getest. Een robotje is maar af en toe nodig. Leerlingen kunnen ook thuis gemakkelijk de opdrachten op hun eigen PC uitproberen. Het voordeel van RoboPAL is dat er een eenvoudige programmeeromgeving mee wordt gerealiseerd met een geïntegreerde simulator, terwijl de opzet van de doorlopende leerlijn in het systeem is verweven. Deze mate van integratie is uniek in de markt. Het programma wordt eerst ontwikkeld met RoboPAL en daarna met de ingebouwde simulator uitgeprobeerd. Werkt het programma goed, dan wordt het via de speciale RoboPAL dongle met een draadloze verbinding in het geheugen van de NXT robot geladen. 4

Doorlopende Leerlijn Robotica In de ontwikkelomgeving van RoboPAL wordt een programma ingevoerd. Door het starten van de simulator wordt het programma uitgevoerd en kan dit stap voor stap worden gevolgd. De speciale RoboPAL dongle laadt een programma draadloos in de NXT via BlueTooth Java Simulator De NLT module Robotica voor Level 3 (Programming Level) is gebaseerd op Eclipse en de bijbehorende Java simulator. Deze simulator lijkt veel op die van RoboPAL. 5

De robots Lego NXT Bij de Java- versie van de NLT- module wordt gebruik gemaakt van de JoBot Nano. Dit robotje is opgebouwd rond een standaard microprocessor van de fabrikant MicroChip. Het heeft een technische uitstraling. Deze robotjes lenen zich prima voor het maken van uitbreidingen. Leerlingen in de bovenbouw kunnen die zelf maken. Programmeren in Java is niet eenvoudig. Veel scholen kozen juist om die reden voor de NLT- module Robotica. Leerlingen die minder diepgaand kennis met robotica willen maken kunnen dankzij deze nieuwe versie nu ook aan de slag. Dit is vooral interessant voor de onderbouw, maar ook voor bovenbouwleerlingen van andere studierichtingen dan VWO. Door het gebruik van een eenvoudige programmeertaal en een standaard NXT- robot van Lego is niet alleen het programmeren eenvoudiger, maar kan de robot ook voor andere projecten worden gebruikt. De Lego NXT is een flexibel robotica- bouwpakket, dat met een heel scala aan programmeertalen kan worden geprogrammeerd. Daarnaast is er een grote verscheidenheid aan sensoren beschikbaar. Dat maakt het voor leerlingen mogelijk om na het volgen van de NLT roboticacursus zelfstandig aan grotere projecten te werken. Jobot Nano Het cursusmateriaal is opgezet om grotendeels gebruikt te worden op een tweetal verschillende robots. De JoBot Nano is onderdeel van de JoBot familie. JoBot staat voor Java Based Omnidirectional robot en is bedoeld als een breder platform voor zelfbouw. Deze robot kan in Java worden geprogrammeerd en is vooral bedoeld voor het Programming Level. 6

Het is een eenvoudig robotje met verschillende sensoren, waarmee alle onderdelen van de doorlopende leerlijn kunnen worden uitgevoerd. Naast de eenvoudige Nano bestaan er ook nog de meer uitgebreide Junior en de driewielige omnidirectionele JoBot. Er zijn daarnaast verschillende extra sensoren en opties beschikbaar voor dit robotje, waaronder een autonome camera, waarmee objecten en kleuren kunnen worden herkend. 7

Het Conceptuele niveau Het Conceptuele niveau concentreert zich op de manier waarop een probleem wordt aangepakt. De bedoeling is dat leerlingen met een minimum aan inspanning hun eerste resultaten bereiken en daardoor vertrouwen krijgen dat zij met robotjes kunnen omgaan en ook kunnen leren om te programmeren. De lessen zijn opgezet om de verschillende wedstrijden van RoboCup Junior te kunnen spelen, te weten; Dansen, Rescue en Voetbal. De cursus begint met de basiscursus waarin voldoende wordt geleerd om daarna een keuze te maken uit één van de drie disciplines. Vaak is het de beste benadering om na de basiscursus te beginnen met Dansen, gevolgd door Rescue en vervolgens de veel moeilijkere Voetbal toepassingen. (In de huidige versie is Voetbal nog niet beschikbaar.) 8

Lesmateriaal Doorlopende Leerlijn Robotica Alle lessen op dit niveau worden gegeven met zogenaamde leskaarten. Iedere les heeft een bijbehorende leskaart, waarbij op de voorkant een korte beschrijving staat van de les en op de achterkant stap- voor- stap instructies die de leerlingen moeten uitvoeren. Door deze stappen te volgen leren ze het programma te gebruiken, de robotjes te programmeren en de missie uit te voeren. Door het gebruik van één leskaart per les kunnen leerlingen ieder in hun eigen tempo de lessen volgen. Met behulp van RoboPAL wordt het programma gemaakt en met de ingebouwde simulator wordt het programma getest. Dat kan ook thuis gedaan worden. Werkt het programma goed, dan wordt er een robotje gepakt en wordt het programma draadloos in het geheugen van het robotje geladen via de RoboPAL dongle. Bij de Nano robots wordt het programma met behulp van een kabel in het geheugen geladen. Aan het eind van ieder onderdeel wordt een les opgenomen waarin de leerlingen het geleerde in de praktijk zelf moeten toepassen. Hiermee wordt het geleerde toegepast en blijft beter onthouden. 9

Basis De basislessen behandelen de onderwerpen als Kalibratie, Beweging, Sensoren en het gebruik van Loops (programma lussen of herhalingen) Er zijn een viertal lessen, die zorgen dat de leerlingen leren hoe je de robot laat bewegen, hoe je een programma moet laden en vervolgens hoe je met de sensoren kleuren kunt onderscheiden. Gewapend met deze basiskennis kunnen ze doorgaan met de volgende lessen, afhankelijk van de gekozen missie. 10

Dans Bij de Dans missie moet een robotje op de maat van zelf uit te kiezen muziek bewegingen gaan maken. Daarvoor is nodig dat het muziekstuk wordt opgedeeld in onderdelen, waarbij voor ieder onderdeel wordt vastgesteld wat voor bewegingen daar bij horen. Daarvoor moet een dansschema worden opgesteld en op basis daarvan wordt dan een programma samengesteld. In een achttal lessen worden verschillende aspecten van het programmeren van een dansende robot behandeld. Naast het gebruik van extra motoren voor bewegingen van bijvoorbeeld een hoofd, kan ook gebruik worden gemaakt van Midi om de volgorde en timing van bewegingen te bepalen. Daarnaast worden extra mogelijkheden geboden om een lijn te volgen en te zorgen dat de robot niet ergens tegenaan botst. voor dansers en robots. Bij wedstrijden dansen de leerlingen vaak mee met de robots en kunnen leerlingen die zich niet zo aangetrokken voelen tot techniek of het programmeren van een robotje, zorgen voor de choreografie of het ontwerpen en maken van kostuums 11

Rescue De Rescue missie is opgezet om te leren omgaan met sensoren en motoren. De leerlingen krijgen een lijnvolger aangeboden en een automatische kalibratie routine. Ze leren de sensoren te kalibreren en daarna hoe ze een lijnvolger kunnen instellen. De kunst is om het robotje zo snel mogelijk de weg te laten volgen zonder uit te bocht te vliegen. In een zestal lessen wordt geleerd hoe de missie gespeeld moet worden en er kan in de klas al een wedstrijd worden gespeeld om te zien of de leerlingen zich de stof eigen hebben gemaakt. De Rescue missie houdt in dat een gevaarlijke container in een moeras terecht is gekomen (een blikje dat op het gele vlak staat). Het robotje moet zo snel mogelijk vanaf het startpunt de zwarte weg volgen en aangekomen op het gele vlak daar het blikje zoeken en naar de kant duwen. Hierbij is het kalibreren van de sensoren op het veld belangrijk en de instelling van de parameters voor de lijnvolger. Er wordt in een zestal lessen uitgelegd wat lijnvolgers zijn, hoe kalibratie werkt en hoe de 12

lijnvolger het beste kan worden ingesteld. Vervolgens wordt uitgelegd hoe je het blikje moet zoeken en al rijdend van het veld afduwt. Leerlingen die de missie tot een goed einde brengen kunnen hiermee eventueel ook meedoen met de RoboCup Junior wedstrijden die jaarlijks in mei of juni in NEMO worden gehouden. Voetbal Het moeilijkste onderdeel is voetbal. In de huidige versie zijn daar nog geen lessen voor opgezet, maar die zijn wel in ontwikkeling. Daarnaast is er wel cursusmateriaal beschikbaar over voetbal voor andere programmeertalen maar niet op het conceptuele niveau. 13

Het Fysieke Niveau Na het doorlopen van de lessen op het Conceptuele niveau kunnen leerlingen overstappen naar het Fysieke niveau. Op dit niveau worden er geen ingeblikte functies zoals lijnvolgers en kalibratie meer verstrekt maar wordt geleerd hoe je zelf lijnvolgers en kalibratie routines moet bouwen. Ook hier kennen we een basiscursus en de Dans, Rescue en Voetbal missies. Extra op dit niveau is de NLT robotica module voor de Lego NXT, waarin een basiscursus is opgenomen en de rescue missie wordt behandeld. In het volgende deel van deze folder wordt de NLT module verder uitgelegd. De drie lessen behandelen net als bij het conceptuele niveau de verschillende aspecten aan de hand van leskaarten. De lessen gaan veel dieper dan bij het Conceptuele niveau en de leerlingen moeten veel meer zelf doen. Bij de NLT module wordt gebruik gemaakt van lesboeken, waarbij in ieder hoofdstuk een nieuw onderwerp wordt behandeld. De leskaarten maken dan plaats voor lesboeken met meer tekst en moeilijkere oefeningen. 14

Basis In de basiscursus wordt meer uitgelegd over kalibratie en lijnvolgers. Daarnaast wordt het idee van subroutines, variabelen en parameters uitgelegd, zodat in de volgende missies de leerlingen daarmee aan de slag kunnen. Omdat in alle missies dezelfde technieken gebruikt worden is er een zekere mate van overlap tussen de lessen. Dans Aan de hand van de dansmissie worden de verschillende onderdelen die in de basiscursus zijn geleerd toegepast om een dansschema te maken en verder uit te bouwen. Rescue De rescue missie is in principe hetzelfde en ook hier wordt geleerd om zelf lijnvolgers te maken en gebruik te maken van subroutines etc. Voetbal Ook hier zijn nog geen lessen voor voetbal beschikbaar. 15

De NLT module voor Lego NXT De NLT module is onderverdeeld in drie delen die afzonderlijk of in combinatie gevolgd kunnen worden: 1. De basis wordt gelegd in het eerste deel van vier lessen waarin het robotje aan bod komt, de simulator, het programmeren en waarin een eerste programma wordt gemaakt. Dit is tevens een goede introductie voor docenten die op school mee willen doen met de RoboCup Junior wedstrijden. 2. De Rescue missie. In deze drie hoofdstukken wordt aan de hand van de Sense- Reason- Act loop uitgelegd hoe de Rescue missie kan worden geprogrammeerd. 3. Adaptive Behavior. In deze laatste drie hoofdstukken wordt meer aandacht besteed aan het programmeren van eenvoudig insectachtig gedrag waarbij technieken uit de Kunstmatige Intelligentie worden toegepast. In iedere les worden een aantal belangrijke concepten behandeld, zie de Features in het plaatje hiernaast. De module kan in verschillende combinaties worden gevolgd. Het deel Basics is in alle gevallen vereist. Daarna kunnen de delen Rescue en het meer complexe Adaptive Behaviour volgen. Het is ook mogelijk om na Basics direct door te gaan met Adaptive Behavior. De Rescue missie houdt in dat er een gevaarlijke container moet worden opgespoord en uit een moeras moet worden verwijderd. Adaptive Behavior concentreert zich meer op de technieken die nodig zijn om robots zichzelf te laten aanpassen aan veranderende omstandigheden. 16

In deze lessen wordt gebruik gemaakt van een cursusboek voor ieder deel en is ook een docentenversie beschikbaar. Hier worden dus geen leskaarten meer gebruikt. Basics De basismodule geeft de leerling alle informatie die nodig is om programma s te kunnen schrijven, testen en uitvoeren op de NXT robot. In ieder van de vier hoofdstukken wordt eerst een uitleg gegeven en vervolgens wordt in een aantal concrete stappen aangegeven wat er in het programma ingevoerd moet worden. Om ervoor te zorgen dat leerlingen overzicht houden zijn er optionele detailopdrachten. Die kunnen ze desgewenst overslaan of meer in detail bekijken, mocht een vervolgopdracht te moeilijk blijken. Deze optionele opdrachten zijn in de onderstaande plaatjes aangegeven met de grijze vakjes. Verder wordt ieder hoofdstuk afgerond met een zelfdoe- opdracht waarin het geleerde wordt toegepast. Deze zijn aangegeven met een rood kader. Daarnaast wordt aandacht besteed aan het opslaan van programma s, het gebruik van variabelen en subroutines en wordt de werking van de ingebouwde debugger uitgelegd. De opdrachten op dit niveau zijn zeer eenvoudig en behandelen de elementaire concepten van het 17

programmeren. Er wordt begonnen met eenvoudige programmeerstappen. De laatste lessen behandelen het gebruik van programmalussen en vervolgens de toepassing van subroutines, variabelen en parameters. Dit is een simpel programma waarin de robot een stukje vooruit rijdt en dan een bochtje maakt. Datzelfde kan worden ondergebracht in een subroutine, waardoor dit programma- onderdeel opnieuw kan worden gebruikt voor andere doeleinden. In dit programma wordt de subroutine twee keer aangeroepen. Met vier aanroepen legt het robotje een vierkant af. De parameters worde gebruikt om de lengte van de zijden van het vierkant te kunnen aanpassen. Op dit niveau zijn de programma s nog redelijk eenvoudig te volgen. Aan het eind zijn leerlingen in staat om zelfstandig eenvoudige programma s te maken. Het is dikwijls gemakkelijker om een onderwerp aangedragen te krijgen. Dat gebeurt in de resterende twee delen. In deel 2, de Rescue missie, wordt geleerd hoe het robotje een gevaarlijke container kan opsporen. Dit is een leuke opdracht die ook gebruikt kan worden door leerlingen die willen meedoen met de nationale RoboCup Junior wedstrijden. Deze worden jaarlijks in NEMO georganiseerd. 18

Rescue In het tweede deel wordt de Sense- Reason- Act loop geïntroduceerd. Deze constructie wordt in vrijwel alle robotprogramma s toegepast. Het houdt onder meer in dat de robot zijn sensoren gebruikt om een lijn te volgen of een object te vinden. Elk van de drie hoofdstukken behandelt één van deze drie stappen. Het onderwerp van dit tweede deel is de rescue missie. Hierbij moet het robotje de zwarte lijn volgen, totdat het bij het moeras aankomt. Daar moet het robotje een blikje zoeken en naar de kant duwen. Dat blikje stelt een container voor met gevaarlijke stoffen, die niet met water in aanraking mogen komen. De container moet dus zo snel mogelijk worden opgespoord en naar de kant geduwd. De leerlingen leren om zelf een lijnvolger te programmeren en hoe de sensoren moeten worden gekalibreerd. De kunst is om het robotje zo snel mogelijk het parcours te laten volgen, zonder dat het uit de bocht vliegt. 19

De programma s in dit deel zijn moeilijker dan in het eerste deel. Er wordt gebruik gemaakt van loops (lussen), subroutines en van parameters om de werking van het programma te beïnvloeden. Ook hier is belangrijk om de juiste instellingen van de lijnvolgers uit te zoeken en de sensoren op de juiste manier te kalibreren. Het derde deel kan hierna gevolgd worden, maar de docent heeft ook de keuze om dat deel over te slaan. Voor de leerlingen die graag een wat uitdagender onderwerp kiezen, kan het tweede deel worden verruild voor het moeilijkere, derde deel. De inhoud van dit onderdeel heeft een grote mate van overlap met de Rescue lessen op dit niveau. In de NLT module worden meer details behandeld waardoor meer diepgang wordt bereikt 20

Adaptive Behavior In het derde deel wordt geleerd hoe de robot zichzelf kan aanpassen aan veranderende omstandigheden. Hierbij is van belang om gebruik te maken van een zogenaamd State Diagram (toestandsdiagram) waarin staat in welke situatie de robot kan raken en wat de daarbij behorende actie is. Dit is een verdere verdieping van de Sense- Reason- Act loop. Een state- diagram geeft aan door welke externe prikkels de robot in een bepaalde toestand raakt en welke actie hij daarop onderneemt (behavior). De programma s in dit deel zijn weer een stuk complexer dan in de voorgaande delen en zijn meer theoretisch georiënteerd. 21

Het Programmeer Niveau Het programmeer niveau is het hoogste niveau van de doorlopende leerlijn. Op dit niveau wordt geprogrammeerd in een echte programmeertaal, in ons geval Java. De huidige versie voorziet alleen in het NLT deel dat in de vorm van cursusboeken voor de NLT robotica module beschikbaar is. Er wordt gebruik gemaakt van Eclipse als ontwikkelomgeving en van Java als programmeertaal. Als onderdeel van het lesmateriaal wordt een volledig in Java ontwikkelde simulator bijgeleverd. Het programmeren op dit niveau is veel lastiger dan bij de twee eerdere niveaus. Leerlingen worden herhaaldelijk geconfronteerd met hun eigen fouten en moeten niet alleen leren om secuur te werken maar ook moeten ze gebruik maken van de ingebouwde debugging faciliteiten. Voor het programmeren wordt gebruik gemaakt van een zogenaamde packager, die de door Eclipse gegenereerde code omzet naar machinetaal en die vervolgens in het geheugen van het robotje laadt. wordt gewerkt. De opdrachten in deze lessen zijn precies hetzelfde als die op het Fysieke niveau alleen is het programmeren ervan een stuk lastiger, omdat met een tekstuele programmeertaal 22

De bijgeleverde simulator werkt op een vergelijkbare manier als bij RoboPAL maar is geheel in Java geschreven en kan eventueel door de docent of leerlingen verder worden aangepast. Er is een nieuwe versie in voorbereiding, waarbij net als bij de voorgaande onderdelen geprogrammeerd wordt met de RoboPAL omgeving, alleen nu in Java. Zodra deze versie gereed is zal worden overgestapt van Eclipse als ontwikkelomgeving naar RoboPAL. De programmeeromgeving is daarnaast onderdeel van Virtual BreadBoard, een simulatiesysteem waarmee ook functies van elektronische onderdelen kunnen worden ontwikkeld en gebouwd. Daarmee kunnen de leerlingen dan zelf elektronica ontwerpen, testen en bouwen. Ook de mechanica wordt niet vergeten. Door de integratie met een 3D ontwerp programma kunnen ook mechanische onderdelen worden ontworpen en in een FabLab zelf worden gebouwd. Aan deze onderdelen zal in de loop van 2012 verder worden gewerkt. Robots@Home Voor het hoger onderwijs is er de nieuwe robots@home variant. Hierbij wordt geleerd om met Lego MindStorms robots eenvoudige taken in een huis uit te voeren. Er wordt vanuit gegaan dat de lessen uit de voorgaande niveau s zijn bestudeerd. Dit lesmateriaal bestaat uit een set instructiekaarten en een verzameling voorbeelden. Studenten maken een eigen programma en gebruiken daarbij de aangeleverde voorbeelden. Zie voor details de Robots@Home sectie in de download sectie van de website van RoboCup Junior. 23

Download procedure software en documentatie Doorlopende Leerlijn Robotica Alle informatie over de NLT robotica module voor de NXT is beschikbaar op CD en wordt meegeleverd met de software. Alle software en documentatie voor de beide NLT robotica modules kan via de website van RoboCup Junior worden gedownload. Op de website van RoboCup Junior vindt u in de download sectie de meest belangrijke informatie over de NLT module voor NXT en die voor Java. Informatie over RoboPAL en Virtual BreadBoard is te vinden op de volgende websites: www.muvium.com, www.robopal4nxt.com en www.virtualbreadboard.com Wilt u extra informatie over de apparatuur, prijzen etc? Stuur dan een mailtje naar info@robocupjunior.nl. 24