Pereiti prie turinio

OCPP 1.6J protokolo žinynas.

Ką įkrovimo stotelė ir jos valdymo sistema sako viena kitai: visi 28 pranešimai su laukais ir pavyzdžiu, 43 konfigūracijos raktai, ką stotelė gali matuoti ir kas praktikoje sugenda.

PranešimaiKonfigūracijos raktaiMatuojami dydžiaiKlausimai

Kas yra OCPP 1.6J?

OCPP (Open Charge Point Protocol) yra nemokamas ir atviras Open Charge Alliance standartas. Jis nustato, kaip įkrovimo stotelė bendrauja su ją valdančia programine įranga: specifikacijoje tai Central System, rinkoje vadinama valdymo sistema (back office).

1.6J versijoje stotelė atidaro WebSocket ryšį su valdymo sistema, ir abi pusės juo siunčia JSON pranešimus. Stotelė praneša savo būseną, skaitiklio rodmenis ir įkrovimo sesijas. Valdymo sistema pradeda ir sustabdo sesijas, keičia nustatymus ir nustato įkrovimo ribas.

Kadangi standartas atviras, juo kalbanti stotelė gali prisijungti ir prie kitų jį palaikančių valdymo sistemų, priklausomai nuo modelio, mikroprogramos ir konfigūracijos. Todėl vienoje vietoje galima naudoti skirtingų gamintojų stoteles ir perkelti stotelę į kitą valdymo sistemą. Jei norite, kad viena stotelė vienu metu veiktų su keliomis valdymo sistemomis, naudokite OCPP tarpinį serverį.

  • Atviras standartasDiegti nemokama, prižiūri Open Charge Alliance.
  • WebSocket ir JSONVienas nuolat atviras ryšys su struktūrizuotais pranešimais.
  • 28 pranešimaiŠešiuose funkcijų profiliuose, nuo Core iki Remote Trigger.
  • Abiem kryptimisStotelė ir valdymo sistema kiekviena inicijuoja savo pranešimus.

Visi 28 OCPP 1.6 pranešimai

Kiekvienas pranešimas yra vienos pusės užklausa ir kitos pusės atsakymas, susieti unikaliu pranešimo ID.

Core

Privalomas. Pagrindinės stotelės operacijos: autorizacija, įkrovimo sesijos, būsenos pranešimai, konfigūracija ir paprastas nuotolinis valdymas.

Prašo autorizuoti idTag prieš leidžiant įkrauti.

Užklausa
LaukasTipasNaudojimasKą jis saugo
idTagstringPrivalomasAutorizuojamas identifikatorius. Ne daugiau kaip 20 simbolių.
Atsakymas
LaukasTipasNaudojimasKą jis saugo
idTagInfoobjectPrivalomasidTag autorizacijos informacija.
statusstringPrivalomasAutorizacijos būsena. Galimos reikšmės: Accepted, Blocked, Expired, Invalid, ConcurrentTx.
expiryDatestringNeprivalomasData ir laikas, po kurių idTag laikomas nebegaliojančiu. Data ir laikas.
parentIdTagstringNeprivalomasPagrindinis idTag grupinei autorizacijai. Ne daugiau kaip 20 simbolių.
Pavyzdys
Stotelė siunčia
[2, "7f83df9c", "Authorize", {
  "idTag": "04A2B3C4D5E6F7"
}]
Valdymo sistema atsako
[3, "7f83df9c", {
  "idTagInfo": {
    "status": "Accepted"
  }
}]

OCPP 2.0.1 versijoje: Authorize

Siunčiamas po paleidimo, kad stotelė užsiregistruotų valdymo sistemoje.

Užklausa
LaukasTipasNaudojimasKą jis saugo
chargePointVendorstringPrivalomasStotelės gamintojas. Ne daugiau kaip 20 simbolių.
chargePointModelstringPrivalomasStotelės modelis. Ne daugiau kaip 20 simbolių.
chargePointSerialNumberstringNeprivalomasStotelės serijos numeris. Ne daugiau kaip 25 simboliai.
chargeBoxSerialNumberstringNeprivalomasĮkrovimo bloko (charge box) serijos numeris. Ne daugiau kaip 25 simboliai.
firmwareVersionstringNeprivalomasStotelės mikroprogramos versija. Ne daugiau kaip 50 simbolių.
iccidstringNeprivalomasSIM kortelės ICCID. Ne daugiau kaip 20 simbolių.
imsistringNeprivalomasSIM kortelės IMSI. Ne daugiau kaip 20 simbolių.
meterTypestringNeprivalomasElektros energijos skaitiklio tipas. Ne daugiau kaip 25 simboliai.
meterSerialNumberstringNeprivalomasElektros energijos skaitiklio serijos numeris. Ne daugiau kaip 25 simboliai.
Atsakymas
LaukasTipasNaudojimasKą jis saugo
statusstringPrivalomasRegistracijos būsena. Galimos reikšmės: Accepted, Pending, Rejected.
currentTimestringPrivalomasDabartinis Central System laikas. Data ir laikas.
intervalintegerPrivalomasHeartbeat intervalas sekundėmis.
Pavyzdys
Stotelė siunčia
[2, "392b5b40", "BootNotification", {
  "chargePointVendor": "ExampleVendor",
  "chargePointModel": "ExampleModel",
  "firmwareVersion": "1.4.2"
}]
Valdymo sistema atsako
[3, "392b5b40", {
  "status": "Accepted",
  "currentTime": "2026-10-06T09:30:00Z",
  "interval": 300
}]

OCPP 2.0.1 versijoje: BootNotification

Keičia jungties pasiekiamumą.

Užklausa
LaukasTipasNaudojimasKą jis saugo
connectorIdintegerPrivalomasJungties ID (0 = visa stotelė).
typestringPrivalomasPrašomas pasiekiamumo pakeitimas. Galimos reikšmės: Inoperative, Operative.
Atsakymas
LaukasTipasNaudojimasKą jis saugo
statusstringPrivalomasPasiekiamumo keitimo užklausos rezultatas. Galimos reikšmės: Accepted, Rejected, Scheduled.
Pavyzdys
Valdymo sistema siunčia
[2, "be3dcf2e", "ChangeAvailability", {
  "connectorId": 1,
  "type": "Operative"
}]
Stotelė atsako
[3, "be3dcf2e", {
  "status": "Accepted"
}]

OCPP 2.0.1 versijoje: ChangeAvailability

Keičia stotelės konfigūracijos raktą.

Užklausa
LaukasTipasNaudojimasKą jis saugo
keystringPrivalomasKeičiamas konfigūracijos raktas. Ne daugiau kaip 50 simbolių.
valuestringPrivalomasNauja konfigūracijos rakto reikšmė. Ne daugiau kaip 500 simbolių.
Atsakymas
LaukasTipasNaudojimasKą jis saugo
statusstringPrivalomasKonfigūracijos keitimo rezultatas. Galimos reikšmės: Accepted, Rejected, RebootRequired, NotSupported.
Pavyzdys
Valdymo sistema siunčia
[2, "6fdf2255", "ChangeConfiguration", {
  "key": "MeterValueSampleInterval",
  "value": "60"
}]
Stotelė atsako
[3, "6fdf2255", {
  "status": "Accepted"
}]

OCPP 2.0.1 versijoje: SetVariables

Išvalo stotelės autorizacijos podėlį.

Užklausa

Laukų nėra: užklausa tuščia.

Atsakymas
LaukasTipasNaudojimasKą jis saugo
statusstringPrivalomasPodėlio išvalymo užklausos rezultatas. Galimos reikšmės: Accepted, Rejected.
Pavyzdys
Valdymo sistema siunčia
[2, "e993e844", "ClearCache", {}]
Stotelė atsako
[3, "e993e844", {
  "status": "Accepted"
}]

OCPP 2.0.1 versijoje: ClearCache

Gamintojui būdingi duomenų mainai.

