Werkstatt 4.0 – Verbesserte Teilhabechancen durch Einsatz neuer Technologien

Teammitglieder

1. Ausbaustufe (Wintersemester 2018/19)

Emil Wagner, Martin Steinhauser und Fabian Fuchs

2. Ausbaustufe (Sommersemester 2020)

Katharina Kreitschmann, Luise Middel und Markus Ritthaler

 

Beschreibung

Hinter dem Projekt Werkstatt 4.0 steht ein diskretes Toiletten-Rufsystem für Mitarbeiter der KJF-Werkstätte in Regensburg. Das Rufsystem besteht dabei aus mehreren Komponenten, welche es einem Mitarbeiter (der für einen Toilettengang pflegerische Unterstützung benötigt) diskret einen Ruf an die Pflegekräfte absetzen kann.

Das System vernetzt Mitarbeiter und Pflegekräfte und sucht, nach einer Rufannahme durch eine Pflegekraft, automatisch nach einem freien Raum und weist diesen zu. Die Pflegekräfte werden mittels Push-Nachrichten über eingehende Pflegerufe informiert und - je nachdem für welche Zeit sie den Ruf angenommen haben - erneut erinnert.

Zusätzlich haben die Pflegekräfte die Möglichkeit, mittels einer Webapp geplante Raumbelegungen einzuplanen.

Digitale Türschilder zeigen an, ob der Raum derzeit besetzt ist. Ebenfalls werden die für diesen Raum anstehenden Reservierungen angezeigt. Mitarbeiter, die keine Pflegeunterstützung benötigen können in der ersten Ausbaustufe direkt am Türschild die Toilette auf besetzt setzen.

Durch den Einsatz eines Bluetooth Beacons wird der Raum automatisch auf “besetzt” gestellt, wenn ein Mitarbeiter mit Rufsystem sich in diesem aufhält.

In der zweiten Ausbaustufe  wurde zum Einen der bisher als Rufknopf verwendete M5-Stack durch eine App ersetzt. Ebenfalls in der App wurde den Mitarbeitern, welche für ihre Toilettengänge keine Pflegeunterstützung benötigen, die Möglichkeit gegeben für sich Toiletten zu reservieren. Hierfür wurde die bestehende App für die Pflegekräfte entsprechend erweitert.

 

Motivation und Ziel

Im Wintersemester 2018/2019 wurde im Rahmen des Projektstudiums (HSP) an der OTH Regensburg ein Pilotprojekt der St. Johannes Werkstätte Regensburg umgesetzt. Nach Abschluss des ersten Projektstudiums wurde das Projekt im Sommersemester 2020 fortgesetzt. Dabei handelt es sich um ein Kommunikationssystem für den Pflegedienst in der St. Johannes Werkstätte Regensburg.

Die KJF Werkstätten in Regensburg sind eine soziale Einrichtung in Trägerschaft der Katholischen Jugendfürsorge (KJF), deren Aufgabe - gemäß ihrem Selbstverständnis - die berufliche Teilhabe von Menschen mit Behinderungen ist. Sie beschäftigt Menschen mit einer Körperbehinderung oder eine Autismus-Spektrum-Störung unterschiedlicher Ausprägung und Schweregrade.

Während manche Mitarbeiter weitgehend eigenständig ihrer Arbeit nachgehen können und in ihrem täglichen Leben wenig eingeschränkt sind, sind andere Mitarbeiter auf die Unterstützung der anwesenden Pflegekräfte - etwa beim Toilettengang - angewiesen.

Genau hier setzt das, im Rahmen des mehrerer Projektstudiums (HSP) im Master Informatik  durchgeführte, Projekt Werkstatt 4.0 - Verbesserte Teilhabechancen durch Einsatz neuer Technologien an.

Bislang mussten die Mitarbeiter, welche auf pflegerische Unterstützung beim Toilettengang angewiesen sind, zunächst eine verfügbare Pflegekraft im Gebäude suchen. Im Anschluss galt es zu schauen ob einer der Toilettenräume frei ist und benutzt werden kann.

Da in den Räumen nicht nur Toilettengänge absolviert werden, sondern auch sonstige pflegerische Maßnahmen durchgeführt werden, sind diese öfters auch für längere Zeit besetzt. Dies führt auch für Mitarbeiter, die keine pflegerische Unterstützung benötigen, zu Schwierigkeiten.

Durch den Einsatz des digitalen Toilettenrufsystems werden diese Probleme/Schwierigkeiten behoben:

Diskreter Toilettenruf

  • Durch Drücken eines Knopfes/Buttons wird ein Pflegeruf abgesetzt
  • Pflegekräfte können diesen annehmen oder ablehnen und angeben, wann sie verfügbar sind

