MutabilityEnumType,
OCPP20ComponentName,
OCPP20DeviceInfoVariableName,
+ OCPP20MeasurandEnumType,
OCPP20OptionalVariableName,
OCPP20RequiredVariableName,
OCPP20VendorVariableName,
},
// SampledDataCtrlr variables
- [buildRegistryKey(OCPP20ComponentName.SampledDataCtrlr as string, 'Current.Import')]: {
+ [buildRegistryKey(
+ OCPP20ComponentName.SampledDataCtrlr as string,
+ OCPP20MeasurandEnumType.CURRENT_IMPORT
+ )]: {
component: OCPP20ComponentName.SampledDataCtrlr as string,
dataType: DataEnumType.decimal,
description: 'Instantaneous import current (A).',
persistence: PersistenceEnumType.Volatile,
supportedAttributes: [AttributeEnumType.Actual],
unit: 'A',
- variable: 'Current.Import',
+ variable: OCPP20MeasurandEnumType.CURRENT_IMPORT,
},
[buildRegistryKey(
OCPP20ComponentName.SampledDataCtrlr as string,
- 'Energy.Active.Import.Register'
+ OCPP20MeasurandEnumType.ENERGY_ACTIVE_IMPORT_REGISTER
)]: {
component: OCPP20ComponentName.SampledDataCtrlr as string,
dataType: DataEnumType.decimal,
persistence: PersistenceEnumType.Volatile,
supportedAttributes: [AttributeEnumType.Actual],
unit: 'Wh',
- variable: 'Energy.Active.Import.Register',
+ variable: OCPP20MeasurandEnumType.ENERGY_ACTIVE_IMPORT_REGISTER,
},
- [buildRegistryKey(OCPP20ComponentName.SampledDataCtrlr as string, 'Power.Active.Import')]: {
+ [buildRegistryKey(
+ OCPP20ComponentName.SampledDataCtrlr as string,
+ OCPP20MeasurandEnumType.POWER_ACTIVE_IMPORT
+ )]: {
component: OCPP20ComponentName.SampledDataCtrlr as string,
dataType: DataEnumType.decimal,
description: 'Instantaneous active power import (W).',
persistence: PersistenceEnumType.Volatile,
supportedAttributes: [AttributeEnumType.Actual],
unit: 'W',
- variable: 'Power.Active.Import',
+ variable: OCPP20MeasurandEnumType.POWER_ACTIVE_IMPORT,
},
- [buildRegistryKey(OCPP20ComponentName.SampledDataCtrlr as string, 'Voltage')]: {
+ [buildRegistryKey(
+ OCPP20ComponentName.SampledDataCtrlr as string,
+ OCPP20MeasurandEnumType.VOLTAGE
+ )]: {
component: OCPP20ComponentName.SampledDataCtrlr as string,
dataType: DataEnumType.decimal,
description: 'RMS voltage (V).',
persistence: PersistenceEnumType.Volatile,
supportedAttributes: [AttributeEnumType.Actual],
unit: 'V',
- variable: 'Voltage',
+ variable: OCPP20MeasurandEnumType.VOLTAGE,
},
[buildRegistryKey(
OCPP20ComponentName.SampledDataCtrlr as string,
component: OCPP20ComponentName.SampledDataCtrlr as string,
dataType: DataEnumType.MemberList,
// Default includes cumulative energy and interval energy plus voltage for billing context
- defaultValue: 'Energy.Active.Import.Register,Energy.Active.Import.Interval,Voltage',
+ defaultValue: `${OCPP20MeasurandEnumType.ENERGY_ACTIVE_IMPORT_REGISTER},${OCPP20MeasurandEnumType.ENERGY_ACTIVE_IMPORT_INTERVAL},${OCPP20MeasurandEnumType.VOLTAGE}`,
description: 'Measurands sampled at transaction end.',
enumeration: [
- 'Energy.Active.Import.Register',
- 'Energy.Active.Import.Interval',
- 'Energy.Active.Export.Register',
- 'Power.Active.Import',
- 'Power.Active.Export',
- 'Power.Reactive.Import',
- 'Power.Reactive.Export',
- 'Power.Offered',
- 'Current.Import',
- 'Current.Export',
- 'Voltage',
- 'Frequency',
- 'Temperature',
- 'SoC',
- 'RPM',
- 'Power.Factor',
+ OCPP20MeasurandEnumType.ENERGY_ACTIVE_IMPORT_REGISTER,
+ OCPP20MeasurandEnumType.ENERGY_ACTIVE_IMPORT_INTERVAL,
+ OCPP20MeasurandEnumType.ENERGY_ACTIVE_EXPORT_REGISTER,
+ OCPP20MeasurandEnumType.POWER_ACTIVE_IMPORT,
+ OCPP20MeasurandEnumType.POWER_ACTIVE_EXPORT,
+ OCPP20MeasurandEnumType.POWER_REACTIVE_IMPORT,
+ OCPP20MeasurandEnumType.POWER_REACTIVE_EXPORT,
+ OCPP20MeasurandEnumType.POWER_OFFERED,
+ OCPP20MeasurandEnumType.CURRENT_IMPORT,
+ OCPP20MeasurandEnumType.CURRENT_EXPORT,
+ OCPP20MeasurandEnumType.VOLTAGE,
+ OCPP20MeasurandEnumType.FREQUENCY,
+ OCPP20MeasurandEnumType.STATE_OF_CHARGE,
+ OCPP20MeasurandEnumType.POWER_FACTOR,
],
mutability: MutabilityEnumType.ReadWrite,
persistence: PersistenceEnumType.Persistent,
)]: {
component: OCPP20ComponentName.SampledDataCtrlr as string,
dataType: DataEnumType.MemberList,
- defaultValue: 'Energy.Active.Import.Register,Power.Active.Import,Voltage',
+ defaultValue: `${OCPP20MeasurandEnumType.ENERGY_ACTIVE_IMPORT_REGISTER},${OCPP20MeasurandEnumType.POWER_ACTIVE_IMPORT},${OCPP20MeasurandEnumType.VOLTAGE}`,
description: 'Measurands sampled at transaction start.',
enumeration: [
- 'Energy.Active.Import.Register',
- 'Energy.Active.Import.Interval',
- 'Energy.Active.Export.Register',
- 'Power.Active.Import',
- 'Power.Active.Export',
- 'Power.Reactive.Import',
- 'Power.Reactive.Export',
- 'Power.Offered',
- 'Current.Import',
- 'Current.Export',
- 'Voltage',
- 'Frequency',
- 'Temperature',
- 'SoC',
- 'RPM',
- 'Power.Factor',
+ OCPP20MeasurandEnumType.ENERGY_ACTIVE_IMPORT_REGISTER,
+ OCPP20MeasurandEnumType.ENERGY_ACTIVE_IMPORT_INTERVAL,
+ OCPP20MeasurandEnumType.ENERGY_ACTIVE_EXPORT_REGISTER,
+ OCPP20MeasurandEnumType.POWER_ACTIVE_IMPORT,
+ OCPP20MeasurandEnumType.POWER_ACTIVE_EXPORT,
+ OCPP20MeasurandEnumType.POWER_REACTIVE_IMPORT,
+ OCPP20MeasurandEnumType.POWER_REACTIVE_EXPORT,
+ OCPP20MeasurandEnumType.POWER_OFFERED,
+ OCPP20MeasurandEnumType.CURRENT_IMPORT,
+ OCPP20MeasurandEnumType.CURRENT_EXPORT,
+ OCPP20MeasurandEnumType.VOLTAGE,
+ OCPP20MeasurandEnumType.FREQUENCY,
+ OCPP20MeasurandEnumType.STATE_OF_CHARGE,
+ OCPP20MeasurandEnumType.POWER_FACTOR,
],
mutability: MutabilityEnumType.ReadWrite,
persistence: PersistenceEnumType.Persistent,
)]: {
component: OCPP20ComponentName.SampledDataCtrlr as string,
dataType: DataEnumType.MemberList,
- defaultValue: 'Energy.Active.Import.Register,Current.Import,Voltage',
+ defaultValue: `${OCPP20MeasurandEnumType.ENERGY_ACTIVE_IMPORT_REGISTER},${OCPP20MeasurandEnumType.CURRENT_IMPORT},${OCPP20MeasurandEnumType.VOLTAGE}`,
description: 'Measurands included in periodic updates.',
enumeration: [
- 'Energy.Active.Import.Register',
- 'Energy.Active.Import.Interval',
- 'Energy.Active.Export.Register',
- 'Power.Active.Import',
- 'Power.Active.Export',
- 'Power.Reactive.Import',
- 'Power.Reactive.Export',
- 'Power.Offered',
- 'Current.Import',
- 'Current.Export',
- 'Voltage',
- 'Frequency',
- 'Temperature',
- 'SoC',
- 'RPM',
- 'Power.Factor',
+ OCPP20MeasurandEnumType.ENERGY_ACTIVE_IMPORT_REGISTER,
+ OCPP20MeasurandEnumType.ENERGY_ACTIVE_IMPORT_INTERVAL,
+ OCPP20MeasurandEnumType.ENERGY_ACTIVE_EXPORT_REGISTER,
+ OCPP20MeasurandEnumType.POWER_ACTIVE_IMPORT,
+ OCPP20MeasurandEnumType.POWER_ACTIVE_EXPORT,
+ OCPP20MeasurandEnumType.POWER_REACTIVE_IMPORT,
+ OCPP20MeasurandEnumType.POWER_REACTIVE_EXPORT,
+ OCPP20MeasurandEnumType.POWER_OFFERED,
+ OCPP20MeasurandEnumType.CURRENT_IMPORT,
+ OCPP20MeasurandEnumType.CURRENT_EXPORT,
+ OCPP20MeasurandEnumType.VOLTAGE,
+ OCPP20MeasurandEnumType.FREQUENCY,
+ OCPP20MeasurandEnumType.STATE_OF_CHARGE,
+ OCPP20MeasurandEnumType.POWER_FACTOR,
],
mutability: MutabilityEnumType.ReadWrite,
persistence: PersistenceEnumType.Persistent,
Unavailable = 'Unavailable',
}
+export enum OCPP20MeasurandEnumType {
+ CURRENT_EXPORT = 'Current.Export',
+ CURRENT_IMPORT = 'Current.Import',
+ CURRENT_OFFERED = 'Current.Offered',
+ ENERGY_ACTIVE_EXPORT_INTERVAL = 'Energy.Active.Export.Interval',
+ ENERGY_ACTIVE_EXPORT_REGISTER = 'Energy.Active.Export.Register',
+ ENERGY_ACTIVE_IMPORT_INTERVAL = 'Energy.Active.Import.Interval',
+ ENERGY_ACTIVE_IMPORT_REGISTER = 'Energy.Active.Import.Register',
+ ENERGY_ACTIVE_NET = 'Energy.Active.Net',
+ ENERGY_APPARENT_EXPORT = 'Energy.Apparent.Export',
+ ENERGY_APPARENT_IMPORT = 'Energy.Apparent.Import',
+ ENERGY_APPARENT_NET = 'Energy.Apparent.Net',
+ ENERGY_REACTIVE_EXPORT_INTERVAL = 'Energy.Reactive.Export.Interval',
+ ENERGY_REACTIVE_EXPORT_REGISTER = 'Energy.Reactive.Export.Register',
+ ENERGY_REACTIVE_IMPORT_INTERVAL = 'Energy.Reactive.Import.Interval',
+ ENERGY_REACTIVE_IMPORT_REGISTER = 'Energy.Reactive.Import.Register',
+ ENERGY_REACTIVE_NET = 'Energy.Reactive.Net',
+ FREQUENCY = 'Frequency',
+ POWER_ACTIVE_EXPORT = 'Power.Active.Export',
+ POWER_ACTIVE_IMPORT = 'Power.Active.Import',
+ POWER_FACTOR = 'Power.Factor',
+ POWER_OFFERED = 'Power.Offered',
+ POWER_REACTIVE_EXPORT = 'Power.Reactive.Export',
+ POWER_REACTIVE_IMPORT = 'Power.Reactive.Import',
+ STATE_OF_CHARGE = 'SoC',
+ VOLTAGE = 'Voltage',
+}
+
export enum OperationalStatusEnumType {
Inoperative = 'Inoperative',
Operative = 'Operative',