RoboColors

Voorblad

1. Inleiding

Voor je ligt de leerling-handleiding voor de module ROBOCOLORS. In deze module ga je kennismaken met LEGO Mindstorms, dat is Lego maar net iets: met gewoon LEGO kun je constructies bouwen en die zelfs laten bewegen op batterijen. LEGO Mindstorms gaat nog een stukje verder: je kunt dingen bouwen en laten bewegen volgens een programma dat jij geschreven hebt! Je begrijpt dat je dan veel meer kun maken.

In deze module ga je zelf een robot maken die met een kleursensor kleuren waarneemt en die volgens jouw geschreven programma balletjes met bepaalde kleuren kan sorteren. Om dit te kunnen doen, ga je eerst wat leren over sensoren in het algemeen en specifiek over de kleursensor. Vervolgens ga je kennismaken met LEGO Mindstorms: hoe kun je daarmeee robotten bouwen en je krijgt een introductie over de software die erbij hoort. Om te kunnen programmeren (dus een programma schrijven in de software), heb je kennis nodig over algoritmen (een reeks instructies) en logica. In de laatste fase van de module ga je aan de slag met het maken van een robot die een sorteeralgoritme kan uitvoeren (bijvoorbeeld gekleurde balletjes sorteren) en tot slot geef je een presentatie over je robot. In de tabel hieronder zie nogmaals de opbouw van de module met achter het onderwerp, het vakgebied van de les en hoeveel lessen er besteed zullen worden aan het onderwerp.

Tabel 1. De opbouw van de module

Onderwerp

Vakgebied

Aantal lessen

Introductie lesmodule

--

1

Sensoren
Kleur en kleursensor

NAT

2

LEGO Mindstorms basiscursus

INF

 

2

 

Logica en Algoritme

WISK & INF

2

SPA

INF, WISK & NAT

2

Bouwen en Programmeren

INF & WISK

3

Demonstratie

--

1

 

 

 

 

 

 

 

 

 

 

 

Vaardigheden

Je gaat in deze module werken aan een aantal vaardigheden:

  • Probleemaanpak: Hoe pak je een (groot) probleem aan? In dit geval is dat het bouwen van een robot die een bepaalde taak moet kunnen uitvoeren.

  • Onderzoeken en Ontwerken:Voordat je zo’n robot kunt maken, moet je je verdiepen in de materialen die je gaat gebruiken: LEGO Mindstorms. Hoe werkt de besturing en het programmeren?

  • Samenwerken. Je werkt samen in een groep van vier. Je gaat verschillende rollen aannemen tijdens het project (hierover straks meer), iedereen heeft zijn eigen verantwoordelijkheid voor het eindresultaat.

  • Presenteren: Zoals gezegd ga je aan het eind van het project je gemaakte robot presenteren. Dat kan aan de hand van een powerpoint, een prezi-presentatie, een filmpje of op een andere manier, zolang het eindresultaat maar goed gedemonstreerd wordt.

Verslag

Naast de presentatie, maak je ook een verslag. Hierin zijn de volgende onderdelen opgenomen:

  • Voorpagina met daarop de namen van de groepsleden, de naam van de docent en de datum.

  • Inhoudsopgave

  • Inleiding: Beschrijf hierin hoe jullie ontwerp tot stand is gekomen.

  • Het robotontwerp. Hierin zijn in ieder geval opgenomen:

    • Doel / functies van de robot

    • Gebruikte sorteeralgoritme

    • Ontwerpkeuzes: alternatieven en onderbouwing van de gemaakte keuzes

  • Vakinhoud: beschrijf hierin twee vakinhoudelijke elementen die je bij het ontwerp van je robot hebt gebruikt. Neem bronverwijzingen op naar de literatuur die je hebt gebruikt.

  • Conclusie en samenvatting

  • Bronverwijzingen

    Als bijlagen voeg je toe:

  • Het werkplan

    • Inleiding met het doel / de functie van de robot

    • Het ontwerp van de robot, met daarin:

      • Ontwerpschetsen van de robot

      • Ontwerpschetsen van de functionaliteit van de robot

      • Tijdsplanning (wanneer doe je wat)

      • Takenverdeling (wie doet wat)

  • Het logboek (zie logboekformulier)

  • Evaluatie (zie evaluatieformulier)

Groepsrollen

Je gaat samen werken in groepjesvan vier. Binnen je groepje heeft iedereen een eigen rol. Ieder groepslid wordt zodoende verantwoordelijk voor een eigen taak. Dit structureert de bijdragen van groepsleden en maakt de kans dat een lid 'meelift' op de inspanningen van de andere groepsleden aanmerkelijk kleiner. Deze werkvorm wordt door de hele module gebruikt.

De taakverdeling

Je werkt in viertallen (of drietallen) aan de opdracht. Je werkt volgens een taakverdeling. Elk groepslid heeft een eigen speciale taak in het groepje. Aan deze rolverdeling moet je je goed houden. Probeer je taak zo goed mogelijk uit te voeren om zo tot een goed resultaat te komen. Er zijn vier rollen, om de les krijg je een andere rol. Deze rol houdt je telkens twee lessen.

  • Noteer in het logboek wie wanneer welke rol heeft.
De voorzitter

De voorzitter is scheidsrechter en organisator. Hij zorgt ervoor dat alles op rolletjes loopt. Hij verdeelt de werkzaamheden over de groepsleden. Hij zorgt dat elk groepslid zich aan de regels houdt. De voorzitter zorgt bij problemen voor een oplossing en beslist bij meningsverschillen. Verder houdt hij de voortgang in de gaten; hij houdt bij hoe lang men over de verschillende onderdelen mag doen. Als je met zijn drieën bent, dan is de voorzitter ook materiaalman.

De ontwerper

De ontwerper is uitvoerende en opzoeker. Hij houdt zich bezig met de ontwikkeling de robot, hij is degene die de praktische handelingen uitvoert. Hij is de enige van de groep die tijdens de les iets op mag zoeken, bijvoorbeeld op zijn mobiel via internet. Dit doet hij altijd duidelijk zichtbaar boven tafel zodat de docent mee kan kijken wat hij aan het opzoeken is. Hij mag als enige de docent of andere groepen om hulp vragen.

De notulist

De notulist is schrijver en controleur. Hij noteert alles wat van belang is. Hij houdt elke les het logboek bij. Hij noteert hierin wie welke rol heeft en schrijft het antwoord op de vragen op nadat deze zijn besproken in de groep. Hij gaat na of iedereen de opdracht of de verwerking begrijpt. Hij controleert de werkzaamheden/resultaten.

De materiaalman (-vrouw)

De materiaalman is materiaalchef en criticus. Hij zorgt voor de materialen die jullie nodig hebben voor het maken van de robot, de materiaalman kan de docent vragen welke materialen aanwezig zijn. Uiteraard mag hij ook zelf materialen van huis meenemen, in overleg met de rest van de groep. Bij ideeën gaat hij na of het idee wel haalbaar is of dat het niet realistisch is om in de praktijk te maken. De materiaalman zorgt er tevens voor dat iedereen de moed erin houdt!

Beoordeling

De module wordt beoordeeld met behulp van het volgende Rubrics beoordelingsmodel. Het cijfer komt tot stand door het gewogen gemiddelde over de criteria te nemen, waarbij een score 1 = 3 punten, score 2 = 5 punten, score 3 = 7 punten, score 4 = 9 punten.

 

Criterium

4

3

2

1

1

Verzorging en uitvoering

Ontwerp en verslag hebben een verzorgde vormgeving, en zijn in correct Nerderlands opgesteld.

Ontwerp en verslag zien er netjes uit, toch komen her en der stijl en taalfouten voor.

Er is weinig aandacht besteed aan vormgeving en taalgebruik

Er is geen aandacht besteed aan vormgeving en taalgebruik.

2

Structuur en indeling

Ontwerp en verslag hebben een duidelijke en logische opbouw en structuur (incl inhoudsopgave)

Ontwerp en verslag hebben een redelijke opbouw en structuur, maar is niet volledig consistent of inhoudsopgave mist

