13.4 De motoren aansturen
Motor A testen
from leaphymicropython.actuators.dcmotor import DCMotors
motoren = DCMotors()
motor_a = motoren.motor_a
motor_a.test()
Motor A draait kort vooruit en daarna kort achteruit. Zo weet je meteen welke motor motor_a is.
Motor B testen
from leaphymicropython.actuators.dcmotor import DCMotors
motoren = DCMotors()
motor_b = motoren.motor_b
motor_b.test()
Uitleg
DCMotors()maakt een nieuw motor-object voor het shield.motoren.motor_aenmotoren.motor_bzijn de twee uitgangen op het shield (de letters A en B staan op het shield zelf gedrukt)..test()doet kort vooruit + achteruit, handig om te kijken welke draait.
Vooruit en achteruit
from leaphymicropython.actuators.dcmotor import DCMotors
motoren = DCMotors()
motor_b = motoren.motor_b
motor_b.forward(255)
forward() en backward() krijgen een snelheid mee tussen 0 en 255.
Onder de 200 beweegt vaak niets
Vanwege het gewicht van je robot beginnen de motoren pas rond 180–200 te draaien. Daaronder probeert de motor het wel (het LED'je op het shield knippert), maar de wielen blijven staan.
Voorbeeld: maximaal achteruit met motor B
from leaphymicropython.actuators.dcmotor import DCMotors
motoren = DCMotors()
motor_b = motoren.motor_b
motor_b.backward(255)
Opdracht: rij 2 seconden vooruit
Laat beide motoren 2 seconden vooruit rijden en daarna stoppen.
Oplossing
from leaphymicropython.actuators.dcmotor import DCMotors
from time import sleep
motoren = DCMotors()
motor_a = motoren.motor_a
motor_b = motoren.motor_b
motor_a.forward(255)
motor_b.forward(255)
sleep(2)
motor_a.forward(0)
motor_b.forward(0)