Les 2: Code lezen
In de vorige les hebt u geleerd over relatieve beweging en hoe dit zich verhoudt tot absolute beweging. Tijdens de les werd u gevraagd om voorspellingen te doen over hoe de 6-assige robotarm zou bewegen als er een project werd uitgevoerd. Dit is een voorbeeld van het lezen van code.
In deze les oefent u met het lezen van code om te bepalen wat er gebeurt als een project wordt uitgevoerd.

Wat is code lezen?
Net als het schrijven van code is het lezen van code een fundamentele vaardigheid voor programmeurs. Programmeurs moeten vaak code lezen en begrijpen die door anderen is geschreven, of dat nu is om problemen in de code op te lossen, code te beoordelen of te leren van bestaande projecten. Elke keer dat je naar een project keek, las je code en deed je een voorspelling over wat het zou doen in je technische notitieboekje. Nu ga je deze vaardigheid bewuster oefenen. In de projecten in deze les is het belangrijk om te kijken of de code absolute of relatieve beweging gebruikt en hoe dit van invloed is op wat er in de whiteboardbijlage wordt getekend.
Het organiseren van uw codelezing
Er zijn veel hulpmiddelen waarmee u kunt bepalen wat er in een project gaat gebeuren. Het kan handig zijn om je technische notitieboekje te gebruiken om het gedrag van de robot te visualiseren, zodat je aan de slag kunt met het lezen van code.
In deze les laten we je zien hoe je het lezen van code in je technische notitieboekje organiseert. U kunt de hier getoonde indeling gebruiken als uitgangspunt bij het beschrijven van elk onderdeel van uw project. In de voorbeelden in deze les bevat de engineering notebook-pagina aan de linkerkant een afbeelding van het VEXcode-project en aan de rechterkant de regels voor het toevoegen van tekst. In elke stap worden de blokken waarop de focus ligt, gemarkeerd met een rood kader. De tekst beschrijft het gedrag dat bij die blokken hoort.
De code lezen in Project A
Om het lezen van code te oefenen, doorlopen we het documentatieproces terwijl we de code voor Project A lezen.
Documenteer dit project in uw technisch notitieboekje. U kunt dit doen door de stappen in volgorde op te schrijven of door de afbeelding van de code rechtstreeks aan uw notitieboekje toe te voegen.
Voordat u begint met het lezen van de code, moet u een voorspelling doen over wat de 6-assige arm zal doen wanneer het project wordt uitgevoerd. U keert terug naar deze voorspelling nadat u het codeleesproces hebt voltooid.

Om code te lezen, begint u bij het begin van het project. Kijk naar het eerste blok en schrijf het gedrag dat bij dat blok hoort in je technische notitieboekje, naast het project.
Hier kunnen de eerste blokken als volgt worden beschreven: 1. Stel de eind-effector in op Pen.

Terwijl u de code leest, moet u elk blok nauwkeurig bekijken om te bepalen of de 6-assige arm absolute of relatieve beweging gebruikt.
In dit project is het eerste verplaatsingsblok een Verplaats naar positie blok. Houd er rekening mee dat de 6-assige arm absolute beweging gebruikt om naar de coördinaten te bewegen die in de parameters van het blok staan vermeld.

Noteer het gedrag dat bij het blok hoort in uw technisch notitieboekje. Deze opmerking en verplaatsen naar positie blok kunnen worden beschreven als: 2. Gebruik absolute beweging om naar coördinaten (75, 125, 0) te bewegen.

Kijk naar het volgende bewegingsblok in het project. Is dit een absolute of relatieve beweging?
Dit is eenIncrement positieblok, wat de relatieve beweging van de 6-assige arm aangeeft.

Gebruik de incrementele toename in de parameters van het blok om de positie te bepalen waarheen de 6-assige arm beweegt wanneer dit blok wordt uitgevoerd. Doe dit door de waarde van de relatieve beweging (50 mm) van de overeenkomende coördinaat (x) uit het absolute bewegingsblok toe te voegen.
Noteer dit in uw technisch notitieboekje. Dit kan als volgt worden omschreven: 3. Relatieve verplaatsing door 50 bij de x-coördinaat op te tellen. De nieuwe coördinaten zijn (125, 125, 0).

Herhaal dit proces voor de resterende blokken in het project. Documenteer wat elk blok doet wanneer het project wordt uitgevoerd.
Vergeet niet om de blokken Commentaar en Notities te lezen als referentie wanneer u het project leest.
De resterende stappen van dit project om de overige drie zijden te tekenen, kunnen als volgt worden beschreven:
4. Relatieve verplaatsing door 50 bij de y-coördinaat op te tellen. De nieuwe coördinaten zijn (125, 175, 0).
5. Relatieve verplaatsing door 50 van de x-coördinaat af te trekken. De nieuwe coördinaten zijn (75, 175, 0).
6. Relatieve verplaatsing door 50 van de y-coördinaat af te trekken. De nieuwe coördinaten zijn (75, 125, 0).

