Я новичок в pybricks и нашел очень мало документации, чтобы помочь ответить на мой собственный запрос. Я написал, как мне казалось, простую программу, которая будет вращать моего робота на месте, пока ультразвуковой датчик что-то не увидит. Затем он будет продвигаться вперед. Если его толкнуть назад и он увидит черную линию, он должен попытаться отклониться в сторону.
Следующий код работает, но его реакция на датчики ультразвука и света значительно задерживается:
#!/usr/bin/env pybricks-micropython
from pybricks.hubs import EV3Brick
from pybricks.ev3devices import Motor, ColorSensor, UltrasonicSensor
from pybricks.parameters import Port
from pybricks.tools import wait
ev3 = EV3Brick()
eyes = UltrasonicSensor(Port.S2)
left_motor = Motor(Port.B)
right_motor = Motor(Port.A)
right_light = ColorSensor(Port.S1)
left_light = ColorSensor(Port.S4)
while True:
if right_light.reflection() < 50:
ev3.speaker.say('black')
left_motor.run(500)
right_motor.run(-100)
wait(2000)
left_motor.run(500)
right_motor.run(500)
wait(1000)
if eyes.distance() > 200:
left_motor.run(500)
right_motor.run(-500)
else:
left_motor.run(-500)
right_motor.run(-500)
В (ограниченной) документации я вижу, что вы можете изменить настройки двигателя, но я не могу найти указание, как это сделать (или даже если это было бы полезно). Любая помощь будет оценена по достоинству.