Užklausa
LaukasTipasNaudojimasKą jis saugo
vendorIdstringPrivalomasIdentifikuoja gamintoją. Ne daugiau kaip 255 simboliai.
messageIdstringNeprivalomasPapildomas pranešimo identifikatorius. Ne daugiau kaip 50 simbolių.
datastringNeprivalomasGamintojui būdingi duomenys.
Atsakymas
LaukasTipasNaudojimasKą jis saugo
statusstringPrivalomasDuomenų perdavimo rezultatas. Galimos reikšmės: Accepted, Rejected, UnknownMessageId, UnknownVendorId.
datastringNeprivalomasGamintojui būdingi atsakymo duomenys.
Pavyzdys
Viena pusė siunčia
[2, "e1a403d5", "DataTransfer", {
  "vendorId": "com.example"
}]
Kita pusė atsako
[3, "e1a403d5", {
  "status": "Accepted"
}]

OCPP 2.0.1 versijoje: DataTransfer

Nuskaito konfigūracijos raktus iš stotelės.

Užklausa
LaukasTipasNaudojimasKą jis saugo
keyarrayNeprivalomasNuskaitomų konfigūracijos raktų sąrašas. Elementai: ne daugiau kaip 50 simbolių.
Atsakymas
LaukasTipasNaudojimasKą jis saugo
configurationKeyarrayNeprivalomasŽinomų konfigūracijos raktų sąrašas.
keystringPrivalomasKonfigūracijos rakto pavadinimas. Ne daugiau kaip 50 simbolių.
readonlybooleanPrivalomasAr raktas tik skaitomas.
valuestringNeprivalomasDabartinė rakto reikšmė. Ne daugiau kaip 500 simbolių.
unknownKeyarrayNeprivalomasPrašytų, bet nežinomų raktų sąrašas. Elementai: ne daugiau kaip 50 simbolių.
Pavyzdys
Valdymo sistema siunčia
[2, "02bd00f5", "GetConfiguration", {
  "key": [
    "MeterValueSampleInterval"
  ]
}]
Stotelė atsako
[3, "02bd00f5", {
  "configurationKey": [
    {
      "key": "MeterValueSampleInterval",
      "readonly": false,
      "value": "60"
    }
  ]
}]

OCPP 2.0.1 versijoje: GetBaseReport ir GetVariables

Periodinis gyvybės signalas, kuriuo valdymo sistemai pranešama, kad stotelė prisijungusi.

Užklausa

Laukų nėra: užklausa tuščia.

Atsakymas
LaukasTipasNaudojimasKą jis saugo
currentTimestringPrivalomasDabartinis Central System laikas. Data ir laikas.
Pavyzdys
Stotelė siunčia
[2, "83622997", "Heartbeat", {}]
Valdymo sistema atsako
[3, "83622997", {
  "currentTime": "2026-10-06T09:30:00Z"
}]

OCPP 2.0.1 versijoje: Heartbeat

Siunčia periodinius arba iškviestus skaitiklio rodmenis.

Užklausa
LaukasTipasNaudojimasKą jis saugo
connectorIdintegerPrivalomasJungties ID (0 = pagrindinis skaitiklis).
meterValuearrayPrivalomasViena ar daugiau skaitiklio reikšmių su laiko žymomis.
timestampstringPrivalomasSkaitiklio reikšmės laiko žyma. Data ir laikas.
sampledValuearrayPrivalomasViena ar daugiau išmatuotų reikšmių.
valuestringPrivalomasIšmatuota reikšmė.
contextstringNeprivalomasRodmens kontekstas. Galimos reikšmės: Interruption.Begin, Interruption.End, Sample.Clock, Sample.Periodic, Transaction.Begin, Transaction.End, Trigger, Other.
formatstringNeprivalomasReikšmės formatas. Galimos reikšmės: Raw, SignedData.
measurandstringNeprivalomasMatavimo tipas. Galimos reikšmės: Energy.Active.Export.Register, Energy.Active.Import.Register, Energy.Reactive.Export.Register, Energy.Reactive.Import.Register, Energy.Active.Export.Interval, Energy.Active.Import.Interval, Energy.Reactive.Export.Interval, Energy.Reactive.Import.Interval, Power.Active.Export, Power.Active.Import, Power.Offered, Power.Reactive.Export, Power.Reactive.Import, Power.Factor, Current.Import, Current.Export, Current.Offered, Voltage, Frequency, Temperature, SoC, RPM.
phasestringNeprivalomasFazė, kuriai taikomas matavimas. Galimos reikšmės: L1, L2, L3, N, L1-N, L2-N, L3-N, L1-L2, L2-L3, L3-L1.
locationstringNeprivalomasMatavimo vieta. Galimos reikšmės: Cable, EV, Inlet, Outlet, Body.
unitstringNeprivalomasMatavimo vienetas. Galimos reikšmės: Wh, kWh, varh, kvarh, W, kW, VA, kVA, var, kvar, A, V, K, Celcius, Celsius, Fahrenheit, Percent.
transactionIdintegerNeprivalomasĮkrovimo sesija, kuriai taikomi šie skaitiklio rodmenys.
Atsakymas

Laukų nėra: atsakymas tuščias.

Pavyzdys
Stotelė siunčia
[2, "80a15023", "MeterValues", {
  "connectorId": 1,
  "meterValue": [
    {
      "timestamp": "2026-10-06T09:30:00Z",
      "sampledValue": [
        {
          "value": "19840",
          "measurand": "Energy.Active.Import.Register",
          "unit": "Wh"
        }
      ]
    }
  ],
  "transactionId": 4521
}]
Valdymo sistema atsako
[3, "80a15023", {}]

OCPP 2.0.1 versijoje: MeterValues

Nuotoliniu būdu pradeda įkrovimo sesiją.

Užklausa
LaukasTipasNaudojimasKą jis saugo
idTagstringPrivalomasŠiai sesijai naudojamas identifikatorius. Ne daugiau kaip 20 simbolių.
connectorIdintegerNeprivalomasJungtis, kurioje pradedama.
chargingProfileobjectNeprivalomasŠiai sesijai taikomas įkrovimo profilis.
chargingProfileIdintegerPrivalomasUnikalus šio įkrovimo profilio identifikatorius.
stackLevelintegerPrivalomasProfilio prioriteto lygis (didesnis = svarbesnis).
chargingProfilePurposestringPrivalomasĮkrovimo profilio paskirtis. Galimos reikšmės: ChargePointMaxProfile, TxDefaultProfile, TxProfile.
chargingProfileKindstringPrivalomasGrafiko rūšis. Galimos reikšmės: Absolute, Recurring, Relative.
chargingScheduleobjectPrivalomasĮkrovimo grafikas.
chargingRateUnitstringPrivalomasĮkrovimo spartos vienetas (amperai arba vatai). Galimos reikšmės: A, W.
chargingSchedulePeriodarrayPrivalomasGrafiko laikotarpių sąrašas.
startPeriodintegerPrivalomasLaikotarpio pradžia sekundėmis nuo grafiko pradžios.
limitnumberPrivalomasGalios arba srovės riba šiuo laikotarpiu. Žingsnis 0,1.
numberPhasesintegerNeprivalomasĮkrovimui naudojamų fazių skaičius.
durationintegerNeprivalomasGrafiko trukmė sekundėmis.
startSchedulestringNeprivalomasGrafiko pradžios data ir laikas. Data ir laikas.
minChargingRatenumberNeprivalomasMažiausia palaikoma įkrovimo sparta. Žingsnis 0,1.
transactionIdintegerNeprivalomasĮkrovimo sesija, kuriai taikomas šis profilis.
recurrencyKindstringNeprivalomasPasikartojančių profilių kartojimo dažnis. Galimos reikšmės: Daily, Weekly.
validFromstringNeprivalomasData ir laikas, nuo kurių profilis galioja. Data ir laikas.
validTostringNeprivalomasData ir laikas, po kurių profilis nebegalioja. Data ir laikas.
Atsakymas
LaukasTipasNaudojimasKą jis saugo
statusstringPrivalomasAr stotelė priėmė užklausą. Galimos reikšmės: Accepted, Rejected.
Pavyzdys
Valdymo sistema siunčia
[2, "b7e2ef8a", "RemoteStartTransaction", {
  "idTag": "04A2B3C4D5E6F7",
  "connectorId": 1
}]
Stotelė atsako
[3, "b7e2ef8a", {
  "status": "Accepted"
}]

OCPP 2.0.1 versijoje: RequestStartTransaction

Nuotoliniu būdu sustabdo įkrovimo sesiją.

