EV 충전기 SW Client 개발
전기차 충전 기업의 충전기 소프트웨어 클라이언트를 개발하여 충전 인프라 운영의 안정성을 확보한 사례입니다.
충전기 SW
개발 기간
표준 프로토콜 준수
통신 안정성
배경
이 전기차 충전 기업은 자체 개발한 충전기 하드웨어에 탑재할 소프트웨어 클라이언트가 필요한 상황이었습니다. 충전 인프라 시장이 급성장하면서 안정적이고 표준을 준수하는 소프트웨어의 중요성이 더욱 부각되고 있었습니다. 기존에 사용하던 범용 소프트웨어로는 자사 충전기의 특수 기능을 충분히 활용할 수 없는 한계가 있었습니다. OCPP 프로토콜 준수와 원격 모니터링 기능이 가장 중요한 요구사항이었습니다. 전국에 설치된 충전기를 중앙에서 효율적으로 관리하기 위한 소프트웨어 기반을 마련하는 것이 이 프로젝트의 핵심 목표였습니다.
과제
국제 표준인 OCPP 프로토콜을 정확하게 구현하여 다양한 충전 관리 서버와 호환되는 클라이언트 개발이 첫 번째 과제였습니다. 충전 세션의 시작부터 종료까지 모든 상태를 실시간으로 서버에 보고하는 안정적인 모니터링 기능이 필수였습니다. 네트워크가 불안정한 실외 환경에서도 과금 데이터의 유실 없이 정확하게 전송되어야 했습니다. 원격 펌웨어 업데이트(OTA) 기능을 통해 전국에 분산된 충전기의 소프트웨어를 중앙에서 관리할 수 있어야 했습니다. 임베디드 환경의 제한된 리소스 내에서 이 모든 기능을 안정적으로 수행하는 것이 기술적 도전 과제였습니다.
접근
OCPP 1.6J 규격을 기반으로 충전 프로세스의 전체 상태 전이를 정의하는 상태 머신을 설계했습니다. 네트워크 단절이 발생해도 충전 데이터와 과금 정보의 무결성을 보장하기 위해 로컬 버퍼링 메커니즘을 마련했습니다. 버퍼에 저장된 데이터는 네트워크 복구 시 자동으로 서버에 동기화되도록 재전송 로직을 설계했습니다. 충전기 하드웨어의 각종 센서 데이터를 수집하고 이상 상태를 감지하는 진단 모듈의 아키텍처도 함께 수립했습니다. OTA 업데이트 시 충전 세션 중단 없이 안전하게 펌웨어를 교체하기 위한 듀얼 파티션 전략을 채택했습니다.
솔루션
충전 시작, 진행, 완료의 전체 세션을 안정적으로 관리하고 실시간으로 상태를 서버에 보고하는 임베디드 SW 클라이언트를 개발했습니다. OCPP 규격에 정의된 원격 시작·정지, 설정 변경 등의 원격 명령을 수신하고 실행하는 기능을 구현했습니다. OTA 펌웨어 업데이트 기능을 탑재하여 관리 서버에서 전국 충전기의 소프트웨어를 일괄 또는 선택적으로 업데이트할 수 있습니다. 네트워크 단절 시 로컬 버퍼링과 자동 재전송을 통해 과금 데이터의 100% 무결성을 보장합니다. 충전기 하드웨어 상태를 지속적으로 모니터링하여 이상 징후를 조기에 감지하고 알림하는 진단 기능도 포함했습니다.
성과
OCPP 프로토콜을 완벽하게 준수하는 안정적인 충전기 SW 클라이언트를 1개월 내에 성공적으로 개발했습니다. 99.5%의 통신 안정성을 달성하여 충전 데이터의 신뢰성을 확보하고 과금 오류를 방지했습니다. OTA 펌웨어 업데이트 기능을 통해 현장 방문 없이도 소프트웨어 업데이트가 가능해져 운영 비용이 크게 절감되었습니다. 로컬 버퍼링 메커니즘 덕분에 네트워크 불안정 환경에서도 데이터 유실 없이 안정적으로 운영됩니다. 이 SW 클라이언트는 현재 전국 다수의 충전소에 탑재되어 안정적으로 운영 중이며, 향후 OCPP 2.0 업그레이드의 기반이 될 예정입니다.
기술이사국내 전기차 충전 기업충전기 소프트웨어의 안정성이 확보되어 현장 운영이 한결 수월해졌습니다.