MATLAB 및 Simulink에서 유도 시스템 설계하기
이 예제에서는 미사일 오토파일럿 설계에 적용되는 고급 제어 방법의 활용에 관해 발표된 여러 논문에 제시된 미사일 기체 모델을 사용하는 방법을 보여줍니다. [1], [2], [3]을 참조하십시오. 이 모델은 10,000ft(3,050m)~60,000ft(18,290m) 사이의 고도에서 마하 2~마하 4 사이의 속도로 이동하며, 일반적인 받음각(angle of attack)이 +/-20도 사이인 꼬리 제어 미사일을 나타냅니다.
기체 동특성 모델
이 모델의 핵심 요소는 기체의 강체 동특성을 비선형적으로 표현하는 것입니다. 미사일 바디에 작용하는 공기력과 모멘트는 붙임각(incidence)과 마하수의 비선형 함수인 계수에서 생성됩니다.

Simulink®와 Aerospace Blockset™을 사용하여 모델을 만듭니다. Aerospace Blockset은 기체 구성과 상관없이 모든 모델에 공통으로 사용되는 참조 컴포넌트(예: 대기 모델)를 제공합니다.
모델을 엽니다.

Simulink에서 기체 표현하기
기체 모델은 가속도 요구량 오토파일럿을 통해 제어되는 네 가지 주요 서브시스템으로 구성되어 있습니다. Atmosphere & Incidence, Airspeed Computation 서브시스템은 고도 변화에 따른 대기 상태의 변화를 계산합니다. Fin Actuator 서브시스템과 Sensors 서브시스템은 오토파일럿을 기체에 결합합니다. Aerodynamics & Equations of Motion 서브시스템은 미사일 바디에 작용하는 힘과 모멘트의 크기를 계산하고 운동 방정식을 적분합니다.

국제 표준 대기 모델
Atmosphere & Incidence Airspeed Computation 서브시스템은 국제 표준 대기(ISA)를 근사하며, 두 영역으로 나뉩니다. 대류권 영역은 해수면부터 11km 사이이며 고도 변화에 따라 선형적으로 온도가 감소합니다. 하층 성층권 영역은 11km부터 20km 사이이며 일정한 온도를 유지합니다.

힘과 모멘트에 대한 공기역학 계수
Aerodynamics & Equations of Motion 서브시스템은 바디 좌표축에서 미사일에 작용하는 힘과 모멘트를 생성하고, 기체의 선형 운동과 각운동을 정의하는 운동 방정식을 적분합니다.

공기역학 계수는 데이터셋에 저장되어 있습니다. 시뮬레이션 동안, 현재 동작 조건에서의 값은 2-D Lookup Table 블록을 사용한 보간으로 결정됩니다.

고전적 3루프 오토파일럿 설계
미사일 오토파일럿은 미사일 바디에 대한 법선 가속도를 제어합니다. 이 예제에서 오토파일럿 구조는 무게 중심 앞에 배치된 가속도계의 측정값을 사용하는 3루프 설계입니다. 속도 자이로가 추가적인 감쇠를 제공합니다. 제어기 이득은 붙임각과 마하수에 따라 스케줄링되며, 10,000ft 고도에서 강인한 성능을 보이도록 조정됩니다.
고전적 설계 기법을 사용하여 오토파일럿을 설계하려면, 다양한 트림 비행 조건에서 기체 피치 동특성의 선형 모델을 도출해야 합니다. MATLAB®은 트림 조건을 결정하고, 비선형 Simulink 모델에서 직접 선형 상태공간 모델을 도출할 수 있습니다. 이 방법은 시간을 절약하고 모델 검증에 도움이 됩니다. MATLAB Control System Toolbox™와 Simulink® Control Design™에서 제공하는 함수를 사용하면 기체의 개루프 주파수(또는 시간) 응답을 시각화할 수 있습니다. 기체 모델을 트리밍하고 선형화하는 방법을 보려면 Airframe Trim and Linearize 항목을 참조하십시오.

기체 주파수 응답
오토파일럿 설계는 예상 비행 범위에 걸쳐 다양한 비행 조건에서 도출된 여러 선형 기체 모델에서 수행됩니다. 비선형 모델에서 오토파일럿을 구현하려면, 오토파일럿 이득을 2차원 룩업 테이블에 저장하고 Fin 요구량이 최대 제한을 초과할 때 적분기 와인드업을 방지하기 위해 안티와인드업 이득을 포함해야 합니다. 그런 다음 비선형 Simulink 모델에서 오토파일럿을 테스트하여, 액추에이터 Fin 및 속도 제한과 같은 비선형성이 존재하고, 비행 조건 변화에 따라 이득이 동적으로 변하는 상황에서 만족스러운 성능을 보여주는지 확인할 수 있습니다. Autopilot 서브시스템은 이득 스케줄을 구현합니다.
호밍 유도 루프
호밍 유도 루프(homing guidance loop)에는 미사일과 타깃 사이의 상대 운동 측정값을 반환하는 Seeker/Tracker 서브시스템이 포함되어 있습니다. Guidance 서브시스템은 법선 가속도 요구량을 생성하여 오토파일럿으로 전달합니다. 오토파일럿은 전체 호밍 유도 시스템 내의 내부 루프의 일부가 됩니다. 서로 다른 유도 형태에 대한 정보와 유도 루프 성능을 정량화하는 데 사용되는 분석 기법에 대한 배경 정보는 [4]를 참조하십시오.