Užklausa
LaukasTipasNaudojimasKą jis saugo
transactionIdintegerPrivalomasSustabdomos įkrovimo sesijos ID.
Atsakymas
LaukasTipasNaudojimasKą jis saugo
statusstringPrivalomasAr stotelė priėmė užklausą. Galimos reikšmės: Accepted, Rejected.
Pavyzdys
Valdymo sistema siunčia
[2, "7fb0afb2", "RemoteStopTransaction", {
  "transactionId": 4521
}]
Stotelė atsako
[3, "7fb0afb2", {
  "status": "Accepted"
}]

OCPP 2.0.1 versijoje: RequestStopTransaction

Paleidžia stotelę iš naujo (Hard arba Soft).

Užklausa
LaukasTipasNaudojimasKą jis saugo
typestringPrivalomasAtliekamo paleidimo iš naujo tipas. Galimos reikšmės: Hard, Soft.
Atsakymas
LaukasTipasNaudojimasKą jis saugo
statusstringPrivalomasAr stotelė priėmė paleidimą iš naujo. Galimos reikšmės: Accepted, Rejected.
Pavyzdys
Valdymo sistema siunčia
[2, "526d688f", "Reset", {
  "type": "Soft"
}]
Stotelė atsako
[3, "526d688f", {
  "status": "Accepted"
}]

OCPP 2.0.1 versijoje: Reset

Praneša valdymo sistemai, kad įkrovimo sesija prasidėjo.

Užklausa
LaukasTipasNaudojimasKą jis saugo
connectorIdintegerPrivalomasJungtis, kurioje prasidėjo sesija.
idTagstringPrivalomasIdentifikatorius, kuriuo pradėta sesija. Ne daugiau kaip 20 simbolių.
meterStartintegerPrivalomasSkaitiklio rodmuo sesijos pradžioje (Wh).
timestampstringPrivalomasSesijos pradžios laiko žyma. Data ir laikas.
reservationIdintegerNeprivalomasPanaudotos rezervacijos ID.
Atsakymas
LaukasTipasNaudojimasKą jis saugo
idTagInfoobjectPrivalomasidTag autorizacijos informacija.
statusstringPrivalomasAutorizacijos būsena. Galimos reikšmės: Accepted, Blocked, Expired, Invalid, ConcurrentTx.
expiryDatestringNeprivalomasData ir laikas, po kurių idTag laikomas nebegaliojančiu. Data ir laikas.
parentIdTagstringNeprivalomasPagrindinis idTag grupinei autorizacijai. Ne daugiau kaip 20 simbolių.
transactionIdintegerPrivalomasCentral System priskirtas įkrovimo sesijos ID.
Pavyzdys
Stotelė siunčia
[2, "2410a6a5", "StartTransaction", {
  "connectorId": 1,
  "idTag": "04A2B3C4D5E6F7",
  "meterStart": 12500,
  "timestamp": "2026-10-06T09:30:00Z"
}]
Valdymo sistema atsako
[3, "2410a6a5", {
  "idTagInfo": {
    "status": "Accepted"
  },
  "transactionId": 4521
}]

OCPP 2.0.1 versijoje: TransactionEvent

Praneša jungties dabartinę būseną ir klaidas.

Užklausa
LaukasTipasNaudojimasKą jis saugo
connectorIdintegerPrivalomasJungtis, kurios būsena pranešama.
errorCodestringPrivalomasKlaidos kodas (NoError, jei klaidos nėra). Galimos reikšmės: ConnectorLockFailure, EVCommunicationError, GroundFailure, HighTemperature, InternalError, LocalListConflict, NoError, OtherError, OverCurrentFailure, PowerMeterFailure, PowerSwitchFailure, ReaderFailure, ResetFailure, UnderVoltage, OverVoltage, WeakSignal.
statusstringPrivalomasDabartinė jungties būsena. Galimos reikšmės: Available, Preparing, Charging, SuspendedEVSE, SuspendedEV, Finishing, Reserved, Unavailable, Faulted.
infostringNeprivalomasPapildoma laisvo teksto informacija apie būseną. Ne daugiau kaip 50 simbolių.
timestampstringNeprivalomasBūsenos pasikeitimo laiko žyma. Data ir laikas.
vendorIdstringNeprivalomasGamintojui būdingas identifikatorius. Ne daugiau kaip 255 simboliai.
vendorErrorCodestringNeprivalomasGamintojui būdingas klaidos kodas. Ne daugiau kaip 50 simbolių.
Atsakymas

Laukų nėra: atsakymas tuščias.

Pavyzdys
Stotelė siunčia
[2, "d9b0420e", "StatusNotification", {
  "connectorId": 1,
  "errorCode": "NoError",
  "status": "Available"
}]
Valdymo sistema atsako
[3, "d9b0420e", {}]

OCPP 2.0.1 versijoje: StatusNotification

Praneša valdymo sistemai, kad įkrovimo sesija sustabdyta.

Užklausa
LaukasTipasNaudojimasKą jis saugo
transactionIdintegerPrivalomasStabdomos įkrovimo sesijos ID.
timestampstringPrivalomasSesijos pabaigos laiko žyma. Data ir laikas.
meterStopintegerPrivalomasSkaitiklio rodmuo sesijos pabaigoje (Wh).
idTagstringNeprivalomasIdentifikatorius, kuris paprašė sustabdyti. Ne daugiau kaip 20 simbolių.
reasonstringNeprivalomasSesijos sustabdymo priežastis. Galimos reikšmės: EmergencyStop, EVDisconnected, HardReset, Local, Other, PowerLoss, Reboot, Remote, SoftReset, UnlockCommand, DeAuthorized.
transactionDataarrayNeprivalomasMeterValue objektų masyvas (ta pati struktūra kaip MeterValues.meterValue).
timestampstringPrivalomasSkaitiklio reikšmės laiko žyma. Data ir laikas.
sampledValuearrayPrivalomasViena ar daugiau išmatuotų reikšmių.
valuestringPrivalomasIšmatuota reikšmė.
contextstringNeprivalomasRodmens kontekstas. Galimos reikšmės: Interruption.Begin, Interruption.End, Sample.Clock, Sample.Periodic, Transaction.Begin, Transaction.End, Trigger, Other.
formatstringNeprivalomasReikšmės formatas. Galimos reikšmės: Raw, SignedData.
measurandstringNeprivalomasMatavimo tipas. Galimos reikšmės: Energy.Active.Export.Register, Energy.Active.Import.Register, Energy.Reactive.Export.Register, Energy.Reactive.Import.Register, Energy.Active.Export.Interval, Energy.Active.Import.Interval, Energy.Reactive.Export.Interval, Energy.Reactive.Import.Interval, Power.Active.Export, Power.Active.Import, Power.Offered, Power.Reactive.Export, Power.Reactive.Import, Power.Factor, Current.Import, Current.Export, Current.Offered, Voltage, Frequency, Temperature, SoC, RPM.
phasestringNeprivalomasFazė, kuriai taikomas matavimas. Galimos reikšmės: L1, L2, L3, N, L1-N, L2-N, L3-N, L1-L2, L2-L3, L3-L1.
locationstringNeprivalomasMatavimo vieta. Galimos reikšmės: Cable, EV, Inlet, Outlet, Body.
unitstringNeprivalomasMatavimo vienetas. Galimos reikšmės: Wh, kWh, varh, kvarh, W, kW, VA, kVA, var, kvar, A, V, K, Celcius, Celsius, Fahrenheit, Percent.
Atsakymas
LaukasTipasNaudojimasKą jis saugo
idTagInfoobjectNeprivalomasidTag autorizacijos informacija.
statusstringPrivalomasAutorizacijos būsena. Galimos reikšmės: Accepted, Blocked, Expired, Invalid, ConcurrentTx.
expiryDatestringNeprivalomasData ir laikas, po kurių idTag laikomas nebegaliojančiu. Data ir laikas.
parentIdTagstringNeprivalomasPagrindinis idTag grupinei autorizacijai. Ne daugiau kaip 20 simbolių.
Pavyzdys
Stotelė siunčia
[2, "b380dc07", "StopTransaction", {
  "transactionId": 4521,
  "timestamp": "2026-10-06T09:30:00Z",
  "meterStop": 19840,
  "idTag": "04A2B3C4D5E6F7"
}]
Valdymo sistema atsako
[3, "b380dc07", {
  "idTagInfo": {
    "status": "Accepted"
  }
}]

