AIDT 온디바이스 STEM 광열 편향(Photothermal Deflection) 미라지 효과 서보 엔진

국소 흡수 열파 분산 구배 \\(\\nabla T(\\mathbf{r}, t)\\), 프로브 레이저 빔 편향각 \\(\\theta_{\\text{def}} = \\frac{1}{n}\\frac{dn}{dT}\\int \\nabla T ds\\) 10,000Hz C# 엔진

1. 개요: 신기루(Mirage) 현상을 이용해 백만분의 일(\(10^{-6}\)) 극미세 광학 흡수를 검출하다

사막이나 뜨거운 아스팔트 위에서 지표면의 열기로 인해 공기의 밀도와 굴절률이 낮아져 하늘이 지면에 반사되어 보이는 현상을 신기루(Mirage)라 부릅니다. 광열 편향 분광법(Photothermal Deflection Spectroscopy, PDS)은 이 원리를 나노스케일 표면 분석에 적용한 초고감도 비파괴 검사(NDT) 기술입니다.

주기적으로 변조된 강한 펌프 레이저가 시료 표면에 조사되면, 시료가 빛을 흡수하여 발생시킨 주기적인 열파(Thermal Wave)가 인접한 유체(공기 또는 \(\text{CCl}_4\))로 전도되어 표면 바로 위에 굴절률 구배(\(\nabla n\))를 형성합니다. 표면과 나란하게 스쳐 지나가는 약한 프로브 레이저 빔(He-Ne)은 이 굴절률 구배에 의해 미라지 편향(Mirage Deflection)을 겪으며, 편향 각도는 시료의 절대 광학 흡수 계수(\(\alpha\))에 정밀 비례합니다.

2. 열 확산 파동 방정식 및 빔 편향각 수식 모델

주파수 \(\omega = 2\pi f\)로 세기 변조된 펌프 빔 하에서 매질의 주기적 온도장 \(T(x, z, t) = \theta(x, z) e^{i\omega t}\)는 헬름홀츠형 열 확산 방정식을 만족합니다:

\\[ \nabla^2 \theta - \sigma_{\text{th}}^2 \theta = -\frac{Q(x, z)}{k}, \quad \sigma_{\text{th}} = (1 + i) \sqrt{\frac{\omega}{2 \alpha_{\text{th}}}} = \frac{1 + i}{\mu_{\text{th}}} \\]

여기서 \(\mu_{\text{th}} = \sqrt{\frac{2 \alpha_{\text{th}}}{\omega}}\)는 열 확산 길이(Thermal Diffusion Length)입니다. 유체 매질의 열광학 계수 \(dn/dT\)에 의해 생성되는 굴절률 구배 \(\nabla n = \frac{dn}{dT} \nabla T\)를 통과하는 프로브 빔의 총 편향각 \(\theta_{\text{def}}\)는 페르마 원리로부터 유도됩니다:

\\[ \theta_{\text{def}} = \frac{1}{n_0} \frac{dn}{dT} \int_{\text{path}} \nabla_\perp T(s) \, ds \\]

수직 편향 성분 \(\theta_\perp\)와 수평 편향 성분 \(\theta_\parallel\)은 표면의 미세 흡수율 \(A \approx \alpha d\)와 펌프 파워 \(P_0\)에 선형 비례합니다:

\\[ \theta_\perp \approx \frac{1}{n_0} \frac{dn}{dT} \frac{\alpha d P_0}{\pi^{3/2} k_f a} \exp\left( -\frac{z_0}{\mu_f} \right) \cos\left( \omega t - \frac{z_0}{\mu_f} \right) \\]

여기서 \(z_0\)는 프로브 빔 중심과 시료 표면 간의 높이 오프셋, \(k_f, \mu_f\)는 편향 유체의 열전도도와 열확산 길이입니다.

3. 실시간 PDS 미라지 편향 검출 서보 아키텍처 다이어그램

