Der Raspberry Pi (abgek\"urzt: RPi oder RasPi) ist ein Kreditkarten grosser und g\"unstiger Einplatinencomputer, der von der Raspberry Pi Foundation entwickelt wurde.
Die Raspberry Pi Foundation ist eine Stiftung und in Gro\"sbritannien als Wohlt\"atigkeitsorganisation eingetragen. \\
Sie hat sich zum Ziel gesetzt, das Studium der Informatik und verwand- ten Themen zu f\"ordern, insbesondere im Schulbereich. \\
Der Raspberry Pi (abgekürzt: RPi oder RasPi) ist ein Kreditkarten grosser und günstiger Einplatinencomputer, der von der Raspberry Pi Foundation entwickelt wurde.
Die Raspberry Pi Foundation ist eine Stiftung und in Großbritannien als Wohltätigkeitsorganisation eingetragen. \\
Sie hat sich zum Ziel gesetzt, das Studium der Informatik und verwand- ten Themen zu fördern, insbesondere im Schulbereich. \\
\section{Wie ist der Raspberry Pi ausgebaut?}
...
...
@@ -14,10 +14,10 @@ Sie hat sich zum Ziel gesetzt, das Studium der Informatik und verwand- ten Theme
Der Raspberry Pi existiert in mehrere Varianten. \\
Die Modelle A und B unterscheiden sich dadurch, dass das Modell B 512 MByte Arbeitsspeicher,
einen Ethernet-Port und zwei USB-Anschl\"usse hat.
einen Ethernet-Port und zwei USB-Anschlüsse hat.
Das Modell A ist mit nur einem USB-Anschluss und 256 MByte Arbeitsspeicher eher als Steuerungscomputer geeignet,
bei dem es auf geringen Stromverbrauch ankommt. \\
Das Modell B eignet sich am ehesten noch, um damit an einer grafischen Oberfl\"ache zu arbeiten. \\
Das Modell B eignet sich am ehesten noch, um damit an einer grafischen Oberfläche zu arbeiten. \\
Die Spezifikationen der beiden Varianten A und B des Raspberry Pi lauten wie in der Abbildung \ref{rpi:modelab}. \\
\begin{figure}[!htbp]
\begin{center}
...
...
@@ -28,24 +28,24 @@ Die Spezifikationen der beiden Varianten A und B des Raspberry Pi lauten wie in
\end{figure}
\section{Ger\"ate liste}
\section{Geräte liste}
\label{gerate}
\subsection{Rasberry Pi 3 Modell B}
Im Rahmen dieses Praktikum, wird mit dem Modell B des Raspberry 3 gearbeitet. \\
Das Modell Raspberry Pi 3 ist eine kontinuierliche Weiterentwicklung zum Vorg\"angermodell Raspberry Pi 2. \\
Der Raspberry Pi 3 enth\"alt einen Quad-Core-Prozessor mit 1,2 GHz von Broadcom und einen SDRAM-Arbeitsspeicher mit 1 GByte.\\
Das Modell Raspberry Pi 3 ist eine kontinuierliche Weiterentwicklung zum Vorgängermodell Raspberry Pi 2. \\
Der Raspberry Pi 3 enthält einen Quad-Core-Prozessor mit 1,2 GHz von Broadcom und einen SDRAM-Arbeitsspeicher mit 1 GByte.\\
{\bf{WLAN und Bluetooth onboard}}\\
Die Besonderheit des Raspberry Pi 3 ist, dass WLAN nach IEEE 802.11 b/g/n im 2,4 GHz-Bereich mit 150 MBit/s und Bluetooth Low Energie
onboard sind und nicht durch externe USB-Adapter nachger\"ustet werden m\"ussen. \\
onboard sind und nicht durch externe USB-Adapter nachgerüstet werden müssen. \\
{\bf{64-Bit-Unterst\"utzung}}\\
Beworben wird der Raspberry Pi 3 mit seiner 64-Bit-Unterst\"utzung. \\
Das ist heute bei modernen CPUs ganz normal. 64 Bit auf der Hardware-Seite muss allerdings vom Betriebssystem und der Software auch unterst\"utzt werden. \\
{\bf{64-Bit-Unterstützung}}\\
Beworben wird der Raspberry Pi 3 mit seiner 64-Bit-Unterstützung. \\
Das ist heute bei modernen CPUs ganz normal. 64 Bit auf der Hardware-Seite muss allerdings vom Betriebssystem und der Software auch unterstützt werden. \\
\vspace{2cm}
Hier das Modell B des Raspberry Pi 3 (Abbildung \ref{rpi:model3} ), mit der Beschriftung der Anschl\"usse ( Abbildung \ref{rpi:model3b}).
Hier das Modell B des Raspberry Pi 3 (Abbildung \ref{rpi:model3} ), mit der Beschriftung der Anschlüsse ( Abbildung \ref{rpi:model3b}).
\begin{figure}[!htbp]
\begin{center}
...
...
@@ -59,7 +59,7 @@ Hier das Modell B des Raspberry Pi 3 (Abbildung \ref{rpi:model3} ), mit der Besc
Leuchtdioden (LEDs) fangen an zu leuchten, wenn sie von elektrischem Strom durchflossen werden.
Die LEDs leuchten aber nur dann, wenn sie richtig gepolt sind, also der Strom in der f\"ur sie richtigen Richtung fliesst. \\
Die Anschl\"usse einer Leuchtdiode nennt man Anode und Kathode.\\
Die LEDs leuchten aber nur dann, wenn sie richtig gepolt sind, also der Strom in der für sie richtigen Richtung fliesst. \\
Die Anschlüsse einer Leuchtdiode nennt man Anode und Kathode.\\
\begin{itemize}
\item[-] Der k\"urzere Draht (Kathode) wird mit dem Minuspol (GND) der Stromquelle verbunden, und der l\"angere (Anode) mit dem Pluspol (5V oder 3,3V). \\
\item[-] Das runde Plastikgeh\"ause ist an der Kathode Seite abgeflacht, was du am besten beim Blick von unten auf die LED erkennen kannst. \\
\item[-] Die LEDs d\"urfen aber nicht direkt an die Stromquelle angeschlossen werden.
\item[-] Der kürzere Draht (Kathode) wird mit dem Minuspol (GND) der Stromquelle verbunden, und der längere (Anode) mit dem Pluspol (5V oder 3,3V). \\
\item[-] Das runde Plastikgehäuse ist an der Kathode Seite abgeflacht, was du am besten beim Blick von unten auf die LED erkennen kannst. \\
\item[-] Die LEDs dürfen aber nicht direkt an die Stromquelle angeschlossen werden.
\end{itemize}
Der Strom wird durch einen Vorwiderstand begrenzt.
Dieser Vorwiderstand befindet sich entweder in der Verbindung zur Masse oder zum Pluspol.
...
...
@@ -191,28 +191,28 @@ Dieser Vorwiderstand befindet sich entweder in der Verbindung zur Masse oder zum
Trennen Sie zuerst das RasPi vom GPIO Extension Shield.
Bauen Sie dann die Schaltung gem\"ass Schaltplan und Hardware-Anschlussplan auf ( Abbildung \ref{rpi:schaltung} ). \\
Nachdem die Schaltung aufgebaut und best\"atigt wurde, verbinden Sie das RPi mit
dem GPIO Extension Shield. Dar\"uber hinaus sollte ein Kurzschluss
Bauen Sie dann die Schaltung gemäss Schaltplan und Hardware-Anschlussplan auf ( Abbildung \ref{rpi:schaltung} ). \\
Nachdem die Schaltung aufgebaut und bestätigt wurde, verbinden Sie das RPi mit
dem GPIO Extension Shield. Darüber hinaus sollte ein Kurzschluss
(insbesondere 5 V und GND, 3,3 V und GND) vermieden werden, da ein Kurzschluss
abnormale Schaltungsarbeiten oder sogar eine Besch\"adigung des RaspPi verursachen kann..
abnormale Schaltungsarbeiten oder sogar eine Beschädigung des RaspPi verursachen kann..
\begin{figure}[!htbp]
\begin{center}
...
...
@@ -222,21 +222,21 @@ abnormale Schaltungsarbeiten oder sogar eine Besch\"adigung des RaspPi verursach
\label{rpi:schaltung}
\end{figure}
{\color{blue}{\bf{Die GPIOs liefern nur eine Spannung von 3,3V und eine Stromst\"arke von ca 0,016A}}}
{\color{blue}{\bf{Die GPIOs liefern nur eine Spannung von 3,3V und eine Stromstärke von ca 0,016A}}}
\subsection{Kodierung}
Auf dem Desktop \"offne das Terminal.\\
Auf dem Desktop öffne das Terminal.\\
In das Terminalfenster, gibt folgendes ein:\\
{\color{blue}{\tt{sudo idle3}}}\\
{\color{blue}{\bf{sudo}}} bedeutet, dass du das Programm als Administrator ausf\"uhrst, somit stehen dir alle Rechte zu.\\
{\color{blue}{\bf{idle3}}}\"offnet die Entwicklungsumgebung von Python. \\
{\color{blue}{\bf{sudo}}} bedeutet, dass du das Programm als Administrator ausführst, somit stehen dir alle Rechte zu.\\
{\color{blue}{\bf{idle3}}}öffnet die Entwicklungsumgebung von Python. \\
Die hier enthaltenen Programme, sind in der Programmiersprache Python geschrieben. \\
IDLE ist eine integrierte Entwicklungsumgebung (IDE) f\"ur Python und enth\"alt auch ein eigenes Editor. Und 3 steht f\"ur die 3. Version.
IDLE ist eine integrierte Entwicklungsumgebung (IDE) für Python und enthält auch ein eigenes Editor. Und 3 steht für die 3. Version.
\begin{itemize}
\item[-] Das Editorfenster \"offnest du indem du entweder mit der Linke Maustaste auf File dann New Window klickst, oder die Tastenkombination Strg+N (Ctrl+N) dr\"uckst,
\item[-] und speicherst entweder \"uber File, dann Save As, oder durch die Tastenkombination Strg+S (Ctrl+S).
\item[-] Das Editorfenster öffnest du indem du entweder mit der Linke Maustaste auf File dann New Window klickst, oder die Tastenkombination Strg+N (Ctrl+N) drückst,
\item[-] und speicherst entweder über File, dann Save As, oder durch die Tastenkombination Strg+S (Ctrl+S).
\end{itemize}
\subsection{Anleitung Einschalten}
...
...
@@ -254,7 +254,7 @@ ledPin = 11 \# {\color{blue} Dem Pin 11 wird einen Namen zugewiesen. Siehe Abbil
\end{minipage}}}
\vskip 2.5mm
\noindent
Dann dr\"uckst du strg+S um zu speichern und mit der Taste F5 l\"asst du das Programm laufen.
Dann drückst du strg+S um zu speichern und mit der Taste F5 lässt du das Programm laufen.
{\color{blue}(Editorfenster nicht schliessen)}\\
\\
Die LED sollte jetzt leuchten.
...
...
@@ -273,7 +273,7 @@ einfach den Zeilencode
\end{minipage}}}
\vskip 2.5mm
\noindent
in dem Programm erg\"anzen.
in dem Programm ergänzen.
\vskip 2.5mm
\noindent
...
...
@@ -303,7 +303,7 @@ Deine Aufgabe ist jetzt die LED auszuschalten. \\
In Python schreibt man GPIO.HIGH (Grosschreibung beachten) oder 1 um einen Pin einzuschalten und GPIO.LOW oder 0 um es auszuschalten. \\
HiGH oder 1 bedeutet dass der Pin eine Spannung von 3,3v hat. \\
LOW oder 0 bedeutet dass der Pin eine Spannung von 0v hat. \\
Das ist alles was du f\"ur die Aufgabe brauchst. \\
Das ist alles was du für die Aufgabe brauchst. \\
Nach jeder \"Anderung des Codes, denk dran dein Programm zu speichern, damit die \"Anderung vorgenommen wird. \\
\\
{\bf{Die LED ist jetzt aus!}}\\
...
...
@@ -337,18 +337,18 @@ time.sleep(seconds) \# {\color{blue} hier kommt die Zeit in Sekunden } \\
\noindent
Du hast in deinem Programmcode schon eine erste Bibliothek importiert. \\
Importiere die Time Bibliothek direkt danach damit es schon am Anfang erkannt wird. \\
Das ist alles was du f\"ur die Aufgabe brauchst. \\
Das ist alles was du für die Aufgabe brauchst. \\
\\
{\bf{Aufgabe 4}}\\
Die LED geht zwar an und wieder aus, muss aber jedes Mal neu gestartet werden. \\
Jetzt soll die LED 5 Mal an und aus gehen, also blinken. \\
\\
{\bf{Anleitung:}}\\
Es gibt viele M\"oglichkeiten dies zu realisieren. Hier werden zwei davon vorgestellt. \\
Es gibt viele Möglichkeiten dies zu realisieren. Hier werden zwei davon vorgestellt. \\
Die For Schleife und die While Schleife
Hier lernst du zuerst einen neuen Begriff kennen. {\tt{Variable}}
Eine Variable ist einfach ausgedr\"uckt ein Beh\"alter, oder Wertespeicher,
der einen beliebigen Name annehmen kann, ausser f\"ur den Compiler spezifische Namen. \\
Eine Variable ist einfach ausgedrückt ein Behälter, oder Wertespeicher,
der einen beliebigen Name annehmen kann, ausser für den Compiler spezifische Namen. \\
\\
Eine Variablendefinition sieht in Python so aus:
\vskip 2.5mm
...
...
@@ -381,7 +381,7 @@ probe = 1.5
\end{minipage}}}
\vskip 2.5mm
\noindent
im Datentyp String (Charakter. Sie werden immer in Anf\"uhrungszeichen eingeschlossen)
im Datentyp String (Charakter. Sie werden immer in Anführungszeichen eingeschlossen)
\vskip 2.5mm
\noindent
{\colorbox{hellgrau}{\begin{minipage}{\linewidth}
...
...
@@ -401,7 +401,7 @@ print("Hello World")
\end{minipage}}}
\vskip 2.5mm
\noindent
Hier k\"onnen wir auch 2 Nachrichten ausgeben lassen. Die werden einfach durch Komma voneinander getrennt. \\
Hier können wir auch 2 Nachrichten ausgeben lassen. Die werden einfach durch Komma voneinander getrennt. \\
\vskip 2.5mm
\noindent
{\colorbox{hellgrau}{\begin{minipage}{\linewidth}
...
...
@@ -413,8 +413,8 @@ Print(probe, ``Wie alle andere!'')
\vskip 2.5mm
\noindent
Dieser Programmcode gibt aus: Ich bin ein Programm Wie alle andere!
In Datentyp bool (Dieser Datentyp repr\"asentiert Wahrheitswerte aus der Menge True und False.
Werte dieses Datentyps werden zumeist bei Anfragen zur\"uckgegeben)
In Datentyp bool (Dieser Datentyp repräsentiert Wahrheitswerte aus der Menge True und False.
Werte dieses Datentyps werden zumeist bei Anfragen zurückgegeben)
Du stellst hier fest, dass die LED endlos an und aus geht.
Die while-Schleife l\"auft einfach unendlich. Zum Stoppen des Programms, muss du Strg-C dr\"ucken.
Die while-Schleife läuft einfach unendlich. Zum Stoppen des Programms, muss du Strg-C drücken.
Es kann passieren dass beim beenden des Programms, die LED an bleibt. Es passiert deswegen weil
der Pin nicht freigegeben wurde. Es gibt in Python Ausdr\"ucke, die Ausnahme F\"alle oder Fehler behandeln.
der Pin nicht freigegeben wurde. Es gibt in Python Ausdrücke, die Ausnahme Fälle oder Fehler behandeln.
ein davon ist die {\color{blue}{\tt{try und except}}}. \\
\\
{\bf{Beispiel:}}\\
{\tt{try:}}\\
Um es zu vermeiden gibst du einfach am Ende des Programms alle verwendeten Pins wie der frei indem du
diese Zeile am Ende des Codes hinzuf\"ugt.\\
diese Zeile am Ende des Codes hinzufügt.\\
{\tt{GPIO.cleanup()}}\\
\\
Die LED sollte aber nur 5 Mal an und aus gehen. Mit Hilfe einer Variable kannst du deine Bedingung festlegen, denk daran die Variable vor dem Verwenden zu deklarieren, und am Ende jeder Durchlauf inkrementierst du die Variable (um 1 erh\"ohen) in dem du dazu 1 addierst. \\
Das ist alles was du f\"ur diese Aufgabe brauchst. \\
Die LED sollte aber nur 5 Mal an und aus gehen. Mit Hilfe einer Variable kannst du deine Bedingung festlegen, denk daran die Variable vor dem Verwenden zu deklarieren, und am Ende jeder Durchlauf inkrementierst du die Variable (um 1 erhöhen) in dem du dazu 1 addierst. \\
Das ist alles was du für diese Aufgabe brauchst. \\
\\
{\bf{Jetzt blinkt die LED.}}\\
\\
{\bf{Aufgabe 4}}\\
Um die Aufgabe noch klarer zu gestalten, soll am Anfang jeden Durchlaufs, die Nummer des Durchlaufes
angezeigt werden z.B. ( 1. Durchlauf ). Wenn die LED an geht soll die Nachricht {\color{red}\tt{Die LED ist an...}},
wenn die LED aus geht soll die Nachricht {\color{red}\tt{Die LED ist aus...}} angezeigt werden und am Ende alle Durchl\"aufe
wenn die LED aus geht soll die Nachricht {\color{red}\tt{Die LED ist aus...}} angezeigt werden und am Ende alle Durchläufe
die Nachricht Auf Wiedersehen... angezeigt werden. \\
Kleiner Tipp: Schau dir die Anleitung der Aufgabe 3 auf der Seite 12 noch einmal an. \\
Du hast jetzt alles was du f\"ur diese Aufgabe brauchst. \\
Du hast jetzt alles was du für diese Aufgabe brauchst. \\
\section{Mit dem Mikrotaster die LED ein und ausschalten}
Normalerweise besteht eine vollst\"andige automatische Steuerung aus drei wesentlichen Teilen:
Normalerweise besteht eine vollständige automatische Steuerung aus drei wesentlichen Teilen:
INPUT (EINGANG), OUTPUT (AUSGANG) und CONTROL(STEUERUNG). \\
Im letzten Abschnitt ist das LED-Modul der Ausgangsteil und der RaspPI ist der Steuerteil.
In praktischen Anwendungen lassen wir nicht nur die LED-Lichter blinken, sondern lassen das Ger\"at die Umgebung erkennen,
In praktischen Anwendungen lassen wir nicht nur die LED-Lichter blinken, sondern lassen das Gerät die Umgebung erkennen,
erhalten Anweisungen und ergreifen dann die entsprechenden Massnahmen, wie z. B. die LED leuchten,
einen Piepton ert\"onen lassen und so weiter.
einen Piepton ertönen lassen und so weiter.
\begin{figure}[!htbp]
\begin{center}
...
...
@@ -575,9 +575,9 @@ einen Piepton ert\"onen lassen und so weiter.
\end{figure}
\subsection{Mikrotaster}
Mikrotaster schliessen einen Stromkreis, solange sie gedr\"uckt werden und \"offnen ihn wieder wenn sie losgelassen werden,
so wie z.B. die Tasten einer Tastatur oder die Kn\"opfe einer Computer maus. \\
Die Taster k\"onnen direkt in die Steckplatine eingesetzt werden.\\
Mikrotaster schliessen einen Stromkreis, solange sie gedrückt werden und öffnen ihn wieder wenn sie losgelassen werden,
so wie z.B. die Tasten einer Tastatur oder die Knöpfe einer Computer maus. \\
Die Taster können direkt in die Steckplatine eingesetzt werden.\\
Sie haben vier Beinchen, je zwei davon sind aber direkt verbunden,
daher musst du darauf achten, den Taster richtig gedreht in die Schaltung einzusetzen ( Abbildung \ref{rpi:taster} ).
...
...
@@ -590,7 +590,7 @@ daher musst du darauf achten, den Taster richtig gedreht in die Schaltung einzus
\end{figure}
\subsection{Komponentliste}
In der Abbildung \ref{rpi:komps} sieht man die relevanten Komponenten f\"ur diese Aufgabe.
In der Abbildung \ref{rpi:komps} sieht man die relevanten Komponenten für diese Aufgabe.