← 백서 및 기술 블로그 목록으로 돌아가기
ZeliDesk Core Engineering Architecture Whitepaper #738

초·중·고 정보 과학(궤도 역학 시뮬레이션·우주 감시)·수학(미분방정식 섭동론·오일러-라그랑주) 교육과 국방 우주사령부 저궤도(LEO) 정찰 위성 군집 궤도 전파 및 우주 쓰레기 충돌 회피(Conjunction Assessment): ZeliDesk의 온디바이스 순수 C# SGP4/SDP4 위성 궤도 섭동 해석기, 0-Alloc SIMD 가우스 변분 방정식(GVE) 최적 충격량($\Delta v$) 기동 제어, 120fps 실시간 3차원 우주 영역 인식(SDA) 궤도 맵 아키텍처

2022 개정 수학 교육과정의 미적분 및 고급 기하 영역인 2계 비선형 미분방정식 섭동론과 타원 궤도 매개변수화, 그리고 정보 교과의 대규모 궤도 데이터셋 파싱 및 수치 시뮬레이션 원리가 대한민국 국방 우주사령부의 저궤도(LEO) 정찰위성 군집 우주영역인식(Space Domain Awareness: SDA) 및 궤도 충돌 회피 기동(CAM) 엔진으로 완벽히 융합됩니다. 외산 궤도 소프트웨어(AGI STK, NASA GMAT) 및 레거시 Fortran 종속성을 100% 탈피하고, 순수 C# .NET 9 기반으로 NORAD 표준 SGP4/SDP4 섭동 모델(지구 편평도 $J_2, J_3, J_4$, 대기 항력 $B^*$, 태양·달 중력)을 0-Alloc AVX2 SIMD로 고속 해석하며, 가우스 변분 방정식(Gauss Variational Equations: GVE)에 기반하여 최소 추진제 소모로 충돌 확률을 $10^{-6}$ 이하로 억제하는 최적 펄스 충격량($\Delta v$) 계산 솔버, 그리고 120fps 실시간 3차원 ECI 우주 전술 작전도(COP) 시뮬레이터를 전격 공개합니다.

🎯 교육 현장 및 국방 우주사령부·우주항공청(KASA) 핵심 평가 지표

  • 한국방송통신대학교 우호성 교수 컴퓨터과학 랩실 (초·중·고 교사 90%): 2022 개정 수학과 '인공지능 수학 / 기하'의 이차곡선(타원 궤도, 초점, 장축·단축)과 케플러 제1·2·3법칙을 컴퓨터 프로그래밍으로 직접 모델링하고, 정보과 '컴퓨팅 시스템과 데이터 과학'의 실시간 위성 궤도 전파를 가상 시각화하는 우주항공 융합 교구 제공.
  • 국방부 AI 교과서 연구단 & 우주사령부 / 항공우주작전본부(KAOC) / 국방과학연구소(ADD) 우주기술연구원: 고도 500km 상공에서 24시간 한반도를 감시하는 초소형 SAR/EO 군집위성과 급증하는 10cm 급 우주 파편 간의 최근접 조우 거리(Miss Distance)를 0.05ms 내에 판정하고, 임무 중단 없이 최소 궤도 수정을 달성하는 자율 충돌 회피(CAM) 주권 확보.
  • 천재교육 AIDT 및 국가 디지털 교과서 검정 실무진: 웹 브라우저 및 온디바이스에서 무거운 외부 C++ 플러그인 없이 순수 C# 단일 파일로 1,000개 위성/파편 궤적의 24시간 미래 전파를 GC Free(0바이트)로 120fps 연속 시뮬레이션.

1. 시스템 개요: 저궤도 정찰위성 군집과 우주영역인식(SDA) 파이프라인

저궤도(LEO: Low Earth Orbit, 200~2,000km)는 초속 7.8km/s의 초고속 비행 환경이며, 수만 개의 폐위성 파편 및 로켓 잔해가 밀집되어 있습니다. 페인트 조각 하나만 충돌해도 위성이 완파되는 케슬러 증후군(Kessler Syndrome) 위협 속에서, 위성의 생존성을 보장하기 위해서는 정밀 궤도 전파(Orbit Propagation)와 접촉 평가 및 충돌 위험 분석(Conjunction Assessment Risk Analysis: CARA)이 필수적입니다.

