{ "$schema": "http://json-schema.org/schema#", "modelTags": "", "$schemaVersion": "0.0.2", "$id": "https://smart-data-models.github.io/data-models.Energy/StorageBatteryDevice/schema.json", "title": "StorageBattery schema", "description": "The storage battery device data model is intended to describe the technical characteristics of the battery and the charging and discharging conditions of the energy.", "type": "object", "allOf": [ { "$ref": "https://smart-data-models.github.io/data-models/common-schema.json#/definitions/GSMA-Commons" }, { "$ref": "https://smart-data-models.github.io/data-models/common-schema.json#/definitions/Location-Commons" }, { "properties": { "type": { "type": "string", "enum": [ "StorageBatteryDevice" ], "description": "Property. It has to be StorageBatteryDevice. Model:'https://schema.org/Text' " }, "refDevice": { "anyOf": [ { "type": "string", "minLength": 1, "maxLength": 256, "pattern": "^[\\w\\-\\.\\{\\}\\$\\+\\*\\[\\]`|~^@!,:\\\\]+$", "description": "Property. Identifier format of any NGSI entity" }, { "type": "string", "format": "uri", "description": "Property. Identifier format of any NGSI entity" } ], "description": "Relationship. Model:'https://schema.org/URL'. Reference to the Main Entity [Device](https://github.com/smart-data-models/dataModel.Device/blob/master/Device/doc/spec.md) if used as second link." }, "refPointOfInterest": { "anyOf": [ { "type": "string", "minLength": 1, "maxLength": 256, "pattern": "^[\\w\\-\\.\\{\\}\\$\\+\\*\\[\\]`|~^@!,:\\\\]+$", "description": "Property. Identifier format of any NGSI entity" }, { "type": "string", "format": "uri", "description": "Property. Identifier format of any NGSI entity" } ], "description": "Property. Model:'https://schema.org/URL'. Reference to a [PointOfInterest](https://github.com/smart-data-models/dataModel.PointOfInterest/blob/master/PointOfInterest/doc/spec.md) linked with the observation." }, "dateLastReported": { "type": "string", "format": "date-time", "description": "Property. Model:'https://schema.org/DateTime'. A timestamp which denotes the last time when the device successfully reported data. Date and time in an ISO8601 UTCformat. " }, "batteryAssessmentMethods": { "type": "string", "enum": [ "ampereHourMeter", "dischargeTest", "electrolyteDensity", "highFrequencyImpedance", "lowFrequencyImpedance", "mathematicalModel", "operatingVoltageWithClosedCircuit", "quiescentVoltageWithOpenCircuit" ], "minItems": 0, "uniqueItems": true, "description": "Property. Model:'https://schema.org/Text'. Enum:'ampereHourMeter, dischargeTest, electrolyteDensity, highFrequencyImpedance, lowFrequencyImpedance, mathematicalModel, operatingVoltageWithClosedCircuit, quiescentVoltageWithOpenCircuit'. " }, "brandName": { "type": "string", "description": "Property. Model:'https://schema.org/Text'. Brand Name of the item." }, "modelName": { "type": "string", "description": "Property. Model:'https://schema.org/Text'. Model Name of the item. " }, "manufacturerName": { "type": "string", "description": "Property. Model:'https://schema.org/Text'. Manufacturer Name of the item." }, "serialNumber": { "type": "string", "description": "Property. Model:'https://schema.org/Text'. Serial numbers of the item." }, "application": { "type": "array", "items": { "type": "string", "enum": [ "electricMobility", "energyStorage", "emergencyStorage", "houseHoldStorage", "industrialStorage", "lighting", "production", "robotics", "other" ] }, "description": "Property. Model:'https://schema.org/Text'. Enum:'electricMobility, energyStorage, emergencyStorage, houseHoldStorage, industrialStorage, lighting, production, robotics, other'. Target application of the Device regarding the storage. A combination of the enumeration." }, "typeOfUse": { "type": "string", "enum": [ "indoor", "mixed", "outdoor", "other" ], "description": "Property. Model:'https://schema.org/Text'. Accepted use regarding its positioning in an indoor / outdoor environment. Enum:' indoor, mixed, outdoor, other'" }, "installationMode": { "type": "string", "enum": [ "aerial", "ground", "pole", "roofing", "underGround", "wall", "other" ], "description": "Property. Model:'https://schema.org/Text'. Enum:'aerial, ground, pole, roofing, underGround, wall, other'. Positioning of the device in relation to a ground reference system." }, "installationCondition": { "type": "array", "items": { "type": "string", "enum": [ "desert", "dust", "extremeClimate", "extremeCold", "extremeHeat", "extremeHumidity", "marine", "saline", "sand", "seismic", "other" ] }, "description": "Property. Model:'https://schema.org/Text'. Enum:'desert, dust, extremeClimate, extremeCold, extremeHeat, extremeHumidity, marine, saline, sand, seismic, other'. Condition and possibility of use in the following environments." }, "possibilityOfUse": { "type": "string", "enum": [ "mobile", "mixed", "stationary", "other" ], "description": "Property. Model:'https://schema.org/Text'. Possibility of use. A unique value. Enum:'mobile, mixed, stationary, other'. " }, "batteryType": { "type": "string", "enum": [ "alkaline", "gel", "lead", "lead-AGM", "Li-Ion", "Li-Po", "Li-Po4", "LMP", "Li-Air", "Na-NiCl2(Zebra)", "Ni-Cd", "Ni-MH", "Ni-Zn", "other" ], "description": "Property. Model:'https://schema.org/Text'. Enum:'alkaline, gel, lead, lead-AGM, Li-Ion, Li-Po, Li-Po4, LMP, Li-Air, Na-NiCl2(Zebra), Ni-Cd, Ni-MH, Ni-Zn, other'. Type of battery used." }, "rechargeEnergySource": { "type": "string", "enum": [ "electric", "hydraulic", "windTurbine", "other" ], "description": "Property. Model:'https://schema.org/Text'. Enum:'electric, hydraulic, windTurbine, other'. Recharge Energy Source. A unique value of the list " }, "typeEnergySource": { "type": "array", "items": { "type": "string", "enum": [ "dam", "fall", "generator", "network", "photovoltaic", "river", "sea", "waterTurbine", "wind", "other" ] }, "description": "Property. Model:'https://schema.org/Text'. Enum:'dam, fall, generator, network, photovoltaic, river, sea, waterTurbine, wind, other'. Type of Energy Source regarding `RechargeEnergySource` attribute." }, "documentation": { "type": "string", "description": "Property. Model:'https://schema.org/URL'. Technical Documentation (Installation / maintenance / use)." }, "dimension": { "type": "object", "description": "Property. External dimension of a Panel. The format is structured by a sub-property of 3 items. The unit code (text) is given using the [UN/CEFACT Common Codes](http://wiki.goodrelations-vocabulary.org/Documentation/UN/CEFACT_Common_Codes). For instance, **CMT** represents Centimeter. Units:'Centimeters'", "properties": { "height": { "type": "number", "minimum": 0 }, "width": { "type": "number", "minimum": 0 }, "depth": { "type": "number", "minimum": 0 } } }, "weight": { "type": "number", "minimum": 0, "description": "Property. Model:'https://schema.org/weight'. Weight. The unit code (text) is given using the [UN/CEFACT Common Codes](http://wiki.goodrelations-vocabulary.org/Documentation/UN/CEFACT_Common_Codes). For instance, **KGM** represents KiloGramme. Units:'Kilograms'" }, "protectionIP": { "type": "string", "description": "Property. IP *Ingress Protection* for the Junction Box. This is the level classifies and rates the degree of protection provided by mechanical casings and electrical enclosures against intrusion, dust, accidental contact, and water according to International Electrotechnical Commission standard (EN 60-529). - First digit: Solid particle protection (Single numeral: 0\u20136 or 'X'). - Second digit: Liquid ingress protection (Single numeral: 0\u20139 or 'X'). - Third digit: Personal Protection against access to dangerous parts (optional additional letter). - Fourth digit: Other protections (optional additional letter). Model:'https://en.wikipedia.org/wiki/IP_Code'." }, "protectionIK": { "type": "number", "description": "Property. IK 'Mecanic Protection' level relating to numeric classification for the degrees of protection provided by enclosures for electrical equipment against external mechanical impacts, according to International Electro technical Commission standard (EN 62-262). - IK varies from 0 (minimum resistance) to 10 (maximum resistance) which represents an Impact Energy (Unit Joule). Model:''https://schema.org/Number'." }, "operatingTemperature": { "type": "object", "description": "Property. Ambient operating temperature range. This is the minimum and maximum resistance to cold and heat for an [event]. The format is structured by a sub-property of 3 items with the format {`event`:[`min`,`max`]}. The unit code (text) is given using the [UN/CEFACT Common Codes](http://wiki.goodrelations-vocabulary.org/Documentation/UN/CEFACT_Common_Codes). For instance, **CEL** represents Degree Celsius. Units:'degrees Celsius'", "properties": { "storage": { "type": "array", "items": { "type": "number" }, "description": "Property. Model:'https://schema.org/Number'. Storage of the item" }, "discharge": { "type": "array", "items": { "type": "number" }, "description": "Property. Model:'https://schema.org/Number'. Discharge of the item " }, "charge": { "type": "array", "items": { "type": "number" }, "description": "Property. Model:'https://schema.org/Number'. Charge of the item" } } }, "nominalVoltage": { "type": "number", "description": "Property. Model:'https://schema.org/Number'. Nominal battery voltage. *(Code U)* The unit code (text) is given using the [UN/CEFACT Common Codes](http://wiki.goodrelations-vocabulary.org/Documentation/UN/CEFACT_Common_Codes). For instance, **VLT** represents Volt. Units:'volts'." }, "nominalAmpere": { "type": "number", "description": "Property. Model:'https://schema.org/Number'. Nominal Amperage. *(Code I)*. The unit code (text) is given using the [UN/CEFACT Common Codes](http://wiki.goodrelations-vocabulary.org/Documentation/UN/CEFACT_Common_Codes). For instance, **AMP** represents Ampere. Units:'amperes'" }, "nominalFrequency": { "type": "number", "description": "Property. Model:'https://schema.org/Number'. Nominal Frequency. The unit code (text) is given using the [UN/CEFACT Common Codes](http://wiki.goodrelations-vocabulary.org/Documentation/UN/CEFACT_Common_Codes). For instance, **HTZ** represents Hertz. Units:'hertz'" }, "nominalCapacity": { "type": "number", "description": "Property. Model:'https://schema.org/Number'. Nominal Energy capacity. *(Code C)* to link with the attribute [CapacityCnnn] to measure the predefined levels parameters C / xx h of discharge regimes. The unit code (text) is given using the [UN/CEFACT Common Codes](http://wiki.goodrelations-vocabulary.org/Documentation/UN/CEFACT_Common_Codes). For instance, **AMH** represents Ampere Hour. Units:'Ampere Hour'" }, "storableEnergy": { "type": "number", "description": "Property. Model:'https://schema.org/Number'. Total Storage Energy = [nominalVoltage] * [nominalCapacity]. The unit code (text) is given using the [UN/CEFACT Common Codes](http://wiki.goodrelations-vocabulary.org/Documentation/UN/CEFACT_Common_Codes). For instance, **KWH** represents Kilowatt Hour. Units:'Kw Hour'" }, "usableEnergy": { "type": "number", "description": "Property. Model:'https://schema.org/Number'. Usable Energy. The unit code (text) is given using the [UN/CEFACT Common Codes](http://wiki.goodrelations-vocabulary.org/Documentation/UN/CEFACT_Common_Codes). For instance, **KWH** represents Kilowatt Hour. Units:'Kw Hour'" }, "operatingVoltage": { "type": "object", "description": "Property. Model:'https://schema.org/Number'. Minimum and Maximum voltage allowed. The format is structured by a sub-property of 2 items. The unit code (text) is given using the [UN/CEFACT Common Codes](http://wiki.goodrelations-vocabulary.org/Documentation/UN/CEFACT_Common_Codes). For instance, **VLT** represents Volt. Units:'volt'", "properties": { "min": { "type": "number", "minimum": 0 }, "max": { "type": "number", "minimum": 0 } } }, "operatingAmpere": { "type": "object", "description": "Property. Model:'https://schema.org/Number'. Minimum and Maximum Ampere allowed. The format is structured by a sub-property of 2 items. The unit code (text) is given using the [UN/CEFACT Common Codes](http://wiki.goodrelations-vocabulary.org/Documentation/UN/CEFACT_Common_Codes). For instance, **AMP** represents Ampere. Units:'amperes'", "properties": { "min": { "type": "number", "minimum": 0 }, "max": { "type": "number", "minimum": 0 } } }, "operatingFrequency": { "type": "object", "description": "Property. Model:'https://schema.org/Number'. Minimum and Maximum frequency allowed. The format is structured by a sub-property of 2 items. The unit code (text) is given using the [UN/CEFACT Common Codes](http://wiki.goodrelations-vocabulary.org/Documentation/UN/CEFACT_Common_Codes). For instance, **HTZ** represents Hertz. Units:'hertz'", "properties": { "min": { "type": "number", "minimum": 0 }, "max": { "type": "number", "minimum": 0 } } }, "massEnergyDensity": { "type": "object", "description": "Property. Model:'https://schema.org/Number'. Mass Energy density *(Code D)*. Ratio between the capacity of the battery to deliver a certain power for a certain time and its weight. The format is structured by a sub-property of 2 items. The unit code (text) of measurement is **Wh/Kg** WattHour per Kilogram. Units:'W hour / Kg'", "properties": { "min": { "type": "number", "minimum": 0 }, "max": { "type": "number", "minimum": 0 } } }, "volEnergyDensity": { "type": "object", "description": "Property. Model:'https://schema.org/Number'. Volume Energy density *(Code D)*. The format is structured by a sub-property of 2 items. The unit code (text) of measurement is **Wh/L** WattHour per Liter. Units:'Wh/L'", "properties": { "min": { "type": "number", "minimum": 0 }, "max": { "type": "number", "minimum": 0 } } }, "maxOutputPower": { "type": "number", "description": "Property. Model:'https://schema.org/Number'. Maximum Power. The unit code (text) is given using the [UN/CEFACT Common Codes](http://wiki.goodrelations-vocabulary.org/Documentation/UN/CEFACT_Common_Codes). For instance, **KWT** represents Kilowatt. Units:'Kw'" }, "peakPower": { "type": "number", "description": "Property. Model:'https://schema.org/Number'. Maximum intensity extractable over a short period. The unit code (text) is given using the [UN/CEFACT Common Codes](http://wiki.goodrelations-vocabulary.org/Documentation/UN/CEFACT_Common_Codes). For instance, **KWT** represents Kilowatt. Units:'Kw'" }, "durationPeakPower": { "type": "number", "description": "Property. Model:'https://schema.org/Number'. Reference Time recorded for the attribute [peakPower]. The unit code (text) is given using the [UN/CEFACT Common Codes](http://wiki.goodrelations-vocabulary.org/Documentation/UN/CEFACT_Common_Codes). For instance, **SEC** represents Second. Units:'seconds'" }, "communication": { "type": "array", "description": "Property. Model:'https://schema.org/'. List of communication protocol with others device depending manufacturers. Enum:'CAN 2.0 B, dryContactTerminal, maintenanceInterface, RS485, RS485BMS, RS485Inverter, other'", "items": { "type": "string", "enum": [ "CAN 2.0 B", "dryContactTerminal", "maintenanceInterface", "RS485", "RS485BMS", "RS485Inverter", "other" ] } }, "operatingAltitude": { "type": "object", "description": "Property. Model:'https://schema.org/Number'. Operating altitude with minimum and maximum resistance to height and depth. The format is structured by a sub-property of 2 items with the keys [min] =<0 and [max] >=0. The unit code (text) is given using the [UN/CEFACT Common Codes](http://wiki.goodrelations-vocabulary.org/Documentation/UN/CEFACT_Common_Codes). For instance, **MTR** represents Meter. Units:'meters'", "properties": { "min": { "type": "number", "minimum": 0 }, "max": { "type": "number", "minimum": 0 } } }, "averageLife": { "type": "number", "description": "Property. Model:'https://schema.org/Number'. average life under normal battery usage conditions at reference temperatures. The unit code (text) is given using the [UN/CEFACT Common Codes](http://wiki.goodrelations-vocabulary.org/Documentation/UN/CEFACT_Common_Codes). For instance, **ANN** represents Year. Units:'year'" }, "lifeCycleNumber": { "type": "object", "description": "Property. Model:'https://schema.org/Number'. Number of admissible charge / discharge life cycles. The format is structured by a sub-property of 2 items.", "properties": { "min": { "type": "number", "minimum": 0 }, "max": { "type": "number", "minimum": 0 } } }, "toolBMS": { "type": "boolean", "description": "Property. Model:'https://schema.org/Boolean'. Use of a Battery Management System tool to protect, guarantee and optimize battery life. (`true` for yes)" }, "chargingModeAllowed": { "type": "array", "description": "Property. Model:'https://schema.org/Text'. Charging mode permitted to avoid damage to the battery. enum:'fast, normal, quick'", "items": { "type": "string", "enum": [ "normal", "quick", "fast" ] } }, "overloadAccepted": { "type": "boolean", "description": "Property. Model:'https://schema.org/Boolean'. Overload is permitted after exceeding the threshold.(`true` for yes)" }, "overloadAcceptedTime": { "type": "string", "format": "time", "description": "Property. Model:'https://schema.org/DateTime'. Accepted overcharge time without damage to the battery." }, "selfDischargeRate": { "type": "number", "description": "Property. Model:'https://schema.org/Number'. Battery discharge rate without any use on a baseline of 1 month according the [temperature of reference]. The unit code (text) is given using the [UN/CEFACT Common Codes](http://wiki.goodrelations-vocabulary.org/Documentation/UN/CEFACT_Common_Codes). For instance, **P1** represents Percentage.", "minimum": 0, "maximum": 1 }, "capacityCnnn": { "type": "object", "description": "Property. Model:'https://schema.org/Number'. Remaining energy as a function of the discharge time for 6 keys according the temperature of reference. Each Key is a structured value with the format {`Cnnn`:[`value1`,`value2`]} describing the different measurement of [CapacityCnnn].", "properties": { "C001": { "type": "array", "items": { "type": "number" } }, "C005": { "type": "array", "items": { "type": "number" } }, "C010": { "type": "array", "items": { "type": "number" } }, "C020": { "type": "array", "items": { "type": "number" } }, "C050": { "type": "array", "items": { "type": "number" } }, "C100": { "type": "array", "items": { "type": "number" } } } }, "roundTripEfficiency": { "type": "number", "description": "Property. Model:'https://schema.org/Number'. Round-Trip Efficiency. Efficiency, defined as the ratio between stored energy and returned energy. The unit code (text) is given using the [UN/CEFACT Common Codes](http://wiki.goodrelations-vocabulary.org/Documentation/UN/CEFACT_Common_Codes). For instance, **P1** represents Percent.", "minimum": 0, "maximum": 1 }, "chargeDischargeReactivity": { "type": "number", "description": "Property. Model:'https://schema.org/Number'. Charge and Discharge Reactivity which characterizes the reactive behavior of the system. The unit code (text) is given using the [UN/CEFACT Common Codes](http://wiki.goodrelations-vocabulary.org/Documentation/UN/CEFACT_Common_Codes). For instance, **SEC** represents Second. Units:'seconds'" }, "chargePower": { "type": "number", "description": "Property. Model:'https://schema.org/Number'. Load Power. The unit code (text) is given using the [UN/CEFACT Common Codes](http://wiki.goodrelations-vocabulary.org/Documentation/UN/CEFACT_Common_Codes). For instance, **VLT** represents Volt. Units:'volts'" }, "chargeEfficiency": { "type": "number", "description": "Property. Model:'https://schema.org/Number'. Charge Efficiency *(code PV-BAT)*. The unit code (text) is given using the [UN/CEFACT Common Codes](http://wiki.goodrelations-vocabulary.org/Documentation/UN/CEFACT_Common_Codes). For instance, **P1** represents Percent.", "minimum": 0, "maximum": 1 }, "maximumVoltageEOC": { "type": "number", "description": "Property. Model:'https://schema.org/Number'. Maximum authorized voltage after end of charge and Battery still connected to to a charge generator. The unit code (text) is given using the [UN/CEFACT Common Codes](http://wiki.goodrelations-vocabulary.org/Documentation/UN/CEFACT_Common_Codes). For instance, **VLT** represents Volt. Units:'volts'" }, "dischargePower": { "type": "number", "description": "Property. Model:'https://schema.org/Number'. Discharge Power. The unit code (text) is given using the [UN/CEFACT Common Codes](http://wiki.goodrelations-vocabulary.org/Documentation/UN/CEFACT_Common_Codes). For instance, **VLT** represents Volt. Units:'volts'" }, "dischargeEfficiency": { "type": "number", "description": "Property. Model:'https://schema.org/Number'. Discharge Efficiency *(code PV-OND)*. The unit code (text) is given using the [UN/CEFACT Common Codes](http://wiki.goodrelations-vocabulary.org/Documentation/UN/CEFACT_Common_Codes). For instance, **P1** represents Percent.", "minimum": 0, "maximum": 1 }, "minimumVoltageEOD": { "type": "number", "description": "Property. Model:'https://schema.org/Number'. Minimum voltage after end of discharge and not connected to to a charge generator. The unit code (text) is given using the [UN/CEFACT Common Codes](http://wiki.goodrelations-vocabulary.org/Documentation/UN/CEFACT_Common_Codes). For instance, **VLT** represents Volt. Units:'volts'" } } } ], "required": [ "id", "type", "location", "dateLastReported", "batteryType", "rechargeEnergySource" ] }