OCPP 2.0.1 versijoje: TransactionEvent

Nuotoliniu būdu atrakina jungtį.

Užklausa
LaukasTipasNaudojimasKą jis saugo
connectorIdintegerPrivalomasAtrakinama jungtis.
Atsakymas
LaukasTipasNaudojimasKą jis saugo
statusstringPrivalomasAtrakinimo užklausos rezultatas. Galimos reikšmės: Unlocked, UnlockFailed, NotSupported.
Pavyzdys
Valdymo sistema siunčia
[2, "882ccab0", "UnlockConnector", {
  "connectorId": 1
}]
Stotelė atsako
[3, "882ccab0", {
  "status": "Unlocked"
}]

OCPP 2.0.1 versijoje: UnlockConnector

Mikroprogramos valdymas

Mikroprogramos atnaujinimai ir diagnostikos duomenų įkėlimas nuotolinei stotelių priežiūrai.

Prašo stotelės įkelti diagnostikos žurnalus.

Užklausa
LaukasTipasNaudojimasKą jis saugo
locationstringPrivalomasURI, į kurį įkeliama diagnostika. Adresas (URI).
retriesintegerNeprivalomasĮkėlimo bandymų skaičius.
retryIntervalintegerNeprivalomasSekundės tarp pakartotinių bandymų.
startTimestringNeprivalomasŽurnalų rinkimo laikotarpio pradžia. Data ir laikas.
stopTimestringNeprivalomasŽurnalų rinkimo laikotarpio pabaiga. Data ir laikas.
Atsakymas
LaukasTipasNaudojimasKą jis saugo
fileNamestringNeprivalomasDiagnostikos failo pavadinimas. Ne daugiau kaip 255 simboliai.
Pavyzdys
Valdymo sistema siunčia
[2, "da7920cd", "GetDiagnostics", {
  "location": "ftp://files.example.com/diagnostics/"
}]
Stotelė atsako
[3, "da7920cd", {}]

OCPP 2.0.1 versijoje: GetLog

Praneša diagnostikos įkėlimo būseną.

Užklausa
LaukasTipasNaudojimasKą jis saugo
statusstringPrivalomasDabartinė diagnostikos įkėlimo būsena. Galimos reikšmės: Idle, Uploaded, UploadFailed, Uploading.
Atsakymas

Laukų nėra: atsakymas tuščias.

Pavyzdys
Stotelė siunčia
[2, "d1c853b4", "DiagnosticsStatusNotification", {
  "status": "Uploaded"
}]
Valdymo sistema atsako
[3, "d1c853b4", {}]

OCPP 2.0.1 versijoje: LogStatusNotification

Praneša mikroprogramos atnaujinimo būseną.

Užklausa
LaukasTipasNaudojimasKą jis saugo
statusstringPrivalomasDabartinė mikroprogramos atnaujinimo būsena. Galimos reikšmės: Downloaded, DownloadFailed, Downloading, Idle, InstallationFailed, Installing, Installed.
Atsakymas

Laukų nėra: atsakymas tuščias.

Pavyzdys
Stotelė siunčia
[2, "dc9afcb2", "FirmwareStatusNotification", {
  "status": "Installed"
}]
Valdymo sistema atsako
[3, "dc9afcb2", {}]

OCPP 2.0.1 versijoje: FirmwareStatusNotification

Nurodo stotelei atsisiųsti ir įdiegti naują mikroprogramą.

Užklausa
LaukasTipasNaudojimasKą jis saugo
locationstringPrivalomasURI, iš kurio galima atsisiųsti mikroprogramą. Adresas (URI).
retrieveDatestringPrivalomasData ir laikas, po kurių stotelė turi parsisiųsti mikroprogramą. Data ir laikas.
retriesintegerNeprivalomasAtsisiuntimo bandymų skaičius.
retryIntervalintegerNeprivalomasSekundės tarp pakartotinių bandymų.
Atsakymas

Laukų nėra: atsakymas tuščias.

Pavyzdys
Valdymo sistema siunčia
[2, "a57cc6a2", "UpdateFirmware", {
  "location": "ftp://files.example.com/fw-1.4.3.bin",
  "retrieveDate": "2026-10-07T02:00:00Z"
}]
Stotelė atsako
[3, "a57cc6a2", {}]

OCPP 2.0.1 versijoje: UpdateFirmware

Vietinis autorizacijos sąrašas

Vietinio autorizacijos sąrašo valdymas stotelėje, kad autentifikacija veiktų ir be ryšio.

Nuskaito vietinio autorizacijos sąrašo versijos numerį.

Užklausa

Laukų nėra: užklausa tuščia.

Atsakymas
LaukasTipasNaudojimasKą jis saugo
listVersionintegerPrivalomasDabartinis vietinio autorizacijos sąrašo versijos numeris.
Pavyzdys
Valdymo sistema siunčia
[2, "ccf23a29", "GetLocalListVersion", {}]
Stotelė atsako
[3, "ccf23a29", {
  "listVersion": 1
}]

OCPP 2.0.1 versijoje: GetLocalListVersion

Siunčia visą arba dalinį vietinio autorizacijos sąrašo atnaujinimą.

Užklausa
LaukasTipasNaudojimasKą jis saugo
listVersionintegerPrivalomasŠio sąrašo atnaujinimo versijos numeris.
updateTypestringPrivalomasAr tai visiškas pakeitimas, ar dalinis atnaujinimas. Galimos reikšmės: Differential, Full.
localAuthorizationListarrayNeprivalomasAutorizacijos įrašų sąrašas.
idTagstringPrivalomasAutorizuojamas identifikatorius. Ne daugiau kaip 20 simbolių.
idTagInfoobjectNeprivalomasidTag autorizacijos informacija.
statusstringPrivalomasAutorizacijos būsena. Galimos reikšmės: Accepted, Blocked, Expired, Invalid, ConcurrentTx.
expiryDatestringNeprivalomasData ir laikas, po kurių idTag laikomas nebegaliojančiu. Data ir laikas.
parentIdTagstringNeprivalomasPagrindinis idTag grupinei autorizacijai. Ne daugiau kaip 20 simbolių.
Atsakymas
LaukasTipasNaudojimasKą jis saugo
statusstringPrivalomasVietinio sąrašo atnaujinimo rezultatas. Galimos reikšmės: Accepted, Failed, NotSupported, VersionMismatch.
Pavyzdys
Valdymo sistema siunčia
[2, "a23c9563", "SendLocalList", {
  "listVersion": 1,
  "updateType": "Full",
  "localAuthorizationList": [
    {
      "idTag": "04A2B3C4D5E6F7",
      "idTagInfo": {
        "status": "Accepted"
      }
    }
  ]
}]
Stotelė atsako
[3, "a23c9563", {
  "status": "Accepted"
}]

OCPP 2.0.1 versijoje: SendLocalList

Rezervacija

Iš anksto rezervuokite jungtį konkrečiam naudotojui.

Atšaukia esamą rezervaciją.

Užklausa
LaukasTipasNaudojimasKą jis saugo
reservationIdintegerPrivalomasAtšaukiamos rezervacijos ID.
Atsakymas
LaukasTipasNaudojimasKą jis saugo
statusstringPrivalomasAr rezervacija atšaukta. Galimos reikšmės: Accepted, Rejected.
Pavyzdys
Valdymo sistema siunčia
[2, "63258356", "CancelReservation", {
  "reservationId": 7
}]
Stotelė atsako
[3, "63258356", {
  "status": "Accepted"
}]

OCPP 2.0.1 versijoje: CancelReservation

Sukuria rezervaciją konkrečioje jungtyje.

