Herzschrittmacher: Heart on a chip

Herzschrittmacher: Heart on a chip

Elektrophysiologisches Herzmodell für Regelkreistests in Echtzeit

Zwischen 1990 und 2000 wurden mehr als 600.000 Medizinprodukte für den Einsatz am Herzen von Herstellern zurückgerufen. Etwa 200.000 dieser Rückrufe ergaben sich aufgrund von Softwareproblemen.

 (Bild: MathWorks GmbH)

(Bild: MathWorks GmbH)


Aufgrund der Tatsache, dass ein typischer Herzschrittmacher 80.000 bis 100.000 Codezeilen enthält, erweist sich für Hersteller die Erkennung von Softwarefehlern unter Verwendung aktueller branchenüblicher Methoden als schwierig. Diese Methoden beruhen auf Open-Loop-Tests, bei denen die Tester zuvor aufgezeichnete Signale an den Herzschrittmacher weiterleiten und die entsprechenden Rückgabewerte auswerten. Open-Loop-Tests können zeigen, wie der Herzschrittmacher auf unterschiedliche Zustände des Herzens reagiert, jedoch nicht, wie das Herz in einem geschlossenen Regelkreis auf den Herzschrittmacher reagiert. Dies ist besonders wichtig bei Problemen wie Tachykardie, die durch den Herzschrittmacher ausgelöst wird. Hierbei kann der Herzschrittmacher das Herz in einen instabilen Zustand bringen. Das Team in der Abteilung für Elektro- und Systemtechnik der University of Pennsylvania hat den Prototyp eines elektrophysiologischen Modells des Herzens entwickelt, das es ermöglicht, den Herzschrittmacher in Echtzeit in einem geschlossenen Regelkreis zu testen. Dieses mit Matlab und Simulink entwickelte System, bei dem das Herz auf einem Chip abgebildet ist (‚Heart-on-a-Chip‘), kann so konfiguriert werden, dass es den spezifischen elektrophysiologischen Merkmalen eines Patienten entspricht. Es kann eine Vielzahl von Zuständen des Herzens simulieren, um eine frühzeitige Verifikation der Herzschrittmacher-Software zu ermöglichen. Zum besseren Verständnis der Arbeitsweise elektrischer Signale im Herzen sind Herzoperationen im Krankenhaus der University of Pennsylvania beobachtet worden.
 Stateflow-Diagramm eines Knotenautomaten. (Bild: MathWorks GmbH)

Stateflow-Diagramm eines Knotenautomaten. (Bild: MathWorks GmbH)

Erstellen des Herzmodells

Während dieser Operationen leiten Physiker der elektrophysiologischen Abteilung über einen Katheter elektrischen Strom in das Herz. Anschließend wurde das elektrische Verhalten des Herzens überwacht und die Konduktivität entlang der Leitungen gemessen. Es wurde ein anfängliches elektrophysiologisches Modell des Herzens in Matlab erzeugt. Matlab ist aus mehreren Gründen ausgewählt worden: Zuerst wurden umfangreiche Designuntersuchungen in den ersten Stufen der Entwicklung durchgeführt, und Matlab bietet eine geeignete Umgebung, um neue Ideen auszuprobieren. Zweitens sind die meisten Jungakademiker bereits erfahren im Umgang mit Matlab, sodass sie sich umgehend und ohne neue Software erlernen zu müssen, am Projekt beteiligen können. Drittens unterstützen Matlab und Simulink die Codegenerierung für FPGAs und Embedded Systems, die für Echtzeit-Tests benötigt werden. Nach der Simulierung und Verfeinerung des Matlab-Herzmodells wurde eine Simulink- und Stateflow-Version erstellt. Dieses Modell stellte eine visuelle Repräsentation der Knoten und Leitungen im Herzen dar und ermöglichte deutlich schnellere Simulationen als die Matlab-Version. Das Simulink- und Stateflow-Modell umfasst etwa 30 Teilmodelle von Knoten und 30 Teilmodelle von Leitungen, die in Stateflow-Charts näher beschrieben werden. Das Teilmodell des Knotenautomaten umfasst drei Zustände, die einem Ruhezustand und zwei aktiven Zuständen, der effektiven Refraktionsperiode (ERP) sowie der relativen Refraktionsperiode (RRP) (Bild 2) entsprechen. Der Pfadautomat ist komplexer und umfasst fünf Zustände, welche die Leitung des Pfads beschreiben: ante (Vor, d. h. Vorwärtsleitung), idle (Leerlauf, d. h. keine Leitung), retro (Zurück, d. h. Rückwärtsleitung), double (Doppelt, d. h. Leitung in beide Richtungen) und conflict (Konflikt). Mehrere Herzrhythmusstörungen im Herzmodell wurden durch den Leiter der Abteilung für Herzelektrophysiologie in der Klinik Philadelphia VA validiert.

 Stateflow-Diagramm eines Herzschrittmacher-Designs. (Bild: MathWorks GmbH)

