This package provides different kind of 2D and 3D viewers for kite power system.
It is part of Julia Kite Power Tools, which consist of the following packages:
If you want to run simulations and see the results in 3D, please install the meta package KiteSimulators . If you just want to replay log files
or implement a real-time viewer for a system outside of Julia this package will be sufficient. When you have KiteSimulators installed, please replace
any statement using KiteViewers
in the examples with using KiteSimulators
.
Download and install Julia 1.10 or later, if you haven't already.
Make sure you have the package TestEnv
in your global environment if you want to run the examples. If you are not sure, run:
julia -e 'using Pkg; Pkg.add("TestEnv")'
If you don't have a project yet, create one with:
mkdir MyProject
cd MyProject
julia --project="."
and then add the package KiteViewers
to your project by executing:
using Pkg
pkg"add KiteViewers"
at the Julia prompt.
You can install the examples with:
using KiteViewers
KiteViewers.install_examples()
and get a menu with the examples by typing:
menu()
You can run the unit tests with the command:
using Pkg
pkg"test KiteViewers"
This package should work on Linux, Windows and Mac. If you find a bug, please file an issue.
First, fork this repository using the "Fork" button on the top of the website. Then, clone your fork, e.g.:
git clone https://github.com/USERNAME/KiteViewers.jl
where you have to replace USERNAME with your github user name. Then, run the installation script:
cd KiteViewers.jl
cd bin
./install
cd ..
The install script creates a version of Manifest.toml
that works both with the normal project
and with the test environment, needed to run the examples.
To launch Julia, type:
./bin/run_julia
For more comfort, add this line to your .bashrc
file:
alias jl='./bin/run_julia'
Then you can launch Julia, using the run_julia
script just by typing jl
.
Viewer3D
AbstractKiteViewer
AKV
AKV is just the short form of AbstractKiteViewer, Viewer3D the first implementation of it.
Usage:
show_kite=true
viewer=Viewer3D(show_kite)
clear_viewer(kv::AKV; stop_=true)
update_system(kv::AKV, state::SysState; scale=1.0, kite_scale=3.5)
save_png(kv::AKV; filename="video", index = 1)
stop(kv::AKV)
set_status(kv::AKV, status_text)
using KiteViewers
viewer=Viewer3D(true);
After some time a window with the 3D view of a kite power system should pop up. If you keep the window open and execute the following code:
using KiteUtils
segments=6
state=demo_state(segments+1)
update_system(viewer, state)
you should see a kite on a tether.
The same example, but using the 4 point kite model:
using KiteViewers, KiteUtils
viewer=Viewer3D(true);
segments=6
state=demo_state_4p(segments+1)
update_system(viewer, state, kite_scale=0.25)
You can find more examples in the folder examples.
For more examples see: KiteSimulators
This project is licensed under the MIT License. Please see the below WAIVER in association with the license.
Technische Universiteit Delft hereby disclaims all copyright interest in the package “KiteSimulators.jl” (simulators for airborne wind energy systems) written by the Author(s).
Prof.dr. H.G.C. (Henri) Werij, Dean of Aerospace Engineering
- Research Fechner for the scientic background of this code
- The meta-package KiteSimulators
- the packages KiteModels and WinchModels and KitePodModels and AtmosphericModels
- the package KiteUtils and KiteControllers