Užklausa
LaukasTipasNaudojimasKą jis saugo
connectorIdintegerPrivalomasRezervuojama jungtis (0 = be konkrečios jungties).
expiryDatestringPrivalomasData ir laikas, kada rezervacija baigia galioti. Data ir laikas.
idTagstringPrivalomasIdentifikatorius, kuriam daroma rezervacija. Ne daugiau kaip 20 simbolių.
reservationIdintegerPrivalomasUnikalus šios rezervacijos ID.
parentIdTagstringNeprivalomasPagrindinis idTag grupinei rezervacijai. Ne daugiau kaip 20 simbolių.
Atsakymas
LaukasTipasNaudojimasKą jis saugo
statusstringPrivalomasRezervacijos užklausos rezultatas. Galimos reikšmės: Accepted, Faulted, Occupied, Rejected, Unavailable.
Pavyzdys
Valdymo sistema siunčia
[2, "62a25d78", "ReserveNow", {
  "connectorId": 1,
  "expiryDate": "2026-10-06T10:00:00Z",
  "idTag": "04A2B3C4D5E6F7",
  "reservationId": 7
}]
Stotelė atsako
[3, "62a25d78", {
  "status": "Accepted"
}]

OCPP 2.0.1 versijoje: ReserveNow

Išmanusis įkrovimas

Įkrovimo profilių nustatymas ir valdymas galios balansavimui, saulės energijos integracijai ir suplanuotam įkrovimui.

Pašalina vieną ar kelis įkrovimo profilius iš stotelės.

Užklausa
LaukasTipasNaudojimasKą jis saugo
idintegerNeprivalomasŠalinamo įkrovimo profilio ID.
connectorIdintegerNeprivalomasJungtis, kurios profiliai šalinami.
chargingProfilePurposestringNeprivalomasŠalinamų profilių paskirtis. Galimos reikšmės: ChargePointMaxProfile, TxDefaultProfile, TxProfile.
stackLevelintegerNeprivalomasŠalinamų profilių steko lygis.
Atsakymas
LaukasTipasNaudojimasKą jis saugo
statusstringPrivalomasAr buvo pašalinta profilių. Galimos reikšmės: Accepted, Unknown.
Pavyzdys
Valdymo sistema siunčia
[2, "2c436739", "ClearChargingProfile", {}]
Stotelė atsako
[3, "2c436739", {
  "status": "Accepted"
}]

OCPP 2.0.1 versijoje: ClearChargingProfile

Prašo suvestinio jungties įkrovimo grafiko.

Užklausa
LaukasTipasNaudojimasKą jis saugo
connectorIdintegerPrivalomasJungtis, kurios grafiko prašoma.
durationintegerPrivalomasPrašomo grafiko trukmė sekundėmis.
chargingRateUnitstringNeprivalomasPageidaujamas grafiko vienetas. Galimos reikšmės: A, W.
Atsakymas
LaukasTipasNaudojimasKą jis saugo
statusstringPrivalomasAr stotelė gali pateikti grafiką. Galimos reikšmės: Accepted, Rejected.
connectorIdintegerNeprivalomasJungtis, kuriai taikomas grafikas.
scheduleStartstringNeprivalomasSuvestinio grafiko pradžios data ir laikas. Data ir laikas.
chargingScheduleobjectNeprivalomasSuvestinis įkrovimo grafikas.
chargingRateUnitstringPrivalomasĮkrovimo spartos vienetas (amperai arba vatai). Galimos reikšmės: A, W.
chargingSchedulePeriodarrayPrivalomasGrafiko laikotarpių sąrašas.
startPeriodintegerPrivalomasLaikotarpio pradžia sekundėmis nuo grafiko pradžios.
limitnumberPrivalomasGalios arba srovės riba šiuo laikotarpiu. Žingsnis 0,1.
numberPhasesintegerNeprivalomasĮkrovimui naudojamų fazių skaičius.
durationintegerNeprivalomasGrafiko trukmė sekundėmis.
startSchedulestringNeprivalomasGrafiko pradžios data ir laikas. Data ir laikas.
minChargingRatenumberNeprivalomasMažiausia palaikoma įkrovimo sparta. Žingsnis 0,1.
Pavyzdys
Valdymo sistema siunčia
[2, "50bc203f", "GetCompositeSchedule", {
  "connectorId": 1,
  "duration": 3600
}]
Stotelė atsako
[3, "50bc203f", {
  "status": "Accepted"
}]

OCPP 2.0.1 versijoje: GetCompositeSchedule

Siunčia įkrovimo profilį stotelei.

Užklausa
LaukasTipasNaudojimasKą jis saugo
connectorIdintegerPrivalomasJungtis, kuriai taikomas profilis.
csChargingProfilesobjectPrivalomasĮdiegiamas įkrovimo profilis.
chargingProfileIdintegerPrivalomasUnikalus šio įkrovimo profilio identifikatorius.
stackLevelintegerPrivalomasProfilio prioriteto lygis (didesnis = svarbesnis).
chargingProfilePurposestringPrivalomasĮkrovimo profilio paskirtis. Galimos reikšmės: ChargePointMaxProfile, TxDefaultProfile, TxProfile.
chargingProfileKindstringPrivalomasGrafiko rūšis. Galimos reikšmės: Absolute, Recurring, Relative.
chargingScheduleobjectPrivalomasĮkrovimo grafikas.
chargingRateUnitstringPrivalomasĮkrovimo spartos vienetas (amperai arba vatai). Galimos reikšmės: A, W.
chargingSchedulePeriodarrayPrivalomasGrafiko laikotarpių sąrašas.
startPeriodintegerPrivalomasLaikotarpio pradžia sekundėmis nuo grafiko pradžios.
limitnumberPrivalomasGalios arba srovės riba šiuo laikotarpiu. Žingsnis 0,1.
numberPhasesintegerNeprivalomasĮkrovimui naudojamų fazių skaičius.
durationintegerNeprivalomasGrafiko trukmė sekundėmis.
startSchedulestringNeprivalomasGrafiko pradžios data ir laikas. Data ir laikas.
minChargingRatenumberNeprivalomasMažiausia palaikoma įkrovimo sparta. Žingsnis 0,1.
transactionIdintegerNeprivalomasĮkrovimo sesija, kuriai taikomas šis profilis.
recurrencyKindstringNeprivalomasPasikartojančių profilių kartojimo dažnis. Galimos reikšmės: Daily, Weekly.
validFromstringNeprivalomasData ir laikas, nuo kurių profilis galioja. Data ir laikas.
validTostringNeprivalomasData ir laikas, po kurių profilis nebegalioja. Data ir laikas.
Atsakymas
LaukasTipasNaudojimasKą jis saugo
statusstringPrivalomasAr profilis priimtas. Galimos reikšmės: Accepted, Rejected, NotSupported.
Pavyzdys
Valdymo sistema siunčia
[2, "01be9b20", "SetChargingProfile", {
  "connectorId": 1,
  "csChargingProfiles": {
    "chargingProfileId": 10,
    "stackLevel": 0,
    "chargingProfilePurpose": "TxDefaultProfile",
    "chargingProfileKind": "Relative",
    "chargingSchedule": {
      "chargingRateUnit": "A",
      "chargingSchedulePeriod": [
        {
          "startPeriod": 0,
          "limit": 16.0
        }
      ]
    }
  }
}]
Stotelė atsako
[3, "01be9b20", {
  "status": "Accepted"
}]

OCPP 2.0.1 versijoje: SetChargingProfile

Nuotolinis iškvietimas

Paprašykite stotelės išsiųsti konkretų pranešimą, kai jo reikia.

Prašo stotelės nedelsiant išsiųsti konkretų pranešimą.

Užklausa
LaukasTipasNaudojimasKą jis saugo
requestedMessagestringPrivalomasPranešimas, kurį stotelė turi išsiųsti. Galimos reikšmės: BootNotification, DiagnosticsStatusNotification, FirmwareStatusNotification, Heartbeat, MeterValues, StatusNotification.
connectorIdintegerNeprivalomasJungtis, kuriai turi būti išsiųstas pranešimas.
Atsakymas
LaukasTipasNaudojimasKą jis saugo
statusstringPrivalomasAr stotelė išsiųs pranešimą. Galimos reikšmės: Accepted, Rejected, NotImplemented.
Pavyzdys
Valdymo sistema siunčia
[2, "4c736efd", "TriggerMessage", {
  "requestedMessage": "StatusNotification"
}]
Stotelė atsako
[3, "4c736efd", {
  "status": "Accepted"
}]

OCPP 2.0.1 versijoje: TriggerMessage

OCPP 1.6 konfigūracijos raktai

