MAL-Homepage Inhaltsverzeichnis



MAL Dokumentation: Biodex Dynamometer




Inhalt:

1. ALLGEMEINES
2. TERMINOLOGIE
3. EINRICHTEN UND KONFIGURIEREN
3.1. Messung und Training
3.1.1. Sequenzen
3.1.1.1. Einrichten und Konfigurieren
3.1.1.2. Tabelle der Arbeitsschritte (Kommandos)
3.1.1.3. BAM-Grenzen
3.1.1.4. Messung
3.1.1.5. Lockerung
3.1.1.6. Pause
3.1.1.7. Haltepunkt
3.2. Analyse
4. BEDIENUNG
4.1. Messen
4.2. Notstopp
4.3. Anhalten
4.4. Abbruch
4.5. Auswerten und Befunden
4.5.1. Bedeutung der Messwerte
4.5.1.1. Kurven
4.6. Training
5. PROGRAMMBESCHREIBUNG
5.1. Die Klassenhierarchie
5.2. Testroutinen
5.3. Schnittstellentransfer und Logging
5.4. RS232-Steuercodes
5.5. Verwaltung der Sequenzen
5.6. Beurteilung
5.7. Struktur der archivierten Daten


1. ALLGEMEINES

Hier werden sämtliche Routinen für den Betrieb des Biodex-System 3 Dynamometers beschrieben. Die Ansteuerung des Dynamometers und die Datenerfassung erfolgt über die serielle Schnittstelle und wurde mit der Firmwareversion FP_Ver. 1.00 - 1.03, Rev. U Deutsch getestet.

Das Programm kann aber auch so konfiguriert werden, dass die Ansteuerung des Geräts und die Messdatenerfassung mit dem original Biodex System-3 Programm durchgeführt wird und die Messergebnisse per Textfile ins Messdaten-Archiv importiert werden.

Die vorgestellten Programmteile (Messung, Training und Datenanalyse) arbeiten jeweils in Kombination mit dem
Messdaten-Archiv und können in den wenigsten Fällen ohne dieses betrieben oder getestet werden.

Neben der standardmäßig für die Messung und Analyse erforderlichen Klassen (biodex_measurement_class für die Messung und Biodex_Analyse für die Messdatenanalyse) existiert noch ein eigener Folder im Public-Pool (der Biodex-Folder) in dem die Routinen für den Betrieb des Gerätes sowie entsprechende Konfigurationsdaten untergebracht sind. Eine Liste aller zum Themenbereich gehörigen Worte ist unter Topic Biodex zu finden.

Bei jeder Messung wird in zwei Geschwindigkeiten gemessen. Um eine entsprechende Messgenauigkeit zu erreichen sind jedoch zwei Kalibriermessungen vorab durchzuführen. Zuerst eine möglichst langsame (etwa 5 Grad/s) zur Bestimmung der Schwerkraftkorrektur und eine Schnelle (etwa in der gleichen Geschwindigkeit wie die schnellere Messung) zur Bestimmung des Trägheitsmoments.

Bei Trainings können auch mehrere Teilmessungen weiter verarbeitet werden.

MAL-Homepage Inhaltsverzeichnis


2. TERMINOLOGIE





MAL-Homepage Inhaltsverzeichnis


3. EINRICHTEN UND KONFIGURIEREN

Allgemeine Einstellungen für die Kommunikation mit dem Biodex-System und die Dateistruktur können mit dem Wort
set_biodex_config vorgenommen werden.

Der Parameter Trainingsarchiv gibt den Pfad des Pools für die Archivierung der Daten für die Trainingsdokumentation an (ohne Trainingsarchiv können keine Trainings durchgeführt werden). Das Einrichten des Trainingsarchivs erfolgt mit dem Wort create_training_archive. Dabei werden zwei Datein (Die Pooldatei mit der Extension ".pl" und die Indexdatei mit der Extension ".ix") eingerichtet.

Danach folgen die Parameter für die Kommunikation über das serielle Interface.

Die Parameter Drehmomentfaktor, Winkelfaktor und Geschwindigkeitsfaktor dienen zur Umrechnung von Rohwerten auf Nm, rad und rad/s.

Will man Logfiles bei Messungen und Trainings anlegen, so muss im Parameter Logfile_Directory der Pfad einer entsprechenden Directory (mit abschließendem Slash) eingetragen werden (andernfall ein Leerstring). Die Anzahl max_Logfiles bestimmt, wie viele Logfiles angelegt werden (eines pro Messung/Training) bevor die Nummerierung wieder mit Null beginnt (alte Logfiles werden ohne Warnung überschrieben). Die Auswertung von Logfiles kann mit dem Wort analyze_logs vorgenommen werden.

MAL-Homepage Inhaltsverzeichnis


3.1. Messung und Training

Voraussetzung für das Einrichten einer Biodex-Messung ist, dass man als User im Messdaten-Archiv
eingeloggt ist. Ein Eintrag für Biodex-Messungen oder -Trainings wird mit Insert / Messung/Analyse / Force-Measurement / Biodex erstellt. Dieser kann dann markiert und mit Konfiguration entsprechend konfiguriert werden.

Beim Konfigurieren erscheint zunächst ein Menü mit folgenden Punkten:

Parameter
Dieser Menüpunkt öffnet folgende Maske:



Mit dem Parameter Archivierungsart kann zwischen "Direktmessung", "ASCII-Import" und "Training" unterschieden werden. Der Wert "Direktmessung" bewirkt, dass die Messung direkt mit MAL ohne Verwendung des Biodex System-3 Programms durchgeführt wird. Bei der Auswahl von "ASCII-Import" muss mit dem System-3 Programm gemessen werden. Die Daten müssen nach der Messung auf jeweils 4 Textdateien pro gemessener Seite (z.B. "ra.txt" "rb.txt" "rc.txt" und "rd.txt" für die rechte Seite) exportiert werden. Wird "Training" eingestellt, so landen die Messergebnisse nicht im Messdaten-Archiv sondern im Trainingsarchiv. Im Trainingsarchiv werden nicht alle Messdaten, sondern nur markante Summenwerte (Leistung, Maximalkraft ..) gespeichert. Die Auswertung der Daten erfolgt als Trainingdokumentation.

