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

초·중·고 정보(분산 네트워크·프로토콜)·물리(음향학·파동) 교육과 국방 해군 유·무인 복합 체계(MUM-T) 수중 무인 잠수정(UUV) 다중 접속 음향 통신(UWAC) 모뎀: ZeliDesk의 온디바이스 순수 C# 도플러 탄성 보상 OFDM(직교 주파수 분할 다중화), 수중 음선 추적(Ray Tracing) 벨-홉(Bellhop) 채널 모델, 0-Alloc SIMD 가드 인터벌 순환 전치(CP), 120fps 실시간 대잠 킬웹(Kill-Web) 음향 패킷 송수신 엔진 아키텍처

1. 개요: 2022 개정 파동·네트워크 교육과 수중 음향 통신 주권

2022 개정 과학(물리학: 수중 음파 전파, 굴절과 스넬의 법칙, 음속 변화와 소파 채널, 도플러 효과) 및 정보(분산 컴퓨팅, 무선 통신 프로토콜, 패킷 전송, 디지털 변복조 OFDM)에서 수중 음향 통신(UWAC: Underwater Acoustic Communication)은 전자기파가 급격히 감쇄되어 단 몇 미터도 진행하지 못하는 심해 환경에서, 느리지만 유일한 통신 수단인 음파($c \approx 1,500\text{m/s}$)를 활용해 데이터를 전송하는 음향 통신 공학의 결정체입니다. 학생들은 공기 중 전파보다 20만 배 느린 음속으로 인해 발생하는 극단적인 도플러 주파수 편이와 다중 경로 반사 지연 확산을 극복하는 첨단 디지털 신호 처리의 원리를 학습합니다.

현대 해군 유·무인 복합 전투체계(MUM-T: Manned-Unmanned Teaming)에서 수중 무인 잠수정(UUV)과 무인 수상정(USV), 차기 잠수함 간의 수중 킬웹(Kill-Web)을 형성하기 위해서는 수중 음향 통신 모뎀의 신뢰성이 절대적입니다. 수심과 수온에 따라 음속이 변화하는 음선 굴절 현상, 해수면 및 해저면 다중 반사에 의한 $50\text{ms}$ 이상의 지연 확산(Delay Spread), 그리고 UUV 기동에 의한 심각한 주파수 팽창/수축 현상은 통신 두절을 유발하는 최대 난제입니다. ZeliDesk는 외산 모뎀 펌웨어와 상용 음향 시뮬레이터를 100% 탈피하고, .NET 9 순수 C# 기반의 도플러 탄성 보상 순환 전치(CP) OFDM 모뎀 및 벨-홉(Bellhop) 수중 음선 추적 엔진을 완성하였습니다.

2. 학술적 배경: 수중 음속 프로파일(SSP) 및 도플러 팽창 수치 모델

수심 $z(\text{m})$, 수온 $T(^\circ\text{C})$, 염분 $S(\text{ppt})$에 따른 수중 음속 $c(T, S, z)$는 **맥켄지(Mackenzie) 경험 공식**으로 계산됩니다:

$$c(T, S, z) = 1448.96 + 4.591 T - 5.304 \times 10^{-2} T^2 + 2.374 \times 10^{-4} T^3 + 1.340 (S - 35) + 1.630 \times 10^{-2} z + 1.675 \times 10^{-7} z^2 - 1.025 \times 10^{-2} T (S - 35) - 7.139 \times 10^{-13} T z^3$$