Schets het pad van de 6-assige arm wanneer het project wordt uitgevoerd.
Om het eindproduct van het project te visualiseren, kunt u de coördinaten die u hebt bepaald, gebruiken om het pad in uw technische notitieboekje te schetsen.

Bekijk hoe het project wordt uitgevoerd. Beantwoord de volgende vragen in je technische notitieboekje.
- Hoe verhouden de waargenomen gedragingen van de 6-assige arm zich tot de lijst met gedragingen in uw technische notitieboekje?
- Hoe verhoudt jouw lijst met gedragingen zich tot de voorspelling die je aan het begin van de les deed?
- Hoe verhoudt de voorspelling die u aan het begin van de les deed zich tot het gedrag dat in deze video wordt getoond?
- In de onderstaande video beweegt de 6-assige arm van de veilige positie om de pen op locatie (75, 125, 0) te plaatsen. Vervolgens beweegt de muis weg van de basis om de eerste zijde van het vierkant te tekenen, naar rechts om de tweede zijde te tekenen, richting de basis om de derde zijde te tekenen en naar links om het vierkant te voltooien.
Gefeliciteerd! U hebt nu code gelezen en die kennis gebruikt om te bepalen wat er gebeurt als een project wordt uitgevoerd. Je gaat dit verder oefenen met twee extra voorbeelden.
De code lezen in Project B
In dit voorbeeld ga je oefenen met het lezen van code om fouten in een project te vinden. De bedoeling van dit project is om een vierkant te tekenen, net als bij Project A. Als Project B echter zou worden uitgevoerd, zou de 6-assige arm geen vierkant tekenen zoals bedoeld. U leest de code in dit voorbeeld door dezelfde stappen te volgen die u in Project A hebt gebruikt om de fout te vinden. Vervolgens gebruikt u de informatie uit onze codelezing om te bepalen hoe het probleem kan worden opgelost.
Documenteer het project in uw technisch notitieboekje. U kunt dit doen door de stappen in volgorde op te schrijven of door de afbeelding van de code rechtstreeks aan uw notitieboekje toe te voegen.
Voorspel wat de 6-assige arm zal doen wanneer het project wordt uitgevoerd. U keert terug naar deze voorspelling nadat u het codeleesproces hebt voltooid.

Begin bij het begin van het project. Documenteer de projectinstellingsblokken op dezelfde manier als u dat voor het vorige project hebt gedaan.
Het eerste commentaar en de set eind-effector blok kunnen als volgt worden beschreven:
1. Plaats de eind-effector op de pen

Lees het eerste bewegingsblok in het project en let daarbij op of de beweging absoluut of relatief is. Welk gedrag zou het blok veroorzaken dat de 6-assige arm voltooit? Visualiseer dit gedrag.

Noteer het gedrag dat u voor dit blok hebt gevisualiseerd in uw technisch notitieboekje.
Dit gedrag kan als volgt worden beschreven:
2. Gebruik absolute beweging om naar de coördinaten (75, 125, 0) te bewegen.

Kijk nu naar het tweede bewegingsblok. Is dit een absolute of relatieve beweging? Dit is eenIncrement positie blok, wat de relatieve beweging van de 6-assige arm aangeeft.
Visualiseer het gedrag dat dit blok teweeg zou brengen in de 6-assige arm.

Net zoals u dat voor Project A hebt gedaan, leest u de parameters van het blok om te bepalen waar de positie van de 6-assige arm zich zal bevinden nadat het blok Positie increment is uitgevoerd. Noteer dit in uw technisch notitieboekje.
Deze opmerking en het increment positie blok kunnen als volgt worden beschreven:
3. Relatieve verplaatsing door 50 bij de x-coördinaat op te tellen. De nieuwe coördinaten zijn (125, 125, 0).

Herhaal dit proces voor de resterende blokken in het project. Visualiseer en documenteer vervolgens wat elk blok zal doen wanneer het project wordt uitgevoerd.
De resterende stappen in het project kunnen als volgt worden beschreven:
4. Relatieve verplaatsing door 50 bij de y-coördinaat op te tellen. De nieuwe coördinaten zijn (125, 175, 0).
5. Relatieve verplaatsing door 50 bij de x-coördinaat op te tellen. De nieuwe coördinaten zijn (175, 175, 0).
6. Relatieve verplaatsing door 50 van de y-coördinaat af te trekken. De nieuwe coördinaten zijn (175, 125, 0).