Die Parameter Input_Directory und File_Extension sind nur dann relevant, wenn als Archivierungsart "ASCII-Import" gewählt wurde. Sie bestimmen woher die Daten importiert werden sollen und welche Extentions der Dateinamen verwendet werden sollen. Die Dateinamen selbst sind fix vorgegeben. Bei Messungen von Gelenken die keiner Seite zugeordnet werden können lauten sie: "a" "b" "c" "d", wobei "a" jeweils die langsame Kalibrierung für die Schwerkraftkorrektur, "b" die schnelle Kalibrierung für die Korrkektur des Trägheitsmoments und "c" und "d" die eigentlichen Messdaten (zwei Geschwindigkeiten) enthalten. Bei lateralen Gelenken wird jeweils noch die Seite "l" oder "r" dem Dateinamen vorangestellt.

Bewegungsarten
Dieser Menüpunkt öffnet eine Tabelle in der für alle messbaren Bewegungsarten eine Kurzbezeichnung und die Grenzwerte für die automatische Beurteilung zu finden sind.

Die Kurzbezeichnung muss für jede Bewegungart eindeutig sein und dient dazu im Datensammelsystem die Messdaten verschiedener Bewegunsarten zu unterscheiden. Im Datensammelsystem erscheint z.B nicht die Bewegungsrichtung "Extension" sondern "ke/kf_Extension" (für "Knie Extension/Flexion-Extension"), damit die Messwerte bei statistischen Analysen nicht mit den Werten anderer Gelenke vermischt werden.

Die Grenzwerte für die automatische Beurteilung können über die Menüpunkte Einwärts und Auswärts eingestellt oder gelesen werden. Es ist aber auch möglich, die Grenzen mit dem Menüpunkt Grenzen berechnen automatisch gerechnen zu lassen. Voraussetzung ist, dass entsprechende Normdaten (Messdaten von Normalpersonen) im Messdaten-Archiv existieren. Normdaten werden nur dann als solche erkannt, wenn ihr Kommentar mit dem String "Normdaten " gefolgt von der Langbezeichnung der Bewegungsrichtung enthält. Bei der Erfassung von Normdaten braucht man zu diesem Zweck nur "Normdaten " vor den automatisch generierten Kommentar einfügen.

Darüber hinaus enthält jeder Eintrag noch weiter Parameter, die beim Eintragen einer neuen Bewegungsart mit dem Menüpunkt Insert eingegeben werden müssen oder mit Modify verändert werden können:



Der Parameter Linearadapter dient zur Umrechnung von Drehmomenten auf Kräfte. Bei Verwendung von Lineaeradaptern muss hier die Hebellänge in Meter angegeben werden (derzeit noch nicht implementiert). Wird kein Linearadapter verwendet, so ist der Wert Null anzugeben.

Die Parameter Vorzeichen_neutral, Vorzeichen_links und Vorzeichen_rechts sind bei Direktmessungen immer mit "-1 -1 -1" einzustellen. Bei ASCII-Import sind die Vorzeichen für Drehmoment, Winkel und Winkelgeschwindigkeit für jede Bewegungsart und Seite einzustellen. Das ist deshalb erforderlich, weil das Biodex System-3 Programm diese Messgrößen je nach Bewegungart mit unterschiedlichen Vorzeichen exportiert. Die Ermittlung der Vorzeichen muss experimentell mit Probemessungen erfolgen. Um das zu erleichtern besteht die Möglichkeit, eine Biodex-Analyse mit dem Ausgabeformat "Vorzeichenbestimmung" einzurichten. Bei der entsprechenden Probemessung muss jeweils am Anfang der Auswärtsbewegung ein kurzer Druck Richtung Auswärts auf den Aktuator ausgeführt werden. Die mit "Vorzeichenbestimmung" konfigurierte Analyse bestimmt dann automatisch die Vorzeichen.

Alterstabellen
Die Altertabellen dienen zur alters- und geschlechtsspezifischen Umrechnung der Messwerte für die automatische Beurteilung. Vor der Beurteilung von alters- und gewichtsabhänigen Messdaten (die Maximalkraft ist z.B. altersabhängig, das BAM nicht) werden diese programmintern so umgerechnet, dass sie einer virtuellen männlichen Normperson mit 25 Jahren und 100 Kg entsprechen. Für diese Umrechnung werden die Alterstabellen benötigt. Der Menüpunkt Alterstabellen ruft ein Untermenü mit den Punkten Männer, Frauen und Graphik auf. Grahik dient nur zur Anzeige der Alterskurven (gelbe Kurve Männer, rote Kurve Frauen) und Männer und Frauen zum Editieren der Tabellen.

MAL-Homepage Inhaltsverzeichnis


3.1.1. Sequenzen

3.1.1.1. Einrichten und Konfigurieren

Sequenzen beschreiben die Folgen von Arbeitschritten (Kommandos), die bei einer Messung oder einem Training abgearbeitet werden sollen.

Eine neue Sequenz wird mit dem Menüpunkt Insert in die Tabelle der Sequenzen eingetragen. Dabei ist zu beachten, dass jede Sequenz einen eindeutigen Namen haben muss, weil dieser in der Folge für die Auswahl einer Messung oder eines Trainings verwendet wird. Der Name einer Sequenz kann gegebenenfall mit Modify verändert werden.