ChangeConfiguration stotelėje nustato po vieną raktą, o GetConfiguration juos nuskaito. Būtent čia nulemiama didžioji dalis stotelės elgsenos praktikoje: kaip dažnai ateina skaitiklio rodmenys, kas juose yra, ar sesija išlieka nutrūkus tinklo ryšiui, kaip atrakinamas kabelis.

Kaip veikia užklausa

  • Kiekviena reikšmė yra eilutėSkaičiai ir loginės reikšmės taip pat: "60", "true". JSON skaičius pažeidžia pranešimo schemą, ir schemą tikrinanti stotelė atsako CallError.
  • Raktų pavadinimus rašykite taip, kaip specifikacijojeSpecifikacija raktų pavadinimų didžiųjų ir mažųjų raidžių neskiria, bet ne kiekviena stotelė taip elgiasi, todėl rašykite MeterValuesSampledData, o ne metervaluessampleddata.
  • Kai kuriems raktams reikia paleidimo iš naujoStotelė atsako RebootRequired, o Reset išsiųsti turite Jūs.
  • Gamintojai prideda savųGetConfiguration su tuščiu raktų sąrašu grąžina visus stotelės palaikomus raktus, įskaitant paties gamintojo. Pagal pavadinimą prašyti raktai, kurių stotelė neatpažįsta, grįžta lauke unknownKey.

Keturi atsakymai

Priimta
Raktas nustatytas ir jau veikia.
Rejected
Raktas yra, bet reikšmė atmesta: už ribų, netinkamo formato arba šioje stotelėje tik skaitoma.
RebootRequired
Reikšmė išsaugota, bet įsigalios tik paleidus stotelę iš naujo.
NotSupported
Stotelė šio rakto visai neįgyvendina.

Visi 43 raktai pagal funkcijų profilį

RaktasTipasPrieigaKą jis daro
Core34
AllowOfflineTxForUnknownIdSpecifikacijoje neprivalomasbooleanSkaitymas ir rašymasAr stotelė, būdama be ryšio, pradeda įkrovimo sesiją nežinomam idTag.Reikšmė true leidžia vietai toliau krauti nutrūkus tinklo ryšiui, bet tokių sesijų gali nepavykti niekam išrašyti sąskaitos.
AuthorizationCacheEnabledSpecifikacijoje neprivalomasbooleanSkaitymas ir rašymasAr stotelė įsimena ankstesnių Authorize užklausų rezultatus.Tai ne tas pats kas Local Auth List: podėlis pildosi pats iš tikrų autorizacijų, o sąrašą atsiunčia valdymo sistema.
AuthorizeRemoteTxRequestsbooleanSkaitymasAr stotelė prieš pradėdama autorizuoja RemoteStartTransaction užklausoje esantį idTag.Jei true, nuotoliniam paleidimui iš programėlės vis tiek reikia Authorize užklausos, todėl su netinkamu idTag paleidimas nepavyksta.
BlinkRepeatSpecifikacijoje neprivalomasintegerSkaitymas ir rašymasKiek kartų stotelė mirksi lempute mirksėjimo sekos metu.
ClockAlignedDataIntervalintegerSkaitymas ir rašymasLaikrodžiu sulygiuotų skaitiklio rodmenų intervalas, skaičiuojamas nuo vidurnakčio. 0 juos išjungia.900 duoda rodmenį kas ketvirtį valandos. Būtent šis raktas tiekia MeterValuesAlignedData, ir jis veikia nepriklausomai nuo to, ar automobilis prijungtas.
ConnectionTimeOutintegerSkaitymas ir rašymasKiek laiko stotelė po autorizacijos laukia, kol vairuotojas prijungs kabelį, prieš atlaisvindama jungtį.
ConnectorPhaseRotationCSLSkaitymas ir rašymasKiekvienos jungties fazių seka, užrašoma connectorId.RST forma, pavyzdžiui, 0.RST, 1.RST, 2.RTS.Klaida čia reiškia klaidingus fazių skaitiklio rodmenis ir klaidingą vienfazį galios balansavimą. Verta patikrinti kiekvienoje trifazėje vietoje.
ConnectorPhaseRotationMaxLengthSpecifikacijoje neprivalomasintegerSkaitymasDidžiausias elementų skaičius ConnectorPhaseRotation rakte.
GetConfigurationMaxKeysintegerSkaitymasDidžiausias raktų skaičius, kurio galima prašyti viena GetConfiguration užklausa.Paprašius daugiau, stotelė gali atsakyti klaida. Išsiųskite GetConfiguration be jokių raktų ir gausite viską, ką ji palaiko.
HeartbeatIntervalintegerSkaitymas ir rašymasKaip dažnai stotelė siunčia Heartbeat, kai nieko kito nevyksta.BootNotification atsakymas gali šią reikšmę pakeisti. Naudojant SIM su apmokestinamais duomenimis, trumpas Heartbeat intervalas yra nepastebimos, bet besikaupiančios duomenų išlaidos.
LightIntensitySpecifikacijoje neprivalomasintegerSkaitymas ir rašymasStotelės apšvietimo ryškumas procentais.
LocalAuthorizeOfflinebooleanSkaitymas ir rašymasAr stotelė, būdama be ryšio, autorizuoja pagal savo vietinį sąrašą arba podėlį.
LocalPreAuthorizebooleanSkaitymas ir rašymasAr stotelė, būdama prisijungusi, pradeda įkrovimo sesiją pagal vietinį sąrašą arba podėlį, nelaukdama valdymo sistemos.Sutrumpina laukimą prie stotelės, bet valdymo sistema nebeturi paskutinio žodžio dėl kiekvieno paleidimo.
MaxEnergyOnInvalidIdSpecifikacijoje neprivalomasintegerSkaitymas ir rašymasEnergija, kurią stotelė dar patiekia paaiškėjus, kad autorizacija negalioja.
MeterValuesAlignedDataCSLSkaitymas ir rašymasMatuojami dydžiai, siunčiami laikrodžiu sulygiuotuose MeterValues pagal ClockAlignedDataInterval.Tas pats matuojamų dydžių žodynas kaip MeterValuesSampledData, tik kitas paleidiklis: laikrodis, o ne sesija.
MeterValuesAlignedDataMaxLengthSpecifikacijoje neprivalomasintegerSkaitymasDidžiausias matuojamų dydžių skaičius MeterValuesAlignedData rakte.
MeterValuesSampledDataCSLSkaitymas ir rašymasMatuojami dydžiai, kurių reikšmės imamos įkrovimo sesijos metu ir siunčiamos MeterValues pranešimuose pagal MeterValueSampleInterval.Pats naudingiausias raktas šiame puslapyje. Išsamiau žr. toliau.
MeterValuesSampledDataMaxLengthSpecifikacijoje neprivalomasintegerSkaitymasDidžiausias matuojamų dydžių skaičius MeterValuesSampledData rakte.Perskaitykite jį prieš sudarydami ilgą sąrašą: viršijus ribą, stotelė atmeta visą sąrašą.
MeterValueSampleIntervalintegerSkaitymas ir rašymasKaip dažnai sesijos metu stotelė ima MeterValuesSampledData reikšmes. 0 išjungia ėmimą.60 yra protinga numatytoji reikšmė. Esant mažiau nei 30 ir ilgam matuojamų dydžių sąrašui, sukuriate daug srauto, o papildomos informacijos gaunate labai mažai.
MinimumStatusDurationSpecifikacijoje neprivalomasintegerSkaitymas ir rašymasMažiausias laikas, kurį stotelė išbūna vienoje būsenoje, prieš pranešdama kitą.Naudinga prieš būsenų šokinėjimą stotelėse, kurios vis keičiasi tarp Preparing ir Available.
NumberOfConnectorsintegerSkaitymasFizinių jungčių skaičius šioje stotelėje.
ResetRetriesintegerSkaitymas ir rašymasKiek kartų stotelė kartoja nepavykusį paleidimą iš naujo.
StopTransactionOnEVSideDisconnectbooleanSkaitymas ir rašymasAr atjungus kabelį automobilio pusėje sustabdoma vykstanti įkrovimo sesija.False reiškia, kad ištraukus kabelį sesija lieka atvira, ir taip atsiranda niekada nesibaigiančios sesijos.
StopTransactionOnInvalidIdbooleanSkaitymas ir rašymasAr stotelė sustabdo įkrovimo sesiją, kai valdymo sistema atmeta idTag.
StopTxnAlignedDataCSLSkaitymas ir rašymasLaikrodžiu sulygiuoti matuojami dydžiai, pridedami prie StopTransaction transactionData.
StopTxnAlignedDataMaxLengthSpecifikacijoje neprivalomasintegerSkaitymasDidžiausias matuojamų dydžių skaičius StopTxnAlignedData rakte.
StopTxnSampledDataCSLSkaitymas ir rašymasImami matuojami dydžiai, pridedami prie StopTransaction transactionData.Laikykite šį sąrašą trumpą. Viskas, kas jame yra, kartojama kiekvienam visos sesijos ėmiui viename StopTransaction pranešime, ir taip stotelės pagamina megabaitų dydžio sustabdymo pranešimus, kuriuos valdymo sistemos atmeta.
StopTxnSampledDataMaxLengthSpecifikacijoje neprivalomasintegerSkaitymasDidžiausias matuojamų dydžių skaičius StopTxnSampledData rakte.
SupportedFeatureProfilesCSLSkaitymasFunkcijų profiliai, kuriuos įgyvendina ši stotelė, pavyzdžiui, Core, FirmwareManagement, SmartCharging.Sąžiningas atsakymas, ką stotelė gali. Perskaitykite jį prieš žadėdami klientui išmanųjį įkrovimą.
SupportedFeatureProfilesMaxLengthSpecifikacijoje neprivalomasintegerSkaitymasDidžiausias elementų skaičius SupportedFeatureProfiles rakte.
TransactionMessageAttemptsintegerSkaitymas ir rašymasKiek kartų stotelė kartoja sesijos pranešimo siuntimą, jei valdymo sistema jo nepatvirtino.
TransactionMessageRetryIntervalintegerSkaitymas ir rašymasBazinis laukimas tarp šių bandymų. Stotelė jį padaugina iš bandymo numerio.
UnlockConnectorOnEVSideDisconnectbooleanSkaitymas ir rašymasAr kabelis atsirakina stotelėje, kai jis atjungiamas automobilio pusėje.
WebSocketPingIntervalSpecifikacijoje neprivalomasintegerSkaitymas ir rašymasWebSocket ping kadrų intervalas OCPP-J ryšyje.Paprastas sprendimas stotelėms, kurios vis atsijungia už NAT arba užkardos, uždarančios neaktyvius ryšius.
Vietinis autorizacijos sąrašas3
LocalAuthListEnabledbooleanSkaitymas ir rašymasAr naudojamas vietinis autorizacijos sąrašas.
LocalAuthListMaxLengthintegerSkaitymasKiek įrašų telpa vietiniame autorizacijos sąraše.
SendLocalListMaxLengthintegerSkaitymasKiek įrašų telpa viename SendLocalList pranešime.Didesnį sąrašą tenka siųsti keliais daliniais atnaujinimais.
Rezervacija1
ReserveConnectorZeroSupportedSpecifikacijoje neprivalomasbooleanSkaitymasAr stotelė priima rezervaciją jungčiai 0, t. y. bet kuriai jungčiai.
Išmanusis įkrovimas5
ChargeProfileMaxStackLevelintegerSkaitymasAukščiausias steko lygis, kurį stotelė priima įkrovimo profilyje. Aukštesni lygiai turi pirmenybę.
ChargingScheduleAllowedChargingRateUnitCSLSkaitymasKokius vienetus stotelė priima įkrovimo grafike: Current (A), Power (W) ar abu.Profilį vatais išsiuntus stotelei, kuri priima tik amperus, jis atmetamas. Šis raktas pasako, kurį naudoti.
ChargingScheduleMaxPeriodsintegerSkaitymasDidžiausias laikotarpių skaičius viename įkrovimo grafike.
ConnectorSwitch3to1PhaseSupportedSpecifikacijoje neprivalomasbooleanSkaitymasAr stotelė gali persijungti tarp trifazio ir vienfazio įkrovimo.Lemia, ar galite sumažinti galią žemiau trifazio minimumo, užuot visai sustabdę įkrovimą.
MaxChargingProfilesInstalledintegerSkaitymasKiek įkrovimo profilių galima įdiegti vienu metu.

