nilmtk / nilm_metadata

A schema for modelling meters, measurements, appliances, buildings etc
http://nilm-metadata.readthedocs.org
Apache License 2.0
49 stars 47 forks source link

Range of nominal_consumption? #19

Open gjwo opened 9 years ago

gjwo commented 9 years ago

Several of my appliance rating plates now have a range of nominal consumption, for example 1350 watt - 1600 watt, I don't think the metadata allows for this. If this represents the limits of range of on_power consumption possible from the device it could be quite useful when working without secondary meters.

gjwo commented 9 years ago

On the rating plate of a vacuum cleaner I found this P.CEE 1600-1800W, P.MAX 2000W I couldn't find any definitions of P.CEE or P.MAX but CEE might related to The International Commission on the Rules for the Approval of Electrical Equipment (IECEE) was a standards body which published Specification for plugs and socket-outlets for domestic and similar purposes as CEE Publication 7. Does anybody know about this?

JackKelly commented 9 years ago

Several of my appliance rating plates now have a range of nominal consumption

Ah, good point, I hadn't considered this! Let's update the schema to handle this. Some options:

  1. We modify nominal_consumption::on_power so it can accept either a single number or a list of two numbers (i.e. [<min>, <max>]). so we'd end up with something like on_power: [1600, 1800]
  2. We modify nominal_consumption::on_power so it can accept either a single number or an dictionary with keys min and max e.g. on_power: {min: 1600, max: 1800}
  3. We modify nominal_consumption::on_power so it can accept either a single number or a string like on_power: 1600-1800. That would require some (very simple) string processing to make it machine readable.

I suppose the second is more explicit about what's going on. I'd have a slight preference for the second option but I don't have especially strong feelings about this!

Any preference?

gjwo commented 9 years ago

I don't have a feel for the nuances of Python data structures, but if you look at my example it actually has 3 different values!

JackKelly commented 9 years ago

my example it actually has 3 different values!

ah, yes, I missed that - sorry. Hmm. Like you say, before we can codify this in our schema we probably need to know exactly what P.CEE and P.MAX mean. My guess would be that P.MAX might be the peak transient power demand (i.e. the spike in power demand when the device is first turned on) and P.CEE might be the sustained power demand. But that's just a guess.

Perhaps we should wait and see if anyone can provide the exact definition of "P.CEE" and "P.MAX" (unfortunately I don't have time right now to research this).