Die Tabelle der Sequenzen wird geöffnet, indem nach erfolgtem
Login eine Biodex-Messung oder ein Biodex-Training markiert und der Menüpunkt Konfigurieren / Sequenzen gewählt wird.

Beispiel einer Sequenzen-Tabelle:



Jede Sequenz besteht aus allgemeinen Konfigurationsdaten, die die Zugehörigkeit der Sequenz zum Gelenk und der Bewegungsart beschreiben, und einer Tabelle der Arbeitsschritte. Die Konfigurationsdaten können mit dem Menüpunkt Konfiguration geöffnet werden:



Der Parameter Bewegungsart ist für die Analyse von Messungen (nicht bei Trainings) relevant und stellt die Verbindung zu den entsprechenden Grenzwerten in der Bewegungstabelle her.

Der Parameter Freigabe_bei_Notstopp definiert, ob nach Drücken der Stopptaste am Panel der Aktuator freigegeben werden soll (Wert 1) oder nicht (Wert 0). Bei leichten Adaptern empfiehlt sich der Wert 1, damit der Patient sofort aus einer unangenehmen Zwangslage befreit werden kann. Bei schweren Adaptern (z.B. Rückenadapter) kann aber das Eigengewicht des Adapters die Lage noch zusätzlich verschlechtern, wenn der Aktuator freigeschaltet wird. In diesen Fällen ist hier der Wert 0 anzugeben.

Hinweis: Beim Drücken der Stopptaste am Dynamometer (roter Pilzknopf oder roter Druckknopf am Spiralkabel) wird der Aktuator immer angehalten und dem Programm die Kontrolle entzogen. D.h. ein Freigeben des Aktuators kann in diesem Fall nur über Panelbedienung erfolgen.

Die nächsten drei Parameter bestimmen die Drehrichtung bei Auswärtsbewegung. Je nachdem, ob die Bewegungsart seitenbezogen ist oder nicht ist (z.B.: das Kniegelenk kann links oder rechts sein, der Rücken nicht), sind entweder die oberen beiden Felder oder das untere Feld relevant. Richtungen die für die entsprechende Bewegungsart nicht möglich sind müssen den Wert "nicht_möglich" erhalten. Soll die Bewegungsart bilateral möglich sein, so sind die Felder Richtung_links_auswärts und Richtung_rechts_auswärts entsprechend mit "Uhrzeigersinn" oder "Gegenuhrzeigersinn" einzustellen. Für unilaterale Bewegungsarten darf nur eines der drei Felder eine Bewegungsrichtung eingetragen haben, die anderen müssen mit "nicht_mögliche" besetzt werden.

Jede Sequenz muss getestet werden, bevor sie für Messungen oder Trainings zur Verfügung steht. Ob eine Sequenz getestet wurde (und von wem) kann man mit dem Menüpunkt Getestet? abfragen. Getestet wird mit dem Menüpunkt Testen. Der Test sollte aus Sicherheitsgründen immer ohne Proband durchgeführt werden. Bilaterale Sequenzen müssen auch bilateral getestet werden (also entweder "A .. links - rechts" oder "B rechts - links" beim Menü der Seitenauswahl angeben). Nach jeder wie immer gearteten Änderung der Sequenz muss der Test erneut durchgeführt werden.

MAL-Homepage Inhaltsverzeichnis


3.1.1.2. Tabelle der Arbeitsschritte (Kommandos)

Mit einem Doppelklick auf eine Sequenz oder mit dem Menüpunkt Browse wird die Tabelle der Arbeitsschritte einer Sequenz geöffnet. Diese Tabelle kann etwa wie folgt aussehen:



Neue Arbeitschritte können entweder mit Insert oder >Insert eingefügt werden. Insert bewirkt, dass der neue Arbeitschritt am Ende eingefügt wird. Mit >Insert wird hinter dem gerade markierten Eintrag eingefügt. Ausserdem besteht bei der Verwendung von >Insert die Möglichkeit, eine ganze Sequenz zu importieren. In jedem Fall erscheint beim Eintragen eines neuen Arbeitsschrittes ein Menü mit der Auswahl möglicher Arten von Arbeitsschritten:

MAL-Homepage Inhaltsverzeichnis


3.1.1.3. BAM-Grenzen

Der Arbeitsschritt BAM-Grenzen dient zum Neueinstellen des Bewegungsausmaßes während der Abarbeitung einer Sequenz. Normalerweise ist kein solcher Eintrag erforderlich, da jeweils beim Start einer Sequenz das Bewegungsausmaß eingestellt werden muss. Nur wenn innerhalb der Sequenz das Bewegungsausmaß geändert werden soll, ist ein derartiger Eintrag erforderlich.

MAL-Homepage Inhaltsverzeichnis


3.1.1.4. Messung

Messungen sind Arbeitsschritte bei denen Messdaten erfasst werden. Ob, und in welcher Form die Messdaten weiter verwendet werden hängt von der Konfiguration der Messung ab.



Im Feld Titel kann ein String angegeben werden, der bei der Online-Anzeige links oben im Fenster eingeblendet wird.

Der Parameter Zyklusanzahl gibt an, nach wie vielen Bewegungszyklen die Messung automatisch beendet werden soll (mit einem Mausklick auf die Online-Anzeige kann die Messung jederzeit manuell beendet werden).

Der Paramerer Arbeitsmodus kann die Werte "assistiv", "isokinetisch", "isotonisch" und "exzentrisch" annehmen.

Die nächsten 6 Parameter (Geschwindigkeit, Drehmoment, Dämpfung und Kontraktion) entsprechenden gewünschten Einstellungen des Panels. Es dürfen jeweils nur die in der Auwahlliste befindlichen Werte verwendet werden. Bei den Drehmomentgrenzen gibt es einen Wert "wählbar". Wird dieser eingestellt, so muss die Drehmomentgrenze beim Ausführen der Sequenz eingestellt werden.

