이제 기본 아이디어를 얻었으므로 LED를 변경하는 대신 비행 명령을 추가합니다! 먼저 롤, 피치, 요, 스로틀을 처리하는 프로그램의 구조를 설정합니다. 각 비행 방향에 대해 양수 값 과 음수 값이 있으므로 총 8개의 가능한 명령과 비상 정지를 위한 스페이스 바가 있습니다.
이 예에서는 다음 키보드 명령이 사용되지만 원하는 대로 값을 변경할 수 있습니다.
- W/S 키 – 양수/음수 값 스로틀 (위/아래 이동)
- D/A 키 – 양수/음수 값 요 (오른쪽/왼쪽 회전)
- 위/아래 화살표 키 – 양수/음수 값 피치(앞/뒤 이동)
- 오른쪽/왼쪽 화살표 키 – 양수/음수 값 롤 (오른쪽/왼쪽 이동)
- 스페이스 바 – 비상 정지
만약(if) 문을 어떻게 프로그래밍 해야 하는지 생각해 보세요. 만약(if) 및 다른 경우(else-if)는 이러한 명령 중 하나만 실행하려는 경우에 유용합니다. 그러나 하나의 만약(if) 문과 7개의 다른 경우(if-else) 문을 사용하면 한 번에 한 방향으로만 비행할 수 있습니다! 한 방향 이상으로 비행할 수 있으려면 만약(if) 문을 롤, 피치, 요, 스로틀로 그룹화 해야 합니다.
스로틀을 예로 들면 다음과 같습니다.
W키를 누르면 스로틀을 50으로 설정합니다.
다른 경우, S를 누르면 스로틀을 -50으로 설정합니다.
아니라면, 스로틀을 0으로 설정합니다.
아니라면(else) 문은 매우 중요합니다. 아무 키도 누르지 않을 때마다 스로틀 값을 0으로 재설정 합니다.