Ce guide explique comment implémenter le backoffice de recharge intelligent à l'aide de l'OCPP.
L'infrastructure de recharge intelligente est en train de devenir la pierre angulaire des écosystèmes modernes de véhicules électriques (VE), permettant une recharge efficace et fiable pour un parc croissant de voitures électriques. Cependant, la complexité du développement d'un backoffice de recharge intelligent (également appelé gestionnaire de charge, gestionnaire de charge dynamique) peut souvent sembler décourageante pour les opérateurs de points de charge (CPO) et leurs équipes de développement. Ce guide vise à simplifier le processus en mettant l'accent sur la mise en œuvre d'un algorithme de recharge moyen utilisant le protocole Open Charge Point, en mettant l'accent sur les étapes pratiques et les stratégies permettant de surmonter les défis courants.
L'essence de la recharge intelligente réside dans sa capacité à gérer le flux d'énergie vers les chargeurs de véhicules électriques, en veillant à ce que la somme de la puissance des chargeurs ne dépasse pas la limite du réseau afin que davantage de chargeurs puissent être installés sur une connexion électrique donnée. Ce guide présente un algorithme simple mais efficace : la recharge moyenne. Dans cette méthode, chaque chargeur se voit attribuer une part égale de la puissance disponible.
Bien que ce guide soit rédigé en référence à l'OCPP 1.6, la fonctionnalité de recharge intelligente OCPP 2.0.1 est très similaire.
Cette stratégie fondamentale sert de tremplin pour explorer des algorithmes plus complexes lors de discussions futures. Les limites du réseau en fonction du temps, la priorisation et l'optimisation des coûts énergétiques s'appuieront également sur certains de ces éléments de base.

Pour mettre en œuvre la recharge intelligente, le backoffice gérera les transactions de recharge, surveillera la puissance mesurée utilisée par chaque chargeur et enverra des ChargeProfiles à chaque chargeur en spécifiant la quantité d'énergie qu'il peut utiliser, afin que la somme de la puissance restante inférieure à une limite de réseau prédéfinie. Ce processus se répète en boucle au fur et à mesure que les véhicules arrivent et partent, modifient leur demande d'énergie et les limites du réseau changent.