Schets het pad van de 6-assige arm wanneer het project wordt uitgevoerd.
Om het eindproduct van het project te visualiseren en documenteren, kunt u de coördinaten die u hebt bepaald, gebruiken om het pad in uw technische notitieboekje te schetsen.

Bekijk hoe het project wordt uitgevoerd. Beantwoord de volgende vragen in je technische notitieboekje.
- Hoe verhouden de waargenomen gedragingen van de 6-assige arm zich tot de lijst met gedragingen in uw technische notitieboekje?
- Hoe verhoudt jouw lijst met gedragingen zich tot de voorspelling die je aan het begin van de les deed?
- Hoe verhoudt de voorspelling die u aan het begin van de les deed zich tot het gedrag dat in deze video wordt getoond?
- In de onderstaande videoclip beweegt de 6-assige arm van de veilige positie naar coördinaten (72, 125, 0). Vervolgens beweegt het van de basis weg om de eerste zijde te tekenen, naar rechts om de tweede zijde te tekenen, verder weg van de basis om de derde zijde te tekenen en naar links om de vierde zijde te tekenen.
Ga nu terug naar je schets. Geef aan op welk punt het project stopte met het tekenen van een vierkant. Terwijl de 6-assige arm de eerste drie bewegingsblokken in het project uitvoert, lijkt het alsof de pen doorgaat met het tekenen van een vierkant.
Bij het vierde bewegingsblok beweegt de 6-assige arm echter in de tegenovergestelde richting dan verwacht: langs de positieve x-as in plaats van de negatieve x-as. Zoek deze stap in het project en markeer deze in uw technisch notitieboekje.

Identificeer nu het blok in het project dat overeenkomt met de stap waarin de fout is opgetreden. Markeer het blok ook in je technisch notitieboekje.
In dit voorbeeld is het stap 5 die overeenkomt met de opmerking 'Teken zijde CD met relatieve beweging' die is gemarkeerd.

Pas uw kennis over beweging langs de assen toe om een oplossing voor deze fout voor te stellen.
Om een vierkant te tekenen, moet de 6-assige arm langs de x-as in negatieve richting bewegen. Dit betekent dat voor dit Increment positie blok de x-parameter ingesteld moet worden op –50 in plaats van 50.

Noteer de wijziging die nodig is om het project correct te laten verlopen in uw technisch notitieboekje.
Dit kan worden vastgelegd in een notitie onder het project, zoals beschreven:
Stap 5 moet worden gewijzigd in min van de x-coördinaat. De nieuwe coördinaten moeten (75, 175, 0) zijn om een vierkant te kunnen tekenen.
Stap 6 zou dan veranderen omdat de beweging relatief is. De nieuwe coördinaat na stap 6 zou (75, 125, 0) zijn.

Bekijk het project waarbij de x-parameter van het blok Increment position is gewijzigd van 50 naar –50. De 6-assige arm beweegt nu van de veilige positie naar coördinaten (75, 125, 0_, en beweegt vervolgens om een vierkant te tekenen zoals bedoeld.
U bent nu klaar met het lezen van code voor twee verschillende projecten: één om u te helpen een proces te leren voor het lezen en documenteren van code, en een andere om code te lezen om een fout in een project te identificeren. Elke keer dat u met de 6-assige Arm en VEXcode werkt, blijft u oefenen met het lezen van code, het visualiseren en documenteren van projecten. U kunt op elk gewenst moment terugkeren naar deze les om u te helpen een proces voor het lezen en documenteren van code te onthouden.
Activiteit
Nu u het lezen van code met behulp van twee verschillende projecten hebt geoefend, gaat u nog een keer zelfstandig oefenen.

Activiteit: Volg de procedure die u hebt geleerd om de code in het bovenstaande project te lezen.
- Documenteer het bovenstaande project in uw technisch notitieboekje.
- Voorspel wat u denkt dat de 6-assige arm zal doen wanneer het project wordt uitgevoerd. Noteer uw voorspelling in uw technisch notitieboekje.
- Lees elk blok in het project en visualiseer het gedrag dat de 6-assige arm zou vertonen bij het uitvoeren van het blok. Noteer dit gedrag in uw technisch notitieboekje.
- Schets het pad dat de 6-assige arm zou volgen wanneer het project wordt uitgevoerd.
- Meld je bij je docent als je klaar bent. U volgt het project als klassikaal. Vervolgens bespreekt u uw voorspelling en de documentatie.
Controleer uw begrip
Voordat u met de volgende les begint, moet u ervoor zorgen dat u de concepten in deze les begrijpt door de vragen in het onderstaande document in uw technische notitieboekje te beantwoorden.
Controleer uw begrip vragen > (Google Doc / .docx / .pdf)
SelecteerVolgende >om uw Mid-Unit Reflectie te starten.