'ArduPilot'에 해당되는 글 4건

  1. 2017.03.29 고정익의 비행모드 (2)
  2. 2016.12.24 Pixhawk 기본 튜닝
  3. 2016.12.24 Pixhawk Throttle 중앙점 잡기
  4. 2015.09.16 APM:Compter 비행모드(Flight Mode)
드론/쿼드콥터2017. 3. 29. 14:32

비행모드 (Flight Modes)


개요

Plane에는 다양한 비행모드가 있다. 어떤 비행모드와 어떤 옵션을 선택하느냐에 따라, 간단한 비행 안정화 시스템으로 작동할 수도 있고, 복잡한 자동주행, 교습용 시스템 또는 비행안전시스템 등으로 작동된다.


비행모드는 Radio 송신기 스위치, 미션 명령 또는 지상국 또는 보조 컴퓨터의 명령을 통해 제어된다. 


주요비행모드

  • 매뉴얼 MANUAL
  • STABILIZE 
  • FLY BY WIRE_A (FBWA) 
  • FLY BY WIRE_B (FBWB) 
  • AUTOTUNE 
  • TRAINING 
  • ACRO 
  • CRUISE 
  • AUTO 
  • Return To Launch (RTL) 
  • LOITER 
  • CIRCLE 
  • GUIDED

미션 관련 비행모드

AUTO 미션으로 날릴 때, 미션 아이템을 설정할 수 있는 sub-모드가 있다. 두가지 주요한 서브모드가 TAKEOFF와 LAND이다.

  • MANUAL
  • STABILIZE
  • FBWA (FLY BY WIRE_A) 
  • FBWB (FLY BY WIRE_B) 
  • AUTOTUNE 
  • TRAINING
  • ACRO
  • CRUISE
  • AUTO
  • RTL(Return To Launch)
  • LOITER
  • CIRCLE
  • GUIDED
  • TAKEOFF
  • LAND


주요비행모드


아래의 모든 비행모드에는 추가적인 제어를 통해 특정 비행 목적에 맞도록 거동을 변경시킬 수 있다. 아래에 있는 기본적인 정보를 읽은 후에는 비행기 변수(Plane parameter)를 잘 살펴서 전체 기능에서 어떤 것이 가능한지를 확인해 보는 것이 좋다.


MANUAL 모드

일반적인 RC 콘트롤. 안정화 없음. 모든 RC 입력이 바로 출력으로 전달됨. 출력이 입력과 다른 경우는 다음과 같음.

    • 비상안전 혹은 geofence가 실행되어, Plane이 제어를 가져갈 때
    • [VTAIL_OUTPUT]이 활성화되어 있다면, 소프트웨어 VTAIL 믹서가 출력에 적용됨
    • [ELEVON_OUTPUT]이 활성화되어 있다면, 소프트웨어 Elevon 믹서가 출력에 적용됨


STABILIZE 모드

간단한 안정화가 지원되는 RC 콘트롤. 스틱에서 손을 떼면 기체가 평형을 잡게 된다. 상반각(dihedral)이 큰 비행기를 날리는 것과 얼추 비슷하다. STABILIZE 모드 에서도 롤링/루프 와 같은 기동이 가능하지만, 기체를 바로잡으려는 경향이 있어 이러한 기동이 어렵다. 비행기가 주로 알아서 날라주길 원하는 사람의 경우, 어디로 날라가야 할지만 알려주는 경우, FLY BY WIRE_A(FBWA) 모드를 사용하는 것이 좋다.


STABILIZE 모드에서 쓰로틀은 [THR_MIN]과 [THR_MAX] 설정 내에서만 작동된다.


참고 : STABILIZE 모드는 contorl loop 를 튜닝하는 용도로 좋지 않다. 그 용도로는 FLY BY WIRE_A (FBWA) 를 사용하는 것이 좋다.


FBWA(Fly by wire_A)

Plane의 지원을 받는 모드중 가장 인기있는 모드로서, 초보자들에게 가장 좋은 모드이다. 이 모드에서는 제어스틱에서 지정한 roll 과 pitch 각을 고정한다. 따라서 aileron 스틱을 오른쪽 끝까지 밀 경우, 비행기는 피치 레벨이 고정되고 [LIM_ROLL_CD]에서 지정한 각도(centi degree)로 오른쪽으로 기울어진다. 이 제한 각도 이상으로 비행기를 더 넘기는 것은 불가능하며, 비행기의 기수를 [LIM_PITCH_MAX], [LIM_PITCH_MIN] 설정 이상으로 올리거나 내리는 것도 불가능하다.


