Woran haben wir diese Woche gearbeitet:

Diese Woche haben wir die Grundlagen bzw. das Fundament des Projektes gelegt. Hierfür haben wir geklärt, welche Technologien zum Einsatz kommen, welchen Ablauf unsere Software besitzt und wie unsere Datenbank aufgebaut werden soll. Um dabei nicht den Überblick zu verlieren haben wir für jeden dieser Punkte entsprechende Diagramme erstellt, die weiter unten vorgestellt werden.

Welche Fortschritte konnten wir dabei erziele:

Wie bereits beschrieben haben wir direkt angefangen die Struktur des Projektes aufzubauen und festgelegt, welche grundlegenden Funktionen unterstützt werden sollen. Die Anwendung konzentriert sich auf die Funktionen Lebensmittel scannen, bearbeiten und löschen, Nutzer anlegen sowie zu bearbeiten und entsprechend zu alarmieren, sobald ein falsches Produkt aus dem Kühlschrank entnommen wird. Die Nutzer der Anwendung haben die Möglichkeit alle eingespeicherten Produkte über einen Webbrowser anzeigen zu lassen. Dabei erfolgt die Gestaltung der Oberfläche mithilfe von Bootstrap und soll responsive auf unterschiedlichen Geräten funktionieren. Die Bedienung des Raspberry Pi bzw. die Oberfläche soll dabei ebenfalls mit Bootstrap gestaltet werden. Die Kommunikation der Clients mit dem Server funktioniert über HTTPS. Der Aufbau des Servers erfolgt mithilfe von NodeJs, Typescript und nginx als reverse Proxy, um die HTTPS-Konfiguration zu erleichtern.

Für die Firmware des Raspberry Pi wurden mithilfe von Buildroot die ersten Einstellungen vorgenommen. Der Busybox-HTTP Server wurde aktiviert sowie die notwendigen Einstellungen für die Verwendung des QT-Webkit-Kiosk Browser vorgenommen. Des Weiteren wurde der NTP-Client installiert und die 3D-Grafikbeschleunigung aktiviert.

Folgende Modellierungen wurden vorgenommen:

  • ER-Diagramm der Daten auf dem Server
  • Use Case Diagramm der Anwendung
  • Programmablaufplan der Anwendung auf dem Raspberry Pi

Welche Probleme mussten wir lösen bzw. haben wir noch?

Momentan müssen wir erstmal herausfinden, wie Bootstrap am besten funktioniert und für unsere Ansprüche gut umgesetzt werden kann. Eine Bedienung des Touchscreens ist zum jetzigem Zeitpunkt ebenfalls noch schwer umzusetzen. Die Anbindung des Raspberry Pi´s mit der Kamera und dem installierten Barcode-Scanner ist zum jetzigen Zeitpunkt nur mit dem Standard-OS Raspian getestet. Probleme gibt es dabei mit der Qualität der Bilder. Diese ist stark von den Lichtverhältnissen abhängig. Aus diesem Grund wird überlegt, die jetzige Kamera durch ein anderes Modell mit Blitz zu ersetzen.

Die Anbindung der API zur Erkennung bzw. Interpretierung des erstellten Barcodes wurde zum jetzigem Zeitpunkt zwar getestet, jedoch noch nicht vollständig implementiert. Dazu wird die Python-Bibliothek ZBar verwendet:

Wie weit ist unser Projekt insgesamt? Was fehlt noch?

Zwar wissen wir was wir insgesamt machen wollen, dennoch muss die Umsetzung der einzelnen Bestandteile erfolgen. Als Orientierung zur Entwicklung der grafischen Oberfläche dienen uns die unten angezeigten Mockups. Diese müssen in den nächsten Wochen programmatisch umgesetzt werden. Des Weiteren muss der Server implementiert und die Erstellung der Pi-Firmware fortgeführt werden.

RaspberryBuy (1): Idee und Architektur

2 Gedanken zu „RaspberryBuy (1): Idee und Architektur

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Zur Werkzeugleiste springen