1. 서론: 대잠 무소음과 30노트 고속 기동의 양립, FFG-II 하이브리드 파워트레인
대한민국 해군의 주력 대잠 호위함인 대구급(FFG-II, 2,800톤)은 북한 잠수함의 수중 은밀 침투에 대응하기 위해 평시에는 디젤 발전기 전력으로 영구자석 추진전동기(PMM)를 구동하여 수중 방사 소음(URN)을 극소화하는 '전기 추진 모드'로 은밀 항해합니다. 그러나 대잠 교전 돌발 상황이나 적 수상함의 고속 위협이 발생하면 단 1~2분 만에 세계 최고 수준의 36MW급 롤스로이스 MT30 가스터빈 모드로 전환하여 30노트(시속 56km) 이상의 초고속 전속 기동으로 돌입해야 합니다.
이 하이브리드 추진체계(HED, Hybrid Electro-Mechanical Drive)의 핵심은 감속기어 축계에 탑재된 동기식 자기 맞물림 클러치(SSS, Synchro-Self-Shifting Clutch)입니다. 가스터빈의 회전수가 프로펠러 축의 회전수를 추월하는 찰나의 순간에 헬리컬 스플라인(Helical Spline)이 전진하며 기계적으로 맞물리는데, 이때 두 축 간의 미세한 회전수 및 위상차는 30m 길이의 거대한 고장력 강철 추진축계 전체에 수만 N·m에 달하는 치명적인 비틀림 충격 진동(Torsional Shock)을 발생시킵니다.
본 백서에서는 2022 개정 물리(회전운동 방정식, 비틀림 탄성계수, 각운동량 보존) 및 정보(밀리초 주기 인버터 벡터 제어, 0-Alloc 메모리)를 토대로, 추진전동기의 초고속 역토크(Counter-Torque) 보상 제어 기법을 도출하고, 이를 1,000Hz 무할당(0-Alloc) C# 파워트레인 제어 엔진으로 구현한 아키텍처를 상세히 규명합니다.
2. 2질량-비틀림 탄성 연성 동역학 및 SSS 클러치 결합 모델
가스터빈 구동축(관성 $J_1$)과 감속기어-프로펠러 축(관성 $J_2$) 사이의 비틀림 탄성 연성 방정식은 다음과 같습니다:
여기서 $K_t$는 축계의 비틀림 강성 계수(N·m/rad), $C_t$는 내부 감쇠 계수입니다. SSS 클러치는 입력축 속도 $\dot{ heta}_1$이 출력축 속도 $\dot{ heta}_2$를 통과하는 순간($\Delta \omega = \dot{ heta}_1 - \dot{ heta}_2 = 0$) 물리적 결합 래칫 톱니가 걸리며 맞물리며, 결합 직후 발생하는 충격 토크 피크는 $\Delta \omega$의 기울기에 정비례합니다:
이 충격 피크를 0으로 억제하기 위해, 결합 50ms 전부터 추진전동기(PMM)의 인버터를 통해 초정밀 능동 위상 추종 토크($T_{ ext{motor, damping}}$)를 인가하여 $\Delta \omega ightarrow 0$ 및 $d\Delta\omega/dt ightarrow 0$을 1,000Hz 주기로 강제 수렴시킵니다.
3. 1,000Hz 0-Alloc C# 호위함 하이브리드 파워트레인 제어 엔진
함정 제어 시스템의 1ms 주기에서 GC 발생 없이 추진전동기 및 가스터빈 연료 조절 밸브를 제어하는 무할당 C# 코어를 구축합니다.
using System;
using System.Runtime.CompilerServices;
namespace ZeliDesk.Defense.Navy.HybridPropulsion
{
/// <summary>
/// 추진축계 센서 계측 데이터 (0-Alloc ref struct)
/// </summary>
public readonly ref struct ShaftSensors
{
public readonly float TurbineShaftRpm; // 가스터빈 입력축 RPM
public readonly float PropellerShaftRpm; // 프로펠러 감속축 RPM
public readonly float ShaftTorsionalTorqueNm; // 추진축계 표면 변형률 게이지 토크 (N·m)
public readonly float ClutchAxialDisplacementMm; // SSS 클러치 축방향 이동 변위 (mm)
public readonly bool ClutchFullyEngaged; // 클러치 기계적 결합 완료 리미트 스위치
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public ShaftSensors(
float turbineRpm,
float propRpm,
float torqueNm,
float dispMm,
bool engaged)
{
TurbineShaftRpm = turbineRpm;
PropellerShaftRpm = propRpm;
ShaftTorsionalTorqueNm = torqueNm;
ClutchAxialDisplacementMm = dispMm;
ClutchFullyEngaged = engaged;
}
}
/// <summary>
/// 추진 액추에이터 제어 명령 구조체
/// </summary>
public readonly ref struct HybridControlOutput
{
public readonly float TurbineFuelThrottlePercent; // 가스터빈 연료 밸브 개도율 (%)
public readonly float MotorDampingTorqueNm; // 추진전동기 인버터 지령 토크 (N·m)
public readonly float TorsionalOscillationIndex; // 비틀림 진동 지수 (RMS)
public readonly bool TransitionComplete; // 모드 절환 완료 여부
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public HybridControlOutput(
float throttle,
float motorTorque,
float oscIndex,
bool complete)
{
TurbineFuelThrottlePercent = throttle;
MotorDampingTorqueNm = motorTorque;
TorsionalOscillationIndex = oscIndex;
TransitionComplete = complete;
}
}
/// <summary>
/// 대구급 호위함 1,000Hz 무할당 하이브리드 추진 클러치 절환 엔진
/// </summary>
public static class FfgHybridClutchEngine
{
private const float MaxMotorTorqueNm = 45000.0f; // 추진전동기 최대 토크 45 kNm
private const float DampingGainKd = 320.0f; // 비틀림 각속도 감쇠 게인
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static HybridControlOutput Update1000Hz(
in ShaftSensors sens,
ref float prevRpmDelta,
float dt)
{
// 1. 축 간 상대 회전속도차 계산: Δω (RPM 단위)
float rpmDelta = sens.TurbineShaftRpm - sens.PropellerShaftRpm;
float dRpmDeltaDt = (rpmDelta - prevRpmDelta) / dt;
prevRpmDelta = rpmDelta;
// 2. 모드 전환 단계 판정
if (sens.ClutchFullyEngaged)
{
// 완전 결합 완료 후: 가스터빈 주추진 모드 (전동기 회생 발전 또는 대기)
return new HybridControlOutput(100.0f, 0.0f, 0.0f, true);
}
// 3. 동기화 클러치 진입 제어
// 터빈 RPM을 프로펠러 RPM에 점진 정렬 (동기화 속도 추종)
float targetThrottle = 40.0f;
float motorDampingTorque = 0.0f;
if (rpmDelta < -5.0f)
{
// 터빈 회전수 부족: 터빈 가속
targetThrottle = 65.0f;
}
else if (rpmDelta > 5.0f)
{
// 터빈 과속: 스로틀 일시 저감
targetThrottle = 35.0f;
}
else
{
// 결합 임계 영역 (|ΔRPM| < 5.0):
// 전동기를 능동 감쇠기로 동작시켜 충격 흡수
motorDampingTorque = -DampingGainKd * rpmDelta - 12.0f * dRpmDeltaDt;
motorDampingTorque = Math.Clamp(motorDampingTorque, -MaxMotorTorqueNm, MaxMotorTorqueNm);
targetThrottle = 50.0f;
}
// 축계 비틀림 진동 지수 평가
float oscIndex = MathF.Abs(sens.ShaftTorsionalTorqueNm) / 10000.0f;
return new HybridControlOutput(
targetThrottle,
motorDampingTorque,
oscIndex,
false);
}
}
}
4. 2022 개정 교육과정 연계: 물리·수학·정보 융합 수업 모델
대구급 호위함의 하이브리드 파워트레인 기술은 고등학교 과학 및 정보 교과에서 훌륭한 융합 탐구 과제가 됩니다:
- 물리 (회전역학과 비틀림 진동): 회전축의 강성과 비틀림 고유진동수 계산, 2질량 진동계의 공진 회피 및 전자기 유도 모터 토크 반작용.
- 수학 (삼각함수와 미분방정식): 연립 2계 비동차 미분방정식의 상태공간 표현, 위상 평면(Phase Plane)에서의 동기화 궤적 수렴성 해석.
- 정보 (임베디드 실시간 인버터 제어): 1밀리초 고주기 인버터 벡터 제어 지령 산출을 위한 무할당 C# 프로그래밍 기법.
5. 결론
대구급 호위함의 하이브리드 기계-전기 추진체계는 침묵의 대잠 사냥꾼과 초고속 해상 전투함의 두 얼굴을 모두 갖춘 첨단 공학의 승리입니다. SSS 동기식 클러치 절환 시 추진축계의 비틀림 충격을 1,000Hz 실시간으로 상쇄하는 0-Alloc C# 엔진은 함정의 수중 음향 스텔스와 파워트레인 기계적 내구성을 세계 최고 수준으로 보장합니다.