사용자 입력 메뉴와 마찬가지로 if, else if, else 문을 사용하여 사용자 입력에 따라 드론이 다른 방향으로 비행하도록 해야 합니다. if문에서 direction
이 w 키인 경우 에는 드론의 스로틀을 높이도록 하는 명령을 포함시킵니다. 매개변수에서 드론이 40% 전력으로 움직이게 하는 power
변수를 사용합니다.
if direction == "w":
drone.set_throttle(power)
다른 7개의 비행 명령에는 else if 문을 사용하세요. 드론이 왼쪽, 아래 또는 뒤로 이동하도록 하려면 매개변수의 power
변수 옆에 음수 기호( -power
)를 입력합니다.
elif direction == "s":
drone.set_throttle(-power)
elif direction == "a":
drone.set_yaw(-power)
elif direction == "d":
drone.set_yaw(power)
elif direction == "i":
drone.set_pitch(power)
elif direction == "k":
drone.set_pitch(-power)
elif direction == "j":
drone.set_roll(-power)
elif direction == "l":
drone.set_roll(power)
종료 옵션에 대해 else if 문을 하나 더 작성합니다. 착륙 명령을 건너뛰지 않도록 대기하고 드론을 착륙시킨 후 반복문을 빠져나옵니다.
elif direction == "q":
time.sleep(0.05)
drone.land()
break
사용자가 프로그램의 옵션이 아닌 항목을 입력한 경우 실수를 했음을 알리는 옵션을 포함합니다.
else:
print("잘못된 명령입니다")
마지막으로 매개변수에 1초의 지연 및 이동 명령을 포함합니다. 이것은 각 키에 대해 작성한 코드와 함께 실제로 드론을 움직일 것입니다!
time.sleep(0.05)
drone.move(1)
반복문 바깥에 print 및 drone.close() 명령을 포함하여 프로그램을 종료한 시점을 알 수 있습니다.
print("Done")