Browse Source

Merge branch 'master' of gitlab.cs.hs-fulda.de:fdai5253/roboter

master
Yves Ehrlich 5 years ago
parent
commit
389d1e33e8
  1. BIN
      Latex/main.pdf
  2. 36
      Latex/main.tex
  3. 6
      Latex/references.bib

BIN
Latex/main.pdf

36
Latex/main.tex

@ -47,20 +47,48 @@
\section{Vorwort} % Unnumbered section \section{Vorwort} % Unnumbered section
\paragraph{Motivation} \paragraph{Motivation}
Eine Platform bieten ist etwas was momentan sehr stark im Trend liegt, sei es im Software oder im Hardware bereich. Im Softwarebereich zeigt sich dies meist durch opensource libaries, welche möglichst varriable einsetzbaren Code für jeden frei zugänglich machen. \\
Eine Platform bieten ist etwas was momentan sehr stark im Trend liegt, sei es im Software oder im Hardware Bereich. Im Softwarebereich zeigt sich dies meist durch opensource Bibliotheken, welche möglichst variable einsetzbaren Code für jeden frei zugänglich machen. \\
Ein solches Projekt war auch von einem der Projektmitglieder (Yves Ehrlich) als Privates Projekt geplant und so kahm die Überlegung dies innerhalb des Modules Embedded Networking zu wählen.\linebreak Ein solches Projekt war auch von einem der Projektmitglieder (Yves Ehrlich) als Privates Projekt geplant und so kahm die Überlegung dies innerhalb des Modules Embedded Networking zu wählen.\linebreak
\paragraph{Basis des Projektes} \paragraph{Basis des Projektes}
Als Basis des Projektes dient einer schon bereits von Yves Ehrlich angefertigter Arduino Nano Shield samt Code, Als Basis des Projektes dient einer schon bereits von Yves Ehrlich angefertigter Arduino Nano Shield samt Code,
\cite{nanoGame} welcher als Fernsteuerung verwendet wird. \cite{nanoGame} welcher als Fernsteuerung verwendet wird.
\paragraph{Ziel des Projektes} \paragraph{Ziel des Projektes}
Ziel des Projektes ist eine ferngesteuerte, OpenSource basierende Roboterplatform.
Ziel des Projektes ist eine ferngesteuerte, Opensource basierende Roboterplattform.
\newpage
\section{SPI}%Lukas
\newpage \newpage
\section{Funksteuereung} %Lukas \section{Funksteuereung} %Lukas
Wie schon zuvor erwähnt wird für die Basis der Funksteuerung das Arduino Shield verwendet, welches mit einem RF24 Chip erweitert wurde. Wie schon zuvor erwähnt wird für die Basis der Funksteuerung das Arduino Shield verwendet, welches mit einem RF24 Chip erweitert wurde.
\subsection{RF24} %Oder nur als paragraph je nachdem wie viel zusammen kommt. \subsection{RF24} %Oder nur als paragraph je nachdem wie viel zusammen kommt.
Die Opensoucre Bibliothek RF24 \cite{RF24_Lib} diente als Codebasis für die Funksteuerung. Da diese Bibliothek bei korrekter Verwendung genau auf die Kommunikation zwischen zwei nRF24L01 Chips abgestimmt ist.
Zur Verwendung der Bibliothek muss sie nur inkludiert und Instanziiert werden dabei werden die Beiden Pins CE und CSN für das Hardware-SPI konfiguriert.
\begin{file}[RF24 initialisieren]
\begin{lstlisting}[language=C++]
#include <RF24.h>
RF24 radio(A2, A3); // CE, CSN
\end{lstlisting}
\end{file}
Damit sind bereits Sämtliche Konfigurationen für die Hardware-SPI Kommunikation zwischen Arduino nano und dem nRF24L01 erledigt.
Kommunizieren zwischen zwei dieser Setups wird dann durch die Funktionen read und wirite, jedoch muss vor dem Start einer Kommunikation die Methode begin() aufgerufen werden.
\begin{file}[RF24 initialisieren]
\begin{lstlisting}[language=C++]
//An der Sender Seite
radio.begin();
radio.write(&payload, sizeof(payload));
//An der Empfaenger Seite
radio.begin();
if (radio.available()) {
radio.read(&payload, sizeof(payload));
//Payload weiter verarbeiten.
}
\end{lstlisting}
\end{file}
\newpage
\section{SPI}
\newpage \newpage
\section{Arduino Libaries} %Lukas \section{Arduino Libaries} %Lukas

6
Latex/references.bib

@ -25,4 +25,10 @@
title = {https://gitlab.informatik.hs-fulda.de/fdai5253/nanogame}, title = {https://gitlab.informatik.hs-fulda.de/fdai5253/nanogame},
} }
@Article{RF24_Lib,
author = {OpenSourceSoftware},
note = {Repository RF24},
title = {https://github.com/nRF24/RF24},
}
@Comment{jabref-meta: databaseType:bibtex;} @Comment{jabref-meta: databaseType:bibtex;}
Loading…
Cancel
Save