2025-09-10 13:38:07 +00:00
|
|
|
from pybricks.hubs import PrimeHub
|
|
|
|
|
from pybricks.pupdevices import Motor, ColorSensor, UltrasonicSensor, ForceSensor
|
|
|
|
|
from pybricks.parameters import Button, Color, Direction, Port, Side, Stop
|
|
|
|
|
from pybricks.robotics import DriveBase
|
|
|
|
|
from pybricks.tools import wait, StopWatch
|
|
|
|
|
from pybricks.tools import run_task, multitask
|
|
|
|
|
|
|
|
|
|
hub = PrimeHub()
|
|
|
|
|
|
|
|
|
|
left_motor = Motor(Port.A, Direction.COUNTERCLOCKWISE)
|
|
|
|
|
right_motor = Motor(Port.B)
|
|
|
|
|
|
|
|
|
|
left_arm = Motor(Port.C, Direction.COUNTERCLOCKWISE)
|
|
|
|
|
right_arm = Motor(Port.D)
|
|
|
|
|
|
|
|
|
|
drive_base = DriveBase(left_motor, right_motor, wheel_diameter=68.8, axle_track=180)
|
|
|
|
|
|
|
|
|
|
drive_base.settings(600,500,300,200)
|
|
|
|
|
drive_base.use_gyro(True)
|
|
|
|
|
|
|
|
|
|
async def main():
|
2025-11-09 22:16:39 +00:00
|
|
|
|
|
|
|
|
right_arm.run_angle(1000,450)
|
|
|
|
|
left_arm.run_angle(500,-90)
|
|
|
|
|
await drive_base.straight(200)
|
2025-09-10 13:38:07 +00:00
|
|
|
|
2025-11-09 22:16:39 +00:00
|
|
|
await drive_base.turn(-40)
|
|
|
|
|
await drive_base.straight(325)
|
|
|
|
|
await left_arm.run_angle(500,90)
|
2025-09-10 13:38:07 +00:00
|
|
|
|
2025-11-09 22:16:39 +00:00
|
|
|
await drive_base.straight(-100)
|
|
|
|
|
await drive_base.straight(50)
|
|
|
|
|
await left_arm.run_angle(500,-180)
|
|
|
|
|
|
|
|
|
|
await drive_base.straight(-90)
|
|
|
|
|
left_arm.run_angle(500,180)
|
2025-09-10 13:38:07 +00:00
|
|
|
await drive_base.turn(-20)
|
2025-11-09 22:16:39 +00:00
|
|
|
await drive_base.turn(15)
|
2025-09-10 13:38:07 +00:00
|
|
|
|
2025-11-09 22:16:39 +00:00
|
|
|
await drive_base.straight(-173)
|
2025-09-10 13:38:07 +00:00
|
|
|
await drive_base.turn(45)
|
2025-11-09 22:16:39 +00:00
|
|
|
await drive_base.straight(120)
|
|
|
|
|
left_arm.run_angle(1000,-670)
|
|
|
|
|
|
|
|
|
|
await right_arm.run_angle(5000,-450, Stop.HOLD)
|
|
|
|
|
await right_arm.run_angle(5000,450, Stop.HOLD)
|
|
|
|
|
await right_arm.run_angle(5000,-450, Stop.HOLD)
|
|
|
|
|
await right_arm.run_angle(5000,450, Stop.HOLD)
|
|
|
|
|
await right_arm.run_angle(5000,-450, Stop.HOLD)
|
|
|
|
|
right_arm.run_angle(5000,450, Stop.HOLD)
|
|
|
|
|
|
|
|
|
|
await drive_base.turn(-35)
|
|
|
|
|
await drive_base.straight(297)
|
|
|
|
|
await drive_base.turn(63)
|
|
|
|
|
await drive_base.straight(170)
|
|
|
|
|
|
|
|
|
|
await drive_base.turn(-80)
|
|
|
|
|
await drive_base.straight(87)
|
|
|
|
|
await drive_base.turn(-15)
|
|
|
|
|
|
|
|
|
|
await drive_base.straight(-90)
|
|
|
|
|
await drive_base.turn(-100)
|
|
|
|
|
await drive_base.arc(-500,None,600)
|
|
|
|
|
|
2025-09-10 13:38:07 +00:00
|
|
|
run_task(main())
|