결론부터 적습니다. 데이터센터 UPS 선정의 기준은 용량(kVA)이 아니라 절체시간(ms)과 그 시간 동안 부하가 버티는가입니다. IEA 집계에 따르면 2025년 배터리 기반 UPS 증설 용량은 전년 대비 30% 늘어난 45 GW였습니다. 이 숫자가 커진 만큼 현장에서 자주 어긋나는 지점도 명확해졌습니다. 절체시간 4 ms를 “거의 무순단”으로 취급하는 관행입니다.
서버용 SMPS의 홀드업 타임은 통상 10~20 ms입니다. 4 ms 절체는 산술적으로 통과하지만, 입력 전압이 이미 저하된 상태에서 시작된 4 ms는 다릅니다. 이 글은 그 여유가 어디서 사라지는지를 회로와 시퀀스로 정리합니다.
1. IEC 62040-3 분류 — 카탈로그 용어 대신 규격 코드로 볼 것
| 규격 분류 | 통칭 | 절체시간 | 효율(정상 운전) | 출력 주파수 |
|---|---|---|---|---|
| VFI | 온라인 더블 컨버전 | 0 ms | 94~97% 에코 모드 98~99% |
입력과 무관하게 재생성(50 Hz 고정) |
| VI | 라인 인터랙티브 | 2~4 ms | 97~98% | 입력 주파수 추종 |
| VFD | 오프라인·스탠바이 | 4~10 ms | 97~98% | 입력 그대로 통과 |
시사점: 표의 효율 열만 보면 VFD와 VI가 유리해 보이지만, 이들은 정상 시 계통을 그대로 통과시키기 때문에 효율이 높은 것입니다. 즉 효율이 높은 이유와 절체시간이 존재하는 이유가 같습니다. 데이터센터 부하에 대해 사양서에 적을 값은 VFI-SS-111이며, 뒤의 세 자리는 각각 입력전압 급변·출력전압 과도특성·비선형 부하 응답의 성능 등급을 뜻합니다. 용량만 적고 이 코드를 비우면 입찰 단계에서 VI 제품이 섞여 들어옵니다.
2. 45 GW는 중앙 UPS만의 숫자가 아니다
여기가 이 글에서 강조하고 싶은 관찰입니다. UPS 증설을 전부 전기실의 중앙 UPS로 상상하면 최근 구성을 놓칩니다. 상당 부분이 서버 랙 내부의 BBU(Battery Backup Unit)로 내려가고 있습니다. 인터배터리 2026에서 국내 셀 업체가 데이터센터용 UPS·BBU 전용 고출력 셀을 별도 라인업으로 내건 것도 같은 흐름입니다.
전장 관점에서 이 둘은 성격이 완전히 다릅니다. 중앙 UPS는 AC 계통에 직렬로 들어가 절체라는 사건을 만듭니다. 랙 BBU는 서버 전원부의 DC 버스에 병렬로 붙습니다. 병렬 구성에는 절체라는 사건 자체가 없습니다. 계통이 끊기면 버스 전압이 내려가는 순간 다이오드 방향대로 전류가 흐르기 시작할 뿐입니다.
다만 대가가 있습니다. 백업 지점이 랙 수백 개로 흩어지면 배터리 상태 감시 대상도 수백 개가 됩니다. 중앙 UPS 한 대의 배터리 스트링을 관리하던 방식으로는 감당되지 않고, 랙별 BMS 통신을 상위로 모으는 구성이 필수가 됩니다. 절체시간 문제를 회로로 없앤 대신 감시 문제를 통신으로 떠안는 구조입니다.
3. 백업시간 계산 — 명판 Ah를 그대로 쓰면 틀린다
배터리 명판의 Ah는 특정 시간율(보통 10시간율) 기준입니다. UPS는 5~15분율의 고율 방전이므로 실제 가용 용량이 줄어듭니다. 납축(VRLA)은 퓨케르트 지수로, 리튬이온은 DoD·수명·온도 디레이팅으로 보정합니다.
# -*- coding: utf-8 -*-
"""
UPS 배터리 백업시간 산정
- VRLA: Peukert 식으로 고율 방전 시 유효용량 감소를 반영
- LiB : DoD / SOH / 온도 디레이팅을 곱산으로 반영
단위: 전압 V, 전류 A, 전력 kW, 시간 min
"""
def dc_current(load_kw: float, v_bus: float, eta_inv: float) -> float:
"""
부하 전력으로부터 배터리 스트링이 실제로 내보내야 하는 DC 전류 [A]
I_dc = (P_load / eta_inv) / V_bus
- eta_inv : 인버터 효율 (0.92~0.96 통상). 손실만큼 배터리는 더 뱉어야 함
- v_bus : 배터리 스트링 공칭 전압 [V] (셀 수 x 셀 공칭전압)
"""
p_dc_w = (load_kw * 1000.0) / eta_inv # 인버터 입력측 필요 전력 [W]
return p_dc_w / v_bus
def vrla_backup_min(c_ah: float, hour_rate: float,
i_a: float, peukert_k: float = 1.25) -> float:
"""
VRLA 백업시간 [min] — Peukert 식
t = H * ( C / (I * H) ) ** k
- c_ah : 명판 용량 [Ah]
- hour_rate : 명판 기준 시간율 H [h] (예: 10시간율이면 10.0)
- peukert_k : 퓨케르트 지수. VRLA 통상 1.1~1.3, 고율일수록 손해가 커짐
k=1 이면 이상적 전지가 되어 시간율 개념이 사라진다는 점에 유의.
"""
t_h = hour_rate * (c_ah / (i_a * hour_rate)) ** peukert_k
return t_h * 60.0
def lib_backup_min(c_ah: float, i_a: float, dod: float = 0.90,
soh: float = 0.80, k_temp: float = 1.00) -> float:
"""
리튬이온 백업시간 [min]
t = (C * DoD * SOH * k_temp) / I
- dod : 방전심도 상한 (UPS용은 0.85~0.95)
- soh : 수명말기(EOL) 기준 잔존용량. 설계는 반드시 EOL 기준으로 할 것
- k_temp : 온도 보정계수 (25도C=1.00, 0도C 부근 0.85~0.90 적용)
리튬이온은 고율 방전에서도 용량 감소가 작아 Peukert 보정을 생략하지만,
대신 BMS 저전압 컷오프가 실제 종지전압을 결정하므로 DoD 상한이 지배적이다.
"""
t_h = (c_ah * dod * soh * k_temp) / i_a
return t_h * 60.0
if __name__ == "__main__":
# 예시: 부하 100 kW, 배터리 버스 480 V, 인버터 효율 94%
I = dc_current(load_kw=100.0, v_bus=480.0, eta_inv=0.94)
print(f"필요 DC 전류 : {I:8.1f} A")
# VRLA 500 Ah(10시간율) 스트링
print(f"VRLA 백업시간 : {vrla_backup_min(500.0, 10.0, I):8.1f} min")
# LiB 200 Ah 스트링, EOL 80% / DoD 90% / 25도C
print(f"LiB 백업시간 : {lib_backup_min(200.0, I):8.1f} min")
시사점: 같은 명판 용량이라도 VRLA는 고율 방전에서 유효용량이 크게 깎이고, 리튬이온은 SOH(수명말기 잔존용량)를 어디로 잡느냐가 결과를 지배합니다. 초기 SOH 100%로 산정한 백업시간은 준공 시점에만 맞는 값입니다. 설계값은 EOL 기준으로 잡으십시오. 실제 값은 배터리 제조사의 정전력 방전 특성표(W/셀)와 대조해 검증해야 하며, 위 코드는 1차 사이징용입니다.
4. 안전 인터락 체크리스트 — 기동 전 확인 순서
UPS 계통은 입력이 살아 있어도 배터리 측이 항상 활전 상태입니다. 시퀀스 서술은 인터락부터 시작합니다.
- ☐ EMO(비상차단) 회로가 하드와이어드 직렬로 구성되어 있는가. PLC 출력을 경유해 차단하는 구성은 불가
- ☐ 배터리 차단기(MCCB) 개방 상태에서 정류기 기동이 물리적으로 저지되는가
- ☐ 유지보수 바이패스 조작 시 메이크 비포 브레이크 순서가 기구적으로 강제되는가
- ☐ 배터리실 온도 상한 경보(통상 35도C) 및 환기팬 운전 확인 신호가 입력에 물려 있는가
- ☐ 입력 결상·역상 감시 계전기 접점이 정류기 기동 조건에 직렬로 들어가 있는가
- ☐ 병렬 운전 시 부하 분담 불평형 경보 임계값이 설정되어 있는가
I/O 맵 예시
| 어드레스 | 신호명 | 동작 조건 |
|---|---|---|
X000 |
EMO_NC | b접점. 개방 시 전 출력 강제 OFF. 로직 우회 금지 |
X001 |
MAIN_PWR_OK | 입력 전압·주파수 정상(예 380 V ±10%, 50 Hz ±1%) 시 ON |
X002 |
BAT_CB_CLOSED | 배터리 차단기 투입 확인. OFF면 정류기 기동 저지 |
X003 |
BAT_TEMP_HI | 배터리실 온도 상한 초과 시 ON → 충전전류 제한 |
X004 |
VENT_FAN_RUN | 환기팬 운전 확인. OFF 지속 시 충전 중지 인터락 |
Y000 |
RECT_START | X000·X001·X002 전부 성립 시에만 ON |
Y010 |
BYPASS_CMD | 인버터 이상 또는 과부하 시 정적 바이패스 절체 지령 |
Y020 |
ALM_LAMP | 경보 표시. 자기유지, 리셋은 수동 조작으로만 |
시사점: Y000의 성립 조건에 X000을 포함시켰지만, 이것은 표시·감시용이지 안전 기능이 아닙니다. EMO의 실제 차단은 접점이 직접 주회로를 끊는 하드와이어드 경로에서 이루어져야 합니다. PLC 스캔 타임(수 ms~수십 ms)에 의존하는 순간 안전 회로의 요건을 만족하지 못합니다.
5. 경계 조건 — VFI가 항상 정답은 아니다
위 결론은 부하가 SMPS 기반 IT 장비이고, 계통 품질이 불안정한 조건을 전제로 합니다. 다음에서는 판단이 바뀝니다.
- 계통 품질이 안정적이고 연간 정전 시간이 매우 짧은 사이트 — VFI 상시 운전의 상시 변환손실(3~6%)이 정전 대비 이익을 초과할 수 있습니다. 에코 모드 또는 VI 채택이 합리적인 구간입니다
- 부하가 서버가 아니라 모터·조명 등 절체시간 내성이 큰 설비 — VFD로 충분합니다
- 랙 BBU가 이미 전면 배치된 신설 데이터센터 — 중앙 UPS를 VFI로 이중 투자하면 백업 계층이 중복됩니다
단일 선택 기준을 하나만 남긴다면 이것입니다 — 부하 전원부의 홀드업 타임이 몇 ms인가. 이 값보다 절체시간이 짧고 여유가 2배 이상 확보되면 VI로 내려갈 수 있고, 그렇지 않으면 VFI입니다.
현장 체크포인트
- 사양서에 용량(kVA)만 적지 말고 IEC 62040-3 성능 코드(VFI-SS-111 등)를 명기할 것
- 백업시간 산정은 EOL SOH 기준으로. 준공 시점 값으로 잡으면 3년 뒤 미달됩니다
- 부하 측 SMPS 홀드업 타임을 실측할 것. 카탈로그 값과 실측이 다른 사례가 흔합니다 — 파형 분석 및 실측 요망