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, run_task hub = PrimeHub() # Initialize both motors. In this example, the motor on the # left must turn counterclockwise to make the robot go forward. left_motor = Motor(Port.A, Direction.COUNTERCLOCKWISE) right_motor = Motor(Port.B) arm_motor = Motor(Port.D, Direction.CLOCKWISE) arm_motor_left= Motor(Port.C, Direction.CLOCKWISE) # Initialize the drive base. In this example, the wheel diameter is 56mm. # The distance between the two wheel-ground contact points is 112mm. drive_base = DriveBase(left_motor, right_motor, wheel_diameter=68.8, axle_track=180) print('The default settings are: ' + str(drive_base.settings())) drive_base.settings(300,1000,300,750) # Optionally, uncomment the line below to use the gyro for improved accuracy. drive_base.use_gyro(True) async def main(): await drive_base.straight(519) await arm_motor_left.run_angle(300, -100) await arm_motor_left.run_angle(300, 500) await drive_base.straight(180) await drive_base.turn(-37) await drive_base.straight(50) await arm_motor.run_angle(300, -400) await drive_base.straight(-150) await drive_base.turn(135) await drive_base.straight(50) await arm_motor.run_angle(300, 400) await drive_base.straight(-75) await arm_motor.run_angle(300, 300) await drive_base.turn(-50) await drive_base.straight(162) await arm_motor.run_angle(100, -200) await drive_base.straight(30) await arm_motor.run_angle(50,-500) run_task(main())