Der Parameter wiederholbar kann die Wert 0 (nicht wiederholbar) und 1 (wiederholbar) annehmen. Wird 1 gewählt, so erscheint jeweils nach Ausführung der Messung ein Menü bei dem ausgewählt werden kann, ob die Messung wiederholt oder die Sequenz fortgesetzt werden soll.

Dem Parameter Datenverwendung können folgende Werte eingestellt werden:

"Schwerkraftkalibrierung" und "Trägheitskalibrierung" sind Kalibrationsmessungen. In beiden Fällen sollte der Arbeitsmodus "assistiv" gewählt werden, wobei für Schwerkraftkalibrierungen eine kleine Geschwindigkeit (ca. 5 Grad/s) und für Trägheitskalibrierungen eine hohe Geschwindigkeit (etwa die höchste in der Sequenz gemessene) gewählt werden sollte.

Die Auswahl von "Messung" bewirkt, dass die Ergebnisse nach Abschluss der Sequenz ins Messdaten-Archiv gespeichert werden. Pro Sequenz dürfen nur zwei Arbeitsschritte vorkommen, bei denen der Parameter Datenverwendung auf "Messung" eingestellt ist, damit die Datenstruktur im Messdaten-Archiv jener entspricht, die bei der Analyse erwartet wird. Die Einstellung "Messung" macht auch nur dann Sinn, wenn der Typ der Sequenz "Messung" ist (mit Modify in der Tabelle der Sequenzen einstellbar).

Die Datenverwendung "Trainingsdokumentation" darf nur bei Sequenzen vom Typ "Training" verwendet werden. Sie darf beliebig oft innerhalb einer Sequenz vorkommen und bewirkt, dass von der Messung das Maximalmoment und die Leistung gemerkt und ins Trainingsarchiv eingetragen wird.

Ein Leerstring als Datenverwendung bewirkt, dass die Daten nicht weiter verwendet werden (kann zum Beispiel für die Aufwärmphase sinnvoll sein).

Die untersten Parameter dienen für die Einstellung der Messdaten-Anzeige. Die Parameter Drehmomentbereich, Winkelbereich und Geschwindigkeitsbereich stellen den Maximalausschlag für die drei Kurven in der Online-Darstellung ein. Eine Null bewirkt, dass die entsprechende Kurve nicht erscheint. Sind alle drei Werte Null, so erscheint keine Online-Anzeige.

Beim Parameter Extremwertanzeige stehen die Werte "Moment", "Geschwindigkeit" oder Leerstring zur Auswahl. Damit kann eingestellt werden, für welche Messgröße die das Minimum und Maximum des letzten Zyklus angezeigt werden soll.

Wird bei Ergebnis_anzeigen der Wert 1 eingestellt, so erscheint nach Abschluss der Messung eine Graphik mit den Drehmoment/Winkel-Diagrammen (Mittelwert +/-Streeuung). Bei Einstellung 0 erfolgt keine Anzeige.

MAL-Homepage Inhaltsverzeichnis


3.1.1.5. Lockerung

Arbeitsschritte vom Typ "Lockerung" dienen zum Entspannen. Für die Dauer der Lockerung wird eine Uhr angezeigt. Der Aktuator wird dabei im Assistivmodus bewegt.



Der Parameter Dauer dient zum Einstellen der Dauer der Entspannungsphase in Sekunden. Nach Ablauf der Entspannung wird bei Geschwindigkeiten größer 30 Grad/s noch der aktuelle Zyklus beendet.

Der im Feld Titel angegebene String wird links oben in das Fenster mit der Uhr eingeblendet.

Die restlichen 5 Parameter entsprechen den Einstellungen am Panel. Der assistive Arbeitsmodus ist fix vorgegeben.

MAL-Homepage Inhaltsverzeichnis


3.1.1.6. Pause

Pause-Einträge in Sequenzen sind ähnlich wie Lockerungen, nur dass der Aktuator nicht bewegt wird. Die einzigen Konfigurationsparameter sind die Dauer der Pause in Sekunden und der Titel der oben in das Fenster mit der Uhr eingeblendet werden soll.

MAL-Homepage Inhaltsverzeichnis


3.1.1.7. Haltepunkt

Haltepunkte sind Einträge in die Sequenz, bei denen auf Bedieneingabe gewartet werden soll. Der Bediener kann dann die Bearbeitung der Sequenz durch Auswahl des Menüpunktes "Fortsetzen" oder durch Drücken der Enter-Taste fortsetzen. Außerdem können je nach Konfiguration des Haltepunktes die Menüpunkte "Abbruch" und/oder "Ende" erscheinen (Wert 1 .. Menüpunkt anzeigen, Wert 0 .. nicht anzeigen).

Der Menüpunkt "Ende" ist vorwiegen bei Trainingssequenzen relevant. Wird beim Ausführen einer Trainingssequenz Ende gewählt, so werden alle weiteren Schritte der Sequenz übersprungen und gegebenenfalls mit der anderen Seite fortgesetzt. Im Trainingsprotokoll erscheint dann die Bemerkung "teilweise durchgeführt".

Im Gegensatz dazu bewirkt der Menüpunkt Abbruch, dass die Sequenz mit einer Fehlermeldung abgebrochen wird und keine Ergebnisse gespeichert werden (im Trainingsprotokoll erscheint nur der Hinweis "Training abgebrochen"). Wird bei bilateralen Messungen die Sequenz beim Bearbeiten der ersten Seite abgebrochen, so wird die Messung oder das Training auf der zweiten Seite fortgesetzt.

MAL-Homepage Inhaltsverzeichnis


3.2. Analyse