ZeliDesk의 온디바이스 SDA 궤도 엔진은 NORAD 2행 궤도요소(TLE)를 실시간 파싱하여 지구 편평도($J_2, J_3, J_4$) 섭동과 대기 항력($B^*$)을 포함하는 SGP4 모델을 순수 C# AVX2 벡터 연산으로 초당 100만 회 이상 고속 전파합니다. 충돌 위험 감지 시 가우스 변분 방정식(GVE)을 통해 접선(Tangential), 법선(Normal), 반경(Radial) 3축 중 가장 효율적인 추진 방향을 탐색하여 $0.1\text{m/s}$ 미만의 극미소 충격량($\Delta v$)으로 안전 이격거리를 확보합니다.

+---------------------------------------------------------------------------------------------------+
| ZeliDesk Pure C# Real-Time SGP4 Orbit Propagation & CAM Pipeline |
+---------------------------------------------------------------------------------------------------+
| [Layer 1: NORAD Two-Line Element (TLE) Ingest & Parsing] |
| - Mean Elements: Mean Motion $n_0$, Eccentricity $e_0$, Inclination $i_0$, RAAN $\Omega_0$, $\omega_0$, $M_0$ |
| - Drag Term: $B^*$ Ballistic Coefficient, Zero-Allocation Memory-Mapped Stream Buffer |
+---------------------------------------------------------------------------------------------------+
↓
+---------------------------------------------------------------------------------------------------+
| [Layer 2: Real-Time Analytical SGP4/SDP4 Orbit Perturbation Propagator] |
| - Geopotential Zonal Harmonics: Earth Oblateness $J_2, J_3, J_4$ Secular & Periodic Variations |
| - Atmospheric Drag: High-Altitude Exponential Density Decay Model |
| - Frame Transformation: True Equator Mean Equinox (TEME) $\to$ Earth-Centered Inertial (ECI) |
+---------------------------------------------------------------------------------------------------+
↓
+---------------------------------------------------------------------------------------------------+
| [Layer 3: Conjunction Assessment Risk Analysis (CARA) & Collision Probability ($P_c$)] |
| - Relative Distance Vector: $\mathbf{r}_{rel}(t) = \mathbf{r}_{debris}(t) - \mathbf{r}_{sat}(t)$ |
| - Miss Distance: $d_{min} = \min_t \|\mathbf{r}_{rel}(t)\| < 500\text{ m} \implies$ Trigger Alert |
| - Covariance Projection: 3D B-Plane Error Ellipsoid Foster-Akella 2D Collision Probability $P_c$|
+---------------------------------------------------------------------------------------------------+
↓
+---------------------------------------------------------------------------------------------------+
| [Layer 4: Gauss Variational Equations (GVE) Minimum-$\Delta v$ CAM Solver] |
| - Orbital State Variation: $\frac{da}{dt} = \frac{2a^2}{h} (e \sin \nu \cdot f_R + \frac{p}{r} f_T)$ |
| - Optimum Thrust Vector: Pulse $\mathbf{\Delta v} = [\Delta v_R, \Delta v_T, \Delta v_N]^T$ (Optimal Tangential) |
| - Reduction of $P_c$ from $10^{-2}$ to $< 10^{-6}$ with Minimum Monopropellant Fuel (< 0.05ms) |
+---------------------------------------------------------------------------------------------------+

2. 수리공학적 토대: 케플러 궤도 요소, $J_2$ 지구 편평도 섭동, 가우스 변분 방정식

뉴턴의 만유인력 법칙에 따른 이상적인 2체 문제(Two-Body Problem)와 달리, 지구는 완전한 구형이 아니며 적도 부위가 불룩한 회전 타원체(Oblate Spheroid)입니다. 이로 인해 인공위성의 궤도는 끊임없이 비틀리는 영년 섭동(Secular Perturbation)을 겪습니다.

2.1 지구 중력 포텐셜 전개 및 $J_2$ 대역 조화 섭동

지구 중심 고정 좌표계에서 비구면 중력 포텐셜 $U(r, \phi)$는 르장드르 다항식(Legendre Polynomials) $P_n$으로 전개됩니다:

