Skip to main content

SCADA data pre-processing library for prognostics and healthmanagement and fault detection of wind turbines

Project description

The Wind Turbine Prognostics and Health Management library processes wind turbine events (also called alarms or status) data, as well as operational SCADA data (the usually 10-minute data coming off of wind turbines) for easier fault detection, prognostics or reliability research.

Turbine alarms often appear in high numbers during fault events, and significant effort can be involved in processing these alarms in order to find what actually happened, what the root cause was, and when the turbine came back online. This module solves this by automatically identifying stoppages and fault periods in the data and assigning a high-level “stoppage category” to each. It also provides functionality to use this info to label SCADA data for training predictive maintenance algorithms.

Although there are commercial packages that can perform this task, this library aims to be an open-source alternative for use by the research community.

Please reference this repo if used in any research. Any bugs, questions or feature requests can be raised on GitHub. Can also reach me on twitter @leahykev.

Installation

Install using pip!

pip install wtphm

Is my Data Compatible?

The data manipulated in this library are turbine events/status/alarms data and 10-minute operational SCADA data. They must be in the formats described below.

Event Data

The event_data is related to any fault or information messages generated by the turbine. This is instantaneous, and records information like faults that have occurred, or status messages like low- or no- wind, or turbine shutting down due to storm winds.

The data must have the following column headers and information available:

  • turbine_num: The turbine the data applies to

  • code: There are a set list of events which can occur on the turbine. Each one of these has an event code

  • description: Each event code also has an associated description

  • time_on: The start time of the event

  • stop_cat: This is a category for events which cause the turbine to come to a stop. It could be the functional location of where in the turbine the event originated (e.g. pitch system), a category for grid-related events, that the turbine is down for testing or maintenance, in curtailment due to shadow flicker, etc.

  • In addition, there must be a specific event code which signifies return to normal operation after any downtime or abnormal operating period.

SCADA/Operational data

The scada_data is typically recorded in 10-minute intervals and has attributes like average power output, maximum, minimum and average windspeeds, etc. over the previous 10-minute period.

For the purposes of this library, it must have the following column headers and data:

  • turbine_num: The turbine the data applies to

  • time: The 10-minute period the data belongs to

  • availability counters: Some of the functions for giving the batches a stop category rely on availability counters. These are sometimes stored as part of scada data, and sometimes in separate availability data. They count the portion of time the turbine was in some mode of operation in each 10-minute period, for availability calculations. For example, maintenance time, fault time, etc. In order to be used in this library, the availability counters are assumed to range between 0 and n in each period, where n is some arbitrary maximum (typically 600, for the 600 seconds in the 10-minute period).

Documentation

Documentation and user guide can be found on readthedocs here. A local copy of the docs can be built by running docs/build_docs.bat with sphinx installed.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

wtphm-0.1.3.tar.gz (33.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

wtphm-0.1.3-py3-none-any.whl (33.7 kB view details)

Uploaded Python 3

File details

Details for the file wtphm-0.1.3.tar.gz.

File metadata

  • Download URL: wtphm-0.1.3.tar.gz
  • Upload date:
  • Size: 33.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.1.3.post20200330 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.7.4

File hashes

Hashes for wtphm-0.1.3.tar.gz
Algorithm Hash digest
SHA256 037a50df8597d847fe90a25d8a744364df459ba76347707f6d6d48c2600a5462
MD5 58513f9fbd583f44690cc9f9f06413ac
BLAKE2b-256 a2bb060588a976541cd3ce2da612ef1a719e870615f2b422959a00c51f4d41c3

See more details on using hashes here.

File details

Details for the file wtphm-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: wtphm-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 33.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.1.3.post20200330 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.7.4

File hashes

Hashes for wtphm-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 bd4eef077c25c5e1565ed015d420a3283d84e25ddd950dd04a7203505cea8a29
MD5 f2b4721a296f004288a772f1d86d8c6e
BLAKE2b-256 aed013af8c30e4d467f58ca374d60d9d01959cdd481bb697431350021bee8bea

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page