참고로 피치값을 0으로 유지한다고 하여 비행기가 고도를 유지하는 것은 아니다. 고도가 올라갈지 내려갈지는 기체의 속도에 달려있으며, 이는 주로 Throttle에 의해 제어된다. 따라서 고도를 올리려면 Throttle을 밀어야 하고, 고도를 떨어뜨리려면 Throttle을 낮춰야 한다. Plan이 고도까지 알아서 처리하도록 하려면 FlyByWireB 모드를 보라.


FBWA모드에서 throttle은 수동제어되지만, [THR_MIN] 과 [THR_MAX] 이내에서만 가능하다.


FBWA 모드에서 방향타(rudder)는 수동 + 미리 설정해둔 rudder 믹싱에 의해 제어된다. 따라서 방향타를 ground steering에 사용할 수 있으며, 자동으로 조정되는 회전(coordinating turns)에도 사용된다.


FBWB(Fly by wire_B)

FBWB는 FBWA와 비슷하지만, Plane에서 고도도 유지한다. Roll 제어는 FBWA와 동일하며, 고도는 승강타(elevator)로 제어된다. 목표 속도는 throttle을 사용하여 제어된다.


FBWB 모드에서 고도를 제어하려면 승강타를 사용하여 고도의 변화를 요청한다. elevator에서 손을 떼면 Plane은 현재의 고도를 유지하려고 시도한다. elevator를 이동시키면 움직인 거리에 비례하여 고도를 올리거나 내린다. elevator를 완전히 넣었을 때 얼마나 고도가 올라갈지는 [FBWB_CLIMB_RATE] 변수에 따르며, 그 기본값은 2 m/sec 이다. 참고로 2 m/sec 은 상당히 느린 변화로, 고도변화의 반응성을 높이기 위해 많은 사용자들이 [FBWB_CLIMB_RATE] 값을 올리고 있다.


elevator 스틱을 당겼을 때 고도를 올릴 것인지 스틱을 밀었을 때 고도를 올릴 것인지는 [FBWB_ELEV_REV]  변수 설정에 따른다. 기본값은 elevator를 당겼을 때 고도가 올라간다. 이는 일반적인 RC 모델의 반응 방향과 일치한다. 반대방향이 편하다면 FBWB_ELEV_REV를 1로 두면, FBWB 모드에서 elevator 가 반대로 된다.


참고로, elevator 스틱은 pitch를 제어하지 않고, 목표 고도를 제어한다.  요청된 상승/하강률을 달성하는데 사용되는 pitch의 양은 TECS 튜닝 설정에 따딸 달라지지만, 일반적으로 비행콘트롤러는 기체를 상당히 수평으로 유지하려고 하면서 주로 Throttle을 사용해 상승 또는 하강한다. 이는 pitch를 직접 조정하는 FBWA 모드에 익숙한 사람들에게는 당황스럽다. 


airspeed 센서가 있을 경우, throttle은 목표 속도를 [ARSPD_FBW_MIN]에서 [ARSPD_FBW_MAX] 범위 내로 제어한다. Throttle의 최소로 되면 비행기는 [ARSPD_FBW_MIN] 으로 비행하려고 시도하며, Throttle이 최대로 되면 [ARSPD_FBW_MAX] 로 비행하려고 시도한다.


airspeed 센서가 없을 경우, Throttle은 기체의 목표 Throttle을 설정하고, Plane은 적절한 고도유지를 위해 이 설정 내외로 Throttle을 조정한다. Throttle 스틱은 빠른 비행을 위하여, 필요하다고 계산된 값 이상으로 목표 Throttle 이상으로 올리고자 할 때 사용될 수 있다.


FBWA와 마찬가지로 방향타(rudder)는 수동 제어 및 자동조정 회전(turn coordination)을 위한 자동 제어에 따른다.


CRUISE 모드를 참고하라. 대체로 FBWB보다 CRUISE 모드가 더 낫기 때문이다. 특히 바람이 심할 때 그러하다. CRUISE 모드에서는 보조날개(aileron) 스틱으로 아무런 roll을 입력하지 않을때, 단순히 날개를 수평으로 유지하는 대신 ground track을 유지하는 방식이다.


AUTOTUNE

AUTOTUNE 모드는 FLY_BY_WIRE_A(FBWA)와 동일한 방식으로 비행하나, roll/pitch에 대한 이득을 자동 튜닝한다. 자세한 내용은 AUTUTUNE 문서를 확인할 것


TRAINING

