Was ein alter programmierbarer Taschenrechner auch heute noch für Dich tun kann

Dies ist der Originaltext meines Artikels für golem.de.

Einsatz des in verschiedenen alten Taschenrechnern vorhandenen ‘Lösers’ anhand der Beispiele ‘Einstellung eines Perfusors’ und ‘Zinseszinsrechnung’.

Einleitung

Auch in einer Zeit in der Computer allgegenwärtig und in nahezu jedem Gerät eingebaut sind, also auch in einem Perfusor, kommt es immer wieder vor, das einzustellende Werte von Hand berechnet werden müssen. Und im Krankenhaus tätiges Personal hat oft mehr Probleme mit dem dazu notwendigen Dreisatz, als man denken mag (insbesondere nachts um 3 Uhr nach einem langen Arbeitstag).

Hier wird ein Weg beschrieben, mit dem sich Betroffene eine interessante Lösung für dieses Problem auf ihr Smartphone bringen können. Dabei wird besonders auf individuelle Besonderheiten im jeweiligen Krankenhaus oder der Geräte Rücksicht genommen. Denn das erfordert manchmal individuelle Formeln, die in Standard Apps oder Webseiten unter Umständen nicht abgedeckt sind.

Dieser Artikel gliedert sich in 3 Teile:

  • Beschreibung des Problems

  • Beschreibung eines typischen Ablaufs der Anwendung

  • Beschreibung der Vorbereitung des Smartphones

  • Anmerkungen zur Programmierung

  • Geschichtlicher Hintergrund

Beschreibung des Problems

In einem Krankenhaus werden Perfusoren (Spritzen-Pumpen) zur Verabreichung von Medikamenten verwendet. Sie werden immer dann eingesetzt, wenn über einen längeren Zeitraum fein dosiert und kontinuierlich Medikamente direkt in die Blutbahn verabreicht werden müssen – zum Beispiel hochpotente Schmerzmittel oder Insulin. Die Zusammensetzung der in der Spritze vorhandenen Mischung kann individuell erfolgen.

In einem mir persönlich bekannten Fall ging es um die Berechnung der Laufrate.

Bei einem Schmerzpatienten auf der Palliativstation war die Umstellung des Analgetikums (Schmerzmittel) von oral auf kontinuierlich erforderlich. Hierbei hatte der Arzt schon eine bestimmte Tagesdosis avisiert. Diese sollte als kontinuierliche Gabe mittels Perfusor mit der erforderlichen Laufrate sichergestellt werden.

Nach gezieltem Nachfragen kristallisierte sich folgende Formel heraus:

  • Wobei:
Kürzel Beschreibung   Beispielwerte
TD Tagesdosis in mg Die über 24 Stunden verabreichte Menge des Medikamentes. 20 mg
GD Gesamtdosis in mg Gesamtmenge des Medikamentes in der Perfusor-Spritze. 20 mg
GV Gesamtvolumen in ml Das in der Spritze vorhandene Volumen. 50 ml
ST Stunden Die Dauer in der das Medikament kontinuierlich verabreicht wird. 24 h
LR Laufrate in ml/h Wie viel Milliliter des Medikamentes werden pro Stunde verabreicht. 2.0833 ml/h

ist.

Nun könnte ich diese Formel einfach mit einem normalen Taschenrechner bzw. einer Taschenrechner App berechnen. Schwieriger wird es aber, wenn zum Beispiel bei einer eingestellten Laufrate und einer bestimmten Zeit auf die Tagesdosis zurück gerechnet werden muss. Denn dazu müsste die Formel umgestellt werden und auch daran scheitern viele.

Beschreibung eines typischen Ablaufs der Anwendung

Eine Lösung für derart Probleme ist schon viele Jahre alt und wird interessanterweise heutzutage kaum noch verwendet. Es sind programmierbare Taschenrechner die einen sogenannten ‚Solver‘ eingebaut haben. Keine Angst, es muss kein Taschenrechner gekauft und auch nicht Programmieren gelernt werden! Einer der besten Taschenrechner vergangener Zeiten gibt es als kostenlose App für das Smartphone. Sie nennt sich Free42. Für die Beschreibung des nachfolgenden Ablaufs gehe ich von einem entsprechend vorbereiteten Smartphone aus.

Wenn ich diese App starte, erscheint eine Simulation des Taschenrechners HP-42S. Dieser besitzt einen ‚Solver‘ genannten Anwendungsmodus, der für jede Variable in einer Formel den korrekten Wert bestimmen kann, wenn alle anderen Variablen sinnvolle Werte besitzen.

Anwendung