Au cœur d'un système de recharge intelligent se trouve le backoffice, qui peut être implémenté en Python à l'aide du https://pypi.org/project/ocpp/ library. Une configuration minimale nécessite que le serveur prenne en charge plusieurs commandes OCPP clés :
- Lance the transaction
- Arrêter la transaction
- Startup Notification
- MeterValues (crucial pour le contrôle)
- Battement de cœur
- Autoriser
- Status Notification
Dans la pratique, d'autres fonctions seront nécessaires pour la facturation, la maintenance et le contrôle d'accès. Le système doit lire activement MeterValues et gérer les transactions avec des identifiants uniques pour la recharge intelligente. L'exécution de l'algorithme de recharge intelligente lui-même peut être déclenchée par de nouvelles données ou exécutée à intervalles réguliers.
Dans un premier temps, un TxDefaultProfile à très faible consommation doit être défini pour empêcher la recharge immédiate lorsqu'un véhicule se connecte et pour empêcher le dépassement de la limite globale du réseau. Sinon, cela pourrait être inclus dans l'accusé de réception StartTransaction.
Un algorithme de moyenne très basique prendrait simplement la puissance disponible et la répartirait de manière égale entre tous les chargeurs en marche sans rétroaction. Cela ne permettra pas d'utiliser au mieux la puissance disponible si un chargeur ne peut pas utiliser toute la puissance qui lui est allouée, car cette puissance pourrait être transmise à d'autres chargeurs. L'une des principales décisions de conception est de savoir s'il faut allouer l'énergie en fonction d'un pourcentage des besoins ou de la capacité, ou la répartir uniformément, comme indiqué ici. L'algorithme suit les étapes de base suivantes :
1. Evaluez la puissance requise pour chaque chargeur (voir ci-dessous)
2. Allouez une part égale de la puissance disponible restante à chaque demande, plafonnée à la plus faible des deux valeurs suivantes : la part de puissance disponible restante ou la puissance demandée pour ce chargeur.
3. Répété la procédure 2 avec toute la puissance disponible restante qui n'a pas été allouée, jusqu'à ce que toute la puissance disponible soit allouée.
Ces allocations de puissance peuvent ensuite être placées dans ChargingProfiles et envoyées aux chargeurs.
Les chargeurs ne signalent généralement pas directement la puissance demandée, elle doit donc être estimée. L'utilisation d'une puissance demandée estimée permet de réallouer rapidement l'énergie lorsqu'un véhicule se déconnecte, par exemple, ce qui permet de libérer de l'énergie pour les autres. Une fois qu'une limite de ChargingProfile est définie, il ne sera pas évident si le véhicule pourrait consommer plus d'énergie que la limite si celle-ci est augmentée. La valeur MeterValue mesurée sera proche ou inférieure à la puissance définie dans le ChargingProfile. L'estimation de puissance demandée pour chaque transaction commence généralement par la puissance maximale que le chargeur peut fournir, puis est réduite à mesure que les mesures indiquent une consommation d'énergie inférieure. Il est possible que la consommation d'énergie augmente à mesure que la batterie se réchauffe. Pour permettre cette augmentation, la limite de demande doit être légèrement supérieure à la puissance mesurée. Si la puissance du chargeur augmente, la demande et le ChargingProfile augmenteront à chaque itération suivante lorsque l'alimentation du réseau sera disponible.
La puissance maximale qu'un chargeur peut fournir est une propriété du chargeur. Il est disponible dans le modèle d'appareil OCPP2.0.1. Une astuce simple pour obtenir la puissance maximale consiste à envoyer une requête GetCompositeSchedule avant que tout autre profil ne soit défini. Selon les spécifications, cela devrait renvoyer un profil à la puissance maximale du chargeur, bien que peu de chargeurs l'implémentent correctement. La puissance maximale peut également être configurée dans le cadre de la mise en service du backoffice.
L'un des aspects essentiels de la recharge intelligente est la séquence d'envoi des commandes SetChargingProfile. Pour éviter de dépasser les limites du réseau, il est essentiel de séquencer les commandes de diminution de puissance avant toute commande d'augmentation de puissance. Si une commande visant à augmenter la puissance est envoyée avant une commande visant à diminuer la puissance, il existe un risque que la limite du réseau soit dépassée, ce qui pourrait entraîner le déclenchement d'un disjoncteur ou une pénalité élevée pour les coûts liés à la demande de pointe. Même s'ils sont envoyés très rapidement en séquence, il existe un risque qu'un problème de communication empêche le chargeur d'accepter un profil de charge à puissance réduite. En fonction de l'importance de la limite du réseau et de votre expérience avec les chargeurs que vous utilisez, vous pouvez apporter un niveau de certitude supplémentaire en vérifiant que la puissance de sortie inférieure est confirmée par une mesure MeterValue au lieu de simplement supposer que le chargeur suit les ChargeProfiles lors de l'acceptation. Ceci est particulièrement important pour les chargeurs du secteur qui doivent transmettre le niveau de puissance au véhicule lui-même, ce qui réduit ensuite la consommation d'énergie. Le fait d'envoyer d'abord les commandes de diminution de la puissance et d'attendre que le MeterValue indique la consommation inférieure réduira légèrement la puissance fournie, mais fournit une bien meilleure certitude que la limite du réseau n'est pas dépassée.
L'envoi répété du même profil de charge en l'absence de modification peut entraîner une usure excessive de la mémoire du chargeur. Les profils de charge doivent être écrits sur la mémoire flash au cas où le chargeur serait réinitialisé. La mémoire flash a généralement une durée de vie limitée, qui peut être approchée de la durée de vie d'un chargeur avec des mises à jour très fréquentes du ChargingProfile.
Des outils tels que Flotte virtuelle ChargeSIM peut accélérer considérablement le processus de développement et de test, en fournissant un environnement robuste pour affiner les solutions de recharge intelligentes en vous permettant de démarrer instantanément des tests répétables avec plusieurs véhicules et chargeurs. Il est essentiel de toujours vérifier votre matériel réel, car même les chargeurs conformes aux normes se comportent parfois différemment.
La mise en œuvre d'un backoffice de recharge intelligente avec OCPP ne doit pas être un défi majeur. En commençant par un algorithme de charge moyenne simple et en abordant progressivement les complexités de la gestion de l'alimentation, les équipes de développement peuvent créer une infrastructure de recharge intelligente fiable et efficace.
This is not intended as financial or technical advice and ChargeSim accepts no liability for actions taken based on it. Always consult a professional about your specific situation.