TRAINING 모드는 학생들에게 수동 R/C 제어를 가르치기에 가장 이상적이다. 사용자가 rudder 와 throttle에 대해 완전한 제어가 가능하지만, 최대 roll 과 최대/최소 pitch를 제한하여 그 이상 초과하지는 못한다. Plane 3.4 부터는 TRAINING 모드에서 Stall Prevention(실속 방지) Roll 한계도 제한한다.


좀더 자세하게 설명하면 다음과 같다.

    • Roll 이 [LIM_ROLL_CD] 변수보다 작다면, 조종사가 roll을 수동으로 제어함. 이 한계를 넘어서 roll 을 하려고 시도하면 roll 이 그 한계로 고정된다. 비행기가 자동으로 수평으로 돌아오지 않지만, 그 한계는 넘을 수 없다. 피치도 마찬가지다. [LIM_PITCH_MIN] 또는 [LIM_PITCH_MAX] 한계에 도달하기 전까지는 조종사가 수동으로 제어하지만, 이 한계를 넘어갈 수 없다.
    • 회전을 할때는 비행콘트롤러가 요청된 기울임 각도(bank angle)와 대기 속도를 감시한다. 요청된 기울임 각도가 실속속도 이상으로 충분하다면 그냥 진행된다. 그렇지 않다면 기울임 각도가 안전한 값으로 제한된다. 실속방지 시스템에서는 최소 25도까지 기울임을 허용한다. (대기속도 추정이 아주 나쁘더라도 계속 기동이 가능하도록 하기 위해)
    • 방향타(rudder)와 Throttle은 완전히 사용자가 수동으로 제어할 수 있다.


ACRO

ACRO(acrobatic)은 고급 사용자용 모드로서, attitude lock 이 있는 rate 기반의 안정화를 제공한다. (MANUAL 은 피하면서도) FBWA 나 STABILIZE 모드보다는 더 강하게 밀고 싶은 사람들에게 좋은 선택이다. --- 이하 생략 ---


CRUISE

CRUISE 모드는 FBWB 모드와 약간 비슷하지만, "방향 고정(heading lock)" 기능이 있다. 장거리 FPV 비행에 이상적인 모드이다. 멀리에 있는 물체를 가르키면 정확하게 그 물체를 추적해 가면서 자동적으로 고도, 대기속도 및 방향을 유지한다. --- 이하 생략 ---


AUTO

AUTO 모드는 지상국에서 설정한 미션(GPS 웨이포인트 및 기타 명령)을 따르는 모드이다. AUTO 모드에 들어가면 미션을 재설정하지 않는 이상 최종 수행했던 미션 항목으로부터 다음 항목을 수행한다.


AUTO 모드에서는 기본적으로 조종자가 "stick mixing"을 사용하여 비행에 영향을 미칠 수 있다. 즉 보조익, 승강타, 방향타 입력을 사용하여 FC의 제어를 덮어쓰는 방식으로 비행기를 조종한다. 이 기능은 [STICK_MIXING] 옵션에 의해 결정된다. 기본적으로 stick 믹싱은 FBWA 모드와 동일하게 작동된다.


주의사항 : 

"Home" 위치는 비행기의 실제 GPS 이륙 위치로 가정된다

1. RTL, Loiter, Auto 기타 GPS에 의존적인 모드가 정확하게 작동되려면, 시동을 걸기전 GPS 가 고정되어야 한다.

2. Plane의 경우, 홈 위치는 GPS가 고정된 시점에 최초로 설정된다. 시동해제 될 때까지 계속 갱신된다. 

  - 즉, RTL을 걸면 시동을 건 지점으로 되돌아 온다.
  - 그 위치가 싫다면 랠리점을 설정하면 된다.


Return to Launch(RTL)


RTL 모드는 비행기가 "Home"위치 (비행기를 시동걸었을 때의 위치)로 되돌아가서 다른 명령이 올때까지(혹은 연료가 떨어질 때까지) Loiter 하게 된다. AUTO 모드와 마찬가지로 스틱 믹싱(Stick Mixing)을 사용하여 기체를 수동으로 제어할 수 있다. RTL 모드의 목표 고도는 [ALT_HOLD_RTL] 로 설정한다.


주의사항 : 

"Home" 위치는 비행기의 실제 GPS 이륙 위치로 가정된다

1. RTL, Loiter, Auto 기타 GPS에 의존적인 모드가 정확하게 작동되려면, 시동을 걸기전 GPS 가 고정되어야 한다.