Nachdem die Formel einmal eingegeben wurde, ist sie auf einfache Weise anwendbar. Wurde sie vorher schon einmal verwendet, so wird nach dem Aufruf der Free42 App in etwa folgende Anzeige erscheinen:

Wenn das dargestellte Menü nach dem Starten des Taschenrechners nicht sichtbar ist, muss einmalig die auf der Taste „7“ befindliche Zweitfunktion „SOLVER“ gedrückt werden. Um die Zweitfunktion der Tasten zu erreichen ist zuvor die orangene Taste zu drücken.

 
Daraufhin erscheint die folgende Darstellung:


Hier erscheint der Programmname ‚PERFU‘ mit 5 dargestellten Buchstaben. Die 6 im Display dargestellten schwarzen Rechtecke stellen Menüauswahlflächen dar und können entweder direkt ‚angetoucht‘ oder mit den Tasten darunter (vor allem beim echten Taschenrechner) ausgewählt werden. Zur Auswahl von ‚PERFU‘ muss die Taste mit dem Summenzeichen gewählt werden. Anschließend erscheint folgende Darstellung:

 

Nun können die oben in der Tabelle aufgeführten Beispielwerte, bis auf den Wert für LR, weil den wollen wir ja ausrechnen lassen, eingegeben und mit der zugehörigen Menüauswahlfläche gespeichert werden. Ein Beispiel (Beispielwerte der obenstehenden Tabelle):

  • 20 → ‚TD‘
  • 20 → ‚GD‘
  • 50 → ‚GV‘
  • 24 → ‚ST‘

Nachdem die 4 Werte eingegeben wurden, kann zur Berechnung der Laufrate einfach noch ‚LR‘ gedrückt werden.

LR‘ → 2.0833 ml/h

Nun könnte es vorkommen, dass bei veränderter Laufrate die Tagesdosis berechnet werden soll. In diesem Fall kann einfach die Laufrate geändert werden. Zum Beispiel:

10 → ‚LR‘

Und anschließend noch ‚TD‘ gedrückt werden.

TD‘ → 96 mg

Das war es auch schon. Nachdem ich das ein, zwei Mal gemacht hatte, ging für mich die wiederholte Anwendung wie von selbst vonstatten.

Achtung: Bevor Sie sich auf dieses Verfahren verlassen, prüfen Sie es an einer Beispielrechnung für die Sie die Werte kennen! Ich übernehme keinerlei Verantwortung für diesen Artikel. Er ist lediglich als Hinweis auf eine faszinierende, heutzutage vielleicht verloren gegangene, Anwendungsmöglichkeit des in manchen alten programmierbaren Taschenrechnern verborgenen ‚Lösers‘ gedacht. Für die korrekte Anwendung sind Sie selbst verantwortlich!

Beschreibung der Vorbereitung des Smartphones

Die bei der Anwendung schon erwähnte App ‚Free42‘ gibt es hier:

Es gibt sie für Android:

https://play.google.com/store/apps/details?id=com.thomasokken.free42&gl=DE

Und es gibt sie auch für das iPhone:

https://apps.apple.com/de/app/free42/id337692629

Oder auch für Windows:

https://thomasokken.com/free42/

Bleibt noch die Frage wie die Formel in den Taschenrechner kommt. Es gibt zwei verschiedene Möglichkeiten. Die Formel kann als kleines Programm direkt in den Taschenrechner eingegeben werden, oder aber, die fertigen Programme können aus dem Internet direkt heruntergeladen und in der Free42 App installiert werden. Im Nachfolgenden beschreibe ich beide Wege.

Herunterladen aus dem Internet

Nach der Eingabe von folgender URL im Smartphone Browser wird direkt das Perfusor Programm zum Download angeboten.

https://steinlaus.de/hp42s/perfuso.raw

Je nach Konfiguration des Smartphones kann es sein, das direkt nach dem Herunterladen das Programm zur Verarbeitung angeboten wird. Auf meinem Samsung S7 erschien dann in etwa folgende Meldung:

Eine Datei heruntergeladen.

Datei öffnen?

Das kann es dann schon gewesen sein. Free42 wird bei korrekt zugeordneter Dateiendung (geschieht bei der Installation von Free42) automatisch aufgerufen und importiert das Programm! Machen Sie weiter wie unter Anwendung beschrieben.

