Wonseok Kwak

CoDroneFlightTest

...@@ -3,20 +3,36 @@ ...@@ -3,20 +3,36 @@
3 void setup() 3 void setup()
4 { 4 {
5 CoDrone.begin(115200); // 드론 플러그의 통신 개시 (115200bps) 5 CoDrone.begin(115200); // 드론 플러그의 통신 개시 (115200bps)
6 -
7 CoDrone.AutoConnect(NearbyDrone); // 가장 가까운 위치의 드론과 연결 6 CoDrone.AutoConnect(NearbyDrone); // 가장 가까운 위치의 드론과 연결
7 + CoDrone.DroneModeChange(Flight); // 드론을 플라이트 모드로 설정합니다. (비행형)
8 +}
8 9
9 - CoDrone.DroneModeChange(Flight); // 드론을 플라이트 모드로 설정 (비행 형태) 10 +void loop()
11 +{
12 + byte bt1 = digitalRead(11); // ■ □ □ □ □ □ □ 밑면 적외선 센서를 입력으로 사용
13 + byte bt4 = digitalRead(14); // □ □ □ ■ □ □ □ 밑면 적외선 센서를 입력으로 사용
14 + byte bt8 = digitalRead(18); // □ □ □ □ □ □ ■ 밑면 적외선 센서를 입력으로 사용
10 15
11 - // 2초간 드론을 띄운후 착륙하기 16 + if (bt1 && !bt4 && !bt8) // 밑면 센서 가장 끝 11번 센서에 손을 대면 실행합니다.
12 - if (PAIRING == true) // 연결(페어링)이 성공한 경우에만 실행
13 { 17 {
14 - CoDrone.FlightEvent(TakeOff); // 이륙 18 + CoDrone.FlightEvent(Stop); // 드론을 정지시킵니다.
15 - delay(2000); // 대기 시간
16 - CoDrone.FlightEvent(Landing); // 서서히 착륙
17 } 19 }
18 -}
19 20
20 -void loop() 21 + if (!bt1 && !bt4 && bt8) // 밑면 센서 가장 끝 18번 센서에 손을 대면 실행합니다.
21 -{ 22 + {
23 + CoDrone.FlightEvent(Landing); // 드론을 착륙시킵니다.
24 + }
25 +
26 + if (PAIRING == true) // 연결(페어링)이 성공한 경우에만 실행
27 + {
28 + YAW = -1 * CoDrone.AnalogScaleChange(analogRead(A3)); // 아날로그 3번 핀의 값을 YAW 값으로 사용합니다. - 좌우회전
29 +
30 + THROTTLE = CoDrone.AnalogScaleChange(analogRead(A4)); // 아날로그 4번 핀의 값을 THROTTLE 값으로 사용합니다. - 승하강
31 +
32 + ROLL = -1 * CoDrone.AnalogScaleChange(analogRead(A5)); // 아날로그 5번 핀의 값을 ROLL 값으로 사용합니다. - 좌우이동
33 +
34 + PITCH = CoDrone.AnalogScaleChange(analogRead(A6)); // 아날로그 6번 핀의 값을 PITCH 값으로 사용합니다. - 전후진
35 +
36 + CoDrone.Control(SEND_INTERVAL); // 제어 신호를 보냅니다. 통신이 안정하게 가도록 시간을 두고 보냄 (최소 50ms)
37 + }
22 } 38 }
......