nw  

CrowPi goes Java

Zusammenfassung

Programmierung einer Bibliothek für CrowPi Sensoren und Aktoren

Schlüsselbegriffe

Raspberry Pi, CrowPi, Java, Sensoren, Aktoren, Hardware, Komponenten

Zielsetzung

Beim CrowPi handelt es sich um einen Koffer der Firma Elecrow für Lernzwecke, welcher es ermöglicht in Kombination mit einem Raspberry Pi viele verschiedene Hardwarekomponenten anzusprechen ohne dass eine manuelle Verkabelung erforderlich wäre. Ziel der Arbeit ist es eine Library zu erschaffen, welche es ermöglicht eigene Applikationen zu schreiben welche die zahlreichen Sensoren und Aktoren des CrowPi verwenden.


Zusätzlich zur Bereitstellung einer Bibliothek soll für jede Komponente ein Beispiel mit einer ausführlichen Dokumentation erstellt werden. Die primäre Zielgruppe sollen Programmieranfänger darstellen, so dass die Arbeit sich beispielsweise für den Unterricht an der Fachhochschule Nordwestschweiz nutzen lässt.

Ausgangslage

Während beim CrowPi bereits eine gewisse Sammlung von Beispielen vorhanden ist, sind diese ausschliesslich in der Programmiersprache Python zur Verfügung gestellt. Ausserdem weisen diese oft eine nur mangelhafte Dokumentation oder Struktur auf, so dass diese nicht optimal für Programmieranfänger gestaltet sind. Durch die Portierung in eine Java-Architektur kann sichergestellt werden, dass sich der CrowPi optimal in das bestehende Bildungskonzept von vielen Berufs- und Hochschulen integriert.

Ergebnisse

Im Rahmen des Projekts konnten sämtliche Komponenten in einer hochwertigen Bibliothek umgesetzt werden, welche sowohl ausführliches Javadoc wie auch automatisiertes Testing aufweist. Zusätzlich zum Java-Quellcode wurde eine Dokumentation mit dem Static Site Generator "Hugo" erstellt, welche das komplette Setup des Geräts, Debugging, Troubleshooting und alle Beispiele sowie Komponenten ausführlich erklärt.


Um eine möglichst reibungslose Inbetriebnahme zu gewährleisten, so dass keine Vorkenntnisse mit Linux-Systemen erforderlich sind, wurde zudem ein eigenes Betriebssystemabbild auf Basis vom offiziellen Raspberry Pi OS erschaffen. Dieses hat alle notwendigen Einstellungen vorkonfiguriert und ermöglicht einen komfortablen und schnellen Einstieg in die Welt der Programmierung mit Hardware.








Desktopansicht von CrowPi OS


Projektdaten

Das Projekt wurde im Frühlingssemester 2021 (12.02.2021 - 18.06.2021) umgesetzt.

Zwei Studierende haben dieses als Informatik Projekt 5 durchgeführt.

Es wurden jeweils rund 180 Stunden pro Person investiert.

Auftraggeber

Dr. Barbara Scheuner, Dr. Dieter Holz

Hochschule für Technik

Fachhochschule Nordwestschweiz

5210 Windisch


FHNW Hochschule für Technik
Projektteam

Pascal Mathis

Tobias Siegrist

Kontakt

Dr. Barbara Scheuner (barbara.scheuner@fhnw.ch)

Dr. Dieter Holz (dieter.holz@fhnw.ch)

<< zurück