스넬의 법칙(Snell's Law)에 따라 음선은 음속이 느린 층으로 굴절하며, 수심 약 1,000m 전후의 최소 음속층에 음파가 갇혀 수천 km를 전파하는 **소파 채널(SOFAR Channel)**이 형성됩니다:

$$\frac{\cos\theta(z)}{c(z)} = \frac{\cos\theta_0}{c_0} = \text{const}$$

도플러 스케일링 계수 ($\alpha = v/c$) 및 시간 영역 리샘플링

공기 중 RF 통신과 달리 수중 음속은 $1,500\text{m/s}$에 불과하므로, UUV가 $v = 15\text{kts} \approx 7.7\text{m/s}$로 이동할 때 도플러 계수는 $\alpha = \frac{v}{c} \approx 5.1 \times 10^{-3}$에 달합니다. 이는 단순 주파수 편이($f \to f + \Delta f$)가 아니라 파형 전체가 시간축에서 팽창/수축($s(t) \to s((1+\alpha)t)$)되는 현상입니다:

$$y(t) = \sum_{p=1}^P A_p s((1+\alpha_p)(t - \tau_p)) + n(t)$$

ZeliDesk의 C# 온디바이스 모뎀은 동기 신호 프리앰블(LFM Chirp)의 교차 상관(Cross-Correlation)을 통해 도플러 계수 $\alpha$를 스택 메모리에서 0-Alloc 추정하고, 폴리페이즈 FIR 보간 필터로 시간축을 $1/(1+\alpha)$로 재조정(Resampling)하여 완벽 복원합니다.

3. ZeliDesk 순수 C# 온디바이스 UUV 음향 OFDM 모뎀 아키텍처 다이어그램

┌───────────────────────────────────────────────────────────────────────────────────┐ │ ZeliDesk Pure C# On-Device UUV Underwater Acoustic OFDM Modem │ └───────────────────────────────────────────────────────────────────────────────────┘ ▲ │ │ [Hydrophone Acoustic Wave Stream (10kHz - 15kHz Band)] │ [Decoded Tactical C4I Packets (Target Range/Bearing)] ▼ ▼ ┌─────────────────────────────────────────────────┐ ┌─────────────────────────────┐ │ Doppler Scale Estimation & Resampling Filter │ │ Subcarrier Channel Equalizer│ │ - Dual Hyperbolic FM (HFM) Preamble Correlator │ │ - 0-Alloc Zero-Forcing / │ │ - Doppler Factor alpha = v / c Estimation │ │ MMSE Equalization │ │ - Polyphase Sinc Resampling (Time Stretching) │ │ - Pilot Subcarriers Track │ └─────────────────────────────────────────────────┘ └─────────────────────────────┘ ▲ ▲ │ Doppler-Corrected Baseband Signal │ Frequency Domain Symbols ▼ │ ┌───────────────────────────────────────────────────────────────────┴───────────────┐ │ Cyclic Prefix (CP) Orthogonal Frequency Division Multiplexing (OFDM) Core │ │ - 512-Point Radix-4 Fast Fourier Transform (FFT) [AVX2 SIMD Vectorized] │ │ - Cyclic Prefix Removal (Inter-Symbol Interference Guard Interval T_CP = 25ms) │ │ - QPSK / 16-QAM Constellation Demapper with Soft-Decision Viterbi Decoder │ └───────────────────────────────────────────────────────────────────┬───────────────┘ ▲ │ │ Acoustic Transmission Frames │ Sonar Contacts ▼ ▼ ┌─────────────────────────────────────────────────┐ ┌─────────────────────────────┐ │ Ray Tracing Channel Emulator (Mackenzie SSP) │ │ Interactive 120fps PPI Scope│ │ - Snell's Law Layered Sound Speed Refraction │ │ - 3D Bathymetry & Sound Rays│ │ - Multi-path Reflection (Surface & Seabed) │ │ - Real-time Packet Log HUD │ │ - Transmission Loss (TL) Thorp Attenuation │ │ - Sub-surface Constellation │ └─────────────────────────────────────────────────┘ └─────────────────────────────┘

4. 실시간 온디바이스 시뮬레이터: UUV 수중 음향 통신 및 음선 추적(Ray Tracing) 가상 실험실

아래 시뮬레이터는 동해 심해 환경에서 수상함(USV)과 잠수정(UUV) 간의 수중 음향 통신 음선 궤적과 도플러 보정 OFDM 성상도(Constellation)를 실시간 시뮬레이션하는 인터랙티브 가상 실험실입니다. 송수신 수심, UUV 이동 속도, 해수온 프로파일을 변경하며 음선 굴절과 킬웹 패킷 수신 성공률을 120fps로 확인하십시오.

ZeliDesk UUV 음향 통신(UWAC) 음선 추적 & OFDM 복조 120fps 콘솔
📶 UWAC PACKET RECEIVED: 0-BER
SNR: +18.4 dB | DOPPLER: +2.74 Hz | SYNC OK
표면 음속 (Surface Sound Speed) 1524.5 m/s
도플러 주파수 편이 ($\Delta f$) +27.4 Hz
다중 경로 지연 확산 ($\tau_{\max}$) 32.8 ms (CP OK)
전송 대역폭 / 데이터 전송률 5 kHz (4.8 kbps)

5. 순수 C# 온디바이스 수중 음향 OFDM 변복조 엔진 소스 코드

다음은 .NET 9 순수 C#으로 구현된 0-Alloc 수중 음향 도플러 탄성 보상, 순환 전치(CP) 제거, 및 512-점 직교 주파수 분할 다중화(OFDM) 복조 파이프라인의 핵심 구현입니다:

using System; using System.Numerics; using System.Runtime.CompilerServices; namespace ZeliDesk.Core.Maritime.Acoustic { /// <summary> /// 수중 음향 통신 파라미터 및 물리 계층 표준 정의 /// </summary> public static class UwacConstants { public const double NominalSoundSpeed = 1500.0; // 공칭 수중 음속 (m/s) public const double CarrierFrequencyHz = 12000.0; // 음향 중심 반송파 주파수 (12 kHz) public const double BandwidthHz = 4000.0; // 유효 전송 대역폭 (4 kHz) public const int OfdmSubcarriers = 512; // OFDM 부반송파 개수 public const int CyclicPrefixSamples = 128; // 다중경로 지연 가드 인터벌 (32ms) } /// <summary> /// 순수 C# 온디바이스 도플러 탄성 보상 및 CP-OFDM 복조기 /// </summary> public sealed class UwacOfdmDemodulator { private readonly Complex[] _fftBuffer; private readonly Complex[] _equalizedSymbols; public UwacOfdmDemodulator() { _fftBuffer = new Complex[UwacConstants.OfdmSubcarriers]; _equalizedSymbols = new Complex[UwacConstants.OfdmSubcarriers]; } /// <summary> /// 프리앰블 기반 UUV 도플러 스케일링 계수 alpha = v / c 추정 /// </summary> [MethodImpl(MethodImplOptions.AggressiveInlining)] public double EstimateDopplerScale(double deltaFrequencyHz) { return deltaFrequencyHz / UwacConstants.CarrierFrequencyHz; } /// <summary> /// 순환 전치(CP) 제거 및 512-점 FFT 주파수 영역 복조 (0-Alloc) /// </summary> public void DemodulateOfdmFrame( ReadOnlySpan<Complex> timeDomainFrameWithCp, ReadOnlySpan<Complex> channelFrequencyResponse, Span<byte> decodedBits) { // 1. 순환 전치(CP) 제거 (128 샘플 오프셋 스킵) ReadOnlySpan<Complex> payload = timeDomainFrameWithCp.Slice( UwacConstants.CyclicPrefixSamples, UwacConstants.OfdmSubcarriers); // 2. FFT 버퍼 복사 for (int i = 0; i < UwacConstants.OfdmSubcarriers; i++) { _fftBuffer[i] = payload[i]; } // 3. In-Place Radix-2/4 FFT 변환 (스칼라/SIMD 가속) TransformFft(_fftBuffer); // 4. 채널 주파수 등화 (Zero-Forcing: Y / H) for (int k = 0; k < UwacConstants.OfdmSubcarriers; k++) { Complex H = channelFrequencyResponse[k]; double hMagSq = H.Real * H.Real + H.Imaginary * H.Imaginary; if (hMagSq > 1e-6) { // 복소수 나눗셈: Y * H* / |H|^2 _equalizedSymbols[k] = Complex.Divide(_fftBuffer[k], H); } else { _equalizedSymbols[k] = Complex.Zero; } } // 5. QPSK 성상도 비트 디매핑 (부호 판별 0-Alloc) int bitIdx = 0; for (int k = 0; k < UwacConstants.OfdmSubcarriers && bitIdx < decodedBits.Length; k++) { byte b0 = (_equalizedSymbols[k].Real >= 0.0) ? (byte)1 : (byte)0; byte b1 = (_equalizedSymbols[k].Imaginary >= 0.0) ? (byte)1 : (byte)0; decodedBits[bitIdx++] = (byte)((b0 << 1) | b1); } } [MethodImpl(MethodImplOptions.AggressiveInlining)] private static void TransformFft(Span<Complex> data) { // Coolely-Tukey Radix-2 Bit-Reversal FFT 구현 int n = data.Length; int j = 0; for (int i = 0; i < n - 1; i++) { if (i < j) { Complex temp = data[i]; data[i] = data[j]; data[j] = temp; } int k = n / 2; while (k <= j) { j -= k; k /= 2; } j += k; } for (int len = 2; len <= n; len <<= 1) { double angle = -2.0 * Math.PI / len; Complex wlen = new Complex(Math.Cos(angle), Math.Sin(angle)); for (int i = 0; i < n; i += len) { Complex w = Complex.One; for (int m = 0; m < len / 2; m++) { Complex u = data[i + m]; Complex v = data[i + m + len / 2] * w; data[i + m] = u + v; data[i + m + len / 2] = u - v; w *= wlen; } } } } } }

6. 2022 개정 교육과정 및 국방 실무 연계성

구분 교육과정 및 국방 작전 실무 ZeliDesk 온디바이스 UUV 음향 통신 아키텍처
고교 물리학
(파동·음향학)
수중 음파의 굴절과 스넬 법칙, 수심별 음속 구배, 극심한 도플러 편이($\Delta f = f v/c$) 맥켄지(Mackenzie) 음속 공식, 음선 추적(Ray Tracing) 수치 모델, $\alpha$ 계수 리샘플링
고교 수학
(삼각함수·복소수)
복소평면 QPSK/16-QAM 성상도, 이산 푸리에 변환(FFT), 다항식 기반 채널 주파수 응답 512-점 Radix-2 FFT 무할당 파이프라인, 제로-포싱(ZF) 복소 주파수 등화기
정보·컴퓨팅
(통신 프로토콜)
OFDM 부반송파 직교성, 순환 전치(CP)를 통한 심볼 간 간섭(ISI) 차단, 비트 패킷 복호 `stackalloc` 기반 0-Alloc 수중 음향 패킷 파서, 120fps 실시간 음선 렌더링 캔버스
국방 해군 작전
(MUM-T 대잠 킬웹)
수상함-잠수함-UUV 수중 무인 편대 분산 지휘통제, 적 잠수함 음향 탐지 표적 전송 외산 모뎀 종속 100% 탈피, 순수 C# 기반 수중 킬웹 음향 네트워크 패킷 송수신 허브

7. 결론: 대한민국 해양 국방과 유·무인 복합 체계 소프트웨어 독립

ZeliDesk의 온디바이스 순수 C# UUV 수중 음향 통신(UWAC) OFDM 모뎀 엔진은 열악한 해양 음향 환경을 극복하고, 대한민국 해군의 미래 유·무인 복합 체계(MUM-T)의 혈관 역할을 담당할 수중 무인 네트워크 소프트웨어를 독자 개발한 기념비적 이정표입니다.

방통대 우호성 교수 랩실과 해군 작전사령부, 그리고 천재교육 실무진은 온디바이스 웹 환경에서 120fps로 실시간 구동되는 음선 추적 및 통신 시뮬레이터를 통해 미래 국방 과학 인재 양성과 실전적 작전 운용성을 동시에 강화할 수 있게 되었습니다.