MeterValuesSampledData: ką matuoja stotelė

Vienas raktas, MeterValuesSampledData, lemia, kokią telemetriją gaunate iš įkrovimo sesijos. Tai kableliais atskirtas matuojamų dydžių sąrašas: stotelė kiekvieno jų reikšmę ima MeterValueSampleInterval nustatytu intervalu ir siunčia MeterValues pranešimu. Palikę numatytąją reikšmę, gausite vieną kaupiamąjį energijos rodmenį, kurio užtenka sąskaitai, ir nieko daugiau: jokios galios kreivės, jokios srovės pagal fazes, jokios įtampos, jokio būdo pamatyti, ar išmaniojo įkrovimo riba pritaikyta.

Jis niekada neveikia vienas. MeterValueSampleInterval nustato, kaip dažnai jis suveikia, MeterValuesSampledDataMaxLength riboja, kiek matuojamų dydžių galite nurodyti, StopTxnSampledData lemia, kurie iš jų kartojami StopTransaction pranešime, o MeterValuesAlignedData yra tas pats žodynas, tik pagal laikrodį, o ne pagal sesiją.

Matuojami dydžiai

Sąraše gali būti bet kuris iš jų. Kuriuos stotelė palaiko, priklauso nuo jos aparatinės įrangos: AC sieninė stotelė paprastai nepraneša akumuliatoriaus įkrovos lygio, o paprasta stotelė gali turėti tik energijos registrą.

Matuojamas dydisVienetasPaprastai būnaKą jis duoda
Energy.Active.Import.RegisterWhAC ir DCKaupiamoji iš tinklo paimta energija, nuskaityta tiesiai iš skaitiklio registro. Numatytoji reikšmė, kai MeterValuesSampledData tuščias, ir reikšmė, kuria grindžiamas beveik kiekvienas sąskaitos skaičiavimas.
Energy.Active.Export.RegisterWhPalaiko V2GKaupiamoji atgal atiduota energija, dvikrypčio įkrovimo sistemoms.
Energy.Active.Import.IntervalWhAC ir DCNuo ankstesnio ėmio paimta energija, o ne bendra suma.
Energy.Reactive.Import.RegistervarhPriklauso nuo skaitiklioKaupiamoji paimta reaktyvioji energija.
Power.Active.ImportWAC ir DCMomentinė aktyvioji galia. Ją atvaizduojate, kad pamatytumėte įkrovimo kreivę, ir į ją reaguoja galios valdymas.
Power.OfferedWAC ir DCGalia, kurią stotelė šiuo metu siūlo automobiliui. Palyginkite su Power.Active.Import ir pamatysite, ar riba iš tikrųjų taikoma.
Power.Reactive.ImportvarPriklauso nuo skaitiklioMomentinė reaktyvioji galia.
Power.FactorsantykisPriklauso nuo skaitiklioAktyviosios ir pilnutinės galios santykis.
Current.ImportAAC ir DCNaudojama srovė. Paprastai pranešama kiekvienai fazei atskirai, todėl šis vienas dydis gali tapti trimis reikšmėmis per ėmį.
Current.OfferedAAC ir DCSrovės riba, kurią stotelė signalizuoja automobiliui. Tiesioginis rodmuo, ar Jūsų išmaniojo įkrovimo profilis pritaikytas.
Current.ExportAPalaiko V2GAtgal atiduodama srovė, dvikrypčio įkrovimo sistemoms.
VoltageVAC ir DCMaitinimo įtampa, trifazėse stotelėse kiekvienai fazei. Naudinga pastebėti dingusią fazę arba silpną jungtį.
FrequencyHzPriklauso nuo skaitiklioTinklo dažnis. Atkreipkite dėmesį, kad specifikacijoje jam nėra vieneto lauko.
TemperatureCelsiusPriklauso nuo stotelėsTemperatūra stotelėje arba jungtyje. Paaiškina galios mažinimą karštą dieną, kol niekas to nepavadino gedimu.
SoC%DC arba ISO 15118 su ACAutomobilio akumuliatoriaus įkrovos lygis. Būna tik tada, kai automobilis jį iš tikrųjų praneša, o paprasto AC įkrovimo metu dažniausiai nepraneša.
RPMaps./minRetaiVentiliatoriaus sūkiai, stotelėse, kurios juos praneša.

