Thomas Bezemer – 12/09/2019
Dit block kan bewezen worden met werk uit CLE1 en CLE3.
Voor dit block toon je aan dat je een fysiek interactief object kan bouwen en programmeren met een Microcontroller.
Microcontrollers zijn de Adafruit Circuit Playground Express, de Arduino, of een ander platform in overleg.
Hardware programmeren
Ik kan een microcontroller programmeren, zodanig dat hiermee een interactief project aangestuurd kan worden. De microcontroller kan inputs inlezen en outputs aansturen. Het project heeft geen beeldscherm nodig om te functioneren.
Voor sprint 2 moesten we een “Smart object” maken. Dit betekent dat we een robot moesten maken die gebruik maakte van een sensor. De sensor die ik heb gebruikt bij deze opdracht was de infrarood sensor. Het programmeren van deze sensor was eerst een beetje onduidelijk omdat de blokken in het menu Network staat en niet in een menu die infrared heet. Na een korte zoektocht op het internet was ik snel op het antwoord gekomen over hoe ik de infrarood senor kon programmeren. Het versturen van het signaal was heel makkelijk en het ontvangen ervan ook. Het moeilijke was om er iets omheen te maken. Hetgene dat ik graag wou was dat ik twee adafruits gebruikte. Één van de adafruits stuurt constant een infrarood signaal, de andere vangt dat op. Als de andere adafruit het signaal ontvangt gebeurt er niks en blijft de motor op een ingestelde positie staan. Als de adafruit dit signaal niet meer ontvangt gaat die tellen. Als de teller op 2 komt beweegt de motor heen en weer. Dit heb ik voor elkaar gekregen door een forever loop te hebben waar een IF-statement in zit. In het blok waardoor het signaal wordt ontvangen wordt telkens wanneer het signaal wordt ontvangen de teller op 0 gezet.
Externe electronica aansluiten
Ik kan externe electronica aansluiten op de microcontroller zodanig dat dit extra functionaliteit toevoegt. Denk hierbij aan sensoren en knoppen voor input, en lampjes, servo motor en geluid voor output.
Voor sprint 2 wou ik een soort zwaaiende mario maken die pas ging zwaaien als een infrarood signaal werd onderbroken. Het zwaaien wou ik doen met een externe servo motor en het signaal, de input dus, met een andere adafruit die een infrarood signaal verstuurd. De input kon ik heel makkelijk doen door een adafruit zo te programmeren dat deze simpelweg een constant infrarood signaal te sturen. De motor moest pas gaan bewegen wanneer dat infrarood signaal werd onderbroken. De input kan je in makecode regelen met het blok ‘on infrared received’. De motor, de output dus, kan je aansluiten door een kabeltje van de gele kabel aansluiting aan de motor naar een van de programmeerbare pins van de adafruit aan te sluiten. Ook moet je de rode kabel aansluiting aan de motor aan de Vout pin aan je adafruit hangen en de bruine kabel aansluiting van de motor aan de GND of Ground van de adafruit te hangen. Dan kan je de motor programmeren met een block ‘servo write pin’ of met de servo extension in Makecode.
Bruikbaar product
Ik kan een behuizing voor het eindproduct ontwerpen waarbij bedrading en gevoelige electronica verborgen is, zodanig dat het eindproduct bruikbaar is voor een eindgebruiker zonder dat het meteen kapot gaat. Ik kan verantwoorden welke keuzes ik heb gemaakt in de vormgeving van het product en waarom deze aansluiten bij de doelgroep.
We moesten uiteindelijk allemaal een soort battle robot maken die het doel had om langer in een rechthoek te blijven dan de tegenstander. Je kon zorgen dat dit gebeurde door een robot te maken die de andere eruit duwt of door een robot te maken met een soort slagwapen en de andere eruit te slaan en er waren natuurlijk nog veel meer manieren om dit doel te bereiken. Ik heb uiteindelijk een robot gemaakt die rechtvooruit rijdt d.m.v. een 360 graden servomotor. Mijn idee voor de robot was om een barbie pop te nemen, aan de plaatsen waar normaal de armen zitten twee peddels te plakken en uitenlijk die barbie op een servomotor te zetten die steeds heen en weer gaat. Zo leek het dus een beetje op de beweging die iemand maakt als die een boot aan het peddelen is. Ik heb dan een wit bakje op het frame gezet waar de wielen aan vast zaten en die barbie met de servo daarop gezet. De adafruit heb ik stroom gevene d.m.v. een power bank. die powerbank heb ik dan in de ‘boot’ geplakt met tape en daar de adafruit met tape opgeplakt. Toen heb ik met kabels beide servomotoren aangesloten aan de adafruit en de kabels in de ‘boot’ verborgen. In het programma dat ik voor de robot heb gemaakt staat dat wanneer er op knop A wordt geklikt dat de 360 graden motor gaat draaien waardoor de robot vooruit beweegt. De 180 graden servomotor kan je aanzetten door de switch naar links te schakelen, dan gaat de barbie pop dus roeien.
Voor sprint 2 hebben we opnieuw een robot moeten bouwen maar deze moest gebruik maken van een sensor. In sprint 2 is er ook een speedcourse geweest over het maken van uitsnijtekeningen in illustrator om in de laser cutter uit te snijden. Ik ben hier verder mee aan de slag gegaan en heb voor mijn robot van sprint 2 een fatsoenlijke casing gemaakt.