Falls nicht, genügt ein Touch auf das Display des Free42, damit sich ein ‚Main Menu‘ öffnet, in dem es einen Menüpunkt ‚Program Import & Export‘ gibt. In diesem wiederum ein Menüpunkt ‚Import Programs‘ der es erlaubt, über einen einfachen Dateiauswahlmechanismus die soeben heruntergeladene Datei in den Taschenrechner zu importieren. Dazu am besten auf das Popupmenü mit der Bezeichnung ‚files‘ touchen, direkt rechts neben dem Button ‚Home‘. Ganz oben in der Liste befindet sich ein Schrägstrich. Touche ich diesen, bekomme ich eine Liste mit Verzeichnisnamen in der auch irgendwo ‚sdcard‘ steht. Mit Touch auf ‚sdcard‘ kommt eine Liste in der ‚Download‘ zu finden ist. Ein weiterer Touch auf ‚Download‘ führt zu einer Liste in der normalerweise alle jemals heruntergeladenen Dateien, un damit auch das gesuchte Programm ‚perfuso.raw‘, zu finden sind. Ein Touch darauf kopiert den Namen in ein Feld unten auf dem Display und ein Touch auf ‚OK‘ lädt es in den Taschenrechner.

Jetzt weiter wie unter Anwendung beschrieben.

Formel direkt als Programm eingeben

Dazu besitzt der Taschenrechner einen Programmiermodus, indem er Tastendrücke aufzeichnen kann. Um diesen zu aktivieren und nach der Eingabe des Programms wieder zu deaktivieren wird die ‚PRGM‘-Funktion benötigt. Diese findet sich auf der ‚R/S‘-Taste:

 

Im Grunde geht es einfach nur darum das weiter unten angegebene Programm abzutippen. Da das aufgrund der eingeschränkten Taschenrechner Tastatur etwas ‚fummelig‘ sein kann, beschreibe ich im Folgenden die für die Eingabe relevanten Dinge.

Einige der für das Programm notwendige Funktionen benötigen Buchstaben. Die damaligen Taschenrechner kannten aber im allgemeinen keine Buchstaben und hatten auch keinen Platz auf der Tastatur dafür. Speziell der HP-42S hat so viele Funktionen, dass selbst bei einer Zweit- oder Drittbelegung der Tasten, diese nicht gereicht hätten. Darum führen viele der Zweitbelegungen der Tasten nicht zu einer einzelnen Funktion, sondern zu einem Auswahlmenü mit mehreren Ebenen, die in der unteren Zeile des Displays dargestellt werden. Hat ein Auswahlmenü mehr als eine Ebene, so können diese mit den Tasten für ‚Hoch‘ und ‚Runter‘ ausgewählt werden.

 

Die im Auswahlmenü dargestellten Funktionen können nun direkt auf dem Display ausgewählt werden. Beim echten Taschenrechner müssen zur Auswahl die vertikal direkt unter den Menüpunkten vorhandenen Tasten gedrückt werden. Diese haben ihre normale Funktionalität solange verloren, wie auf dem Display ein Auswahlmenü präsent ist. Manchmal ist es wichtig die normale Funktionalität einiger Tasten wieder zurück zu bekommen. Dann muss solange die ‚EXIT‘-Taste gedrückt werden, bis jegliches Auswahlmenü aus dem Display wieder verschwunden ist:

 

Dies ist vor allem bei der Programmeingabe wichtig, wenn ich mich vertippt habe und die richtige Position im Programm für die Korrektur auswählen möchte. Denn solange ein Menü sichtbar ist, wirken sich Tastendrücke auf die Tasten ‚Hoch‘ und ‚Runter‘ nicht auf den im Programm sichtbare Programmzeiger aus. Es ist also dann nicht möglich gezielt eine Stelle im Programm anzusteuern.

Fehlerhafte Eingabezeilen können mit der ‚Pfeil-nach-links‘-Taste gelöscht werden:

 

Neue Eingaben werden unterhalb der gerade markierten Zeile eingefügt!

Für die Eingabe von speziellen Funktionen für das unten gelistete Programm ist nur ein einziges Auswahlmenü nötig, welches sich unter der Zweitfunktion ‚PGM.FCN‘ verbirgt:

 

Dieses Auswahlmenü hat allerdings 4 Ebenen! Doch schon die erste enthält die für das Programm nötige Funktion ‚LBL‘:

Die zweite wichtige Funktion ‚MVAR‘ ist auf der 4. Ebene, die ich am schnellsten erreiche, wenn ich einmal die Taste ‚Hoch‘ drücke.

Gerade diese beiden Funktionen benötigen die Eingabe von Buchstaben als Parameter. Dazu muss in den Eingabemodus für alphanumerischen Zeichen geschaltet werden. Das geht mit der Zweitfunktion ‚ALPHA‘:

Am Ende der Eingabe einer Buchstabensequenz muss die Eingabe durch nochmaliges Drücken der Zweitfunktion ‚ALPHA‘ beendet werden. Im Programmcode stehen für das Drücken der ‚ALPHA‘-Taste jeweils doppelt Anführungszeichen. Mit diesem Wissen versehen sollte die Eingabe des Programms kein großes Problem mehr sein. Mit der Zweitfunktion ‚PRGM‘ wird in den Programmiermodus geschaltet, woraufhin folgende Anzeige erscheint:

 

Ab jetzt kann folgender Code eingegeben werden. Die erste (00) und die letzte (17) Zeile darf nicht eingegeben werden. Beginnen Sie mit der Zeile 01:

00 { 56-Byte Prgm }
01 LBL "PERFUSO"
02 MVAR "TD"
03 MVAR "GD"
04 MVAR "GV"
05 MVAR "ST"
06 MVAR "LR"
07 RCL "TD"
08 RCL "GV"
09 x
10 RCL "ST"
11 ENTER
12 RCL "GD"
13 x
14 /
15 RCL "LR"
16 -
17.END.

Nachdem der Code komplett eingegeben wurde, muss wieder die ‚PRGM‘-Funktion gedrückt werde. Jetzt ist die Formel fertig im Taschenrechner gespeichert. Um sie auszuprobieren gehen Sie wie oben unter Anwendung beschrieben vor.

Anmerkungen zur Programmierung

Hier kommen jetzt Informationen die für die eigentliche Anwendung nicht so wichtig sind, aber bei Problemen mit der Anwendung oder bei der Eingabe des Programms helfen können.

Am Anfang der Computerrevolution war Rechenleistung so teuer, dass sie sich normale Menschen nicht leisten konnten. Für viele brach diese Grenze erst mit den ersten Heimcomputern. Doch schon kurz vorher gab es für Leute, die einen immer wiederkehrenden Rechenbedarf hatten, mit der Entwicklung von programmierbaren Taschenrechnern eine zwar immer noch teure aber doch leistbare Alternative. Einer der ersten programmierbaren Taschenrechner war der 1974 erschienene HP-65. Es war eine Zeit, in der Architekten, Ingenieure oder Wissenschaftler noch sehr viel rechnen mussten. Denn zu dieser Zeit gab es noch sehr wenig spezielle Software die einem jegliche Rechnerei abnahm. Ein normaler Taschenrechner nahm diesen Leuten zwar das eigentliche Rechnen ab, aber oft mussten sie bestimmte Formeln immer wieder stupide mit unterschiedlichen Werten abarbeiten. Das war immer noch anstrengend und fehleranfällig. Die ersten programmierbaren Rechner dagegen erlaubten es eine Formel einmal einzutippen und dann immer wieder mit unterschiedlichen Werten ablaufen zu lassen. Das war damals ein immenser Vorteil!

UPN

Bei der Eingabe des Programms haben Sie sich vermutlich schwer getan das einzugebende Programm in irgendeiner Weise zu verstehen. Das dürfte bestimmt damit zu tun haben, dass die Rechenlogik dieses Taschenrechners nichts mit der normaler Taschenrechner zu tun. Die übliche Punkt-vor-Strich-Rechnung funktioniert nämlich beim DM42 nicht. Seine Eingabelogik nennt sich UPN (Umgekehrt Polnische Notation) und erwartet immer erst die Eingabe zweier Operanden, die dann durch das Drücken einer Rechenoperation miteinander verknüpft werden! Punkt-vor-Strich-Rechnung oder Klammern müssen Sie bei der Eingabe einer Formel selbst im Kopf so umformen, dass sie mit UPN berechnet werden können. Das ist im Grunde nicht weiter schwierig, hält aber dennoch zahllose Menschen davon ab, mit UPN Taschenrechnern zu arbeiten. Und umgekehrt fühlen sich viele langjährige Verwender von UPN Taschenrechnern mit anders arbeitenden Geräten äußerst unwohl.

Geschichtlicher Hintergrund

DM42

Den, der App zugrunde liegende, Original Taschenrechner HP-42S von der Firma Hewlett-Packard, gibt es schon lange nicht mehr. Produziert wurde er von 1988 – 1995. Gut erhaltene Modelle erzielen bei eBay teilweise weit über 400,- Euro. Viele Leute, die mit programmierbaren Taschenrechnern aufgewachsen sind, halten diesen Rechner für den besten Taschenrechner aller Zeiten. Das hat dazu geführt, das der Besitzer der weiter oben im Text angeführten Webseite, Thomas Okken, die komplette Funktionalität dieses Taschenrechner unter der Bezeichnung Free42 nachgebildet hat und in Form verschiedener Apps bzw. Programmen kostenlos anbietet. Das ist auch die Basis der oben beschriebenen Anwendung.