2. Plane의 경우, 홈 위치는 GPS가 고정된 시점에 최초로 설정된다. 시동해제 될 때까지 계속 갱신된다. 

  - 즉, RTL을 걸면 시동을 건 지점으로 되돌아 온다.
  - 그 위치가 싫다면 랠리점을 설정하면 된다.


LOITER

LOITER 모드는 LOITER를 시작한 지점 주변을 선회한다. 고도는 처음 Loiter에 들어온 고도를 유지한다. 선회 반경은 [WP_LOITER_RAD] 변수로 제어하지만,  [NAV_ROLL_CD]와 [NAVL1_PERIOD]에 의해서 제한 받는다. RTL 및 AUTO 모드와 마찬가지로 스틱 믹싱을 사용하여 기체를 수동으로 제어할 수 있다. 


CIRCLE

LOITER 모드와 비슷하지만, 위치를 유지하려고 시도하지 않는다. 기본적으로 비상안전 모드에 사용되며, 비상안전 이벤트가 발생했을 때, RTL로 전환하기 전에 20초간 CIRCLE 모드로 대기한다.


CIRCLE 모드는 의도적으로 매우 보수적인 모드로서, GPS 위치에 의존하지 않는다. GPS가 정지되었을 때 사용되기 때문이다. 기울기 각도는 [LIM_ROLL_CD] /3 으로 설정되며, 가속도계 교정에 GPS 속도 데이터가 없이도 가능한한 안정을 유지하려고 시도한다.


CIRCLE 모드는 처음 선회를 시작한 고도를 유지하기 위해 Throttle 및 핏치 제어를 사용한다.


GUIDED

GUIDED 모드는 미션에서 설정하지 않고 지도상의 한점으로 비행체를 날라가도록 하는데 사용된다. 대부분의 지상국은 "Click to Fly to" 기능을 지원하는데, 여기에서 지도상에 한점을 클릭하면 비행체가 그 지점으로 날라간 후 LOITER 한다.


또다른 주요한 용도는 geo-fencing이다. geo-fence 를 침범하면 비행체는 GUIDED 모드로 들어가서 미리 정해둔 geo-fence 회귀점으로 향하고, 조종자가 제어권을 받을 때까지 LOITER 선회하게 된다.


TAKEOFF

자동 이륙은 미션콘트롤에서만 설정할 수 있다. 이륙 미션은 이륙 핏치와 목표 고저를 지정할 수 있다. 이륙동안, 기체은 THR_MAX에서 지정된 최대 쓰로틀을 사용하여 이륙한다. 이륙미션은 고정익이 지정한 목표고도에 도달했을 때 완료된 것으로 간주된다.


이륙전, 기체가 바람을 향하고, 활주로 방향으로 정렬(wheedled takeoff시)하는 것이 중요하다. 기체는 이륙동안 최초의 비행기 방향을 기준으로 방향을 유지하려고 시도한다. 자동 이륙을 위해서는 전자나침판을 정확하게 교정하고 활성화하는 것이 좋다. GPS 방향은 잘못된 방향으로 이끌기 쉽기 때문이다.


바퀴달린 비행기를 사용할 경우, ground steering 제어를 위하여 WHEELSTEER_* PID 설정을 확인해야 한다. 손으로 이륙시키거나 catapult를 사용할 경우, TKOFF_THR_MINACC 와TKOFF_THR_MINSPD 매개변수를 확인하라.


LAND 

자동 착륙은 미션 콘트롤에서만 사용할 수 있다. 비행콘트롤러가 쓰로틀과 고도를 제어한다. 목표 고도로 부터 LAND_FLARE_ALT 미터만틈 가까워지거나, 목표 착륙점으로부터 LAND_FLARE_SEC초 이내이면, 기체는 LAND_PITCH_CD 피치각(centi degree)로 "flare"하고 마지막 접근을 위해 방향을 고정한다.


안정적인 자동 이착륙을 설정하는 것은 기체에 따라 아주 달라지며, 먼저 기체를 FBWA모드로 날리면서 경험을 쌓은 후, 매뉴얼이나 FBWA모드에서 제어를 넘겨받기
Setting up Plane for reliable auto-takeoff and landing is very airframe dependent, and it is recommended that you first get some experience flying your aircraft in FBWA mode, and be ready to take over control in manual or FBWA mode the first few times you use an automatic takeoff or landing.

아울러 전체 파라미터 목록을 살펴보아야 한다. 여러가지 상황에서 이착륙을 제어할 수 있는 매개변수가 많이 있기 때문이다.


===

원문 : http://ardupilot.org/plane/docs/flight-modes.html


이전글 : http://www.internetmap.kr/entry/arming-your-plane