Guidance 서브시스템
Guidance 서브시스템은 폐루프 추적 중에 요구량을 생성하고 타깃 위치를 찾기 위한 초기 탐색을 수행합니다. Stateflow® 차트는 이러한 서로 다른 동작 모드 간의 전환을 제어합니다. 모드 간 전환은 Simulink에서 또는 Stateflow 차트 내부에서 생성된 이벤트에 의해 트리거됩니다. Mode 값을 변경하여 Simulink 모델의 동작을 제어할 수 있습니다. 이 변수는 서로 다른 제어 요구량 간에 전환하는 데 사용됩니다. 타깃 탐색 중에는, Stateflow 차트가 탐색기(seeker) 짐벌(Sigma)에 요구량을 전송하여 추적기(tracker)를 직접 제어합니다. 추적기는 타깃이 탐색기의 빔폭 내에 들어오면 타깃 포착을 표시합니다(Acquire). 짧은 지연 후 폐루프 유도가 시작됩니다. 시스템은 Stateflow 기능을 활용하여 모든 동작 모드, 예를 들어 포착했던 타깃을 놓치거나 타깃 탐색 중 타깃을 포착하지 못했을 때 수행해야 하는 동작 등을 빠르게 정의할 수 있습니다.

비례 항법 유도
탐색기가 타깃을 포착하면, 비례 항법 유도(PNG: Proportional Navigation Guidance) 법칙을 사용하여 미사일이 명중할 때까지 유도합니다. 이러한 형태의 유도 법칙은 1950년대부터 유도 미사일에 사용되어 왔으며 레이다, 적외선 또는 텔레비전 유도 미사일에 적용될 수 있습니다. 항법 법칙에는 다음과 같은 데이터가 필요합니다.
미사일과 타깃 간의 접근 속도 측정값. 이 값은 레이다 유도 미사일의 도플러 추적 장치를 사용하여 얻을 수 있습니다.
관성 시선각(sightline angle) 변화율의 추정값

Seeker/Tracker 서브시스템
Seeker/Tracker 서브시스템은 탐색기 짐벌을 구동하여 탐색기 접시를 타깃에 맞춰 정렬하고 유도 법칙에 시선각 변화율의 추정값을 제공합니다. 추적기 루프 시정수 tors는 0.05초로 설정되어 있으며, 응답 속도를 최대화하면서도 잡음 전파를 허용 가능한 수준으로 유지하기 위해 절충하는 값을 나타냅니다. 안정화 루프는 바디 회전 속도를 보정합니다. 이득 Ks는 루프 교차 주파수로, 안정화용 속도 자이로의 대역폭 제한 내에서 가능한 한 높게 설정됩니다. 시선각 변화율 추정값은 안정화용 속도 자이로로 측정된 접시 각도 변화율과 수신기로 측정된 각도 추적 오차(e) 변화율 추정값의 합을 필터링한 값입니다. 이 예제에서 추정기 필터의 대역폭은 오토파일럿 대역폭의 절반으로 설정되어 있습니다.

레이돔 수차
레이다 유도 미사일의 경우, 일반적으로 모델링되는 기생 피드백 효과는 레이돔 수차입니다. 레이돔 수차(radome aberration)는 탐색기 위의 보호 덮개 형태로 인해 반사 신호가 왜곡되어 타깃에 대한 지향각을 잘못 읽을 때 발생합니다. 일반적으로 왜곡의 양은 현재 짐벌 각도의 비선형 함수입니다. 그러나 이 모델은 이름이 Radome Aberration인 Gain 블록을 사용하여 짐벌 각도와 왜곡 크기 사이의 선형 관계를 근사합니다. 또한 법선 가속도에 대한 속도 자이로의 민감도와 같은 다른 기생 효과를 모델링하여 타깃 추적기와 추정기 필터의 강인성을 테스트할 수 있습니다.

유도 시뮬레이션 실행
이제 전체 시스템의 성능을 테스트할 수 있습니다. 타깃은 초기 미사일 방향과 반대되는 경로로 328m/s의 등속도로 이동하며, 초기 미사일 위치에서 500m 상공에 있다고 정의됩니다. 시뮬레이션 결과를 보면 교전 시작 후 0.69초에 포착이 이루어지며, 0.89초 후에 폐루프 유도가 시작됩니다. 타깃에 대한 명중은 3.46초에 발생하며, 최근접 접근 지점에서 남은 거리는 0.265m입니다.
aero_guid_plot.m 스크립트는 성능 분석을 실행합니다.




Animation 블록은 시뮬레이션에 대한 시각적 참조를 제공합니다.

참고 문헌
[1] "Bennani, Samir, Dehlia M. C. Willemsen, and Cartsen W. Scherer. "Robust LPV Control with Bounded Parameter Rates." AIAA-97-3641 (August 1997). https://doi.org/10.2514/6.1997-3641.
[2] Mracek, Curtis P., and James R. Cloutier. "Full Envelope Missile Longitudinal Autopilot Design Using the State-Dependent Riccati Equation Method." AIAA-97-3767 (December 1994). https://doi.org/10.2514/6.1997-3767.
[3] Shamma, Jeff S., and James R. Cloutier. "Gain-Scheduled Missile Autopilot Design Using Linear Parameter Varying Transformations.” Journal of Guidance, Control, and Dynamics 16, no. 2 (March 1993): 256–63. https://doi.org/10.2514/3.20997.
[4] Ching-Fang Lin. Modern Navigation, Guidance, and Control Processing. Vol. 2. Englewood Cliffs, NJ: Prentice Hall, 1991.
참고 항목
도움말 항목
- Aerospace Blockset
- Create Aerospace Models (Aerospace Blockset)