Ontwerp en verslag hebben een redelijke opbouw maar een totaal structuur mist.

Ontwerp en verslag missen een logische opbouw en structuur.

3

Probleemaanpak

- Voorbereiding/ analyse/oriëntatie

- Planning/aanpak

- Uitwerking/ Antwoord

- Evaluatie/controle / reflectie

Het probleem is systematisch aangepakt: het probleem en de oplossingsrichtin-gen zijn goed in kaart gebracht, er is een plan van aanpak opgesteld, de verschillende stappen zijn gestructureerd doorlopen en uitgewerkt, er is een controle/evaluatie uitgevoerd.

Het probleem is redelijk gestructureerd aangepakt: het probleem is in kaart gebracht, er is een plan van aanpak opgesteld, de verschillende stappen zijn doorlopen en uitgewerkt; wat mist zijn alternatieve oplossingen en/of controles

Het probleem wordt vrij snel opgepakt, zonder goed in kaart te zijn gebracht, zonder probleemanalyse en zonder plan, er wordt vrij snel een oplossingsrichting gekozen en hier wordt voor gegaan.

Van reflectie is geen sprake.

Het probleem wordt niet gestructureerd aangepakt, het probleem is niet goed in kaart gebracht, er wordt gestart zonder goede analyse, er wordt geen plan opgesteld, eigen werk wordt niet gecontroleerd.

4

Informatie verwerven en verwerken

 

Er wordt gericht naar informatie gezocht, de juiste informatie wordt gebruikt, de informatie wordt juist op betrouwbaarheid beoordeeld, hoofd- en bijzaken worden onderscheiden en de tekst wordt in eigen woorden weergegeven.

Er wordt gericht naar informatie gezocht, de juiste informatie wordt gebruikt, de informatie wordt niet altijd juist op betrouwbaarheid beoordeeld, hoofd- en bijzaken worden niet altijd onderscheiden. De informatie wordt omgevormd naar een eigen verhaal.

Er wordt naar informatie gezocht, de gevonden informatie wordt zonder echte controle gebruikt (op onderbuik-gevoel), hoofd- en bijzaken lopen door elkaar. Het verhaal vertoont vrij veel overlap met de gebruikte bronnen.

Informatie wordt één-op-één van bronnen overgenomen, zonder betrouwbaarheids-controle, zonder onderscheid te maken tussen hoofd-en bijzaken en zonder er een eigen verhaal van te maken.

5

Plannen en organiseren:

organiseren van benodigdheden, planning bewaken en bijstellen, planning evalueren

De opdracht wordt goed gepland, er wordt tijdig gezorgd voor de juiste gereedschappen en materialen, er wordt goed gecontroleerd of de planning wordt gehaald en planningsproblemen worden opgelost

De opdracht wordt vrij goed gepland, maar de voortgangscontrole en/of het oplossen van plannings-problemen vraagt nog wat ondersteuning.

Met de nodige hulp komt er een planning tot stand, ook bij de voortgangscontrole een bijsturing is hulp nodig.

Er wordt geen concrete planning gemaakt, er wordt chaotisch gewerkt, activiteiten worden hap-snap opgepakt, er vindt geen voortgangscontrole plaats.

6

Inleiding, alternatieven en onderbouwing keuzes

In het ontwerp en verslag wordt een inleiding gegeven, worden alternatieven uitgewerkt en ontwerpkeuzes goed onderbouwd

In het ontwerp wordt een globale inleiding gegeven en worden alternatieven en ontwerpkeuzes wel beschreven, maar niet onderbouwd

In het ontwerp mist een inleiding en/of worden alternatieven of ontwerpkeuzes slechts globaal genoemd, maar niet onderbouwd.

In het ontwerp mist een inleiding en worden geen alternatieven en ontwerpkeuzes worden benoemd

7

Diepgang en volledigheid

De opdracht is met goede diepgang uitgevoerd; ontwerp en verslag zijn volledig

De opdracht heeft voldoende diepgang en ontwerp en verslag zijn volledig

De opdracht mist voldoende diepgang of het ontwerp en verslag missen onderdelen.

De opdracht is met weinig diepgang uitgevoerd; ontwerp en verslag zijn onvolledig

8

Originaliteit en eigen inbreng

Het ontwerp en de robot laten veel originaliteit en eigen inbreng zien

Het ontwerp is origineel en toont verschillende eigen aspecten

Het ontwerp heeft tov de handleiding een aantal eigen aspecten, maar is weinig origineel

Het ontwerp en de robot zijn één op één afgeleid uit de handleiding

9

Vakinhoudelijke aspecten

In ontwerp en verslag zijn de vakinhoudelijke aspecten met goede diepgang uitgewerkt.

In het ontwerp worden vakinhoudelijke aspecten met redelijke diepgang uitgewerkt.

De vakinhoudelijke aspecten worden slechts globaal besproken, of slechts een deel van de vakinhoudelijke aspecten wordt besproken

De vakinhoudelijke aspecten zijn niet uitgewerkt

10

Vermelding gebruikte bronnen / eigen onderzoek

Er wordt in het ontwerp en verslag gebruik gemaakt van verschillende bronnen; hiernaar wordt expliciet verwezen en er is een bronvermelding opgenomen (APA)

Er is gebruik gemaakt van verschillende bronnen; hiervan is een bronvermelding opgenomen.

Er is beperkt gebruik gemaakt van externe bronnen, of bronnen zijn niet steeds vermeld.

Er zijn geen externe bronnen gebruikt, of hiervan zijn geen bronvermeldingen opgenomen.

11

Logboek:

beschrijving activiteiten, knelpunten en oplossingen

In het logboek wordt een duidelijk en volledig overzicht gegeven van het gevolgde proces, met activiteiten, knelpunten en oplossingen

In het logboek wordt een redelijk overzicht gegeven van het gevolgde proces, met activiteiten, knelpunten en oplossingen

In het logboek wordt globaal geschets hoe het proces is verlopen. Specifieke activiteiten, knelpunten en oplossingen ontbreken.

Het logboek is erg summier en geeft geen goed beeld van het verloop van project.

12

Samenwerking:

rol goed ingevuld, rekening houden met elkaar, afspraken nakomen, verantwoordelijk-heid nemen, initiatief tonen, omgaan met kritiek, werksfeer

Er is uitstekend samengewerkt. Dit team kan trots zijn op zichzelf en het resultaat.

Er is redelijk samengewerkt; botsingen zijn opgelost, alle leerlingen hebben hun aandeel geleverd (misschien niet helemaal evenwichtig, maar ieder heeft zijn rol vervuld) en de sfeer was okee.

Ondanks dat er de nodige verstoringen waren, is er een teamresultaat neergezet.

Er is niet of nauwelijks samengewerkt, er waren voortdurend botsingen, of één of twee leerlingen hebben het meeste werk verzet.

13

Conclusies en samenvatting:

Over probleem-aanpak, ontwerp-proces, vakinhoud, knelpunten

Conclusies en samenvatting van de resultaten zijn duidelijk beschreven.

Belangrijkste conclusies en samenvatting resultaten zijn globaal beschreven.

Conclusie en samenvatting zijn slechts summier of onvolledig gegeven.

Conclusie en samenvatting ontbreken

14

Presentatie:

heldere boodschap, verzorgd materiaal, contact met het publiek

De presentatie is prima verzorgd, de inhoud wordt boeiend en duidelijk gebracht, de aandacht van het publiek wordt getrokken

De presentatie ziet er netjes uit, de boodschap komt over, het zou alleen iets boeiender of pakkender gebracht kunnen worden.

De boodschap komt niet goed uit de verf, dit kan komen door inhoud, vormgeving of hoe het gebracht wordt.

De boodschap wordt niet duidelijk overgebracht, de vorm is niet aantrekkelijk en het publiek wordt niet aangesproken.

15

Evaluatie van:

samenwerking, leerdoelen en module

De evaluatie geeft een goed overzicht van de samenwerking, leeropbrengsten en waardering van de module

De evaluatie geeft een redelijk beeld van de samenwerking leeropbrengsten en waardeling van de module

De evaluatie van de module is slechts summier of onvolledig ingevuld