graph TD A[파장 가변 펌프 레이저 광학 초퍼 변조 f_mod] --> B[시료 표면 집속 및 국소 흡수 승온] B --> C[시료 인접 공기층 주기적 열파 전도 및 dn/dT 형성] D[He-Ne 632.8nm 프로브 레이저 빔] --> E[표면 근접 z_0 수평 통과] C & E --> F[미라지 굴절 편향각 theta_def 발생] F --> G[2분할 포토다이오드 QPD 차동 전압 V_diff] G --> H[디지털 록인 앰프 동위상/직교위상 복조] H --> I[10,000Hz 0-Alloc C# 흡수율 역산 & 표면 높이 서보] I --> D

4. 고성능 0-Alloc C# PDS 미라지 신호 복조 서보 구현

QPD 차동 전압으로부터 위상 및 편향각을 복조하고 서브-ppm 흡수 계수를 추출하는 0-Alloc C# 클래스입니다:

using System;
using System.Runtime.CompilerServices;

namespace ZeliDesk.Stem.PhotothermalDeflection
{
    public readonly record struct PdsParameters(
        double ProbeWavelengthM,   // 632.8 nm
        double DnDtFluid,          // 1/K (공기 ~ -1.0e-6, CCl4 ~ -5.0e-4)
        double FluidThermalCondK,  // W/(m K) (공기 0.026)
        double ThermalDiffusivity, // m^2/s (공기 2.2e-5)
        double ModFreqHz           // 초퍼 변조 주파수 (예: 25 Hz)
    );

    public ref struct PdsServoState
    {
        public double ThermalDiffusionLengthUm;
        public double DeflectionAngleUrad; // microradians
        public double DemodulatedPhaseDeg;
        public double EstimatedAbsorptancePpm; // ppm
        public bool IsProbeAligned;
    }

    public static class PhotothermalMirageServo
    {
        [MethodImpl(MethodImplOptions.AggressiveInlining)]
        public static void DemodulateDeflection(
            in PdsParameters p,
            double inPhaseVolt, double quadVolt,
            double qpdSensitivityRadV, // rad / Volt
            double pumpPowerWatts,
            double probeHeightZ0Um,
            ref PdsServoState state)
        {
            // 1. 열 확산 길이 계산: mu = sqrt(2 * alpha / omega)
            double omega = 2.0 * Math.PI * p.ModFreqHz;
            double muM = Math.Sqrt((2.0 * p.ThermalDiffusivity) / omega);
            state.ThermalDiffusionLengthUm = muM * 1e6;

            // 2. QPD 복조 신호로부터 총 편향각 진폭 (urad 단위)
            double rVolt = Math.Sqrt(inPhaseVolt * inPhaseVolt + quadVolt * quadVolt);
            state.DeflectionAngleUrad = (rVolt * qpdSensitivityRadV) * 1e6;
            state.DemodulatedPhaseDeg = Math.Atan2(quadVolt, inPhaseVolt) * (180.0 / Math.PI);

            // 3. 지수 감쇠 보정: exp(z_0 / mu)
            double attenFactor = Math.Exp(probeHeightZ0Um / Math.Max(10.0, state.ThermalDiffusionLengthUm));

            // 4. 광학 흡수율 A = alpha * d 역산 (단위: ppm)
            // theta ~ (1/n) * |dn/dT| * A * P / (pi^1.5 * k * a) * exp(-z/mu)
            double prefactor = (Math.Abs(p.DnDtFluid) * pumpPowerWatts) / (Math.Pow(Math.PI, 1.5) * p.FluidThermalCondK * 50e-6);
            double rawAbs = (state.DeflectionAngleUrad * 1e-6 * attenFactor) / Math.Max(1e-12, prefactor);

            state.EstimatedAbsorptancePpm = Math.Max(0.1, rawAbs * 1e6);

            // 5. 프로브 빔 표면 정렬 상태 판정 (높이가 열 확산 길이 이내)
            state.IsProbeAligned = probeHeightZ0Um < (state.ThermalDiffusionLengthUm * 2.0);
        }
    }
}

5. 교육 연수 및 광학 박막 손상/스텔스 국방 적용 지침

방통대 직무연수 및 국방 고출력 레이저 코팅 검사

  • 물리/환경 교과 지도: 열역학적 열전도-광학 굴절 연계 메커니즘, 신기루 원리의 수학적 모델링, 미소 편향 각도 록인 검출법을 컴퓨터 시뮬레이션으로 교육.
  • 국방 고출력 레이저 미러 비파괴 검사: 지향성에너지무기(HEL)용 유전체 반사경의 백만분의 일 수준 잔류 흡수율 측정 및 레이저 유기 손상(LIDT) 사전 방지.