Diskrete Reservierung

  • Auch Mitarbeiter ohne Pflegeunterstützung können einen Raum anfragen

Automatische Raumauswahl

  • Das Backend sucht automatisch den nächst freien Raum und teilt diesen den Mitarbeitern sowie ggf. den Pflegekräften mit (inkl. wann dieser verfügbar ist)

Echtzeitkommunikation

  • Eintragung der Rufe in Echtzeitdatenbank
  • Pflegekräfte werden mittels Push-Notifications informiert.

 

Technischer Ablauf

Jeder Mitarbeiter erhält ein kleines IoT-Gerät mit Display, von dem aus durch Drücken eines Knopfs ein Pflegeruf an das Pflegepersonal abgesendet werden kann. Hierfür findet in der aktuellen Implementierung das M5-Stack Entwicklungsboard Verwendung, welches über Wifi mit einem Backend-System kommunizieren kann und sich leicht über Arduino programmieren lässt. Jede Toilette wird mit einem Bluetooth-Beacon ausgestattet, welcher durch das IoT-Gerät der Mitarbeiter bei Betreten des Raumes erkannt wird und somit eine automatische Erkennung des Toilettenzustands erlaubt.

Nach Absenden eines Pflegerufs erhalten alle Pflegekräfte eine Benachrichtigung über die auf ihren Smartphones installierte App und können erkennen, welcher Mitarbeiter Hilfe benötigt. Jede Pflegekraft kann über die Smartphone-App einen Pflegeruf annehmen oder ablehnen. Wird ein Pflegeruf angenommen, so kann eine Zeit ausgewählt werden, zu welcher die Pflegekraft Zeit für den Toilettengang hat. Wird ein Ruf angenommen, so wird durch ein Back-End-System der nächstmögliche freie Raum ausgewählt und automatisch zugewiesen. Nach dieser Zuweisung erhält sowohl die Pflegekraft als auch der Mitarbeiter die Information auf ihren Geräten, wann und in welchen Raum die Pflege stattfindet. Durch ein Tablet, welches vor dem Raum angebracht ist, lassen sich die bevorstehenden Reservierungen, welche automatisch vom Back-End-System verwaltet werden, einsehen. Ist der Raum gerade oder in absehbarer Zeit reserviert, so wird dies farblich dargestellt. Befindet sich ein Mitarbeiter auf der Toilette, so wird der Raum zusätzlich als besetzt angezeigt. Verlässt der Mitarbeiter den Raum, wird der Raum vorzeitig auf frei gesetzt. Die folgenden beiden Bilder zeigen die Nutzeroberfläche der Smartphone-App für die Pflegekräfte mit zwei eingegangen Anfragen und der Zeit, in der die Pflegekraft den Ruf übernehmen möchte.

Die nachfolgende Abbildung zeigt die Ansicht des Toilettenschilds, wenn keine Reservierungen vorliegen und der Raum nicht durch einen Mitarbeiter belegt ist. Die zweite Abbildung zeigt das Schild im besetzten Zustand.

 

Randbedingungen und QM-Maßnahmen

  • Die Programmierung
    • des Backends erfolgt in Java mit dem Spring Boot Framework
    • der native App erfolgt in Dart mit dem Flutter Framework
    • des M5-Stacks (in Ausbaustufe 2 nicht mehr verwendet) erfolgt in C++ mit MQTT
    • des Arduino Leonardo (Taster) erfolgt in C++ in der Arduino IDE
    • der Webapp erfolgt in Angular
  • Für die Datenspeicherung kommt Google Firestore als Echtzeitdatenbank zum Einsatz
  • Für die Push-Notification kommt Google Firebase Cloud Messaging zum Einsatz
  • Die Versionsverwaltung wird mit git realisiert

 

Erste Ausbaustufe

Stand nach der ersten Ausbaustufe

Der Stand des Systems umfasst die bereits beschriebene Smartphone-App, die App zum Anzeigen der Informationen an der Toilettentür, die Implementierung des IoT-Geräts sowie eine Administrationsoberfläche zur Verwaltung der Beacons und zum Erstellen von fixen Toilettengängen. Bei diesen handelt es sich um feste Pflegetermine, die von den Pflegekräften in einen Kalender eingetragen werden und direkt im System verwaltet werden und automatisch mit in den Reservierungsplan der Toilettenschilder eingebunden werden.

 

Verbesserungen im Rahmen einer Projektfortführung

Nach Abschluss der prototypischen Phase gibt es einige offene Punkte, die im Rahmen einer Projektfortführung durch ein HSP oder eine Abschlussarbeit zu bearbeiten gibt.

Stabilitätsoptimierungen:

Nach der Erkenntnis, dass beim M5 Stack des öfteren Verbindungsabbrüche zu verzeichnen sind oder Daten nicht gesendet werden, ist es wichtig, die lokale Installation zu evaluieren oder den M5 Stack durch eine bessere Lösung zu ersetzen. Auch das Erkennen der Beacons sowie die Feststellung deren Reichweite sollte schneller verlaufen.

Optimierung oder Ersatz für M5 Stack:

Im Bereich des M5 wären weitere Optimierungen sinnvoll, um eine bessere Laufzeit und Funktion ohne den beschriebenen erzwungenen Neustart zu erhalten. Eventuell wäre es sinnvoll, den M5 durch ein besser geeignetes Entwicklungsboard zu tauschen, das über ein besser lesbares Display und eine längere Akkulaufzeit verfügt. Durch die MQTT-Anbindung zum Backend kann das IoT-Gerät beliebig ausgetauscht werden. Eine Alternative zum M5 würde dabei auch die Entwicklung einer zweiten mobilen App darstellen, welche die Kommunikation von Absenden eines Pflegerufs über einen großen Button und Rückmeldung der ausgewählten Toilette übernimmt. Wichtig dabei ist die einfache Bedienung der App, idealerweise um Mitarbeitern mit Behinderung eine einwandfreie und sichere Bedienung zu ermöglichen. Zusätzlich sollte das Smartphone in der Lage sein, den auf der Toilette eingesetzten Beacon zu erkennen und zu identifizieren.

Erweiterung der mobilen App:

Eine Möglichkeit wäre es, den Kalender entsprechend für die einzelnen Pflegekräfte direkt in die App zu integrieren und den Screen “Angenommene Pflegerufe” durch den Kalender zu ersetzen, um eingegangene spontane Pflegerufe mit fixen Terminen zu kombinieren. Weiterhin wäre eine Reminder-Funktion auch für fixe Pflegerufe als durchaus sinnvoll zu erachten.

Spontane Toilettengänge per App buchen:

Ähnlich der Reservierung auf dem Toilettenschild soll es für Mitarbeiter ohne pflegerische Unterstützung möglich sein, den Status einer Toilette abzufragen und diese spontan zu reservieren, ohne dass dabei ein Pfleger involviert ist. Dieser Ansatz könnte mit der Neuentwicklung des M5-Stacks einhergehen und in eine zusätzliche mobile Anwendung für Mitarbeiter enden, welche beide Ansichten unterstützt. Denkbar wäre hier ein Ansatz, bei dem über einen Account für den Mitarbeiter eine Information hinterlegt ist, wie das UI der Mitarbeiter-App auszusehen hat.

 

Zweite Ausbaustufe

Grundlagen

Kern der  Kommunikation zwischen den technischen Komponenten - und somit der Nutzer - ist die Echtzeitdatenbank Firestore. Dort werden nicht nur Stammdaten, wie etwa Nutzer und deren Rollen, oder die Zeitpläne der Räume gespeichert. Auch die Durchführung eines Toiletten-Rufes oder der ad-hoc Reservierung einer Toilette wird über diese abgelegt. Hierbei wird ausgenutzt, dass Änderungen in der Datenbanken in Echtzeit an Komponenten - hier die App und das Backend - weitergegeben werden, wenn diese die jeweilige Sammlung abonniert haben.

Damit das Betätigen eines Knopfes für jeden möglich ist, wurde mit Hilfe eines Arduino Leonardo drei externe Taster gebaut, die per Kabel an das Smartphone angeschlossen werden können. So kann mit “echtem” Knopfdruck, innerhalb der App einen Pflegeruf abgesetzt werden.

Die beiden App-basierten Anwendungsfälle werden im Folgenden genauer beschrieben. Aus Gründen der Übersichtlichkeit werden die Mitarbeiter-Funktionalitäten als Mitarbeiter-App und die Pflege-Funktionalitäten als Pflege-App bezeichnet, auch wenn es sich um dieselbe App handelt.

 

Toilettenruf

Nebenstehende Grafik visualisiert den schematischen Ablauf, aufgeteilt auf Backend (blau), Mitarbeiter-App (rot), Pflege-App (grün) sowie beide Apps (orange). Vorbedingung für eine Pflegeruf ist, dass Mitarbeiter und Pflegekräfte mit ihren Rollen eingeloggt sind und das Backend läuft.

