This package provides modular symbolic models of Airborne Wind Energy (AWE) systems, which consist of a wing, one or more tethers, one or more winches and a bridle system with or without pulleys. The kite is modeled as a deforming rigid body with orientation governed by quaternion dynamics. The aerodynamic forces and moments are computed using the Vortex Step Method. The tether is modeled as point masses connected by spring-damper elements, with aerodynamic drag modeled realistically. The winch is modeled as a motor/generator that can reel in or out the tethers.
The SymbolicAWEModel
has the following subcomponents, implemented in separate packages:
- AtmosphericModel from AtmosphericModels
- WinchModel from WinchModels
- The aerodynamic forces and moments of some of the models are calculated using the package VortexStepMethod
This package is part of the Julia Kite Power Tools, which consist of the following packages:
If possible, install Julia 1.11, if you haven't already. Julia 1.10 is still supported, but the performance is worse. On Linux, make sure that Python3 and Matplotlib are installed:
sudo apt install python3-matplotlib
Before installing this software it is suggested to create a new project, for example like this:
mkdir test
cd test
julia --project="."
Then add SymbolicAWEModels from Julia's package manager, by typing:
using Pkg
pkg"add SymbolicAWEModels"
at the Julia prompt. You can run the unit tests with the command (careful, can take 60 min):
pkg"test SymbolicAWEModels"
You can copy the examples to your project with:
using SymbolicAWEModels
SymbolicAWEModels.install_examples()
This also adds the extra packages, needed for the examples to the project. Furthermore, it creates a folder data
with some example input files. You can now run the examples with the command:
include("examples/menu.jl")
You can also run the ram-air-kite example like this:
include("examples/ram_air_kite.jl")
This might take two minutes. To speed up the model initialization, you can create a system image:
cd bin
./create_sys_image
If you now launch Julia with ./bin/run_julia
and then run the above example again, it should be about three
times faster.
If you intend to modify or extend the code, it is suggested to fork the SymbolicAWEModels.jl
repository and to check out your fork:
git clone https://github.com/USERNAME/SymbolicAWEModels.jl
where USERNAME is your github username. Then compile a system image:
cd SymbolicAWEModels.jl/bin
./create_sys_image
If you now launch julia with:
cd ..
./bin/run_julia
You can run the examples with:
menu()
You can also run the ram-air-kite example like this:
include("examples/ram_air_kite.jl")
This model represents the kite as a deforming rigid body, with orientation governed by quaternion dynamics. Aerodynamics are computed using the Vortex Step Method. The kite is controlled from the ground via four tethers.
The tether is modeled as point masses, connected by spring-damper elements. Aerodynamic drag is modeled realistically. When reeling out or in the unstreched length of the spring-damper elements is varied. This does not translate into physics directly, but it avoids adding point masses at run-time, which would be even worse because it would introduce discontinuities. When using Dyneema or similar high-strength materials for the tether the resulting system is very stiff which is a challenge for the solver.
If you want to replay old flight log files in 2D and 3D to understand and explain better how kite power systems work, please have a look at KiteViewer . How new log files can be created and replayed is explained in the documentation of KiteSimulators .
This project is licensed under the MPL-2.0 License.
Technische Universiteit Delft hereby disclaims all copyright interest in the package “SymbolicAWEModels.jl” (symbolic models for airborne wind energy systems) written by the Author(s).
Prof.dr. H.G.C. (Henri) Werij, Dean of Aerospace Engineering, Technische Universiteit Delft.
See the copyright notices in the source files, and the list of authors in AUTHORS.md.
- Research Fechner for the scientic background of the winches and tethers.
- More kite models KiteModels
- The meta-package KiteSimulators
- the package KiteUtils
- the packages WinchModels and KitePodModels and AtmosphericModels
- the packages KiteControllers and KiteViewers
- the VortexStepMethod
Authors: Bart van de Lint (bart@vandelint.net), Uwe Fechner (uwe.fechner.msc@gmail.com)
Documentation Stable Version --- Development Version