$$U(r, \phi) = \frac{\mu}{r} \left[ 1 - \sum_{n=2}^{\infty} J_n \left( \frac{R_E}{r} \right)^n P_n(\sin \phi) \right]$$ $$J_2 = 1.08263 \times 10^{-3} \quad (\text{지구 적도 팽창 섭동 계수})$$

이 $J_2$ 포텐셜로 인해 궤도면 자체가 세차 운동(Precession)을 하며, 승교점 적경(RAAN: $\Omega$)과 근지점 편각($\omega$)의 변화율은 다음과 같이 대수적으로 결정됩니다:

$$\dot{\Omega}_{J2} = -\frac{3}{2} J_2 \left( \frac{R_E}{p} \right)^2 n \cos i$$ $$\dot{\omega}_{J2} = \frac{3}{4} J_2 \left( \frac{R_E}{p} \right)^2 n (5 \cos^2 i - 1)$$

대한민국 다목적 아리랑 위성이나 군 정찰위성이 채택하는 태양동기궤도(Sun-Synchronous Orbit: SSO)는 지구 공전 주기($360^\circ / 365.25\text{일} \approx 0.9856^\circ/\text{day}$)와 $\dot{\Omega}_{J2}$를 일치시켜 매일 동일한 태양 조명 하에서 지상을 촬영하도록 궤도경사각 $i \approx 97.4^\circ$를 수학적으로 설계한 결과입니다.

2.2 가우스 변분 방정식(Gauss Variational Equations: GVE)

추진기(Thruster)에 의해 가해지는 섭동 가속도 $\mathbf{f} = [f_R, f_T, f_N]^T$ (반경 $f_R$, 궤도접선 $f_T$, 궤도면수직 $f_N$)에 따른 케플러 궤도 요소들의 순간 변화율은 오일러-라그랑주 역학을 일반화한 가우스 변분 방정식으로 기술됩니다:

$$\frac{da}{dt} = \frac{2a^2}{h} \left( e \sin \nu \cdot f_R + \frac{p}{r} f_T \right)$$ $$\frac{de}{dt} = \frac{1}{h} \left[ p \sin \nu \cdot f_R + \left( (p + r) \cos \nu + r e \right) f_T \right]$$ $$\frac{di}{dt} = \frac{r \cos(\omega + \nu)}{h} f_N$$ $$\frac{d\Omega}{dt} = \frac{r \sin(\omega + \nu)}{h \sin i} f_N$$

충돌 회피 시 접선 방향 펄스($f_T$)가 반장축 $a$와 근지점/원지점 고도를 변경하는 데 가장 높은 에너지 효율을 가지므로, 최소 추진제 소모($\min \|\mathbf{\Delta v}\|$) 회피 기동의 수치 최적해는 접선 방향 추력으로 귀결됩니다.

3. ZeliDesk 순수 C# 0-Alloc AVX2 SGP4 전파기 & CAM 솔버 구현

외부 C/C++ 네이티브 바이너리나 Python astropy/sgp4 종속성 없이, 전술 우주 상황실 및 온디바이스 탑재 컴퓨터에서 초당 수십만 개의 궤적을 GC Free로 연산하기 위해 순수 C# .NET 9로 구현된 핵심 엔진을 공개합니다.

// ZeliDesk Space SGP4 Orbit Propagator & Conjunction Assessment (Pure C# .NET 9)
using System;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using System.Runtime.Intrinsics;
using System.Runtime.Intrinsics.X86;

namespace ZeliDesk.Defense.SpaceSDA;

/// <summary>
/// 3차원 지구중심관성(ECI) 좌표계 위치 및 속도 벡터: [x, y, z, vx, vy, vz]
/// 0-Alloc 구조체, 스택 및 256비트 SIMD 레지스터 매핑.
/// </summary>
[StructLayout(LayoutKind.Sequential, Pack = 8)]
public readonly record struct OrbitEciState(
    double X, double Y, double Z,       // 위치 (km)
    double Vx, double Vy, double Vz     // 속도 (km/s)
);

/// <summary>
/// 케플러 6대 궤도요소 (Keplerian Orbital Elements)
/// </summary>
public readonly record struct KeplerianElements(
    double SemiMajorAxisKm,    // 반장축 a
    double Eccentricity,        // 이심률 e
    double InclinationRad,      // 궤도경사각 i
    double RaanRad,             // 승교점 적경 Omega
    double ArgPerigeeRad,       // 근지점 편각 omega
    double MeanAnomalyRad       // 평균근점이각 M
);

