리셋 - Use Cases
CSMS에서 충전기로 리셋 명령을 보내는 경우의 처리 절차를 정의합니다.
OCPP v1.6
OCPP 1.6 Errata Sheet v4.0 (2019-10-23) 문서를 토대로 작성되었습니다.
ResetType
| Value | Description |
|---|---|
Soft | 애플리케이션 소프트웨어 재시작 (부팅 직후 idle 상태로 복귀) |
Hard | 하드웨어 전체 리부트 (물리적 전원 순환과 동일) |
진행 중인 트랜잭션이 없는 경우
충전기는 Reset.conf에 Accepted를 응답한 후 즉시 리셋을 수행합니다.
충전 중 Soft Reset을 수신한 경우
충전기는 진행 중인 모든 트랜잭션을 정상 종료(graceful stop)한 후 리셋을 수행해야 합니다.
Reset.conf에Accepted를 응답합니다.- 충전을 중지합니다.
- 진행 중인 모든 트랜잭션에 대해
StopTransaction.req를 전송합니다.reason필드에 반드시SoftReset을 명시합니다.
StopTransaction.conf를 수신한 후 애플리케이션을 재시작합니다.- 재시작 후
BootNotification.req를 전송합니다.
충전 중 Hard Reset을 수신한 경우
충전기는 즉시 하드웨어 리부트를 수행합니다. 트랜잭션 정상 종료 의무는 없습니다.
Reset.conf에Accepted를 응답합니다.- 즉시 하드웨어를 리부트합니다.
- 리부트 후
BootNotification.req를 전송합니다. BootNotification.conf에서Accepted를 수신한 후, 리셋 전 진행 중이었던 트랜잭션에 대해StopTransaction.req를 전송합니다.reason필드에 반드시HardReset을 명시합니다.
Soft vs Hard 비교
| 항목 | Soft Reset | Hard Reset |
|---|---|---|
| 리셋 전 StopTransaction 전송 | 필수 (SHALL) | 의무 없음 |
| 리셋 후 StopTransaction 전송 | N/A | 필수 (SHALL) |
| StopTransaction reason | SoftReset | HardReset |
| 리셋 범위 | 애플리케이션 소프트웨어 | 하드웨어 전체 |
OCPP v2.1
ResetEnumType
| Value | Description |
|---|---|
Immediate | 즉시 리셋 (진행 중인 트랜잭션의 graceful 종료 의무 없음) |
OnIdle | 모든 트랜잭션이 자연 종료된 후 리셋 (트랜잭션을 중단하지 않음) |
충전 중 Immediate Reset
- 가능하면 리셋 전에
TransactionEvent(Ended, stoppedReason: ImmediateReset)를 전송합니다. - 불가하면 리부팅 후 전송합니다.
충전 중 OnIdle Reset
- 응답으로
Accepted가 아닌Scheduled를 반환합니다. - 충전을 중단하지 않고 자연 종료를 기다린 후 리셋을 수행합니다.