Saltar para o conteúdo principal
Os limites de localizações e carregadores são controlados através de perfis com janelas de prioridade, partilhados entre os endpoints de localização, carregador e cluster.

Níveis de prioridade

  • As prioridades variam entre 0 (mais baixa) e 10 (mais alta), seguindo a mesma convenção dos níveis de stack dos perfis de carregamento OCPP.
  • Cada destino (uma localização ou um conector de carregador) pode ter até 11 perfis — um por nível de prioridade — cada um com a sua própria janela [startTime, endTime).
  • Submeter um novo perfil numa prioridade que já existe para esse destino substitui o perfil existente.

Limite efetivo

A qualquer momento, o limite efetivo é o limitKw do perfil de prioridade mais alta cuja janela está atualmente ativa (startTime <= now < endTime). Se nenhum perfil estiver atualmente ativo:
  • As localizações recorrem ao permanentLimitKw (definido através de PUT /locations/{locationId}/limit).
  • Os carregadores não têm valor de recurso — fora de uma janela ativa, o conector não está bloqueado por prioridade e é gerido pela gestão de carga normal.

Aplicação/reversão automática

Os perfis são aplicados ou revertidos automaticamente no respetivo startTime/endTimenão são necessárias mais chamadas à API após a criação de um perfil. Os registos de perfis nunca são eliminados no momento da expiração, pelo que o histórico completo de perfis permanece consultável através de GET /locations/{locationId}/limits e GET /organizations/limits.

Valores de estado

Cada perfil reporta um status calculado:
StatusSignificado
SCHEDULEDnow < startTime — ainda não está ativo
ACTIVEstartTime <= now < endTime
EXPIREDnow >= endTime

Bloqueios ao nível do carregador

POST /chargers/{controllerUuid}/connectors/{connectorId}/schedules cria um perfil para um único conector. Enquanto ACTIVE, o conector está bloqueado por prioridade: é excluído da gestão de carga normal e funciona sem limitação até ao limitKw — só é limitado (nunca abaixo do seu mínimo de 6A) como último recurso, caso a localização no seu conjunto exceda o seu limite de rede.

Clusters

Um cluster agrupa várias localizações sob um limite opcional único em kW. Quando o consumo combinado do cluster ultrapassaria o limitKw, o limite efetivo de cada localização membro é reduzido proporcionalmente:
scale = min(1, clusterLimitKw / sum(memberLocationLimits))
locationEffectiveLimit = locationSetLimitKw * scale
POST /clusters/{clusterId}/schedules aplica um único LimitProfileRequest a todas as localizações do cluster de uma só vez.