Een evaluatie van de module ontbreekt

 

Kennismaking met robotica en kleurensensor

Noot vooraf: als de opdrachten in dit hoofdstuk in groepen gemaakt worden, dan voldoet één uitwerking van de opdracht per groep (dus per groep wordt een opdracht één keer ingeleverd).

Voor je aan de slag gaat met het bouwen van een robot die sorteertaak kan uitvoeren, ga je eerst kijken wat je eigenlijk al over het onderwerp weet. Dit doe je aan de hand van een mindmap.

Voorbeeld van de structuur van een mindmap
Voorbeeld van de structuur van een mindmap

In het midden schrijf je een centraal begrip op. Vervolgens ga je nadenken over onderwerpen/begrippen die een relatie hebben tot het centrale begrip.

In dit gedeelte van de les zal er ook aandacht zijn voor de ontwerpcyclus: wat zijn de stappen die je doorloopt om daadwerkelijk een robot te modelleren?

Voor deze les staan twee begrippen centraal, namelijk kleursensor en robot. De kleursensor is het hulpmiddel waarmee je straks een sorteertaak gaat uitvoeren.

Opdracht: Maak een mindmap volgens het bovenstaande voorbeeld van het centrale begrip: Kleursensor. Probeer zoveel mogelijk begrippen te bedenken die een relatie hebben tot de kleursensor. De volgende vragen kunnen helpen: Wat is een kleursensor? Wat is kleur? Waar zou je het voor kunnen gebruiken? Enz.

Opdracht: Maak een mindmap van het centrale begrip: robot.

Het ontwerpproces

Oké, nu kun je aan de slag gaan om een robot te maken die een sorteertaak kan uitvoeren! Maar, hoe begin je aan zo’n bouwproject? Welke taak moet je robot precies kunnen uitvoeren? Waar moet je robot aan voldoen? Wat zijn de beperkingen van LEGO Mindstorm? Op dit soort vragen moet je eerst een antwoord kunnen geven.

Schematische weergave van de ontwerpcyclus
Schematische weergave van de ontwerpcyclus

Vaak wordt een ontwerpopdracht uitgevoerd aan de hand van de ontwerpcyclus.  

1.Analyseren en beschrijven

Alvorens je aan een opdracht begint, lees je je eerst goed in. Probeer de opdracht in eigen woorden te verwoorden, zo duidelijk en overzichtelijk mogelijk. Probeer jezelf vragen te stellen over de opdrachten, die vragen kun je in de groep gooien om gezamenlijk tot een antwoord te komen.

2.Programma van eisen opstellen

Het programma van eisen helpt je een beeld te krijgen van de eisen die aan je ontwerp gesteld zijn. Daarbij kun je denken aan eisen met betrekking tot het ontwerp zelf: Wat moet het kunnen? Welke materialen kun je gebruiken? Andere randvoorwaarden zijn bijvoorbeeld de beschikbare tijd voor het project en de toetsing (waar wordt op getoetst?). Deze eisen beschrijven jullie ook in het eindverslag.

3.(deel)uitwerkingen bedenken

Nu start het creatieve proces, oftewel je gaat ideeën over het oplossen van het ontwerpprobleem realiseren. Dit gebeurt in elke deeluitwerkingen. In deze module wordt je aan de hand van opdrachten op weg geholpen om deze deeluitwerkingen te kunnen maken. Zo krijg je onder andere les in kleursensoren en je gaat met Lego Mindstorm aan de slag (met eenvoudige programeeropdrachten om bekend te raken met de software). In deze fase ga je aan de slag met het maken van een eenvoudige robot met eenvoudige taken om bekend te raken met Lego Mindstorm en haar programmatuur. Hierdoor kun je gaan nadenken over het ontwerpprobleem en hoe je dat zou kunnen oplossen.

4.Ontwerpvoorstel formuleren

Als de voorgaande stappen zorgvuldig zijn uitgevoerd, is deze stap vlot gedaan: je controleert of de ideeën die je hebt opgedaan voldoen aan het programma van eisen, en je schrijft op wat er gedaan moet worden voor de opdracht en hoeveel tijd je daarvoor denkt nodig te hebben. Ook deze stap wordt opgeschreven in het eindverslag.

5.Ontwerp realiseren

Deze stap is het hart van het project: nu ga je daadwerkelijk met Lego Mindstorm aan de slag om je robot te bouwen aan de hand van alle opgedane kennis tot nu toe. Je volgt je ontwerpvoorstel dat je in de vorige stap hebt opgesteld.

6.Productontwerp evalueren en testen

De laatste stap van de cyclus is het evalueren en testen van je ontwerp: Werkt het naar behoren? Wordt er voldaan aan het programma van eisen? Benoem de sterke en zwakke punten van je ontwerp. Klopte je tijdsplanning? Hoe was de samenwerking?

Hoewel dit de laatste stap van de cyclus is, betekent het niet dat je klaar bent! Het kan zijn dat je ontwerp toch niet helemaal aan de eisen voldoet: je zult dan terug moeten gaan in de cyclus en bepaalde stappen opnieuw moeten doen. Welke stappen dat zijn, dat ligt aan het gebrek in het ontwerp.

2. Sensortechnologie

Sensoren

Waarom gaan deuren bij supermarkten of in bepaalde gebouwen automatisch open? Hoe kunnen auto’s zelf fileparkeren? Deze les is bedoeld om zulke vragen te beantwoorden.

Wat is een sensor?

Een sensor is een elektronisch component dat de omgeving kan waarnemen. Het is een soort zintuig in een elektrische schakeling. Een sensor zet een grootheid (X) om in een elektrische spanning (elektrisch signaal). Dit signaal geeft informatie over de omgeving. Het signaal bevat informatie over de grootheid die met de sensor wordt gemeten.

Voorbeelden van grootheden zijn: temperatuur - hoeveelheid licht – geluid …

Een lichtsensor meet bijvoorbeeld de lichtsterkte in een bepaalde ruimte en zet die om in een bijpassende elektrische spanning: hoe groter de lichtsterkte, hoe groter de spanning.

Opdracht: Bekijk de videos hieronder. In het eerste filmpje wordt uitgelegd wat sensoren zijn en het tweede laat een toepassing van sensoren zien.

Sensoren, hoe wat en waarom

Proefkonijnen, Dennis en Valerio breken in

Toepassing van sensoren

Er zijn verschillende soorten sensoren. Voorbeelden zijn: Lichtsensor – Temperatuursensor - Kleursensor – Geluidsensor – Druksensor – Snelheidssensor - Bewegingssensor …

Opdracht: Bedenk een aantal toepassingen in het dagelijkse leven voor de bovengenoemde sensoren.

Opdracht: Onderzoek welke sensoren er in je smartphone zitten (overleg/onderzoek in groepjes van twee).

Bijzondere weerstanden als sensoren

Bijzondere weerstanden worden gebruikt om lichtsensoren en temperatuursensoren te maken. Deze paragraaf legt de nadruk op de werking van zulke sensoren.

Een LDR
Een LDR

Lichtsensor

Een lichtsensor meet de lichtsterkte in de buurt van de sensor. De sensor wordt gemaakt met een LDR (Light Dependent Resistor of photoresistor). Een LDR is een weerstand dat gevoelig is voor de hoeveelheid licht. De weerstand van een LDR is groot (t/m 10kΩ) in het donker en wordt kleiner als er licht op valt (t/m 100Ω).

Symbool LDR
Symbool LDR

Opdracht: Lichtsensor in een schakeling

Je gaat in tweetallen een serieschakeling bouwen met een weerstand, een spanningsbron, en een LDR, en een ampèremeter.

  • Meet de waarde van de stroomsterkte als het donker is.
  • Meet de waarde van de stroomsterke als je de zaklamp gebruikt.
  • Gebruik een zoemer. Wat is de waarde van de stroomsterkte als de zoemer afgaat?
  • Wat is het verband tussen lichtintensiteit en stroomsterkte?
Een NTC
Een NTC

Temperatuursensor

