Add energy skills: OpenOCPP, EVerest, CitrineOS

- Skills classified under energy/ directory
- OpenOCPP: firmware OCPP 1.6J/2.0.1 for EV chargers
- EVerest: EV charging middleware
- CitrineOS: CSMS open-source OCPP 2.0.1
This commit is contained in:
Eric F
2026-06-07 23:48:03 -04:00
parent b4e1f6f3f5
commit 09794b31f9
3 changed files with 163 additions and 0 deletions

View File

@@ -0,0 +1,100 @@
# Skill OpenOCPP - Cariflex
## Description
Installation et configuration d'OpenOCPP (firmware OCPP 1.6J/2.0.1) pour les bornes de recharge EV de Cariflex.
## Prérequis
- Bornes de recharge EV compatibles OCPP
- CitrineOS (CSMS) déployé
- FlexMeasures (RM) configuré
## Installation
### 1. Cloner OpenOCPP
```bash
git clone https://github.com/ChargeLab/OpenOCPP.git /home/eric/cariflex/tools/openocpp
cd /home/eric/cariflex/tools/openocpp
```
### 2. Compiler le firmware
```bash
# Prérequis: CMake, C++ compiler
mkdir build && cd build
cmake ..
make -j4
```
### 3. Déployer sur les bornes
```bash
# Configurer le point d'accès CSMS (CitrineOS)
# Dans la configuration de la borne:
# - CSMS URL: wss://flexmeasures.digitswarm.fr
# - OCPP version: 2.0.1
# - Security: TLS + certificat client
```
## Configuration OCPP
### Paramètres OCPP 2.0.1
```json
{
"core_profile": true,
"smart_charging_profile": true,
"remote_trigger_profile": true,
"security_profile": 2,
"heartbeat_interval": 60,
"connection_timeout": 30,
"max_message_size": 65536
}
```
### Messages OCPP supportés
| Message | Direction | Usage |
|---------|-----------|-------|
| BootNotification | CSMS → Borne | Démarrage |
| Heartbeat | Bidirectionnel | Keep-alive |
| MeterValues | CSMS → Borne | Mesures |
| TransactionEvent | CSMS → Borne | Début/fin transaction |
| RemoteStartTransaction | Borne → CSMS | Démarrage à distance |
| RemoteStopTransaction | Borne → CSMS | Arrêt à distance |
| SetChargingProfile | Borne → CSMS | Programme de charge |
| TriggerMessage | Bidirectionnel | Déclenchement |
| ChangeConfiguration | Borne → CSMS | Configuration |
| GetConfiguration | Borne → CSMS | Lecture config |
| Reset | Borne → CSMS | Redémarrage |
| ClearChargingProfile | Borne → CSMS | Effacer profil |
| GetCompositeSchedule | Borne → CSMS | Lire schedule |
| NotifyReport | CSMS → Borne | Rapport |
| NotifyEvent | CSMS → Borne | Événement |
| LogStatusNotification | CSMS → Borne | Statut log |
| SignedFirmwareStatusNotification | CSMS → Borne | Statut firmware |
### Smart Charging (ISO 15118)
- Charging profiles : TxProfile, TxDefaultProfile
- Schedule periods : puissance max, durée
- Tarification : coût par kWh, coût fixe
- Recharge intelligente : V2G, PV couverture
## Intégration FlexMeasures
### Flux de données
```
Borne EV → OCPP → CitrineOS → FlexMeasures API → PostgreSQL
Scheduling/Optimisation
Grafana (viz)
```
### Configuration FlexMeasures pour bornes
1. Créer un device/asset par Borne VE
2. Créer un sensor de puissance (kW) par asset
3. Configurer le flex_context pour la flexibilité
4. Configurer les charging profiles OCPP
## Liens utiles
- GitHub: https://github.com/ChargeLab/OpenOCPP
- Documentation OCPP: https://www.openchargealliance.org/
- OCA Certification: https://www.openchargealliance.org/
- Guide OCPP complet: https://www.ampeco.com/guides/complete-ocpp-guide/
- Open Charge Point Protocol: https://openocpp.com/