센서에서 제어기까지의 신호 경로, 48V 배터리 이득 배분과 지연 계산 3편

이 글은 센서에서 제어기까지의 신호 경로, 48V 배터리 이득 배분과 지연 계산 시리즈의 3편입니다. 앞 편에 이어 제어 소프트웨어의 물리량 스케일링과 연산 정밀도 확보, 맺음말을 설명합니다.

센서부터 디지털 제어 루프까지의 신호 복원 및 지연 누적 경로 1. 아날로그 감지 & RC 필터 2. 12-bit ADC 샘플링 3. 소프트웨어 연산 & 방어 4. 복원 물리량 & 위상 지연 V_in D_ADC V, A 48V R1 R2 R_f C_f v(t) t_filt t RC 지연: 15.92 μs • 분압비: k_v = 0.05 • 필터 대역: 10 kHz • 입력 범위: 0 ~ 3.3V • 최대 측정: 66.0V S/H V_ref (3.3V) 12-bit 12 Count 0 ~ 4095 LSB t 변환 지연: 1.50 μs • 분해능: 4096 단계 • 샘플 주기: 50 μs • 제로 전류: 2047.5 LSB • 1 LSB ≈ 0.806 mV 포화 제한 − Offset × K 정수 소수 (Q-형식) 0 나누기 방어 NaN/Inf 차단 연산 지연: 25.0 μs • K_v = 0.0161 V/LSB • K_i = 0.0586 A/LSB • 사전 계산 곱셈 처리 • 분모 최소 한계 적용 물리량 ZOH 유지 t 0° −24.27° 총 누적 지연: 67.42 μs • ZOH 지연: 25.0 μs • 위상차: 24.27° (1 kHz) • 복원: V_batt, I_batt • 위상 여유 필수 보상
센서단 RC 필터(15.92 μs), 12비트 SAR ADC 변환(1.5 μs), 소프트웨어 방어 및 스케일링 연산(25.0 μs), ZOH 제어 루프(25.0 μs)로 이어지는 총 67.42 μs의 신호 경로 지연 누적과 물리량 복원 구조입니다.

제어 소프트웨어의 물리량 스케일링과 연산 정밀도 확보

ADC 변환을 거쳐 MCU 레지스터에 저장된 값은 0부터 4095까지의 무차원 12비트 정수(Raw Count, D_ADC)입니다. 제어 소프트웨어는 이 정수 값을 제어 루프 내부에서 사용할 수 있는 실수 형태의 물리량(V, A)으로 정확하게 복원해야 합니다.

전압 신호의 경우 분압비 k_v와 ADC 기준 전압 V_ref를 적용하여 팩 전압 V_batt를 복원하며 수식은 다음과 같습니다.

Vbatt=DADCv4095·Vrefkv(8)

식 (8)에서 V_ref / (4095 * k_v)는 하드웨어 파라미터로 결정되는 고정 상수이며, 3.3 / (4095 * 0.05) ≈ 0.016117 V/Count로 계산할 수 있습니다. 제어기는 나눗셈 연산을 매 주기 수행하지 않고 이 스케일 계수를 사전에 계산하여 곱셈 연산으로 처리함으로써 연산 지연을 최소화합니다.

전류 신호의 경우 오프셋 전압 V_offset과 감도 k_i를 반영하여 실제 전류 I_batt를 복원하며 수식은 다음과 같습니다.

Ibatt=(DADCi4095·Vref−Voffset)ki(9)

식 (9)에서 상수를 대입하여 정리하면 I_batt = (D_ADC_i – 2047.5) * 0.058608 A/Count 형태로 단순화할 수 있습니다. 즉, 원시 카운트에서 제로 전류 오프셋 카운트(2047.5)를 감산한 뒤 스케일 상수를 곱하여 양방향 전류를 즉각적으로 연산합니다.

소프트웨어 구현 시 연산 정밀도를 유지하고 수치적 이상 현상을 방지하기 위해 세 가지 방어 로직을 적용해야 합니다. 첫째, 부동소수점 연산에서 발생할 수 있는 0 나누기(Division-by-Zero) 오류를 차단하기 위해 분모가 되는 파라미터는 초기화 단계에서 최소 임계값으로 제한합니다. 둘째, 센서 단선이나 ADC 하드웨어 고장으로 인해 비정상적인 원시 값이 입력되었을 때 NaN(Not a Number) 또는 무한대(Inf) 값이 제어 루프로 전파되지 않도록 입력 단계에서 유효 범위 검증(Sanity Check)과 포화 제한기(Saturation Limiter)를 거치도록 구성합니다. 셋째, 고정소수점(Fixed-Point Q-format) 연산을 사용하는 제어기에서는 중간 곱셈 과정에서 오버플로우가 발생하지 않도록 비트 시프트 순서와 워드 길이를 충분히 확보합니다.

맺음말

본 글에서는 48V 배터리 팩 충방전 시스템을 대상으로 센서부터 디지털 제어기 내부 변수까지 이어지는 전체 신호 경로(Signal Chain)의 이득 배분, 지연 누적, 포화 방지 헤드룸 설계를 체계적으로 계산하고 검증하였습니다.

도출된 주요 설계 결과와 판단 기준을 정리하면 다음과 같습니다. 첫째, 3.3V ADC 입력 범위에 맞추어 전압 경로는 분압비 0.05를 적용하여 최대 66.0V까지 측정하도록 설계하였고, 양방향 전류 경로는 1.65V 오프셋과 0.0125 V/A 감도를 적용하여 ±120A까지 측정하도록 이득을 배분하였습니다. 둘째, 10 kHz 안티에일리어싱 RC 필터(15.92 μs), ADC 변환(1.5 μs), 제어 주기 50 μs 기준 ZOH(25.0 μs) 및 연산 지연(25.0 μs)이 합산되어 총 67.42 μs의 누적 지연이 발생함을 확인하였습니다. 이 지연은 1 kHz 제어 대역폭에서 약 24.27°의 위상 지연을 유발하므로 제어기 위상 여유 설계 시 필수적으로 반영해야 합니다. 셋째, 과도 오버슈트와 OP-Amp 비선형성에 대비하여 12% 이상의 전압 헤드룸과 20%의 전류 헤드룸, 상하 0.15V의 레일 마진을 확보하였습니다.

실무 개발 과정에서는 하드웨어 부품의 공차(저항 및 커패시터 오차)와 온도 드리프트에 의해 실제 이득과 오프셋이 설계치에서 벗어날 수 있음을 유의해야 합니다. 따라서 생산 단계에서 0점 오프셋 및 풀스케일 이득에 대한 소프트웨어 캘리브레이션 루틴을 필수적으로 구현해야 하며, 고속 인터럽트 루틴 내에서 이상 데이터 유입에 따른 수치적 발진이 발생하지 않도록 철저한 입력 검증을 병행해야 합니다.

이것으로 시리즈를 마칩니다. 앞선 편들과 함께 읽으면 전체 흐름을 파악할 수 있습니다.

댓글 남기기