Voraussetzung für das Einrichten einer Biodex-Analyse ist, dass man als User im Messdaten-Archiv
eingeloggt ist. Mit Insert und der Auswahl von "Biodex_Analyse" wird eine Biodex-Analyse eingerichtet.

In den meisten Fällen ist als Art der Datenselektion Einzelmessung erforderlich. Messungsvergleich ist nur für Analysen vom Typ "Formblatt" oder "Datensammlung" möglich und bedeutet, dass beim Start des Formblatts die Daten mehrerer Einzelmessungen gemittelt werden bzw. die Datensammlung für mehrere Messungen auf einmal angestoßen werden kann.

Zum Konfigurieren der Analyse muss diese mit einem einfachen Mausklick markiert werden und der Menüpunkt Konfiguration / Analyse ausgewählt werden. Daraufhin erscheint folgende Eingabemaske:



Ausgabeformat
Folgende Auswahlmöglichkeiten stehen für das Ausgabeformat zur Verfügung:

Befundtransfer
Jeder Befund besteht aus einer Directory die entweder den Patientennamen gefolgt von " BX" trägt, oder, wenn eine Anforderungs-Identifikation vorhanden ist, nach dieser benannt ist. Befunde werden für die Anzeige in jene Directory gespeichert, die beim Parameter Zieldirectory angegeben ist. Will man sie dauerhaft speichern (z.B. in einer Datenbank), so müssen sie nach der Anzeige kopiert oder verschoben werden. Im Parameter Befundtransfer kann eine MS-DOS-Kommandozeile eingetragen werden, die diese Aufgabe übernimmt. Dem angegebenen Kommando wird der Name der Befunddirectory als Parameter übergeben. In der Regel wird man hier eine Patch-Datei starten. Ein Leerstring im Parameter Befundtransfer bewirkt, dass keine weitere Verarbeitung gestartet wird.

Datendoku
Dieser Parameter ist nur beim Ausgabeformat "Befund" relevant. Wird hier ein Pfad auf eine HTML-Datei angegeben, so erscheint unter dem Link "Details" (rechts unten im Befund) ein Verweis mit dem Namen "Beschreibung der Messgrößen", der auf diese Datei zeigt. Ein Leerstring bewirkt, dass dieser Verweis nicht aufscheint.

MAL-Homepage Inhaltsverzeichnis


4. BEDIENUNG

Wurde das Biodex-System zuvor mit dem original Biodex System-3 Programm betrieben, muss das Dynamometer-Steuergerät aus- und wieder eingeschaltet werden bevor es über die serielle Schnittstelle von MAL aus angesteuert werden darf.

MAL-Homepage Inhaltsverzeichnis


4.1. Messen



MAL-Homepage Inhaltsverzeichnis


4.2. Notstopp

Es gibt zwei unterschiedliche Arten von Notstopp-Tasten:

  1. Der rote Pilzknopf am Dynamometer und der rote Stoppknopf am Spiralkabel halten den Aktuator an und entziehen dem Computer die Kontrolle über das Dynamometer (der Aktuator bleibt fixiert). Das MAL-Steuerprogramm meldet daraufhin einen Übertragungsfehler und wird beendet. Bereits erfasste Messdaten gehen verloren.
  2. Der Stoppknopf am Panel stoppt ebenfalls den Aktuator, überlässt dem Computerprogramm aber die Kontrolle über das Dynamometer. Das MAL-Steuerprogramm gibt, wenn der Parameter Freigabe_bei_Notstopp in der Messsequenz mit 1 gesetzt ist, den Aktuator nach einer halben Sekunde frei, um den Probanden aus einer eventuellen Zwangslage zu befreien. Die Messung wird gebenenfalls auf der kontralateralen Seite fortgesetzt. Die erfassten Messdaten jener Seite, wo mit der Stopptaste abgebrochen wurde, gehen jedoch verloren.

MAL-Homepage Inhaltsverzeichnis


4.3. Anhalten

Mit der schwarzen Anhalte/Weiterlauftaste kann die Bewegung des Aktuators vorübergehend angehalten werden. Wird bei der Ausführung von Arbeitsschritten vom Typ "Messung" oder "Lockerung" die Anhaltetaste gedrückt, so wartet das Steuerprogramm, bis die Bewegung durch ein zweites Drücken der Taste fortgesetzt wird.

Bei Messungen ist das Anhalten des Aktuators nicht empfehlenswert, weil dadurch Artefakte in den Messergebnissen entstehen. Die Zählung der Zyklen stoppt mit dem Anhalten und wird beim Weiterlauf wieder fortgesetzt.

Bei Lockerung ist das Anhalten problemlos. Wird über die Laufzeit der Lockerung hinaus der Aktuator angehalten, so setzt das Programm erst wieder mit dem Weiterlaufen (zweites Drücken der Anhalte/Weiterlauf-Taste) fort.

MAL-Homepage Inhaltsverzeichnis


4.4. Abbruch

Es gibt verschiedene Kategorien von Abbruchmöglichkeiten:

  1. Das Abbrechen der ganzen Messsequenz und gegebenenfalls fortsetzen mit der zweiten Seite kann entweder mit dem Menüpunkt Abbruch, dem Schließen eines Menüs mit [X] oder dem Drücken der Stopptaste am Panel erfolgen. Bereits erfasste Messdaten der entsprechenden Seite gehen dabei verloren.
  2. Das Abbrechen eines Arbeitsschritts (Messung oder Lockerung) und Fortsetzen der Sequenz mit dem nächsten Arbeitsschritt erfolgt, indem man mit der Maus auf das Fenster mit den Online-Messkurven bzw. der Uhr klickt. Messdaten gehen dabei nicht verloren (abgesehen von jenen Zyklen, die nicht gemacht wurden).
  3. Der Menüpunkt Ende ist beim Training relevant. Er kann bei Haltepunkten konfiguriert werden und bewirkt, dass die Sequenz zwar abgebrochen (und gegebenenfalls auf der zweiten Seite fortgesetzt) wird, aber die bisher erfassten Messdaten für die Trainingsdokumentation nicht verloren gehen. Diese Art die Sequenz zu beenden sollte verwendet werden, wenn der Proband wegen Ermüdung oder Schmerzen vorzeitig das Training beenden möchte.

