Achteruit lopen

Laat de Simple Walker achteruit lopen. Onder de sketch volgt een uitleg waarin de sketch stap voor stap besproken wordt.

Sketch

Je kan deze sketch op twee manieren op de Simple Walker zetten: 1) Kopiëer de onderstaande code in een nieuw Arduino-bestand (klik hier voor instructies.) of 2) download de sketch hier en open deze vervolgens in de Arduino-omgeving.

Uitleg

Deze sketch is (niet zo verbazend) vrijwel hetzelfde als die voor het vooruit lopen van de Simple Walker. Het enige verschil zit in stap 7, waar het looppatroon is uitgeprogrammeerd. Je kan de Simple Walker ook achteruit laten lopen door hem te programmeren om vooruit te lopen en vervolgens de stekkertjes van de servomotoren om te wisselen.

1
Het eerste stuk code is commentaar. Door stukken tekst tussen /* en */ te plaatsen, kan je commentaar en uitleg schrijven. Het is een goede gewoonte om code van commentaar te voorzien om het makkelijker leesbaar te maken voor jezelf en voor anderen.

2
Het volgende stuk code voegt de servo-library toe. Libraries zorgen ervoor dat we speciale functies kunnen toevoegen aan de Arduino-programmeertaal. In dit geval voegen we dus speciale functies voor het besturen van de servomotoren toe. (N.B., de eerste regel is weer een commentaarregel.)


3
Hierna maken we een aantal constante variabelen aan. Dit gebeurt met de #define-instructie. Dit is een manier om getallen die we veel gebruiken in de code een naam te geven. Bijvoorbeeld: de constante VOOR_SERVO_NEUTRALE_STAND definieert de hoek waaronder de voorste servo in het midden staat. De waarde van deze constante is 90 (graden). De constante VOOR_SERVO_PIN definieert de pinnummer waarop de voorste servo van de Simple Walker is aangesloten. In dit geval is dat dus pin 9.


4
Hier definiëren we nog een constante, de maximale servo-uitslag (MAX_SERVOUITSLAG). Deze definieert de maximale hoek waaronder de servo’s mogen bewegen tijdens het lopen (in dit geval 25 graden). Hoe groter deze hoek, hoe extremer de loopbeweging.


5
Vervolgens maken we twee variabelen voor de servo’s aan:


6
Vervolgens begint de setup. Dit is een stuk code wat een keer wordt uitgevoerd na het aanzetten van de Arduino. Hierin verbinden we de servo’s met de juiste pinnen (attach) en zetten we de servo’s netjes in het midden (write(VOOR_SERVO_NEUTRALE_STAND)). Dan laten we de Simple Walker een seconde (100 milliseconde) pauzeren (delay(1000)). (N.B., regels die beginnen met // zijn commentaar, net zoals de tekst tussen /* en */.)


7
Als laatste definiëren we de loop()-functie. Dit stuk code wordt herhaald tot de Simple Walker wordt uitgezet. Hierin implementeren we het looppatroon.