본문 바로가기

DCM16

정적 자세결정: QUEST 1978년 HEAO-B(High Energy Astronomy Observatory)의 자세 추정을 계산하는 데 Davenport의 q-방법을 사용했다. 그러나 당시의 컴퓨터 성능으로는 1년 후에 발사된 MAGSAT에서 요구된 보다 빈번한 자세 계산을 감당할 수는 없었다고 한다. QUEST(QUaternion Estimator) 알고리즘은 이러한 요구에 부응하기 위해 고안되었으며, Wahba 의 자세결정 문제를 해결하기 위한 알고리즘으로 널리 사용되게 되었다. QUEST는 Davenport의 q-방법과 마찬가지로 행렬 \(K\) 의 고유값을 찾아 Wahba의 문제를 푼다(https://pasus.tistory.com/303). 그러나 QUEST는 고유값을 계산할 때 Newton-Raphson 반복법을 사.. 2023. 11. 1.
정적 자세결정: Davenport의 q-방법 앞서 살펴본 TRIAD는 두 개의 측정 단위벡터를 이용하여 우주비행체의 자세를 결정하였다 (https://pasus.tistory.com/302). 만약 두 개 이상의 단위벡터를 측정할 수 있다면 모든 측정 벡터를 이용할 수 있도록 TRIAD 방법을 개선해야 할 것이다. 예를 들면 많은 항성을 동시에 추적할 수 있는 별센서를 사용한다면 다수의 단위벡터가 측정된다. Wahba는 센서의 불확실성으로 인해 발생하는 오류를 최소화하는 방식으로 다수의 측정 단위벡터를 처리하는 방법에 대한 문제를 정립했다. \(n\) 개의 측정 단위벡터를 \(\hat{s}_k, \ k=1, ..., n\) 이라고 하자. 그리고 이 벡터를 기준좌표계 \(\{a\}\) 와 동체좌표계 \(\{b\}\) 로 표현한 벡터를 각각 \(\ma.. 2023. 10. 22.
정적 자세결정 (Static attitude determination): TRIAD 유도항법제어(GNC, guidance, navigation, and control) 분야에서 자세(attitude)란 기준좌표계(reference frame)를 기준으로 3차원 공간에서 항공기 또는 우주비행체 등 운동체에 부착된 동체좌표계(body frame)가 어떤 방향으로 정렬되어 있는 지를 말한다. 자세를 표현하기 위한 방법으로는 오일러각(Euler angles), 방향코사인행렬(DCM, direction cosine matrix), 쿼터니언, 로드리게스 파라미터 등이 있다. 자세를 표현한다 함은 기본적으로 기준좌표계가 동체좌표계와 일치하려면 기준좌표계의 어느 축을 중심으로 얼마만큼 회전해야 하는 지를 나타낸다고 보면 된다. 센서의 측정값으로부터 자세를 계산해야 하는데, 이에 관련된 용어가 두 가지.. 2023. 10. 19.
궤도요소 (COE)로 부터 위치 및 속도벡터 계산 우주비행체의 위치벡터 및 속도벡터를 궤도요소(COE, classical orbital elements)로 변환할 수 있었다 (https://pasus.tistory.com/287). 이번에는 이와 반대로 궤도요소를 위치벡터와 속도벡터로 변환하는 방법에 대해서 알아보기로 하자. 시간 \(t=t_0\) 에서 주어진 궤도요소 \((a, \ e, \ i, \ \Omega, \ \omega, \ \theta (t_0 ))\) 에서 위치벡터 \(\vec{r}\) 과 속도벡터 \(\vec{v}\) 를 구하는 과정은 두 단계로 나누어진다. 궤도중심좌표계(perifocal frame)에서 위치벡터와 속도벡터를 구하는 단계와 좌표변환을 통하여 ECI좌표계로 이들 벡터를 변환하는 단계이다. 먼저 궤도중심좌표계에서 위치벡터와.. 2023. 7. 31.
[PX4] 멀티콥터 자세 명령 PX4의 위치 제어기에서는 원하는 궤적(desired trajectory) 정보를 이용하여 추력 벡터를 계산한다. 관성 좌표계 \(\{i\}\) 로 표현된 추력 벡터는 별도로 주어지는 방위각(azimuth angle) 명령 \(\psi_{cmd}\) 와 함께 자세 명령(attitude command) 계산 모듈로 보내져서 쿼터니언 \(\mathbf{q}_{cmd}\) 로 파라미터화된 자세 명령을 생성하게 된다. 쿼터니언 \(\mathbf{q}_{cmd}\) 를 계산하기 위해서는 먼저 관성 좌표계 \(\{i\}\) 에 대해서 동체 좌표계 \(\{b\}\) 가 취해야 할 목표 좌표계를 구해야 하는데 이 좌표계를 \(\{d\}\) 라고 하자. 그러면 \(\mathbf{q}_{cmd}=\mathbf{q}_d^i.. 2023. 2. 25.
좌표변환과 관성행렬 (Inertia Matrix) 관성 다이아딕(inertia dyadic)은 특정 좌표계와 무관하지만 관성 다이아딕을 특정 좌표계로 표현한 관성행렬(inertia matrix)은 좌표계에 따라 달라진다. 어떤 강체의 질량중심 \(G\) 를 원점으로 하고 강체에 고정된 좌표계 \(\{a\}\) 와 좌표계 \(\{b\}\) 가 있다고 하자. 질량중심 \(G\) 에 관한 관성 다이아딕 \(\bar{I}_G\) 를 좌표계 \(\{a\}\) 와 좌표계 \(\{b\}\) 로 각각 표현하면 다음과 같다 (https://pasus.tistory.com/191). \[ \begin{align} \bar{I}_G &= \sum_{i=1}^3 \sum_{j=1}^3 I_{ij}^a \ \hat{a}_i \hat{a}_j \tag{1} \\ \\ &= \s.. 2023. 2. 17.
오일러의 회전 정리 (Euler’s Rotation Theorem) 오일러각 좌표변환 방법에서 알아본 회전축은 좌표계의 \(x\) 축, \(y\) 축, \(z\) 축이었다. 하지만 좌표계를 구성하는 좌표축만이 아니라 임의의 축, 즉 임의의 방향을 중심으로 좌표계를 회전시킬 수도 있다. 단위벡터는 크기가 \(1\) 인 벡터이기 때문에 방향을 표시하는데 자주 쓰인다. 여기서도 회전축 방향을 정하는데 단위벡터를 이용하기로 하고 기호로 \(\hat{p}\) 으로 표시하기로 한다. 좌표계 \(\{a\}\) 를 회전축 \(\hat{p}\) 축을 중심으로 \(\beta\) 만큼 회전시키면 새로운 좌표계로 변환되는데 이 좌표계를 \(\{b\}\) 라고 하자. 그러면 그림에서 보듯이 좌표계 \(\{a\}\) 의 좌표축과 회전축 사이의 각도는 좌표계 \(\{b\}\) 의 좌표축과 회전축 .. 2022. 3. 22.
라그랑지 방정식을 이용한 강체 운동방정식 유도 강체(rigid body)의 다양한 지점에 가해지는 모든 외력(external force)은 질량중심(center of mass)에 가해지는 총 외력으로 합산할 수 있고 질량중심은 마치 강체의 모든 질량이 그 중심에 집중되어 있는 질점(point mass)처럼 운동한다. 또한 외력은 강체의 다양한 지점에서 작용하기 때문에 질량중심에 대해서 모멘트를 만들고 이 모멘트는 질량중심에 대한 회전운동을 생성한다. 이와 같이 강체의 운동은 질량중심의 병진운동과 질량중심에 대한 회전운동으로 분리할 수 있다. 이제 강체 운동방정식을 라그랑지 방정식(Lagrange's Equation)을 이용하여 유도해 보도록 하겠다. 강체의 운동에너지도 질량중심의 병진 운동에너지와 질량중심에 대한 회전 운동에너지의 합으로 표현할 수 .. 2022. 2. 14.
NED 좌표계와 LLH 좌표계간의 속도 변환식 미사일의 속도 \(\vec{V}\) 는 ECEF 기준, 즉 지면 기준의 상대적인 속도이므로 다음과 같다. \[ \vec{V} = \frac{^ed\vec{r}}{dt} \tag{1} \] 여기서 \(\vec{r}\) 는 지구 중심에서 미사일까지의 위치벡터다. 한편 미사일의 질량 중심점을 원점으로 하고 속도 방향을 x축, 지표면과 수평인 평면에서 속도 방향의 오른쪽 방향을 y축으로 하는 좌표계를 미사일 운동 좌표계 \(\{d\}\) 로 정의하므로 속도벡터를 좌표계 \(\{d\}\) 로 표시하면 다음과 같다. \[ V^d= \begin{bmatrix} V \\ 0 \\ 0 \end{bmatrix} \tag{2} \] 여기서 \(V\) 는 \(\vec{V}\) 의 크기다. NED(North-East-Down).. 2022. 1. 9.
ECEF 좌표계와 LLH 좌표계 지구중심지구고정 좌표계(ECEF, earth-centered earth-fixed frame)는 지구의 중심에 원점이 위치하며 지구에 고정되어 있어서 지구와 함께 자전하는 좌표계이다. 지구와 함께 자전한다는 점에서 ECI 좌표계와는 다르다. 기호로는 {e}로 표시한다. 좌표계의 \(\hat{e}_1-\hat{e}_2\) 평면은 지구의 적도면에 위치한다. \(\hat{e}_3\) 축은 ECI 좌표계의 \(\hat{i}_3\) 와 같은 방향으로 지구의 자전축 방향이며 \(\hat{e}_1\) 축은 지구 적도와 그리니치(Greenwich) 자오선이 만나는 점을 향한다. \(\hat{e}_2\) 축은 오른손 법칙에 의해 정해진다. ECI 좌표계에 대한 ECEF 좌표계의 각속도 벡터는 \(^i \vec{\omeg.. 2021. 12. 30.