DE69702273T2 - Aktive implantierbare medische Vorrichtung und dazugehörende externe Programmiereinrichtung mit automatischer Aktualisierung von integrierter Software - Google Patents

Aktive implantierbare medische Vorrichtung und dazugehörende externe Programmiereinrichtung mit automatischer Aktualisierung von integrierter Software

Info

Publication number
DE69702273T2
DE69702273T2 DE69702273T DE69702273T DE69702273T2 DE 69702273 T2 DE69702273 T2 DE 69702273T2 DE 69702273 T DE69702273 T DE 69702273T DE 69702273 T DE69702273 T DE 69702273T DE 69702273 T2 DE69702273 T2 DE 69702273T2
Authority
DE
Germany
Prior art keywords
programmer
implant
program
objects
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE69702273T
Other languages
English (en)
Other versions
DE69702273D1 (de
Inventor
Yves Faisandier
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sorin CRM SAS
Original Assignee
Ela Medical SAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ela Medical SAS filed Critical Ela Medical SAS
Publication of DE69702273D1 publication Critical patent/DE69702273D1/de
Application granted granted Critical
Publication of DE69702273T2 publication Critical patent/DE69702273T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61NELECTROTHERAPY; MAGNETOTHERAPY; RADIATION THERAPY; ULTRASOUND THERAPY
    • A61N1/00Electrotherapy; Circuits therefor
    • A61N1/18Applying electric currents by contact electrodes
    • A61N1/32Applying electric currents by contact electrodes alternating or intermittent currents
    • A61N1/36Applying electric currents by contact electrodes alternating or intermittent currents for stimulation
    • A61N1/372Arrangements in connection with the implantation of stimulators
    • A61N1/37211Means for communicating with stimulators
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61NELECTROTHERAPY; MAGNETOTHERAPY; RADIATION THERAPY; ULTRASOUND THERAPY
    • A61N1/00Electrotherapy; Circuits therefor
    • A61N1/18Applying electric currents by contact electrodes
    • A61N1/32Applying electric currents by contact electrodes alternating or intermittent currents
    • A61N1/36Applying electric currents by contact electrodes alternating or intermittent currents for stimulation
    • A61N1/372Arrangements in connection with the implantation of stimulators
    • A61N1/37211Means for communicating with stimulators
    • A61N1/37252Details of algorithms or data aspects of communication system, e.g. handshaking, transmitting specific data or segmenting data
    • A61N1/37264Changing the program; Upgrading firmware
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0426Programming the control sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H40/00ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices
    • G16H40/40ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the management of medical equipment or devices, e.g. scheduling maintenance or upgrades
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61NELECTROTHERAPY; MAGNETOTHERAPY; RADIATION THERAPY; ULTRASOUND THERAPY
    • A61N1/00Electrotherapy; Circuits therefor
    • A61N1/18Applying electric currents by contact electrodes
    • A61N1/32Applying electric currents by contact electrodes alternating or intermittent currents
    • A61N1/36Applying electric currents by contact electrodes alternating or intermittent currents for stimulation
    • A61N1/372Arrangements in connection with the implantation of stimulators
    • A61N1/37211Means for communicating with stimulators
    • A61N1/37235Aspects of the external programmer

Landscapes

  • Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Public Health (AREA)
  • General Health & Medical Sciences (AREA)
  • Theoretical Computer Science (AREA)
  • Radiology & Medical Imaging (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Business, Economics & Management (AREA)
  • Veterinary Medicine (AREA)
  • Software Systems (AREA)
  • Animal Behavior & Ethology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Nuclear Medicine, Radiotherapy & Molecular Imaging (AREA)
  • Automation & Control Theory (AREA)
  • Computer Security & Cryptography (AREA)
  • Primary Health Care (AREA)
  • Medical Informatics (AREA)
  • Epidemiology (AREA)
  • Electrotherapy Devices (AREA)
  • Stored Programmes (AREA)
  • Medical Treatment And Welfare Office Work (AREA)

Description

  • Die vorliegende Erfindung betrifft die aktiven implantierbaren medizinischen Vorrichtungen und die Geräte, die "Programmierer" genannt werden, die dazu bestimmt sind, die Daten mit diesen letzteren auszutauschen.
  • Die Erfindung wird hauptsächlich für den Fall eines Herzschrittmachers beschrieben werden, jedoch handelt es sich dabei nur um ein Beispiel einer Ausführungsform der Erfindung, die auf viel allgemeinere Weise auf eine sehr große Vielfalt "aktiver implantierbarer medizinischer Vorrichtungen" anwendbar ist, wie sie durch die Direktive 90/385/CE vom 20. Juni 1990 vom Rat der Europäischen Gemeinschaft definiert ist, eine Definition, die unter anderen die Herzschrittmacher, die Defibrillatoren und/oder Kardioverter, die Diffusionspumpen mit medizinischen Substanzen, die kochlearen Implantate, die implantierten Biosensoren, etc., einschließt.
  • Diese Vorrichtungen (im folgenden einfach als "Implantate" bezeichnet) sind, sobald sie einmal plaziert sind, von außen mittels einer Konsole programmiert, die "Programmierer" genannt wird, welcher im allgemeinen aus einem Kleinrechner gebildet ist, der mit einem Programmierkopf ausgestattet ist, der hinsichtlich des Ortes des Implantats plaziert ist. Der Programmierer kann auf elektromagnetischem Weg ("Telemetrie") Daten, die im Implantat gespeichert sind, lesen (z. B. Funktionsparameter, Biosignale, die aufgezeichnet wurden, etc.), und andererseits eventuell bestimmte Daten zu diesem Implantat schicken, um es zu "reprogrammieren", d. h., seine Funktionsparameter zu modifizieren.
  • Diese Programmierer sind alle auf einen Typ von Implantat spezifiziert oder für eine Familie von Implantaten eines selben Herstellers, derart, daß das Auf-den- Markt-Bringen eines neuen Implantats dem Hersteller im allgemeinen eine ent sprechende Aktualisierung von Programmieren auferlegt. Darüber hinaus werden, selbst ohne ein Auf-den-Markt-Bringen eines neuen Implantats Verbesserungen regelmäßig vorgenommen, die zu einer Aktualisierung des Programms des Programmierers führen können.
  • Diese Aktualisierungen sind besonders heikel.
  • In der Tat müßten sie aus selbstverständlichen Gründen der Sicherheit nach einem sehr strikten Protokoll realisiert werden: Besuch in jedem Zentrum, Änderung des Programms durch eine qualifizierte Person, Rückgewinnung der alten Programme, Erstellen und Unterschrift von Zertifizierungsdokumenten, etc.. Diese Prozeduren sind schwerfällig und unbequem, derart, daß man vermeidet, sie zu häufig anzuwenden (z. B. für kleinere Modifikationen des Programms). Darüber hinaus eliminieren die Sicherheitsprozeduren, wie umfassend sie auch immer sind, nicht vollkommen das Risiko des Fehlens einer Aktualisierung (eines Programmierers, der durch den Hersteller nicht lokalisiert würde), noch das Problem von Übergangsperioden und vor allem die unangebrachte Verwendung einer alten Version des Programms.
  • Eines der Ziele der Erfindung ist es, diese Schwierigkeiten zu überwinden, durch Vorschlagen eines neuen Konzepts eines Programmierers, dessen Programm auf vollkommen automatische Weise ohne menschlichen Eingriff aktualisiert werden kann und der sich somit von allen Schwerfälligkeiten, Kosten und den mit aktuellen Prozeduren verbundenen Risiken befreit.
  • Die Erfindung impliziert die Einführung der Bezeichnung "Objekt" im Software- Sinn des Ausdrucks, d. h. eine Gesamtheit von Elementen, im breitestmöglichen Sinn des Ausdrucks (Daten, Konstrukte, Destrukte und Methoden), die es erlauben, Daten auf eine sehr strukturierte Weise zu verwalten und darzustellen. Insbesondere bewerkstelligt sich der Zugriff auf Daten im allgemeinen nur über dem Objekt eigene Methoden, was es ermöglicht, diese letzteren gegen ein Beschrei ben außerhalb der Grenze zu schützen und das Programm besonders verläßlich zu machen. Das Konzept eines "Erbens" vereinfacht ebenso die Konzeption des Programms, wobei ein Objekt von einem anderen erben kann, was es diesem ermöglicht, direkt die Methoden dieses letzteren zu verwenden.
  • Beispiele von Programmierobjekten und ihren Anwendungen auf dem Gebiet von Herzschrittmachern werden weiter unten beschrieben werden.
  • Auf allgemeine Weise kann auf die Literatur bezüglich dieses Themas Bezug genommen werden, beispielsweise auf das Werk von Max Bouche, La demarche objet - Concepts et outils, AFNOR, 1994, sowie auf die Dokumentation von "objektorientierten" Programmiersprachen, wie dem C++, das eine typische objektorientierte Programmiersprache ist.
  • Im wesentlichen besteht die Idee der Erfindung darin (i), im Implantat selbst Programmobjekte zu speichern, die es zulassen, die Sichtbarmachung, die Behandlung und die Programmierung ihrer Daten durch einen externen Programmierer zu definieren, (ii) durch den Programmierer die Liste von Objekten, die dieser Programmierer enthält, mit der Liste von Objekten, die das Implantat enthält, zu vergleichen und (iii) vom Implantat zum Programmierer die Objekte fernzuladen, die fehlen oder neuer sind, um das Programm des Programmierers zu aktualisieren.
  • Diese Vorgehensweise, welche in weiteren Einzelheiten durch das folgende beschrieben werden wird, schafft vier größere Vorteile im Verhältnis zum Stand der Technik:
  • 1. Sicherheit: Jeder Programmierer, der mit einem Kern einer minimalen Basis ausgestattet ist, d. h. Objekten, die es ermöglichen, die Kommunikation mit einem Implantat einzurichten und Verbindungen zwischen Objekten zu verwalten, kann das gesamte Implantat lesen, selbst wenn dieses viel später als der Programmierer entwickelt worden ist. Der Bediener kann sich somit nicht mehr in der Situation einer Unmöglichkeit des Lesens und Re- Programmierens von Funktionen eines neuen Modells eines Implantats wiederfinden, wenn er über einen kompatiblen, wenn auch alten Programmierer, verfügt. Darüber hinaus verfügt jeder Parameter über seinen eigenen Verwaltungsmodus, der durch ein Programm im Implantat selbst definiert ist und die Kontrollen einer Erfassung dieser Parameter durch den Bediener können nicht falsch sein, da sie nicht mehr durch ein vorexistierendes Objekt des Programmierers kontrolliert werden, sondern durch ein Objekt, das vom Implantat selbst ausgegeben ist.
  • 2. Wirtschaftlichkeit: Die Aktualisierungskosten von Programmierern sind beträchtlich reduziert und entstehen bei wichtigen Veränderungen an einem Gerät (neue Generationen von Programmierern). Somit werden alle Kosten von klassischen Sicherheitsprozeduren, die diese Veränderungen begleiten, vermieden: Herstellung von Disketten und Anleitungen für eine Aktualisierung, Reisen eines qualifizierten Bedieners an jeden Ort, Unterschrift eines Registers, welches die Aktualisierung attestiert, Einziehen der alten Disketten, etc..
  • 3. Vereinfachung der Programmierung: Die Fortentwicklung des Programms des Programmierers bewerkstelligt sich automatisch und auf "transparente" Weise für den Benutzer. Einzig sehr allgemeine Funktionen können die Verwaltung von Basisobjekten vervollständigen, und die Liste von am Anfang gelieferten Objekten wird durch die Objekte vervollständigt werden, die in jedem neuen Implantat definiert sind.
  • 4. Standardisierung: Die Flexibilität einer Anwendung der Erfindung erlaubt es jetzt, die Schaffung eines Standards anzustreben, der es jedem Programmierer ermöglicht, jedes Implantat zu lesen, was auch immer sein Modell oder sein Hersteller sein mag. Jeder Hersteller kann den graphischen Aspekt seines Programmierers, die Verwaltungsmöglichkeiten von Daten, zusätzliche Berechnungen, etc., auf eine Weise definieren, um eine bestimmte Originalität zu bewahren, aber, da die Basisobjekte auf identische Weise definiert sind, wird das Lesen eines "fremden" Implantats vollkommen möglich. Man kann somit die Verwirklichung von universellen Programmierern anstreben, was bisher nicht nur aus Gründen der Kosten und der Komplexität, sondern auch aus Sicherheitsgründen ausgeschlossen war (Risiken unvorhergesehener Inkompatibilitäten).
  • Präziser kann man die Erfindung definieren durch eine Gesamtheit, die einerseits ein Implantat vom Typ einer aktiven implantierbaren medizinischen Vorrichtung aufweist und andererseits einen externen Programmierer für das Implantat, wobei die Gesamtheit dadurch gekennzeichnet ist, daß:
  • - der Programmierer einen Speicher aufweist, der ein auf modulare Weise strukturiertes Programm vom objektorientierten Typ aufweist, das aus einer Gesamtheit von Programm-Modulen vom Objekttyp zusammengesetzt ist,
  • - das Implantat einen Speicher aufweist, der zum einen Daten zur Parametrierung der Funktion des Implantats und zum anderen eine Gesamtheit von Programmobjekten aufweist, die zum Funktionieren des Programmierers in Beziehung mit den Daten der Parametrierung des Implantats notwendig sind,
  • - der Programmierer und das Implantat Einrichtungen aufweisen, die dazu geeignet sind, zwischen ihnen eine bidirektionale Verbindung zum Austausch von Informationen aufzubauen, die insbesondere den selektiven Transfer von allen oder einem Teil der Daten und der Objekte des Implantats, die in dem Programm des Programmierers fehlen, in Richtung des Programmierers erlaubt, und
  • - der Programmierer Einrichtungen zur Aktualisierung aufweist, die dazu geeignet sind, das Fernladen ausgehend von dem Implantat zumindest eines Teils der Objekte, die in dem Speicher dieses letzteren enthalten sind, zu steuern und diese Objekte denjenigen des Programms des Programmierers hinzuzufügen und/oder sie zu ersetzen.
  • Vorteilhafterweise weisen die Einrichtungen zur Aktualisierung des Programmierers auf: Einrichtungen, die dazu geeignet sind, durch Lesen des Speichers des Implantats eine Liste von Objekten aufzubauen, die sich dort mit ihrer jeweiligen Version befinden; Einrichtungen, die dazu geeignet sind, diese Liste mit derjenigen der Objekte des Programms des Programmierers zu vergleichen; Einrichtungen, die dazu geeignet sind, das Fernladen ausgehend von dem Implantat von Objekten, die nicht in dem Programm des Programmierers enthalten sind, zu steuern und diese Objekte dem Programm hinzuzufügen; und/oder Einrichtungen, die dazu geeignet sind, das Fernladen ausgehend von dem Implantat von Objekten zu steuern, die in dem Programm des Programmierers vorhanden sind, deren Version aber älter ist als diejenige, die sich in dem Implantat befindet, und dazu, diese Objekte in dem Programm zu ersetzen.
  • Die Erfindung umfaßt ebenfalls als unabhängiges Produkt das Implantat oder den Programmierer des Implantats, der die vorgenannten Merkmale aufweist.
  • Im folgenden wird ein Beispiel einer Ausführungsform der Erfindung beschrieben werden.
  • Wie bereits weiter oben angezeigt, ist das Programm des Programmierers genauso wie das des Implantats in "Programmobjekten" organisiert.
  • Im Fall eines Herzschrittmachers kann man durch ein Objekt jedes Element des Schrittmachers darstellen, das programmierbar oder einfach auf dem Bildschirm eines Programmierers anzeigbar ist.
  • Somit kann eine Kurve, welche die Herzfrequenz in Abhängigkeit der Zeit liefert, durch ein spezielles Objekt Herzfrequenz dargestellt werden, das von einem viel allgemeineren Objekt, das man Kurve nennen kann, erbt, und eine Folge von Daten, die einer Kurve entsprechen, aufweist, mit seinem Format, seinen Skalen in der Abszisse und Ordinate, seinem Titel, einem Anzeigeverfahren, einem Druckverfahren, etc..
  • Der Programmierer seinerseits verfügt über ein Objekt Verbindungsverwaltungsprogramm, das die Daten, die der Herzfrequenz entsprechen, die in dem Schrittmacher gespeichert sind, aufrufen kann, unter Anwendung der notwendigen Protokolle für Transfer, Komprimierung/Dekomprimierung von Daten, etc.. Der Programmierer kann danach ein Fenster anzeigen, welches diese Daten darstellt, mit Hilfe des Objektes Kurve, welches alle gängigen Funktionen ermöglicht: Zoom, Rollmodus im Fenster, Messungen mit Hilfe von Cursorn, etc..
  • Das Konzept der Erfindung ruht auf drei grundlegenden Hypothesen:
  • - Das Programm des Programmierers ist "offen", d. h., daß es sich durch Aufnehmen und Integrieren neuer Objekte, welche das Anzeigen von Daten, das Behandeln dieser Daten und die Programmierung des Implantats betreffen, anreichern kann. Diese Objekte können entweder vom Implantat (das ist das Kennzeichen der Erfindung) oder von einer Diskette oder jedem anderen Informatik-Hilfsmittel auf an sich klassische Weise herrühren, beispielsweise für das vorherige Laden des Objektes Verbindungsverwaltungsprogramm.
  • - Das Implantat speichert in sich selbst alle Objekte, die das Anzeigen, die Behandlung und die Programmierung von Daten, die in diesem Implantat enthalten sind, zu definieren zulassen. Später wird zu erkennen sein, daß die Größe dieser Objekte relativ reduziert sein kann, in dem Maße, wie die Objekte, von denen sie erben (beispielsweise das Objekt Kurve, welches die Anzeige und die Verwaltung einer Kurve im allgemeinen durch den Programmierer definiert), schon in dem Programmierer präsent sind.
  • - Die Versionen der Objekte sind datiert (beispielsweise durch eine Versionsnummer) und jede jüngere Version muß im Programmierer eine ältere Version ersetzen. Die Entwicklungen der Objekte bewirken sich durch Auferlegen einer ansteigenden Kompatibilität, d. h., daß eine jüngere Version mit allen Datenaustauschen bezogen auf ältere Versionen kompatibel bleibt.
  • Am Anfang des Datenaustausches zwischen Implantat und Programmierer ruft dieser letztere systematisch einen Block auf, der Objektliste genannt wird, auf der ein Verzeichnis von im Implantat verfügbaren Objekten mit ihrer Version ist. Er vergleicht also die Codes dieser Objekte mit jenen, die er kennt (Liste der verfügbaren Objekte in dem Programm des Programmierers, dynamisch geleitet und gesichert in einer Konfigurationsdatei). Wenn eines oder mehrere dieser Objekte dem Programmierer unbekannt sind, ruft er also durch die Verbindungsverwaltung eine Fernlade-Prozedur dieser Objekte auf, um sein Programm zu vervollständigen und es so an das Implantat anzupassen. Diese Fernlade- und Aktualisierungs- Prozedur besteht für jedes unbekannte Objekt darin, die Verbindungsverwaltung ablaufen zu lassen, wovon dieses Objekt erbt; die Verbindungsverwaltung schickt die Objektnummer zum Schrittmacher und umgekehrt schickt dieser einen entsprechenden Informationsblock.
  • Dasselbe gilt für die Objekte, die, obwohl sie im Programm des Programmierers vorliegen, einer viel älteren Version entsprechen als jener; die in dem Implantat enthalten ist.
  • Nach dieser Phase kann der Programmierer alle im Implantat enthaltenen Daten aufrufen, die gewünschten Resultate anzeigen, das Implantat reprogrammieren, etc.. Im Falle eines Implantats, welches über das Objekt Herzfrequenz verfügt, das durch einen Programmierer gelesen ist, der dieses nicht kennt, ortet dieser das Objekt in der Objektliste, die durch den Schrittmacher geliefert wird. Er verlangt den Transfer des Objekts und fügt es seinen Programmbasen hinzu, wobei der Aufruf an den Erzeuger des Objekts zuläßt, einen Speicherbereich zu reservieren, um im nachhinein die Frequenzkurve, die Auswahl eines Anzeigefensters und die Initialisierung verschiedener Variablen zu erhalten. Der Code des Objektes Herz frequenz fügt sich also der dynamischen Liste der verfügbaren Objekte im Programm des Programmierers hinzu.
  • Wenn der Bediener die Kurve anzeigen will, ruft er auf dem Programmierer das entsprechende Fenster auf. Das Programm testet also das Vorhandensein der Kurve im Speicher und im negativen Fall veranlaßt es ein Lesen von Frequenzdaten, die in dem Schrittmacher gespeichert sind. Die Kurve wird dann in einem Fenster angezeigt, das über klassische Einstellbefehle (Verstärkung, Zoom, Rollen), Meßbefehle (Cursor) und eventuell Druckbefehle verfügt, wobei diese verschiedenen Funktionen durch das allgemeine Objekt Kurve, das schon im Programmierer vorliegt, verwaltet werden.
  • Im folgenden werden nun zwei detaillierte Beispiele von Objekten eines Schrittmachers beschrieben: ein Objekt Nominalfrequenz (fester programmierter Wert) und ein Objekt Atmungsfrequenz (eine sich im Laufe der Zeit entwickelnde Dateneinheit).
  • Die Beschreibung von Objekten kann in verschiedenen Formen realisiert sein, die man als drei Fälle unterteilen kann: Maschinencode, vorkompilierter Code und Meta-Sprachcode:
  • - Der Maschinencode ist zu sehr mit dem Prozessor verbunden, um eine Verwendung auf lange Sicht zuzulassen.
  • - Der vorkompilierte Code (wie der alte "P-Code") ist höchst leistungsfähig, wobei er alle Daten und alle Verfahren neuer Objekte beschreiben kann. Er bleibt dagegen bei einem beachtlichen Umfang, schlecht angepaßt an Implantate schwacher Kapazität.
  • - Die Meta-Sprache präzisiert nur den Wert von Variablen, die bei Eltern- Objekten vorkommen, die durch den Programmierer vordefiniert sind. Der Datenumfang ist deshalb extrem reduziert. Die meisten Daten eines Implantats können sich mit einer Beschreibung in Form einer Meta-Sprache begnügen, jedoch muß der Rückgriff auf einen vorkompilierten Code für die Integration ursprünglicher Objekte zugänglich bleiben.
  • Im hier beschriebenen Beispiel ist die gewählte Sprache eine Meta-Sprache, die eine reduzierte Größe von Objekten verschafft und eine völlige Unabhängigkeit von einer Programmiersprache. Im Gegensatz dazu kann sie nur auf Basisobjekte des Programmierers Bezug nehmen, ohne sie direkt fortschreiten zu lassen. Die Grenzen werden nur dann erreicht, wenn ein vollkommen neues Konzept nicht durch diese integriert werden kann, derart, daß die Entwicklung dieser Basisobjekte ausnehmend gut realisiert sein muß, um das zu häufige Eintreten jener Art von Vorfall zu vermeiden, der eine herkömmliche Aktualisierung von Programmen des Programmierers auferlegen würde.
  • Nominalfrequenz-Objekt
  • Die Nominalfrequenz, die ein wesentlicher Parameter eines jeden Herzschrittmachers ist, kann durch ein Objekt dargestellt werden, das auf folgende Weise beschrieben ist:
  • - Obiektnummer: Eindeutiger Code, der dem Objekt zugewiesen ist, beispielsweise über acht Zeichen (zwei Buchstaben für den Hersteller, vier Buchstaben für den Gegenstand und zwei Ziffern für die Versionsnummer), der es zuläßt, einen sowohl eindeutigen als auch leicht dechiffrierbaren Code zu wählen.
  • - Vorfahrobjekt: Eine Objektnummer liefert den Code des Vorfahrobjektes, der sich in diesem Fall in dem Programmierer seit dem Ursprung befindet und der es zuläßt, alle Anzeige-, Erfassungs-, Druck- und Speicherprozesse eines numerischen Wertes zu verwalten. Dieses Objekt erbt selbstverständlich zumindest von einem viel allgemeineren Objekt, welches das Verbindungs-Verwaltungsprogramm ist. Da es sich um eine Programmie rung nach vordefinierten Schritten handelt, sind die Werte nach Anzahl von Schritten kodiert. Diese Dateneinheit belegt fünft Zeichen.
  • Die folgenden Daten parametrieren das Vorfahrobjekt:
  • - beschreibender Programmsatz (100 Zeichen), der den numerischen Wert für das Anzeigen begleitet (z. B. zwanzig Zeichen, ergibt hundert Zeichen insgesamt für fünf verschiedene Sprachen).
  • - Meßeinheit (10 Zeichen).
  • - Schrittwert, vom Minimum, vom Maximum und vom Nominalwert (16 Zeichen): Die Grenzen liegen im Vorfahrobjekt, um die Erfassung eines numerischen Wertes außerhalb einer Grenze zu vermeiden. Diese Grenzen werden durch das Maximum und das Minimum aktualisiert und der Nominalwert ersetzt den im Objekt vorhandenen Wert während des Aufrufs der Methode eines "Setzen auf nominal", das alle programmierbaren Objekte erben. Der Schritt kann mit konstantem, logarithmischem oder inversem Wert definiert sein, um auf verschiedene Fälle von Formen zu antworten, die in den Schrittmachern vorliegen.
  • - Referenzfenster (5 Zeichen): Jede Dateneinheit muß in einem der Bildschirme des Programmierers angezeigt sein, der selbst eines oder mehrere Fenster enthalten kann. Jedes Fenster ist durch den Schrittmacher mit zumindest einem Titel, einem Format (eine Spalte, zwei Spalten, etc.) und Aktionen definiert, die man durchführen kann (Verschiebung, Aufruf eines momentanen oder kontinuierlichen Lesens des Schrittmachers, lokalen Menüs, etc.).
  • - Position im Referenzfenster (5 Zeichen): Spalte, Höhe, etc., die sich in Form einer Zahl bis zu fünf Ziffern darstellen können: Die erste gibt die Spalte an, die drei folgenden eine Prioritätsreihenfolge im Verhältnis zu den anderen; der Kern einer Steuerung des Bildschirms plaziert sie also von oben nach unten nach Prioritätsreihenfolge.
  • Die Gesamtheit dieser Daten belegt somit 56 Zeichen im Mono-Sprach-Modus und 136 Zeichen im Multi-Sprach-Modus.
  • Objekt Atmungsfrequenz
  • Im Fall eines Schrittmachers, welcher die Atmungsfrequenz analysiert, kann diese über Perioden mehrerer Stunden, mehrerer Tage und selbst mehrerer Monate gespeichert sein. Das Objekt kann in Meta-Sprache auf folgende Weise beschrieben sein:
  • - Obiektnummer (8 Zeichen): siehe oben.
  • - Vorfahrobjekt (5 Zeichen): Es handelt sich um einen Kurvengenerator in f(t), der eine vertikale Skala besitzt und eine horizontale Skala, ein Datenformat und einen Anzeigemodus (Linie, Minimum-Maximum, etc.), Methode einer Skalen-, Anzeige- und Druckänderung. Dieses Objekt ist ein Teil der Objekte, die sich in dem Programmierer befinden.
  • Die folgenden Daten parametrieren das Vorfahrobjekt:
  • - Beschreibender Programmsatz (20 Zeichen pro Sprache, ergibt 100 Zeichen im Multi-Lingual-Modus): siehe oben.
  • - Meßeinheit (10 Zeichen).
  • - Datenformat (5 Zeichen): Folge ganzer Zahlen (8, 16, 24 oder 32 Bits), von reellen Zahlen, etc.. Dieses Format ist selbst ein residentes Objekt, das von der Verbindungsverwaltung erbt, um diese in die Lage zu versetzen, den Datentransfer zwischen Schrittmacher und Programmierer zu verwalten.
  • Zeitperiode, die jede Dateneinheit trennt (4 Zeichen): Periode in Millisekunden, kodiert durch ein Wort von vier Bytes, die somit eine Dynamik von einer ms auf 1137 Stunden zulassen.
  • - Beschreibung der vertikalen Skala (12 Zeichen): unterer Wert, oberer Wert, Schritt.
  • - Referenzfenster (5 Zeichen): wie im Fall der Nominalfrequenz.
  • - Position im Referenzfenster (5 Zeichen): Wie für die Nominalfrequenz stellt sich das Anzeigen der Graphik gemäß einer bestimmten Prioritätsreihenfolge dar; die Zahl von Spalten und die Zahl angezeigter Elemente werden durch das Fenster in Betracht gezogen, um jedem das Maximum verfügbaren Platzes zuzuordnen: So zeigt ein Fenster mit einer Spalte, die nur eine Kurve enthält, diese über die gesamte verfügbare Oberfläche an, ein Fenster mit zwei Spalten und vier Kurven zeigt jede auf einem Viertel der Gesamtoberfläche an, etc.
  • Die Gesamtheit dieser Daten belegt somit 74 Zeichen im Mono-Lingual-Modus und 154 im Multi-Lingual-Modus.
  • Auf dieselbe Weise können somit alle Funktionsparameter des Schrittmachers beschrieben werden.
  • Im Fall eines relativ komplizierten Herzschrittmachers, der 20 Kurven im Speicher aufweist und 50 programmierbare Parameter, ist die Gesamtgröße der Objekte somit, im Multi-Lingual-Modus, 50 · 136 = 6800 Zeichen für die Parameter und 20 · 154 = 3080 Zeichen für die Kurven, das bedeutet eine Summe von 9880 Zeichen, zu welchen man den Block Objektliste hinzufügen muß, der zum Programmierer vor jeder Aktualisierung übertragen werden wird, nämlich 70 · 8 = 540 Bytes.
  • Die gesamte zur Speicherung von Objekten im Schrittmacher reservierte Größe erreicht nur ungefähr knapp 10 Kilobyte in den komplexesten Fällen (z. B. ein getriggerter DDD-Schrittmacher der letzten Generation), und diese Elemente können leicht in einen Chip vom ROM-Typ des Schrittmachers eingefügt werden, ohne einen Überverbrauch herbeizuführen, solange dieser Chip nicht aktiv ist.

Claims (8)

1. Gesamtheit, die zum einen ein Implantat vom Typ einer aktiven implantierbaren medizinischen Vorrichtung und zum anderen einen externen Programmierer für das Implantat aufweist, dadurch gekennzeichnet, daß:
- der Programmierer einen Speicher aufweist, der ein auf modulare Weise strukturiertes Programm vom objektorientierten Typ enthält, das aus einer Gesamtheit von Programmmodulen vom Objekttyp zusammengesetzt ist,
- das Implantat einen Speicher aufweist, der zum einen Daten zur Parametrierung der Funktion des Implantats und zum anderen eine Gesamtheit von Programmobjekten aufweist, die zum Funktionieren des Programmierers in Beziehung mit den Daten der Parametrierung des Implantats notwendig sind,
- der Programmierer und das Implantat Einrichtungen aufweisen, die dazu geeignet sind, zwischen ihnen eine bidirektionale Verbindung zum Austausch von Informationen aufzubauen, die insbesondere den selektiven Transfer in Richtung des Programmierers von allen oder einem Teil der Daten und der Objekte des Implantats erlaubt, die in dem Programm des Programmierers fehlen,
- der Programmierer Einrichtungen zur Aktualisierung aufweist, die dazu geeignet sind, das Fernladen ausgehend von dem Implantat zumindest eines Teils der Objekte, die in dem Speicher dieses letzteren enthalten sind, zu steuern und diese Objekte denjenigen des Programms des Programmierers hinzuzufügen und/oder sie zu ersetzen.
2. Gesamtheit des Anspruchs 1, bei der die Einrichtung zur Aktualisierung des Programmiers aufweist:
- Einrichtungen, die dazu geeignet sind, durch Lesen des Speicher des Implantats eine Liste von Objekten aufzubauen, die sich dort mit ihrer jeweiligen Version befinden,
- Einrichtungen, die dazu geeignet sind, diese Liste mit derjenigen der Objekte des Programms des Programmierers zu vergleichen,
- Einrichtungen, die dazu geeignet sind, das Fernladen ausgehend von dem Implantat von Objekten, die nicht in dem Programm des Programmierers enthalten sind, zu steuern und diese Objekte dem Programm hinzuzufügen, und/oder
- Einrichtungen, die dazu geeignet sind, das Fernladen ausgehend von dem Implantat von Objekten zu steuern, die in dem Programm des Programmierers vorhanden sind, deren Version aber älter als diejenige ist, die sich in dem Implantat befindet, und diese Objekte in dem Programm zu ersetzen.
3. Gesamtheit gemäß Anspruch 1, bei der die Programmobjekte jeweils zumindest einen Objektidentifizierer, einen Versionsidentifizierer und einen Programmanweisungsblock aufweisen.
4. Implantat vom Typ einer aktiven implantierbaren medizinischen Vorrichtung, das dazu bestimmt ist mit einem Programmierer für die Gesamtheit gemäß Anspruch 1 zusammenzuwirken, wobei das Implantat dadurch gekennzeichnet ist, daß es aufweist:
- einen Speicher, der zum einen Daten zur Parametrierung der Funktion des Implantats und zum anderen eine Gesamtheit von Programmobjekten aufweist, die notwendig zum Funktionieren eines Programmierers in Beziehung mit den Daten zur Parametrierung des Implantats sind, wobei diese Objekte dazu geeignet sind, in Richtung des Programmierers gesandt zu werden, um das Programm dieses letzteren durch den selektiven Transfer in Richtung des Programmierers aller oder eines Teils der Daten und der Objekte, die in dem Programm des Programmierers fehlen, zu vervollständigen oder zu aktualisieren.
5. Implantat gemäß Anspruch 4, bei dem die Programmobjekte jeweils zumindest einen Objektidentifizierer, einen Versionsidentifizierer und einen Programmanweisungsblock aufweisen.
6. Externer Programmierer, der dazu bestimmt ist, mit dem Implantat vom Typ einer aktiven implantierbaren medizinischen Vorrichtung der Gesamtheit gemäß Anspruch 1 zusammenzuwirken, wobei der Programmierer dadurch gekennzeichnet ist, daß er aufweist:
- einen Speicher, der ein auf modulare Weise strukturiertes Programm vom objektorientierten Typ enthält, das aus einer Gesamtheit von Programmmodulen vom Objekttyp zusammengesetzt ist,
- Einrichtungen, die dazu geeignet sind, mit dem Implantat eine bidirektionale Verbindung zum Austausch von Informationen aufzubauen, die insbesondere den selektiven Transfer vom Implantat in Richtung des Programmierers von allen oder einem Teil der Daten zur Parametrierung der Funktion des Implantats und von Programmobjekten erlaubt, die notwendig zum Funktionieren eines Programmierers in Beziehung mit den Daten zur Parametrierung des Implantats sind, die in dem Programm des Programmierers fehlen, und
- Einrichtungen zur Aktualisierung, die dazu geeignet sind, das Fernladen ausgehend von dem Implantat zumindest eines Teiles der Objekte zu steuern, die in dem Speicher dieses letzteren enthalten sind, und diese Objekte denjenigen des Programmes des Programmierers hinzuzufügen und/oder sie zu substituieren.
7. Programmierer gemäß Anspruch 4, bei dem die Einrichtungen zur Aktualisierung aufweisen:
- Einrichtungen, die dazu geeignet sind, durch Lesen des Speichers des Implantats eine Liste von Objekten aufzubauen, die sich mit ihrer jeweiligen Version dort befinden,
- Einrichtungen, die dazu geeignet sind, diese Liste mit derjenigen der Objekte des Programmes des Programmierers zu vergleichen,
- Einrichtungen, die dazu geeignet sind, das Fernladen ausgehend von dem Implantat von Objekten, die nicht in dem Programm des Programmierers enthalten sind, zu steuern und diese Objekte dem Programm hinzuzufügen und/oder
- Einrichtungen, die dazu geeignet sind, das Fernladen von dem Implantat von Objekten, die in dem Programm des Programmierers enthalten sind, deren Version aber älter als diejenige ist, die sich in dem Implantat befindet, zu steuern und diese Objekte in dem Programm zu ersetzen.
8. Programmierer gemäß Anspruch 6, bei dem die Programmobjekte jeweils zumindest einen Objektidentifizierer, einen Versionsidentifizierer und einen Programmanweisungsblock aufweisen.
DE69702273T 1996-02-08 1997-02-07 Aktive implantierbare medische Vorrichtung und dazugehörende externe Programmiereinrichtung mit automatischer Aktualisierung von integrierter Software Expired - Lifetime DE69702273T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR9601564A FR2744817B1 (fr) 1996-02-08 1996-02-08 Dispositif medical implantable actif et son programmateur externe a mise a jour automatique du logiciel

Publications (2)

Publication Number Publication Date
DE69702273D1 DE69702273D1 (de) 2000-07-20
DE69702273T2 true DE69702273T2 (de) 2001-02-22

Family

ID=9488993

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69702273T Expired - Lifetime DE69702273T2 (de) 1996-02-08 1997-02-07 Aktive implantierbare medische Vorrichtung und dazugehörende externe Programmiereinrichtung mit automatischer Aktualisierung von integrierter Software

Country Status (5)

Country Link
US (1) US5800473A (de)
EP (1) EP0791373B1 (de)
JP (1) JP4057670B2 (de)
DE (1) DE69702273T2 (de)
FR (1) FR2744817B1 (de)

Families Citing this family (79)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7787647B2 (en) 1997-01-13 2010-08-31 Micro Ear Technology, Inc. Portable system for programming hearing aids
US6356789B1 (en) 1997-11-07 2002-03-12 Medtronic Inc. Medical information device
US6088618A (en) * 1998-07-07 2000-07-11 Vitatron Medical, B.V. Pacemaker system and method for providing manual display concurrent with pacemaker software modification
FR2784765B1 (fr) 1998-10-19 2001-07-27 Ela Medical Sa Dispositif medical actif, comprenant des registres proteges pour l'ajustement numerique de parametres de fonctionnement
US6308099B1 (en) * 1998-11-13 2001-10-23 Intermedics Inc. Implantable device and programmer system which permits multiple programmers
US6285909B1 (en) * 1999-05-27 2001-09-04 Cardiac Pacemakers, Inc. Preserving patient specific data in implantable pulse generator systems
US6804558B2 (en) 1999-07-07 2004-10-12 Medtronic, Inc. System and method of communicating between an implantable medical device and a remote computer system or health care provider
US7181505B2 (en) * 1999-07-07 2007-02-20 Medtronic, Inc. System and method for remote programming of an implantable medical device
US7149773B2 (en) * 1999-07-07 2006-12-12 Medtronic, Inc. System and method of automated invoicing for communications between an implantable medical device and a remote computer system or health care provider
US6449624B1 (en) * 1999-10-18 2002-09-10 Fisher-Rosemount Systems, Inc. Version control and audit trail in a process control system
US6363282B1 (en) 1999-10-29 2002-03-26 Medtronic, Inc. Apparatus and method to automatic remote software updates of medical device systems
US7039810B1 (en) * 1999-11-02 2006-05-02 Medtronic, Inc. Method and apparatus to secure data transfer from medical device systems
US6904402B1 (en) * 1999-11-05 2005-06-07 Microsoft Corporation System and iterative method for lexicon, segmentation and language model joint optimization
DE19953837A1 (de) 1999-11-09 2001-05-23 Fresenius Medical Care De Gmbh Software-Update für ein medizinisches Gerät
AU1618401A (en) 1999-12-06 2001-06-12 Advanced Bionics Corporation Implantable device programmer
SE9904626D0 (sv) * 1999-12-16 1999-12-16 Pacesetter Ab Programming system for medical devices
US7050857B2 (en) * 1999-12-16 2006-05-23 St. Jude Medical Ab Programming system for medical devices
SE9904627D0 (sv) * 1999-12-16 1999-12-16 Pacesetter Ab Programming system for medical devices
WO2001052934A1 (en) 2000-01-18 2001-07-26 Medtronic, Inc. System and method of communicating between an implantable medical device and a remote computer system or health care provider
ATE527827T1 (de) 2000-01-20 2011-10-15 Starkey Lab Inc Verfahren und vorrichtung zur hörgeräteanpassung
AU2001255727A1 (en) * 2000-04-27 2001-11-07 Medtronic, Inc. Component architecture for medical device system networks
US7130701B1 (en) * 2000-05-24 2006-10-31 Schneider Automation Inc. System for remote configuration monitoring of an industrial control system
TW587929B (en) * 2000-05-31 2004-05-21 Matsushita Electric Ind Co Ltd Medical checkup network system
US7665082B2 (en) * 2000-06-30 2010-02-16 Microsoft Corporation Methods and systems for adaptation, diagnosis, optimization, and prescription technology for network-based applications
SE0002751D0 (sv) * 2000-07-21 2000-07-21 St Jude Medical Programming system for medical devices
DE10060206A1 (de) * 2000-12-04 2002-06-13 Siemens Ag Programmiergerät
US7574368B2 (en) * 2000-12-15 2009-08-11 Ric Investments, Llc System and method for upgrading a pressure generating system
US6622040B2 (en) * 2000-12-15 2003-09-16 Cardiac Pacemakers, Inc. Automatic selection of stimulation chamber for ventricular resynchronization therapy
US7181285B2 (en) * 2000-12-26 2007-02-20 Cardiac Pacemakers, Inc. Expert system and method
EP2410449A3 (de) * 2001-06-22 2013-07-17 Arkray, Inc. Informationsübertragungssystem
CA2417008A1 (en) * 2001-07-06 2003-01-16 Cochlear Limited Configuration of implanted devices
US10576275B2 (en) 2001-07-06 2020-03-03 Cochlear Limited System and method for configuring an external device using operating parameters from an implanted device
US6648823B2 (en) * 2001-07-31 2003-11-18 Medtronic, Inc. Method and system of follow-up support for a medical device
SE0102918D0 (sv) * 2001-08-30 2001-08-30 St Jude Medical Method for providing software to an implantable medical device system
US7383088B2 (en) 2001-11-07 2008-06-03 Cardiac Pacemakers, Inc. Centralized management system for programmable medical devices
US6957102B2 (en) * 2001-12-10 2005-10-18 Medtronic Emergency Response Systems, Inc. Enhanced interface for a medical device and a terminal
US8391989B2 (en) 2002-12-18 2013-03-05 Cardiac Pacemakers, Inc. Advanced patient management for defining, identifying and using predetermined health-related events
US20040122487A1 (en) 2002-12-18 2004-06-24 John Hatlestad Advanced patient management with composite parameter indices
US7468032B2 (en) 2002-12-18 2008-12-23 Cardiac Pacemakers, Inc. Advanced patient management for identifying, displaying and assisting with correlating health-related data
US7983759B2 (en) 2002-12-18 2011-07-19 Cardiac Pacemakers, Inc. Advanced patient management for reporting multiple health-related parameters
US7043305B2 (en) 2002-03-06 2006-05-09 Cardiac Pacemakers, Inc. Method and apparatus for establishing context among events and optimizing implanted medical device performance
US8043213B2 (en) 2002-12-18 2011-10-25 Cardiac Pacemakers, Inc. Advanced patient management for triaging health-related data using color codes
US20040122294A1 (en) 2002-12-18 2004-06-24 John Hatlestad Advanced patient management with environmental data
US6952612B1 (en) * 2002-04-24 2005-10-04 Pacesetter, Inc. Method and apparatus for programming a rate responsive implantable cardiac stimulation device using user specified rate response functions
US7113825B2 (en) 2002-05-03 2006-09-26 Cardiac Pacemakers, Inc. Method and apparatus for detecting acoustic oscillations in cardiac rhythm
US7110823B2 (en) * 2002-06-11 2006-09-19 Advanced Bionics Corporation RF telemetry link for establishment and maintenance of communications with an implantable device
DE10240584A1 (de) * 2002-08-28 2004-03-11 Pilz Gmbh & Co. Sicherheitssteuerung zum fehlersicheren Steuern von sicherheitskritischen Prozessen sowie Verfahren zum Aufspielen eines neuen Betriebsprogrammes auf eine solche
DE10251523A1 (de) * 2002-11-04 2004-05-19 Siemens Ag System und Verfahren zur Bereitstellung von Daten und Diensten für Geräte, sowie Gerät, welches die bereitgestellten Daten und Dienste verwendet
US7972275B2 (en) 2002-12-30 2011-07-05 Cardiac Pacemakers, Inc. Method and apparatus for monitoring of diastolic hemodynamics
US7136707B2 (en) 2003-01-21 2006-11-14 Cardiac Pacemakers, Inc. Recordable macros for pacemaker follow-up
US20040215291A1 (en) * 2003-04-24 2004-10-28 Van Bentem Maarten Programmer storage of implantable medical device settings
US20040230456A1 (en) * 2003-05-14 2004-11-18 Lozier Luke R. System for identifying candidates for ICD implantation
US8460243B2 (en) 2003-06-10 2013-06-11 Abbott Diabetes Care Inc. Glucose measuring module and insulin pump combination
US7539803B2 (en) * 2003-06-13 2009-05-26 Agere Systems Inc. Bi-directional interface for low data rate application
US7722536B2 (en) 2003-07-15 2010-05-25 Abbott Diabetes Care Inc. Glucose measuring device integrated into a holster for a personal area network device
US20050137641A1 (en) * 2003-12-08 2005-06-23 Alexandra Naughton User interface for cardiac rhythm management device programmer
JP4461878B2 (ja) 2004-03-31 2010-05-12 パナソニック株式会社 産業用ロボット
US20050251227A1 (en) * 2004-05-04 2005-11-10 Cardiac Pacemakers, Inc. Transferring software over a wireless radio frequency link onto external programmers for implantable medical devices
CA3090413C (en) 2004-06-04 2023-10-10 Abbott Diabetes Care Inc. Glucose monitoring and graphical representations in a data management system
US7167755B2 (en) 2004-10-05 2007-01-23 Cardiac Pacemakers, Inc. Adaptive software configuration for a medical device
US7979119B2 (en) * 2005-04-26 2011-07-12 Boston Scientific Neuromodulation Corporation Display graphics for use in stimulation therapies
US7922669B2 (en) 2005-06-08 2011-04-12 Cardiac Pacemakers, Inc. Ischemia detection using a heart sound sensor
US20090222064A1 (en) * 2005-07-08 2009-09-03 Advanced Bionics, Llc Autonomous Autoprogram Cochlear Implant
US8108034B2 (en) 2005-11-28 2012-01-31 Cardiac Pacemakers, Inc. Systems and methods for valvular regurgitation detection
USRE48038E1 (en) 2006-02-10 2020-06-09 Cochlear Limited Recognition of implantable medical device
US20090187426A1 (en) * 2006-05-31 2009-07-23 Kerstna Juergen Implantable medical device system and method for adapting functions of the clinician's workstation thereof
CA2601662A1 (en) 2006-09-18 2008-03-18 Matthias Mullenborn Wireless interface for programming hearing assistance devices
US20080269569A1 (en) * 2007-04-30 2008-10-30 Volker Kukla Follow-up support system for implantable medical devices
US8352038B2 (en) * 2007-10-01 2013-01-08 Medtronic, Inc. Medical device function configuration post-manufacturing
US8285386B2 (en) * 2008-02-19 2012-10-09 Codman Neuro Sciences Sárl Implant revision recognition by exchanging the revision data during transmission
US8572459B2 (en) * 2008-10-16 2013-10-29 Codman Neuro Sciences Sárl Insuring proper communication with chosen implant among multiple implants in proximity to one another
DE102008043451A1 (de) * 2008-11-04 2010-05-06 Biotronik Crm Patent Ag Modulares Universalprogrammiergerät
US20100234708A1 (en) * 2009-03-16 2010-09-16 Harvey Buck Wirelessly configurable medical device for a broadcast network system
US8600504B2 (en) 2010-07-02 2013-12-03 Cardiac Pacemakers, Inc. Physiologic demand driven pacing
US10136845B2 (en) 2011-02-28 2018-11-27 Abbott Diabetes Care Inc. Devices, systems, and methods associated with analyte monitoring devices and devices incorporating the same
US20130289657A1 (en) * 2012-04-25 2013-10-31 Cyberonics, Inc. Programmer upgrading methods, implantable medical device programmers, and articles of manufacture
WO2015047381A1 (en) 2013-09-30 2015-04-02 Advanced Bionics Ag Backup sound processor with multi-user functionality
US10105539B2 (en) 2014-12-17 2018-10-23 Cochlear Limited Configuring a stimulation unit of a hearing device
US10602284B2 (en) 2016-07-18 2020-03-24 Cochlear Limited Transducer management

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4513743A (en) * 1982-11-12 1985-04-30 Vitatron Medical B.V. Physiological devices such as pacemakers and method for providing histogram data
US4712179A (en) * 1984-08-15 1987-12-08 Cordis Corporation Method and apparatus for calibrating internal measurements of an implanted cardiac pacer
WO1986002567A1 (en) * 1984-10-23 1986-05-09 Zion Foundation Method and apparatus for delivering a prescriptive electrical signal
JPH0336328Y2 (de) * 1989-03-30 1991-08-01
US5321618A (en) * 1990-05-29 1994-06-14 Lawrence Gessman Apparatus and method for remotely monitoring implanted cardioverter defibrillators
US5161222A (en) * 1990-08-20 1992-11-03 Human Microprocessing, Inc. Software engine having an adaptable driver for interpreting variables produced by a plurality of sensors
US5456692A (en) * 1993-09-03 1995-10-10 Pacesetter, Inc. System and method for noninvasively altering the function of an implanted pacemaker
US5456691A (en) * 1993-11-12 1995-10-10 Pacesetter, Inc. Programming system having multiple program modules
EP0730882A3 (de) * 1995-03-08 1997-08-06 Telectronics Nv Verbessertes implantierbares Herzschrittmachersystem

Also Published As

Publication number Publication date
DE69702273D1 (de) 2000-07-20
EP0791373B1 (de) 2000-06-14
EP0791373A1 (de) 1997-08-27
US5800473A (en) 1998-09-01
JP4057670B2 (ja) 2008-03-05
FR2744817A1 (fr) 1997-08-14
FR2744817B1 (fr) 1998-04-03
JPH1069388A (ja) 1998-03-10

Similar Documents

Publication Publication Date Title
DE69702273T2 (de) Aktive implantierbare medische Vorrichtung und dazugehörende externe Programmiereinrichtung mit automatischer Aktualisierung von integrierter Software
DE69923384T2 (de) Programmiersystem für implantierte medizinische Geräte
DE60010420T2 (de) Automatisches Regressionstesten von Arbeitsplatz-Software
DE69230117T2 (de) Verfahren und Gerät, die es Rechnerschaltkreisen ermöglichen, mit aktualisierten Versionen von Rechnersoftware zu funktionieren
DE69023386T2 (de) Dynamisches, den Fortgang anzeigendes Ikon.
EP1382002B1 (de) Zahnidentifikation auf digitalen röntgenaufnahmen und zuordnung von informationen zu digitalen röntgenaufnahmen
DE19781804B4 (de) Vorrichtung zur Simulation einer Echtzeit-Prozesssteuerung
DE69631633T2 (de) Verbesserte graphische Schnittstelle für Programmiereinrichtungen für Herzschrittmacher
DE69717788T2 (de) Komprimierte speicherung eines patientenberichts und wiederaufbau des kompletten textes in implantierbare medizinische vorrichtungen
DE3853818T2 (de) Interaktives programmier- und diagnostiksystem zur anwendung mit einem implantierbaren herzschrittmacher.
DE4109258A1 (de) Verfahren zum umwandeln der hardwarekonfiguration einer programmierbaren verknuepfungssteuerung und des entsprechenden steuerprogramms zur verwendung bei einer zweiten programmierbaren verknuepfungssteuerung
DE68919678T2 (de) Instrument zur Erfassung und Speicherung von löschbaren Daten.
EP3396572A1 (de) Verfahren zum betrieb einer bildaufnahmeeinrichtung, bildaufnahmeeinrichtung, computerprogramm und elektronisch lesbarer datenträger
DE102005042129A1 (de) Verfahren und Vorrichtung zum automatisierten Bewerten der Qualität eines Software-Quellcodes
DE10048941A1 (de) Zeitdiagramm-Compiler und Laufzeitumgebung für die interaktive Erzeugung von ausführbaren Testprogrammen zur Logiküberprüfung
DE69121113T2 (de) Verfahren zur bestimmung von benutzerschnittstellen und programmiersystem fur einen rechner mit mehreren benutzerschnittstellen
EP3800480B1 (de) Konvertierung eines mr-messprotokolls
DE112022003325T5 (de) Schnittstelle zwischen einer herzpumpen-controller-datenbank und einem krankenhaus
DE102009033967A1 (de) Verfahren zum Programmieren einer speicherprogrammierbaren Steuerung mit resistenter Abspeicherung von Daten
EP1570346A2 (de) System zur bereitstellung eines standard-frameworks für automatisierungsgeräte
EP0708941B1 (de) Verfahren zum test eines objektorientierten programms
DE102020203951A1 (de) Verfahren zur dynamischen Datenminimierung eines Datensatzes mittels Whitelisting
DE10322684A1 (de) Verfahren zur Verarbeitung einer Versionsänderung eines medizinische Therapiehinweise umfassenden Datensatzes
EP1376339A2 (de) Anzeigesystem und Verfahren zur Anzeige von Information von wenigstens einer Überwachungseinrichtung eines Arbeitsgeräts
EP3625676B1 (de) Verfahren zur unterstützung eines anwenders bei einer erstellung einer software-applikation und computerprogramm mit einer implementation des verfahrens sowie im rahmen eines solchen verfahrens verwendbare programmierschnittstelle

Legal Events

Date Code Title Description
8364 No opposition during term of opposition