StopTransaction 메시지는 충전 세션이 종료되었음을 중앙 시스템(Central System)에 알리는 데 사용됩니다. 이 메시지는 충전 세션 동안 소비된 전력, 종료 이유, 종료 시점의 계량기 값 등을 포함하여 충전 이력을 서버에 기록하는 데 중요한 역할을 합니다.
◈ 메시지 구조
▶ StopTransaction 요청 (Charge Point → Central System)
필드 이름 | 플드 타입 | 설명 |
idTag | idToken | 트랜잭션을 시작한 사용자 ID 태그.(옵션) |
meterStop | integer | 트랜잭션 종료 시 미터 값(Wh).(필수) |
timestamp | dateTime | 트랜잭션 종료 시간.(필수) |
transactionId | integer | 종료되는 트랜잭션의 고유 ID.(필수) |
reason | Reason | 트랜잭션 종료 이유(옵션) |
transactionData | MeterValue | 트랜잭션 중 기록된 추가 계량 데이터를 포함하는 배열(옵션) |
● Reason
충전이 중단된 이유를 아래 value 값을 넣어서 서버로 전달합니다.
value | 설명 |
EmergencyStop | 충전 세션이 비상 정지 버튼이나 비상 정지 요청에 의해 종료됨. |
EVDisconnected | 전기차가 충전기에서 물리적으로 분리되어 충전이 중단됨. |
HardReset | 충전기가 강제로 재설정(Reset)되어 충전 세션이 종료됨. |
Local | 사용자가 충전기의 물리적 인터페이스(버튼, 화면 등)를 통해 충전 세션을 중단함. |
Other | 정의되지 않은 기타 이유로 충전 세션이 종료됨. |
PowerLoss | 전원 공급 문제가 발생하여 충전 세션이 중단됨. |
Reboot | 충전기가 재부팅되어 충전 세션이 중단됨. |
Remote | 중앙 시스템에서 원격으로 충전 세션 종료 요청을 보냄. |
SoftReset | 소프트웨어적으로 충전기가 재설정(Reset)되어 충전 세션이 중단됨. |
UnlockCommand | 중앙 시스템의 요청에 의해 충전 플러그가 잠금 해제되었고, 이에 따라 충전이 종료됨. |
DeAuthorized | 사용자가 인증되지 않은 상태가 되었거나, 인증이 해제되어 충전이 중단됨. |
▶ StopTransaction 응답 (Central System → Charge Point)
필드 이름 | 플드 타입 | 설명 |
idTagInfo | IdTagInfo | 종료된 트랜잭션의 ID 태그와 관련된 상태 정보를 포함. |
● IdTagInfo
필드 이름 | 필드 타입 | 설명 |
expiryDate | dateTime | ID 태그의 유효 기간.(옵션) |
parentIdTag | IdToken | 상위 계정과 연결된 ID 태그.(옵션) |
status | AuthorizationStatus | ID 태그의 인증 상태 |
◈ StopTransaction 메시지 예
▶ StopTransaction 요청
{
"transactionId": 56789,
"meterStop": 15000,
"timestamp": "2024-11-05T16:45:00Z",
"reason": "EVDisconnected",
"idTag": "USER12345",
"transactionData":
[ {
"timestamp": "2024-11-05T16:15:00Z",
"sampledValue":
[ {
"value": "10.5",
"context": "Sample.Periodic",
"unit": "kWh",
"measurand": "Energy.Active.Import.Register"
}
] },
{
"timestamp": "2024-11-05T16:30:00Z",
"sampledValue":
[ {
"value": "12.0",
"context": "Sample.Periodic",
"unit": "kWh",
"measurand": "Energy.Active.Import.Register"
} ]
}]
}
▶ StopTransaction 응답
▶ 예제 설명
- 요청 메시지
- transactionId: 종료된 트랜잭션의 ID는 56789.
- meterStop: 계량기 값은 종료 시점에서 15000 Wh.
- timestamp: 트랜잭션이 종료된 시간은 2024-11-05T16:45:00Z.
- reason: 충전 종료 이유는 차량이 충전기에서 분리되었기 때문(EVDisconnected).
- idTag: 사용자 ID 태그는 USER12345.
- transactionData: 충전 세션 중 기록된 두 개의 계량 데이터를 포함.
- 첫 번째 데이터 (16:15:00): 계량기 값은 10.5 kWh.
- 두 번째 데이터 (16:30:00): 계량기 값은 12.0 kWh.
- 응답 메시지
- status: 사용자 ID 태그가 유효하며 (Accepted).
- expiryDate: ID 태그의 만료일은 2025-01-01T00:00:00Z.
- parentIdTag: 상위 계정은 MasterAccount123.
◈ 주요 기능
1) 충전 세션 종료 기록
- 트랜잭션 ID와 종료 시점의 데이터를 기록하여 충전 이력을 중앙 서버에 저장.
2) 계량 데이터 보고
- 충전 세션 동안 소비된 에너지 및 종료 시점의 계량기 값을 통해 요금 계산.
3) 종료 이유 전달
- 충전 종료 이유(reason)를 통해 세션 종료 원인을 명확히 전달.
- 예: 사용자가 충전을 중단(Local), 원격 종료 요청(Remote), 차량 분리(EVDisconnected) 등.
4) ID 태그 상태 관리
- 사용자 ID 태그(idTagInfo)의 상태를 확인하여 향후 충전 가능 여부를 판단.
5) 과금 및 사용자 통지
- 서버는 수신된 데이터를 기반으로 요금 청구 및 사용자에게 충전 세션 종료 알림 제공.
StopTransaction 메시지는 충전 세션의 종료 데이터를 서버에 전달하는 핵심 메시지로, 요금 계산, 사용 기록 관리, 충전소 운영 효율화를 위한 필수적인 역할을 수행합니다. 이 메시지를 통해 충전소 운영자는 사용자 신뢰를 구축하고, 충전소의 운영 상태를 효과적으로 모니터링할 수 있습니다.