Aperçu
Par défaut, l'eGauge applique un tarif fixe par kWh consommé ou produit aux zones récapitulatives en haut de la page graphique principale. Dans l'exemple ci-dessous, le site a consommé 24,7 kWh à un coût de 0,13 $ par kWh, soit un total de 3,21 $ (les valeurs sont arrondies au centime près).

Pour la consommation, la valeur saisie dans le champ « Coût moyen de 1 kWh d'électricité » ( Paramètres > Préférences) est multipliée par la valeur du totalisateur « Consommation ». Pour la production, la valeur saisie dans le champ « Paiement moyen en REC par kWh produit » est ajoutée à la valeur du « Coût moyen de 1 kWh d'électricité », puis multipliée par la valeur du totalisateur « Production ».

Cette approche ne convient pas aux systèmes de facturation à paliers (par exemple, tout système où le coût du kWh varie selon la date, l'heure ou le mois). Il est toutefois possible de créer des registres monétaires pour ces systèmes. Généralement, un registre monétaire est nécessaire pour la consommation et un autre pour la production.
Création d'un registre monétaire
Les caisses monétaires sont un type particulier de caisse à formule. Les caisses à formule sont des caisses physiques (occupant un emplacement dans la base de données eGauge) et sont spécifiées par le type de caisse « = ». Une caisse monétaire utilise l'unité de mesure « Monétaire [${currency}/s] ». Elle comporte également un champ de formule (vide dans l'exemple ci-dessous).

Information
- Comme tous les registres physiques, un registre monétaire n'enregistrera que les valeurs à partir de sa date de création.
Création d'une formule de registre monétaire
En résumé, un registre monétaire multiplie la valeur d'un registre de puissance (ou d'un ensemble de registres de puissance) par un ou plusieurs coûts par kWh. Le registre monétaire est exprimé en unités monétaires par seconde (par exemple, dollars, livres sterling, euros, etc.). Pour convertir le coût par kWh en coût par seconde, la dernière étape du calcul consiste à diviser par 3,6 x 10⁶ (soit 3 600 000). Voici un exemple simple :
($"Grid"*.25)/3.6e6
Cet exemple revient à définir le « Coût moyen de 1 kWh d'électricité » à 0,25, à ceci près que vous pouvez utiliser n'importe quel registre dans le calcul (vous n'êtes donc pas limité au registre de totalisation de la consommation). Par exemple, vous pouvez additionner deux registres :
(($"Subpanel1"+$"Subpanel2")*.25)/3.6e6
ou multiplier par une valeur supplémentaire :
(($"Grid"*2)*.25)/3.6e6
Les formules de facturation monétaire peuvent également utiliser certaines fonctions intégrées d'eGauge (notamment time(), wday(), mday() et month()) pour les structures de facturation à paliers. Pour plus d'informations sur ces fonctions, consultez la documentation de votre compteur en ajoutant /fundoc.html? à la fin de son URL (par exemple, DEVNAME.d.egauge.net/fundoc.html?, où DEVNAME correspond au nom de votre compteur).
Information
- Les fonctionnalités disponibles varient d'un compteur à l'autre en fonction de la version de son micrologiciel. Il peut être nécessaire de mettre à jour le micrologiciel pour accéder à certaines fonctions.
- Pour les compteurs connectés à eGauge.io, ces informations seront disponibles à l'adresse : DEVNAME.egauge.io/fundoc.html
Exemples de base
Commençons par un exemple simple : la facturation à paliers avec un tarif de pointe plus élevé entre 17 h et 21 h.
Tarif standard de minuit à 17 h et de 21 h à minuit : 0,15 $/kWh
Heures de pointe de 17h à 21h : 0,25 $/kWh
L'eGauge dispose d'une grande variété d'opérateurs de comparaison (=, <, >, <=, >=), nous les utiliserons donc avec la fonction time().
Information
- La fonction time() est basée sur le fuseau horaire défini dans Paramètres -> Date et heure
Un opérateur de comparaison renvoie 1 si la condition est vraie, et 0 si elle est fausse. On peut donc utiliser la formule suivante pour tester la plage horaire entre 17h et 21h :
(time()>17)*(time()<21)
Si les deux conditions sont remplies, le résultat est 1*1 . Si l'une des conditions est fausse, le résultat est 0*1 ou 1*0 ( 0 dans les deux cas).
Ensuite, nous utiliserons une condition pour renvoyer une valeur en fonction des comparaisons temporelles (exprimées sous la forme C ? T : F où C est la condition, T est la valeur renvoyée si elle est vraie et F est la valeur renvoyée si elle est fausse).
REMARQUE : Les espaces dans la formule sont facultatifs et sont ignorés. Dans les exemples ci-dessous, les espaces sont utilisés pour améliorer la lisibilité.
((time()>17)*(time()<21) ? ($"Grid"*.25) : ($"Grid"*.15))/3.6e6
Voici la formule complète : nous obtiendrons la valeur du registre « Grid » multipliée par 0,25 et divisée par 3,6e6 si l'heure est comprise entre 17 h et 21 h, et la valeur du registre « Grid » multipliée par 0,15 et divisée par 3,6e6 si l'heure est en dehors de cette plage.
Exemple intermédiaire
Passons à un exemple plus complexe : il est possible d’imbriquer des conditions pour effectuer des comparaisons plus complexes. Voici un exemple utilisant l’heure et le jour de la semaine :
Heures de pointe - 17h-21h MF 0,25 $
Week-end de pointe - 16h-22h SS 0,32 $
Heures creuses : minuit à 17 h ; 21 h à minuit : MF 0,15 $
Week-end hors pointe - 00h-16h ; 22h-00h SS 0,18 $
((wday()<=4) ? ((time()>17)*(time()<21) ? ($"Grid"*.25) : ($"Grid"*.15)) : ((time()>16)*(time()<22) ? ($"Grid"*.32) : ($"Grid"*.18)))/3.6e6
Ici, nous avons créé une condition qui compare la valeur wday()<=4 (correspondant à un jour de la semaine). Si c'est un jour de la semaine, la première condition imbriquée vérifie l'heure et renvoie une valeur en fonction de celle-ci ; si c'est le week-end, la seconde condition effectue une autre vérification de l'heure et renvoie une autre valeur. Enfin, nous divisons par 3,6e6 à la fin, ce qui est toujours nécessaire.
L'organigramme suivant illustre mieux la logique de cette formule :

REMARQUE : Les registres de formules ont une longueur finie, ce qui signifie que les systèmes de facturation extrêmement complexes peuvent ne pas être pris en charge.
Exemple avancé
En reprenant l'exemple précédent, supposons que le fournisseur d'énergie applique également des frais supplémentaires par kWh de novembre à mai, ainsi qu'un tarif journalier fixe supplémentaire :
Heures de pointe - 17h-21h MF 0,25 $
Week-end de pointe - 16h-22h SS 0,32 $
Heures creuses : minuit à 17 h ; 21 h à minuit : MF 0,15 $
Week-end hors pointe - 00h-16h ; 22h-00h SS 0,18 $
Tarif de pointe hivernale (novembre à mai) : 0,08 $ par kWh
Supplément journalier de 1,23 $
((((month()<10)*(month()>4)) ? ((wday()<=4) ? ((time()>17)*(time()<21) ? ($"Grid"*.25) : ($"Grid"*.15)) : ((time()>16)*(time()<22) ? ($"Grid"*.32) : ($"Grid"*.18))) : ((wday()<=4) ? ((time()>17)*(time()<21) ? ($"Grid"*.33) : ($"Grid"*.23)) : ((time()>16)*(time()<22) ? ($"Grid"*.40) : ($"Grid"*.26))))+(1.23/86400))/3.6e6
Dans cet exemple, nous reprenons la formule précédente. Nous avons ajouté une condition pour déterminer le mois de l'année : si le mois est supérieur à 4 (par exemple, le 1er juin) ou inférieur à 10 (par exemple, le 1er novembre), le compteur utilise la formule initiale de l'exemple intermédiaire. Sinon, il utilise une version modifiée de cette formule (avec un tarif majoré de 0,08 $ par kWh).
Une fois le coût par kWh calculé, on multiplie ce coût par la consommation affichée et on ajoute 1,23/86 400. On obtient ainsi une facturation journalière de 1,23 $, mais le système de facturation attend un tarif en dollars par seconde, et non par jour. Pour convertir les dollars par seconde en dollars par jour, il faut diviser par le nombre de secondes dans une journée (86 400).
L'organigramme suivant illustre mieux la logique de cette formule :

Utilisation du registre monétaire
Une fois le registre monétaire créé et enregistré, retournez dans Paramètres → Préférences . Faites défiler vers le bas jusqu'à « Registre des dépenses » ou « Registre des recettes » (selon que le registre monétaire est utilisé pour la facturation de la consommation ou de la production) et sélectionnez le registre approprié dans le menu déroulant.

N'oubliez pas de cliquer sur Enregistrer en bas de la page pour appliquer ces modifications.
Il est également possible de consulter le total cumulé (c.-à-d. le coût) enregistré par une caisse enregistreuse en affichant cette caisse dans l' interface utilisateur du tableau de bord moderne . Pour ce faire, créez un nouveau widget « Tableau récapitulatif » (ou ajoutez une nouvelle caisse à un widget existant). Laissez le type sur « Valeur de caisse », nommez le widget comme vous le souhaitez, sélectionnez la caisse enregistreuse dans le champ « Caisse à afficher » et laissez l'unité sur « auto ». Il peut être nécessaire d'inverser la polarité de la lecture pour obtenir une valeur en dollars positive (en utilisant l'option « Inverser le signe de la valeur »). Le résultat devrait être similaire à ce qui suit :
