\documentclass[german, a4paper, headheight=36pt, parskip=true]{scrartcl}
\usepackage{hs-el-text}
\usepackage{wrapfig}
\usepackage{lipsum}

\modul{Echtzeitdatenverarbeitung}
\semester{Wintersemester 2020/21}
\thema{Dokumentation}
\author{Charlotte Friedemann \und Johannes Theiner}

\begin{document}

    \maketitle

    \tableofcontents

    \section{Tasks}\label{sec:tasks}

    \subsection{Drehteller}\label{subsec:task_turntable}
    \begin{wrapfigure}{L}{0.5\textwidth}
        \centering
        \begin{plantuml}
            @startuml
            scale 150 width
            !include https://raw.githubusercontent.com/bharatrajagopalan/plantuml-styles/master/activity_skin.pu
            start
            :Drehteller ausschalten;
            repeat
            :Prüfer fertig?<
            :Bohrer fertig?<
            :Auswerfer fertig?<
            :Teil im Prüfer?<
            :Teil im Bohrer?<
             if(Teil auf einem Sensor ?) then (true)
                :Drehteller anschalten;
                if(Sensor Drehteller in Position ?) then (true)
                    :Drehteller auschalten;
                endif
             endif
             :Drehteller fertig>
            repeatwhile()
            kill
            @enduml
        \end{plantuml}
        \caption{SDL Diagramm Drehteller}
        \label{fig:sdl-turntable}
    \end{wrapfigure}

    \lipsum[1-2]

    \subsection{Prüfer}\label{subsec:task_tester}
    \begin{wrapfigure}{R}{0.5\textwidth}
        \begin{plantuml}
            @startuml
            !include https://raw.githubusercontent.com/bharatrajagopalan/plantuml-styles/master/activity_skin.pu
            :Prüfer einfahren;
            repeat
            :Drehteller fertig?<
             if(Werkstück vorhanden ?) then (ja)
                :Prüfer ausfahren;
                if(Werkstück Normallage ?) then (ja)
                    :Sende Bohrer(an)>
                else (nein)
                    :Sende Bohrer(aus)>
                endif
                :Prüfer einfahren;
             else (nein)
             endif
            :Prüfer fertig>
            repeatwhile()
            kill
            @enduml
        \end{plantuml}
        \caption{SDL Diagramm Prüfer}
        \label{fig:sdl-tester}
    \end{wrapfigure}

    \lipsum[2-4]

    \subsection{Bohrer}\label{subsec:task_drill}
    \begin{wrapfigure}{L}{0.5\textwidth}
        \begin{plantuml}
        @startuml
        scale 150 width
        !include https://raw.githubusercontent.com/bharatrajagopalan/plantuml-styles/master/activity_skin.pu
        :Bohrer ausschalten;
        :Bohrer hochfahren;
        :Werkstück loslassen;
        repeat
        :Drehteller fertig?<
        if(Werkstück vorhanden?) then(ja)
            :Empfange Lage des Werkstücks<
            :Sende Auswerfer>
            if(Teil in Normallage?) then(ja)
                :Werkstück festhalten;
                :Bohrer anschalten;
                :Bohrer herunterfahren;
                :Warte bis Bohrer unten;
                :Bohrer hochfahren;
                :Warte bis Bohrer oben;
                :Bohrer ausschalten;
                :Werkstück loslassen;
            else(nein)
            endif
        else (nein)
        endif
        :Bohrer fertig>
        repeatwhile()
        kill
        @enduml
        \end{plantuml}
        \caption{SDL Diagramm Bohrer}
        \label{fig:sdl-drill}
    \end{wrapfigure}

    \lipsum[2-4]

    \subsection{Auswerfer}\label{subsec:output}
    \begin{wrapfigure}{R}{0.5\textwidth}
        \begin{plantuml}
            scale 250 width
            @startuml
            !include https://raw.githubusercontent.com/bharatrajagopalan/plantuml-styles/master/activity_skin.pu
            :Auswerfer einfahren;
            repeat
            :Drehteller fertig?<
            :Auswerfer<
            :Auswerfen;
            :Auswerfer fertig>
            repeatwhile()
            kill
            @enduml
        \end{plantuml}
        \caption{SDL Diagramm Auswerfer}
        \label{fig:sdl-output}
    \end{wrapfigure}

    \lipsum[2-4]

    \section{Hilfsfunktionen}\label{sec:functions}
    \lipsum[2-4]

\end{document}