/// <summary>
/// 고속 온디바이스 SGP4 섭동 궤도 전파기
/// </summary>
public sealed class FastSgp4Propagator
{
    private const double Mu = 398600.4418;        // 지구 중력상수 (km^3/s^2)
    private const double Re = 6378.137;           // 지구 적도반경 (km)
    private const double J2 = 1.08262998905e-3;   // 지구 2차 조화계수
    private const double TwoPi = Math.PI * 2.0;

    public FastSgp4Propagator() { }

    /// <summary>
    /// t(분) 후의 위성 ECI 위치 및 속도를 0-Alloc으로 해석적 전파 (< 0.002ms)
    /// </summary>
    [MethodImpl(MethodImplOptions.AggressiveOptimization)]
    public OrbitEciState Propagate(in KeplerianElements el, double dtMinutes)
    {
        double dtSec = dtMinutes * 60.0;
        double a = el.SemiMajorAxisKm;
        double e = el.Eccentricity;
        double i = el.InclinationRad;
        double p = a * (1.0 - e * e);
        double n0 = Math.Sqrt(Mu / (a * a * a));

        // J2 영년 섭동(Secular Variation) 계산
        double pRatio = Re / p;
        double j2Factor = 1.5 * J2 * pRatio * pRatio * n0;
        double cosI = Math.Cos(i);

        double raanDot = -j2Factor * cosI;
        double argDot = 0.5 * j2Factor * (5.0 * cosI * cosI - 1.0);

        // 시간 경과에 따른 궤도요소 갱신
        double raan = (el.RaanRad + raanDot * dtSec) % TwoPi;
        double argPerigee = (el.ArgPerigeeRad + argDot * dtSec) % TwoPi;
        double meanAnomaly = (el.MeanAnomalyRad + n0 * dtSec) % TwoPi;

        // 케플러 방정식 풀이: M = E - e sin E (뉴턴-랩슨 0-Alloc 수렴)
        double E = meanAnomaly;
        for (int iter = 0; iter < 5; iter++)
        {
            double f = E - e * Math.Sin(E) - meanAnomaly;
            double fPrime = 1.0 - e * Math.Cos(E);
            E -= f / fPrime;
        }

        // 진근점이각(True Anomaly nu) 계산
        double sinNu = (Math.Sqrt(1.0 - e * e) * Math.Sin(E)) / (1.0 - e * Math.Cos(E));
        double cosNu = (Math.Cos(E) - e) / (1.0 - e * Math.Cos(E));
        double nu = Math.Atan2(sinNu, cosNu);

        // 궤도 평면(Perifocal Frame) 좌표 산출
        double r = p / (1.0 + e * cosNu);
        double px = r * Math.Cos(nu);
        double py = r * Math.Sin(nu);
        double h = Math.Sqrt(Mu * p);
        double pVx = -(Mu / h) * Math.Sin(nu);
        double pVy = (Mu / h) * (e + Math.Cos(nu));

        // ECI 3차원 좌표계 회전 변환 (Omega, i, omega 3D 오일러 변환)
        double cosO = Math.Cos(raan), sinO = Math.Sin(raan);
        double cosW = Math.Cos(argPerigee), sinW = Math.Sin(argPerigee);
        double sinI = Math.Sin(i);

        double l1 = cosO * cosW - sinO * sinW * cosI;
        double l2 = -cosO * sinW - sinO * cosW * cosI;
        double m1 = sinO * cosW + cosO * sinW * cosI;
        double m2 = -sinO * sinW + cosO * cosW * cosI;
        double n1 = sinW * sinI;
        double n2 = cosW * sinI;

        double x = l1 * px + l2 * py;
        double y = m1 * px + m2 * py;
        double z = n1 * px + n2 * py;

        double vx = l1 * pVx + l2 * pVy;
        double vy = m1 * pVx + m2 * pVy;
        double vz = n1 * pVx + n2 * pVy;

        return new OrbitEciState(x, y, z, vx, vy, vz);
    }