MAL-Homepage Inhaltsverzeichnis


4.5. Auswerten und Befunden

Das Einrichten und Konfigurieren von Messdatenanalysen ist im Kapitel
Einrichten und Konfigurieren beschrieben. Üblicherweise werden beim Einrichten zwei Einträge für Messdatenanalysen, einer für ein Formblatt (für die Bildschirmanzeige) und einer für den Befund (für den Ausdruck), konfiguriert. Durch einen Doppeklick auf einen dieser Einträge wird die Datenanalyse gestartet. Um in den Befund relevante Bemerkungen und Trainingsempfehlungen eingeben zu können ist es erforderlich zuerst die Messergebnisse gesehen zu haben. Man wird also in der Regel zuerst das Formblatt anzeigen und studieren und danach den Befund erstellen. Am Formblatt werden links unten die Statistikdaten angezeigt. Darunter (mit dem Scrollbar erreichtbar) befinden sich die automatisch generierten Beurteilungstexte.

MAL-Homepage Inhaltsverzeichnis


4.5.1. Bedeutung der Messwerte

Die Statistik besteht aus zwei Tabellen: eine für die Auswärtsbewegung und eine für die Einwärtsbewegung. Abgesehen von den Werten Stichprobe und Totalmax werden die Werte für jeden Zyklus getrennt bestimmt. In den Spalten mit der Überschrift "Links", "Rechts" oder "Mittelwert" sind die Mittelwerte über die berechneten Zyklen zu finden und jeweils unmittelbar rechts daneben in den Spalten mit der Überschrift "Streuung" die dazugehörigen Streuungen (=Standardabweichungen).

MAL-Homepage Inhaltsverzeichnis


4.5.1.1. Kurven

Die Kraftverlaufskurven zeigen das Drehmoment in Abhängigkeit vom Winkel und werden jeweils von der ersten Teilmessung berechnet. Der Nullwinkel wird bei der Messung beim Aufruf des Menüpunktes Nullwinkel definiert. Ein steigender Winkelwert bedeutet Auswärts- und ein fallender Einwärtsbewegung.



Diese Kurve zeigt einen normalen Kraftverlauf bei der Plantarflexion des Sprunggelenks.

Die Ermüdungskurven zeigen die durchschnittliche Leistung bei jeder Wiederholung (bei jedem Zyklus), wobei mit einem Moving-Average über jeweils 5 Samples geglättet wird.

MAL-Homepage Inhaltsverzeichnis


4.6. Training

Ebenso wie bei Messungen gilt, dass man für das Training mit dem Biodex-System zuvor als Benutzer in das
Messdaten-Archiv eingeloggen muss. Ausserdem muss ein entsprechender Trainingseintrag in der Benutzertabelle eingerichtet sein.

Durch einen Doppelklick auf den Trainingseintrag wird die Personentabelle geöffnet. Personen, denen beim Befund eine Trainingsempfehlung gegeben wurde, erscheinen automatisch in der Personentabelle des Trainings. Man kann aber auch mit dem Menüpunkt Insert beliebige sonstige Personen eintragen bzw. Daten von bereits eingetragenen Personen mit Modify verändern. Die Menüpunkte - unaktuell, + aktuell, Aktuelle dienen dazu, die Liste der angezeigten Probanden auf aktuelle Einträge zu beschränken. Mit + aktuell wird ein Proband als aktuell markiert und mit - unaktuell als nicht aktuell. Bei der Auswahl von Aktuell werden nur die aktuellen Probanden angezeigt. Um wieder die komplette Liste anzuzeigen genügt es, den Menüpunkt Find aufzurufen und die Suchmaske unverändert mit der Enter-Taste einzugeben.

Durch einen Doppelklich auf einen Personeneintrag oder durch Auswahl des Menüpunktes Empfehlungen wird die Tabelle der Trainingsempfehlungen geöffnet. Diese ist bei neu eingerichteten Personen zunächst leer. Mit dem Menüpunkt Insert kann ein Trainingsprogramm in die Liste eingefügt werden. Zur Auswahl stehen dabei alle getesteten Trainingseinträge der Sequenztabelle . Mit einem Doppelklick auf einen Eintrag wird das Training gestartet.

Die Tabelle der Empfehlungen kann zum Beispiel so aussehen:



Die Menüpunkte haben folgende Funktion:

Trainingsdokumentation: Die Trainingsdokumentation wird angezeigt, indem man einen Eintrag in der Personentabelle des Trainings markiert und den Menüpunkt Trainingsdoku auswählt Daraufhin erscheint ein Menü zur Auswahl zwischen Volltext und Kurztext. Kurztext zeigt für jedes Training eine Zeile an, während Langtext ein detailiertes Protokoll jedes Training ausgibt.



MAL-Homepage Inhaltsverzeichnis


5. PROGRAMMBESCHREIBUNG

