OCPP 2.0.1 ClearChargingProfile 메시지

 

ClearChargingProfile 개요

ClearChargingProfile은 중앙 시스템(CSMS)이 충전소에게 기존에 설정된 충전 프로파일을 삭제하도록 요청하는 메시지입니다. 이는 충전 스케줄 변경, 부하 관리 정책 수정, 또는 특정 충전 제한을 해제하고자 할 때 사용됩니다.

메시지 구조

Request (CSMS → 충전소)

{
  "chargingProfileId": 123,
  "chargingProfileCriteria": {
    "chargingProfilePurpose": "TxProfile",
    "stackLevel": 1,
    "chargingProfileId": [101, 102, 103],
    "chargingLimitSource": ["EMS", "CSO"]
  }
}

Response (충전소 → CSMS)

{
  "status": "Accepted",
  "statusInfo": {
    "reasonCode": "ProfilesCleared",
    "additionalInfo": "3 profiles cleared successfully"
  }
}

주요 필드 설명

Request 필드들

chargingProfileId 필드 (선택사항)

필드명 필수여부 타입 설명
chargingProfileId 선택사항 Integer 삭제할 특정 충전 프로파일의 ID

chargingProfileCriteria 필드 (선택사항)

필드명 필수여부 타입 설명
chargingProfilePurpose 선택사항 Enum 삭제할 프로파일의 목적
stackLevel 선택사항 Integer 삭제할 프로파일의 스택 레벨
chargingProfileId 선택사항 Integer Array 삭제할 프로파일 ID 목록
chargingLimitSource 선택사항 Enum Array 충전 제한 소스

chargingProfilePurpose 값

설명
ChargingStationMaxProfile 충전소 최대 전력 프로파일
TxDefaultProfile 트랜잭션 기본 프로파일
TxProfile 특정 트랜잭션 프로파일

chargingLimitSource 값

설명
EMS 에너지 관리 시스템
Other 기타 소스
SO 시스템 운영자
CSO 충전소 운영자

Response 필드들

필드명 필수여부 타입 설명
status 필수 Enum 프로파일 삭제 요청 처리 상태
statusInfo 선택사항 Object 추가 상태 정보

status 필드 값

설명
Accepted 승인됨 - 요청된 프로파일이 삭제됨
Unknown 알 수 없음 - 해당 프로파일을 찾을 수 없음

실제 사용 예제

예제 1: 특정 프로파일 삭제

// Request
{
  "chargingProfileId": 123
}

// Response
{
  "status": "Accepted",
  "statusInfo": {
    "reasonCode": "ProfileFound",
    "additionalInfo": "Charging profile 123 deleted successfully"
  }
}

예제 2: 트랜잭션 프로파일 전체 삭제

// Request
{
  "chargingProfileCriteria": {
    "chargingProfilePurpose": "TxProfile"
  }
}

// Response
{
  "status": "Accepted",
  "statusInfo": {
    "reasonCode": "MultipleProfilesCleared",
    "additionalInfo": "All transaction profiles cleared"
  }
}

예제 3: 특정 스택 레벨의 프로파일 삭제

// Request
{
  "chargingProfileCriteria": {
    "stackLevel": 2,
    "chargingLimitSource": ["EMS"]
  }
}

// Response
{
  "status": "Accepted",
  "statusInfo": {
    "reasonCode": "StackLevelCleared",
    "additionalInfo": "Stack level 2 EMS profiles cleared"
  }
}

예제 4: 프로파일을 찾을 수 없는 경우

// Request
{
  "chargingProfileId": 999
}

// Response
{
  "status": "Unknown",
  "statusInfo": {
    "reasonCode": "ProfileNotFound",
    "additionalInfo": "Charging profile 999 does not exist"
  }
}

예제 5: 여러 프로파일 ID로 삭제

// Request
{
  "chargingProfileCriteria": {
    "chargingProfileId": [101, 102, 103],
    "chargingProfilePurpose": "TxDefaultProfile"
  }
}

// Response
{
  "status": "Accepted",
  "statusInfo": {
    "reasonCode": "PartialSuccess",
    "additionalInfo": "2 out of 3 profiles found and deleted"
  }
}

예제 6: 모든 프로파일 삭제

// Request
{}

// Response
{
  "status": "Accepted",
  "statusInfo": {
    "reasonCode": "AllProfilesCleared",
    "additionalInfo": "All charging profiles have been cleared"
  }
}

처리 흐름

  1. 삭제 요청: CSMS가 특정 조건의 충전 프로파일 삭제를 요청
  2. 프로파일 검색: 충전소가 요청 조건에 맞는 프로파일을 검색
  3. 프로파일 삭제: 조건에 맞는 프로파일들을 메모리에서 삭제
  4. 응답 전송: 삭제 결과를 CSMS에 응답
  5. 동작 적용: 삭제된 프로파일로 인한 충전 제한 변경사항을 즉시 적용

중요 포인트

  • ClearChargingProfile은 CSMS에서 충전소로만 전송됩니다
  • chargingProfileIdchargingProfileCriteria 모두 선택사항이며, 둘 다 없으면 모든 프로파일이 삭제됩니다
  • chargingProfileId가 지정된 경우 chargingProfileCriteria는 무시됩니다
  • 삭제된 프로파일의 효과는 즉시 충전소에 적용되어야 합니다
  • 활성 충전 중인 트랜잭션의 프로파일을 삭제할 때는 안전한 방식으로 처리되어야 합니다
  • 프로파일이 삭제되면 해당 제한사항이 해제되어 충전 전력이 변경될 수 있습니다

이 메시지를 통해 중앙 시스템은 동적으로 충전 제한을 관리하고, 전력망 상황이나 운영 정책 변경에 따라 충전 프로파일을 유연하게 조정할 수 있습니다.