Modify

Opened 10 months ago

Last modified 10 months ago

#21399 new enhancement

Check for valid secondary tags of power plant and generator

Reported by: skyper Owned by: team
Priority: normal Milestone:
Component: Core validator Version:
Keywords: power plant generator source method output Cc: francois.lacombe

Description (last modified by skyper)

Working on #21398 I came to the conclusion that we could have some validator warnings comparing the output of the plant and the enclosed generators and for wrong combinations of method and source for generator and plant on their own and comparing between plant and its enclosed generators.

  • warn about wrong combination of generator:source and generator:method
  • warn about wrong combination of plant:source and plant:method
  • warn if plant:source does not equal all enclosed generator:source
  • warn if plant:method does not equal all enclosed generator:method
  • warn if sum of plant:output does not equal the sum of all enclosed generator:output
    • could be split into several depending on the plant sum being greater or small than the generator sum.

Or do we get too many false positives as backup/emergency generators do count.

Attachments (0)

Change History (9)

comment:1 Changed 10 months ago by skyper

Cc: francois.lacombe added

comment:2 Changed 10 months ago by skyper

Description: modified (diff)

comment:3 Changed 10 months ago by francois.lacombe

Hello there

It's definitely a challenge for data quality and consistent power plants definitions.
I think it's ok to enable such checks, I don't see situations where there are differences between plants and generators for sources. Methods may be trickier
In hydro, you'll have generator with generator:method=water-pumped-storage and generator:method=water-storage so... what should go in plant:method?
See here : https://www.openstreetmap.org/relation/3107019 No plant:method for that given reason.

Checks must be done on generator:plant=output (or no generator:plant at all) generators. generator:plant=intermediate don't impact final plant properties.
https://wiki.openstreetmap.org/wiki/Key:generator:plant

Issues will be on plants that hosts several method or sources in a very few particular places but it definitely worth a try.

It will be an opportunity to fix wiki in case of any inconsistency found during development. Let me know

comment:4 Changed 10 months ago by skyper

Thanks for the tip about generator:plant=*. The intermediate generators need to be exclude all the way or at least handled completely on their own.
Should I add generator:plant=output/intermediate to the generator presets? This would automatically produce an informal warning about "value not in preset" for other values of generator:plant=*.

Yes, I already was planing with multiple values for method and source. Well I would not tolerate multiple values for plant:method and would suggest to remove it or leave it empty but allow different values of generator:method within one plant. I would allow multiple values on plant:source but not for generators and again different values of generator:source within one plant. The value of plant:source should be empty or include all generator sources of the plant.

comment:5 Changed 10 months ago by francois.lacombe

Should I add generator:plant=output/intermediate to the generator presets?

Definitely yes

The value of plant:source should be empty or include all generator sources of the plant.

See details right after, it's not so simple

The intermediate generators need to be exclude all the way or at least handled completely on their own.

Data model is built as a chain between intermediate and output generators. Intermediate generators feed output generators.
This chart is a bit theoretical but illustrates it well: https://wiki.openstreetmap.org/wiki/File:Conventional_power_plant.png

This works fine for highly detailed nuclear power plants for instance: actual nuclear reactor is an intermediate generator outputs hot water. Hot water is used in other intermediate steam generators and then the steam is finally used in the output electricity generator.
A nuclear power plant should got plant:source=nuclear and plant:output:electricity=yes but steam generator in the middle remains invisible at the plant scale.

You've got an example here: https://www.openstreetmap.org/way/41764784
Intermediate nuclear reactor outputs hot water: https://www.openstreetmap.org/node/6591917291
Intermediate steam generator: https://www.openstreetmap.org/node/6591917288
Output electricity generator: https://www.openstreetmap.org/node/6591917286

We see here that we're not able to get if intermediate steam generator is an input one or not (we should have a third value generator:plant=input for that). Then, the only check you can do currently is to check:

  • If there are one or more intermediate generator, plant:source should be included in generator:source set.
  • If there are only output generators (default situation), plant:source should equals generator:source set.

It's a bit complex I know, I hope JOSM could handle such details.

Last edited 10 months ago by francois.lacombe (previous) (diff)

comment:6 Changed 10 months ago by gaben

I can do the Java validation part if needed. E.g. validate the sum capacity of a plant against intermediate generators; and other things if there are.

comment:7 Changed 10 months ago by skyper

I thought that it might be possible in MapCSS to calculate the sum but I did not take a closer look. Especially, site relations might need special treatment.

comment:8 Changed 10 months ago by gaben

I don't know MapCSS at all, but if possible, that's the way to go.

comment:9 in reply to:  5 Changed 10 months ago by skyper

Replying to francois.lacombe:

Should I add generator:plant=output/intermediate to the generator presets?

Definitely yes

I have added it to the update patch for #21398.

Modify Ticket

Change Properties
Set your email in Preferences
Action
as new The owner will remain team.
as The resolution will be set.
to The owner will be changed from team to the specified user.
The owner will change to skyper
as duplicate The resolution will be set to duplicate.The specified ticket will be cross-referenced with this ticket
The owner will be changed from team to anonymous.

Add Comment


E-mail address and name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.