Stateflow-Diagramm eines Herzschrittmacher-Designs. (Bild: MathWorks GmbH)

Erstellen des Herzschrittmachermodells

Vor der Modellerstellung des Herzschrittmachers in Simulink und Stateflow wurde speziell für die formale Verifikation ein Realzeitmodell des Automaten unter Verwendung der UPPAAL Modellierungsumgebung gebaut. Dieses wurde in Zusammenarbeit mit der Universität Aalborg in Dänemark und der Universität Uppsala in Schweden entwickelt. Das Modell basiert auf einer durch den Hersteller des Herzschrittmachers zur Verfügung gestellten Spezifikation. Es ermöglicht die Evaluierung der Designmöglichkeiten und stellt unter Beweis, dass bestimmte Eigenschaften des Designs den Anforderungen entsprochen haben. Ein eher herkömmlicher Ansatz wäre gewesen, mit einem Modell von Simulink und Stateflow zu beginnen und im Anschluss unter Verwendung des Simulink Design Verifier die formelle Verifikation durchzuführen. Für die formelle Verifikation der Zeitplanung von Ereignissen sowie für die Laufzeit- und Sicherheitseigenschaften des Designs soll Simulink Design Verifier verwendet werden. Es wurde UPP2SF verwendet, wobei es sich um ein Modellumwandlungs-Tool handelt, das an der University of Pennsylvania entwickelt wurde. Es wandelt die UPPAAL Realzeitmodelle für Simulation und Tests automatisch in ein Simulink- und Stateflow-Modell um (Bild 3).

 Implementierung des Herzmodells auf einem FPGA. (Bild: MathWorks GmbH)

Implementierung des Herzmodells auf einem FPGA. (Bild: MathWorks GmbH)

Regelkreissimulation und Echtzeit-Implementierung

Nach Fertigstellung der Simulink- und Stateflow-Versionen des Herzmodells sowie des Herzschrittmachermodells wurde eine Simulation des geschlossenen Regelkreises durchgeführt, um das Verhalten des Herzschrittmachers zu verifizieren. Beispielsweise wurden mehrere Szenarien im geschlossenen Regelkreis simuliert, einschließlich der durch den Herzschrittmacher ausgelösten Tachykardie sowie Vorhofflattern. Dies sind Szenarien, die durch die formelle Analyse zur Verifikation als potenziell problematisch hervorgehoben wurden. Außerdem wurden Probleme aufgrund von Fehlern simuliert, wie z. B. eine verschobene Herzschrittmacherelektrode. Die Simulation wurde außerdem zum Vergleich und zur Auswertung unterschiedlicher Versionen der Herzschrittmacheralgorithmen verwendet. Eines der wichtigsten Ziele sind Tests an tatsächlichen Herzschrittmachern, statt sich auf Modelle zu beschränken. Zu diesem Zweck musste das Herzmodell in Echtzeit-Hardware implementiert werden. Es wurde der HDL-Coder verwendet, um aus dem Simulink- und Stateflow-Modell VHDL-Code zu generieren, der den Einsatz des „Heart-on-a-Chip“ auf einem Altera FPGA (Bild 4) ermöglichte. Der generierte Code war so effizient, dass zahlreiche Versionen des Herzmodells auf einem einzigen Einsteiger-FPGA implementiert werden konnten. Für die ersten Echtzeit-Tests wurde ein vereinfachter Herzschrittmacher erstellt. Dies geschah durch Generierung von C-Code des Simulink- und Stateflow-Herzschrittmachermodells mithilfe des Embedded Coder. Dieser wurde in einen integrierten Atmel-Mikrocontroller implementiert. Aufgrund des Erfolgs dieser Tests wurden Tests des geschlossenen Regelkreises durchgeführt, bei denen das ‚Heart-on-a-Chip‘ auf dem FGPA sowie serienmäßige Herzschrittmacher zum Einsatz kamen. Die ‚Heart-on-a-Chip‘-Plattform gewann den ersten Preis bei der World Embedded Systems Competition 2012 (High-Tech Medical Service) in Seoul, Korea.

