728x90

시스템 아키텍처

 이 책은 무인 비행체 제어와, 가이던스, 자율 비행을 학습할수 있도록 목표를 하고있고, 자율 및 준 자율비행에 필요한 소프트웨어 알고리즘에 초점을 맞추고 있습니다. 이 분야를 다루기 위해서 좌표계 변환, 항공역학, 오토파일럿 설계, 상태 공간, 경로 계획, 컴퓨터 비전 등 다양한 분야와 친숙해야하며, 이러한 주제들을 통틀어서 MAV(miniature air vehicle)에 적용하고자합니다.

 

 이 주제를 개발하려면 그림 1.1의 소프트웨어 아키택처를 떠올려봅시다. 무인 비행체는 6자유도 물리적 비행체로 6개의 제어 입력(엘리베이터, 에일러론, 러더, 스로틀)과 다른 요란들에 대해 응답으로 동작합니다. 고정익 비행체의 수학적 모델링을 이해하기는 복잡하여 2~5장 그리고 9장에서 다루고자 합니다. 우선 2장에서 좌표계와 좌표계간 변환을 다룰 것이고, MAV에 대한 사양들은 관성 좌표계를 기준으로 나타냅니다.

 

 반면에 대부분 센서 측정과 엑추에이터로 작용하는 힘과 토르크들은 동체 좌표계(body frame)을 기준으로 나타냅니다. 3장에서는 강체에 대한 기구학과 동역학적 운동방정식을 구하고, 4장에서는 고정익 비행체에 작용하는 항공역학적인 힘과 모멘트를 설명합니다. 5장에서는 3,4장에서 구한 6자유도, 12상태, 비선형 운동방정식들을 조합하기 시작할 것이나 시뮬레이션에서 정확하게 다루기에는 6자유도 모델은 너무 복잡합니다. 기체 제어기 설계와 분석과정을 저차 선형 모델로 쉽게 구할수 있습니다. 선형 모델은 트림이 낮은 상태를 나타내며 5장에서 전달 함수와 상태 공간 모델로 구할 것입니다.

 

 그림 1.1의 오토파일럿 블록은 롤 roll, 피치 pitch, 대기속도 airspeed, 고도 altitude, 방위각 course heading 등을 유지하는 저수준 제어 알고리즘이며, 6장에서 오토 파일럿 제어 설계를 위해 연속 폐루프 successive loop closure 기술을 살펴볼 것이다. 제어기는 중첩된 형태로 이루어지며 내부 루프는 롤과 피치각, 외부 루프에서 대기속도와 고도, 방위를 유지시킵니다.

 

 고수준 제어를 하려면 가속도계와 자이로, 압력 센서, 지자계, gps 등 센서를 필터링을 하여 구한 정확한 상태 값이 필요한데, 이 센서에 대한 설명과 수학적 모델링은 7장에서 다룬다. 이때 소형 무인 비행체의 모든 상태들을 구하기는 힘들기 때문에 상태 추정이 매우 중요한 역활을 하며, MAV에 이용하는 상태 추정 기술 설명은 8장에서 다루고자 합니다.

 

 오토 파일럿과 상태 추정 기술로 구한 완전한 비행 동역학 모델은 고차원이고 매우 복잡하며 비선형 시스템이 됩니다. 이 완전한 시스템은 고 래밸의 가이드 알고리즘을 이용하기에는 너무 복잡하여 9장에서는 시스템의 폐루프 동작을 나타내는 저 차수 비선형 방정식 구할 것이고, 이 모델로 차후 가이드 알고리즘을 구현하고자 합니다.

 

 MAV에서 중요한 요소중 하나로 바람인데, 대지 기준 수백 피트 상공 above ground level AGL에서 바람 속도 wind speed는 항상 10mph를 넘으므로 대기 속도 airspeed는 20~40 mph 기체에 작용하게 됩니다. MAV는 바람에 따라 효율적으로 제어를 해야하지만 로봇 공학에서 이용하는 기존의 궤적 추종 trajactory tracking 방법들 잘 동작하지 않습니다. 변화하는 바람의 영향으로 대지 속도가 특정 시간에 어떻게 변하는지 알기 어렵기 때문입니다. 대신 경로 추종 path-following 방법은 비행 시 효율 적이며, 10장에서 이 알고리즘과 그림 1.1의 경로 추종 블록의 성능을 봅시다. 여기서 직선 경로와 원형 궤적을 주의 깊게 다룹니다.

 

 그림 1.1에서 경로 매니저 path manager는 일련의 웨이 포인트 설정들을 직선과 원형 궤적으로 변환하는 상태 머신은 경로 계획기가 장애물을 지나는 일련의 직선 경로나 듀빈스 경로를 만들 수 있도록 경로 계획 문제를 단순화 시키는데 사용하게 됩니다.  11장에서 경로 매니저, 12장에서 경로 계획기를 설명할 것이고, 경로 계획에서 두 종류의 문제를 고려해야 되는데, 첫번째 문제는 점대점 알고리즘으로 시작 지점에서 끝 지점까지 제어 중에 장애물들을 회피하기 위한 방법이고, 두번째 문제는 가본적 없는 지역을 다닐수 있도록 목표하는 검색 알고리즘이 있습니다.