Wegen der besonders aufwändigen Codes für die Steuerung des Biodex-Gerätes wurde ein eigener Biodex-Folder im Public-Pool eingerichtet in dem der Hauptanteil des Programmcodes zu finden ist. Die Gesamtheit des Codes zum Thema Biodex ist also auf drei Orte verteilt:

  1. In der Klasse biodex_measurement_class (im Vetmed-Folder) ist die Konfiguration und Durchführung der Messung sowie die Archivierung der Messdaten realisiert.
  2. In der Klasse Biodex_Analyse (im Vetmed-Analysen-Folder) ist die Berechnung der Befunde und Formblätter programmiert.
  3. Im Biodex-Folder sind sämtliche Routinen für die Ansteuerung des Geräts über die serielle Schnittstelle, die Klassen für die Zusammenstellung der Sequenzen, die Verwaltung der Sequenzen, Bewegungsarten und Trainings sowie die Verwaltung und Analyse der Logfiles zu finden.
Sämtliche Worte die das Biodex-System betreffen sind unter Topic biodex zu finden.

MAL-Homepage Inhaltsverzeichnis


5.1. Die Klassenhierarchie

Die Klassen für die Beschreibung von Sequenzen sind im Biodex-Folder zu finden. Die Klasse
biodex_command_class ist die Superklasse aller Kommandos (=Arbeitschritte) die in Sequenzen vorkommen können. Ihr Konstruktor (create_biodex_command) startet ein Auswahlmenue mit dem bestimmt werden kann, von welcher abgeleiteten Klasse eine Instanz erzeugt werden soll (von der Superklasse wird nur für Einträge ins Logfile eine Instanz benötigt).

Die von der Klasse biodex_command_class direkt abgeleiteten Klassen sind:



Die Funktionen dieser Klassen sind im Wesentlichen alle ident:

MAL-Homepage Inhaltsverzeichnis


5.2. Testroutinen

Die Worte
analyze_portmon und test_biodex_interface wurden für die Entwicklung und Inbetriebnahme implementiert. Sie dienen dazu das Schnittstellenprotokoll für die serielle Schnittstelle zu analysieren und zu testen.

analyze_portmon analysiert die Logfiles vom Programm Portmon. Portmon ist ein Programm zum Loggen des Schnittstellentransfers über die serielle Schnittstelle. Das Wort analyze_portmon ist so ausgelegt, dass es die Dateiformate von Portmon unter Windows 98 lesen kann, wenn die Ausgabe von Portmon auf Hexaformat eingestellt ist. Mit dem Menüpunkt Gruppenanalyse wird eine Liste aller unterschiedlichen Kommandos, die an das Gerät ausgegeben wurden erstellt. In der ersten Spalte erscheint, wie oft das Kommando wiederholt wurde. Man hat die Option, die Daten zu speichern (wird im Wort 'old_writes' gespeichert), damit in der Folge mit dem Menüpunkt Differenzen festgestellt werden kann, welche Kommandos neu dazugekommen sind. Mit dem Menüpunkt Suchfilter können Kommandos mit bestimmten Zeichenfolgen gesucht werden.

Das Wort test_biodex_interface dient zum Senden von Testcodes an das Biodex-Gerät. Es öffnet ein Menü zum Starten verschieden Testroutinen, die jeweils ad hoc angepasst werden. Allgemein verwendbar ist der Menüpunkt Interaktiv. Mit ihm kann ein String im Hexaformat (jeweils zwei Zeichen in Großbuchstaben durch Blank getrennt) auf die Schnittstelle ausgebeben werden.

MAL-Homepage Inhaltsverzeichnis


5.3. Schnittstellentransfer und Logging

Voraussetzung für den Datentransfer über die serielle Schnittstelle ist, dass diese mit dem Wort
open_port geöffnet wird. Der File-Handle für die serielle Schnittstelle wird MAL-intern geführt und bleibt so lange geöffnet, bis er entweder explizit mit dem Wort close_serial_port oder durch Beenden des MAL-Interpreters geschlossen wird. Das Öffnen und Schließen der seriellen Schnittstelle erfolgt in der Funktion start der Klasse biodex_sequence_class im Wort sequenz_starten.

Sämtliche Ausgaben an die serielle Schnittstelle werden über das Wort zeile_ausgeben abgewickelt. Dieses besorgt auch das Speichern der Logdaten. Die Logdaten werden jeweils in den Kommandoklassen in einer Variablen mit dem Namen logdata geführt. Diese Variable ist ein Verbund von Strings und wird normalerweise vom Konstruktor der Klasse mit einer Überschrift vorbesetzt. zeile_ausgeben prüft, ob eine Variable mit dem Namen "logdata" existiert und hängt gegebenenfalls die neu ausgegebene Zeile an den bestehenden Verbund an.

Jede Kommandoklasse muss selbst dafür sorgen, dass die Logdaten zum Abschluss in das Logfile geschrieben werden. Zu diesem Zweck existiert das Wort logging?. Dieses überprüft, ob es von einer Klasse aus aufgerufen wird (indem es das Wort this> im Vokabular sucht) und schreibt die Instanz gegebenfalls in das Logfile. Das heißt: im Logfile steht jeweils die komplette Instanz der Kommandoklasse. Die Berechnung des Logtextes erfolgt erst bei der Analyse des Logfiles mit dem Wort analyze_logs, das direkt auf die Variable logdata in den Instanzen zugreift.

Einträge in das Logfile, die keiner Kommandoklasse zugeordnet werden können (zum Beispiel der Header und Footer, siehe Wort biodex_messung) werden mit dem Wort >logfile erzeugt. Dieses Wort erzeugt eine Instanz der Superklasse der Kommandoklassen (biodex_command_class) schreibt den Text in deren Variable logdata und fügt die Instanz der Logdatei an.

Im Falle eines Interface-Timeouts oder sonstiger Fehler bei der Datenübertragung wird das Wort on_serial_port_error aufgerufen, das eine eventuell offene Instanz einer Kommandoklasse ins Logfile schreibt und seinerseits einen Eintrag mit der Beschreibung der Fehlerursache im Logfile macht. Der Name dieses Wortes ist vom MAL-Interpreter fix als Callback bei Fehlern am seriellen Interface vorprogrammiert.

