Unser Kunde ist ein weltweit agierender Anbieter von medizinischen Geräten. Das Unternehmen hat ein Modell eines Herzsimulators, das sie einsetzen, um ihre Herz-Kreislauf-Geräte vorzuführen. Dieses Modell wollte das Unternehmen optimieren. Das Unternehmen wünschte sich eine voll funktionsfähige Lösung mit mehreren Herzrhythmen, die es ihm ermöglichen würde, seine Geräte effektiver zu präsentieren und den Umsatz zu steigern. Das Simulationsgerät sollte es dem Kunden auch ermöglichen, medizinisches Personal in der Verwendung der Geräte zu schulen, ohne dass Patienten an der Schulung teilnehmen müssen.
T&M (Zeit und Material)
Scrum
Firmware-Entwickler
Hardware-Entwickler
QA-Entwickler
Projektmanager
Der Kunde produziert und vertreibt einen sogenannten Herzverstärker, d. h. ein Gerät, das Herzrhythmen aufzeichnet und überwacht. In Krankenhäusern hilft dieses System den Ärzten bei der Diagnose von Herzkrankheiten. Für Demonstrationen war es früher notwendig, das System direkt an den menschlichen Körper anzuschließen. Das war unpraktisch und führte dazu, dass das System seltener verwendet wurde. Dies schränkte die Präsentations- und Verkaufsmöglichkeiten des Kunden ein.
Damit die Demonstration ohne echte Patienten erfolgen kann, baute der Kunde einen Prototyp eines Gerätes, das Herzrhythmen simuliert. Es sollte an den Herzverstärker angeschlossen werden und ein Herzfrequenzmuster reproduzieren. Der Prototyp, der auf einer Arduino-Plattform aufgebaut war, konnte ein Ausgangssignal erzeugen, das dem Signal eines echten Herzens ähnelte. Die Lösung erzeugte bis zu 11 Herzfrequenzmuster, die verschiedene Zustände des Herzens simulierten.
Aber das Gerät war nicht benutzerfreundlich. Es war nicht ohne weiteres möglich, die Impulse der Herzrhythmen zu ändern. Wenn man zum Beispiel nur eine der Signalspitzen veränderte, konnte dies das gesamte Kardiogramm ruinieren. Das Gerät war außerdem instabil und erzeugte zufällige Fehlsignale, die das Kardiogramm verfälschten. Diese Probleme führten dazu, dass eine neue Konfiguration des Herzzustandes jeweils Firmware-Updates erforderte.
Der Kunde wollte den Herzsimulator universal einsetzbar machen. Er wollte eine stabile und einfach zu konfigurierende Lösung, die von Ärzten in Krankenhäusern verwendet werden konnte.
Der Kunde beauftragte Softeq damit, die Hardware und Firmware zu aktualisieren, um eine schnelle und einfache Konfiguration zu ermöglichen. Um dies zu erreichen, mussten wir den Firmware-Code und die Hardware-Architektur überprüfen und dokumentieren. Teil unserer Aufgabe war es zudem, einsatzbereite Geräte zu liefern, die mit dem Herzverstärker des Kunden zu Demonstrationszwecken verbunden werden konnten.
Unser Hardware-Team änderte die Komponenten des Geräts, um seine Leistung zu verbessern.
Mikrospannungsausgangssignale umgewandelt, die für den Simulator benötigt werden. Außerdem kann auf dem Raspberry PI das Betriebssystem Linux laufen. So konnten wir Firmware installieren, die über eine Internetverbindung gesteuert wird.
Um die Lösung universell und UX-freundlich zu gestalten, haben wir den ursprünglichen Code komplett umgeschrieben. Dadurch ist es den Benutzern möglich, die Herzschlag-Modi zu konfigurieren, ohne die Firmware neu erstellen zu müssen.
Wir konvertierten Codeblöcke in das JSON-Format. Dies ermöglichte es dem Kunden, neue Herzfrequenzmuster schnell manuell zu erstellen. Die Benutzer können jetzt neue Spitzenfolgen bilden, indem sie die Zahlen im Feld für die Impulsverzögerung ändern. Sie können auch neue Herzzustände aus separaten Codestücken kompilieren, die aus verschiedenen Modi stammen.
Das Betriebsszenario des Geräts stellte bestimmte Anforderungen. Es musste ein scharfes Signal-Timing einhalten, zufällige Impulse erzeugen und einen extern vorgegebenen Herzrhythmus reproduzieren.
Eliminierung der Impulsverzögerung. Das Timing der Signalspitzen war kritisch. Es sind höchstens Verzögerungen von bis 0,5 ms zulässig. Ist die Verzögerung größer, weichen die Spitzen voneinander ab, und das EKG-Bild ist verfälscht.
Um die Zeiträume strikt einzuhalten, mussten wir in den Linux-Kernel eingreifen. Wir verwendeten Kernel-Timer, die die Ausführung von Funktionen zu bestimmten Zeiten genau planen. Unsere Infrastruktur ermöglichte es uns, Spitzenwerte mit einer Genauigkeit von 0,1 ms festzulegen. Das Ergebnis war ein System, das Modi des Herzzustands ohne Schwankungen liefert.
Realistische Musterreplikation. Unsere Entwickler haben eine Funktion ausgearbeitet, mit der einem EKG-Muster Zufallsimpulse hinzugefügt werden können – genau wie bei einem echten Herzen. Wir fügten auch eine Funktion zur periodischen Wiederholung desselben Signals hinzu, die es ermöglicht, das Ereignis so oft wie gewünscht zu wiederholen.
Reagieren auf externe Signale. Wir versetzten das Gerät in die Lage, auf einen Herzschrittmacher zu reagieren – ein externes Gerät, das an den Herzverstärker angeschlossen wird und den Herzrhythmus von außen vorgibt. Die 11 Modi der Lösung sollten unterschiedliche Reaktionen auf die Signale des Herzschrittmachers zeigen und ihre eigenen Impulsmuster zeichnen.
Die Konnektivität des Geräts basiert auf MQTT, einem einfachen Messaging-Netzwerkprotokoll. Um die Verbindung stabil, leicht und sicher zu machen, verwendeten wir eine Open-Source-Client-Server-Bibliothek. Der Herzsimulator verbindet sich mit dem Server des Clients und empfängt Befehle im JSON-Format, um den gewünschten Modus zu starten.
Auf Wunsch des Kunden statteten wir den Herzsimulator mit zusätzlichen Funktionen aus, die die Diagnosen verbessern:
Softeq arbeitete mit einem vertrauenswürdigen Zulieferer zusammen, der die Beschaffung der Komponenten übernahm. Er stellte Leiterplatten her und lieferte die erforderlichen Komponenten auf der Grundlage unserer Dokumentation. Die Endmontage des Herzsimulators führten wir dann in unserem Softeq-Labor durch.
Das Gerät kann sowohl Herzrhythmen simulieren, die auf externen Befehlen eines Herzschrittmachers basieren, als auch eigenständig Herzrhythmen erzeugen.
Unsere Firmware-Entwickler haben das Gerät so gestaltet, dass es für normale Benutzer einfach zu Handhaben und konfigurieren ist. Dies unterstützt den Kunden beim Verkauf des Herzverstärkers, mit dem das Gerät verbunden ist.
Die erste Lieferung bestand nur aus wenigen Einheiten. Nachdem der Herzsimulator den Praxistest bestanden hat, erhöhte der Kunde die Bestellmenge mehrmals.