그림 1.1 시스템 아키텍처. 경로 계획기 - 직선이나 장애물을 통과하는 듀빈스 경로 생성, 경로 매니저 - 웨이 포인트를 따라 비행하도록 궤적이나 직선 경로를 추종하도록 전환. 경로 추종 - 저수준 오토파일럿 제어 명령 생성.

 

 MAV를 다루는 대다수의 어플리케이션들은 전자/적외선 카메라를 사용하는데, 이 카메라는 시각 정보를 사용자에게 전달하는걸 목표로 하고 있습니다. MAV 성능은 제한되있어 카메라를 항행과 가이드, 제어에 사용해야 됩니다. 13장에서는 카메라를 이용해 영상 기반 위치 추정과 이착륙 관련 사용법들을 다룰 것입니다. 지오로케이션 geolocation은 영상과 센서 데이터로 좌표계상 위치를 추정하는 방법이며, 영상 기반 이착륙은 영상으로 목표지까지 안내하는데 사용합니다. 

 

 13장에서선 그림 1.2의 소프트웨어 아키텍처를 사용할 것인데 이때 경로 계획기 블록이 영상 기반 안내기로 바뀌었습니다. 영상 기반 안내기는 경로 계획기랑 동일한 역할을 하며 이 아키텍처의 주요 특징이 됩니다.

 

그림 1.2 영상기반 비행, 안내, 제어 시스템 아키텍처. 카메라가 추가되었으며 경로 계획기가 영상 기반 안내 블록으로 바뀌었습니다.

 

 

모델 설계하기

 여기서 전반적으로 다루는 설계 철학은 그림 1.3에서 보여줍니다. 무인 비행체는 그림 1.3의 물리적 시스템과 액추에이터(제어 플랩과 프로펠러), 센서(IMU, GPS, 카메라 등)로 동작하며, 설계의 첫번째 단계는 비선형 미분 방정식으로 물리적 시스템을 설계해야 합니다. 여기서 추정과 단순화 과정이 필요하며 이 물리적 시스템의 중요한 특성들을 수학적으로 표현하여야 합니다.

 

 여기서 물리적 시스템 모델은 강체의 기구학과 동역학(3장), 항공역학적 힘과 모멘트(4장), 센서(7장)들을 포함하며, 모델의 결과물은 그림 1.3에서 시뮬레이션 모델이라 불리며 물리적 시스템의 정밀한 컴퓨터 시뮬레이션으로 이용됩니다. 그러나 시뮬레이션 모델은 효율적으로 설계하기 위해 추정하고 단순화 한 것일 뿐이며 물리적 시스템에서 정상적으로 동작한다고 생각해서는 안됩니다.

 

 시뮬레이션 모델은 보통 비선형이며, 고차수 high order이고, 너무 수학적으로 복잡해서 제어기 설계에 좋지 않습니다. 그래서 사용하려면 시뮬레이션 모델을 단순화, 선형화하여 저차 lower order 모델로 만들어야 합니다. 물리적 시스템에서는 설계 과정에 따라 다양한 모델들이 존재할 수 있으며, 저수준 제어기와 고수준 안내기를 같이 사용할 수 도 있습니다.

 

 5장에서는 종방향(피치와 클라임빙) 운동과 횡방향(롤링과 해딩) 운동을 분해하고 각각의 동작에 대해 다른 모델을 만들 것입니다. 5장에서 구한 선형화 모델은 6장에서 사용하여 대기속도와 고도, 방위각 제어에 사용하는 저수준 오토파일럿 루프를 개발하는데 사용할 것이고, 8장에서 센서 값이 오토파일럿 루프에서 어떻게 상태 추정을 하게 되는지 살펴볼것입니다.

 

 시스템의 물리학적 동작과, 저수준 오토파일럿, 상태추정 루틴을 나타내는 수학적 방정식은 너무 복잡해서 고수준 안내기를 설계하는데 유용하지 않습니다. 그래서 9장에서 대기속도와, 고도, 방위각을 입력으로 하고, 관성 위치와 방향을 출력으로 하는 시스템의 폐루프 동작을 나타내는 비선형 모델을 구하고, 9장에서 개발한 모델로 10~13장 과정을 거치며 안내 방법들을 개발하고자 합니다.

 

 그림 1.3을 보면 디자인 모델은 안내기와 제어 시스템 설계하는데 사용되며, 고 정밀 시뮬레이션 모델과 비교해서 테스트를 하게 됩니다. 이후 물리적인 시스템을 구현하고 테스트와 디버깅 과정을 거치며 시뮬레이션 모델이 물리적 시스템에 맞게 바뀔수도 있습니다.

그림 1.3 설계 과정.  물리 법칙을 이용해서 물리 시스템을 설계하며, 이걸로 시뮬레이션 모델을 만듬. 시뮬레이션 모델은 단순화 하여 설계 모델을 만들고, 설계 모델로 제어기 모델을 만들어 시뮬레이션 상에서 시험과 디버깅 과정을 거침 이후 실제 물리 시스템으루 구현.

 

 

 

300x250

+ Recent posts