Modify

Opened 3 years ago

Last modified 3 years 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 by skyper, 3 years ago

Cc: francois.lacombe added

comment:2 by skyper, 3 years ago

Description: modified (diff)

comment:3 by francois.lacombe, 3 years ago

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 by skyper, 3 years ago

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 by francois.lacombe, 3 years ago

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 3 years ago by francois.lacombe (previous) (diff)

comment:6 by gaben, 3 years ago

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 by skyper, 3 years ago

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 by gaben, 3 years ago

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

in reply to:  5 comment:9 by skyper, 3 years ago

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. Next status will be 'closed'.
to The owner will be changed from team to the specified user.
Next status will be 'needinfo'. The owner will be changed from team to skyper.
as duplicate The resolution will be set to duplicate. Next status will be 'closed'. The specified ticket will be cross-referenced with this ticket.
The owner will be changed from team to anonymous. Next status will be 'assigned'.

Add Comment


E-mail address and name can be saved in the Preferences .
 
Note: See TracTickets for help on using tickets.