Een temperatuursensor meet de temperatuur in de buurt van de sensor. Het wordt gemaakt met een NTC (Negatieve Temperatuur Coëfficiënt). Een NTC is een weerstand dat gevoelig is voor de temperatuur van de omgeving. De weerstand van een NTC neemt af als de temperatuur toeneemt.

Symbool NTC
Symbool NTC

Opdracht: Temperatuursensor in een schakeling

Je gaat in tweetallen een serieschakeling bouwen met een weerstand, een spanningsbron, een NTC, en een ampèremeter.

Verander de waarde van de temperatuur en meet de stroomsterkte. Maak een tabel, kies hiervoor geschikte waarden voor de temperatuur. Wat is het verband tussen temperatuur en stroomsterkte?

Opdracht: Bedenk en bouw een inbraakalarm. Wat heb je nodig? Bijvoorbeeld: Spanningsbron – Transistor – LDR – Weerstandjes – Zoemer – Snoeren – Zaklamp (dunne laser lamp).

Kleur en kleurensensor

Waarom zien we om ons heen verschillende kleuren? Alles wat je ziet is niet altijd wat het lijkt. Hoe komt dat? Hoe kunnen we ervoor zorgen dat we de echte kleuren zien? Deze les is bedoeld om zulke vragen te beantwoorden.

Licht

Licht is een elektromagnetische straling dat zich zowel als golf en als deeltje (foton) gedraagt.

Spectrum van licht

Wit licht (licht van de zon) bestaat uit licht van verschillende kleuren. Een deel van wit licht kunnen we zien (zichtbaar licht). Met een prisma is het mogelijk om deze kleuren zichtbaar te maken.

Spectrum van wit licht
Spectrum van wit licht
Wit licht door een prisma
Wit licht door een prisma

RGB basiskleuren

Basiskleuren van licht zijn rood, groen, en blauw (RGB). Met een combinatie van deze drie kleuren is het mogelijk om andere kleuren te maken.

Basiskleuren van licht
Basiskleuren van licht

Opdracht: Oefen met de simulatie hieronder om de verschillende kleuren zichtbaar te maken. Klik op de link, er verschijnt een pagina met de titel 'Color Vision'. Druk op de play-knop (rondje met driehoekje). Dit opent een nieuwe pagina. Klik op 'Single Bulb'. Je ziet een persoon met een zaklamp op zich gericht. Bij 'Bulb color' kun je de kleur aanpassen van de zaklamp.

  • Verschuif de knop en zie wat er gebeurt.

Er is ook een balk genaamd 'Filter Color'. Om de filter aan te zetten, verschuif je het zwarte rondje naar rechts. Het filter verschijnt dan.

  • Laat de Bulb Color op een bepaalde kleur staan en verschuif de knop bij Filter Color. Wat gebeurt er?

Onder aan de pagina klik je op 'RGB Bulbs'. Je kunt nu de drie basiskleuren combineren om nieuwe kleuren te maken.

  • Maak de volgende kleuren: Geel, cyaan, magenta, grijs, wit en zwart.

Simulatie: Kleuren

Opdracht: Gebruik een prisma om een regenboog te laten ontstaan. Voor deze opdracht heb je een lamp (met dunne lichtstraal) en een prisma nodig.

Gekleurde voorwerpen

Je ziet een voorwerp wanneer een deel van het licht dat het voorwerp terugkaatst, in je ogen terechtkomt. Gekleurde voorwerpen kaatsen de eigen kleur terug. Een voorbeeld: een geel T-shirt kaatst de kleur geel van wit licht terug. Vandaar dat we het T-shirt geel waarnemen.

Opdracht: Bekijk het filmpje hieronder waarin wordt uitgelegd hoe we kleuren kunnen zien.

Filmpje: Kleuren zien

Opdracht: Hoe zou een geel T-shirt in een rode ruimte lijken? Bedenk een proefje om deze vraag te beantwoorden. Voer het proefje uit, als het mogelijk is.

Illusie (kleuren)

Bijna alle kleuren om ons heen zijn mengkleuren. De kleuren die je ziet zijn afhankelijk van veel factoren.

Opdracht: Bekijk het filmpje hieronder over optische illusies.

Filmpje: Optische illusies

Opdracht: Lees het artikel hieronder over illusies.

Artikel: Brein en illusie

Opdracht: Bekijk het filmpje hieronder waarin wordt uitgelegd hoe we illusies waarnemen.

Filmpje: The dress: Is de jurk zwart/blauw of goud/wit?

Adelson's Checkerboard (kleurillusie). Verschillen vakje A en B van kleur?
Adelson's Checkerboard (kleurillusie). Verschillen vakje A en B van kleur?

Artikel: Kleurillusies
Klik op deze link voor meer voorbeelden van kleurillusies.

Kleurensensor

Om illusies te voorkomen kan men gebruik maken van kleurensensoren. Een kleurensensor bestaat uit drie fotodiodes (RGB-LED), fototransistors, en speciale filters.

Fotodiodes

Fotodiodes (halfgeleider component) zetten licht om in een elektrische spanning (volgens het principe van het foto-elektrisch effect). De fotodiode bestaat uit halfgeleider materiaal en werkt als elke gewone diode (laat de stroom in een richting door). Voorbeelden van fotodiodes zijn RGB-LED. Een RGB-LED bestaat uit drie fotodiodes die de kleuren rood, groen en blauw kunnen waarnemen.

Fotodiode
Fotodiode
Symbool fotodiode
Symbool fotodiode

Opdracht: lees het artikel hieronder over fotodiodes.

Artikel: Fotodiode

Opdracht: Bekijk het filmpje hieronder over RGB fotodiodes.

Filmpje: RGB fotodiode

Fototransistors

De fototransistor werkt volgens het principe van een gewone transistor. Het enige verschil is dat de fototransistor een halfgeleider bevat die gevoelig is voor daglicht. Onder invloed van licht ontstaat er een basisstroom die evenredig is met de hoeveelheid licht. Deze basisstroom zorgt er voor dat de transistor gaat geleiden. De fototransistor geleidt meer stroom naarmate deze meer belicht wordt.

Fototransistor
Fototransistor
Symbool fototransistor
Symbool fototransistor

Werking kleurensensor

Een kleurensensor bestaat uit drie fotodiodes (RGB-LED), fototransistors, en speciale filters. De filters zorgen ervoor dat alleen licht met een bepaalde kleur door kan. Een groene filter laat alleen de kleur groen door (je hebt dit al ervaren in de simulatie met kleuren). Op zo’n manier kan alleen de groene fotodiode de groene kleur detecteren. Dit groene licht wordt omgezet in stroom door de diode.

Een kleurensensor is ontworpen om de kleur van een oppervlak te waar te nemen. De sensor zendt licht (rood, groen of blauw) naar het voorwerp. Het voorwerp kaatst het licht terug. De sensor berekent de kleurwaarde van het teruggekaatste licht en vergelijkt deze waarde met de opgeslagen referentiewaarden (deze zijn voorgeprogrammeerd).

De sensor meet drie keer de teruggekaatste licht met telkens andere kleuren. Op deze manier kan de sensor zien welke kleur van de ondergrond goed reflecteert. Bij deze benadering wordt de kleur van de ondergrond bepaald.

Opdracht: Bekijk de filmpjes hieronder over kleurensensoren.

Filmpje: Werking kleurensensor 1

Filmpje: Werking kleurensensor 2

Filmpje: Werking kleurensensor 3

Toepassingen kleurensensor

Kleurensensoren worden in deze module gebruikt om bijvoorbeeld LEGO-blokjes te sorteren.

Opdracht: Bekijk de filmpjes hieronder over het sorteren van kleurblokjes.

Filmpje: Sorteren van kleur 1

Filmpje: Sorteren van kleur 2

Filmpje: Sorteren van kleur 3

Kleurensensoren kunnen gebruikt worden om de kleur van de ondergrond te herkennen.

Opdracht: Bekijk de filmpjes hieronder over het herkennen van de kleur van de ondergrond.

Filmpje: Kleur ondergrond 1

Filmpje: Kleur ondergrond 2

Opdracht: Kleurensensor in een schakeling