MAL-Homepage Inhaltsverzeichnis


5.4. RS232-Steuercodes

Für die Einstellung der Dynamometer-Parameter existieren jeweils Variable mit der entsprechenden Bezeichnung, die einen Verbund von Strings enthalten. Jeder String besitzt einen Namen und enthält einen Hexa-Code. Der Name bezeichnet den Wert für den Parameter (z.B. "60 Nm" für eine Drehmomentgrenze) und der Hexa-Code kann mit dem Wort
zeile_ausgeben ans Gerät gesandt werden, um den Parameter einzustellen.

Folgende Variable sind auf diese Weise definiert:



Diese Variablen besitzen im Environment jeweils einen Code, der die ganze Liste der Möglichkeiten durchtestet. Aus Sicherheitsgründen ist es unbedingt erforderlich, nach jeglichen Änderungen diesen Test komplett durchzuführen. Entscheidend ist dabei, dass der Name des Werts dem tatsächlich mit dem Hexa-Code eingestellten Wert entspricht. Wenn z.B eine Geschwindigkeit den Namen "20 Grad/s" hat, aber 200 Grad/s einstellt, so kann das zu Verletzungen des Probanden führen!

Das Wort biodex_status> fragt die Zustände "angehalten", "computerkontrolle", "startmodus" und "notstopp" ab. Es übergibt einen Verbund mit entsprechenden Flags.

Das Wort inaktiv_schalten wird zum Freischalten des Aktuators (z.B. nach Drücken der Stopptaste am Panel) verwendet. Dabei werden die BAM-Grenzen gelöscht und somit verhindert, dass das Programm versehentlich den Aktuator wieder ansteuert.



MAL-Homepage Inhaltsverzeichnis


5.5. Verwaltung der Sequenzen

Die Konfigurationsdaten der Sequenzen sind in der Tabelle
sequences_table gespeichert, wobei jede Sequenz eine Instanz der Klasse biodex_sequence_class ist. Die Memberfunctions diese Klasse dienen zum Konfigurieren und Starten der Sequenz sowie für Statusabfragen.

Das Blättern in der Tabelle der Sequenzen erfolgt mit dem Wort browse_sequences, wobei manche Menüpunkte aus Wartungsgründen in eigene Worte ausgelagert sind. browse_sequence ist der Menüpunkt zum Blättern in einer Sequenz, config_sequence dient zum Konfigurieren und test_sequence zum Testen der Sequenz.

Die Messung ist aber kein Menüpunkt von browse_sequences, sondern wird von dem Wort biodex_messung durchgeführt, das in der Klasse biodex_measurement_class in der Funktion archivation vom Wort Direktmessung aufgerufen wird. Es definiert u.a. eine Variable messinstanzen, die mit einem Leerverbund vorbesetzt wird. Diese dient dazu, die gemessenen Instanzen zu sammeln. Das erfolgt im Wort Datenverwendung der Klasse biodex_cycles_class (Funktion start).

MAL-Homepage Inhaltsverzeichnis


5.6. Beurteilung

Das Wort beurteilung in der Funktion start_selected der Klasse
Biodex_Analyse generiert die Beurteilungstexte im HTML-Format für den Befund und das Formblatt. Für jeden zu beurteilenden Wert aus den Statistikdaten (Variable statistikdaten) wird zu diesem Zweck eine Instanz der Klasse biodex_assessment_class eingerichtet. Diese Klasse ist von der Klasse assessment_class abgeleitet und unterscheidet sich von dieser nur durch Vorbesetzungen im Konstruktor (für die Texte "bewegungsrichtung" und "gegenrichtung" sind fixe Replacements voreingestellt, damit diese nicht jedesmal explizit angegeben werden müssen).

Die für die Beurteilung erforderlichen Grenzwerte werden für die spezifische Bewegungsart aus der Bewegungstabelle (Variable motion_table) gelesen und mit der zuvor berechneten Variable personenfaktor multipliziert. Der Personenfaktor berücksichtigt das Alter, das Geschlecht und das Gewicht des Probanden. In der Bewegungsliste sind die Grenzwerte für eine virtuelle männliche Normperson mit 25 Jahren und 100 Kg Gewicht angegeben. Die Berechnung des Personenfaktors erfolgt mit dem Wort leistungsfaktor_bestimmen.

Die alters- und geschlechtsspezifische Umrechnung erfolgt auf Basis der beiden Tabellen alterstabelle_maenner und alterstabelle_frauen, die mit dem Wort edit_alterstabellen editiert und graphisch dargestellt werden können.

Die Berechnung der in der Bewegungstabelle gespeicherten Grenzwerte erfolgt mit dem lokal in browse_motions definierten Wort grenzen_berechnen. Die Werte werden dabei so umgerechnet, dass sie der virtuellen männlichen Normperson mit 25 Jahren und 100 Kg entsprechen.

MAL-Homepage Inhaltsverzeichnis


5.7. Struktur der archivierten Daten

Sowohl die Datenarchivierung als auch die Datenanalyse sind so ausgelegt, dass pro Messung zwei Geschwindigkeiten erfasst werden. Nun muss aber pro Geschwindigkeit eine eigene Messinstanz angelegt werden. Das bedeutet, dass bei unilateralen Messungen immer zwei und bei bilateralen Messungen immer 4 Messinstanzen im
Messdaten-Archiv gespeichert werden. Dieses Verhalten kann nicht konfiguriert werden sondern ist in den Klassen biodex_measurement_class und Biodex_Analyse fix ausprogrammiert.

Die Messinstanzen sind jeweils Instanzen der Klasse biodex_measurement_class. Mit der Funktion analog> werden die Messwerte moment, angle und speed berechnet.

MAL-Homepage Inhaltsverzeichnis