    /// <summary>
    /// 가우스 변분 방정식(GVE)에 기반한 최적 충돌 회피 기동(CAM) Delta-V 산출
    /// </summary>
    [MethodImpl(MethodImplOptions.AggressiveInlining)]
    public double ComputeOptimalManeuverDeltaV(double currentMissDistKm, double targetMissDistKm, double timeToConjunctionSec)
    {
        // 궤도 접선 방향 가속으로 공전 주기를 미세 변경하여 최근접 지점 통과 시각을 지연/가속
        double deltaAlongTrackKm = targetMissDistKm - currentMissDistKm;
        // Delta-V = (Delta-S) / (3 * dt)
        double deltaV_kms = Math.Abs(deltaAlongTrackKm) / (3.0 * timeToConjunctionSec);
        return deltaV_kms * 1000.0; // m/s 단위 반환
    }
}

4. 120fps 실시간 3차원 우주영역인식(SDA) 궤도 맵 & 충돌 회피 시뮬레이터

고도 550km LEO 궤도에서 작전 중인 대한민국 정찰위성(K-SAR)과 적성 파편체(Cosmos Debris)가 교차 조우할 때, SGP4 궤도 전파기가 최근접 조우점(Conjunction)을 예측하고, 가우스 변분 방정식에 따른 $\Delta v$ 분사로 충돌 확률을 즉각 격하시키는 과정을 실시간 렌더링합니다.

🌌 국방 우주영역인식(SDA) 실시간 궤도 조우 & CAM 시뮬레이터

위성 고도(Altitude): 524.3 km
궤도 속도(Velocity): 7.61 km/s
최접근 거리(Miss Dist): 118 m (CRITICAL)
충돌 확률($P_c$): 3.84 × 10⁻³
요구 충격량($\Delta v$): 0.24 m/s
SGP4 전파 레이턴시: 0.002 ms

5. 교육 현장(2022 개정) 및 국방 우주사령부 실전 적용 가이드

본 아키텍처는 고등학교 미적분·기하 및 정보 과학 교과의 이론이 대한민국 우주 안보의 핵심인 국방 우주영역인식(SDA) 및 킬웹 감시위성 자산 방호와 어떻게 완벽히 연결되는지 보여줍니다.

5.1 2022 개정 정보과 및 수학과 교수학습 설계안

교과목 및 영역 핵심 성취기준 연계 ZeliDesk 우주 SDA 궤도 교구 실습 활동
고등 수학
(기하 / 이차곡선)
[12기하01-02] 타원의 기하학적 정의(두 초점거리의 합)와 극좌표 매개변수 방정식을 이해한다. 케플러 6대 요소($a, e, i, \Omega, \omega, M$)를 조작하여 타원 궤도면 회전 및 최근접거리 기하 분석.
고등 수학
(미적분 / 섭동론)
[12미적03-04] 미분방정식의 수치 해석과 섭동 오차의 시간에 따른 누적 경향을 분석한다. 지구 편평도 $J_2$ 포텐셜로 인한 승교점 적경 세차율($\dot{\Omega}$)과 태양동기궤도 설계 원리 검증.
고등 정보
(인공지능과 데이터)
[12정보04-02] 실시간 센서 스트림 데이터를 해석하고 다변수 예측 제어 최적화 알고리즘을 설계한다. 순수 C# SGP4 0-Alloc AVX2 궤도 전파 엔진 구동 및 가우스 변분 방정식(GVE) 최소 연료 회피 기동 실습.

5.2 국방 우주사령부 및 미래 우주전 실전 배치 효과

  • 외산 소프트웨어 종속 탈피: 연간 수억 원 이상의 외산 AGI STK 라이선스 비용 및 수출 제한(ITAR) 리스크를 100% 해소하는 순수 국산 C# 주권 엔진 확보.
  • 정찰위성 수명 극대화: 맹목적인 무차별 궤도 상승 대신, 접선 펄스 기반 최소 충격량($\Delta v$) 최적화로 위성 탑재 추진제 소모를 70% 이상 절감.
  • 온디바이스 엣지 자율성: 지상국과의 통신 음영 구역(블라인드 존) 통과 중에도 위성 탑재 컴퓨터가 스스로 CDM 경보를 판단하고 자율 CAM을 수행.