다음글 : http://www.internetmap.kr/entry/Plane-Tuning


Posted by 푸른하늘 푸른하늘이

댓글을 달아 주세요

  1. 픽스 호크 plane을 공부하고있습니다.
    미션플레너에서 웨이포인트 설정하고 RTL기동까지 확인 하고나서
    오토 모드를 실행하면 설정한 웨이포인트에 진입을 하지 못하고 계속 주위를 도는 기동을 합니다.
    화면상에 컴퍼스 관련 에러는 없는데 할때마다 이런경우가 있어
    다음 단계로 넘어가지 못하고 있습니다.
    혹 설정에서 제가 빠트린 부분이나 반드시 체크 해야 하는 포인트가있으면 조언 부탁드립니다.

    2016.12.26 13:07 [ ADDR : EDIT/ DEL : REPLY ]
    • 확실하지는 않습니다만, compass calibration이 제대로 안되면 "toilet bowling" 이라고 하여, 한자리에서 뱅뱅 도는 현상이 생긴다고 합니다. 참고하세요~

      2016.12.27 09:31 신고 [ ADDR : EDIT/ DEL ]

드론/쿼드콥터2016. 12. 24. 13:48

기본 튜닝(Basic Tuning)

이 글은 기본적인 Roll/Pitch/Throttle 튜닝에 관한 글입니다.

개요

첫 비행후, 콥터가 조종하는대로 잘 반응하지 않던가, 자세를 유지하는데 어려울 수 있습니다. PID 콘트롤러에 익숙하다면, 고급 튜닝 가이드를 참고하세요.  경험 많은 분이라면 자동튜닝(Autotune) 기능을 시도해 보세요. 이 글은 Mission Planner와 APM Planner 의 기본 튜닝을 다룹니다. 기본튜닝은 복잡한 튜닝 절차를 간단한 슬라이더 만으로 조정하는 것을 말합니다. 초보자들에게 가장 최적의 튜닝 방법입니다.

Roll and Pitch 튜닝

튜닝은 텔레메트리 라디오를 장착한 상태에서 현장에서 수행하는 것이 제일 좋습니다. 다음과 같은 질문을 생각하면서 비행을 해보세요.

  • Roll 및 Pitch 스틱에 기체가 어떻게 반응하는가? 원하는 것보다 빨리 반응하는가 아니면 느리게 반응하는가?
  • 어느 정도의 Throttle에서 기체가 Hovering 하는가? 중립위치 부근인가? 아니면 위인가 아래인가?
  • Throttle을 올릴 때 기체가 올라가는 속도가 빠른가? 느린가? 

텔레메트리를 지상국 컴퓨터와 연결하고, Mission Planner나 APM Planner를 실행합니다. COM 포트를 선택하고 CONNECT를 연결합니다.  다음으로 CONFIG/TUNING 탭을 누르고 Basic Tuning을 선택합니다.

페이지 윗쪽에 있는 Roll/Pitch 슬라이터부터 시작합니다. 콥터의 roll/pitch 조종 반응이 너무 빠르다면, 슬라이더를 왼쪽으로 바꾸고, 너무 느리게 움직인다면 오른쪽으로 한클릭 옮깁니다. 만족스러울때까지 이를 반복합니다. 

Throttle 튜닝

아래쪽 두개의 슬라이더를 사용하면 쓰로틀 제어를 튜닝할 수 있습니다. Throttle 스틱이 중앙 위치에서 콥터가 호버링할 수 있도록 Throttle Hover로 표시된 슬라이더를 조정하세요. Throttle 막대가 중앙보다 아래에서 호버링한다면 슬라이더를 오른쪽으로 움직입니다. 이때, 한 클릭 정도씩 움직여주고, 움직일 때마다 테스트합니다.

콥터의 상승속도를 좀더 빠르게 하려면 Trottle Accel 또는 Climb Sensitivity 라고 표시된 슬라이더를 오른쪽으로 움직이고, 좀더 부드럽게 상승시키려면 왼쪽으로 움직입니다. 클릭 하나씩 정도 움직인 후에는 테스트하여 튜닝결과를 평가합니다.

===

원문 : http://ardupilot.org/copter/docs/basic-tuning.html

Posted by 푸른하늘 푸른하늘이

댓글을 달아 주세요

드론/쿼드콥터2016. 12. 24. 13:26

Throttle 중앙점 잡기(일명 Hover Throttle)

참고 : Copter-3.4(이상)에서는 hover throttle 자동학습 기능이 추가되었다. 따라서, 수동으로 변수를 설정하는 것은 일반적으로 불필요하다.

