178 lines
5.4 KiB
Markdown
Raw Normal View History

2024-03-22 01:37:32 +01:00
### Raspberry Pi 4
Für das Projekt wurde ein Raspberry Pi 4 verwendet,
ein Einplatinencomputer, der von der Raspberry Pi Foundation
in Zusammenarbeit mit Broadcom entwickelt wurde.
Der Raspberry Pi wurde für das Projekt ausgewählt, da
der er weltweit der bekannteste Einplatinencomputer
ist und eine große Community hat. Die Leistungsmerkmale aller
verschiedenen Modelle des Raspberry Pi sind daher
online gut dokumentiert und Leser dieser Arbeit
können leicht daran ausmachen, welche alternativen
Einplatinencomputer mit ähnlichen Leistungsmerkmalen
verwendet werden können für ein ähnliches Ergebnis oder
welche Einplatinencomputer schneller oder langsamer
sind.
Der Pi 4 wurde anstelle des neueren Pi 5 verwendet,
weil der Pi 5 zum Zeitpunkt der Arbeit noch zu neu ist und
es daher nicht viele Vergleichswerte gibt. In Abbildung
\ref{raspberry1} ist ein Überblick über die für das Projekt
relevante Hardware des Raspberry Pi 4 zu sehen. Dazu gehören
der System-on-a-Chip (SoC) und der Arbeitsspeicher für
die Leistungsmerkmale für den Leistungstest mit Flutter
und die Multimediafähigkeiten für den Test zum Abspielen
von Videos.
\begin{figure}[H]
\caption{Überblick über die Hardware des Raspberry Pi 4}
\label{raspberry1}
\begin{center}
\begin{tcolorbox}[width=15cm]
\begin{tabular}{lll}
System-on-a-Chip (Ein-Chip-System) & Broadcom BCM2711, \\
& 4-Kern Cortex-A72 (ARM v8) 64-bit SoC \\
& @ 1.8GHz \\
Arbeitsspeicher & 4 GB LPDDR4-3200 SDRAM \\
Multimedia & H.265 (4kp60 decode), \\
& H.264 (1080p60 decode, 1080p30 encode) \\
& OpenGL ES 3.1, Vulkan 1.0 \\
\end{tabular}
\end{tcolorbox}
\end{center}
\end{figure}
### 15.6 Zoll WaveShare Display
Als Display wurde ein 15.6 Zoll IPS(QLED) Touchscreen Monitor
von der Firma WaveShare verwendet. WaveShare hat sich auf die
Herstellung von Hardware für eingebettete Systeme spezialisiert
und die Treiber für den Touchscreen sind im Linux-Kernel
enthalten und müssen nicht manuell installiert werden. [@156inchQLED]
In Abbildung \ref{waveShare} ist zu sehen, wie der Raspberry Pi 4
mit dem Display verbunden ist. Dieser Monitor dient als Anzeige
für die Flutter Anwendung und wird über dem Touchscreen bedient.
```{=latex}
\begin{figure}[H]
\centering
\caption{WaveShare 15.6 Zoll IPS(QLED) Monitor mit Raspberry Pi 4}
\label{waveShare}
\includegraphics[width=10cm]{./assets/raspberry/waveshare.jpg}
<!-- prettier-ignore -->
\caption*{
```
Quelle: @156inchQLED
```{=latex}
}
\end{figure}
```
### Sparkfun RGB Led Matrix
Die Sparkfun RGB Led Matrix ist ein 8x8 LED-Panel, das
über ein SPI-Interface mit dem Raspberry Pi verbunden
wird. Die im Projekt genutzte Matrix wird mittlerweile
nicht mehr hergestellt, was aber kein Problem darstellt,
da andere SPI-LED-Panels von vielen anderen Herstellern
ähnlich mit einem SPI-Interface angesprochen werden. Mit
nur leichten Anpassungen im Code für unter anderem eine andere
Auflösung des Panels sollten auch andere LED-Panels
problemlos wie in dem Projekt genutzt werden können. In
dem Projekt kommt es nur darauf an zu zeigen,
wie das SPI-Interface des Raspberry Pis genutzt werden
kann mit Flutter.
```{=latex}
\begin{figure}[H]
\centering
\caption{Sparkfun RGB Led Matrix}
\label{waveShare}
\includegraphics[width=10cm]{./assets/raspberry/rgbMatrix.jpg}
<!-- prettier-ignore -->
\caption*{
```
Quelle: @SparkFunLEDMatrixa
```{=latex}
}
\end{figure}
```
### Schaltplan des Projekts
In Abbildung \ref{schaltplan} ist der Schaltplan des Projekts zu sehen.
Für den Morsecode-Übersetzer wird eine handelsübliche rote LED
verwendet. Mehr Hardware wird nicht benötigt als in dem Schaltplan
dargestellt.
\begin{figure}[H]
\centering
\caption{Schaltplan des Raspberry Pi 4 mit der Led und Sparkfun RGB Led Matrix}
\label{schaltplan}
\includegraphics[width=10cm]{./assets/raspberry/wiring.pdf}
\end{figure}
### Zusätzliches Testgerät
Als zusätzliches Testgerät wurde ein Raspberry Pi 0 2W verwendet
mit dem Zero-DISP-7A Display von Waveshare, welches ein 7 Zoll
Touchscreen Display mit einer Auflösung von 1024x600 Pixeln ist
[@ZeroDISP7AWaveshareWiki]. Der Pi 0 2W wird direkt an dem
Display angeschlossen und dieses Testgerät gilt als Referenz
für einen Leistungstest mit der selben Flutter-Anwendung
an einem leistungsschwächeren und kleineren eingebetteten System.
Dieses zusätzliche Testgerät wurde nur am Ende des Projekts mit
der erstellten Linux Distribution getestet, welche dazu angepasst
wurde auch den Pi 0 2W zu unterstützen. In Kapitel \ref{yoctoChapter} wird
weiter darauf eingegangen. In Abbildung \ref{raspberry2} ist
ein Überblick über die für das Projekt relevante Hardware des
Raspberry Pi 0 2W zu sehen und in Abbildung \ref{waveShare}
ist zu sehen, wie der Raspberry Pi 0 2W mit dem Display verbunden
ist.
\begin{figure}[H]
\caption{Überblick über die Hardware des Raspberry Pi 0 2W}
\label{raspberry2}
\begin{center}
\begin{tcolorbox}[width=15cm]
\begin{tabular}{lll}
System-on-a-Chip (Ein-Chip-System) & Broadcom BCM2710A1, \\
& 4-Kern Cortex-A53 (ARM v8) 64-bit SoC \\
& @ 1GHz \\
Arbeitsspeicher & 512 MB LPDDR2 \\
Multimedia & H.264 (1080p30 decode, 1080p30 encode) \\
& OpenGL ES 1.1, 2.0 \\
\end{tabular}
\end{tcolorbox}
\end{center}
\end{figure}
```{=latex}
\begin{figure}[H]
\centering
\caption{Raspberry Pi 0 2W mit Zero-DISP-7A Display von Waveshare}
\label{zero}
\includegraphics[width=14cm]{./assets/raspberry/zero.jpg}
<!-- prettier-ignore -->
\caption*{
```
Quelle: @TouchDisplayKit
```{=latex}
}
\end{figure}
```