Veikiantys sąrašai

Nukopijuokite vieną į ChangeConfiguration užklausos reikšmę. Pradėkite nuo trumpo sąrašo ir pridėkite dydžių, kai stotelė juos priima.

  • Tik sąskaitoms

    Minimumas, kurio vis dar užtenka teisingai sąskaitai. Daugumos stotelių numatytasis.

    Energy.Active.Import.Register
  • Įprasta telemetrija

    Protingas numatytasis valdomai AC vietai: galios kreivė, srovė ir įtampa pagal fazes diagnostikai.

    Energy.Active.Import.Register, Power.Active.Import, Current.Import, Voltage
  • Išmanusis įkrovimas

    Prideda siūlomas reikšmes, kad matytumėte, ar profilis iš tikrųjų taikomas, o ne tik spėtumėte.

    Energy.Active.Import.Register, Power.Active.Import, Power.Offered, Current.Import, Current.Offered, Voltage
  • DC greitasis įkrovimas

    Prideda įkrovos lygį ir temperatūrą, kuriuos DC stotelės praneša ir kurie paaiškina daugumą galios mažinimų.

    Energy.Active.Import.Register, Power.Active.Import, Current.Import, Voltage, SoC, Temperature

Kas sugenda

  • Vienas netinkamas dydis atmeta visą sąrašą

    Stotelės tikrina sąrašą kaip visumą. Jei bent vienas elementas nepalaikomas, gaunate Rejected arba NotSupported viskam, be jokios nuorodos, kuris nepavyko. Nustatykite sąrašą po vieną dydį ir rasite kaltininką, arba pirma perskaitykite MeterValuesSampledDataMaxLength ir gamintojo dokumentaciją.

  • Vienas dydis gali būti trys reikšmės

    Current.Import ir Voltage pranešami kiekvienai fazei, todėl trifazėje stotelėje kiekvienas jų ateina kaip trys sampledValue įrašai su žymomis L1, L2, L3 arba L1-N ir pan. Šešių dydžių sąrašas lengvai virsta keliolika reikšmių per ėmį. Pranešimo dydis auga greičiau, nei rodo sąrašo ilgis.

  • Wh ir kWh

    Energijos registras pagal numatymą yra Wh, bet vieneto laukas gali sakyti kWh, ir kai kurios mikroprogramos taip daro. Skaitykite vienetą, o ne spėkite, antraip sąskaita bus klaidinga tūkstantį kartų.

  • Trumpas intervalas nėra nemokamas

    MeterValueSampleInterval 10 sekundžių su ilgu sąrašu reiškia šimtus pranešimų per sesiją. Su apmokestinamų duomenų SIM tai tikri pinigai, o didelėje vietoje tai tikra valdymo sistemos apkrova. 60 sekundžių yra gera numatytoji reikšmė, 300 tose vietose, kur reikia tik kreivės formos.

  • StopTxnSampledData yra pranešimo dydžio spąstai

    Viskas, kas ten išvardyta, kartojama kiekvienam visos sesijos ėmiui viename StopTransaction pranešime. Ilgas sąrašas ilgoje sesijoje sukuria tokį didelį pranešimą, kad valdymo sistemos jį atmeta arba nukerpa, ir tada įkrovimo sesija tvarkingai neužsidaro. Palikite tik energijos registrą, nebent turite konkrečią priežastį.

  • Pašalinkite energijos registrą, ir sąskaitos nebeveiks

    Jei Energy.Active.Import.Register nėra sąraše, periodiniuose skaitiklio rodmenyse nėra kaupiamosios sumos. Tada dauguma valdymo sistemų remiasi meterStart ir meterStop iš sesijos pranešimų, ir kiekvienai sesijai, kurios StopTransaction dingsta, nebeįmanoma išrašyti sąskaitos. Visada laikykite jį sąraše.

  • AC įkrovimo metu SoC paprastai nepasiekiamas

    Įkrovos lygį praneša automobilis, per ISO 15118 arba DC įkrovimo protokolą. Paprastoje AC sieninėje stotelėje be Plug and Charge automobilis jo nepraneša, todėl SoC užklausa atmetama arba negrąžina nieko naudingo.

  • Skaitykite context lauką

    Kiekvienas sampledValue turi kontekstą: Sample.Periodic, Transaction.Begin, Transaction.End, Sample.Clock arba Trigger. Reikšmė su Transaction.Begin yra pradinis registro rodmuo, ne suvartojimas. Laikant kiekvieną ėmį periodiniu, sesijos suskaičiuojamos dvigubai.

Klausimai apie OCPP 1.6J

OCPP 1.6J yra Open Charge Point Protocol 1.6 versija JSON forma. Stotelė atidaro WebSocket ryšį su savo valdymo sistema, ir abi pusės juo siunčia JSON pranešimus. Open Charge Alliance 1.6 versiją paskelbė 2015 m., ir dauguma stotelių ją vis dar palaiko: mūsų stotelių duomenų bazėje iš 495 stotelių su žinoma OCPP versija 1.6 palaiko 483.

Jie perduoda tuos pačius pranešimus skirtingu būdu. 1.6J siunčia JSON per WebSocket, kurį stotelė laiko atvirą, todėl stotelei reikia tik išeinančio ryšio. 1.6S siunčia SOAP per HTTP, ir tada valdymo sistema taip pat turi pasiekti stotelę.

2.0.1 yra naujesnė versija su savo pranešimų rinkiniu. Ji aprašo stotelės nustatymus įrenginio modelyje, turi integruotus saugumo profilius, pakeičia StartTransaction ir StopTransaction pranešimu TransactionEvent ir prideda pranešimus Plug and Charge (ISO 15118) funkcijai. Šios versijos nesimaišo: stotelė ir jos valdymo sistema, užmezgdamos ryšį, susitaria dėl vienos versijos. Mūsų stotelių duomenų bazėje 102 stotelės nurodo 2.0.1 kartu su 1.6 arba vietoj jos. Visi 2.0.1 ir 2.1 pranešimai yra OCPP 2.0.1 ir 2.1 žinyne.

Open Charge Alliance ją nemokamai skelbia savo svetainėje su JSON schema kiekvienam pranešimui. Šis žinynas remiasi ta specifikacija. Jei jie skiriasi, teisi specifikacija.

Per Smart Charging profilį. Valdymo sistema siunčia SetChargingProfile su ribų grafiku amperais arba vatais. ChargePointMaxProfile riboja visą stotelę, TxDefaultProfile taikomas kiekvienai naujai sesijai, o TxProfile vienai vykstančiai sesijai. Kai persidengia du tos pačios paskirties profiliai, laimi tas, kurio stackLevel aukštesnis. Kaip tai naudoja Plugchoice, rasite išmaniojo įkrovimo puslapyje.

Patikrinkite stotelių duomenų bazėje: 775 stotelių su mums žinomomis OCPP versijomis ir kiekvienos šaltiniu. Tai paprastai nurodyta ir stotelės duomenų lape, dažnai kaip OCPP 1.6J arba OCPP 1.6 JSON.

Stotelės nustatymuose, dažnai montuotojo programėlėje arba jos vietiniame tinklalapyje, įveskite valdymo sistemos WebSocket URL (jis prasideda ws:// arba wss://) ir stotelės ID, t. y. charge point identity. Stotelė atidaro ryšį ir siunčia BootNotification. Kai valdymo sistema atsako Accepted, stotelė prisijungusi ir kiekvienai jungčiai siunčia StatusNotification.

Plugchoice ir OCPP

Daugiau skaitykite

  1. Kas yra OCPP?

    Tinklaraštis | 3 min skaitymo

  2. Kas yra OCPP valdymo sistema?

    Tinklaraštis | 2 min skaitymo

Šis puslapis DI asistentams

Visas žinynas, kiekvienas pranešimas ir kiekvienas konfigūracijos raktas, viename paprasto teksto faile, kurį asistentas gali perskaityti iš karto.

Žinynas paprastu tekstu

Valdykite savo OCPP stoteles su Plugchoice

Nemokamai prijunkite savo OCPP 1.6J stoteles prie Plugchoice ir valdykite jas internetiniame portale, programėlėje ir per API.