Skip to content
jeroenslemmer edited this page Nov 30, 2022 · 14 revisions

Deze bibliotheek biedt een makkelijke en leuke manier om de basis van het programmeren van loops in Python te leren. Je kan een robotarm programmeren die dozen van één stapel naar een andere stapel kan verplaatsen. Daarnaast kun je ook diverse instructies aan je robotarm geven om bijvoorbeeld de kleur van een doos te achterhalen, hiermee zou je dus dozen kunnen stapelen op basis van kleur. Je kunt de robotarm ook zelf besturen met jouw toetsenbord, om uit te vogelen hoe je dozen het beste kan verplaatsen. Maar daarna gaan automatiseren!

robot arm

Aan de slag met de bibliotheek

  • Begin met het maken van een python programma met de volgende inhoud:
            # Robotarm bibliotheek inladen
            from RobotArm import RobotArm
            
            # De robotarm opstarten in een bepaald level, bijvoorbeeld 'exercise 1'
            robotArm = RobotArm('exercise 1')
            
            # Jouw python instructies zet je vanaf hier:

            # Na jouw code wachten tot het sluiten van de window:
            robotArm.wait()
  • Installeer de laatste versie Python op jouw computer
  • Installeer de pygame module in de terminal met: pip install pygame
  • Plaats de RobotArm.py in dezelfde map als jouw python programma, bijvoorbeeld example.py
  • Test of je code werkt door het in de terminal op te starten met: python example.py
  • Check in de terminal welke fouten er worden gegeven bij de uitvoering van jouw programma
  • Voor meer info over de vele mogelijkheden van de robotarm lees ook de documentatie in RobotArm.py
  • Soms is jouw code niet logisch:

robot arm

  • Als de robotarm jouw code niet goed kan uitvoeren, dan krijg je een melding. Bijvoorbeeld hit right border! wanneer de robotarm te ver naar rechts moet.

Methodes die je kan gebruiken

robotArm.moveRight()

Verplaats de robotarm één stapel naar rechts.

Code voorbeeld

robotArm.moveRight();

robotArm.moveLeft()

Verplaats de robotarm één stapel naar links.

Code voorbeeld

robotArm.moveLeft()

robotArm.grab()

Grijp het bovenste blok van een stapel. Dat werkt natuurlijk alleen als de robotarm nog geen blok vast heeft.

Code voorbeeld

robotArm.grab()

robotArm.drop()

Plaats het blok wat de robotarm vast heeft boven op de stapel waar de robotarm zich boven begeeft. Dit werkt natuurlijk alleen als de robotarm een blok vast heeft.

Code voorbeeld

robotArm.drop()

robotArm.scan()

Geeft de kleur van het blok dat de robotarm op dat moment vast heeft. Indien de robotarm geen blok vast heeft geeft hij als kleur de waarde '', dus een lege string.

Code voorbeeld

color = robotArm.scan()

robotArm.wait()

Wacht op het sluiten van de robotarm window

Code voorbeeld

robotArm.wait()

robotArm.operate()

Ga de robotarm bedienen met jouw pijltjes toetsen. Maar het is leuker om bepaalde ingewikkelde opdrachten te automatiseren met jouw programma.

Code voorbeeld

robotArm.operate()

robotArm.loadLevel(name)

Laad het juiste level in van de robotarm.

Code voorbeeld =

robotArm.loadLevel('exercise 1')

Je kunt dat level ook al gelijk laden bij het opstarten van de robotarm

robotArm = RobotArm('exercise 1')

robotArm.randomLevel(stacks, layers)

Laad een level in met stapels (tot een maximum aan te geven door stacks) van willekeurige hoogte (tot een maximum aan te geven door layers) en willekeurige kleuren

Code voorbeeld

robotArm.randomLevel(4,3)

Eigenschappen die je kunt wijzigen

robotArm.speed

Bepaalt de snelheid waarmee de robotarm beweegt. Standaard staat deze op 1. De minimale waarde is 0 (echt sloom) en de maximale waarde die je kunt opgeven is 5. Je kunt de snelheid ook verhogen en verlagen tijdens het runnen van de code met de pijltjestoetsen: omhoog en omlaag!

code example

robotArm.speed = 5

robotArm.reportFlaws

Bepaalt of overbodige acties worden gerapporteerd. Standaard staat deze op False. Zet deze op True, als je wilt controleren of je efficiënte code hebt gemaakt.

code example

robotArm.reportFlaws = True