Möchte ein Mitarbeiter einen Pflegeruf absetzen, betätigt er den Ruf-Button in seiner App. Diese erzeugt daraufhin ein neues Dokument in der Firestore-Sammlung ‘toilet_request’. Aufgrund der Echtzeitfähigkeit der Datenbank werden die Informationen als Stream unmittelbar sowohl mit dem Backend als auch mit der Pflege-App geteilt. Eine Pflegekraft erkennt bei geöffneter App damit sofort einen neuen Eintrag in die Ansicht für offene Toiletten-Rufe. Darüber hinaus versendet das Backend - mittels Firebase Cloud Messaging - eine Push-Notification. Ist die Pflegekraft nicht verfügbar, kann sie den Ruf ablehnen. Hierzu wird das Feld ‘declined_by’ des Firestore-Dokuments aktualisiert. Nimmt eine Pflegekraft den Ruf an, kann diese zusätzlich eine Zeit vorgeben, ab wann sie verfügbar ist. Das Firebase-dokument wird  daraufhin um ‘accepted_by’ und ‘meeting_time’ erweitert. Durch diese Änderungen wird im Backend eine Routine angestoßen, welche den Raum zuweist, der als nächster Verfügbar ist.

Der Raum wird als ‘room’ in das Dokument eingetragen und die ‘meeting_time’ wird aktualisiert.

Sowohl dem Mitarbeiter als auch der Pflegekraft werden Treffpunkt  und - Zeit unmittelbar angezeigt.

 

Toilette ad-hoc reservieren

Nebenstehende Grafik visualisiert den schematischen Ablauf, aufgeteilt auf Backend (blau) sowie Mitarbeiter-App (rot).

Möchte ein Mitarbeiter eine Toilette reservieren, betätigt er den Button in seiner App. Hierdurch wird eine neues Dokument in der Firebase-Sammlung ‘toilet_request’ angelegt. Der Eintrag wird wird durch die App selbst um die Felder ‘accepted_by’ und ‘meeting_time’ erweitert. Analog zum Toiletten-Ruf, wird daraufhin durch das Backend der Raum zugewiesen, der als nächster frei ist. Dieser wird, zusammen mit einer aktualisierten ‘meeting_time’, in das Firestore-Dokument eingetragen. Dem Mitarbeiter werden die Informationen, also Raum und Zeitpunkt der Reservierung, in seiner App angezeigt.

Sollten hier große Überschneidungen zwischen einem Toiletten-Ruf und einer -Reservierung aufgefallen sein, ist das korrekt. Während der Ruf eine bereits bestehende Funktionalität war, bei der lediglich die Hardware - von einem M5-Stack zu einem Smartphone - getauscht wurde, handelt es sich bei der Reservierung um eine neue Funktion. Daher existieren für diese keine unterstützenden Funktionen im Backend. Während der Umstellung des Toiletten-Rufes wurde jedoch bereits ersichtlich, dass für das Backend eine komplette Neuplanung notwendig wird (siehe offene Punkte), was jedoch im Rahmen dieses Projekts nicht möglich war. Daher wurde entschieden, die Reservierung auf die bestehenden Funktionalitäten aufzubauen. In diesem Ergebnis ist die Reservierung ein Toiletten-Ruf, welcher durch den Mitarbeiter selbst angenommen wird.

 

Bilder der Anwendung

UI - Raumadministration

UI - Geräteadministration

UI - Pflegekraftadministration

UI - Belegungsplan

Nach dem Login soll ein Name für den Benutzer festgelegt werden.

Durch Klick auf den Button oder den externen Buttons kann ein Toilettenruf oder eine Reservierung ausgelöst werden.

Bestätigung für Mitarbeiter, die Hilfe beim Toilettengang benötigen

Bestätigung für Mitarbeiter, die keine Hilfe beim Toilettengang benötigen

Offene Punkte

Testing und Evaluation

Das Ergebnis dieses Projekts ist ein lauffähiger Prototyp, welcher die Anwendungsfälle Toiletten-Ruf (inkl. Annahme oder Ablehnung durch Pflegekraft) und Reservierung einer Toilette umfasst. Ebenfalls können Toiletten, durch den Einsatz von Bluetooth Beacons, auf ‘besetzt’ gesetzt werden, sobald ein Mitarbeiter mit der App diese betritt. Aufgrund der Corona-Pandemie war ein Testing vor Ort sowie die dazugehörige Evaluation nicht möglich.

 

Redesign Backend

Durch den Wegfall des M5-Stacks werden ein Großteil der Backend-Funktionen nicht mehr benötigt. Für die noch verbleibenden Funktionen, wie etwa dem Zuweisen eines freien Raumes, ist man dagegen nicht mehr an die Einschränkungen des M5-Stacks gebunden. Ebenfalls gilt es neue erweiterte Funktionen, etwa für das Reservieren einer Toilette zu implementieren.

Insgesamt sind die Abläufe näher an die Datenbank gerückt, sodass etwa durch den Einsatz von Cloud Functions ein abgesetztes Backend ggf. komplett überflüssig wird. Dies sollte in einem weiteren Projekt geprüft werden.