OCPP2.0.1 BootNotification 메시지


BootNotification 개요

BootNotification은 충전소가 중앙 시스템(CSMS)에 처음 연결되거나 재시작될 때 보내는 필수 메시지입니다. 이 메시지는 충전소의 기본 정보를 중앙 시스템에 알리고, 중앙 시스템으로부터 운영 승인을 받는 역할을 합니다.

메시지 구조

Request (충전소 → CSMS)

{
  "reason": "PowerUp",
  "chargingStation": {
    "model": "SingleSocketCharger",
    "vendorName": "VendorX",
    "firmwareVersion": "1.0.0",
    "serialNumber": "CP001234",
    "modem": {
      "iccid": "8944501234567890123",
      "imsi": "450051234567890"
    }
  }
}

Response (CSMS → 충전소)

{
  "currentTime": "2024-08-14T10:30:00.000Z",
  "interval": 86400,
  "status": "Accepted"
}

주요 필드 설명

Request 필드들

reason (필수)

  • ApplicationReset: 애플리케이션 리셋 후
  • FirmwareUpdate: 펌웨어 업데이트 후
  • LocalReset: 로컬 리셋 후
  • PowerUp: 전원 켜짐 후
  • RemoteReset: 원격 리셋 후
  • ScheduledReset: 스케줄된 리셋 후
  • Triggered: 수동 트리거
  • Unknown: 알 수 없는 이유
  • Watchdog: 워치독 리셋 후

chargingStation (필수)

  • model: 충전소 모델명
  • vendorName: 제조업체명
  • firmwareVersion: 펌웨어 버전 (선택사항)
  • serialNumber: 시리얼 번호 (선택사항)
  • modem: 모뎀 정보 (선택사항)

Response 필드들

currentTime (필수)

  • CSMS의 현재 시간 (ISO 8601 형식)

interval (필수)

  • 하트비트 간격 (초 단위)

status (필수)

  • Accepted: 승인됨
  • Pending: 보류 중
  • Rejected: 거부됨

실제 사용 예제

예제 1: 전원 켜진 후 부팅

// Request
{
  "reason": "PowerUp",
  "chargingStation": {
    "model": "AC-7kW-Single",
    "vendorName": "ChargeTech",
    "firmwareVersion": "2.1.5",
    "serialNumber": "CT2024001",
    "modem": {
      "iccid": "8982101234567890123",
      "imsi": "450051234567890"
    }
  }
}

// Response
{
  "currentTime": "2024-08-14T10:30:00.000Z",
  "interval": 300,
  "status": "Accepted"
}

예제 2: 펌웨어 업데이트 후 부팅

// Request  
{
  "reason": "FirmwareUpdate",
  "chargingStation": {
    "model": "DC-50kW-Dual",
    "vendorName": "PowerCharge",
    "firmwareVersion": "3.2.1",
    "serialNumber": "PC2024-DC-001"
  }
}

// Response
{
  "currentTime": "2024-08-14T10:35:00.000Z", 
  "interval": 600,
  "status": "Accepted"
}

예제 3: 승인 거부 상황

// Request
{
  "reason": "PowerUp",
  "chargingStation": {
    "model": "Unknown-Model",
    "vendorName": "UnknownVendor"
  }
}

// Response  
{
  "currentTime": "2024-08-14T10:40:00.000Z",
  "interval": 86400,
  "status": "Rejected"
}

처리 흐름

  1. 충전소 부팅: 충전소가 시작되면서 BootNotification 전송
  2. CSMS 검증: 중앙 시스템이 충전소 정보 검증
  3. 응답 처리:
    • Accepted: 정상 운영 시작, 하트비트 주기 설정
    • Pending: 승인 대기, 제한된 기능으로 운영
    • Rejected: 운영 거부, 오프라인 모드로 전환

중요 포인트

  • BootNotification은 연결 후 가장 먼저 보내야 하는 메시지입니다
  • Accepted 응답을 받기 전까지는 제한된 기능만 사용 가능합니다
  • 하트비트 간격은 이 메시지의 응답으로 설정됩니다
  • 네트워크 연결이 끊어진 후 재연결 시에도 다시 전송해야 합니다

이 메시지를 통해 충전소와 중앙 시스템 간의 초기 통신이 설정되고, 이후 모든 OCPP 통신의 기반이 됩니다.