Skip to content

3D viewer for airborne wind energy systems

License

Notifications You must be signed in to change notification settings

aenarete/KiteViewers.jl

Repository files navigation

KiteViewers

Build Status Coverage

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:

What to install

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.

Installation

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.

Installation from git (for package developers)

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.

Exported types

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)

Exported functions

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)

Examples

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.

Advanced usage

For more examples see: KiteSimulators

License

This project is licensed under the MIT License. Please see the below WAIVER in association with the license.

WAIVER

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

See also