Erstellen einer Schnittstelle zur Konfiguration des Modells

Das Herzmodell bietet umfangreiche Konfigurationsmöglichkeiten und ist dazu in der Lage, Variationen der elektrophysiologischen Leitfähigkeit bei unterschiedlichen Patienten abzubilden. Anfangs wurden Änderungen in der Konfiguration direkt am Simulink-Modell vorgenommen. Um diesen Schritt für die Mitarbeiter des Teams sowie andere Forscher zu vereinfachen, wurde der virtuelle Herzmodellsimulator von der University of Pennsylvania entwickelt. Hierbei handelt es sich um eine graphische Oberfläche, die mit Matlab erstellt wurde und die es Anwendern ermöglicht, eine Topologie für ein neues Herzmodell zu definieren. Anschließend können das Modell, das auf der gewünschten Topologie basiert, sowie die Konfigurationsparameter automatisch konfiguriert werden. Im Hintergrund verwendet der virtuelle Herzmodellsimulator von der University of Pennsylvania ein MATLAB-Skript, um ein Simulink- und Stateflow-Modell zu generieren, das auf der gewünschten Topologie sowie den Konfigurationsparametern basiert.

Weitere Schritte

Durch eine Zusammenarbeit mit der US-amerikanischen Gesundheitsbehörde, FDA, sowie mit Herstellern von Herzschrittmachern werden ein Framework sowie Richtlinien erstellt, nach denen das Herzmodell verwendet wird, um Herzschrittmacher-Software in einem frühen Entwicklungsstadium zu verifizieren. Es wird die Entwicklung eines Systems angestrebt, das elektrophysiologische Testergebnisse eines Patienten automatisch in ein anwenderdefiniertes Modell überträgt, welches über für das Herz des jeweiligen Patienten optimierte Parameter verfügt. Die Arbeit am Herzmodell ergänzt ein zugehöriges Projekt, bei dem Forscher von der University of Pennsylvania generische Modelle einer Infusionspumpe sowie Referenzspezifikationen entwickelt haben, die zur Verifikation von Sicherheitseigenschaften bei medizinischen Infusionspumpen verwendet werden. Ziel beider Projekte ist es, realistische Modelle biologischer Systeme zur Verfügung zu stellen, um verbesserte Tests medizinischer Geräte zu ermöglichen. Weitere Vorstöße in diesem Bereich sollen durch die Entwicklung von Simulink-Modellen menschlicher Systeme möglich werden, die mit einer Reihe von Medizinprodukten interagieren, u. a. Schmerzmittelpumpen sowie Systeme zur Blutzucker- und Insulinüberwachung. Durch die frühe Verifikation von Software sowie durch Tests des geschlossenen Regelkreises in Echtzeit können Hersteller von Medizinprodukten nun die Qualität ihrer Software verbessern und die Zahl der Geräterückrufe reduzieren.

MathWorks GmbH
www.mathworks.de

Das könnte Sie auch Interessieren