from time import sleep import robot POWER = 70 TURN_T = 0.079 # 10 degrees DRIVE_T = 0.22 # 10 centimeter RIGHT_WHEEL_OFFSET = 4 CLOCKWISE_OFFSET = 0.82 def clockwise_square(arlo): arlo.go_diff(POWER, POWER + RIGHT_WHEEL_OFFSET, 0, 1) sleep(TURN_T * 0.5) arlo.stop() sleep(0.5) for _ in range(12): # Driving forward arlo.go_diff(POWER, POWER + RIGHT_WHEEL_OFFSET, 1, 1) sleep(DRIVE_T * 10) arlo.stop() sleep(1) # Turning 90 degrees arlo.go_diff(POWER, POWER + RIGHT_WHEEL_OFFSET, 1, 0) sleep(TURN_T * 10 * CLOCKWISE_OFFSET) arlo.stop() sleep(0.2) arlo.go_diff(POWER, POWER + RIGHT_WHEEL_OFFSET, 0, 1) sleep(TURN_T * 1.2) arlo.stop() sleep(1) def counter_square(arlo): arlo.go_diff(POWER, POWER + RIGHT_WHEEL_OFFSET, 0, 1) sleep(TURN_T * 0.5) arlo.stop() sleep(0.5) for _ in range(12): # Driving forward arlo.go_diff(POWER, POWER + RIGHT_WHEEL_OFFSET, 1, 1) sleep(DRIVE_T * 10) arlo.stop() sleep(0.5) # Turning 90 degrees arlo.go_diff(POWER, POWER + RIGHT_WHEEL_OFFSET, 0, 1) sleep(TURN_T * 10) arlo.stop() sleep(0.2) arlo.go_diff(POWER, POWER + RIGHT_WHEEL_OFFSET, 1, 0) sleep(TURN_T) arlo.stop() sleep(0.5) def main(): # Initializes the robot and runs the arlo = robot.Robot() direction = int(input("clockwise (1)/counter (2):")) try: if direction == 1: clockwise_square(arlo) else: counter_square(arlo) except KeyboardInterrupt: arlo.stop() if __name__ == "__main__": main()