# Afficher la consommation électrique par période

> 💡 Le SDM230 remonte un compteur qui ne fait qu'augmenter. Pour obtenir une consommation sur une période, SCorp-io calcule la différence entre la valeur courante et la valeur précédente (N − N-1).

### Étape 1 — Activer les valeurs N-1 sur l'I/O Consommation Totale

![](https://scorpio-soft.odoo.com/web/image/4834-16e54940/image.png?access_token=f9f87733-81a0-4ad9-95a9-d61c7fb1fd19)

Dans le modèle d'objet **Compteur Electrique**, allez dans la section **I/O**.

Cliquez sur l'I/O **Consommation Totale** pour ouvrir son panneau de configuration.

Activez l'option **"Activer les valeurs N-1 pour cette donnée"**.

> 💡 Cette option permet à SCorp-io de mémoriser la valeur précédente de cet I/O à chaque réception, ce qui rendra possible le calcul de différence dans l'étape suivante.

Sauvegardez.

### Étape 2 — Créer l'attribut "Consommation Cumulée"

![](https://scorpio-soft.odoo.com/web/image/4835-ea4e5f7e/image.png?access_token=e9e122a7-787e-4882-8188-74e53fc41d85)

Allez dans la section **Attributs** du même modèle d'objet.

Créez un nouvel attribut avec les paramètres suivants :

| Champ               | Valeur                                            |
| ------------------- | ------------------------------------------------- |
| **Libellé**         | Consommation Cumulée                              |
| **Type d'attribut** | TM - lecture valeur numérique/chaîne de caractère |
| **Type de donnée**  | Float                                             |
| **Transformation**  | personnalisée                                     |
| **Historisation**   | Activée ✅                                         |

Cliquez sur l'icône ✏️ à côté de **personnalisée** pour ouvrir l'éditeur de **Formule personnalisée**.

Construisez la formule suivante :

```
Consommation Totale  −  Consommation Totale.valeur n-1

```

> ⚠️ Le résultat doit être de type **Float**. Vérifiez que c'est bien indiqué en bas de la fenêtre avant de valider.

Cliquez sur **Valider**, puis sauvegardez l'attribut.

> 💡 Cette formule calcule automatiquement la différence entre la valeur actuelle du compteur et sa valeur lors de la réception précédente, donnant ainsi la consommation réelle sur l'intervalle entre deux trames.

### Étape 3 — Créer le graphique de consommation

![](https://scorpio-soft.odoo.com/web/image/4836-83ed9fc1/image.png?access_token=70e9df5f-79ac-4165-bdb8-6fea450412e0)

Allez dans **Modèles de contenu** du modèle d'objet, puis créez un nouveau modèle de courbe.

Nommez-le **Consommation Cumulée** et configurez-le comme suit :

| Paramètre                 | Valeur                      |
| ------------------------- | --------------------------- |
| **Type de courbe**        | Série temporelle            |
| **Type de période**       | Glissante                   |
| **Durée**                 | 1 jour                      |
| **Style**                 | sombre                      |
| **Style de courbe**       | Diagramme en bâton vertical |
| **Grouper par**           | 1 heure                     |
| **Fonction d'agrégation** | Cumul                       |

Dans l'onglet **Variables**, ajoutez la variable **Consommation Cumulée** (l'attribut créé à l'étape 2).

Sauvegardez.

> 💡 Avec **Grouper par = 1 heure** et **Fonction d'agrégation = Cumul**, chaque barre du graphique représente la somme des consommations reçues sur cette heure. Pour obtenir un graphique journalier, passez **Grouper par** à 1 jour.

### Résultat attendu

Le graphique affiche la consommation en kWh heure par heure sur une fenêtre glissante de 24h, sous forme de barres verticales. Chaque barre correspond à l'énergie consommée pendant cette heure.

### Points d'attention

* La **précision du calcul dépend de la fréquence d'envoi** des trames LoRaWAN. Si la centrale envoie toutes les 15 minutes, la consommation est agrégée sur ces intervalles.
* Si le compteur est **remis à zéro** manuellement sur la centrale, la valeur N-1 sera supérieure à N et la différence sera négative. Ce cas est visible sur le graphique (barre absente ou nulle) et ne fausse pas les périodes suivantes.
* L'**historisation** doit être activée sur l'attribut (étape 2) pour que le graphique puisse accéder aux données passées.
