diff --git a/oving_2/main.py b/oving_2/main.py index 06c5ccf..8b2a59a 100644 --- a/oving_2/main.py +++ b/oving_2/main.py @@ -7,9 +7,6 @@ from pybricks.robotics import DriveBase from pybricks.media.ev3dev import SoundFile, ImageFile -import threading -import sys - # This program requires LEGO EV3 MicroPython v2.0 or higher. # Click "Open user guide" on the EV3 extension tab for more information. @@ -26,48 +23,38 @@ leftMotor = Motor(port=Port.A) rightMotor = Motor(port=Port.C) -robotDriveBase = DriveBase(leftMotor, rightMotor, wheel_diameter=56, axle_track=110) +robotDriveBase = DriveBase(leftMotor, rightMotor, wheel_diameter=56, axle_track=160) startBtn = TouchSensor(port=Port.S1) usSensor = UltrasonicSensor(port=Port.S3) isPressed = False -def startStrop(): - global isPressed - while True: - if(startBtn.pressed()): - if isPressed == False: - ev3.speaker.say("Excercise 2") - wait(500) - isPressed = True - next_turn = 1 - else: - isPressed = False - robotDriveBase.stop() - ev3.speaker.say("Excercise done") - - break +next_turn = 0 + +while True: + if(startBtn.pressed() and isPressed == False): + ev3.speaker.say("Excercise 2") + wait(500) + isPressed = True + next_turn = 1 - print("The end..") - sys.exit() + elif(isPressed == True): + if startBtn.pressed(): + isPressed = False + break + + elif(usSensor.distance() >= 150): + robotDriveBase.drive(-250, 0) + else: + robotDriveBase.turn(90 * next_turn) + robotDriveBase.straight(-150) + robotDriveBase.turn(90 * next_turn) + next_turn *= -1 + +robotDriveBase.stop() +ev3.speaker.say("Excercise done") -def runRobot() : - next_turn = 0 - - while True: - if(isPressed == True): - if(usSensor.distance() >= 75): - robotDriveBase.drive(-250, 0) - else: - robotDriveBase.turn(90 * next_turn) - robotDriveBase.straight(-150) - robotDriveBase.turn(90 * next_turn) - next_turn *= -1 - -t1 = threading.Thread(target=startStrop) -t2 = threading.Thread(target=runRobot) -t1.start() -t2.start() \ No newline at end of file +print("The end..") \ No newline at end of file