This package is a mosaik simulator for wind turbines. It uses wind speed data to calculate the power output of a wind turbine given a power curve.
Attributes:
P[MW] - output attribute, generated active power [MW] (note that it was named P_gen in the old version)
wind_speed - input attribute, wind speed [m/s]
Parameters:
power_curve_file - a power curve file in .csv format that must be sutable for pd.read_csv, see CSV formatting section below. For an example of a power curve, see at: https://www.wind-turbine-models.com/turbines/550-enercon-e-82-e2-2.300
rotor_area - swept area [m²]
max_power_mw - maximum rated power [MW]
The simulator entities can be configured using these parameters in two ways:
Calculating power using the power curve that is given as the instant power in kW or MW (power_kw or power_mw). In this case the power is interpolated based on given wind speed, see CSV formatting section below.
Calculating power using the wind turbine power formula and so called power_factor (cp or the coefficient of performance, see also). In this case either the rotor_area or the max_power_mw of the turbine must be specified.
Installation
To use this project, you have to install at least version 3.4.0 of mosaik
It is recommended, to use the mosaik_csv library to import wind data.
You can install this project through pip with the following command:
pip install mosaik-wind
How to Use
Note that one working example can be found in tests folder.
Specify simulators configurations within your scenario script:
sim_config = {
'CSV': {
'python': 'mosaik_csv:CSV',
},
'Wind': {
'python': 'mosaik_components.wind:Simulator'
},
...
}
Initialize the wind- and csv-simulator:
wind_data = world.start("CSV",
sim_start='YYYY-MM-DD HH:mm:ss',
datafile='path/to/wind_speed/data.csv')
wind_sim = world.start('Wind',
power_curve_file='path/to/power_curve/data.csv',
step_size=3600
gen_neg=True)
Instantiate model entities:
wind_speed = wind_data.Wind() wind_model = wind_sim.WT()
Connect wind- with csv-simulator:
world.connect(wind_speed, wind_model, 'wind_speed')
CSV-Formatting
For the simulator to work correctly, both .csv files have to be specifically formatted!
wind-data
Each row in the .csv needs a DateTime entry in the YYYY-MM-DD HH:mm:ss format and a wind_speed value, measured in meters per second. The wind_data.csv is formatted accordingly to the conventions of the mosaik_csv simulator:
Wind Time,wind_speed YYYY-MM-DD HH:mm:ss,v1 YYYY-MM-DD HH:mm:ss,v2 ...
power-curve
Note that the entries for each data point require the wind_speed [m/s], as well as a corresponding power_factor or related power values power_kw [kW] or power_mw [MW]. The power-curve .csv does not need the mosaik_csv formatting:
wind_speed,power_factor 0,0 1,0 2,0.12 3,0.29 ... wind_speed,power_kw 0,0 3.5,100 4.0,205 4.5,355 ... wind_speed,power_mw 0,0 3.5,0.1 4.0,0.205 4.5,0.355 ...
Changelog
0.1.0 - 2024-03-06
Initial release of the mosaik-wind simulator
0.2.0 - 2025-03-18
Refactoring of attributes and parameters: power_curve_csv -> power_curve_file; P_gen -> P[MW].
The power_curve_file can now be specified during simulator initialization and during model creation.
power_factor, power_kw or power_mw can be used as input data for the power curve.
To calculate a power curve based on power_factor, either rotor_area or max_power_mw is required as input data.
Metadata
Release files for mosaik-wind 0.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| mosaik_wind-0.2.0.tar.gz | 5.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| mosaik_wind-0.2.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 12.1 kB
Release files / mosaik_wind-0.2.0.tar.gz
| Download URL | mosaik_wind-0.2.0.tar.gz |
|---|---|
| Size | 5.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
48176666b3aeeac40df40ef05105ea9b62e2eca820a3d568e84c21f688d48f74
|
|
BLAKE2b-256 checksum How to use checksums |
c2f8a8ad4f370b0cdacc20e657c472f5e54f173264d99e79baf84a312950a644
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.1.1 CPython/3.9.21 Linux/5.15.154+
|
Release files / mosaik_wind-0.2.0-py3-none-any.whl
| Download URL | mosaik_wind-0.2.0-py3-none-any.whl |
|---|---|
| Size | 6.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
10c3b18bcc3190b0a5a1bf5c06e7213055fd7959b0878ca12f9709d6ebe61c18
|
|
BLAKE2b-256 checksum How to use checksums |
d6f09a0d94f6ea153f2edf174f5c3694e4fcacf91aa5bfe2651c257d09ad8407
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.1.1 CPython/3.9.21 Linux/5.15.154+
|