Reageer je
sneller met jouw ogen of oren?
Met Lego Mindstorms NXT zal je daar snel achter komen!
Maar hoe snel reageer jij eigenlijk? Ben je sneller dan je vrienden? Laat je ouders eens zien hoe snel ze zijn… hmmmm interessant.
Je hebt eigenlijk helemaal niets nodig. De reactie timer bestaat uit één NXT-module zonder extra lego-onderdelen. Het programma vraagt de speler om op de oranje knop te drukken. Het scherm wordt leeg en nu is het afwachten wat er gebeuren gaat…. Hoe snel reageer jij op geluid? Hoe snel reageer je op beeld? Waarop moet je eigenlijk reageren? Dat bepaalt de NXT voor je. Op een onverwacht moment laat de NXT een SMILE zien of je ziet niets gebeuren maar je hoort alleen een geluid. Op die momenten druk je opnieuw op de oranje knop. Zodra je dat doet wordt jouw reactiesnelheid in milliseconden gemeten.
De NXT houdt bij wat het record is. Zo kan je ook zien of je met je ogen of juist je oren sneller bent. Geef ‘m daarna eens aan je ouders… Kunnen zij jouw records nog breken? Vast niet!
Dit één-steens project heb ik in NXT-G (v1) geschreven. Hiermee heb je misschien weer eens een aardig voorbeeld van een eenvoudig programma met meerdere threads. Heb je geen NXT-G ontwikkelomgeving maar wil je dit programma toch een keer proberen? Download dan de executable file en zet deze zelf met de grafische files en geluidfiles op je NXT module.
Bekijk zelf in dit filmpje hoe de NXT Reaction Timer werkt!
Erg simpel deze keer.
|
Start
het spel. Je drukt de oranje knop in
nadat je er eens goed voor bent gaan zitten. Het spel stopt trouwens nooit
meer… totdat je het programma onderbreekt. |
|
Wachten. Het
klokje (rechts in beeld) loopt rond. De NXT heeft een willekeurige wachttijd
gekozen (wees gerust, het zal geen minuten duren). Houd
je vinger maar alvast op de oranje knop! Druk
je ‘m nu al in, zonder dat er iets gebeurd is, dan hoor je een zoemer. De NXT
geeft je nu “straf-wacht-tijd”. Het zal dus nog langer duren voordat er iets
gebeuren gaat… Geduld is een schone zaak zullen we maar zeggen. |
|
Test
je ogen. Opeens
verschijnt er geruisloos een SMILE op het scherm. Dat is het moment waarop je
moet drukken! Overigens kan het net zo goed zijn dat je niet eerst een beeld
krijgt maar dat je juist moet reageren op geluid. De NXT kiest dat
willekeurig, keer op keer. |
|
Het
is even wennen… Zodra je gereageerd hebt zie je direct jouw
reactiesnelheid in milliseconden op het scherm. Zodra je een record hebt
gevestigd wordt dit boven in het scherm genoteerd en hoor je een
aanmoediging. Je zal zien dat je steeds
sneller reageert nadat je het een paar keer geprobeerd hebt. Overigens kan ik het een stuk sneller dan dat je
hier ziet |
|
Gewoon
doorgaan. Druk steeds opnieuw op de
oranje knop voor de volgende recordpoging… Nu kiest de NXT toevallige een keer voor geluid. Je
ziet niets aan het display veranderen, je hoort alleen wat. Nu reageren dus! Zijn
jouw oren ook sneller? Mijn
ervaring is dat ik (en anderen met mij) sneller reageer op geluid dan op
beeld. Het verschil kan je boven in het scherm zelf aflezen. Heb jij dezelfde
ervaring? |
|
Eerlijke
wedstrijd? Overigens
bleek het oog/oor vergelijk in eerste instantie geen zuivere wedstrijd. Het
LCD Display van de NXT laat namelijk niet direct het beeld zien dat je er naar
toe schrijft… Het display heeft zelf ook een reactietijd!!! Voorafgaand aan
dit programma heb ik een test programma geschreven om te meten hoe snel het
LCD-Display veranderingen kan laten zien. Daar bleken enkele tientallen
milliseconden voor nodig te zijn. Deze vertraging heb ik natuurlijk in de
spelers-reactietijd voor beelden gecorrigeerd. Voor
geluid zou hetzelfde kunnen gelden, bijvoorbeeld als de geluidsfile in eerste
instantie nog “stil” is, of als het geluid zachtjes aanzwelt. Daarom heb ik
een geluid gekozen dat ook werkelijk direct begint en ook direct goed
hoorbaar is. Dat
zou dus een eerlijke wedstrijd moeten zijn. |
|
|
Bouwinstructies : Niet van toepassing
Software
NXT : Source code voor NXT-G
Display Blocks : NXT-G Custom Blocks voor grote cijfers op display
RIC-Files : Grote cijfers voor NXT
SoundFiles : RSO Sound files (uit NXT-G library)
Executable : Programmafile (.rxe) voor op je NXT Module
Mini Blocks : Repareer “gebroken blokken” met deze updates
Het NXT-G programma laat gebroken blokjes zien als je niet eerst de speciale display routines in je NXT-G programmeeromgeving hebt opgenomen! Als je daarna nog steeds gebroken blokken hebt, dan heb je mogelijk niet de verbeterde NXT-Mini-Blokken van lego.com gedownload en in je NXT-G omgeving geïnstalleerd!
Installeren van het
DisplayBig4 blok:
- Download de Display Blocks (hierboven)
- Unzip de rbt files en plaats die in de juiste PC Directory.
Hierboven zie je waar ik ze heb staan.
- Download de display files (RIC-files) waarin de grote cijfers staan.
- Unzip deze ric files en plaats die in de juiste PC Directory.
Hierboven zie je waar ik ze heb staan.
- Download de ReactionTimer06.rbt file en zet die bijvoorbeeld tussen jouw eigen NXT-G programma’s
- Open je MINDSTORMS NXT software (NXT-G omgeving) op de PC
Als je nu de bibliotheek met “Aangepaste” blokken opent (Zie meest linkse tab, onderin het scherm hiernaast) dan zie je dat je in de categorie “Mijn Blokken” twee routines kunt pakken.
Dat hoef je niet te doen. De blokken zijn immers al gebruikt in he programma “ReactionTimer 06.rbt”, zoals je op de achtergrond kunt zien.
De variant die we hier hebben gebruikt (rechter keuze, DisplayBig4 genaamd) heeft de mogelijkheid met cijfers achter een komma te werken. Als je op het blokje in het programma klikt zie je de instellingsmogelijkheden.
De andere variant (Display4BIG) doet dat niet en laat altijd 4 cijfers zien, ook als het getal bijvoorbeeld 123 is. (Dat wordt dan dus 0123 op het display, zonder “Leading Zero Suppression”).