기체에 비해 추력이 약간 크거나 작으면 Throttle 이 40% 이하 또는 60% 이상에서 기체가 호버링할 수 있다. 안정화(Stabilize) 모드에서만 비행할 경우에는 문제가 없지만, 자동 항법모드(Loiter, AltHold 등)으로 바꾸었을 때 쓰로틀이 40%-60% 불감대역을 벗어나 있을 경우, 기체를 내리거나 올리라는 명령으로 인식되어서 기체가 갑자기 요동을 치게 된다. 

따라서 Throttle Mid 파라미터(THR_MID)를 조정하여, 안정화 모드에서 Throttle 중앙위치가 50% 정도가 되도록 설정해두는 것이 좋다.

다음은 수동으로 50% Throttle에서 호버링 하도록 설정하는 방법이다.

  • 안정화(Stabilize) 모드에서 최소 30초 이상 기체를 안정적으로 호버링한다.
  • 배터리를 빼고, APM/PX4를 Mission Planner에 연결한다.
  • 터미널 스크린으로 가서 최신 DataFlash Logs 파일을 내려 받는다. (자세한 다운로드 방법은 여기를 보라.)

  • 다운로드가 완료되면, "Log"윈도를 닫고, "Log Browse" 버튼을 누르고, 로그 directory에서 최신 파일을 연다. (마지막 숫자는 다운로드 받은 Log의 수이다. 따라서 위의 예에서 Log #1을 다운로드 받았다면, 파일명은 1.log로 끝난다.)

  • Log Brower가 나타나면 아래로 내려가서 CTUN 메시지를 찾는다. 오른쪽에 있는 ThrOut 이라는 항목을 클릭하고 "Graph this data Left" 을 누르면 아래와 같은 그래프를 볼 수 있다.

  • 그래프 왼쪽 축에 써있는 숫자를 토대로 평균적인 쓰로틀 값이 얼마인지 알아본다. 위의 예에서는 (이 예는 비행시간이 불필요하게 긴 상태임.) Throttle 중앙값이 약 550 정도이다.
    • 참고로 쓰로틀 값이 300이하(즉, 30%)이라면 출력이 매우 큰 콥터이므로, 중량을 추가하거나(배터리를 큰 걸로 바꾸는 등) 여러가지 방법(모터를 작은 걸로, 4S를 3S로 등) 으로 출력을 낮추는 것이 좋다. 
    • 평균 쓰로틀이 700(즉 50%) 이상이면 아주 출력이 낮은 상태이다. 모터/ESC를 출력이 높은 걸로 바꾸거나, 배터리 전압을 높은 것으로 바꾸는 것이 좋다.
  • Mission Planner에서 Configuation -> Standard parameters 로 들어가서 THR_MID 값을 위에서 추정된 값으로 변경한다.
  • Write Params 버튼을 눌러준다.

Hover Throttle 자동 학습

Copter-3.4(이상)에서는 쓰로틀 중앙값(Hover Throttle이라고도 함) 자동 학습이 포함되어 있다. 기체가 수동비행모드(Stabilize 및 Acro)가 아닌 모드로 호버링하면, MOT_THST_HOVER 값이 천천히 평균 모터 출력을 향하여 천천히 이동한다.

수동으로 MOT_THST_HOVER값을 설정하려면, dataflash 로그를 다운로드 받은 후, CTUN.ThO 필드에 있는 값으로 두는 것이 좋다. 이 값은 0.2에서 0.8 사이이다.

어떤 이유로든 자동학습을 정지시키려면, MOT_HOVER_LERAN 변수를 0으로 두면 된다.

====

원문 : http://ardupilot.org/copter/docs/ac_throttlemid.html


Posted by 푸른하늘 푸른하늘이

댓글을 달아 주세요

드론/쿼드콥터2015. 9. 16. 22:06

이 글은 APM:Copter (즉, ArduPilot 중 멀티콥터용 모듈)에 들어 있는 여러가지 비행모드를 해설한 글입니다. 원본 글은 여기입니다.


APM:Copter 에는 14개의 비행 모드가 있습니다. (NAZA M V2에 단 3개가 있는 것에 비해 정말 많네요. 아... 엊그제 Follow Me 모드와 POI 모드 두개가 더 추가되었습니다.) 이중 10개 정도가 자주 사용된다고 합니다. 


참고로 비행모드 설정방법은 여기를 확인하시기 바랍니다.


Stabilize Mode(평형모드)

  • 기체 조종을 완전히 수동으로. 단 roll 과 pitch는 자동으로 평형을 잡아줌
  • 바람이 불 경우, roll 과 pitch를 계속 조종해야 함
  • yaw를 조종하면 방향이 바뀌고 손을 놓으면 그 방향으로 유지됨
  • throttle 값이 평균 모터 속도값으로 사용됨. 고도를 유지하려면 throttle도 계속 조종해야 함.
  • 조종하기가 쉽지 않으므로 초보의 경우엔 Alt hold 혹은 Loiter 모드를 사용할 것
Stabilize 모드에 관한 자세한 내용, 튜닝방법은 여기를 보라.

Alt Hold Mode(고도 유지 모드)

  • roll/pitch/yaw를 조종할 수 있음. 고도를 일정수준에서 유지시켜줌
  • roll/pitch/yaw의 조종은 Stabilize Mode와 동일
  • 고도는 기압계(barometer)를 이용하여 측정. 날씨 급변할 경우 고도 흔들릴 수 있음. Sonar가 장착되어 있고 8미터 이하인 경우 Sonar 값을 사용
  • 쓰로틀 스틱이 40-60% 범위내에 있으면 현재 고도가 유지됨.

Loiter Mode(위치 고정 모드)

  • 현재의 위치, 방향 및 고도를 유지. 기체를 조종할 수 있으며 스틱을 놓으면 그 위치를 지킴
  • GPS 신호가 좋고, 자기장 간섭이 적으며, 진동이 없어야 좋은 결과를 얻을 수 있음.
  • Pitch/Roll을 조종하면 수평위치를 바꿀 수 있음
  • Throttle을 사용하여 수직위치 변경 (Alt Hold 모드와 동일)
  • 방향은 Yaw 로 조종.

RTL(Return to Launch) Mode(집으로 모드)

  • 현재 위치에서 떠나, Home 위치(arming 한 위치) 위로 돌아옴
  • 15 미터 이하일 경우엔 15미터를 상승한 후 돌아오고, 더 높을 때는 그 고도를 유지하여 돌아옴

  • 반드시 GPS Lock 이 된 후 기동해야 함. (compass 없는 경우 APM의 파란색 LED가 계속 켜져 있음. compass 있는 경우에는 파란색 LED가 계속 깜박임)
  • RTL_FINAL_ALT 를 0으로 하면 자동으로 착륙

Auto Mode(자동 모드)

  • 오토파일럿에 미리 프로그램된 미션 스크립트(mission script)에 따라 이동하는 모드. 미션 스크립트는 운항명령(navigation command), 즉 웨이포인트(waypoint)와, DO 명령(사진 촬영과 같이 콥터의 위치와는 관계없는 명령)으로 구성된다.
  • 미션 스크립트에 관한 정보는 여기 참고

  • 자동모드는 고도유지 모드와 로이터 모드를 포함하므로, 이 두가지가 잘 되는 것을 확인한 후 사용할 것
  • 진동 level 과 전자나침반 level 이 적정한 수준인지를 포함한 모든 요구사항이 만족되어야 하며, GPS의 HDOP가 2.0 이하이어야 함.
  • 자동모드도 비행모드 설정 스위치로 설정해야 함
  • 멀티곱터가 지상에 있는 상태에서 시작한다면, throttle을 최대 아래로 하고, Auto 모드로 설정한 후, throttle을 올린다. throttle이 0 이상이 되는 순간부터 mission을 수행한다.
  • 공중에 떠 있는상태에서 시작한다면, 모드 스위치를 Auto로 돌리는 순간부터 첫번째 명령을 수행한다. 첫번째 명령이 Take off(이륙)인데 이미 공중에 떠 있는 상태라면 이를 완료했다고 판단하고 두번째 명령부터 수행한다.
  • 자동모드를 수행중 조종기에서 다른 모드(Loiter 등)로 바꾸면 즉시 콘트롤을 할 수 있다. 이상태에서 다시 자동모드로 돌리면 맨처음 명령부터 다시 수행한다.
  • 미션 수행중에는 roll 과 pitch 명령은 무시한다. yaw의 명령은 조종기로 지정할 수 있다. (콥터 방향, 즉 카메라의 방향 수정가능) 단 다음 Waypoint로 가면 autopilot에서 다시 콘트롤한다.

Acro Mode(아크로 모드)

  • 아크로모드는 RC 스틱으로 회전 각속도를 조정함. 스틱을 놓으면 현재의 기울기 유지. 
  • Flips Rolls와 같은 곡예비행, 부드럽고 빠른 콘트롤이 필요한 FPV 등에 유용
  • throttle은 완전 매뉴얼. 기체가 기울어져도 보상을 하지 않음. throttle을 최소로 내리면 모터가 최저속도로.
  • 아크로 모드는 로칼 좌표계. 기체를 기준으로 r/p/y가 정해짐. 반면 스포츠 모드는 지구를 기준으로 정해짐
  • 가장 조종하기가 힘듦. 

Sport Mode(스포츠 모드)

  • 고도 고정 모드(Alt hold) + 비율 조정 안정화(rate controlled stabilize)
  • FPV를 날리거나, dolly shot 혹은 fly by 등의 기법으로 촬영할 때 유용하도록 개발됨. 기체를 특정한 각도로 설정하면 그것이 유지됨
  • 조종기로 roll, pitch, yaw로 회전률을 설정할 수 있음. 스틱을 놓아도 고도는 유지됨
  • 45도 이상 기울어지지는 않음
  • 고도에 대해서는 고도 고정모드와 동일. 따라서 Throttle 이 중앙에서 10% 범위내에 있으면 고도가 유지됨

Drift 모드(드리프트 모드)

  • 멀티콥터를 자동 coordinated turn 이 되는 비행기처럼 날릴 수 있음
  • Yaw 와 Pitch는 조종할 수 있으나, Roll은 AutoPilot이 자동으로 조종. Mode 2를 사용할 경우 하나의 스틱만으로 직관적으로 콘트롤 할 수 있음.
  • 평형모드(Stablize Mode)와 같이 throttle을 마음대로 조종가능.

Guided Mode(가이드 모드)

  • 전통적인 비행모드가 아님. 스위치에 할 수 없음.
  • 가이드 모드는 지상국(Mission Planner 등)과 Telemetry radio가 있어야 함.
  • Mission planner 지도에서 지점을 찍으면 그곳으로 이동함. 위치에 도착하면 hovering.
  • Follow me 모드도 가이드 모드를 사용함.
  • 좀 더 자세한 내용은 별도의 문서를 참고할 것


Circle Mode(원 모드)

  • 지정한 점을 중심으로 회전. 이때 기체 앞방향이 지정한 점을 향함.
  • CIRCLE_RADIUS로 지정할 수 있는데, 0으로 지정하면 그 지점에서 360도 회전함
  • roll 과 pitch 에 대해서는 콘트롤 불가. 높이 조정은 가능

Pos Hold Mode

  • AC3.2에서 새로 등장한 모드 
  • Loiter(위치 고정 모드)와 거의 비슷(위치/방향/고도가 일정하게 유지됨) 그러나 스틱을 조작하면 곧바로 기울기 각도로 반영되어 훨씬 자연스러운 느낌.
  • Loiter 모드는 수평이동 속도를 제어하는데, Pos Hold 모드는 기울기 각을 제어함


Land Mode (착륙 모드)

  • 10미터 까지는 일반 Alt Hold 모드 (WPNAV_SPEED_DN에서 지정한 속도로)에 따라 하강함.
  • 10미터 이하에서는 LAND_SPEED에 지정한 속도로 하강
  • 지면에 도달하면 자동으로 모터를 끄고 disarm. 

Brake Mode(브레이크 모드)

  • 브레이크 모드를 켜면 가능한 한 빨리 정지. GPS/나침반/무진동이 필요함. 
  • 콘트롤러를 조작할 수 없음. 다른 모드로 바꾸어야만 조작가능

Follow Me Mode(추적 모드)

  • 내가 움직이면 멀티콥터가 따라오게 함. telemetry radio 와 지상국이 필요. PC, Mac 등을 사용할 수도 있으나, 휴대폰이나 타블렛을 지상국으로 사용하는 게 편함
  • 필요한 장비
    • telemetry 가 달린 멀티콥터
    • 랩탑
    • GPS USB dongle. 

Simple and Super Simple Mode

  • 멀티콥터의 방향과 관계없이 조종자의 위치를 기준으로 조종. 조종에 익숙하지 않은 초보자나, 아주 멀리 있어 방향을 확인하기 힘든 경우에 유용
  • Simple 모드와 Super Simple 모드는 아크로 모드와 드리프트 모드를 제외하고 다른 모드와 함께 사용할 수 있음.
  • Simple Mode는 멀티콥터 이륙시 방향을 기준으로 전자나침반에 따라 이동함
  • Super Simple Mode는 이륙지점을 기준으로 (GPS 신호가 좋아야함). 


Posted by 푸른하늘 푸른하늘이

댓글을 달아 주세요