Je gaat in tweetallen een simpele schakeling bouwen met een kleurensensor. Deze schakeling moet in staat zijn om bepaalde kleuren van voorwerpen te herkennen.

Opdracht: Bekijk de filmpjes hieronder over kleurensensoren in schakelingen.

Filmpje: Kleurensensor in schakeling 1

Filmpje: Kleurensensor in schakeling 2

Opdracht: Bouw een schakeling met een kleurensensor. De schakeling moet bijvoorbeeld de kleur blauw herkennen.

Voor deze opdracht is de grootte van de groep afhankelijk van het aantal sensoren.

3. Basiscursus LEGO Mindstorms

Sensortechnologie wordt gebruikt in robotica, sensoren zijn de zintuigen van de robot. Met sensoren kan de robot zijn omgeving waarnemen, deze informatie gebruikt de robot voor het maken van keuzes. 

Kijk maar eens naar deze video, hier zie je hoe een LEGO robot eenvoudig een lastige puzzel oplost.

In deze lessenserie ga je met LEGO Mindstorms zelf een robot maken die sensoren gebruikt om keuzes te maken. In dit hoofdstuk maak je kennis met het materiaal waarmee je de komende lessen aan de slag gaat. Eerst krijg je uitleg over de hardware en software van LEGO Mindstorms. Heb je al ervaring met LEGO Mindstorms? Dan kun je het eerste deel overslaan en direct beginnen met het bouwen en programmeren van The Explorer.

LEGO Mindstorms

In deze lessenserie gebruik je de NXT 2.0 basis set en het bijbehorende software programma nodig. Dit programma kun je gratis downloaden via de onderstaande link. 

Download: Lego Mindstorms NXT-G 2.0 software
Software voor programmeren van een Lego Mindstorms robot is hier gratis te downloaden.

Hardware 'Brick'

De NXT 2.0 set bestaat uit diverse LEGO blokken zoals je ze wellicht ook kent van Technisch LEGO. Daarnaast zijn er specifieke LEGO Mindstorms onderdelen: motoren, sensoren, kabels en 'brick'. Brick is het hart en hoofd van de robot; een kleine computer waarop het programma wordt uitgevoerd en die informatie van sensoren ontvangt en de motoren bestuurt. 

 

NXT 'brick' met sensoren en motoren
NXT 'brick' met sensoren en motoren

Controleer altijd de batterijen voordat je aan de slag gaat. Brick werkt op 6 AA-baterijen of een speciale accu.

De sensoren sluit je altijd aan op de poorten 1 tot en met 4. De motoren sluit je altijd aan op de poorten A, B of C. Naast de poorten voor de motoren zit een aansluiting voor USB; hiermee sluit je brick aan op de computer.

Bedieningsknoppen van de 'brick'
Bedieningsknoppen van de 'brick'

Je zet de brick aan met de (oranje) Ok-knop. Je hoort het startgeluid en in het beeld komt het hoofdmenu. In het hoofdmenu staan enkele iconen; actief is het item 'My Files'. Met de linker- en rechterknop kan je door het menu bladeren. Met de Ok-knop selecteer je een menu item. De (grijze rechthoekige) Terug-knop gebruik je om terug te gaan naar het vorige menu.

Om een programma te starten, selecteer je het programma en druk je op de Ok-knop. Je moet natuurlijk wel eerst een programma uploaden! Je kunt het programma stoppen met de Terug-knop. Om de brick uit te zetten, houd je de Terug-knop ingedrukt tot er 'Turn Off' in beeld verschijnt, vervolgens druk je op de Ok-knop. 

Het geheugen van de brick kan volraken, je kunt dan plek maken door oude programma's te verwijderen. Selecteer een programma en gooi het weg door de prullenbak te kiezen en vervolgens op de Ok-knop te drukken. Let op: verwijderen van programma’s kun je niet ongedaan maken! 

Software NXT-G 2.0

In het programma van de robot staan de instructies die het gedrag van de robot bepalen. Alle acties die de robot moet uitvoeren worden geprogrammeerd. Om de robot te programmeren, maak je gebruik van de NXT-G 2.0 software. Deze software heeft een zogenaamde "drag-and-drop" interface. Hiermee kun je, zonder te coden, een programma schrijven dat de robot laat doen wat jij wilt. Je maakt het programma op de computer en uploadt het naar de robot via een USB-kabel.

Om een programma te maken, selecteer je een van de blokken uit het programmeerpallet en sleep je deze naar de startpositie in het werkgebied. Je kunt het programma uitbreiden door andere blokken aan de reeks toe te voegen. Het programma voert de blokken een voor een uit, in de volgorde waarin jij ze plaats. Je kunt geplaatste blokken verplaatsen door deze met de linker muisknop aan te klikken en met de muisknop ingedrukt te slepen. Om een blok te verwijderen uit de reeks, klik je om deze te selecteren, vervolgens druk je op Delete.

Selecteer een programmeer-blok en sleep deze naar de startpositie in het werkgebied
Selecteer een programmeer-blok en sleep deze naar de startpositie in het werkgebied

Ieder blok geeft de robot opdracht om een actie uit te voeren. Elk blok geeft een unieke instructie aan de robot. Door verschillende combinaties van blokken of eigenschappen van blokken te veranderen, creëer je jouw unieke robot. In de algemene werkomgeving heb je de volgende blokken tot je beschikking:

  • Verplaatsen
  • Opnemen / Afspelen
  • Geluid
  • Beeldscherm
  • Wacht
  • Herhaling
  • Schakeloptie

In de komende lessen leer je alle details van deze blokken. Ziet jouw programmeerpallet er anders uit? Selecteer het pallet zoals weergegeven in de afbeelding door op de tabjes onder aan het pallet te klikken.

Onderin het scherm zie je het eigenschappenpaneel. Hierin kun je de eigenschappen van een blok aanpassen, rechts staat een beschrijving van het blok. De eigenschappen zijn afhankelijk van het geselecteerde blok. Zo kun je in een verplaatsen-blok bijvoorbeeld de richting en snelheid aanpassen. Bij het geluid-blok kun je onder andere het volume aanpassen en een geluidsfragment kiezen. 

Bovenaan het scherm vind je de gereedschappen. Hier kun je een programma opslaan op de computer of een nieuw programma maken. Ook kun je blokken kopiëren, knippen en plakken of recente bewerkingen ongedaan maken (erg handig als je per ongeluk een blok verwijderd hebt).

Rechtsonder staan de brick knoppen. Hiermee upload je het programma naar de brick. Ook kun je het programma op de brick bedienen. Natuurlijk moet de brick wel aangesloten zijn aan de computer! Als het programma klaar is met uploaden hoor je een geluid. Het programma staat nu in het geheugen van de brick en kan handmatig gestart worden in het menu op de brick (My Files → Software Files).

NXT-G 2.0 interface elementen
NXT-G 2.0 interface elementen

The Explorer

Nu je de belangrijkste dingen over de hardware en software van LEGO Mindstorms weet, wordt het tijd om zelf aan de slag te gaan en te ervaren hoe je een robot maakt. Je gaat ‘The Explorer’ bouwen en programmeren. The Explorer is een voertuig op wielen, de brick stuurt de motoren aan die ervoor zorgen dat The Explorer zelfstandig kan rijden. Je maakt deze eerste opdrachten in tweetallen, kies iemand uit jouw projectgroep om mee samen te werken.

Bouwen

Eerst ga je het fysieke voertuig bouwen met LEGO blokken en de speciale Mindstorms onderdelen.

Open bestand Bouwinstructies The Explorer

Motoren aansluiten op de brick
Motoren aansluiten op de brick

Programmeren

Je hebt nu je eerste robot gebouwd, maar de robot doet nog niets. Om te functioneren heeft de robot een programma nodig. Je gaat nu een programma schrijven dat The Explorer laat rijden, draaien en praten.

LEGO Mindstorms NXT-G 2.0 opstartscherm, type een naam in en klik op de knop ‘Go >>’ om een nieuw programma te maken
LEGO Mindstorms NXT-G 2.0 opstartscherm, type een naam in en klik op de knop ‘Go >>’ om een nieuw programma te maken

Een programma bestaat uit een reeks blokken. Ieder blok geeft de robot een specifieke instructie. Het programma begint met het eerste blok en voert de reeks met instructies een voor een uit. De eerste instructies voor the Explorer zijn verplaatsingen: we gaan the Explorer opdracht geven kort vooruit bewegen en vervolgens te draaien.

Je hebt nu je eerste programma voor de robot geschreven. De robot zou nu precies 5 seconden vooruit moeten rijden en vervolgens snel draaien. Om te controleren of het programma correct werkt, ga je de robot testen.

Werkt de robot correct? Zo niet, pas dan de eigenschappen van de verplaatsen-blokken aan zodat jouw robot precies doet wat je verwacht.

In het eigenschappenpaneel kun je de details van de instructies aan de robot bepalen. Het verplaatsen-blok kent de volgende eigenschappen:

  • Poort – hier geef je aan op welke poort(en) de motor(en) aangesloten zijn die je wilt besturen met het verplaatsen-blok.
  • Richting – hier geef je aan in welke richting de motoren draaien, en daarmee of de robot voor- of achteruit beweegt.
  • Besturing – de motor waar de slider het dichts in de buurt staat zal harder draaien waardoor de robot een bocht maakt. Om rechtdoor te rijden moet de slider dus precies in het midden staan. Beweeg de slider naar links om de robot naar links te laten draaien en naar rechts voor een bocht naar rechts.
  • Vermogen – hiermee controleer je de snelheid van de motoren, kies je voor 0 dan draait de motor niet.
  • Tijdsduur – hiermee bepaal je hoelang de verplaatsing duurt. Je kunt dit opgeven in seconden, aantal omwentelingen van de motor en hoeveel graden de motor draait. Er is ook een optie onbegrensd, de motoren blijven dan draaien tot het einde van het programma.
  • Volgende actie – hier geef je aan wat het programma moet doen als de verplaatsing voltooid is. Kies je voor remmen dan stopt de motor direct met draaien, bij vrijloop komt de motor vloeiend tot stilstand.

Jouw robot kan veel meer dan vooruit bewegen en ronddraaien, bijvoorbeeld geluid afspelen. De robot kan tonen laten horen zoals piepjes en geluidsfragmenten van een bestand afspelen. Door je robot korte fragmenten gesproken tekst te laten afspelen, lijkt hij bijna menselijk!

Het geluid-blok heeft de volgende eigenschappen:

  • Actie – hier bepaal je of de robot een toon laat horen of een geluidsbestand afspeelt.
  • Controleer – hier geef je aan of je een geluid wilt starten of een (eerder gestart) geluid wilt stoppen.
  • Volume – hiermee zet het geluid harder of zachter.
  • Functie – hier geef je aan of het geluid herhaaldelijk moet worden afgespeeld.
  • Bestand (alleen bij actie geluidsbestand) – kies een geluidsbestand om af te spelen. Je kunt kiezen uit de voorgeprogrammeerde woorden of zelf een geluidsbestand maken. Om een geluidsbestand te maken, selecteer je in gereedschappen ‘Extra’ → ‘Geluidsbewerking’.
  • Noten (alleen bij actie toon) – selecteer een noot om te spelen en bepaal hoelang de toon duurt.
  • Wacht – hier bepaal je of het programma moet wachten tot het geluid voltooid is voordat het programma verder gaat.  

Good Job! Je hebt nu je eerste robot gebouwd en geprogrammeerd.

Vergeet niet het programma op te slaan op de computer. Ruim alle LEGO onderdelen weer netjes op, maar haal de robot niet uit elkaar! Je hebt The Explorer nodig in de komende lessen over logica en algoritmes.

4. Logica en Algoritmen

In de vorige les heb je je eerste robot geprogrammeerd. Het programma bestaat uit een reeks van eenvoudige instructies. Het schrijven van een reeks kleine opdrachten waarmee je complexe problemen kunt oplossen, noemen we een algoritme. In dit hoofdstuk leer je enkele basisconcepten waarmee een algoritme opgebouwd wordt en hoe je deze kunt programmeren in LEGO Mindstorms. Hierna leer je hoe je met deze basisconcepten complexe problemen kunt oplossen, zoals het sorteren van getallen en kleuren.

Keuzes en Herhaling

In het vorige hoofdstuk heb je kennis gemaakt met het LEGO Mindstorms materiaal door het bouwen en programmeren van een eenvoudige robot. Om een intelligente robot te programmeren, moet je goed nadenken over de opdrachten die je de robot geeft. De acties die je de robot laat uitvoeren, en de volgorde waarin, bepalen hoe goed de robot zijn taak vervult.

In dit hoofdstuk leer je hoe je een algoritme kunt schrijven met programmeertechnieken zoals herhalingen en keuzes en hoe je deze kunt programmeren in LEGO Mindstorms. Het gebruik van sensoren is hierbij van groot belang: sensoren geven antwoord op vragen en bepalen de keuzes die de robot zal maken. De opgedane kennis ga je direct toepassen: je gaat ‘The Explorer’ uit de vorige les intelligent maken.

Je mag voor deze opdracht in tweetallen werken, kies iemand uit jouw projectgroep (bepaald in de eerste les) om mee samen te werken.

Wacht-blok

Met het wacht-blok geef je de robot opdracht om voor een bepaalde tijd niets te doen. Na de opgegeven pauze gaat het programma verder met het volgende blok.

Het wacht-blok heeft twee controlemodes: tijd en sensoren. In de tijdmodus pauzeert het programma tot de opgegeven tijd voorbij is. In de sensormodus pauzeert het programma tot de gevraagde sensorinformatie verkregen is.

Explorer-Wacht programma
Explorer-Wacht programma

Herhaling-blok

Stel je voor dat je een robot wilt programmeren die over een denkbeeldige lijn van een gelijkbenige vierhoek rijdt. Je kunt dit bereiken door een serie van verplaatsen-blokken waarmee je de robot de volgende opdrachten geeft: vooruit rijden, 90 graden draaien, vooruit rijden, 90 graden draaien, vooruit rijden, 90 graden draaien, vooruit rijden, 90 graden draaien. Voor een vierkant gebruik je twee blokken vier keer. Stel je nu eens voor dat het de robot het vierkant 8 keer wilt laten rijden…

Met het herhaling-blok kun je efficiënter programmeren. Met een herhaling-blok geef je de robot opdracht om een reeks acties in het herhalings-blok herhaaldelijk uit te voeren. Je kun de robot een vierkant laten rijden door de opdrachten voor vooruit rijden en 90 graden draaien in een herhaling-blok te plaatsen en de herhaling 4 keer uit te laten voeren.

Je kunt het aantal herhalingen controleren door het gewenste aantal op te geven in de tellen modus. Het herhaling-blok kent ook de modes: eeuwig, sensor, tijd en logisch. Wanneer de herhalingen uitgevoerd zijn, gaat het programma verder met de blokken na het herhaling-blok.

Explorer-Herhaling programma
Explorer-Herhaling programma

Schakeloptie-blok

Tot nu toe heb je robots geprogrameerd die altijd precies hetzelfde doen; alle acties zijn vooraf gedefinieerd in het programma. Met het schakeloptie-blok kun je de robot keuzes laten maken op basis van vooraf onbekende informatie. De robot kan bijvoorbeeld van richting veranderen wanneer de sensor een obstakel detecteert, of de robot kan de kleur van een object benoemen.

Je geeft een voorwaarde op in het eigenschappenpaneel van het schakeloptie-blok. De robot controleert of aan de voorwaarde voldaan is. Op basis van het antwoord, ja of nee, kiest de robot welke reeks acties uitgevoerd worden. Als het antwoord ja is, voert de robot de bovenste blok(ken) uit. Anders (het antwoorde is nee) voert de robot de onderste blok(ken) uit.

De voorwaarde kan gecontroleerd worden in de modes waarde of sensor. In de sensormodus selecteer je op basis van welke sensor informatie de robot een keuze moet maken. Aan de rechterkant van het eigenschappenpaneel specificeer je de voorwaarde.

Links: programma flow met keuze  Rechts: programma in Lego Mindstorms met schakeloptie-blok
Links: programma flow met keuze Rechts: programma in Lego Mindstorms met schakeloptie-blok

Programmeren met Sensoren

Met sensoren kan de robot informatie verzamelen over zijn omgeving. Sensoren laten de robot zien en voelen, een beetje zoals mensen dat kunnen. De informatie van de sensoren wordt geïnterpreteerd in het programma van de robot en je kunt de robot programmeren zodat hij reageert op de omgeving.

In de LEGO Mindstorms NXT 2.0 set zitten verschillende sensoren. In deze lessenserie werk je met de kleurensensor. Sensoren sluit je altijd aan op de poorten 1 t/m 4 van de brick.

Kleurensensor

De kleurensensor detecteert de kleur van een oppervlakte, de helderheid van een lichtbron en de intensiteit van de reflectie van licht. De kleurensensor kan zwart, blauw, groen, geen, rood en wit onderscheiden. Je kunt de kleurensensor bijvoorbeeld gebruiken om de robot voor een verkeerslicht te laten wachten of om de robot een zwarte lijn te laten volgen.

Je kunt de informatie van de kleurensensor gebruiken in een algemene actie zoals het wacht-blok. In het eigenschappaneel van het wacht-blok selecteer je sensormodus en kies je de kleurensensor. Aan de rechterkant geef je de range van kleuren aan die de sensor moet zien om te stoppen met wachten.

Demonstratie van een LEGO robot die wacht op detectie van de gevraagde kleur
The Explorer met kleurensensor
The Explorer met kleurensensor

Discovery

Je gaat straks een intelligente versie van The Explorer programmeren: Discovery. Discovery kan een zwarte lijn volgen terwijl hij rijdt. We gebruiken de kleurensensor om de lijn op het testpad te detecteren. De kleurensensor detecteert zwart of wit: lijn of papier. Met een schakeloptie-blok zoekt de robot naar zwart. Als de kleurensensor zwart ziet, wordt een verplaatsen actie uitgevoerd. Wanneer de kleurensensor geen zwart (dus wit) ziet, wordt een verplaatsing in de andere richting uitgevoerd. De kleurensensor ziet niet aan welke kant van de lijn hij is. Om te voorkomen dat de robot in het witte vlak ‘verdwaald’ moet je er voor zorgen dat de robot altijd aan dezelfde kant van de lijn blijft. Maar eerst moet de kleurensensor aangesloten worden.

Open bestand Bouwinstructies voor het aansluiten van de kleurensensor

Programma flow voor Explorer-lijnvolger
Programma flow voor Explorer-lijnvolger

Gefeliciteerd, je hebt nu je eerste intelligente robot geprogrammeerd. Jouw robot gebruikt een sensor om de omgeving waar te nemen. De informatie over de omgeving gebruikt de robot om een keuze te maken; in dit geval het maken van een bocht naar rechts of links.

In de volgende les leer je hoe je met de programmeer concepten uit deze les (herhaling en keuze) kan sorteren op kleur. Uiteindelijk ga je met je groep een eigen kleursorteerder robot bouwen.

Sorteeralgoritmen

In deze les ga je aan de slag met verschillende sorteeralgoritmen. Ga hiervoor eerst met je groepje bij elkaar zitten. Verdeel de rollen zoals in de eerste les is besproken. Je krijgt per groepje een sorteeralgoritme toegewezen.

Je gaat met je groepje  je verdiepen in het sorteeralgoritme dat je hebt gekregen: Insertion sort, Selection sort of Bubble sort. Je beschrijft het sorteeralgoritme: de kenmerken: hoe werkt het, voordelen, nadelen, hoe beïnvloedt het de uitgangssituatie (de volgorde en de verdeling) en het resultaat. Dit doe je aan de hand van de opdrachten die hieronder volgen. Je maakt hierbij gebruik van internet. Onderstaande websites kunnen gebruikt worden. Hiervoor krijgen jullie ongeveer 40 minuten de tijd.

Let op: je moet ieder je algoritme in het 2e lesuur per persoon aan je klasgenoten uitleggen!

Animatie: Sorteeralgoritmes

Wikipedia: Sorteeralgoritme

 

Selection Sort:

Insertion sort:

Bubble sort:

 

  • In de pauze heb je een nummer gekregen. Vorm met je klasgenoten met hetzelfde nummer een nieuw groepje. Elk groepslid heeft zich in een ander algoritme verdiept. [5 min]
     
  • Je legt je algoritme uit aan je nieuwe groepje, en krijgt uitleg over de twee andere algoritmen.
    [3x10 min, 10 min per algoritme]
     
  • Je vult het logboek in. [5 min]
     

Afsluiting van de les:

  • Terugblik, huiswerk en vooruitblik
     
  • Ieder groepje krijgt een sorteeralgoritme toegewezen.

 

Huiswerk voor de volgende les

  • Bespreek met je groepje het verschil in het sorteren van een lijst verschillende cijfers en een rij gekleurde balletjes (de balletjes hebben verschillende kleuren, maar de kleuren komen wel vaker voor).

 

5. Systematische Probleemaanpak (SPA)

Activiteiten les

  1. Ga in je groepje zitten en verdeel de rollen
  2. Uitleg SPA
  3. Verdiep je in fase 1 van de SPA en werk deze voor je opdracht uit
  4. Tips van de docent
  5. Verdiep je in fase 2 van de SPA en werk deze voor je opdracht uit
  6. Vul het logboek in

Opdracht: Je gaat in je groepje bij elkaar zitten, en jullie spreken af wie welke rol heeft.

Uitleg SPA: De docent geeft uitleg over de Systematische Probleemaanpak:

  • Introductie SPA – waarom?
  • De 4 fasen in een SPA
  • Valkuilen probleemaanpak

Opdracht: Na de uitleg ga je fase 1 van de SPA uitwerken. Je kunt hierbij gebruik maken van de toelichting op de volgende website. [20 min]

De docent bespreekt kort wat hij in de verschillende groepjes heeft gezien en geeft tips [5 min]

Opdracht: Je gaat hierna verder met het uitwerken van fase 2 van de SPA. [40 min]

Maak in deze fase het Flowdiagram (PSD) voor de robot

Opdracht: Je vult het logboek in. [5 min]

Afsluiting van de les: terugblik, huiswerk en vooruitblik

Huiswerk voor de volgende les

Opdracht: Maak met behulp van de systematische probleemaanpak het plan van aanpak voor je opdracht af. Zorg dat hierin in ieder geval de volgende onderdelen zijn opgenomen:

  • Probleembeschrijving
  • Oplossingsrichtingen
    • Wat is nodig op dit probleem op te lossen?
    • Wat hebben al; wat mist nog?
    • Een flowdiagram (PSD) van de instructies van de robot.
  • Uit te voeren activiteiten
    • Wie doet wat, en voor wanneer?

6. Bouwen en Programmeren van een Robot

De afgelopen lessen heb je veel geleerd over kleuren, sensortechnologie en algoritmes. In een PSD (structuurdiagram) heb je een algoritme beschreven waarmee een robot voorwerpen zoals knikkers of legoblokjes op kleur kan sorteren. Nu ga je deze robot ook echt bouwen en programmeren! Je maakt deze opdracht met je projectgroep.

Nog even een paar voorbeelden van LEGO kleursorteerders om in de stemming te komen.

NXT 2.0 Kleursorteerder

Lego Mindstorms Quicksort Algoritme

Hybrid Bloksorteerder

Hybride bloksotreerder, sorteert LEGO blokjes op kleur en afmeting
Hybride bloksotreerder, sorteert LEGO blokjes op kleur en afmeting

In deze les ga je de Hybride Bloksorteerder (HBs) bouwen en programmeren. De HBs kan LEGO blokken sorteren op kleur (bijvoorbeeld geel, rood, blauw en groen) en afmeting (bijvoorbeeld 2 bij 4 of 2 bij 2). Je plaatst de verschillende LEGO blokken in de scanner en de HBs plaatst ze gesorteerd op de grond of in kleine bakjes.

In onderstaande video zie je de HBs in actie.

De HBs bestaat uit twee fysieke componenten: de scanner en het voertuig. De scanner identificeert het formaat en de kleur van een blokje, het voertuig verplaatst de robot naar de locatie van het juiste bakje.

Open bestand Bouwinstucties voor de Hybride Bloksoteerder

Hybrid bloksorteerder motoren en aansluit tabel
Hybrid bloksorteerder motoren en aansluit tabel

Nu de fysieke componenten van de robot klaar zijn, kan de robot geprogrammeerd worden. Hiervoor gebruik je het ontwerp uit de les modelleren.

Doet je robot wat je verwacht? Mooi!

Kun je de robot aanpassen zodat hij meer kleuren of formaten sorteert? Of laat de robot een meer efficiënte route rijden zodat de blokjes sneller gesorteerd worden. Pas het algoritme van de robot aan en maak de blits tijdens de demonstaties in de volgende les!

7. Demonstratie

Je bent aangekomen bij de laatste les van de module! De robot is gemaakt, er is een programma geschreven om de robot een sorteeropdracht te laten uitvoeren en natuurlijk is er veel getest. In het eerste gedeelte van de les ga je samen met je groepje een presentatie geven over je opdracht en een demonstratie van je robot. De presentatie duurt maximaal 5minuten, bedenk dus goed wat je wilt vertellen. Als handleiding kun je je verslag gebruiken; neem daar de belangrijkste elementen uit. De presentatie moet in ieder geval deze twee belangrijke elementen bevatten:

  • Het gevolgde proces: hoe heb je het project aangepakt? Welke stappen zijn er gemaakt?

Het opgeleverde product: hoe is de robot ontwerpen? Wat kan het?

In het tweede gedeelte is er tijd voor een ‘markt’: elk groepje krijgt een plek in het lokaal aangewezen en daar maak je de opstelling met je robot. Je kunt dan bij andere leerlingen kijken wat ze gemaakt hebben en ze vragen te stellen over hun ontwerp. Zorg dat er altijd minimaal één van je groepsgenoten bij je eigen ontwerp blijft staat zodat diegene vragen kan beantwoorden van andere leerlingen. Wissel binnen jullie groepje af en toe: zorg dat iedereen minimaal één keer door de klas gelopen heeft en één keer bij je eigen ontwerp heeft gestaan.

Opdracht: Schrijf van alle andere ontwerpen minimaal één verschil met jouw ontwerp op.

Bijlage 1: Begrippenlijst

Exitkaart: Formatieve evaluatie instrument dat gebruikt kan worden om de opgedane kennis te toetsen.

Filters (licht): Filters die ervoor zorgen dat alleen licht met een bepaalde kleur door kan.

Fotodiodes: Halfgeleider component dat licht omzet in een elektrische spanning.

Fototransistor: Transistor dat gevoelig is voor de hoeveelheid licht.

Illusie: Verkeerde interpretatie van de werkelijkheid door de hersenen.

Kleurenspectrum (zichtbaar): Reeks van kleuren (uit wit licht) die zichtbaar zijn voor het menselijk oog.

Kleursensor: Sensor die de kleur van een oppervlak (voorwerp) kan waarnemen.

LDR (Light Dependent Resistor of photoresistor): Weerstand dat gevoelig is voor de hoeveelheid licht.

Licht: Elektromagnetische straling dat zich zowel als golf en als deeltje (foton) gedraagt.

Lichtsensor: Sensor die de lichtsterkte in de buurt van de sensor meet.

NTC (Negatieve Temperatuur Coëfficiënt): Weerstand dat gevoelig is voor de temperatuur van de omgeving.

RGB (Rood-Groen-Blauw): Basiskleuren van licht. Met een combinatie van deze drie kleuren is het mogelijk om andere kleuren te maken.

Sensor: Elektronische component dat de omgeving kan waarnemen.

Systematische Probleem Aanpak (SPA): een gestructureerde methode om complexe vraagstukken op te lossen, waar je niet direct een antwoord op hebt.

Temperatuursensor: Sensor die de temperatuur in de buurt van de sensor meet.

Bijlage 2: URL-lijst

Hybride bloksorteerder (sorteert op kleur en afmeting)

http://en.wikipedia.org/wiki/Lego_Mindstorms_NXT_2.0
Beschrijving en inhoud van de basisset Lego Mindstorms NXT 2.0.

http://service.lego.com/en-us/helptopics/products/themes/mindstorms/mindstorms-nxt/nxt-software-download
De software voor het programmeren van de Lego Mindstorms NXT 2.0 robot is hier (gratis) te downloaden.

Lego Mindstorms NXT-G 2.0 software
Software voor programmeren van Lego Mindstorms robot is hier gratis te downloaden.

Twente Academy - Module 'Systematisch Probleem Aanpak'
Systematische Probleem Aanpak (SPA) Een Systematische Probleem Aanpak is een gestructureerde methode om complexe vraagstukken op te lossen, waar je niet direct een antwoord op hebt. Door volgens een vastgelegd plan te werken kom je makkelijker en sneller tot de oplossing en loop je minder gevaar kleine foutjes te maken of de draad kwijt te raken. Daarnaast wordt je ‘verplicht’ om alle denkstappen vast te leggen, waardoor je zelfs bij een fout antwoord meer kans hebt om toch (een deel van de) punten te krijgen.

Bijlage 3: Beoordelingsformulier

De module wordt beoordeeld met behulp van het volgende Rubrics beoordelingsmodel. Het cijfer komt tot stand door het gewogen gemiddelde over de criteria te nemen, waarbij een score 1 = 3 punten, score 2 = 5 punten, score 3 = 7 punten, score 4 = 9 punten.

 

 

Criterium

4

3

2

1

Opmerking

1

Verzorging en uitvoering

 

 

 

 

 

2

Structuur en indeling

 

 

 

 

 

3

Probleemaanpak

- Voorbereiding/ analyse/oriëntatie

- Planning/aanpak

- Uitwerking/ Antwoord

- Evaluatie/controle / reflectie

 

 

 

 

 

4

Informatie verwerven en verwerken

 

 

 

 

 

 

5

Plannen en organiseren:

organiseren van benodigdheden, planning bewaken en bijstellen, planning evalueren

 

 

 

 

 

6

Inleiding, alternatieven en onderbouwing keuzes

 

 

 

 

 

7

Diepgang en volledigheid

 

 

 

 

 

8

Originaliteit en eigen inbreng

 

 

 

 

 

9

Vakinhoudelijke aspecten

 

 

 

 

 

10

Vermelding gebruikte bronnen / eigen onderzoek

 

 

 

 

 

11

Logboek:

beschrijving activiteiten, knelpunten en oplossingen

 

 

 

 

 

12

Samenwerking:

rol goed ingevuld, rekening houden met elkaar, afspraken nakomen, verantwoordelijk-heid nemen, initiatief tonen, omgaan met kritiek, werksfeer

 

 

 

 

 

13

Conclusies en samenvatting:

Over probleem-aanpak, ontwerp-proces, vakinhoud, knelpunten

 

 

 

 

 

14

Presentatie:

heldere boodschap, verzorgd materiaal, contact met het publiek

 

 

 

 

 

15

Evaluatie van:

samenwerking, leerdoelen en module

 

 

 

 

 

Bijlage 4. Leerlingenlogboek

Rolverdeling

Zoals jullie in de introductie kunnen lezen gaan jullie samenwerken in groepjes van 4. Jullie krijgen binnen je groepje allemaal een rol. Deze rol houdt je twee lessen, en hierna wissel je van rol. Jullie krijgen allemaal dus alle rollen een keer.

Vul hieronder in wie bij welke les welke rol heeft.

 

Voorzitter

Ontwerper

Notulist

Materiaalman

Les 1

 

 

 

 

Les 2

 

 

 

 

Les 3

 

 

 

 

Les 4

 

 

 

 

Les 5

 

 

 

 

Les 6

 

 

 

 

Les 7

 

 

 

 

Les 8

 

 

 

 

 

Logboek les 1

Logboek les 2

Logboek les 3

Logboek les 4

Logboek les 5

Logboek les 6

Logboek les 7

Logboek les 8

Evaluatie Module