Seit ungefähr 2011 gibt es die Schweizer Firma SwissMicros, die auf echter Hardware basierende, verschiedene Taschenrechner Modelle der Firma Hewlett Packard, als Nachbildungen entwickelt hat. Dabei sticht besonders das 2017 entwickelte Modell DM42 hervor. Es ist nämlich eine Nachbildung des HP-42S, die das ursprüngliche Konzept dieses Taschenrechners sehr gut in die moderne Zeit überführt hat. Denn der DM42 hat ein sehr gutes Display mit viel mehr Möglichkeiten Informationen dazustellen, ist erheblich schneller und verfügt über ein wertiges und sehr stabiles Gehäuse.

Die softwaretechnische Basis des DM42 ist aber der von Thomas Okken entwickelte Code, der im DM42 ein ideales Zuhause findet. So ist der DM42 ein autarker Free42, der überall mit hin genommen werden kann und nur minimal Energie benötigt.

Bei der Firma SwissMicros finden Sie auch eine Kopie des Original-Handbuchs des HP-42S als PDF-Datei. Und es findet sich ein weiteres Buch, welches spezieller auf die Programmiermöglichkeiten mit dem HP-42S eingeht.

Anfangs hat SwissMicros auch kreditkartengroße Nachbildungen dieser Taschenrechner mit einer Folientastatur gebaut. Der DM15 ist ein solcher Taschenrechner und besitzt auch eine ‚Solve‘ Funktion. Allerdings verfügt er nicht über eine so elegante Menütechnik zur Eingabe der Variablenwerte. Seine Folientastatur könnte aber möglicherweise den Klinikalltag bei häufigem Desinfizieren besser überstehen.

Solver

Die sogenannten ‚Solver‘ sind spezielle kleine Programme, die damals in einige der besseren programmierbaren Taschenrechner eingebaut wurden. Die Grundidee dahinter sind Näherungsverfahren für mathematische Formeln. Der DM42 nutzt das Sekantenverfahren zur Nullstellensuche. Da programmierbare Taschenrechner schon per se in der Lage sind Formeln so zu speichern, dass sie automatisch berechnet werden können, bot es sich an, ein Programm zu entwickeln, welches eine der Variablen der Formeln automatisch mit durch das Sekantenverfahren berechneten Werte versieht, die Formel wiederholt ausführt und immer wieder prüft, wie nahe das Ergebnis an 0 heran kommt. Sobald der durch die Iteration gefundene Wert 0 ist, ist der richtige Wert für die Variable gefunden worden!

Da nur Nullstellen gefunden werden können, ist es wichtig jede zu verwendende Formel so umzustellen, dass auf einer Seite eine 0 ist.

Hochwertige programmierbare Taschenrechner eignen sich besonders gut für ‚Solver‘, da sie über eine Fülle von eingebauten mathematischen Funktionen verfügen und durch ihre Programmierbarkeit das automatische Durchführen von Berechnungen ermöglichen.

Ein sehr schönes Beispiel ist die Zinseszinsrechnung:

Wobei:

Kürzel Beschreibung Beispielwerte
AK Anfangskapital 12000 €
ZI Zinsen 5%
JA Jahre 29,25 Jahre
EK Endkapital 50000 €

Möchte ich einfach nur ausrechnen, wie viel Geld ich nach 29,25 Jahren hätte, wenn ich 12000 € bei 5% anlege, so ist das noch relativ einfach auszurechnen:

12000*1.05^29,25 = 50000

Um aber auszurechnen wie lange es dauert bis ich aus 12000 € bei 5% Zinsen 50000 € bekomme, müsste ich die Formel umstellen, was mir persönlich schon recht schwer fällt. Doch der Solver bekommt auch das durch sein Näherungsverfahren in Bruchteilen von Sekunden hin. Viel Spaß beim Ausrechnen wann Sie ihre erste Million zusammen haben. 🙂

Zinseszinsprogramm

https://steinlaus.de/hp42s/zinsen.raw

00 { 51-Byte Prgm }
01 LBL "ZINS"
02 MVAR "AK"
03 MVAR "JA"
04 MVAR "ZI"
05 MVAR "EK"
06 RCL "ZI"
07 100
08 /
09 1
10 +
11 RCL "JA"
12 Y^X
13 RCL "AK"
14 *
15 RCL "EK"
16 -
17 .END.

Kommentar hinterlassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert