Descripción general
De forma predeterminada, el eGauge aplica un costo fijo por kWh usado o generado a las áreas de resumen en la parte superior de la página principal del gráfico. En el ejemplo a continuación, el sitio ha consumido 24,7 kWh a un costo de $0,13 por kWh, lo que da un total de $3,21 de consumo (los valores se redondean al centavo más cercano).

Para el consumo, el valor introducido en el "Coste medio de 1 kWh de electricidad" en Ajustes -> Preferencias se multiplica por el valor del registro totalizador "Consumo". Para la generación, el valor introducido en el "Pago medio REC por kWh generado" se suma al valor del "Coste medio de 1 kWh de electricidad" y, a continuación, se multiplica por el valor del registro totalizador "Generación".

Este enfoque no funciona con sistemas de facturación escalonada (por ejemplo, cualquier sistema de facturación donde el coste por kWh varía según la fecha, la hora o el mes). Sin embargo, es posible crear registros monetarios para estos sistemas de facturación. Generalmente, se requiere un registro monetario para el consumo y otro para la generación.
Creación de un registro monetario
Los registros monetarios son un tipo especial de registro de fórmula. Son registros físicos (es decir, ocupan una ranura en la base de datos de eGauge) y se especifican mediante el tipo de registro =. Un registro monetario utiliza el tipo de unidad Monetario [${currency}/s]. El registro también incluye un campo de fórmula (vacío en el ejemplo siguiente).

Información
- Al igual que todos los registros físicos, un registro monetario solo registrará valores desde el momento de su creación en adelante.
Creación de una fórmula de registro monetario
En su nivel más básico, un registro monetario multiplica el valor de un registro de potencia arbitrario o un conjunto de registros de potencia por uno o más valores de coste por kWh. El registro monetario se expresa en unidades monetarias por segundo (p. ej., dólares, libras, euros, etc.). Para convertir de moneda por kWh a moneda por segundo, el paso final de cualquier cálculo de registro monetario es dividir entre 3,6e6 (o 3600000). He aquí un ejemplo básico:
($"Grid"*.25)/3.6e6
Este ejemplo equivaldría a establecer el "Costo promedio de 1 kWh de electricidad" en 0,25, excepto que se puede usar cualquier registro en el cálculo (es decir, no está limitado a usar el registro de totalización de consumo). Por ejemplo, se podrían sumar dos registros:
(($"Subpanel1"+$"Subpanel2")*.25)/3.6e6
o multiplicar por algún valor adicional:
(($"Grid"*2)*.25)/3.6e6
Las fórmulas de registro monetario también pueden utilizar algunas de las funciones integradas de eGauge (específicamente time(), wday(), mday() y month()) para estructuras de facturación por niveles. Para obtener más información sobre estas funciones, consulte la documentación de funciones de su medidor añadiendo "/fundoc.html?" al final de la URL de su medidor (por ejemplo, DEVNAME.d.egauge.net/fundoc.html?, donde DEVNAME es el nombre del dispositivo de su medidor).
Información
- Las funciones disponibles varían según la versión del firmware del medidor. Puede ser necesario actualizar el firmware para acceder a ciertas funciones.
- En los medidores que se conectan a eGauge.io, esta información estará disponible en: DEVNAME.egauge.io/fundoc.html
Ejemplos básicos
Comencemos con un ejemplo básico: facturación escalonada con una tarifa pico más alta entre las 5:00 p. m. y las 9:00 p. m.
Estándar de 12 a. m. a 5 p. m.; de 9 p. m. a 12 a. m. - $ 0,15 / kWh
Hora punta de 5pm a 9pm - $0.25/kWh
El eGauge cuenta con una variedad completa de operadores de comparación (=, <, >, <=, >=), por lo que los usaremos junto con la función time().
Información
- La función time() se basa en la zona horaria configurada en Configuración -> Fecha y hora
Un operador de comparación devolverá un 1 si es verdadero o un 0 si es falso. Por lo tanto, podemos usar lo siguiente para probar el intervalo de tiempo entre las 17:00 y las 21:00:
(time()>17)*(time()<21)
Si se cumplen ambas condiciones, el resultado es 1*1 . Si alguna de las condiciones es falsa, el resultado es 0*1 o 1*0 ( 0 en ambos casos).
A continuación, utilizaremos una condición para devolver un valor basado en las comparaciones de tiempo (expresado como C ? T : F donde C es la condición, T es el valor devuelto si es verdadero y F es el valor devuelto si es falso).
NOTA: Los espacios en la fórmula son opcionales y se ignoran. En los ejemplos siguientes, se utilizan para mejorar la legibilidad.
((time()>17)*(time()<21) ? ($"Grid"*.25) : ($"Grid"*.15))/3.6e6
Esta es la fórmula completa: obtendremos el valor del registro "Grid" multiplicado por .25 y dividido por 3.6e6 si el tiempo está entre las 5 pm y las 9 pm, y el valor del registro "Grid" multiplicado por .15 y dividido por 3.6e6 si el tiempo está fuera de ese rango.
Ejemplo intermedio
Pasando a un ejemplo más complejo, es posible anidar condicionales para realizar comparaciones más complejas. Aquí hay un ejemplo con la hora del día y el día de la semana:
Hora punta: de 5:00 p. m. a 9:00 p. m., de lunes a viernes, $0,25
Fin de semana pico: 4:00 p. m. a 10:00 p. m. SS $ 0,32
Fuera de horas punta: de 12 a. m. a 5 p. m.; de 9 p. m. a 12 a. m., de lunes a viernes, $0,15
Fin de semana fuera de temporada: de 12 a. m. a 4 p. m.; 10 p. m. a 12 a. m. SS $ 0,18
((wday()<=4) ? ((time()>17)*(time()<21) ? ($"Grid"*.25) : ($"Grid"*.15)) : ((time()>16)*(time()<22) ? ($"Grid"*.32) : ($"Grid"*.18)))/3.6e6
Aquí, hemos creado una condición que usa una comparación para ver si wday()<=4 (correspondiente a un día laborable). Si es un día laborable, la primera condición anidada se ejecuta para verificar la hora y devolver un valor basado en ella; si es fin de semana, la segunda condición ejecuta una verificación de hora diferente y devuelve un valor distinto. Finalmente, dividimos por 3.6e6 al final, lo cual siempre es obligatorio.
El siguiente diagrama de flujo puede ilustrar mejor la lógica detrás de esta fórmula:

NOTA: Los registros de fórmulas tienen una longitud finita, lo que significa que es posible que no se puedan soportar esquemas de facturación extremadamente complejos.
Ejemplo avanzado
Siguiendo el ejemplo anterior, digamos que la empresa de servicios públicos también tiene un cargo adicional por kWh desde noviembre hasta mayo y una tarifa diaria fija adicional:
Hora punta: de 5:00 p. m. a 9:00 p. m., de lunes a viernes, $0,25
Fin de semana pico: 4:00 p. m. a 10:00 p. m. SS $ 0,32
Fuera de horas punta: de 12 a. m. a 5 p. m.; de 9 p. m. a 12 a. m., de lunes a viernes, $0,15
Fin de semana fuera de temporada: de 12 a. m. a 4 p. m.; 10 p. m. a 12 a. m. SS $ 0,18
Cargo por consumo máximo de invierno (noviembre-mayo): $0,08 por kWh
Recargo diario 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
En este ejemplo, nos basamos en la fórmula anterior. Usamos otra condición para comprobar el mes del año: si el mes es > 4 (es decir, el 1 de junio) o < 10 (es decir, el 1 de noviembre), el medidor usa la fórmula original del Ejemplo Intermedio. Si el mes no está dentro de ese rango, el medidor usa una versión modificada de la fórmula del Ejemplo Intermedio (con tarifas ajustadas al alza en $0,08 por kWh).
Una vez calculado el costo por kWh, multiplicamos el valor calculado por la medición real del registro y sumamos 1,23/86400. Tenemos un cargo diario de $1,23, pero el registro de valor monetario espera dólares por segundo, no dólares por día. Para convertir $/s a $/d, podemos dividir entre la cantidad de segundos en un día (86400).
El siguiente diagrama de flujo puede ilustrar mejor la lógica detrás de esta fórmula:

Utilizando el registro monetario
Una vez creado y guardado el registro monetario, vuelva a Configuración → Preferencias . Desplácese hasta "Registro de dinero usado" o "Registro de dinero ganado" (según si el registro monetario se utiliza para facturación de consumo o generación) y seleccione el registro correspondiente en el menú desplegable.

Asegúrese de hacer clic en Guardar en la parte inferior de la página para aplicar estos cambios.
También es posible ver el total acumulado (es decir, el costo) registrado por un registro monetario mostrándolo en la interfaz de usuario del Panel Moderno . Para ello, cree un nuevo dashlet "Tabla de resumen" (o añada un nuevo registro a uno existente). Deje el tipo "Valor del registro", asigne el nombre deseado al dashlet, seleccione el registro monetario en el campo "Registrar para mostrar" y deje la unidad en "Automático". Puede ser necesario invertir la polaridad de la lectura para obtener un valor positivo en dólares (usando la opción "Invertir el signo del valor"). Esto debería resultar en algo similar a lo siguiente:
