Skip to content
Snippets Groups Projects
Commit b0687487 authored by Philipp Stenkamp's avatar Philipp Stenkamp
Browse files

Merge branch 'master' of https://gitlab.cvh-server.de/lf.ps/vbls

parents a5604f1e c414d198
No related branches found
No related tags found
No related merge requests found
No preview for this file type
...@@ -273,7 +273,7 @@ besseres Preis-Leistungs-Verhältnis bietet. ...@@ -273,7 +273,7 @@ besseres Preis-Leistungs-Verhältnis bietet.
\section{Quadrocopter} \section{Quadrocopter}
\begin{figure}[hb] \begin{figure}[hb]
\centering \centering
\includegraphics[width=\textwidth]{../common/header.jpg} \includegraphics[width=\textwidth]{../../common/header.jpg}
\caption{Der in diesem Projekt verwendete Quadrocopter} \caption{Der in diesem Projekt verwendete Quadrocopter}
\label{fig:quad-sexy} \label{fig:quad-sexy}
\end{figure} \end{figure}
...@@ -455,7 +455,7 @@ d.h. sie kann nur von vorne nach hinten, nicht jedoch andersherum durchlaufen we ...@@ -455,7 +455,7 @@ d.h. sie kann nur von vorne nach hinten, nicht jedoch andersherum durchlaufen we
\end{lstlisting} \end{lstlisting}
Über die Threshold-Werte können verschiedene Eigenschaften der Taskverwaltung Über die Threshold-Werte können verschiedene Eigenschaften der Taskverwaltung
beeinflusst werden. Mittels \lstinline{MAX_TASK_THRESHOLD} lässt sich die maximal beeinflusst werden. Mittels \lstinline{MAX_TASK_THRESHOLD} lässt sich die maximal
zulässige Anzahl an Realtime- und Non-Realtime-Taks (jeweils) festlegen, um einer zulässige Anzahl an Re"=altime- und Non-Realtime-Taks (jeweils) festlegen, um einer
Überlast vorzubeugen und sicherzustellen zu können, dass das übergebene Task-Array Überlast vorzubeugen und sicherzustellen zu können, dass das übergebene Task-Array
korrekterweise mit einer \lstinline{NULL} beendet wird. korrekterweise mit einer \lstinline{NULL} beendet wird.
...@@ -538,7 +538,7 @@ void Scheduler::setNRtTasks (nRtTask **newNRtTasks) { ...@@ -538,7 +538,7 @@ void Scheduler::setNRtTasks (nRtTask **newNRtTasks) {
} }
\end{lstlisting} \end{lstlisting}
Die Funktion \lstinline{setNRtTasks(...)} verarbeitet das übergebene Array mit Zeigern Die Funktion \lstinline{setNRtTasks(...)} verarbeitet das übergebene Array mit Zeigern
auf Non-Real"=time-Task vor und weist es anschließend der Programmintern verwendeten auf Non-Real"=time-Task vor und weist es der Programmintern verwendeten
Variable \lstinline{nRtTasks} zu. Zunächst werden die Tasks in dem Array gezählt. Variable \lstinline{nRtTasks} zu. Zunächst werden die Tasks in dem Array gezählt.
Wie bereits erwähnt, muss das übergebene Array am Ende einen Nullpointer enthalten, Wie bereits erwähnt, muss das übergebene Array am Ende einen Nullpointer enthalten,
um das Ende zu kennzeichnen. Überschreitet die Anzahl der Tasks den für um das Ende zu kennzeichnen. Überschreitet die Anzahl der Tasks den für
...@@ -1431,29 +1431,29 @@ Dieser Erfolg ist insbesondere dem Scheduler sowie der konsequenten Auslegung de ...@@ -1431,29 +1431,29 @@ Dieser Erfolg ist insbesondere dem Scheduler sowie der konsequenten Auslegung de
einzelnen Methoden auf kooperatives Multitasking zuzuschreiben. einzelnen Methoden auf kooperatives Multitasking zuzuschreiben.
\begin{figure}[hb] \begin{figure}[hb]
\centering \centering
\includegraphics[width=0.8\textwidth]{../common/photos/Quad-web-6.jpg} \includegraphics[width=0.8\textwidth]{../../common/photos/Quad-web-6.jpg}
\caption{Nahansicht des Versuchsaufbaus im Profil} \caption{Nahansicht des Versuchsaufbaus im Profil}
\label{fig:pic-quad-detail-sexy} \label{fig:pic-quad-detail-sexy}
\end{figure} \end{figure}
\begin{figure}[hbt] \begin{figure}[hbt]
\centering \centering
\includegraphics[width=0.8\textwidth, trim= 0cm 2cm 0cm 1cm, clip]{../common/photos/Quad-web-4.jpg} \includegraphics[width=0.75\textwidth, trim= 0cm 2cm 0cm 1cm, clip]{../../common/photos/Quad-web-4.jpg}
\caption{Draufsicht auf die Oberseite des Versuchsaufbaus} \caption{Draufsicht auf die Oberseite des Versuchsaufbaus}
\label{fig:pic-quad-top} \label{fig:pic-quad-top}
\vspace{\baselineskip} \vspace{\baselineskip}
\includegraphics[width=0.8\textwidth, trim= 0cm 1.5cm 0cm 0cm, clip]{../common/photos/Quad-web-5.jpg} \includegraphics[width=0.75\textwidth, trim= 0cm 1.5cm 0cm 0cm, clip]{../../common/photos/Quad-web-5.jpg}
\caption{Draufsicht auf die Unterseite des Versuchsaufbaus} \caption{Draufsicht auf die Unterseite des Versuchsaufbaus}
\label{fig:pic-quad-bot} \label{fig:pic-quad-bot}
\end{figure} \end{figure}
\chapter{Zusammenfassung} \chapter{Zusammenfassung}
Wir sind stolz, abschließend sagen zu können, dass alle Projektziele und -anforderungen Abschließend lässt sich festhalten, dass alle Projektziele und -anforderungen
erfüllt werden konnten. erfüllt werden konnten.
Nicht nur konnte eine Vernetzung der Einzelkomponenten RC-Emp"=fänger, Mobiltelefon Nicht nur konnte eine Vernetzung der Einzelkomponenten RC-Emp"=fänger, Mobiltelefon
und Flugsteuerung hergestellt und im Testbetrieb aufrecht erhalten werden, diese und Flugsteuerung hergestellt und im Testbetrieb aufrecht erhalten werden, diese
konnte sich auch in mehreren Testflügen über einen Zeitraum von insgesamt mehr als konnte sich auch in mehreren Testflügen über einen Zeitraum von insgesamt mehr als
45 Minuten bewähren. 60 Minuten bewähren.
Die Entwicklung dieses Systems hat uns als Autoren der hierführ nötigen Software Die Entwicklung dieses Systems hat uns als Autoren der hierführ nötigen Software
und dieser Dokumentation einiges an Zeit gekostet. Zusammenfassend lässt sich jedoch und dieser Dokumentation einiges an Zeit gekostet. Zusammenfassend lässt sich jedoch
......
\NeedsTeXFormat{LaTeX2e} \NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{BOmodern}[2016/11/02 BOmodern Design Package - Philipp Stenkamp] \ProvidesPackage{layout/BOmodern}[2016/11/02 BOmodern Design Package - Philipp Stenkamp]
%% Page layout and dimensions %% Page layout and dimensions
\RequirePackage[a4paper,top=32mm,bottom=3cm,left=3cm,right=3cm,marginparwidth=1.75cm,headheight=12mm,footskip=12mm]{geometry} \RequirePackage[a4paper,top=32mm,bottom=3cm,left=3cm,right=3cm,marginparwidth=1.75cm,headheight=12mm,footskip=12mm]{geometry}
......
No preview for this file type
...@@ -1427,7 +1427,7 @@ Des weiteren muss der Liste der verwendeten Features die USB-Schnittstelle hinzu ...@@ -1427,7 +1427,7 @@ Des weiteren muss der Liste der verwendeten Features die USB-Schnittstelle hinzu
\section{Versuchsaufbau} \section{Versuchsaufbau}
\label{aufbau} \label{aufbau}
Dieses Projekt teilt sich mit seinem Schwesterprojekt, der Entwicklung eines echtzeitfähigen RC-Mischers auf Arduino-Basis\todo{link}, einen gemeinsamen Versuchsaufbau. Dieses Projekt teilt sich mit seinem Schwesterprojekt, der Entwicklung eines echtzeitfähigen RC-Mischers auf Arduino-Basis \footnote{LeonardoMixerIO - \url{https://gitlab.cvh-server.de/lf.ps/vbls/tree/master/LeonardoMixerIO}}, einen gemeinsamen Versuchsaufbau.
Im Folgenden soll ein Überblick über die Anordnung der Komponenten, insbesondere des Android-Mobil"=telefones, gegeben werden. Im Folgenden soll ein Überblick über die Anordnung der Komponenten, insbesondere des Android-Mobil"=telefones, gegeben werden.
\\ \\
\\ \\
...@@ -1436,13 +1436,13 @@ Die Hauptdiagonale zwischen zwei Rotoren beträgt 415mm, der Rotordurchmesser be ...@@ -1436,13 +1436,13 @@ Die Hauptdiagonale zwischen zwei Rotoren beträgt 415mm, der Rotordurchmesser be
\begin{figure}[hbt] \begin{figure}[hbt]
\centering \centering
\includegraphics[width=0.8\textwidth, trim= 0cm 2cm 0cm 1cm, clip]{../common/photos/Quad-web-4.jpg} \includegraphics[width=0.8\textwidth, trim= 0cm 2cm 0cm 1cm, clip]{../../common/photos/Quad-web-4.jpg}
\caption{Draufsicht auf die Oberseite des Versuchsaufbaus} \caption{Draufsicht auf die Oberseite des Versuchsaufbaus}
\label{fig:pic-quad-top} \label{fig:pic-quad-top}
\end{figure} \end{figure}
\begin{figure}[hbt] \begin{figure}[hbt]
\centering \centering
\includegraphics[width=0.8\textwidth, trim= 0cm 1.5cm 0cm 0cm, clip]{../common/photos/Quad-web-5.jpg} \includegraphics[width=0.8\textwidth, trim= 0cm 1.5cm 0cm 0cm, clip]{../../common/photos/Quad-web-5.jpg}
\caption{Draufsicht auf die Unterseite des Versuchsaufbaus} \caption{Draufsicht auf die Unterseite des Versuchsaufbaus}
\label{fig:pic-quad-bot} \label{fig:pic-quad-bot}
\end{figure} \end{figure}
...@@ -1453,15 +1453,16 @@ für das verwendete Mobiltelefon vom Typ \glqq{}HTC One S\grqq{}. Die Gesamtmass ...@@ -1453,15 +1453,16 @@ für das verwendete Mobiltelefon vom Typ \glqq{}HTC One S\grqq{}. Die Gesamtmass
des flugbereiten Aufbaus ergibt sich folglich ein Gewicht von 515g. Die maximale Tragfähigkeit des des flugbereiten Aufbaus ergibt sich folglich ein Gewicht von 515g. Die maximale Tragfähigkeit des
Quadrocopters ist nicht bekannt, das Flugverhalten bei diesem Gewicht suggeriert Quadrocopters ist nicht bekannt, das Flugverhalten bei diesem Gewicht suggeriert
jedoch eine Auslastung von etwa 70\%-80\%. jedoch eine Auslastung von etwa 70\%-80\%.
\\
\begin{figure}[hbt] \begin{figure}[hbt]
\centering \centering
\includegraphics[width=\textwidth, trim= 0cm 3cm 0cm 1cm, clip]{../common/photos/Quad-web-12.jpg} \includegraphics[width=\textwidth, trim= 0cm 3cm 0cm 1cm, clip]{../../common/photos/Quad-web-12.jpg}
\caption{Ansicht des Versuchsaufbaus im Profil} \caption{Ansicht des Versuchsaufbaus im Profil}
\label{fig:pic-quad-12} \label{fig:pic-quad-12}
\end{figure} \end{figure}
Anhand von Abbildung \ref{fig:pic-quad-detail-sexy} kann der schichtweise Aufbau des Testgeräts gut zu nachvollzogen werden: Anhand von Abbildung \ref{fig:pic-quad-12} kann der schichtweise Aufbau des Testgeräts gut zu nachvollzogen werden:
\begin{itemize} \begin{itemize}
\item{Naze32-kompatible Flugsteuerung.} \item{Naze32-kompatible Flugsteuerung.}
\item{Arduino-Leonardo-kompatibler Olimexino 32u4 mit eigens angefertigter Adapterplatine, \item{Arduino-Leonardo-kompatibler Olimexino 32u4 mit eigens angefertigter Adapterplatine,
...@@ -1474,7 +1475,7 @@ Anhand von Abbildung \ref{fig:pic-quad-detail-sexy} kann der schichtweise Aufbau ...@@ -1474,7 +1475,7 @@ Anhand von Abbildung \ref{fig:pic-quad-detail-sexy} kann der schichtweise Aufbau
\begin{figure}[hbt] \begin{figure}[hbt]
\centering \centering
\includegraphics[width=\textwidth]{../common/photos/Quad-web-6.jpg} \includegraphics[width=\textwidth]{../../common/photos/Quad-web-6.jpg}
\caption{Nahansicht des Versuchsaufbaus im Profil} \caption{Nahansicht des Versuchsaufbaus im Profil}
\label{fig:pic-quad-detail-sexy} \label{fig:pic-quad-detail-sexy}
\end{figure} \end{figure}
...@@ -1484,7 +1485,11 @@ Anhand von Abbildung \ref{fig:pic-quad-detail-sexy} kann der schichtweise Aufbau ...@@ -1484,7 +1485,11 @@ Anhand von Abbildung \ref{fig:pic-quad-detail-sexy} kann der schichtweise Aufbau
Um das UAV außerhalb der autonomen Landeplatzsuche steuern, sowie bei unerwarteten Situationen auch während des autonomen Betriebs manuell in das Flugverhalten eingreifen zu können, ist ein Mischer, der die Eingangssignale der Fernbedienung und die Ausgabedaten des der vorgestellten Applikation miteinander verarbeitet und in ein einheitliches, von dem Flugkontroller des UAVs verstandenes Protokoll konvertiert. Diese Funktionalitäten werden durch den im Rahmen der Veranstaltung \glqq{}Systemtechnik\grqq{} entstandene echtzeitfähige RC-Mischer auf Arduino-Basis realisiert. An dieser Stelle soll daher lediglich auf die Dokumentation dieses eigenständigen Projekts verwiesen werden: Um das UAV außerhalb der autonomen Landeplatzsuche steuern, sowie bei unerwarteten Situationen auch während des autonomen Betriebs manuell in das Flugverhalten eingreifen zu können, ist ein Mischer, der die Eingangssignale der Fernbedienung und die Ausgabedaten des der vorgestellten Applikation miteinander verarbeitet und in ein einheitliches, von dem Flugkontroller des UAVs verstandenes Protokoll konvertiert. Diese Funktionalitäten werden durch den im Rahmen der Veranstaltung \glqq{}Systemtechnik\grqq{} entstandene echtzeitfähige RC-Mischer auf Arduino-Basis realisiert. An dieser Stelle soll daher lediglich auf die Dokumentation dieses eigenständigen Projekts verwiesen werden:
\todo{} \begin{center}
\qrcode[height=23mm]{https://gitlab.cvh-server.de/lf.ps/vbls/tree/master/LeonardoMixerIO}
\\ \vspace{\baselineskip}
\url{https://gitlab.cvh-server.de/lf.ps/vbls/tree/master/LeonardoMixerIO}
\end{center}
\section{Einstellung des Reglers} \section{Einstellung des Reglers}
...@@ -1498,7 +1503,6 @@ Der konkrete Testablauf gestaltete sich insofern, dass das UAV manuell die gesam ...@@ -1498,7 +1503,6 @@ Der konkrete Testablauf gestaltete sich insofern, dass das UAV manuell die gesam
Der gesamte Testprozess gestaltete sich iterativ, d.h. nach jedem Test wurden die Ergebnisse evaluiert, die Regel-Parameter angepasst und anschließend erneut getestet. Der gesamte Testprozess gestaltete sich iterativ, d.h. nach jedem Test wurden die Ergebnisse evaluiert, die Regel-Parameter angepasst und anschließend erneut getestet.
\\ \\
\\
Wichtig: Für möglichst präzise Testergebnisse sollte von Anfang an darauf geachtet werden, möglichst alle störenden Umwelteinflüsse während den Tests zu eliminieren. So sollte z.B. als Testumgebung ein möglichst großer geschlossener Raum gewählt werden, um den Einfluss der durch das UAV entstehenden Luftverwirblungen zu reduzieren. Ebenfalls sollten Fenster nicht geöffnet werden, um Störungen durch Windböen vorzubeugen. Wichtig: Für möglichst präzise Testergebnisse sollte von Anfang an darauf geachtet werden, möglichst alle störenden Umwelteinflüsse während den Tests zu eliminieren. So sollte z.B. als Testumgebung ein möglichst großer geschlossener Raum gewählt werden, um den Einfluss der durch das UAV entstehenden Luftverwirblungen zu reduzieren. Ebenfalls sollten Fenster nicht geöffnet werden, um Störungen durch Windböen vorzubeugen.
Weiterhin ist bei Flugbetrieb des UAVs auf die Einhaltung von Sicherheitsmaßnahmen (vgl. beispielsweise \cite[][]{quadrocopterSafety}) zu achten, um Verletzungen und Sachbeschädigungen zu vermeiden. Gerade zu diesem Zweck empfiehlt sich vor allem für ungeübte Piloten auch die Verwendung des Angle-Modes. Weiterhin ist bei Flugbetrieb des UAVs auf die Einhaltung von Sicherheitsmaßnahmen (vgl. beispielsweise \cite[][]{quadrocopterSafety}) zu achten, um Verletzungen und Sachbeschädigungen zu vermeiden. Gerade zu diesem Zweck empfiehlt sich vor allem für ungeübte Piloten auch die Verwendung des Angle-Modes.
......
\NeedsTeXFormat{LaTeX2e} \NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{BOmodern}[2016/11/02 BOmodern Design Package - Philipp Stenkamp] \ProvidesPackage{layout/BOmodern}[2016/11/02 BOmodern Design Package - Philipp Stenkamp]
%% Page layout and dimensions %% Page layout and dimensions
\RequirePackage[a4paper,top=32mm,bottom=3cm,left=3cm,right=3cm,marginparwidth=1.75cm,headheight=12mm,footskip=12mm]{geometry} \RequirePackage[a4paper,top=32mm,bottom=3cm,left=3cm,right=3cm,marginparwidth=1.75cm,headheight=12mm,footskip=12mm]{geometry}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment