DEVICE FOR INDICATING THE PARAMETERS OF A DIVE

Abstract: The device is based on at least one memory containing the decompression parameters of a table of diving depth and times. It estimates and compares measured values of diving depth and times with those contained in the memory. At each moment of the diving, the total climbing time (15) including the imposed decompression stages (16) depending on the duration (13) and on the depth (14) of the diving may be displaced, and/or there is provided a device which transforms, for going to a new depth, the real base time in a time equivalent to this new stage. A single air/water interchangeable pressure sensor is used comprising preferably a piezoresistive cell. LED diodes are lit, if the maximum climbing speed is exceeded (10), if a decompression stage is reached (11) and if the device is out of work (12) by exceeding the time and/or the depth.

Description: Die Erfindung bezieht sich auf eine Anzeigeeinrichtung für die Parameter eines Tauchganges, wie z.B. aktuelle Tiefe, maximal getauchte Tiefe, bisherige Tauchzeit o. dgl., welche Anzeigeeinrichtung über a) wenigstens einen Speicher für die Dekompressions parameter bei einer Reihe von Tauchtiefen und -zeiten, und b) eine Auswerte- und Verknüpfungsstufe für die gemessenen Werte des Tiefen- und des Zeitmessers mit den im Spei cher gespeicherten Werten angesteuert ist. Beim Tauchen mit komprimierter Luft wird durch das Tauchgerät (Lungenautomat) ein Druckgleichgewicht erzeugt. Das heisst, die Luft, die der Taucher einatmet, steht unter dem gleichen Druck, wie das ihn umgebende Wasser. Mit zunehmender Wassertiefe atmet der Taucher Luft unter höherem Druck ein, was bewirkt, dass sich im Körper des Tauchers mehr Luft löst. Die verschiedenen Gase, aus denen sich die Luft zusammensetzt, reichern die verschiedenen Gewebe des menschlichen Körpers nach bestimmten Sättigungsfaktoren verschieden stark an. Beim Auftauchen geschieht das Entgegengesetzte, die Gewebe entsättigen sich. Nimmt nun der Umgebensdruck infolge zu schnellen Auftauchens zu rapide ab, so kann die im Blut und den Geweben gelöste Luft nicht genügend schnell abgeatmet werden. Im besonderen ist das der gelöste Stickstoff, da der Ueberschuss an Sauerstoff und Kohlendioxid wesentlich geringer ist. Das kommt daher, weil der Sauerstoff zu einem grossen Teil von den Geweben verbraucht wird und das Kohlendioxyd wegen seiner grossen Diffusionsgeschwindigkeit den Organismus schneller verlässt als andere Gase. Wenn der Stickstoff bei zu schneller Druckabnahme im Ueberschuss anfällt, kann er blasenbildend aus seiner Lösung ausperlen. Das führt zu Dekompressionskrankheiten, die vermieden werden können, wenn dem Stickstoff erlaubt wird, sich so langsam aus dem Blut und den Geweben zu entbinden, dass es nicht zur Gasblasenbildung kommt. Der krankmachende Faktor der Gasblasenbildung besteht darin, dass die Stickstoffgasblasen in den Geweben Schädigungen hervorrufen, dass sie in den Blutgefässen auftreten und in deren Endverzweigungen, den Kapillaren, steckenbleiben. Hier verhindern sie die Blut- und Sauerstoffversorgung des umgebenden Gewebes. Wenn dieser Zustand der Verstopfung eines Blutgefässes (Embolie) anhält, so können die betroffenen Gebiete nicht mehr ernährt werden und gehen zugrunde. Um Dekompressionskrankheiten zu vermeiden, darf der Taucher nicht schneller als mit 10 m/min auftauchen, und muss nach Ueberschreiten der sog. Nullzeit beim Auftauchen Pausen (Dekompressionshalte) einlegen. Die Dauer und Tiefe der Dekompressionshalte hängt von der Gewebesättigung des Tauchers ab. Die Gewebesättigung ihrerseits wird von verschiedenen Faktoren beeinflusst. Ohne Begründung und ohne Anspruch auf Vollständigkeit seien hier einige der wichtigsten Punkte aufgeführt. - Maximale Tauchtiefe - Tauchzeit - Verlauf des Tauchganges - Luftdruck an der Wasseroberfläche (Höhe des Tauchortes über dem Meer) - Dauer des Aufenthaltes vor dem Tauchgang am Tauchort - Vorausgegangene Tauchgänge innerhalb 12 Std. - Körperliche Anstrengung unter Wasser - Individuelle Gewebezusammensetzung des Tauchers (fettleibig oder athletischer Körperbau) - Zusammensetzung des Atemgases. Solange der Taucher ohne die Gefahr einer Dekompressionskrankheit jederzeit an die Oberfläche zurückkehren kann, befindet er sich am Nullzeittauchen. Unter der Nullzeit versteht man die Zeit, die ein Taucher auf einer bestimmten Tiefe bleiben kann, so dass er beim Auftauchen keine Dekompressionshalte einlegen muss. Aus Sicherheitsgründen empfiehlt das Druckkammerlabor der Universität Zürich trotzdem für jeden Tauchgang einen Mindest Stop von 3 min auf 3 m Tiefe einzuhalten. Jeder Taucher muss die Auftauchbedingungen kennen, um ohne Dekompressionsunfall auftauchen zu können. Es sind dies die Auftauchgeschwindigkeit und die Dekompressionspausen, welche der Taucher während des Aufstiegs einzuhalten hat. Die Dekompressionspausen sind von der Dauer und der Tauchtiefe des Tauchganges abhängig und müssen auf bestimmten Tiefen verbracht werden. Heutzutage bestimmt der Taucher die Auftauchbedingungen von Hand, mit der Taucheruhr, dem Tiefenmesser und der Tauchtabelle. Die Bestimmung der Dekompressionspausen in der Tauchtabelle ist recht einfach, aber ebenso ungenau in Bezug auf die optimale Dekompression, weil eine einfache Tabellenhandhabung nur mit dem Verlust einer exakten Tauchgangerfassung erkauft werden kann. Um die optimale Dekompression für jeglichen Tauchgang zu erhalten, müssen der Tauchgang exakt erfasst und die dementsprechenden Dekompressionsbedingungen berechnet werden. Diese Arbeit kann ein Taucher natürlich unmöglich selbst durchführen, weil er dazu eine grosse Anzahl von Daten festhalten und durch komplizierte Umrechnungen auswerten müsste. Deshalb verwenden Sport- und Berufstaucher heute Tabellen, aus denen sie die Dekompressionsbedingungen herauslesen. Solche anerkannte Tabellen sind z.B. die der - Group d'Etudes et de Recherches Sous-marine (Frankreich) - Royal Navy (England) - U.S. Navy (USA) - Druckkammerlabor der Universität Zürich. Diese Tabellen beruhen auf Versuchen mit Menschen und auf Berechnungen, bei denen eine endliche Anzahl von Geweben mit unterschiedlichen Sättigungsfaktoren auf einem Grossrechner simuliert wurden. Die Anforderungen des Tauchers an die Tabelle sind: Einfache Handhabung Dekompressionsbedingungen für jeglichen Tauchgang mit gerade notwendiger Sicherheit Diese beiden Anforderungen stehen in einem Zielkonflikt, weil eine einfache Tabellenhandhabung wenig Tabelleneingangswerte fordert, aber wenige Eingangswerte eine exakte Erfassung des Tauchganges verunmöglichen. Somit ist es ausgeschlossen, die gerade notwendigen Dekompressionsbedingungen für jeglichen Tauchgang zu bestimmen. Es basieren deshalb alle Tabellen auf dem Kompromiss, dass die wenigen Tabelleneingangswerte zu Lasten der maximalen Dekompressionszeit gehen und der Taucher nur im Extremfall an die gerade notwendige Dekompression herankommt. In allen anderen Fällen dekomprimitiert der Taucher viel zu lange. Das heisst, die meisten heute erhältlichen Tabellen sind für einen geradlinigen Abstieg (ca. 30m / min), einen Aufenthalt in einer bestimmten Tiefe und für einen direkten Aufstieg berechnet. Damit können die Dekompressionsbedingungen mittels der maximalen Tauchtiefe und der Gesamttauchzeit (Zeit vom Beginn des Abtauchens bis zum Beginn des Auftauchens) aus der Tabelle herausgelesen werden. Vergleicht man aber verschiedene Tabellen miteinander, so stellt man fest, dass für die gleiche Gesamttauchzeit und gleiche maximale Tauchtiefe beträchtliche Unterschiede bezüglich der Dekompressionsbedingungen auftreten. Dies kommt daher: - weil die meisten Tabellen für Tauchen auf Meereshöhe aus gelegt sind und das Tauchen in Bergseen nur sehr um ständlich, von wetterbedingten Luftdruckschwankungen ganz abgesehen, berücksichtigt wird; - weil Tauchgänge, die einem Tauchgang vorausgingen, bei vielen Tabellen gar nicht, bei anderen nur sehr umständ lich berücksichtigt werden können; - weil die Dekompressionsbedingungen von der Dauer des Aufenthaltes am Tauchplatz und der Höhe des Tauchplatzes über dem Meer abhängen, und dies nicht in allen Tabellen berücksichtigt ist; - weil nur sehr wenige Tabellen einen Höhenbereich berück sichtigen, für den die Dekompressionsbedingungen gültig sind; - weil den verschiedenen Tabellenwerken ein mehr oder weniger grosser Sicherheitsfaktor beaufschlagt wurde. Die Tabellen 1 bis 4 für O - 700 m über Meer, sowie 5 bis 8 für 701 - 1500 m über Meer finden sich am Ende der Beschreibung. Die Hauptunterschiede der Tabellen des Druckkammerlabors der Universität Zürich gegenüber allen anderen Tabellen sind: 1. Die Tabellen des Druckkammerlabors sind einzigartig in der Berücksichtigung eines Arbeitsfaktors, d.h. diese Tabellen sind so ausgelegt, dass ein Taucher, der unter Wasser eine körperliche Arbeit verrichtet, ohne Gefahr eines Dekompressionsunfalles nach ihnen dekomprimieren kann. 2. Die Tabellen des Druckkammerlabors gehören zu den we nigen Ausnahmen, die nicht für eine fiktive Höhe über Meer, sondern für einen Höhenbereich über Meer ausgelegt sind. Da die Tabellen einerseits umständlich sind, andererseits eine grosse Anzahl von Messdaten voraussetzen, wurden für den Taucher die verschiedensten Geräte und Hilfsmittel entwickelt. Ausser unterschiedlichen Arten von Tiefenmessern und Taucheruhren handelt es sich dabei beispielsweise um ein Dekompressionsmeter, welches Gerät die Gassättigung des Körpers dadurch nachahmt, dass Gas aus einem flexiblen Beutel durch ein Stück Sinterkeramik in einen starrwandigen Raum gedrückt wird. Ein daran angeschlossenes Manometer zeigt den Druck in diesem Raum an. Je länger und je tiefer damit getaucht wird, desto höher steigt der Druck hinter dem Sinterkörper. Das Manometer gibt dem Taucher somit angenähert Auskunft über die fortschreitende Sättigung seines Körpergewebes. Da die heute erhältlichen Dekompressions-Messinstrumente die Sättigung des menschlichen Körpergewebes nur sehr ungenau wiedergeben können, darf dieses Instrument nie allein zur Bestimmung der Dekompression benützt werden. Diese muss zur Zeit unbedingt anhand weiterer Faktoren - wie Tauchtiefe und Tauchdauer - mittels einer Dekompressionstabelle vor jedem Tauchgang ermittelt werden. Das "Dekometer" kann daher bestenfalls zur Kontrolle mitgeführt werden. Der Grund hiefür liegt darin, dass Dekompressionsmeter nach dem Gesetz von Boyle-Mariotte arbeiten und den Einfluss des Stickstoffs unter erhöhtem Druck auf den menschlichen Körper nur simulieren können. Dekompressionsmeter können darum nie genau arbeiten, weil die Gasdiffusion durch den Sinterfilter in beiden Richtungen gleich schnell erfolgt. Im menschlichen Körper liegen aber (vor allem bei Kurztauchgängen) nie gleichmässige Verhältnisse vor. Ein Dekompressionsmeter ist kein Garant für die Verhinderung eines Dekompressionsunfalles. Ein anderes gebräuchliches Messgerät ist der sog. Bottom Timer. Der Bottom-Timer ist ein automatisches Tauchzeit Messgerät. Er ist druckgesteuert und schaltet sich somit selbständig beim Erreichen einer geeichten Tiefe ein. Ebenso schaltet sich der Bottom-Timer kurz vor Erreichen der Wasseroberfläche wieder aus. Es handelt sich dabei um nichts anderes als eine wasserdichte "Stoppuhr", welche sich selber durch einen einfachen Mechanismus - druckgesteuert - ein- und ausschaltet. Der Bottom-Timer vermittelt dem Taucher die effektive Tauchzeit. Diese Tauchzeit kann jedoch auch auf einer normalen Taucheruhr (mittels Stellring einstellbar) abgelesen werden. Tauchzeit und Tauchtiefe sind zwar wesentliche, nicht aber die einzigen Faktoren zur Ermittlung der Dekompression. Dagegen könnte ein Tauchcomputer alle Daten genau erfassen und entsprechend auswerten. Ideal wäre es, wenn der Tauchcomputer einen Taucher, zusammengesetzt aus einer endlichen Anzahl Standardgeweben, simuliert. Dabei würde der Sättigungsgrad der einzelnen Gewebe, als Funktion der Tiefe und des Sättigungsfaktors des betreffenden Gewebes, über die Zeit aufintegriert. Durch kontinuierliches Vergleichen des kritischen Sättigungsgrades mit dem gerade erreichten Sättigungsgrad der einzelnen Gewebe könnten die Dekompressionsbedingungen bestimmt werden. Nun ist bereits ein Vorschlag für ein ideales Dekompressionsmeter in Analogtechnik mit Hilfe von RC-Gliedern zur Simulierung der Sättigungsgrade der einzelnen Gewebe vorgeschlagen worden. Dabei ergeben sich aber einerseits insoferne Probleme, als sich der Sättigungsgrad nicht in die äquivalenten Dekompressionsbedingungen umrechnen lässt, anderseits liesse sich der Vorgang des Sättigens und Entsättigens der Gewebe nur bedingt durch RC-Glieder realisieren, weil die verschiedenen Gewebe Stickstoff-Halbwertszeiten von 5 - 635 min aufweisen. Das verlangt nach enorm grossen Zeitkonstanten der RC-Glieder (bis zu 635 min), was zu grössten Problemen bezüglich Dimensionierung der RC-Glieder führt. Ueberdies wäre die vorgeschlagene Analogverarbeitung für die Praxis viel zu ungenau. Deshalb ist es auch nie zu einer Verwirklichung dieses Vorschlages gekommen. Zwar sind bereits verschiedene Tauchcomputer im Handel erhältlich, doch ergab sich dadurch deshalb kaum ein Fortschritt, weil bisherige Tauchcomputer nichts weiter als eine Digitalisierung aller bisher bekannten Instrumente (wie Tiefenmesser, Bottom-Timer, Dekompressionsmeter) zustande brachten. Vor allem hängt allen bekannten Geräten der Nachteil an, dass sie als Parameter zur Ermittlung der Dekompressionsbedingungen nur die maximal erreichte Tauchtiefe und die Gesamttauchzeit berücksichtigen. Dies bedeutet, dass nach der Anzeige dieser Geräte ein Taucher die gleichen Dekompressionsbedingungen einhalten muss, egal ob er die meiste Zeit in geringen Tiefen, vielleicht sogar in einer Nullzeittiefe, verbracht hat und nur kurz die maximale Tauchtiefe erreichte, oder ob er die gesamte Tauchzeit in der maximalen Tiefe verbrachte. Die Folge dieser ungenauen Anzeige ist, dass Taucher auf Grund der tatsächlichen Zeiten und Tiefen von den ange zeigten Dekompressionsbedingungen Abstriche vornehmen, die sie selbst wieder nur abschätzen und so in Gefahr geraten. Der Erfindung liegt die Aufgabe zugrunde, eine genauere Anzeige der Dekompressionsbedingungen auf Grund der tatsächlichen Tauchzeiten und -tiefen zu ermöglichen. Dies gelingt erfindungsgemäss dadurch, dass in jedem Zeitpunkt des Tauchganges die in Abhängigkeit von den durchtauchten Tiefen und Zeiten erforderliche Gesamtauftauchzeit inklusive der vorgeschriebenen Dekompressionshalte anzeigbar ist und/oder eine Wandlereinrichtung für die jeweils aktuelle Grundzeit beim Eintritt in eine neue Tauchtiefenstufe, in die dieser neuen Tauchtiefenstufe äquivalente Grundzeit vorgesehen ist. Um die Genauigkeit der erfindungsgemässen Anzeigeeinrichtung noch weiter zu erhöhen, ist gemäss einer Weiterbildung vorgesehen, dass mit Hilfe der Wandlereinrichtung auch der - vorzugsweise jeweils mit Hilfe eines Messgerätes gemessene - Luftdruck berücksichtigbar ist. Dadurch kann auch der tatsächlich am Tauchort vorhandene Luftdruck berücksichtigt werden, der nicht nur von der Meereshöhe, sondern auch von den Wetterumständen abhängt. Bisher war es lediglich möglich, je nach Meereshöhe verschiedene, sehr breit abgestufte Tabellen zu verwenden, wobei die sehr stark beeinflussenden Wetterbedingungen überhaupt keine Berücksichtigung fanden. Es wäre nun denkbar, für die Messung des Wasserdruckes einerseits, für die Messung des Luftdruckes anderseits zwei verschiedene Druckmesser zu verwenden, doch ist vorzugs weise vorgesehen, dass ein einziger, vorzugsweise eine piezoresistive Messzelle aufweisender Druckmesser sowohl für den Luft- wie für den Wasserdruck mit der die Wandlereinrichtung enthaltenden Schaltung verbunden ist. Dadurch können nicht nur Kosten für einen weiteren Druckmesser eingespart werden, sondern es bleibt auch die Handlichkeit des Gerätes erhalten, was gerade für die Mitnahme unter Wasser wichtig ist. Verwendet man aber einen einzigen Druckmesser für die Druckmessung ober oder unter Wasser, wo die Druckverhältnisse sehr unterschiedlich sind, so müsste entweder ein relativ teurer Druckmesser mit einem weiten Messbereich verwendet werden, oder es ist zweckmässig vorgesehen, dass der Messbereich des Druckmessers jeweils für Luft- bzw. für Wasserdruckmessung mit Hilfe einer Schalteinrichtung umschaltbar ist. Die Schalteinrichtung weist vorzugsweise zumindest einen FET-Schalter auf, dem zur Entkoppelung gegenüber dem Eingang der nachgeschalteten Stufe, insbesondere eines Analog Digital-Wandlers, ein Impedanzwandler nachgeschaltet ist. Die Wandlereinrichtung selbst besteht zweckmässig aus einem Rechner, sowie Speicher(n) für Grundzeiten und/oder Dekompressionszeiten und/oder Repetitivgruppen, welche Speicher z.B. Tabellenspeicher sein können. An den Ausgang des Druckmessers ist insbesondere eine Differenzierungsstufe angeschlossen, weil einerseits durch diese Stufe die Auftauchgeschwindigkeit kontrolliert werden kann; anderseits ist es aber auch möglich, dass die Schalteinrichtung zum Umschalten von Luft- auf Wasserdruckmessung cine Sprungerkennungsstufe für den Druck umfasst, die bei spielsweise von der Differenzierstufe gebildet ist. Andere mögliche Ausbildungen dieser Schalteinrichtung sind ein manuell zu betätigender Schalter (dessen Betätigung allerdings vergessen werden könnte) oder ein von einem Feuchtigkeitsfühler betätigbarer Schalter. Während aber gerade die letztere Ausführung zu Fehlschaltungen beim vorbereitenden Duschen oder beim Auftauchen infolge von Restfeuchtigkeit Anlass geben könnte, ist durch die Sprungerkennungsstufe ein sicheres Schalten und eine ebensolche Anzeige gewährleistet. Dabei kann die Sprungerkennungsstufe auch anders als durch eine Differenzierstufe, beispielsweise mit Hilfe eines Schwellwertschalters, mit Speicherschaltungen und entsprechenden Vergleichsstufen od. dgl. gelöst sein. Aber auch aus anderen Gründen, z.B. für eine Auswerte- und Verknüpfungsstufe begrenzten Arbeitsbereiches, kann eine Bereichsumschaltung, beispielsweise durch Umschalten der Verstärkung oder des Bit-Bereiches eines der Auswerte- und Verknüpfungsstufe vorgeschalteten Analog-Digital-Wandlers, mit Hilfe einer Schalteinrichtung vorteilhaft sein. Dadurch ist es möglich, billigere Bauteile, wie eine Auswerte- und Verknüpfungsstufe geringerer Kapazität, zu verwenden. Die Schalteinrichtung kann hiebei von derselben Einrichtung gebildet sein, die auch die Umschaltung des Druckmessers vornimmt. Zwar sind die oben beispielshalber aufgezählten Umschaltmöglichkeiten durchaus gangbar, doch sind sie in manchen Fällen zu aufwendig. Deshalb wird in der Praxis einer Lösung der Vorzug gegeben, bei der eine durch die Schalteinrichtung umschaltbare Referenzspannungsquelle vorge sehen ist, der zweckmässig ein Analog-Digital-Wandler nachgeschaltet ist. Wenn ausser dem Wasserdruck auch der tatsächliche Luftdruck in die Berechnung eingehen soll, so ist es notwendig, mit einer Anzeigeeinrichtung mit einem willkürlich, also insbesondere manuell, zu betätigenden Hauptschalter zu arbeiten, weil der Betriebsbeginn der Einrichtung automatisch ja nicht erfassbar ist. In diesem Falle ist es zweckmässig, wenn ausser diesem Hauptschalter, insbesondere für die Einschaltung des Druckmessers, zusätzlich mit dem Druckmesser eine zweite Schalteinrichtung zum Schalten weiterer Teile der Einrichtung beim Tauchen in Wasser vorgesehen ist. Auch hier wiederum kann die oben erwähnte Schalteinrichtung die Rolle dieser zweiten Schalteinrichtung übernehmen, um Kosten für zusätzliche Bauteile einzusparen. Einerseits ist jede Automatik Fehlermöglichkeiten unterworfen, anderseits können mit einem vernünftigen Aufwand auch nicht alle Fehlverhaltensmöglichkeiten eines Tauchers erfasst werden. In solchen Fällen kann es dann zu Fehlanzeigen des Anzeigegerätes kommen. Dies brächte aber eine zusätzliche Gefahr für den Taucher mit sich. Ausgehend von einer Anzeigeeinrichtung mit mindestens einer Detektorschaltung für eine Abnormfunktion, wie für Fehlverhalten des Tauchers, wird daher vorgeschlagen, dass eine Nebenschlussschaltung für die Wandlereinrichtung vorgesehen ist, und dass diese Nebenschlussschaltung durch die Detektorschaltung einschaltbar ist, wobei bei Auftreten der Abnormfunktion - z.B. auch bei Betätigung des Hauptschalters crst unter Wasser, bei Ueberschreiten der Speicherkapazität od. dgl. - durch diese Nebenschlussschaltung ein Warnsignal und/oder eine Schleppwertanzeige für die maximal erreichte Tauchtiefe einschaltbar ist (sind). Dadurch wird gesichert, dass bei Ueberschreiten der Kapazität oder einem sonstigen Ausfall der normalen Funktion wenigstens jene Anzeige erfolgt, wie sie bei bekannten Geräten erhältlich ist. In diesem Falle ist es besonders von Vorteil, wenn bei einer Anzeigeeinrichtung mit wenigstens einer Segmentanzeige dieselbe zur Anzeige verschiedener Anzeigeangaben wechselweise umschaltbar ist, beispielsweise auf die aktuelle Dekompressionstiefe vor Auftreten der Abnormfunktion und auf die maximale Tauchtiefe danach. Dies bringt einerseits eine Ersparnis an Bauteilen mit sich, anderseits erspart es dem Taucher die Ueberladung der Einrichtung, was die Arbeit unter Wasser nur behindern und überdies die Anzeige unübersichtlicher machen kann, und allenfalls sogar zu gefährlichen Irrtümern Anlass gibt. Zur Reduktion des Stromverbrauches der in aller Regel batteriebetriebenen Anzeigeeinrichtung ist es zweckmässig, wenn eine astabile Multivibratorschaltung zur getakteten Ansteuerung wenigstens einer Anzeige vorgesehen ist, mit z.B. 3 bis 4 Signalen pro Sekunde. Eine weitere Steigerung der Genauigkeit der Anzeige lässt sich dadurch erzielen, dass die die Wandlereinrichtung aufweisende Schaltung auch einen Speicher für die durch mehrmaliges Tauchen mit mittels der Wandlereinrichtung sich ergebender äquivalenter Tauchzeit, durch allfälliges Dekomprimieren unter Berücksichtigung der Dekompressionsparameter und unter Berücksichtigung der Oberflächenzeiten sich ergebenden Repetitivgruppen aufweist. Bei wiederholtem Tauchen und einem dazwischenliegenden Verbleib an der Oberfläche kann sich nämlich durch den jeweiligen vorherigen Tauchgang noch eine Restsättigung des Gewebes des Tauchers mit Stickstoff ergeben, soferne diese nicht durch einen entsprechend langen Oberflächenaufenthalt bereits Null geworden ist. In diesem Falle spricht man von einer "Repetitivgruppe Null", was bedeutet, dass der Taucher ohne jede Vorbelastung tauchen kann. Ist dagegen die Repetitivgruppe ungleich Null, so kann sie entsprechend dem obigen Vorschlage beim neuerlichen Tauchen gleich in die Rechnung eingehen. Hiezu werden vorzugsweise Tabellenspeicher für die an sich bekannten Repetitivgruppen Tabellen vorgesehen, doch können auch Tabellenspeicher für die Grundzeiten und die Dekompressionszeiten innerhalb der Wandlereinrichtung vorgesehen sein. Solche Tabellenspeicher vereinfachen den baulichen Aufwand. Ferner ist es aber auch zweckmässig, wenn die Wandlereinrichtung eine Speicherschaltung für die jeweils durchtauchten Tiefen und Zeiten, sowie gegebenenfalls auch für die sich ergebenden Korrekturwerte aufweist. Weitere Einzelheiten der Erfindung ergeben sich an Hand der nachfolgenden Beschreibung von in der Zeichnung schematisch dargestellten Ausführungsbeispielen. Die Fig. 1 und 2 zeigen die Diagramme verschiedener Tauchgänge; an Hand der Fig. 3 sei die Bedeutung des Luftdruckes erläutert; die Fig. 4 und 5 zeigen die Diagramme verschiedener Repetitivtauchgänge; Fig. 6 ist ein grobschematisches Blockschaltbild einer erfindungsgemässen Anzeigeeinrichtung, von dem Fig. 7 die damit erhältlichen Anzeigen veranschaulicht; Fig. 8 stellt hiezu eine Einzelheit des Zeitgebers dar; die Fig. 9A, 9B zeigen die Schaltung der erfindungsgemässen Anzeigeeinrichtung, wovon Fig. 10 Einzelheiten der Anzeigeansteuerung aus Fig. 9B veranschaulicht; Fig. 11 zeigt den dabei verwendeten Code. Die Fig. 12 und 13 stellen Alternativen zu einer Schaltungseinzelheit der Fig. 9A dar; an Hand der Fig. 14 seien die Hauptprogrammteile für die erfindungsgemässe Anzeigeeinrichtung erläutert; Fig. 15 ist ein Speicherbelegungsplan, zu dem die Fig. 15A bis 15D die Datenanordnungen darstellen; Fig. 16 zeigt die Programm-Struktur, wozu die Fig. 17 und 18 Einzelheiten der Programmabläufe veranschaulichen. Die Fig. 1A bis 1H zeigen verschiedenartige Tauchgänge. Nach den bisher üblichen Tabellen sind trotz Vcrschiedenheit für alle Tauchgänge Dekompressionsbedingungen einzuhalten, die nur von der maximal erreichten Tiefe und der Gesamtdauer abhängen. Selbst dann, wenn bei einem Tauchgang etwa nur 38 m erreicht würden, wäre auf 40 m aufzurunden, weil die Tabellen nur von 5 zu 5 Metern abgestuft sind. Ausschliesslich bei einem Tauchgang nach Fig. 1A würde der Dekompressionsplan der Tabellen voll ausgenützt, d.h. nur bei sehr schnellem Abstieg in die Maximaltiefe und dortigem Verbleib bis zum Auftauchen. Beim Beispiel nach Fig. 1B wird während des Aufstieges bei 19 m ein Halt eingelegt. Nach den Tabellen gilt dies nicht als Dekompressionshalt, sondern muss zur Tauchzeit zugezählt werden. Somit werden nur beim Tauchgang nach Fig. 1A die Dekompressionsbedingungen voll genützt, wogegen im Falle der Fig. 1B auf Kosten der für den Tauchgang nach Fig. 1A notwendigen Sicherheit viel zu lange dekomprimiert werden müsste. Dies ist natürlich auch den meisten Tauchern bewusst, die dann verleitet werden, die in den Tabellen aufgefundene Dekompressionszeit willkürlich abzukürzen. Hiezu sei erwähnt, dass die vollständigen Auftauchtabellen des Druckkammerlabors der Universität Zürich aus fünf gleichartig aufgebauten Tabellensätzen für die Meereshöhen 0 - 700 m (Tabellen 1 bis 4), 701 - 1500 m (Tabellen 5 - 8), sowie 1501 bis 2000 m, 2001 - 2500 m und 2501 - 3200 m bestehen und jeweils eine Dekompressionstabelle, eine Nullzeittabelle, eine Oberflächenintervall-Tabel le und eine Zeitzuschlag- oder Repetitivtabll beinhalten. F) Schweizerische medizinische Wochenschrift 103,Nr.10 (1973) Da die Tabellen nur von 5 zu 5 Meter abgestuft sind, sei nachstehend einiges über die Bestimmung der "Bottomtime" oder Grundzeit, zunächst für die Phase des Abtauchens erläutert. Dabei sei angenommen, dass dem jeweiligen Tauchgang kein anderer innerhalb der letzten 12 Stunden vorangegangen sei. Entsprechend der Abstufung der Tabellen sei hiebei unter "Tiefenstufe" der Bereich von einem Tabellen wert für die Tiefe bis zum nächst grösseren Tabellenwert (wobei die oberste bzw. erste Tiefenstufe bei Null m beginnt), unter 1,Repetitivtauchgang" ein Wiederholungstauchgang innerhalb von 12 Stunden, unter "Oberflächenintervallzeit" die Zeit an der Oberfläche zwischen zwei Tauchgängen und unter "aktueller Bottomtime" jene Grundzeit verstanden, die bis zur Umrechnung gültig ist. Solange der Taucher sich in der ersten (obersten) Tiefenstufe befindet, ist die Bottomtime gleich der Gesamttauchzeit, d.h. derjenigen Zeit, die seit Beginn des Abtauchens verstrichen ist. Taucht der Taucher von der ersten Tiefenstufe in die zweite, so besteht die Möglichkeit, die bisherige Bottomtime in eine, der zweiten Tiefenstufe entsprechende, äquivalente Tauchzeit (Bottomtime) umzurechnen. Das ist natürlich nur dann sinnvoll, wenn durch diese Umrechnung ein Zeitgewinn an Bottomtime entsteht. Diesem Umrechnungs-Verfahren liegt zugrunde, dass bei einem Tiefenstufenwechsel in eine grössere Tiefe das vorangegangene Tauchen als ein abgeschlossener Tauchgang betrachtet wird, dem jetzt ein nächster, im Sinne eines Repetitivtauchganges mit Oberflächenintervallzeit Null, folgt. Dieses Umrechnen der Bottomtime einer Tiefenstufe in die äquivalente Bottomtime der nächströsseren Tiefenstufe kann bei jedem Tiefenstufenwechsel von einer höheren in eine tiefere Tiefenstufe durchgeführt werden und wird als stufenweises Abtauchen bezeichnet. Das Umrechnen selbst wird mittels der beiden Tiefenstufen und der aktuellen Bottomtime in der Zeitzuschlagstabelle durchgeführt. Beispiele 1A bis 1H: siehe Tabelle 9 und 10 am Ende der Beschreibung, sowie Fig. 1A bis 1H. Tauchgänge im Bereich von 0 - 700 m über Meer Fig. 1A zeigt einen Tauchgang mit Repetitivgruppe Null, wie er den Dekompressionstabellen zugrunde gelegt ist. Beim Auftauchen im Punkt e sind nach einer Gesamttauchzeit von 34 min und einer maximal erreichten Tiefe von 33 m gemäss der Tabelle 1 je ein Dekompressionshalt von 5 min bei 6 m und ein solcher von 17 min bei 3 m einzulegen. Fig. 1B zeigt einen Tauchgang mit Repetitivgruppe Null, bei dem das Auftauchen stufenweise - jedoch innerhalb der sogenannten Nullzeitgrenze - erfolgt. Diese Nu]lzeitgrenze (Tabelle 2, bzw. für 701 - 1500 m über Meer Tabelle 6) gibt diejenigen Grenzwerte eines Tauchganges an, bis zu denen eine Dekompression nicht erfolgen muss, d.h. bis zu denen der Taucher jederzeit sofort (selbstverständlich unter Einhaltung der maximalen Auftauchgeschwindigkeit von 10 m/min) an die Oberfläche zurückkehren kann. Nun kann in diesem Bereich jede bisherige Gesamttauchzeit beim Durchschreiten einer Tiefenstufe in die äquivalente Tauchzeit der nächsten Tiefenstufe mit Hilfe der Tabelle 4 (bzw. für 701 - 1500 m über Meer Tabelle 8) umgerechnet werden. Die aktuelle Tauchzeit in einem Punkt des Tauchganges ist gleich der äquivalenten Tauchzeit des vorherigen Punktes zuzüglich der seither tatsächlich verstrichenen Zeit. Soferne in diesem Punkt des Tauchganges eine Tauchtiefenstufe abwärts - oder, solange sich der Taucher innerhalb der Nullzeitgrenzen befindet, auch aufwärts - durchschritten wird, wird diese aktuelle Tauchzeit in eine neue äquivalente Tauchzeit umgerechnet, indem zunächst ein allenfalls darin enthaltener Repetitivzuschlag abgezogen, die verbleibende aktuelle Tauchzeit auf die neue - immer nach oben aufgerundete - Tauchtiefenstufe umgerechnet und der dieser neuen Tauchtiefenstufe entsprechende Repetitivzuschlag wieder hinzugezählt wird. Die Umrechnung erfolgt, solange sich der Taucher innerhalb der Nullzeitgrenze befindet, nach der Zeitzuschlag- bzw. Repetitivtabelle (Tabellen 4, bzw. 8), ansonsten nach der Dekompressionstabelle (Tabellen 1, bzw. 5). Soferne sich durch mehrmaliges Pendeltauchen Rundungsfehler einschleichen, werden diese durch Vergleich mit der Umrechnung auf die Endtiefenstufe behoben, wenn sich daraus eine kürzere äquivalente Tauchzeit ergibt. Beim Beispiel der Fig. 1B findet man für den Punkt b (15 min, 33 m) in der Tabelle 4, aufgerundet auf den Tabellenwert 17 min bei 35 m, den für die neue Tiefenstufe 19 m (aufgerundet auf 20 m) äquivalenten Zeitwert von 34 min. Die äquivalente Tauchzeit ist daher nunmehr 34 min bei 20 m. Damit ist die Nullzeitgrenze (siehe Tabelle 2) überschritten und der vorgeschriebene Dekompressionshalt gemäss Tabelle 1 beträgt schliesslich 7 min bei 3 m. Der Tauchgang nach Fig. 1C zeigt ein stufenweises Auftauchen, das jedoch bereits ausserhalb der Nullzeitgrenze erfolgt. In diesem Fall darf auch nach den Dekompressionstabellen des Druckkammerlabors der Universität Zürich keine Aequivalenzumrechnung erfolgen, und es ist so zu dekompremieren, als ob der Tauchgang die gesamte Tauchzeit auf der maximal erreichten Tauchtiefe erfolgt wäre. Die Fig. 1D zeigt einen Tauchgang, wiederum mit Repetitivgruppe Null, bei dem das Abtauchen stufenweise, jedoch innerhalb der Nullzeit erfolgt. Wie aus Tabelle 5 ersichtlich, kann bei jedem Durchschreiten einer Tauchtiefenstufe die Umrechnung in eine äquivalente Tauchzeit erfolgen, die einen Zeitgewinn von zuletzt insgesamt 10 min Tauchzeit gegenüber herkömmlicher Berechnung bringt, was einen Dekompressionszeitgewinn von sogar 13 min ergibt. Theoretisch wäre nach den Tabellen des Druckkammerlabors der Universität Zürich die Berechnung des stufenweisen Abtauchens erlaubt, doch hat sich dies in der Praxis als viel zu kompliziert herausgestellt, als dass von dieser Möglichkeit jemals Gebrauch gemacht worden wäre. Erst die erfindungsgemässe Anzeigeeinrichtung hat hier die Möglichkeit geschaffen, diese nach den Tabellen möglichen Zeitgewinne auch zu realisieren. Die Tabelle 1E schliesslich zeigt einen Tauchgang mit Repetitivgruppe Null, bei dem das Abtauchen stufenweise, jedoch ausserhalb der Nullzeitgrenze erfolgt. Die Um rechnung kann in gleicher Weise wie beim stufenweisen Abtauchen innerhalb der Null zeit erfolgen. Die Tauchgänge der Figuren 1A, 1B und 1C enden - wie in den Figuren angegeben - damit, dass der Taucher sich in der Repetitivgruppe J befindet. Nach einer Oberflächenintervallzeit von z.B. 185 min auf O - 700 m über Meer ist er - wie aus Tabelle 3 ersichtlich in der Repetitivgruppe B; für diese Festlegung ist jeweils die nächst kleinere in der Tabelle aufgeführte Zeit zu wählen; Auf- oder Abrunden, bzw. Interpolation sind nicht gestattet. Ein Tauchgang, bei dem der Taucher nach einer solchen Oberflächenintervallzeit mit Repetitivgruppe B neuerlich abtaucht, ist in Fig. 1F gezeigt. Dabei wird nach 7 min und 30 m Tiefe die Repetitivgruppe erstmals der äquivalenten Tauchzeit beaufschlagt und anschliessend kontinuierlich mitgeführt. Die Dekompression hat nach dem eigentlich nur 26 min dauernden Tauchgang so zu erfolgen, als ob er 34 min gedauert hätte. Aus dem Tauchgang 1B (Repetitivgruppe J) und einem nachfolgenden Oberflächenintervall von 150 min befindet sich der Taucher in Repetitivgruppe C. Gemäss Fig 1G erfolgt ein kurzzeitiger Abstieg auf 19 m und darauffolgender Repetitivtauchgang mit stufenweisem Auftauchen. Die herkömmliche Berechnungsmethode ergäbe nach dem in Punkt a beginnenden Aufstieg die Repetitivgruppe D und im Punkt e einen Dekompressionsplan für 75 min bei 20 m Tiefe mit insgesamt 18 min Dekompressionshalt bei 3 m. Nunmehr bleibt nach sehr kurzen Tauchgängen die Repetitivgruppe unver ändert, und zwar immer dann, wenn die Zeile der Repetitiv gruppe A in der Zeitzuschlag- bzw. Repetitivtabelle nicht überschritten wird. Diese zeigt für 20 m eine Zeit von 8 min, während der Tauchgang gemäss Fig. 1G nur 4 min (die Aufstiegszeit nicht'gerechnet) gedauert hat. In Punkt b wird die Repetitivgruppe C zu der Tauchzeit 9 min des neuen Tauchganges mit 16 min (aus Tabelle 4, bei 20 m Tiefe) berücksichtigt. Weil sich der Taucher bei Punkt c noch innerhalb der 18 m Tiefenstufe aufhält, bleibt er in der Nullzeitgrenze, obwohl für die Festlegung der jeweiligen Dekompressionsbedingungen auf 20 m aufgerundet und daher mit 30 min die Nullzeitgrenze überschritten wäre. Dasselbe gilt für den Punkt d: die Nullzeitgrenze für 18 m Tiefenstufe (50 min) ist erreicht; der Taucher befindet sich zu diesem Zeitpunkt jedoch in der 12 m Tiefenstufe also auf einer äquivalenten Tauchzeit von 113 min bei 12 m und hat somit die Nullzeitgrenze bei 12 m mit 200 min noch nicht überschritten. Der nach dem kurzen Ab- und wieder Aufstieg der Fig. lG erfolgende Repetitivtauchgang verläuft nach der unter der Zeitabszisse niedergelegten, zweiten Minutenskala. In der Fig. 1H schliesslich wird ein Tauchgang gezeigt, den der Taucher beginnt, nachdem er aus dem vorangegangenen Tauchgang 1C und einem Oberflächenintervall von 110 min mit der Repetitivgruppe E vorbelastet ist; der Tauchgang besteht aus einem kurzzeitigen Abstieg und darauffolgenden Repetitivtauchgang mit Pendeltauchen. Die herkömmliche Berechnungsmethode ergäbe nach dem in Punkt a beginnenden Aufstieg die Repetitivgruppe F und in Punkt g den Dekompressionsplan für 72 min auf 2 m, d.h. einen Dekompressionshalt von 18 min bei 3 m. Mit der erfindungsgemässen Wandlereinrichtung wird jedoch die - unveränderte, weil Repetitivtabeilenzeile A (10 min bei 15 m) nicht über schritten wurde - Repetitivgruppe E in der Berechnung der aktuellen, bzw. äquivalenten Tauchzeit nach Ueberschreiten der Repetitivtabellenzeile A durch den Zeitzuschlag von 34 min berücksichtigt. Ein Abtauchen in die Tiefenstufe von 18 m in Punkt d ergibt letztlich eine äquivalente Tauchzeit von 37 min auf 20 m, während das Auf- und wiede Abtauchen in den Punkten e und f zwei verschiedene Berechnungsmethoden zulässt. Nach der ersten wird zunächst auf die Tiefenstufe 12 m umgerechnet, was eine äquivalente Tauchzeit von 97 min bei 12 m für den Punkt f ergäbe. Nach der zweiten, der Korrekturmethode, kann die Umrechnung in Punkt e auf die Tiefenstufe 15 m erfolgen, was bewirkt, dass der gesamte Tauchgang bis zum Punkt f nur mit 87 min bei 15 m zu Buche schlägt, wodurch der Taucher im Punkt g mit nur 5 min bei 3 m dekomprimieren kann, während er nach der erstgenannten Methode 10 min, nach der herkömmlichen Methode sogar 23 min gebraucht hätte. Durch die Umrechnung mit der erfindungsgemässen Anzeigeeinrichtung ergibt sich eine mit weniger überflüssiger Sicherheit behaftete äquivalente Tauchzeit, so dass es sich für den Taucher lohnt, dann umzurechnen, wenn die äquivalente kürzer als die aktuelle Tauchzeit ist. Auch beim Auftauchen muss die jeweilige Tauchzeit bestimmt werden, doch schreibt hier das Druckkammerlabor vor, dass alle Halte während des Auftauchens (ausserhalb der Nullzeitgrenze) in ihrer ganzen Dauer, inklusive der Aufstiegszeit von der maximal erreichten Tauchtiefe bis zum Halt, zur Tauchzeit hinzugezählt werden müssen. In den folgenden Beispielen (siehe Fig. 2A bis 2G) bedeutet "Bottomtime" die jeweils aktuelle, bzw. allenfalls umgerechnete (äquivalente) Grundzeit, "Deco" die vor geschriebenen Dekompressionsbedingungen. 2 A) Tauchgang mit Repetitivgruppe G nach vorangegangenem Tauchgang 1D und nachfolgendem Oberflächenintervall im Bereich von 0 - 700 m über Meer von 25 min; Repetitivtauchgang mit stufenweisem Abtauchen. Herkömmliche Berechnungsmethode ergibt im Punkt f und der Repetitivgruppe G den Dekompressionsplan für 82 min / 85 m: 10 min bei 6 mund 38 min bei 3 m. Punkt a: Stufenweises Abtauchen Umrechnung 17 min / 9 m auf 12 min / 12 m; Zeitgewinn 5 min. Punkt b: Repetitivgruppe G wird in der Bottomtime berechnung nach Ueberschreiten der Repetitiv tabellen-Zeile A (12 min / 12 m) berück sichtigt. Bottomtime = 13 min + Repetitiv zuschlag 85 min = 98 min. Punkt c: Stufenweises Abtauchen unter Berücksichtigung der Repetitivgruppe G. Bottomtime 108 min/12m - 85 min Repetitivzeitzuschlag (G) 23 min/12m Umrechnung auf 15 vii Tiefenstufe 22 min/15 m Repetitivzuschlag + 63 min/15 m 85 min/15 m Nullzeitgrenze überschritten (75 min / 15 m) Bottomtime 85 min / :15 m - Deco: 3m/5min Punkt d: Stufenweises Abtauchen unter Berücksichti gung der Repetitivgruppe G Bottomtime 87min/15m - 63min Repetitivzeitzuschlag (G) 24min/1 5m Umrechnung auf 20 m Tiefenstufe 20min/20m Repetitivzuschlag + 44min 64min/20m Bottomtime 64 min / 20 m - Deco: 3m/18min Punkt e: Stufenweises Abtauchen unter Berücksichti gung der Repetitivgruppe G Bottomtime 71min/20m - 44min Repetitivzeitzuschlag (G) 27min/20m Umrechnung auf 25 m Tiefenstufe 26min/25m Repetitivzeitzuschlag + 34min 6 Omin/2 5m Bottomtime 61 min / 25 m - Deco: 6m/3min und 3m/30min 2 B) Tauchgang auf 701 - 1500 m über Meer (siehe Tabellen 5 bis 8!) nach vorangegangenem Tauchgang 1E und - einem nachfolgenden Oberflächenintervall von 110 min auf 0 - 700 m über Meer - es folgt Repetitiv gruppe D aus H, - einem darauf folgenden Oberflächenintervall von 80 min auf 701 - 1500 m über Meer - es folgt Repe titivgruppe A aus D. Als Vergleich dazu entstünde bei einem Oberflächenintervall von 190 min auf O - 700 m über Meer Repetitivgruppe B. Herkömmliche Berechnungsmethode ergibt im Punkt f und der Repetitivgruppe A den Dekompressionsplan für 54 min / 20 m - Deco: 4 m / 5 min 2 m /19 min Punkt a: Repetitivgruppe A wird in der Bottomtime berechnung nach Ueberschreiten der Repetitiv tabellen-Zeile A (12m/13min) berücksichtigt. Bottomtime = 14 min + Repetitivzeitzuschlag +13 min = 27 min Punkt b: Stufenweises Abtauchen unter Berücksichtigung der Repetitivgruppe A. Bottomtime 47min/12m - 13min Repetitivzeitzuschlag (A) 34min/1 2m Umrechnung auf 15 m Tiefenstufe 30min/15m Repetitivzeitzuschlag + llmin 4lmin/1 5m Nullzeitgrenze überschritten (30min/15m) Bottomtime 41min/15m - Deco: 2m/8min Punkt c: Stufenweises Abtauchen unter Berücksichtigung der Repetitivgruppe A. Bottomtime 47min/15m - llmin Repetitivzeitzuschlag (A) 36min/15m Umrechnung auf 20 m Tiefenstufe 26min/20m Repetitivzeitzuschlag + 8min 34min/20m Bottomtime 34min/20m -Deco: 4m/3min und 2m/9min 2 C) Extrem-Tauchgang ohne Vorbelastung, Repetitivgruppe Null, auf 0 - 700 m über Meer. Tieftauchgang, der die Tabellenwerte erschöpft - out of range". Punkt a - h: Stufenweises Abtauchen innerhalb der Nullzeit mit maximalem Zeitgewinn von 11 min. a: Umrechnung 16min/ 9m auf 12min/12 m; Zeitgewinn 4 min b: " I2min/12m auf 10min/15 m; " 2 min c: " llmin/15m auf 12min/20 m; " 0 min d: " llmin/20m auf 9min/25 m; " 2 min 9min/25m auf 8min/30 m; " 1 min f: " 8min/30m auf 6min/35 m; " 2 min 6min/35m auf 6min/40 m; " 0 min h: " 6min/40m auf 5min/45 m; " 0 min Nullzeitgrenze überschritten (Omin/45m) Bottomtime 5min/45m - Deco: 3m/4min Durch zu langsames Abtauchen von Punkt a nach h wäre es durchaus möglich, dass der maximale Zeitgewinn von 11 min nicht erreicht wird, wenn eine Bottom time von 7 min bzw. 9 min auf 45 m vorliegt, die sich im Dekompressionsplan niederschlägt. Punkt i: Bottomtime llmin/45m - Deco: 6m/2min und 3m/6min Punkt k: Bottomtime 16min/45m - Deco: 6m/3min und 3m/llmin Punkt 1: Umrechnung 18min/45m auf l6min/50m; Zeit gewinn 2 min; Bottomtime 16min/50m - Deco: 6m/Smin und 3m/17min. Gesamttauchzeit 27min. Punkt m: Umrechnung l8min/50m auf 17min/55m; Zeitgewinn lmin. Bottomtime 17min/55m Deco: 12m/lmin, 9m/4min, 6m/8min und 3m/24min. Gesamttauchzeit 42 min. Punkt n: Bottomtime 21min/55m - Deco: 12m/2min, 9m/7min, 6m/lOmin und 3m/32min. Gesamttauchzeit 56 min. Punkt o: Umrechnung 23min/55m auf 22min/60m; Zeitgewinn 1 min. Bottomtime 22min/60m Deco: 15m/2min, 12m/2min, 9m/l0min, 6m/lOmin und 3m/35min. Gesamttauchzeit 64min. Punkt p: Umrechnung 24min/60m auf 23min/65m; Zeit gewinn lmin; Bottomtime 23min/65m - Deco: 15m/2min, 12m/4min, 9m/10 min, 6m/13min und 3m/40min. Gesamttauchzeit 75 min. Punkt q: Bottomtime 26min/65m - Deco: 18m/lmin, 15m/2min, 12m/8min, 9m/14min, 6m/18min und 3m/46min. Gesamttauchzeit 95 min. Punkt r: Bottomtime 3lmin;Tauchtiefe 65m; hierfür können keine Dekompressionsbedingungen er mittelt werden - Tabellenwerte erschöpft. Out of range-LED leuchtet auf, Dekompressions bedingungen und Auftauchzeit werden gelöscht, maximal erreichte Tiefe wird ausgegeben. 2 D) Extrem-Tauchgang ohne Vorbelastung, Repetitivgruppe Null auf O - 700 m über Meer. Tieftauchgang über 70 m, Tabellenwerte erschöpft: "out of range". Punkt a - f: Ab Punkt a erfolgt ein kontinuierliches Erhöhen der Dekompressionsbedingungen bei je dem Durchtauchen der Tiefenstufen bis Punkt f. a: Bottomtime lmin xxsec - Deco. für l0min/45m - 3m/4min b: Bottomtime lmin xxsec - Deco. für I0min/50m - 3m/5min c: Bottomtime lmin xxsec - Deco. für l0min/55m - 9m/lmin 6m/2min d: Bottomtime Imin xxsec - Deco. für l0min/60m - 9m/lmin 6m/3min 3m/5min e: Bottomtime Imin xxsec - Deco. für l0min/65m -12m/lmin 9m/2min 6m/3min 3m/6min Punkt i: Bcttomtime 2min xxsec - Deco.für 5min/70m - 9m/2min 6m/4min 3m/5min Gesamttauchzeit 18min. Punkt g: Bottomtime 6min xxsec - Deco.für l0min/70m -12m/2min 9m/3min 6m/4min 3m/6min Gesamttauchzeit 22 min. Punkt h: Bottomtime llmin xxsec - Deco.für 15min/70m -12m/2min 9m/3min 6m/lOmin 3m/20min Gesamttauchzeit 42 min. Punkt i: Uebertauchen der 70m Tiefenstufe - LED, out of range leuchtet auf, Auftauchzeit und De kompressionsbedingungen werden gelöscht, die maximal erreichte Tauchtiefe wird ausgegeben. 2 E) Tauchgang mit Repetitivgruppe Null auf Bergseehöhe 701 - 1500 m über Meer (siehe Tabellen Sbis 8!). Realistischer Pendeltauchgang. Punkt a: Stufenweises Abtauchen Umrechnung l5min/10m auf 13min/12m; Zeitgewinn 2min Punkt b: Stufenweises Abtauchen Umrechnung 13min/12m auf llmin/15m, Zeitgewinn Imin Punkt c: Stufenweises Abtauchen Umrechnung llmin/15m auf 8min/20m; Zeitgewinn 3min Punkt d: Stufenweises Abtauchen Nullzeitgrenze der 20 m Tiefenstufe (15min/20m) überschritten Umrechnung 15min/20m auf 23min/15m Punkt e: Stufenweises Abtauchen mit Korrekturrechnung Umrechnung 25min/15m - 21min/20m Korrekturrechnung Bottomtime = Bottomtime der Tiefenstufe 20 m im Punkt d zuzüglich die seit dem Punkt d verstrichene Zeit. Bottomtime = 15min + 2min = 17min/20m Nullzeitgrenze (15min/20m) überschritten Bottomtime 17min/20m - Deco.für 20min/20m - 2m/4min Punkt f: Bottomtime 2lmin xxsec - Deco.für 25min/20m - 2m/6min Punkt g: Stufenweises Abtauchen Umrechnung 25min/20m auf 20min/25m Bottomtime 20min/25m - Deco.für 25min/25m - 4m/4min 2m/8min Punkt h: Beginn des Aufstiegs mit lOm/min Bottomtime 25min xxsec Punkt i: Verlassen des Auftauchkegels, die Bottomtime wird um die im Auftauchkegel verbrachte Zeit erhöht. Bottomtime 26min xxsec - Deco.für 30min/25m - 7m/3min 4m/4min 2m/9min 2 F) Tauchgang nach vorangegangenem Tauchgang 2E und einem nachfolgenden Oberflächenintervall von 70min auf 701 - 1500 m über Meer - es folgt Repetitivgruppe D aus G - und einem darauf folgenden Oberflächenintervall von 80min auf 0 - 700 m über Meer - es folgt Repetitiv gruppe B aus D. Als Vergleich dazu entstünde bei einem Oberflächen intervall von 150 min auf 701 - 1500 m über Meer die Repetitivgruppe A. Herkömmliche Berechnungsmethode ergibt im Punkt h den Dekompressionsplan für 44min/40m von 12m/ 2min 9m/ 7min 6m/20min 3m/40min, wobei das Verlassen der Dekompressionsphase noch nicht berücksichtigt wurde. Punkt a: Repetitivgruppe A wird nach überschreiten der Repetitivtabellen-Zeile A (40m/4min) in der Bottomtimeberechnung berücksichtigt. Bottomtime = 5 + Repetitivzeitzuschlag 4min = 9min Punkt b: Nullzeitgrenze (10min/40m) überschritten Umrechnung lOmin/40m auf l0min/35m Punkt c: Nullzeitgrenze (15min/35m) überschritten Umrechnung 15min auf 22min/30m Bottomtime 22min/30m - Deco.für 25min/30m - 3m/5min Punkt d: Stufenweises Abtauchen mit Korrekturrechnung Umrechnung 32min/30m - 6min Repetitivzeitzuschlag A 26min/30m Umrechnung auf 22min/35m Repetitivzeitzuschlag + 4min 26min/3 5m Bottomtime 26min/35m Korrekturrechnung Bottomtime = Bottomtime im Punkt c auf 35m zuzüglich der Zeit, die seit c verstrichen ist. Bottomtime = 15min + lOmin = 25min/35m Bottomtime 25min/35m - Deco.für 25min/35m - 3m/ 9min Punkt c: Bottomtime 26min xxsec - Deco.für 30min/35m - 3m/12min Punkt f: Bottomtime 3lmin xxsec - Deco.für 35min/35m - 6m/ Smin 3m/1 7min Punkt g: Bottomtime 36min xxsec - Deco.für 40min/35m - 6m/ 7min 3m/20min Punkt h: Beginn des Aufstiegs zur Dekompression mit 10 m / min Punkt i: Abtauchen während der Dekompressionsphase mehr als 3 m unter die tiefste Dekompressions stufe (7m). Die gesamte bis anhin dekomprimierte Zeit wird der Bottomtime beaufschlagt. D.h.: Bottomtime = 40min + Smin Dekompressionszeit= 45min Bottomtime 45min/35m - Deco.für 50min/35m - 9m/ 3min 6m/l0min 3m/35min Punkt k: Abermals Beginn der Dekompression, jetzt aber für 50min/35m. 2 G) Extremtauchgang ohne Vorbelastung, Repetitivgruppe Null auf O - 700 m über Meer. 1. Tauchgang mit Notaufstieg 2. Tauchgang, wobei der Tauchcomputer erst unter Wasser eingeschaltet wird. 1. Punkt a: Nullzeitgrenze (Omin/45m) überschritten Bottomtime 2min xxsec - Deco.für lOmin/45m - 3m/4min Punkt b: Notaufstieg-Beginn Punkt c: Eintritt in die Dekompressionsstufe, LED - DECO leuchtet auf. Punkt d: Eintritt in die Oberfläche ohne den vorge schriebenen Dekompressionsstop einzuschal ten. LED.1,out of range"leuchtet auf. Dekom pressionsbedingungen, Auftauchzeit und LED - Deco werden gelöscht, die maximal erreichte Tauchtiefe wird ausgegeben. 2. Punkt a: Einschalten des Tauchcomputers unter Wasser - LED,/out of range leuchtet auf, maximal erreichte Tauchtiefe wird als Schleppwertanzeige ausgegeben. Wesentlich ist jedenfalls, dass jeder Taucher, der bezüglich der Tauchzeit und der maximalen Tauchtiefe oberhalb der Nullzeitkurve bleibt, sich im Bereiche des Nullzeittauchens befindet und daher beim Auftauchen keine Dekompressionshalte einlegen muss (wenn auch eine Pause von 3 min in 3 m Tiefe beim Auftauchen empfohlen wird). Solange sich aber der Taucher innerhalb der Nullzeit befindet, darf das oben an Hand des Abtauchens beschriebene Verfahren zur Ermittlung der äquivalenten Grundzeit auch auf das Auftauchen übertragen werden, weil ja der Taucher sowieso jederzeit ohne Dekompression wieder auftauchen kann. Unter diesen Voraussetzungen kann man auch beim Auftauchen (im Sinne eines Repetitivtauchganges) für den nachfolgenden Tauchgang aus der Zeitzuschlagtabelle einen Zeit zuschlag vorsehen. Nun ergibt sich aber das Problem, dass bei allgemeiner Anwendung dieses Verfahrens für alle Tiefenstufen und bei Umrechnung der aktuellen Grundzeit beim Ueberschreiten einer Tiefenstufe nach oben in die Grundzeit der höheren Tiefenstufe sich beträchtliche Rundungsfehler einschleppen, die sich besonders stark auswirken, wenn der Taucher erst einige Tiefenstufen aufwärts schwimmt und anschliessend wieder auf die maximale Tiefenstufe ab taucht. Die Lösung dieses Problems besteht vorteilhafterweise darin, dass nur dann das vorangegangene Tauchen in einer grösseren Tiefe auf die Tiefenstufc der aktuellen Tauchtiefe umgerechnet wird, wenn die aktuelle Grundzeit gerade so gross geworden ist, wie die Null zeit der maximalen Tauchtiefe. Im Zeitpunkt der Umrechnung der Grundzeit auf die aktuelle Tauchtiefe muss nur eine Korrekturzeit festgehalten und die bisherige Grundzeit als Korrektur-Grundzeit verwendet werden. Diese beiden Korrekturwerte sind aber nur erforderlich, falls der Taucher innerhalb kurzer Zeit wieder auf die maximale Tauchtiefenstufe zurückkehrt. Dann muss nämlich verglichen werden, ob die Summe aus der Korrektur-Bottomtime und der im Zeitpunkt des Zurückkehrens gestoppten Korrektur-Grundzeit kleiner ist, als die bis zu diesem Zeitpunkt verstrichene aktuelle Bottomtime Wenn ja, muss die aktuelle Bottomtime korrigiert werden, indem sie gleich der Summe aus Korrektur-Bottomtime und Korrekturzeit gesetzt wird. Andernfalls hat sich die Umrechnung gelohnt. Durch dieses neuartige Verfahren erhält man einen wesentlichen Vorteil, denn es ist so möglich, einen Tauchgang sowohl im Ab- als auch im Auftauchen gewissermassen aus einander folgenden Repetitivtauchgängen entsprechend den Tabellen zusammensetzen und dadurch die Voraussetzung für eine Digitalisierung zu schaffen. Der Digitalisierung des Tauchganges wurde deshalb soviel Beachtung geschenkt, weil die zur Bestimmung der Dekompressionsbedingungen benötigten Werte, die Bottomtime und die maximale Tauchtiefe, dadurch optimal ermittelt werden können. Dabei geht man wie folgt vor. Mit der Bottomtime und der maximalen Tauchtiefe werden in der Dekompressionstabelle die zugehörigen Dekompressionsbedingungen gelesen. Unter Dekompressionsbedingungen versteht man die Dekompressionszeiten der einzelnen Dekompressionsstufen der Dekompressionstabelle, welche Zeiten vom Taucher einzuhalten sind. Etwas anders sind die bestehenden Vorschriften für den Fall, dass einem Tauchgang innerhalb von 12 Stunden ein anderer Tauchgang vorangegangen ist. Wie schon an Hand der obigen Umrechnungsbeispiele erläutert wurde, wird jedem Tauchgang zu Beginn des Oberflächenintervalles eine Repetitivgruppe zugeordnet, die dem Sättigungsgrad an Stickstoff im Gewebe des Tauchers entspricht, um für die Dekompressionsparameter einen entsprechenden Zuschlag zu ermitteln. Herkömmlicherweise wird bei Beginn des Repetitivtauchganges die Repetitivgruppe für das Ende des Oberflächenintervalles bestimmt. Es ist aber vorteilhaft, wenn während des Oberflächenintervalles im Gegensatz zu dieser herkömmlichen Methode die Repetitivgruppe kontinuierlich nachgeführt wird, um so die dazu benötigte Oberflächenintervall-Tabelle zu kürzen und letztlich damit für die erfindungsgemässe Anzeigeeinrichtung Speicherplätze zu sparen. Das Resultat, d.h. die am Ende des Oberflächenintervalles sich ergebende Repetitivgruppe, ist dasselbe. Das kontinuierliche Bestimmen der Repetitivgruppe wird später an Hand der Erläuterung der Programmabläufe beschrieben. Ueblicherweise wird die Repetitivgruppe erst bei Beginn des Auftauchens berücksichtigt, weil bei Einsichtnahme in die Tabelle die Umrechnung der Grundzeit jeweils unter Berücksichtigung der Repetitivgruppe erfolgen müsste. Wird aber, wie dies erfindungsgemäss geschieht, eine entsprechende Wandlereinrichtung vorgesehen, so kann die entsprechende Korrektur leicht selbständig vorgenommen werden. Daher ist zweckmässig, wenn die Repetitivgruppe am Ende des Oberflächenintervalls bei jedem Tiefenstufenwechsel während des Abtauchens durch einen Repetitivzeitzuschlag berücksichtigt wird. Dadurch ergibt sich die Möglichkeit, dem Taucher zu jeder Zeit die minimale Aufstiegszeit inklusive der Dekompressionszeit anzugeben. Bei dem herkömmlichen Verfahren erhöhen sich bei Beginn des Auftauchens schlagartig die Dekompressionszeiten. d.h. die Korrektur wäre bedeutend komplizierter, weil bei der Grundzeitbestimmung (gemäss den obigen Erläuterungen) sowieso bereits Korrekturen vorzunehmen sind und ein zusätzlicher Korrekturwert nur zusätzliche Komplikationen schafft. Soll also die Grundzeit beim Abtauchen unter Berücksichtigung der Repetitivgruppe umgerechnet werden, so wird vor der Umrechnung der aktuellen in die äquivalente Grundzeit der Repetitivzuschlag des vorangegangenen Tiefenstufenwechsels von der aktuellen Grundzeit subtrahiert, anschliessend die Umrechnung in der oben beschriebenen Weise durchgeführt und schliesslich der Repetitivzeitzuschlag der jeweils nächsttieferen Tiefenstufe zur aktuellen Grundzeit hinzugezählt. Damit wird der vorangegangene Tauchgang und seine dadurch bewirkte Vorbelastung des Gewebes bei jedem Tiefenstufenwechsel in eine grössere Tiefe den Werten des Tauchganges überlagert. Diese Werte können gemäss der obigen Beschreibung bereits in digitalisierter Form vorliegen. An Hand der Fig. 3 sei inzwischen noch erläutert, welche Probleme in Zusammcnhang mit der Berücksichtigung des Luftdruckes auftreten. Setzt man in den verschiedenen Höhen gleiche Temperatur voraus, so nimmt der Luftdruck mit zunehmender Höhe nach einer Exponentialfunktion ab. Bei genauer Luftdruckberechnung muss berücksichtigt werden, dass die Temperatur mit der Höhe abnimmt. Um ein möglichst genaues Bild über den Luftdruck bis in 4000 m Höhe zu erhalten, berechnet man denselben nach der internationalen Höhenformel, die eine Jahresmittel-Temperatur auf der Meereshöhe von 150 C und den Luftdruck im Jahresmittel in Meereshöhe von PO = 101,325 kPa berücksichtigt. Sie ist bis in eine Höhe von 11.000 m gültig und lautet EMI39.1 Um ein möglichst realistisches Bild der Luftdruckkurve zu erhalten, müssen die wetterbedingten Luftdruckschwankungen berücksichtigt werden, welche als Folge von Wetterstürzen auftreten und auf Meereshöhe bis zu + 50 mbar ausmachen können. Das sind 5 % relativer Fehler, der der Luftdruckkurve als Streubereich überlagert wird. Die in Fig. 3 gezeigte Luftdruckkurve ist mittels einer Geraden 4 durch die Punkte (0/1) und (3300/0.67) approximiert, wobei nL die maximale Luftdruckänderung auf Meereshöhe und S der Streubereich der Luftdruckschwankungen ist, der etwa 5 % ausmacht. Eingezeichnet ist ferner die Höhenmesser-Auflösung A pro 100 m, der maximale Fehler FM des Höhenmessers, sowie der minimale Fehler FSmin und der maxiale Fehler FSmax der über den Luftdruck gemessenen Höhe, der im Bereich des Uebergangs von einer Höhenstufe in die andere zur Auswahl des nächsten Tabel lensatzes führen kann. Daraus geht hervor, dass der 5%ige relative Fehler des Luftdruckes einen bedeutend grösseren relativen Fehler bezüglich der Höhe nach sich zieht. Bei der Betrachtung der einzelnen Höhenstufen-Grenzen (700/701, 1500/1501, etc.) steigt der relative Fehler im Maximum bis auf + 72 % (-500 m auf 700 m) an, und bleibt im Minimum über 10 % (+350 m auf 3200 m). Diese enorm grossen Abweichungen der kartographischen Höhe über Meer von der luftdruckmässig betrachteten Höhe über Meer sind in den Tabellen-Sätzen des Druckkammerlabors der Universität Zürich mit Sicherheitsfaktoren berücksichtigt, so dass der Taucher nicht gefährdet wird. Beispiel: Ein Taucher befindet sich nach der Landkarte an einem Bergsee auf 1300 m über Meer und verwendet für seinen Tauchgang den Tabellensatz für die Höhenstufe (700/1500) m über Meer. Der vorherrschende Luftdruck kann in Folge eines Wettersturzes jedoch so stark angestiegen sein, dass er jetzt einer äquivalenten Höhe von weniger als 700 m über Meer entspricht. Jetzt könnte der Taucher den Tabellensatz der Höhenstufe 0-700 m über Meer verwenden, wenn er zur Auswahl des Tabellensatzes einen Höhenmesser anstelle der Landkarte verwenden würde. Um eine grössere Genauigkeit für die Auswahl des Tabellensatzes zu erzielen als mit Hilfe einer Landkarte, bedarf es keines Präzisions-Höhenmessers. Der relative Fehler dieses Höhenmessers muss nur kleiner sein, als der minimale relative Fehler der kartographischen Höhe, bezogen auf die dem Luftdruck äquivalente Höhe. Damit braucht der relative Fehler des Höhenmessers nur kleiner als 10 % zu sein. Die erfindungsgemässe Anzeigeeinrichtung berücksichtigt den Luftdruck in ausreichender Weise und greift daher richtigerweise unter den Bedingungen des genannten Beispiels auf den Tabellensatz O - 700 m über Meer, der dem herrschenden Luftdruck entspricht, obwohl sich der Taucher auf 1300 m über Meer befindet. Andererseits gilt für den Druck (Pw) der Wassersäule: (1) Pw = 9H20 . g . h h... Höhe der Wassersäule g... 10m/Sê (Erdbeschleunigung) #2O ... spezifisches Gewicht des Wassers Annahme (Pw) = bar und yH20 = 103 kg/ m3 so gilt: (2) Tauchtiefe in Meter = 10 . Pw Weil die Wassertiefe nicht unabhängig vom vorherrschen den Luftdruck (Ph) bestimmt werden kann, muss dieser berücksichtigt werden. Der Wasserdruck (Pw) ist die Differenz aus absolutem Druck (Pabs) und Luftdruck (Ph). Es gilt daher für die Tauchtiefe (DEPTH) in Meter und die Drücke (abs) (Ph) in bar: (3) DEPTH = 10 . (Pabs - Ph) Um die Tauchtiefe bei Tauchgängen auf verschiedenen Höhen über Meer zu bestimmen, muss ein Absolut-Druck aufnehmer gewählt und die Tauchtiefe nach (3) berechnet werden. Das spezifische Gewicht von Meerwasser ist ca.9 1,025 g/cm3, dasjenige von Süsswasser ca. = 1,0 g/cm3. Weil die Tauchtiefe sowohl im Meerwasser als auch im Süsswasser bestimmt werden muss, folgt eine kurze Fehleranalyse. Wird bei einer wirklichen Tauchtiefe von 10 m die Tauchtiefe nach (3), unter Berücksichtigung von , bestimmt, dann ergibt sich als Tauchtiefe im Süsswasser lOm, als Tauchtiefe im Meerwasser 10,25 m. Der relative Fehler der Tauchtiefe im Meerwasser bezüglich der wirklichen Tauchtiefe ist also + 2.5 %. Mit dieser Genauigkeit ist auszukommen, zumal der Fehler auf der sicheren Seite liegt und dadurch nie eine zu geringe Tiefe ermittelt wird. Damit ergeben sich die spezifischen Anforderungen an ein Druckmesssystem, wie es gemäss einer bevorzugten Ausführungsform der später beschriebenen Anzeigeeinrichtung verwendet wird, nämlich an einen Absolutwert - Druckaufnehmer von 0 - 10 bar, damit der Höhenbereich O - 4000 m über Meer und der Wassertiefenbereich O - 80 m erfasst werden können. Um eine genügend grosse Genauigkeit der Höhenmessung und Tauchtiefenmessung gewährleisten zu können, darf der relative Fehler 3.5 % nicht überschreiten. Die Empfindlichkeit EMI42.1 muss so gross sein, dass eine Druckänderung von 0,01 bar = 100 m Luftsäule = 10 cm Wassersäule eine Spannungsänderung ergibt, die nach der Verstärkung und der A/D - Wandlung digital mindestens einem Digit der niedrigsten Wertigkeit entspricht; als Binär-Wert dargestellt (E)2 ) (1)2 Es wurde bereits erwähnt, dass Wiederholungstauchgänge innerhalb von 12 Stunden bei der Bestimmung der Dekompressionsparameter mit zu berücksichtigen sind. Hierauf soll nachstehend etwas genauer eingegangen werden. Es wurde auch schon gesagt, dass die verschiedenen Repetitivgruppen mit Buchstaben bezeichnet werden und zu einem Zeit zuschlag nach der Zeitzuschlagtabelle führen. Fig. 4 zeigt die graphische Darstellung eines Repetitivtauchganges mit einer Tauchzeit T2 nach einem vorangehenden Tauchgang mit einer Tauchzeit T1 und einer Dekompressionszeit D sowie nach einem Oberflächenintervall Oi. Beispielsweise beträgt die Tauchzeit T1 50 min und die Dekompressionszeit D auf Grund dieser Tauchzeit und der Tiefe (lOm) 3 min, womit sich nach dem Auftauchen und mit Beginn des Oberflächenintervalles eine Repetitivgruppe F ergibt. Das Oberflächenintervall Oi beträgt gemäss Fig. 4 100min. Dabei nimmt der überschüssige Gasgehalt im Körper des Tauchers ab und es kommt zu einer Repetitivgruppe C, die einer geringeren Gasmenge entspricht. Dies lässt sich der Oberflächenintervall-Tabelle entnehmen. Der Taucher, welcher sich nun in der Repetitivgruppe C befindet, will auf 30 m abtauchen. In der C-Zeile der Zeitzuschlagstabelle findet er in der 30 m Kolonne den Zeitzuschlag 10 min. Dieser bedeutet, dass sich im Körper des Tauchers noch soviel Gas befindet, wie wenn er bereits 10 min auf 30 m gewesen wäre. Für die Ermittlung einer angemessenen Dekompression muss nun also der Zeitzuschlag zur neuen, realen Tauchzeit hinzugezählt werden. Beträgt die reale Tauchzeit nun z.B. 20 min, so muss er den Dekompressionsplan für 30 min auf 30 m wählen. Nun ist ein Repetitivtauchgang nach Fig. 4 bei gleichbleibender Meereshöhe bestimmt der häufigste Fall. Was aber geschieht, wenn der Taucher das Gewässer und die Meereshöhe wechselt, sei an Hand der Fig. 5 besprochen. In grösserer Höhe sind die Zeiten, mit denen eine bestimmte Repetitivgruppe erreicht wird, kürzer. Es ist erlaubt, in der Höhe das Oberflächenintervall mit einem tieferen Tabellensatz zu berechnen; das Umgekehrte jedoch ist nicht statthaft. Beispiel nach Fig. 5 1. Tauchgang 450 m über Meer, 40 min in 30 m; nach dem vorgeschriebenen Dekomprimieren unter Wasser ist der Taucher um 11.01 Uhr aus dem Wasser und befindet sich nun in Gruppe J. Mit einem Helikopter wird er nun zu einem Bergsee auf 1400 m über Meer geflogen. Um 12 Uhr hat er die Höhengrenze 700 m über Meer überstiegen. Zu diesem Zeitpunkt ist er in der Gruppe G, was ihm eine Flughöhe bis 2000 m über Meer erlaubt. Um 12.55 Uhr ist er bereit zum neuen Tauchgang. Nach der Oberflächenintervall-Tabelle 0 - 700 m über Meer befand er sich ab 12.06 Uhr in der Gruppe F. Die restlichen 49 min Oberflächenintervall-Zeit berücksichtigt er im Tabellensatz 701 - 1500 m über Meer und kommt um 12.55 Uhr von der Gruppe F in die Gruppe D. Entsprechend seiner neuen Tauchtiefe sucht er sich nun den Zeitzuschlag heraus. Um 13.30 Uhr ist der Tauchgang beendet, und er befindet sich nun in der Gruppe G. Um 15.10 Uhr unterschreitet er die Höhengrenze 700 m über Meer. Im Tabellensatz 701 - 1500 m über Meer befand er sich nach 90 min Oberflächenintervall (d.h. um 15.00 Uhr) in der Gruppe C. Das weitere Oberflächenintervall nach 15.00 Uhr wird im Tabellensatz O - 700 m über Meer berücksichtigt, da die Oberflächenintervall-Tabelle 701 - 1500 m über Meer keine Gültigkeit mehr hat, wenn die Grenze 700 m über Meer unterschritten wurde. Aufbau der erfindungsgemässen Anzeigeeinrichtung: Die obigen Ausführungen zeigen, dass die Handhabung der Tabellen verhältnismässig umständlich ist und es daher unmöglich ist, damit dem Taucher zu jedem Zeitpunkt eines Tauchganges diejenigen Informationen zu geben, die er eigentlich nötig hätte. Die bisher bekannten Tauchcomputer haben das Ablesen der Tabellen lediglich automatisiert, ohne dabei eine Umrechnung der aktuellen in die äquivalente Grundzeit, eine Einbeziehung des tatsächlichen Luftdruckes (der gemäss Fig. 3 erheblichen Schwankungen ausgesetzt sein kann) bzw. der Repetitivzeitzuschläge, oder eine laufende Anzeige der jeweils erforderlichen Auftauchzeit zu ermöglichen. Insgesamt waren also die von ihnen erhältlichen Angaben mit grossen Ungenauigkeiten behaftet. Hier Abhilfe zu schaffen und dem Taucher eine möglichst genaue Information, insbesondere über die Dekompressionsparameter, zu vermitteln, ist Ziel der Erfindung. Fig. 6 zeigt ein Ausführungsbeispiel, mit dessen Hilfe dieses Ziel verwirklicht werden kann. Dabei werden einer Wandlereinrichtung 5 der Umgebungsdruck (d.h. sowohl Luftwie auch Wasserdruck) von zumindest einem Druckmesser 6 als Eingangsgrösse zugeführt. Eine weitere Eingangsgrösse liefert ein Zeitgeber (Timer) 7, der - wie aus der späteren Beschreibung ersichtlich wird - auch in die Wandlereinrichtung integriert sein kann. Schliesslich muss auch noch eine Spannungsversorgungsschaltung 8 vorgesehen sein, die über einen willkürlich, d.h. unmittelbar manuell oder allenfalls über eine Fernsteuerung, betätigbaren Hauptschalter 9 einschaltbar ist. Innerhalb der Wandlereinrichtung 5 wird nicht nur Beginn und Ende eines Tauchganges samt seinem Verlauf aufgenommen, sondern vorzugsweise auch die Vorgeschichte, um so die Repetitivzeitzuschläge berücksichtigen zu können. Hiezu ist es natürlich erforderlich, dass die Wandlereinrichtung 5 selbst und/oder an sie angeschlossene Speichereinrichtungen das zugehörige Tabellenmaterial gespeichert erhalten. Zweckmässig erfolgt die Verarbeitung der Signale in digitalisierter Form, weshalb es zumindest für den Analogsignale liefernden Druckmesser 6 notwendig sein wird, einen Analog/Digitalwandler innerhalb der Wandlereinrichtung 5 vorzusehen. Als Ausgangsgrössen einer solchen Wandlereinrichtung 5 lassen sich ein Richtwert At für die zu erwartende Auftauchzeit (inklusive der Dekompressionszeit), die Dekompressionsparameter D (d.h. Tiefenstufen und Zeiten für die Dekompression), die Tiefenangaben Tm (wie aktuelle Tiefe und maximale Tiefe), sowie die Gesamttauchzeit Tt ermitteln. Ferner ist es aber auch zweckmässig, wenn Abnormfunktionen angezeigt werden, d.h. fehlerhaftes Verhalten des Tauchers und/oder des Anzeigegerätes selbst. So kann eine Anzeige Va für das Ueberschreiten der maximalen Auftauchgeschwindigkeit des Tauchers und wenigstens eine weitere Anzeige An vorgesehen sein, die ein Batterieüberwachungssignal bei unzureichender Energiezufuhr und/oder ein Signal dann liefert, wenn Werte auftreten, die in den abgespeicherten Tabellen nicht vorkommen, etwa weil der Taucher in unzu lässiger Weise die maximale Tiefenstufe von 70 m nach unten zu überschritten hat. Obwohl die Anzeigeeinrichtung selbstverständlich in einem drucksicheren Gehäuse untergebracht werden muss, kann des weiteren ein Leckfühler mit einer entsprechenden Anzeige vorgesehen sein. Ferner muss zwar die Anzeigeeinrichtung am Körper des Tauchers, zweckmässig am Arm, unverlierbar befestigbar sein, doch kann er für den Fall eines Verlustes (etwa beim Abnehmen, weil das Gerät bei der Arbeit unter Wasser stört) einen Bewegungsdetektor beinhalten, der bei Fehlen einer vom Taucher verursachten Bewegung nach kurzer Zeit ein optisches, akustisches und/oder sonstwie anpeilbares Signal zur Erleichterung des Wiederauffindens auslöst. Bei Ansprechen der Anzeige An zur Anzeige der Tatsache, dass das Tabellenende erreicht ist, können die Dekompressionsparameter (Ausgangsgrössen D) nicht mehr exakt ermittelt werden. Es wird später noch erläutert werden, dass für diesen Fall ein Nebenschluss zur eigentlichen Wandlereinrichtung vorgesehen sein kann, durch welche Nebenschluss-schaltung dem Taucher die aktuelle Tauchtiefe und die Tauchzeit angezeigt bleibt, jedoch die Dekompressionsbedingungen und die Auftauchzeit gelöscht werden, weil dieselben infolge Abnormverhalten des Tauchers nicht mehr berechnet werden können. Beispielsweise wird bei einem Notaufstieg ohne Einhaltung des vorgeschriebenen Dekompressionshaltes, um den Taucher nicht völlig ohne Information zu lassen, ihm zusätzlich die maximal erreichte Tauchtiefe angezeigt, damit er mittels der Tauchzeit und der maximal erreichten Tauchtiefe nach Eigenimprovisation einen Dekompressionsplan für sich bestimmen kann. Insgesamt ist also eine Ausführung der erfindungsgemässen Anzeigeeinrichtung zweckmässig so konzipiert, dass der Taucher sie bloss mittels des Hauptschalters 9 - vor seinem Eintritt ins Wasser ! - ein- bzw. auszuschalten hat. Danach arbeitet die Einrichtung vollautomatisch und ihre Bedienung reduziert sich auf das Beobachten der Anzeige. Diese Einfachheit der Handhabung wird der Taucher wohl zu schätzen wissen, weil das Konzentrationsvermögen des Tauchers mit zunehmender Tauchtiefe narkotisiert wird und seine Benommenheit zunimmt. Im Extremfall kann die Narkotisierung in einen Tiefenrausch ausarten, der schon manchem Taucher zum tödlichen Verhängnis wurde. Umso wichtiger ist daher eine gut lesbare und verständliche Anzeige, in der nur diejenigen Werte angezeigt werden, die der Taucher wirklich benötigt. Da jeder Taucher in voller Montur oft zahlreiche Geräte mitzunehmen hat, ist es vorteilhaft, wenn die erfindungsgemässe Anzeigeeinrichtung zusätzlich die Funktion anderer Geräte mitübernimmt. So kann damit leicht der herkömmliche Tiefenmesser und die Taucheruhr ersetzt werden. Ebenso hat sie die Funktion des Höhenmessers mit einer Auflösung von wenigstens 100 m zu übernehmen. Ferner soll die Einrichtung programmtechnisch folgendes erfassen, um die Auftauchbedingungen berechnen zu können, ob der Taucher: - sich an Land oder im Wasser befindet; - an der Wasseroberfläche schwimmt; - am Abtauchen ist; - vorschriftsgemäss auftaucht, - schneller als mit lOm/min auftaucht, - zu langsam auftaucht; - ohne oder mit Vorbelastung aus vorangegangenen Tauch gängen taucht; - die abzuarbeitende Tabelle in ihren Werten überschrei tet; - die Nullzeitgrenze überschritten hat; - dekomprimieren muss; - die Dekompression begonnen hat; - die Dekompression vorschriftsgemäss beendet hat; - die Dekompression nicht vorschriftsgemäss beendet; - die Anzeigeeinrichtung - vor dem Einstieg ins Wasser eingeschaltet hat. Wenn in der Anzeigeeinrichtung zusätzlich noch eine Tageszeituhr realisiert ist, so muss die Betriebsbereitschaft der Anzeigeeinrichtung - auch mehrere Tage andauern. Andernfalls würde sich eine Tageszeituhr nicht lohnen. Des weiteren kommt hinzu, dass bei der Berücksichtigung einer Tageszeituhr die Bedienung nicht mehr beim Aus- und Einschalten des Gerätes bleibt, weil diese Uhr auch gesetzt werden kann und unabhängig die Möglichkeit bieten muss, dass der Taucher die Tageszeit lesen kann. Fig. 7 zeigt das Anzeigefeld einer praktischen Ausführungsform der erfindungsgemässen Anzeigeeinrichtung. Wie bereits geschildert, muss die Anzeige in unterschiedlichen Betriebszuständen verschiedene Anzeigen liefern. Die wichtigsten Betriebszustände sind "Decocompute" (Normalfall) und "Out of Range". Diesen Hauptbetriebszuständen sind weitere Betriebszustände unterlagert: 1. Maximale Aufstiegsgeschwindigkeit überschritten ("Ascent-Rate") 2. Countdown für die Dekompressionshalte (Decompression- Countdown", nur dem "Decocompute" unterlagert) 3. Power-Down 4. Software-Error In einer praktischen Ausführung ist die Anzeige mit vier 4-stelligen LCD-Ziffernanzeigen 13-16 und mit drei LED-Anzeiger 10-12 realisiert. LCD-Anzeigen sind zwar wegen ihres geringen Stromverbrauches und der guten Lesbarkeit bei diffusem und gebündeltem Lichteinfall vorteilhafter, doch sind für die wichtigsten Anzeigen LED-Anzeigeeinrichtungen zu wählen, weil in maximaler Tiefe und insbesondere bei Dunkelheit LCD Anzeigen sehr schwer oder nicht mehr ablesbar sind. Um bei den LED-Anzeigen Strom zu sparen, können diese gegebenenfalls getaktet betrieben werden. Beispielsweise würde die Ansteuerung über einen astabilen Multivibrator mit einem Taktverhältnis von 1 : 1 theoretisch bereits 50 % der hiefür benötigten Energie einsparen, doch mag unter Umständen ein geringeres Taktverhältnis von Leucht- und Löschzeit, z.B. 1 : 2 oder 1 : 3, ausreichend sein. Gewünschtenfalls kann hiefür ein Umschalter vorgesehen sein, durch den die LED-Anzeigen oder nur eine Auswahl davon wahlweise von Dauer- auf Taktbetrieb umschaltbar sind. Auch mag im Stromkreis des astabilen Multivibrators ein einstellbarer Widerstand zur Veränderung des Taktverhältnisses vorgesehen sein. Zweckmässig ist dann die Einstellhandhabe für diesen Einstellwiderstand mit der Handhabe für den genannten Umschalter zu einer einzigen Handhabe vereinigt. Bei der Ausführung nach Fig. 7 sind drei LED-Anzeigen 10, 11, 12 vorgesehen, mit denen folgendes angezeigt wird: Die Leuchtdiode 10 leuchtet jeweils auf, sobald die maximal zulässige Auftauchgeschwindigkeit von lOm/min überschritten wird. Mit Hilfe der Leuchtdiode 11 wird angezeigt, dass die Zählung der Dekompressionszeit begonnen'hat. Sie leuchtet auf, sobald die jeweils tiefste Dekompressionstiefenstufe für einen bestimmten Tauchgang erreicht wurde und erlischt mit dem Ende der Dekompression, gleichgültig, ob diese vorschriftsmässig oder unvorschriftsmässig beendet wurde. Allenfalls kann ein unvorschriftsmässiges Verhalten des Tauchers durch Blinksignale dieser Leuchtdiode 11 angezeigt werden. Die Leuchtdiode 12 zeigt an, wenn das Tabellenende der gespeicherten Tabellen aus irgend einem Grunde überschritten wird bzw. die Anzeigeeinrichtung aus einem anderen Grund aus ihrer normalen Funktion kommt. Diese Leuchtdiode 12 kann dann nur mehr dadurch gelöscht werden, dass der Hauptschalter 9 an der Wasseroberfläche kurzfristig ausgeschaltet wird. Aus Fig. 7 ist ersichtlich, dass ausser den LED-Anzeigen 10, 11 und 12 auch noch, insbesondere jeweils vierstellige, Flüssigkristallanzeigen (LCD's) 13 bis 16 vorgesehen sind. Sie dienen zur Anzeige von Zahlen und sind als Segmentanzeigen ausgebildet. Es wurde bereits ausgeführt, dass die Hauptbetriebszustände mit den Namen Decocompute" und Out of Range bezeichnet werden, in welch letzterem Fall die Leuchtdiode 12 aufleuchtet. Dadurch wird angezeigt, dass die Funktion wenigstens der Anzeige Damit Hilfe einer Umschalteinrichtung verändert wurde, d.h. dass die Flüssigkristallanzeige 16 durch Umschalten an einen anderen Signalgeber angeschlossen wurde, welche Möglichkeit in Fig. 7 dadurch ersichtlich gemacht wurde, dass das linke Feld der Anzeige 16 die Beschriftungen DEDEK und DEMAXD trägt. Auf diese Weise wird eine Anzeige eingespart, was sowohl einen kostenmässigen wie auch einen platzmässigen Vorteil bedeutet. Unter Decocompute versteht man den Zustand der Anzeigeeinrichtung, solange sie nach den abgespeicherten Tabellenwerten und deren Abarbeitungsvorschrift arbeiten kann und darf, d.h. - wenn der Taucher die Anzeigeeinrichtung ausserhalb des Wassers (bevor der Taucher sich ins Wasser begibt) ein geschaltet hat; - wenn der Taucher nicht eher an die Oberfläche zurückkehrt, bis als'er nach den angezeigten Dekompressionsbedingungen zu Ende dekomprimiert hat; - solange der Tauchgang die abgespeicherten Tabellen in ihren Maximalwerten nicht überschreitet; und - solange die Anzeigeeinrichtung nicht in einen Software Error läuft. Während des Betriebszustandes "Decocompute" sind folgende Werte anzuzeigen: - Die Gesamttauchzeit, welche vom Beginn des Abtauchens bis zum Erreichen des Oberflächenbereichs verstreicht, in Minuten: DIVET in Feld 13. - Die jeweils aktuelle Tauchtiefe auf halbe Meter genau: DEPTH in Feld 14. - Die Auftauchzeit (inkl. der jeweils vorgeschriebenen Dekompressionszeit) in Minuten: UPDIVT (in Feld 15), die der Taucher in jedem Zeitpunkt des Tauchens zu erwarten hat, wenn er mit der maximal zulässigen Auftauchge schwindigkeit auftaucht. -Die jeweils aktuelle Dekompressionstiefenstufe, das ist- während des Tauchens die jeweils tiefste De kompressionstiefe, und während des Dekomprimierens die jenige Tiefe, auf der gerade zu dekomprimieren ist, auf ganze Meter genau: DEDEK in Feld 16a. - Die aktuelle Dekompressionszeit in Minuten: DEKOT in Feld 16b. Das ist die jeweils vorgeschriebene Dekom pressionszeit auf der Dekompressionstiefenstufe DEDEK. Diese Anzeigen sind aus Fig. 7 ersichtlich, wobei gleichzeitig die Leuchtdiode 12 gelöscht bleibt und die beiden Leuchtdioden 1.1 und 10 nur aufleuchten, wenn die entsprechenden Ereignisse eintreten. Im Hauptbetriebszustand "Out of Range" wirAdie Wandlereinrichtung 5 (vgl. Fig. 6) durch einen Nebenschluss überbrückt (zweckmässig innerhalb eines einzigen integrierten Kreises vorgesehen), so dass die Anzeigeeinrichtung nur noch die Funktion eines Tiefenmessers mit Schleppwert eines zeiger undtTauchzeit-Timers ausführt. Der Anzeigebetrieb "Out of Range" tritt ein, sobald die Anzeigeeinrichtung nicht mehr nach den abgespeicherten Tabellenwerten und deren Abarbeitungsvorschriften arbeiten kann. Im Betriebszustand "Out of Range" werden die Dekompressionszeiten, die Dekompressionstiefen und die Auftauchzeit nicht mehr ermittelt und die bis dahin angezeigten Werte UPDIVT, DEDEK und DEKOT gelöscht. Anstelle DEDEK wird nun im Feld 16 a die vorher ohne Anzeige gespeicherte, maximal erreichte Tauchtiefe: DEMAXD des bis dahin ausgeführten Tauchganges angezeigt. Wie erwähnt, dient dazu eine in der Anzeigeeinrichtung vorgesehene und zweckmässig mitintegrierte Umschalteinrichtung. Falls etwa bei Eintritt dieses Hauptbetriebszustandes die Leuchtdiode 1 aufgeleuchtet haben sollte, verlöscht sie während dieses Betriebszustandes, wie auch die Anzeigen 15 und 16b gelöscht werden. Nur die Leuchtdiode 12 leuchtet ständig, um den veränderten Betriebszustand anzuzeigen, wogegen die Leuchtdiode 10 ihre normale Funktion weiterhin erfüllt. Neben diesen Hauptbetriebszuständen wurden oben noch vier weitere Betriebszustände erwähnt. Hievon wurde bereits erläutert, dass im Betriebszustand "Ascent-Rate, d.h. also bei Ueberschreiten der maximal zulässigen Auftauchgeschwindigkeit die Diode 10 aufleuchtet, und dass mit Beginn des Betriebszustandes "Decompression-Countdown", d.h. mit Beginn der Zählung der Dekompressionszeit ab Erreichen der jeweils untersten Dkompressionsstufe, die Diode 11 aufleuchtet. Der drittgenannte Betriebszustand "Power-Down" ist ein Betriebszustand, in dem die Anzeigeeinrichtung auf das Absinken der Batteriespannung auf einen kritischen Wert aufmerksam machen soll. Praktisch kann dies so geschehen, dass die LCD-Anzeige(n) des jeweiligen Hauptbetriebszustandes, z.B. im 0,5 sek-Takt, blinken, sobald die Batteriespannung unterhalb eines für die nächsten zwei Stunden ausreichenden Wertes abgesunken ist. Wie bereits erläutert, wird durch die Ansteuerung der Anzeigen über einen astabilen Multivibrator Strom gespart, was gerade in diesem Betriebszustand von Bedeutung ist. Unter dem viertgenannten Betriebszustand "Software-Error" ist jener Zustand zu verstehen, in dem aus programmtechnischen Gründen ein Fehler auftritt. Dies setzt voraus, dass die Programme für die Anzeigeeinrichtung entsprechend erstellt sind, d.h. im praktischen Falle sind die Programme so aufgebaut, dass die Anzeigeeinrichtung selbst einen Fehler im zeitlichen Ablauf der Programme erkennen kann und die Anzeige dadurch auf den Betriebszustand Software Error umschaltet. Ab diesem Zeitpunkt sind alle Funktionen der Anzeigeeinrichtung ausser Betrieb. Damit sind alle LCD-Anzeigen gelöscht. Lediglich im Anzeigefeld der Tauchzeit erscheint im ersten Digit ein E zur Kennzeichnung des Errors. Die LED's sind alle gelöscht. Dem Ausführungsbeispiel lagen die nachstehend zusammengefassten Ueberlegungen zugrunde: Zum Arbeiten mit den Tabellen braucht der Rechner die Daten des Tauchganges, im wesentlichen die Tiefe und die Zeit. Die Tiefe wird aus dem Wasserdruck bestimmt, die Zeit wird in einer internen Uhr nachgeführt. In einem Display müssen dem Taucher die berechneten Daten und etwaigen Fehlermeldungen angezeigt werden können. Der Taucher muss die Möglichkeit haben, das Gerät ein- und ausschalten und das Gerät in den Anfangszustand zurücksetzen zu können. Sofern ein Uhrbetrieb vorgesehen ist, muss er die Uhrzeit eingeben und eventuell den Anzeigemodus auf Anzeige der Uhrzeit umschalten können. Bei der zur Erreichung dieser Zielsetzungen erforderlichen Ausgestaltung der Anzeigeeinrichtung ist zu berücksichtigen, dass das Gerät batteriebetrieben sein soll, d.h. es steht eine Betriebsspannung von ca. 5 - 8 V zur Verfügung; jede Spannung darüber oder mit anderem Vorzeichen muss mit dem entsprechenden Aufwand aus der Batteriespannung erzeugt werden; um eine zu schnelle Entladung der Batterie zu vermeiden, muss die Schaltung so ausgelegt wrden, dass sie möglichst wenig Leistung verbraucht. Die Batteriespannung ist zu kontrollieren, und wenn sie unter ein bestimmtes Minimum sinkt, ist dies anzuzeigen; um einen Batteriewechsel im wasser- und drucksicheren Gehäuse zu umgehen, ist zweckmässig ein aufladbarer Akkumulator zu verwenden. Das Gerät sollte in ein bis 100 m Wassertiefe druckfestes Gehäuse eingebaut werden, d.h. Verbindungen nach aussen, wie Ladeanschluss für den Akku, Schalterachsen, u.s.w. stellen einen grossen mechanischen Aufwand dar und sollten auf ein Minimum reduziert werden. Das Herz der Wandlereinrichtung 5 ist ein Mikroprozessor 27, der u.a. - wenn er mit einem Programm belegt wird - als Rechner arbeitet und daher im folgenden meist kurz als Rechner bezeichnet wird. Für eine Ausführungsform der erfindungsgemässen Anzeigevorrichtung wird ein Single-Chipcomputer 8748 von Intel verwendet. Dieser enthält 1k EPROM sowie 64 RAM-Plätze (inklusive Arbeitsregister und Stack), d.h. Platz für 64 Variable. Wenn man davon den Stack und die Arbeitsregister (1 Bank) abzieht, bleiben noch ca. 45 Variable zur freien Benützung. Für die Tabellen und das Programm steht 1k zur Verfügung. Mit zusätzlichen Bausteinen ist der ROM- und RAM-Bereich ausbaubar. Eine Abschätzung der Tabellengrössen ergibt, dass für die Tabellen 3k Zusatzspeicher (ROM) benötigt werden. Der gewählte Rechner verfügt über einen internen Zeitgeber/Zähler, der parallel und unabhängig vom Programm läuft. Diesen Timer/Counter braucht manoum alle Zeitzähler im Programm zu erhöhen, und um das Programm mit der Uhrzeit zu synchronisieren. Das Hauptprogramm kann mit dem Timer/Counter auf folgende Weisen verkehren: - Setzen des Timer/Counter - Abfragen des - Starten des - Stoppen des - Abfragen eines Timerflags, das einen Timeroverflow an zeigt. Der Zeitgeber kann auch direkt über einen Unterbrecher t'Timerinterrupt" (bei jedem Timeroverflow) ins laufende Programm eingreifen. Je nachdem, ob man einen blossen Zähler oder einen Zeitgeber braucht, kann man gemäss der Darstellung in Fig. 8 den Eingang T 1 oder den Rechnertakt (geteilt durch 32 mittels einer Divisionsstufe 23) auf den Timer/Counter schalten. Hiezu sei sinnbildlich ein Umschalter wahlweise mit einer von zwei Klemmen 18, 19 oder einer Stop-Klemme 20 verbindbar. Aus dem Blockschaltbild der Fig. 8 sind auch die wichtigsten Befehle und ihre Wirkungen ersichtlich. Um das Hauptprogramm im 0.5 Sekunden-Takt zu starten, wird der Timer/Counter als Interrupt-Timer geschaltet. Dies bringt mit sich, dass die Quarzfrequenz für den Rechnertakt bestimmt und ein Timerinterrupt-Programm (HTIME) geschrieben werden müssen. Als Quarzfrequenz wird 6MHz gewählt. Die Zyclusfrequenz des Rechners ist 15 mal kleiner als die Quarzfrequenz, also 400kHz. Alle 32 Maschinenzyklen, also alle 80 ,us wird der Interrupt-Timer um 1 erhöht. Der Interrupt-Timer ist ein 8 Bit Register. Durch gezieltes Setzen dieses Registers sind Zeiten zwischen 80 ps und 256 x 80 ps = 20.48 ms realisierbar. Diese Zeiten sind für die vorgesehene Anwendung zu kurz und müssen durch ein Hilfstimerprogramm verlängert werden, das aus 25 Timerinterrupts den 0.5 s Takt generiert. Da der Timerinterrupt ca. alle 20 ms die Kontrolle von irgendeiner Stelle im Hauptprogramm an das Hilfstimerprogramm übergibt, sollte das Hilfstimerprogramm möglichst wenige Register benötigen, da diese vom Hauptprogramm nicht mehr benützt werden können. Mindestens ein Register muss entweder als Hilfstimer oder als Pointer zum Hilfstimer reserviert werden. Es ist ein Programm anzustreben, das für den Hilfs-Timer und für das Setzen des Interrupt-Timers möglichst nur ein Register benötigt. Um ein möglichst einfaches Hilfstimerprogramm zu erhaltene lässt man den Interrupt-Timer einige Male vollaufen und initalisiert ihn jedesmal vor dem Sprung ins Hauptprogramm (für den ersten Durchlauf) mit einem Korrekturwert. Bestimmen des Korrekturwertes für den Interrupt-Timer - Zeitabstand der 24 "normalen" Timerinterrupts: 20.4 ms - Zeit für 24 Timerinterrupts: 24 x 20.48 ms = 491.52 ms - Zeitdifferenz zur halben See.: 500 - 491.52 = 8.48 ms - Benötigte Anzahl Timerinterrupts: 8.48 ms/80 r5 = 106 - Um zur gewünschten Zeit einen Timeroverflow, der ja den Interrupt auslöst, zu erhalten, muss der Interrupt Timer auf 256-106 = 150 initialisiert werden. Auf das ge nannte Hilfstimer-Programm HTIME soll später bei Be schreibung der Programme eingegangen werden. Jedenfalls ist aus obigem ersichtlich, wie in einer praktischen Verwirklichung der an Hand der Fig. 6 beschriebene Zeit geber 7 aufgebaut sein kann. Da die Stromversorgung 8 (Fig. 6) hinsichtlich ihres Aufbaues herkömmlicher Art sein kann, soll darauf im einzelnen nicht näher eingegangen werden und vielmehr an Hand der Fig. 9A und 9B die Eingabe des dritten Eingangswertes, nämlich desjenigen des Druckmessers 6 sowie die übrige Schaltung verdeutlicht werden. Es wurden oben bereits einige Anforderungen an den Druckmesser genannt. Dieser muss überdies see- und salzwasserbeständig sein, muss ein elektrisches Ausgangssignal zur weiteren Verarbeitung liefern, soll ausserdem kleine Abmessungen besitzen und billig sein. Die gebräuchlichsten Systeme für elektrische Druckmessung sind Messdosen mit aufgeklebten Dehnmessstreifen (DMS) und piezoresistive Aufnehmer. Für die erfindungsgemässe Anzeigeeinrichtung wurde ein piezoresistives System gc- wählt, weil dies gegenüber denjenigen mit DMS folgende Vorteile hat: - es liefert ein grösseres Ausgangssignal und erfordert daher nur eine einfachere oder gar keine Verstärker schaltung; - es hat dann auch eine geringere Anfälligkeit für Stör signale wie Thermospannungen etc.; - Das einkristalline Material mit eindiffundierten Wider ständen ist nicht geklebt wie bei den DMS und zeigt da mit eine viel kleinere Hysterese (kein Kriechen des Klebstoffes) und keine Ermüdungserscheinungen (solange die Zelle im Nennbereich betrieben wird). - Die Herstellung nach den Gesetzen der Halbleiterpysik ist einfacher und ermöglicht Grosserienfertigung zu viel günstigeren Preisen. Der gewählte Druckaufnehmer besitzt noch die Vorteile eines Druckbereiches von 0 bis 10 bar und damit eines Messbereiches bis 90 m Wassertiefe und liegt in einem robusten Stahlgehäuse, wobei der Aussendruck auf eine gegen Salzwasser beständige Stahlmembrane wirkt. Das mit Hilfe eines Verstärkers 21 verstärkte kontinuierliche Signal des Druckmessers 6 soll zweckmässig in ein rechnerkonformes, quantisiertes Signal umgewandelt werden, zu welchem Zweck ein Analog/Digitalwandler 22 vorgesehen ist, der das verstärkte Ausgangssignal des Druckmessers 6 erhält. Verwendet wird ein Analog/ Digitalwandler mit 8 Bit Auflösung, weil der Rechner nur 8 Bit parallel verarbeiten kann. Um mit 8 Bit Auflösung im Nullpunkt, zur Messung der Höhe über Meer, genügend genau messen zu können, muss eine Messbereichsumschaltung vorgenommen werden können. Dies ist auf folgende Arten möglich: - durch Umschalten der Verstärkung des Eingangsverstärkers (Differenzverstärkers) 21 gemäss Fig. 9A; - durch Umschalten der Referenz spannungsquelle 39 des Analog/Digitalwandlers 22 gemäss Fig. 9A; - durch Beschalten eines höher auflösenden Analog/Digital wandlers und zwar so, dass je nach benötigter Auflösung entweder die oberen oder die unteren 8 Bit auf den Bus geschaltet werden. Für die Speisung des Druckmessers 6 wäre an sich eine exakte Stromquelle nötig und ebenso wäre eine genaue Referenzspannungsquelle erforderlich. Auf beide stabilisierten Quellen kann aber verzichtet werden, wenn man erkennt, dass der Druckmesser mit der Referenzspannungsquelle 24 praktisch eine Widerstandsbrücke bildet, die sich in an sich bekannter Weise unmittelbar an Betriebsspannung legen lässt, wobei die Referenzspannung der Referenzspannungsquelle 24 mit einem einfachen Widerstandsspannungsteiler ebenfalls an der Betriebsspannung liegt, deren Einflüsse sich so gegenseitig aufheben, wobei das gewonnene Signal am Ausgange des Analog/Digitalwandlers 22 dem des Druckmessers 6 und damit der Wassertiefe exakt proportional ist. Um stabilisierte Referenzquellen einzusparen, wird der Druckmesser direkt an die 5V-Betriebsspannung (statt an 14 V) angeschlossen. Dadurch sinkt das Ausgangssignal des Druckaufnehmers. Dieses Signal ist zu klein für den Analog/ Digitalwandler 22 und muss somit um ca. den Faktor 12 verstärkt werden, so dass es zwischen 0 und 4 V liegt. Der Verstärker 21 muss dann so ausgelegt werden, dass man mit einer Betriebsspannung von nur 5 V auskommt, und dass der Verstärker 21 selbst einem kleinen Eingangssignal nach Null folgen kann (1,normale" Operationsverstärker benötigen meist eine Speisung von + und - 15 V > und das Ausgangssignal kommt nur bis ca. 2 V an die Speisespannung heran). Als Verstärker wurde ein Differenzverstärker 21 gewählt, auf den noch später eingegangen werden soll. Von den weiters aus den Fig. 9A und 9B ersichtlichen Schaltungsteilen sei eine Vergleicherstufe 41 nach der Differenzierstufe 26 mit später noch erläutertem Zweck, und vor allem der Rechner 27 genannt, der zusammen mit einer Speicherstufe 28 (EPROM) den Kern der Wandlereinrichtung zur Umwandlung und Auswahl der aktuellen bzw. der äquivalenten Grundzeit unter Berücksichtigung der übrigen genannten Parameter bildet. Zwischen Speicher 28 und Wandler 27 ist noch ein Zwischenspeicher (latch) zur Adressierung des Speichers 28 geschaltet. Als periphere Komponenten des Rechners 27 sind also vorgesehen: - ein Tabellen- und Programmspeicher, beides in der Speicherstufe 28 - ein Zwischenspeicher (latch) 29 - der Analog/Digitalwandler 22 - die Flüssigkristallanzeigen 13 bis 16 - die Leuchtdiodenanzeigen 10 bis 12 - falls Tageszeitanzeige erwünscht ist, noch zwei Schal ter S3 und S4. Zur Ansteuerung dieser Komponenten verfügt der Rechner 27 über: - einen 8 Bit bidirektionalen Datenbus 42 - 2 statisch aufzuhaltende (gelatchte) I/O-Ports zu je 8 Bit - 2 Testeingänge (wovon, bei entsprechender Programmierung, einer als Eingang für den Zähler (Counter) und der andere als Taktausgang dienen könnte) TO und T1 - einen Interrupteingang 38 Um den Rechner voll auszunützen, und um mit möglichst wenig zusätzlichen Bauelementen (Latches, Drivers, u. dgl.) auszukommen, werden alle Ein- und Ausgabeleitungen verwendet und zwar wie folgt: Der Datenbus wird für den Datentransfer vom Speicher 28 oder vom Analog/Digitalwandler 22 zum Rechner verwendet. Um nicht beide Komponenten gleichzeitig anzusteuern, muss mit einem Steuersignal der richtige Baustein angewählt werden (Steuerleitung: Port 2, Bit 4). Port P1 wird zum Ansteuern des Displays verwendet, und zwar mit folgender Bitbelegung: EMI64.1 Die binäre Chipadresse wird in einem 1 aus 4 Decoder 36 in die Chip-Enable Signale umgewandelt. Da die Daten nur mit jeder positiven Flanke des Chip-Enable Signals vom LCD Decoder-Driver übernommen werden, darf dieses Signal nicht statisch anliegen. Aus diesem Grund wird der 1 aus 4 Decoder mit dem ALE-Signal getaktet. (Das ALE-Signal erscheint einmal während jedem Rechnerzyklus. Port P2 wird zur Pageadressierung des Speichers zur Umschaltung Analog/Digitalwandler 22 - Speicher 28 und zur Ansteuerung der LED's (10-12) verwendet. Bitbel egung: EMI65.1 Pageadresse für Datenzugriff im externen Speicher 4 Bankswitching Analog/Digitalwandler 22 - Speicher 28 5 LED "Decompression -Countdown" 6 Bereichsumschalter Druckmesser 7 LED "Out of Range" Die LED's 10-12 werden dabei über eine später noch beschriebene Sprungerkennungs- und Treiberstufe 35 angesteuert. Die Adresse für einen Wert im externen Speicher 28 wird aus der Pageadresse (Port 2 Bit 0-3) und einer Adresse auf dem Datenbus gebildet. Der Adressteil, der auf dem Datenbus übergeben wird, muss in einem Latch 29 (CMOS Zwischenspeicher) festgehalten werden. Eingänge: Zum Anzeigen, dass die Batterie bald erschöpft ist, wird ein Power-Down-Detektor (Batteriespannungs-Schwel 1 enschalter) TO verwendet. Logisch "O" am Eingang TO bedeutet, der Rechner 27 habe mit einer blinkenden Anzeige den Taucher auf die Beschränkung der noch verbleibenden Zeit hinzuweisen. Somit übernimmt der Rechner 27 auch die Funktion eines astabilen Multivibrators. Wenn eine Uhr realisiert werden soll, sind die Eingänge T1 und 28 zum Setzen der Tageszeit und zum Umschalten des Anzeigemodus zu verwenden. Das Port, sowie Bit 5 und 7des Port P2 des Rechners 27 werden einer aus Fig. 9B schematisch gezeigten Anzeigeschaltung zugeführt, die die drei Leuchtdioden und die vier Flüssigkristallanzeigen beinhaltet, welch letzteren je eine Dekodier- und Treiberstufe 30 bis 33 vorgeschaltet ist. Der Aufbau dieser Dekodier- und Treiberstufen 30 bis 33 ist der Fig. 10 zu entnehmen, die nachstehend kurz beschrieben werden soll. Als Dekodier und Treiberstufe 30-33 (LCD-Decoder-Driver) wurde der Baustein ICM7211 Typ AM von Intersil gewählt. Dieser Baustein enthält einen Oszillator, sowie alle benötigten Decodier- und Treiberstufen zum Ansteuern einer 4-stelligen Anzeige. Als externe Komponente wird ein frequenzbestimmender Kondensator benötigt. Der Typ AM ist mikroprozessorkompatibel und hat einen Code, der es erlaubt, eine Ziffer auszulöschen. Somit besteht die Möglichkeit, in der Anzeige führende Nullen zu unterdrücken. Aus Fig. 10 ist erkennbar: - Die Daten sind ziffernweise mit der entsprechenden Di gitadresse zu übergeben. (Die Digitagresse ist ein 2 Bit BCD-Wort) - Die Chipselectleitung dient der Chipauswahl, wobei eine Datenübernahme nur auf eine positive Flanke auf dieser Leitung hin erfolgen kann. Für diese Schaltung nach Fig. 10 wird ein Code verwendet, der aus Fig. 11 ersichtlich ist. An diesem Code ist folgendes bemerkenswert: - Zum Auslöschen einer Zahl ist lediglich der binäre Wert 1111 an die entsprechende Digitadresse zu senden. - Es besteht bei diesem Code zudem die Möglichkeit, den Buchstaben "E" als Sonderzeichen für eine Fehlermeldung (Error) zu verwenden. Dabei ist in Spalte B der Fig. 11 der Binärcode und in Spalte HD der Hexadecimal-Code angegeben. Nachdem die zuletzt besprochenen Fig. 10 und 11 lediglich zur Erläuterung der sehr schematischen Fig. 9B dienen, sei nun ein Vergleich zwischen dem Detail 39 der Fig. 9A und zwei alternativen Ausführungen gemäss den Fig. 12 und 13 vorgenommen. Bei der Besprechung des Analog/Digitalwandlers 22 wurde oben darauf hingewiesen, dass dieser nur eine Auflösung von 8 Bit besitzt. Ferner wurde festgestellt, dass deshalb eine Umschaltung des Bereiches vorgenommen werden muss. Auf diese Weise kann man mit billigeren Bausteinen, z.B. mit dem 8-Bit-ADC gegenüber einem höheren Bit-ADC, das Auslangen finden. Ebenso kann eine Bereichsumschaltung dann von Vorteil sein, wenn der Druckmesser 6 nicht ohne weiteres zur Messung des Wasser- wie des Luftdruckes in der Lage ist. Für beide Fälle kann eine einzige Umschalteinrichtung Verwendung finden, bei der die Referenzspannungsquelle 24 entsprechend umgeschaltet wird. Es wurde oben bereits darauf hingewiesen, dass zu diesem Zwecke die Verstärkung des Impedanzwandlers 40 in der Weise umgeschaltet werden kann, wie es die Fig. 12 zeigt, und wobei die Referenzspannungsquelle 24' vereinfacht ist Hiebei werden, wie auch in den Fig. 9A (Umschaltstufe 34) und 13 die, zweckmässig als FET-Schalter ausgebildeten, Schalter der Uebersichtlichkeit halber als normale Schalter S dargestellt. Der Grund für die Bevorzugung von FET-Schaltern liegt in folgendem: Um nicht zuviel Energie zu verbrauchen, sollte der Querstrom durch den Spannungsteiler so klein wie möglich gehalten werden. Das heisst: der Spannungsteiler ist so hochohmig wie möglich auszulegen. Um den Spannungsteil er nicht mit dem Eingang des Analog/Digitalwandlers 22 zu belasten, wird der Spannungsteiler über einen Impe danzwandlerran den Analog/Digitalwandler 22 angeschlossen. Eine andere Variante ist aus Fig. 13 ersichtlich, bei der der Spannungsteiler (24") vor dem Impedanzwandler (40) umgeschaltet wird. Der Impedanzwandler 40 kann jeweils der gleiche sein. Beide Varianten (nach Fig. 12 und 13) sind zwar möglich, weisen aber folgende Nachteile auf: - Alle handelsüblichen FET-Schalter sind mit Speisespan nungen von + 15 V und - 15 V zu betreiben; - bei einem "gewöhnlichen" FET ist die Abschnürspannung viel zu grossen Streuungen unterworfen, als dass man einen solchen FET mit CMOS-Pegeln ansteuern könnte; - der einzige verfügbare CMOS-FET-Schalter (4066) kann wegen seinem On-Widerstand von typ. 3-5k, obwohl er nur eine 5V Speisung benötigt, in obigen Schaltkonfigura tionen auch nicht verwendet werden. Daher wurde nach Fig. 9A eine umschaltbare Referenzspannungsquelle 39 gewählt, weil es jene Lösung ist, in der der On-Widerstand des Schalters keinen Einfluss auf die Genauigkeit der Referenzumschaltung hat, wobei ein CMOS-Schalter Verwendung finden kann. Diesem Umstand trägt die Tatsache Rechnung, dass der FET-Schalter der Umschaltstufe 34 jeweils im Eingangszweig des Impedanzwandlers 40 liegt, in dem praktisch kein Strom fliesst, weswegen auch mit keinem Spannungsabfall über den On Widerstand zu rechnen ist. Wie aus Fig. 9A ersichtlich, beinhaltet die Umschaltstufe 34 zwei Schalter S1, S2, die wechselweise geöffnet bzw. geschlossen sind. Dagegen könnte für die Alternativen nach den Fig. 12 und 13 ein Vorteil darin erblickt werden, dass nur ein einziger Schalter S zur Umschaltung erforderlich ist. Für die Wahl der Widerstände wurden folgende Verhältnisse als besonders zweckmässig gefunden: EMI69.1 Dabei kann man mit dem Trimmpotentiometer R4 den Nullpunkt am Druckmesser 6 und über das Trimmpotentiometer R1 der Referenzspannungsquelle 24 des Analog/Digitalwandlers 22 die Empfindlichkeit des Systems einstellen. Wie schon an Hand der Fig. 7 und der Diode 10 erläutert, ist die maximale Auftauchgeschwindigkeit von lOm/min zu überwachen und ein Ueberschreiten derselben anzuzeigen. Diese Ueberwachung kann entweder digital oder analog gelöst werden. In beiden Fällen muss das "Tiefensignal" differenziert werden. Um Platz zu sparen, wäre eine softwaremässige Lösung anzustreben. Um eine einigermassen realistische Anzeige zu erhalten, muss eine Druckänderung über 2-3 digitale Stufen betrachtet werden, da bei jedem digitalen Wert das letzte Bit springen kann. Da eine Tiefenstufe in Wirklichkeit 0.5 m entspricht, muss der Taucher bei einer Auftauchgeschwindigkeit von lOm/min über einen Weg von 1 - 1.5 m, bzw. über einen Zeitraum von 6 - 9 sek. überwacht werden, was bei einem zyklischen Messen im 0.5 sec Takt an die 12 bis 18 Variablen benötigt, deren Differenz kontinuierlich gebildet werden müsste, um das Signal digital differenzieren zu können. Die grosse Anzahl an Variablen, die für diese Differentiation benötigt werden, gibt der analogen Differenzierstufe bei nur 45 überhaupt zur Verfügung stehenden Variablen den Vorrang. Die nun vorgesehene Differenzierstufe 26 erzeugt aus dem Tiefensignal (Wegsignal) ein Geschwindigkeitssignal, das mit einem, dem Grenzwert der Auftauchgeschwindigkeit proportionalen Signal verglichen werden muss. Der Ausgang dieser Vergleichsschaltung steuert dann die Leuchtdioden-Anzeige 10 an. Programme und Betrieb der Anzeigeeinrichtung: Um die Tauchvorgänge mittels der Eingangswerte Druck und Zeit in ihrer Gesamtheit erfassen zu können, ist das gesamte Programm in die vier aus Fig. 14 ersichtlichen Hauptprogramm teile unterteilt. Jeder dieser Programmteile entspricht auch einem Abschnitt des Tauchganges. Ein Taucher kann innerhalb eines Tauchganges diese Abschnitte in der verschiedensten Reihenfolge durchlaufen; das bedeutet, dass die Programmteile auch entsprechend nacheinander ablaufen müssen. Diese Programmteile seien nun im Zusammenhang mit dem Betrieb der Anzeigeeinrichtung erläutert. Mit dem Schliessen des Hauptschalters 9 (Fig. 6) wird die gesamte Elektronik an die Betriebsspannung geschaltet, der Rechner 27 (Mikroprozessor) wird aufgeschaltet, wobei er den Programmzähler auf Null setzt, und dort auf die Adresse des Restart-Programmes (RSTART) springt. Das Restart-Programm initialisiert alle Variablen, Timer und Counter auf ihre Anfangswerte. Am Ende des Restart's wird der Interrupt-Timer initialisiert, enabled und gestartet. Alle 0.5 Sekunden wird jetzt das Hauptprogramm vom Hilfstimer-Programm (HTIME) neu gestartet und läuft dann wie folgt ab: Der Druck wird im Programmteil PSNORC erfasst und danach die Kontrolle an das Check-and Set-Programm (CHKSET) übergeben. Der Programmteil CHKSET führt alle Timer und Counter entsprechend nach und übergibt die Kontrolle an einen der Programmteile Oberflächenbereich (SURFAC) Tauchen (DIVE) Auftauchen (DIVEUP) Dekomprimieren (DECO) Anzeige (DISPLY) Der Programmteil DISPLY bedient die Anzeige und geht danach in einen Wait-Loop über, der nie fertig ablaufen darf, da vorher der Hilfstimer das Hauptprogramm neu starten muss. Wird der Wait-Loop trotzdem einmal fertig (nach ca. 1.5 Sekunden), so läuft das Programm im Software-Error auf. Damit alle Programme richtig arbeiten können, wird noch eine Subroutinensammlung (LIB) benötigt. Diese Subroutinen werden von den diversen Programmen einzeln aufgerufen. Auf die Beschreibung der einzelnen Programmteile sei an Hand der Fig. 16 eingegangen. Vorerst sei jedoch an Hand der Fig. 15 noch einiges über den Aufbau der Speicher eingeschoben: Da der Rechner 27 nur über ein 8 Bit Indexregister verfügt und der externe Speicher nur indiziert ausgelesen werden kann, muss er (entsprechend dem Indexpointerbereich) in Pages zu 256 Byte aufteilt werden. Die Tabellenspeicherung muss deshalb auch pageweise erfolgen, und zwar für alle 5 Tabellen (für die einzelnen Höhenstufen über Meer) gleich, damit die Tabellen mit den gleichen Programmen gelesen werden können. Bei dieser Abspeicherung entstehen zwangsweise "Löcher" im Speicher, da die Daten ja nicht immer eine volle Page benötigen. Diese Löcherbildung wird durch die unterschiedlichen Tabellenlängen verstärkt. (Die Tabellelänge nimmt mit zunehmender Höhenstufe über Meer ab). Wenn man dies alles berücksichtigt, benötigen die 3k Tabellenwerte ca. 4k Speicher, das heisst: eine Höhenstufe benötigt 3 Pages oder 3/4 k. Wenn man also 4k ROM verwendet, bleibt noch 1 Page (256 Bytes) für andere Daten oder Programme übrig. Es wurde bereits erwähnt, dass der Rechner 27 (Fig. 9A) einen internen lk-Speicher besitzt. Angesichts der grossen Zahl der zu verarbeitenden Daten und des Umfanges des hiezu benötigten Programmes reicht dessen Kapazität aber für die Programmabspeicherung keineswegs aus. Um keine zusätzlichen Bausteine mehr verwenden zu müssen, werden die 4k EPROM so beschaltet, dass sie als Programmund Datenspeicher verwendet werden können. Da das gesamte Hauptprogramm inklusive allen Subroutinen über 2k Speicherplatz benötigt, bleiben für die abzuspeichernden Tabellen etwas mehr als 2k übrig. Darin können 3 Tabellen untergebracht werden. Weil der normale Sporttaucher in der Regel nicht in Höhen von mehr als 2000 m über Meer taucht, werden nur die 3 Tabellen der Höhenstufen O - 700 m, 701 - 1500 m, 1501 - 2000 m abgespeichert. Die Speicherbelegung sieht dann entsprechend Fig. 17 aus, wobei die erste Hälfte des Programmes im internen Speicher 17a des Rechners 27 (Fig. 9A), die zweite Hälfte des Programmes in 17 b, die Subroutinen in 17c und die Tabellen in 17d bis 17f des Speichers 28 untergebracht werden. An Hand der Pages 7 bis 9 im rechten Teil der Fig. 15 wird z.B. gezeigt, dass die Page 7 (17g), 1. Hälfte der Dekompressionstabelle, die Page 8 (17h) die 2. Hälfte der Dekompressionstabelle und die Oberflächeninterval.ltabelle, und die Page 9 (17i) schliessiich die Nullzeittabelle und die Repetitivtabelle beinhaltet. Die Abspeicherung der Tabellen erscheint zwar mühselig, ist jedoch hinsichtlich der verwendeten Bauteile jedenfalls günstiger, als wenn man mit Hilfe der Abspeicherung nur gesetzmässiger Zu sammenhänge (soweit dies überhaupt möglich ist) die Anzeigewerte errechnen wollte. Um die Tabellen auslesen zu können, muss ein Konzept für die Datenstrukturen und die Tabellenabarbeitungsroutinen erstellt werden. An Hand der Fig. 15 wurde gezeigt, dass die einzelnen Tabellen in bestimmten Pages im Speicher untergebracht sind. Dies ist durch die beschränkten Adressierungsmöglichkeiten und durch die Forderung gegeben, dass alle Tabellen mit denselben Subroutinen auszulesen sind. Nun ist nur noch die Anordnung der einzelnen Werte in jeder Tabelle festzulegen, und zwar so, dass zu jedem Wert möglichst rasch und einfach zugegriffen werden kann. (Das Anwählen der richtigen page und Tabelle ist später beschrieben). Im Tabellenspeicher ist nur eine lineare Darstellung möglich, d.h. alle Tabellen, ob sie nun linear (wie die Nullzeittabelle), zweidimensional (wie die Repetitivgruppentabelle) oder gar dreidimensional (wie die Dekompressionstabelle) sind, müssen auf eine lineare Form gebracht und abgespeichert werden. Um eine mehrdimensionale Tabelle linear darzustellen, sind in der Tabelle Positionsmarken (Identifiers) für Zeilenende, Tabellenende etc. einzufügen. Um eine möglichst kleine Tabelle zu erhalten, ist zu versuchen, mehrere Werte oder einen Wert und einen oder mehrere Identifiers gemeinsam in einem Speicherplatz unterzubringen. Zum Arbeiten mit der Dekompressionstabelle werden folgende Routinen benötigt: - Mit der maximalen Tiefe und der Bottomzeit sind die Summe der Dekompressionszeiten für einen Tauchgang, die Repetitivgruppe und die Tiefe des 1. Dekompressions haltes zu bestimmen. - Mit der Tiefe, der Bottomzeit und der momentanen Dekompressionstiefe ist die Dekompressionszeit auf dieser Tiefe zu bestimmen. - Mit der aktuellen Tiefe ist die dazugehörende Tiefen stufe (gemäss der Dekompressionstabelle) zu bestimmen. Mit den Eingangswerten Tiefe und Bottomzeit muss also jedesmal eine Zeile in der Tabelle ausgewählt werden. Die Tabelle muss also mit Zeit- und Tiefenstufenidentifiers ausgestattet werden, und zwar so, dass die Identifiers einfach gefunden und mit den Eingangswerten verglichen werden können. So wurde die aus Fig. 15A ersichtliche Datenanordnung gewählt, in der STID einen Tiefenstufenidentifier, ZID einen Zeitstufenidentifier, RG die Repetitivgruppe, ZEND eine Zeilenendemarke, STEND eine Tiefenstufenendemarke und TABEND eine Tabellenendemarke bedeutet. Nun ist an den vorhandenen Tabellen folgendes bemerkenswert: - Mit einer Ausnahme sind alle Werte kleiner als 64. - Alle Tiefenstufen sind mit einer Ausnahme (12m) Vielfache von 5. Der grösste Wert ist 70. - Die Bottomtimestufen sind ebenfalls Vielfache von 5, grösster Wert 250. - Die Repetitivgruppen gehen von A bis L. Setzt man diese in Zahlen um und setzt auch für den Fall, wo keine Repetitivgruppe vorhanden ist, einen Wert (M) ein, so gehen die Werte von 1 bis 12. - Der Wert 0 kommt nie vor. Berücksichtigt man obige Erkenntnisse, so ergibt sich folgendes Packungskonzept: - Man lässt die Zeile, in der die Dekompressionszeit 70 min (einziger Wert grösser als 64) vorkommt, weg. - Die Tiefenstufenidentifiers werden durch 5 dividiert abgespeichert. (Ausnahmeregel für die Tiefenstufe 12 m). - Die Bottomtimestufenidentifiers werden ebenfalls durch 5 dividiert abgespeichert. Wird dies konsequent durchgeführt, so sind alle Werte kleiner als 64 und lassen sich in 6 oder 8 Bits darstellen. Das heisst: 2 Bits sind frei für Identifiers und Marken. Gewählte Identifiers: ZEND: Bit 6 gesetzt STEND: Bit 7 gesetzt TABEND: Wert 0, da dieser Identifier in allen Tabellen der gleiche sein muss. Die MarkenZEND und STEND lasssen sich somit mit der Repetitivgruppe (die ja immer am Zeilenende steht) zusammen abspeichern. Die Datenanordnung der Dekompressionstabelle sieht nun entsprechend Fig. 15B aus. Der wichtigste Teil der Programme zum Lesen der Dekompressionstabellen: Das Auswählen einer Zeile kann mittels "Durchblättern" der Tabelle und Vergleichen des in der Tabelle abgespeicherten Identifier mit den Eingangswerten relativ einfach realisiert werden. Auslese-Programm (Auswählen einer Zeile in "Pseudo-Pascal") SET POINTER TO 1. TABELLENWERT ; 1. Tiefenstufenid. FETCH WERT(POINTER) DO WHILE TIEFENSTUFENID. < UMGERECHNETE EINGANGSTIEFE BEGIN: DO WHILE NOT STEND BEGIN: INCREMENT POINTER FETCH WERT(POINTER) END INCREMENT POINTER FETCH WERT(POINTER) ; Tiefenstufenid. END ICREMENT POINTER FETCH WERT(POINTER) ; Zeitidentifier DO WHILE ZEITIDENTIFIER < UMGERECHNETE EINGANGSZEIT BEGIN: DO WHILE NOT ZEND BEGIN: INCREMENT POINTER FETCH WERT(POINTER) END INCREMENT POINTER END Der Pointer zeigt nun auf den 1. Wert der gewünschten Zeile Aufbauend auf diesem Programmteil lassen sich die gewünschten Werte leicht bestimmen: - Die Tiefe des 1. Dekompressionshalts ist der 1. Wert in der angewählten Zeile. - Die Summe aller Dekompressionszeiten für einen Tauchgang ist die Summe aller Werte zwischen Anfang der angewählten Zeile und der ZEND-Marke. - Die Repetitivgruppe steht im gleichen Speicherplatz wie die ZEND-Marke. - Aus der aktuellen Dekompressionstiefe kann man die Position einer Dekompressionszeit innerhalb der Zeile und damit deren Wert bestimmen. Zum Auslesen von Werten aus der Dekompressionstabelle wurden folgende 3 Subroutinen geschrieben: BDECOW: Bestimmt folgende Werte: Summe der Dekompressionszeiten eines Tauchganges, Tiefe des 1. Dekompressionshaltesn Dekompressionszeit des 1. Dekompressionshaltes. BDEKOT: Bestimmt die Dekompressionszeit für eine bestimmte Dekompressionstiefenstufe. BRPDEC: Bestimmt die Repetitivgruppe in der Dekompressions tabelle. Das Auswählen einer Zeile geschieht im wesentlichen in der Subroutine XDECTB, die in den obigen Subroutinen verwendet wird. Das Umrechnen einer aktuellen Tiefe in die dazugehörende Tiefenstufe wird, da hier im wesentlichen nur Vielfache von 5 vorkommen, mit einer Rundungsformel in der Subroutine BDEST, ohne Verwendung der Dekompressionstabelle, gelöst. Repetitivtabellen: Zum Arbeiten mit der Repetitivtabelle werden folgende Routinen benötigt: - Mit der Tiefe und der Repetitivgruppe ist der Zeit zuschlag zu bestimmen. - Mit der Tiefe und der Zeit ist die Repetitivgruppe zu bestimmen. - Mit der aktuellen Tiefenstufe ist die nächsttiefere Tiefenstufe (bezüglich Repetitivtabelle) zu bestimmen. Daher ist mit der einen Eingangsgrösse - Tiefe - die Position des Wertes in der Zeile bestimmbar. Die zweite Eingangsgrösse ist entweder die Repetitivgruppe, die richtig gewählt gerade die Nummer der Zeile angibt, in welcher der Zeitzuschlag zu finden ist; oder die Zeit, mit der man durch Vergleichen mit dem Wert in der Tabelle die Zeile finden kann, deren Position der Repetitivgruppe entspricht. Unter Berücksichtigung dieser Erkenntnisse wurde eine Datenanordnung gewählt, die keine Identifiers, sondern nur noch Zeilenende-Marken enthält. Die Position eines Wertes in der Repetitivgruppe ist bekannt, wenn die Zeile und die Spalte, in welchen der Wert steht, bekannt sind. Die Spalte entspricht der Position des Wertes innerhalb einer Zeile. Um diese Position des Wertes innerhalb einer Zeile bestimmen zu können, wird die Kopfzeile der Repetitivtabelle (die Zeile mit den Tiefenstufen) vor den eigentlichen Daten, durch eine TABEND-Marke getrennt, als Pointerzeile abgespeichert. Die Position des gewünschten Wertes in der Zeile lässt sich nun durch Vergleichen des Eingangswertes "Tiefe" mit den Werten in der Pointerzeile bestimmen. Eine Identifizierung der Zeile ist nicht nötig, da die Repetitivgruppe so gewählt wurde , dass sie mit der Position der Zeilen in der Tabelle übereinstimmen. Die gewählte Datenanordnung der Repetitivtabellen ist hinsichtlich der Pointerzeile der Fig. 15C und hinsichtlich der Tabellenwerte der Fig. 15D zu entnehmen. Die Daten der Repetitivtabelle werden linear, beginnend mit der Kopfzeile abgespeichert. Der Programmteil zum Lesen der Repetitivtabelle, nämlich das Bestimmen der Position eines Wertes innerhalb einer Zeile kann durch Vergleichen der Eingangstiefe mit der Pointerzeile realisiert werden. Zur Bestimmung der Position innerhalb der Zeile ergibt sich in "Pseudo-Pascal" folgendes: SET POS = 1 SET POINTER TO BEGIN OF POINTERTAB. FETCH WERT (POINTER) DO WHILE WERT (POINTER) < EINGANGSTIEFE BEGIN: INCREMENT POINTER INCREMENT POS FETCH WERT (POINTER) END In der Variabeln POS ist nun die Position des Wertes innerhalb der Zeile enthalten. Tatsächlich wird die Variable POS nicht "hochgezählt", sondern aus der Differenz des Pointerwertes am Anfang und am Ende dieses Programmteiles bestimmt. Aufbauend auf obigem Programmteil lassen sich die gewünschten Werte leicht bestimmen: - Den Zeitzuschlag kann man bestimmen, indem man den Pointer um die Anzahl Zeilen vorwärts bewegt. "Pseudo-Pascal"-Programm dazu: DO WHILE REP. GRUPPE / O BEGIN: DO WHILE NOT ZEND BEGIN: INCREMENT POINTER FETCH WERT (POINTER) END DECREMENT REP.GRUPPE END POINTER = POINTER + (POS. IN DER ZEILE - Die Repetitivgruppe liest sich bestimmen, indem man in jeder Zeile den Wert in der richtigen POS liest, und mit der Eingangszeit vergleicht. "Pseudo-Pascal"-Programm dazu: SET POINTER TO BEGIN OF DATA HILFSPOINTER = POINTER + (POS. IN DER ZEILE FETCH WERT (HILFSPOINTER) DO WHILE WERT (HILFSPOINTER) < ZEIT BEGIN: DO WHILE WERT (POINTER) 3t ZEND BEGIN: INCREMENT POINTER FETCH WERT (POINTER) END HILFSPOINTER = POINTER + (POS. I. D. ZEILE) END Die nächsttiefere Tiefenstufe lässt sich in der Pointerzeile ohne Verwendung der weiteren Tabellenwerte bestimmen. Man bestimmt einfach die Position in der Zeile und liest den nächsten Wert, jedoch in der Pointerzeile selbst. Zum Auslesen von Werten aus der Repetitivtabelle wurden folgende Subroutinen geschrieben: BZZU: Bestimmen des Zeitzuschlages BRPGUW: Bestimmen der Repetitivgruppe (unter Wasser) BDESTN: Bestimmen der nächsttieferen Tiefenstufe Das Bestimmen der Position innerhalb der Zeile geschieht im wesentlichen in der Subroutine XREPTB, welche von den 3 obigen Subroutinen verwendet wird. Die Nullzeittabell wird auf die gleiche Weise abgespeichert und ausgelesen wie die Repetitivtabellc. Somit wird eine Pointerzeile und (im Gegensatz zur Repetitivtabelle) nur eine Datenzeile abgespeichert. Zum Auslesen wird somit (wie bei der Repetitivtabelle) zuerst die Position in der Zeile und damit die gesuchte Null zeit bestimmt. Betrachtet man dagegen die Oberflächenintervalltabelle, so erkennt man, dass die Differenz von Spalte zu Spalte in jeder Zeile ungefähr gleich ist. Dies ist auch verständlich, weil ein Taucher immer nach einer bestimmten Zeit von einer Repetitivgruppe in die nächsttiefere kommt, und diese Zeiten unabhängig von der Anfangsgruppe gleich sein sollten. Aus diesem Grund wird anstelle der ganzen Tabelle nur die unterste Diagonale abgespeichert. Da diese Tabelle nur mit den Repetitivgruppen arbeitet und nur eine (Diagonal-) Zeile abgespeichert wird, kann man diese so abspeichern, dass die Repetitivgruppe gerade der Position in der Zeile entspricht. Das Arbeiten mit dieser Tabelle ist unter diesen Umständen denkbar einfach: Man geht mit der Oberflächenintervallzeit (gemäss der Repetitivgruppe) in die Tabelle und vergleicht sie mit dem dort abgespeicherten Wert. Sobald die beiden Werte gleich sind, wird die Oberflächenintervallzeit auf 0 gesetzt und die Repetitivgruppe um 1 erniedrigt. Bisher wurde nur beschrieben, wie innerhalb einer Tabelle ein bestimmter Wert gesucht wird. An dieser Stelle soll nun erklärt werden, wie die Page gefunden wird, in der die Tabelle im externen Speicher liegt, und wie man innerhalb dieser Page den Pointer auf den Anfang der Tabelle setzt. Zum Auswählen der Tabelle muss, abhängig von der Höhenstufe, ein Offset bestimmt werden, welcher der Page der ersten Tabelle für diesen Bereich entspricht. Zu diesem Offset muss noch ein weiterer Offset addiert werden, welcher der Position der Tabelle im Tabellensatz entspricht. Die Summe dieser zwei Offsets ist als Pageadresse an die untersten 4 Bits von Port 2 anzulegen. Ist auf diese Weise die Page bestimmt, muss noch die Tabelle gewählt werden, da manchmal 2 Tabellen in einer Page untergebracht sind. Deshalb muss man, wenn die Tabelle nicht am Anfang der Page steht, die Werte in der Page bis zur ersten TABEND Marke durchblättern", um den Pointer auf den Beginn der 2. Tabelle zu setzen. Zum Finden des Tabellenanfanges wurde die Subroutine FNEXTT geschrieben, die einen Speicherbereich auf die TABEND-Marke hin absucht und den Pointer auf den Wert hinter dieser Marke setzt. Aus den bisherigen Erklärungen der Anzeigeeinrichtung selbst ging hervor, dass diese auf zwei Arten von Fehlern reagieren soll, und zwar auf: Out of Range: Wenn der Taucher in einem (örtlichen oder zeitlichen) Bereich taucht, der mit den Tabellen nicht mehr abgedeckt ist; Software-Error: Wenn der Rechner bei einer Rechnung in einen Over- oder Underfiow läuft oder der Timer ausfällt. Um diese Fehler zu erkennen5 werden in allen Tabeilenab- arbeitungsroutinen: - Die Grenzen der Tabellen überwacht und bei einem Ueber schreiten dieser Grenzen wird das Out of Range-Flag gesetzt. - Bei jeder Multiplikation wird das Resultat überwacht, und wenn es nicht mehr in 8 Bit darstellbar ist, wird das Software-Error-Flag gesetzt. - Ebenso würde bei einer Division das Resultat überwacht, bzw. es würde überwacht, ob eine Division durch Null durchgeführt wird. Diese Ueberwachung erübrigt sich aber in unserem Fall, da nie eine Division durch Null vor kommen kann. Der Divisor wird nämlich immer ein Befehl vor dem Aufruf der Divisionsroutine mit einer Konstanten, die immer grösser als Null ist, geladen. Nachdem nun die Abspeicherung und Handhabung der Tabellen erläutert wurde, soll der Programmablauf und die Programmstruktur beschrieben werden. Die darin erwähnten Tabellen 11 bis 18,und 20 bis 22 finden sich am Ende der Beschreibung. Jedes Hauptprogramm ist durch die Programmdokumentation und das zugehörige Flussdiagramm beschrieben. Die Programmdokumentation ist so aufgebaut, dass sie das Flussdiagramm verbal beschreibt und zwar deckungsgleich. Mittels des Flussdiagrammes und der Programmdokumentation ;iässt sich also jede gewünschte Stelle im Assembler-Code rasch und leicht finden. Nach der in Fig. 16 dargestellten Programmstruktur beginnt das Programm nach dem Einschalten des Hauptschalters 9 (vgl. Fig. 6) mit dem Restart-Programm RSTART. Dieses läuft nach der Tabelle 11 ab Alle 0.02 sec wird das Hilfstimerprogramm HTIME nach Tabelle 12 abgearbeitet, welches dabei den 05 sec Takt generiert, mit dem es zyklisch das Hauptprogramm, beginnend mit dem Programmteil Druckerfassen-PSNORC, alle 0.5 sec neu aufstartet. Um das Eintauchen ins Wasser mittels einer Druckänderung erfassen zu können, muss dieselbe 0.02 bar in einer Sekunde sein. Die Druckänderung von 0.02 bar entspricht 200 m Luftsäule. Zwar kann kein Mensch 200 m Luftsäule ohne Düsenantrieb in einer Sekunde hinter sich bringen, doch erreicht der Taucher eine Druckänderungsrate von 0.02 bar/s dann, wenn er von der Luft ins Wasser überwechselt. Lediglich 20 cm Wassersäule genügen, um den Druck von 0.02 bar zu erzeugen und jeder Taucher wird innerhalb einer Sekunde beim Eintritt ins Wasser 20 cm tief eintauchen. Diese 20 cm Wassersäule ergeben sich einerseits aus der Auflösung des Druckmessers 6 und andererseits daraus, dass die Druckänderung mindestens 2 digitale Quanten gross sein muss. Falls die Anzeigeeinrichtung fälschlich erst unter Wasser eingeschaltet wurde (ein Abnormfall), wird dies durch einen Test erkannt, der feststellt, ob der erstgemessene Druck grösser als 1,2 bar ist. Dies ist deshalb von Bedeutung, weil in einem solchen Falle der Luftdruck nicht im voraus bestimmt werden könnte. Grund für die Wahl der Grenze von 1,2 bar ist, dass der Luftdruck auf Meeereshöhe höchstens 1,06 bar gross werden kann. Scheidet man den Fall, dass der Taucher in einem Siehe taucht, dessen Höhe unter der des Meeresspiegels liegt, aus, so kann ohne weiteres der Test auf 1,2 bar gemacht werden Falls also tatsächlich der Hauptschalter 9 erst unter Wasser betätigt wird, so arbeitet die Anzeigeeinrichtung unter der Annahme, dass der Luftdruck am Tauchort = 1 bar sei. Ab diesem Zeitpunkt ist der Tiefenmesser der erfindungsgemässen Einrichtung nur noch so gut, wie die meisten herkömmlichen Tiefenmesser, die zwischen Tauchen in Bergseen und dem Meer nicht unterscheiden. 1 bar entspricht dabei dem Luftdruck auf Meereshöhe und ist somit für unser System der Nullpunkt, von welchem aus entweder die Wassertiefe oder die Höhe über Meer bestimmt wird. Der Programmablauf des Programmteiles PSNORC ist im einzelnen aus Fig. 17 sowie aus Tabelle 13 ersichtlich. Dabei bedeuten: 43 einen Test, ob die Anzeigeeinrichtung unter Wasser eingeschaltet wurde; 44 einen Test, ob der Taucher in das Wasser eingestiegen ist; und 45 eine Umrechnung des Druckes, damit er der Verstärkung = 1 angepasst wird. An dieser Stelle sei eingeflochten, dass 10 bar im Rechner 27 bzw. im Analog/Digitalwandler 22 jeweils 200 Bit entsprechen, so dass ein Bit eine Auflösung von 0,5 m ergibt. Damit ist auch der Tiefenmesser auf 0,5 m genau, womit die Aufbereitung der Daten für die Verwendung in den Tabellen sehr einfach wird, da die digital ermittelte Tiefe durch zwei dividiert genau der wirklichen Tiefe in Metern entspricht. Das Verhältnis von 10 : 200 bedeutet aber, dass der im Rechner weiterverarbeitete Zahlenwert des Druckes gegenüber dem wirklichen Druck um den Faktor 20 zu gross ist. Ferner sei erwähnt, dass die Berechnung der Tauchtiefe mittels den Drücken PNEU und PNULL reduziert wird auf: DEPTH: = (PNEU-PNULL) Das bedeutet, dass die im Rechner geführte Tauchtiefe gegenüber der wirlclichen Tauchtiefe um den Faktor 2 grösser ist. Aus Fig. 16 ist weiters ersichtlich, dass auf den Programmteil PSNORC das Programm CHKSET folgt, dessen Einzelheiten aus Tabelle 14 entnommen werden können. An dieser Stelle sollte auch das aus Fig. 16 ersichtliche Library-Programm besprochen werden. In diesem Programmteil sind sämtliche verwendete Subroutinen untergebracht. Dies sind: - Alle oben beschriebenen Tabellenabarbeitungsroutinen. - Einige mathematische Programme. In diesem Sinne verfügt das Library-Programm über: - Eine Subtraktion mit direktem Zugriff zum Minuenden. - Eine Subtraktion mit indirektem Zugriff zum Minuenden. (Beide Subtraktionen übergeben im Carry-Bit die Vorzeichen information und sind so auch für den Vergleich zweier Zahlen verwendbar.) - Eine Multiplikation mit direktem Zugriff zum Multiplier. (Diese Multiplikation von 8 x 8 Bit liefert ein 16-Bit Resultat. Das 16-Bit-Resultat aus Lower-8-Bit und Upper 8-Bit wird lediglich im Hauptprogramm DISPLY verwendet, sonst wird nur mit den Lower-8-Bit gerechnet.) - Eine Division mit direktem Zugriff zum Divisor. (Die Ur sprüngliche 16-Bit durch 8-Bit Division wurde in eine 8-Bit durch 8-Bit Division abgeändert, da der Rechner mit 8-Bit Werten arbeitet. Um einen Fehler zu testen, kann das Carry-Bit herangezogen werden, welches im Falle eines Overflows gesetzt ist.) Eine Subroutine, welche 8 Bit-und 16-Bit-Binärzahlen in BCD-Zahlen wandelt, um die anzuzeigenden Werte im BCD-Code an die Anzeige aussenden zu können. Zudem erkennt diese Subroutine führende Nullcn und setzt anstelle der führenden BCD-NuII das iFj-Hex, damit dem in Fig. 11 verlangten Code für das Blank Rechnung getragen wird. Von Vorteil wäre es an sich, wenn die Library nicht als zusammenhängender Programmblock abgespeichert wird, sondern vielmehr die einzelnen Subroutinen so ins Hauptprogramm eingefügt werden, dass möglichst viele Pages ausgenützt sind, d.h. dass wenig "Löcher" im Programmspeicher entstehen und wenig Page-Sprünge nötig werden. Dennoch ist dies für den beschriebenen Programmaufbau gerade nicht zu empfehlen, weil das Gesamtprogramm ca.2 1/4 K Memory beansprucht, d.h. es muss mit Memory Bank-Switching gearbeitet werden. Der Einfachheithalber setzen wir alle Subroutinen hinter die 2 K-Grenze, damit lediglich vor und nach jedem Call "Subroutine" die Memory-Bank umgeschaltet werden muss und das Hauptprogramm nie über die 2 K-Grenze hinausläuft, was tunlichst zu vermeiden ist, weil dadurch das Memory-Bank-Switching wesentlich kompliziert wurde. Noch im Programmteil CHKSET wird je nach den im Rahmen dieses Programmes ermittelten Werten bzw. Wertdifferenzen die Entscheidung getroffen, welches der in Fig. 16 dem Programmteil CHKSET nachgereihten Programme abgearbeitet werden muss. Der Ablauf des Programmteiles SURFAC ist der Fig. 18 sowie der Tabelle 15 zu entnehmen. Details des Programmteiles Tauchen, DIVE, sind aus der Tabelle 16 ersichtlich. Dabei bedeuten 46 einen Test, ob der Taucher schnorchelt; 47 einen Test, ob der Taucher das Wasser verlässt; 48 einen Test, ob der Taucher in das Tauchen übergewechselt ist; 49 einen Test, ob sich der Taucher in einem Oberflächenintervall befindet; und 50 einen Test, ob die Repetitivgruppe Null geworden ist. Programm Auftauchen, DIVEUP: Um das Auftauchen mit einer minimalen Geschwindigkeit von Sm/min kontrollieren zu können, muss der Taucher über einen längeren Zeitraum beobachtet werden. Dieses "Beobachten" besteht darin, dass kontrolliert wird, ob sich der Taucher im 'tAuftauch- kegel" befindet. Unter dem Auftauchkegel versteht man den Bereich, den der Taucher im Zeitraum von 30 Sekunden zurücklegt, dabei mindestens 4 m in Richtung der Senkrechten auftaucht und nicht unter die Tiefenstufe abtaucht, in der mit dem Auftauchen begonnen wurde. Alle 30 Sekunden wird ein neuer Auftauchkegel gesetzt, sofern der Taucher bis anhin den Auftauchkegel nicht verlassen hat und weiter auftaucht. Der Ablauf dieses Programmes ergibt sich aus der Tabelle 17. Das Programm Dekomprimieren, DECO ist in Tabelle 18 näher beschrieben. Alle diese Programme führen, wie sich an Hand besonders der Fig. 7 erkennen liest, zu irgend einer Art von Anzeige, der das Programm Anzeige, DISPLY zugeordnet ist. m die vier Anzeigen 13 bis 16 (vgl. Fig. 7, 9B) mit vierstelligen Ziffernanzeigen ansteuern zu können, müssen insgesamt 16 Digits adressiert werden. Diese 16 Digits werden durch ein vierstelliges (4-Bit)-Code-Wort adressiert, das die aus Tabelle 19 ersichtliche Struktur hat. So lautet das Codewort für die Anwahl des Digit Nr. 3 in der Anzeige 15: CB)Hex Tabelle 19: EMI90.1 <tb> <SEP> Digit <tb> Anzeig <SEP> < <SEP> O <SEP> 1 <SEP> 2 <SEP> 3 <tb> <SEP> Nr. <tb> <SEP> 13 <SEP> O <SEP> 1 <SEP> 2 <SEP> 3 <tb> <SEP> 14 <SEP> 4 <SEP> 5 <SEP> 6 <SEP> 7 <SEP> \ <SEP> Hex <SEP> Code <tb> <SEP> 15 <SEP> 9 <SEP> t? <SEP> A <SEP> B <tb> 16 <SEP> 16 <SEP> C <SEP> D <SEP> E <SEP> F <tb> Durch diese Struktur des Code-Wortes ist es sehr einfach, die einzelnen Anzeigewerte an die Anzeige auszusenden. Man kann jetzt nämlich einen Display-Counter (DISPCO) von Null nach 15 hochzählen und dabei jedesmal das betreffende Digit im BCD-Code an die Anzeige aussenden. Die Tabelle 20 veranschaulicht das Flussdiagramm dieses Programmteiles. Nachdem nun die einzelnen Programmteile beschrieben wurden, sei noch auf Tabelle 21 verwiesen, in der alle Programmteile in einem Speicherbelegungsplan für die Programmabspeicherung wiedergegeben sind. Hiezu findet sich in der Tabelle 22 eine Liste aller verwendeten Variablen und Subroutinen. Ferner seien an Hand der folgenden Tabellen 23 und 24 die Status-und Flag-Konventionen wiedergegeben. Tabelle 23: EMI91.1 <tb> Status <SEP> Bedeutung <SEP> Zus <SEP> Port <SEP> <SEP> 2 <tb> SURFAC <SEP> AT <SEP> Surface <SEP> STATRG <SEP> Bit <SEP> 0= <SEP> 1 <tb> DIVE <SEP> AT <SEP> Dive <SEP> " <SEP> <SEP> " <SEP> <SEP> 1= <SEP> 1 <tb> DIVEUP <SEP> AT <SEP> Diveup <SEP> " <SEP> <SEP> " <SEP> <SEP> 2= <SEP> 1 <tb> DECO <SEP> AT <SEP> Dekomprimieren <SEP> Port <SEP> 2 <SEP> Bit <SEP> 5= <SEP> 1 <tb> OUTRNG <SEP> AT <SEP> Out <SEP> of <SEP> range <SEP> " <SEP> <SEP> 2 <SEP> " <SEP> <SEP> 7= <SEP> 1 <tb> SNORCL <SEP> AT <SEP> Snorcel <SEP> " <SEP> <SEP> 2 <SEP> " <SEP> <SEP> 6= <SEP> 1 <tb> Tabelle 24: : EMI91.2 <tb> Flag <SEP> Bedeutung <SEP> Zustand/Statusreg. <tb> SFINT <SEP> AT <SEP> Surfaceinterv. <SEP> STATRG <SEP> Bit <SEP> 3= <SEP> 1 <tb> KORBT <SEP> AT <SEP> Korrektur-Bott. <SEP> " <SEP> <SEP> Bit <SEP> 4= <SEP> 1 <tb> DEKEND <SEP> AT <SEP> Dekoende <SEP> " <SEP> Bit <SEP> 5= <SEP> 1 <tb> SERROR <SEP> i <SEP> AT <SEP> Software-Error <SEP> " <SEP> <SEP> Bit <SEP> 6= <SEP> 1 <tb> <SEP> Bit <SEP> 7= <SEP> x <tb> ZEROT <SEP> AT <SEP> Zerotime <SEP> Flag <SEP> Fi: := <SEP> 1 <tb> Es sei bemerkt, dass aus den obigen Ausführungen hervorging, dass in den Tabellenspeichern im wesentlichen die Tabellen des Druckkammerlabors der Universität Zürich abgespeichert wurden, weil sie für das Zusammensetzen des gesamten Tauchganges aus einzelnen Tauchgangabschnitten besonders geeignet sind, die Möglichkeit der Auswertung vorangegangener Tauchgänge bei einem Repetitivtauchgang besitzen und sich nicht nur auf Tauchgänge auf Meeresniveau, sondern auch in Bergseen bis 3200 m Höhe beziehen. Vor allem ist damit eine Digitalisierung leicht durchführbar. Es versteht sich jedoch, dass die Erfindung keineswegs auf die Verwendung dieser Tabellen beschränkt ist, sondern dass auch andere Tabellen, wie z.B. diejenigen der US-Navy, Anwendung finden können. Wenn auch an Hand der Fig. 7 keine besondere Anzeige für die jeweilige Tageszeit gezeigt und beschrieben wurde, so wurde doch in der Beschreibung erwähnt, dass die Nutzung des an sich vorhandenen Zeitmessers für die Angabe der Tageszeit von Vorteil ist. Dies bedingt, dass auch nach Abschalten des Hauptschalters 9 die Stromversorgung zu den dieser Zeitanzeige zuzuordnenden Schaltungsteilen aufrecht erhalten bleibt. Dckmopressionstabelle für O - 700 m über Meer Tabelle: 1 EMI93.1 <tb> Tiefe <SEP> Tauch- <SEP> Dekompressionshalte <SEP> Repeti- <SEP> Tiefe <SEP> Tauch- <SEP> Dekompessionshalte <SEP> Repeti <tb> <SEP> zeit <SEP> m <SEP> tiv- <SEP> zeit <SEP> m <SEP> tiv <tb> m <SEP> min <SEP> 15 <SEP> : :2 <SEP> 9 <SEP> 6 <SEP> 3 <SEP> gruppe <SEP> m <SEP> min <SEP> 18 <SEP> 15 <SEP> 12 <SEP> 9 <SEP> 6 <SEP> 3 <SEP> gruppe <tb> <SEP> 90 <SEP> 5 <SEP> J <SEP> 10 <SEP> 4 <SEP> F <tb> <SEP> 115 <SEP> 120 <SEP> 10 <SEP> K <SEP> 15 <SEP> 2 <SEP> 6 <SEP> G <tb> <SEP> 150 <SEP> 15 <SEP> L <SEP> 20 <SEP> 3 <SEP> 11 <SEP> H <tb> 50 <SEP> 4 <SEP> <SEP> 25 <SEP> 5 <SEP> <SEP> 20 <SEP> <SEP> J <tb> <SEP> 50 <SEP> 4 <SEP> H <SEP> 30 <SEP> 3 <SEP> 10 <SEP> 30 <SEP> K <SEP> <tb> <SEP> 60 <SEP> 7 <tb> <SEP> 2 <SEP> 0 <SEP> 75 <SEP> 18 <SEP> K <SEP> 35 <SEP> 5 <SEP> 10 <SEP> 35 <SEP> K <tb> <SEP> 90 <SEP> 23 <SEP> K <SEP> 40 <SEP> 2 <SEP> 5 <SEP> 15 <SEP> 45 <SEP> K <tb> <SEP> 105 <SEP> 3 <SEP> 31 <SEP> K <SEP> 50 <SEP> 2 <SEP> 5 <SEP> 10 <SEP> 20 <SEP> 55 <SEP> 1 <tb> <SEP> 30 <SEP> 5 <SEP> G <SEP> 60 <SEP> 2 <SEP> 5 <SEP> 20 <SEP> 25 <SEP> 60 <tb> <SEP> 40 <SEP> 8 <SEP> H <SEP> 10 <SEP> 5 <SEP> F <tb> <SEP> 50 <SEP> 12 <SEP> J <SEP> 15 <SEP> 3 <SEP> 8 <SEP> H <tb> <SEP> 25 <SEP> 60 <SEP> 20 <SEP> K <SEP> 20 <SEP> 5 <SEP> 17 <SEP> J <tb> <SEP> 75 <SEP> 3 <SEP> 30 <SEP> K <SEP> 50 <SEP> 25 <SEP> 3 <SEP> 10 <SEP> 37 <SEP> J <tb> <SEP> 90 <SEP> 10 <SEP> 38 <SEP> L <tb> <SEP> 40 <SEP> 2 <SEP> 5 <SEP> 12 <SEP> 15 <SEP> 50 <SEP> K <tb> <SEP> 25 <SEP> 5 <SEP> G <SEP> 50 <SEP> 2 <SEP> 10 <SEP> 15 <SEP> 20 <SEP> 60 <SEP> L <tb> <SEP> 30 <SEP> 9 <SEP> H <SEP> 60 <SEP> 3 <SEP> 12 <SEP> 20 <SEP> 30 <SEP> 70 <SEP> <tb> <SEP> 35 <SEP> 12 <SEP> J <tb> <SEP> 40 <SEP> 5 <SEP> 14 <SEP> J <SEP> 10 <SEP> 1 <SEP> 2 <SEP> @ <SEP> <SEP> @ <tb> <SEP> 30 <SEP> 50 <SEP> 5 <SEP> 25 <SEP> K <SEP> 15 <SEP> 1 <SEP> 4 <SEP> 11 <SEP> F <tb> <SEP> 60 <SEP> 6 <SEP> 8 <SEP> 32 <SEP> K <SEP> 55 <SEP> 20 <SEP> 1 <SEP> 4 <SEP> 8 <SEP> 24 <SEP> G <tb> <SEP> 75 <SEP> 1 <SEP> <SEP> 15 <SEP> 42 <SEP> L <tb> <SEP> 90 <SEP> 8 <SEP> 25 <SEP> 52 <SEP> L <SEP> 30 <SEP> 1 <SEP> 3 <SEP> 9 <SEP> 13 <SEP> 38 <SEP> K <tb> 40 <SEP> I <SEP> 5 <SEP> 8 <SEP> 17 <SEP> 18 <SEP> 58 <SEP> K <tb> <SEP> 20 <SEP> 5 <SEP> G <tb> <SEP> 25 <SEP> 9 <SEP> H <SEP> 10 <SEP> 2 <SEP> 3 <SEP> 5 <SEP> H <tb> <SEP> 30 <SEP> 12 <SEP> J <SEP> 15 <SEP> 3 <SEP> 5 <SEP> 15 <SEP> J <tb> <SEP> 35 <SEP> 5 <SEP> 17 <SEP> J <SEP> 60 <SEP> 20 <SEP> 2 <SEP> 6 <SEP> 10 <SEP> 29 <SEP> J <tb> <SEP> 35 <SEP> 40 <SEP> 7 <SEP> 30 <SEP> J <SEP> 25 <SEP> 2 <SEP> 2 <SEP> 10 <SEP> <RTI ID=93.14> 1035 <SEP> K <tb> <SEP> 50 <SEP> 3 <SEP> 10 <SEP> 35 <SEP> K <SEP> 30 <SEP> 2 <SEP> 4 <SEP> 12 <SEP> 15 <SEP> 40 <SEP> L <tb> <SEP> 60 <SEP> 7 <SEP> 15 <SEP> 45 <SEP> K <SEP> 10 <SEP> 1 <SEP> 2 <SEP> 3 <SEP> 6 <SEP> H <tb> <SEP> 75 <SEP> 10 <SEP> 15 <SEP> 62 <SEP> L <SEP> 15 <SEP> 1 <SEP> 3 <SEP> 8 <SEP> 18 <SEP> J <tb> <SEP> 15 <SEP> 2 <SEP> 5 <SEP> G <SEP> 65 <SEP> 20 <SEP> 1 <SEP> 2 <SEP> 6 <SEP> 13 <SEP> 33 <SEP> J <tb> <SEP> 20 <SEP> 2 <SEP> 10 <SEP> H <SEP> 25 <SEP> 2 <SEP> 4 <SEP> 10 <SEP> 13 <SEP> 40 <SEP> K <tb> <SEP> 25 <SEP> 3 <SEP> 12 <SEP> J <SEP> 30 <SEP> 1 <SEP> 2 <SEP> 8 <SEP> 14 <SEP> 18 <SEP> 46 <SEP> L <tb> <SEP> 30 <SEP> 2 <SEP> 5 <SEP> 20 <SEP> J <SEP> 10 <SEP> 2 <SEP> 3 <SEP> 4 <SEP> 6 <SEP> H <tb> <SEP> 4@ <SEP> 35 <SEP> 2 <SEP> 10 <SEP> 30 <SEP> K <SEP> 15 <SEP> 2 <SEP> 3 <SEP> 10 <SEP> 20 <SEP> J <tb> <SEP> 40 <SEP> 5 <SEP> 15 <SEP> 35 <SEP> K <SEP> 70 <SEP> <SEP> 20 <SEP> 2 <SEP> 3 <SEP> 5 <SEP> 15 <SEP> 35 <SEP> J <tb> <SEP> 50 <SEP> 2 <SEP> 7 <SEP> 20 <SEP> 40 <SEP> K <SEP> 25 <SEP> 2 <SEP> 2 <SEP> 5 <SEP> 10 <SEP> 15 <SEP> 43 <SEP> K <tb> <SEP> 60 <SEP> 2 <SEP> 10 <SEP> 25 <SEP> 50 <SEP> L <SEP> 30 <SEP> 2 <SEP> 3 <SEP> 10 <SEP> 15 <SEP> 20 <SEP> 50 <SEP> L <tb> Tabelle: 2 EMI93.2 <tb> <SEP> Nullzeittauchgrenzen <tb> m <SEP> 9 <SEP> 12 <SEP> 15 <SEP> 18 <SEP> 20 <SEP> 25 <SEP> 30 <SEP> 35 <SEP> 40 <tb> min <SEP> 200 <SEP> 75 <SEP> 50 <SEP> 30 <SEP> 25 <SEP> 20 <SEP> 15 <SEP> 10 <tb> Repetitivsystem für O - 700 m über Meer OberflächenintervaIltabelle (min) Tabelle: 3 EMI94.1 <tb> <SEP> Repetitivgruppe <SEP> am <SEP> Ende <SEP> des <SEP> Oberflächenintervalls <tb> <SEP> L <SEP> K <SEP> J <SEP> H <SEP> G <SEP> F <SEP> E <SEP> D <SEP> C <SEP> B <SEP> A <SEP> 't <tb> <SEP> L <SEP> 14 <SEP> 30 <SEP> 47 <SEP> 68 <SEP> 94 <SEP> 127 <SEP> 149 <SEP> 174 <SEP> 206 <SEP> 255 <SEP> 44a <tb> <SEP> K <SEP> 16 <SEP> 34 <SEP> 55 <SEP> 80 <SEP> 113 <SEP> 135 <SEP> 160 <SEP> 194 <SEP> 240 <SEP> 426 <tb> s <SEP> J <SEP> 18 <SEP> 39 <SEP> 65 <SEP> 98 <SEP> 119 <SEP> 145 <SEP> 180 <SEP> 225 <SEP> 409 <tb> <SEP> H <SEP> H <SEP> H <SEP> 22 <SEP> 47 <SEP> 8a <SEP> 101 <SEP> 127 <SEP> 163- <SEP> 206 <SEP> 394 <tb> <SEP> G <SEP> 6' je <SEP> zu26 <SEP> 59 <SEP> 80 <SEP> 106 <SEP> 139 <SEP> 186 <SEP> 372 <tb> <SEP> F <SEP> 649Cou <SEP> F <SEP> 34 <SEP> 55 <SEP> 80 <SEP> 113 <SEP> 160 <SEP> 346 <tb> <SEP> , <SEP> E <SEP> n <SEP> 47 <SEP> 80 <SEP> 127 <SEP> 312 <tb> <SEP> D <SEP> 26 <SEP> 59 <SEP> 106 <SEP> 292 <tb> <SEP> < eeez <SEP> C <SEP> 34 <SEP> 80 <SEP> 266 <tb> <SEP> X <SEP> s <SEP> B <SEP> 47 <SEP> 233 <tb> Tabelle: 4 Zeitzuschlag- oder Repetitivtabelle EMI94.2 <tb> Tie <tb> <SEP> fe <SEP> 6 <SEP> 9 <SEP> 12 <SEP> 15 <SEP> 20 <SEP> 25 <SEP> 30 <SEP> 35 <SEP> 40 <SEP> 45 <SEP> 50 <SEP> 55 <SEP> 60 <SEP> 65 <SEP> 70 <tb> <SEP> m <tb> <SEP> L <SEP> 300 <SEP> 160 <SEP> 96 <SEP> 69 <SEP> 55 <SEP> 45 <SEP> 39 <SEP> 34 <SEP> 30 <SEP> 27 <SEP> 25 <SEP> 23 <SEP> 21 <tb> <SEP> K <SEP> > 400 <SEP> 250 <SEP> 127 <SEP> 80 <SEP> 59 <SEP> 4? <SEP> 39 <SEP> 34 <SEP> 29 <SEP> 26 <SEP> 24 <SEP> 22 <SEP> 20 <SEP> 18 <tb> <SEP> J <SEP> 400 <SEP> 150 <SEP> 101 <SEP> 67 <SEP> 50 <SEP> 40 <SEP> 33 <SEP> 29 <SEP> 25 <SEP> 23 <SEP> 21 <SEP> 19 <SEP> 17 <SEP> 16 <tb> <SEP> H <SEP> 200 <SEP> 113 <SEP> 80 <SEP> 55 <SEP> 42 <SEP> 34 <SEP> 27 <SEP> 25 <SEP> 22 <SEP> 19 <SEP> 17 <SEP> 16 <SEP> 15 <SEP> 14 <tb> G <SEP> G <SEP> > 200 <SEP> 135 <SEP> 85 <SEP> 63 <SEP> 44 <SEP> 34 <SEP> 27 <SEP> 22 <SEP> 20 <SEP> 18 <SEP> 16 <SEP> 14 <SEP> 13 <SEP> 12 <SEP> 11 <tb> uo <SEP> F <SEP> 200 <SEP> 108 <SEP> 61 <SEP> 47 <SEP> 34 <SEP> 26 <SEP> 22 <SEP> 17 <SEP> 16 <SEP> 14 <SEP> 13 <SEP> 12 <SEP> 11 <SEP> 10 <SEP> 9 <tb> 4 <SEP> E <SEP> 113 <SEP> 61 <SEP> 42 <SEP> 34 <SEP> 25 <SEP> 19 <SEP> 16 <SEP> 13 <SEP> 12 <SEP> 11 <SEP> 9 <SEP> 8 <SEP> 8 <SEP> 7 <SEP> 7 <tb> 4 <SEP> D <SEP> 85 <SEP> 48 <SEP> 34 <SEP> 27 <SEP> 20 <SEP> 16 <SEP> 13 <SEP> 10 <SEP> 10 <SEP> 9 <SEP> 8 <SEP> 7 <SEP> 7 <SEP> 6 <SEP> 6 <tb> m <tb> z <SEP> C <SEP> 61 <SEP> 37 <SEP> 26 <SEP> 22 <SEP> 16 <SEP> 13 <SEP> 10 <SEP> 8 <SEP> 8 <SEP> 7 <SEP> 6 <SEP> 6 <SEP> 5 <SEP> 5 <SEP> 5 <tb> <SEP> B <SEP> 43 <SEP> 26 <SEP> 19 <SEP> 16 <SEP> 12 <SEP> 9 <SEP> 8 <SEP> 6 <SEP> 6 <SEP> 5 <SEP> 5 <SEP> 4 <SEP> 4 <SEP> 4 <SEP> 4 <tb> <SEP> A <SEP> 26 <SEP> 17 <SEP> 12 <SEP> 10 <SEP> 8 <SEP> 6 <SEP> 6 <SEP> 4 <SEP> 4 <SEP> 3 <SEP> 3 <SEP> 3 <SEP> 3 <SEP> 3 <SEP> 3 <tb> Dt.kompressionstabel le für 701 - 1500 m über Meer Tabelle: 5 EMI95.1 <tb> Tiefe <SEP> Tauch- <SEP> Dekompressionshalte <SEP> Repeti- <SEP> Tiefe <SEP> Tauch- <SEP> Dekompressionshalte <SEP> Repeti <SEP> m <SEP> tiv- <SEP> zeit <SEP> m <SEP> tiv <tb> min <SEP> 16 <SEP> 13 <SEP> 10 <SEP> 7 <SEP> 4 <SEP> 2 <SEP> gruppe <SEP> m <SEP> min <SEP> 16 <SEP> 13 <SEP> 10 <SEP> 7 <SEP> 4 <SEP> 2 <SEP> gruppe <tb> 120 <SEP> 5 <SEP> H <SEP> 10 <SEP> 2 <SEP> 3 <SEP> D <tb> <SEP> 40 <SEP> 5 <SEP> F <SEP> 15 <SEP> 3 <SEP> 5 <SEP> 8 <SEP> F <tb> <SEP> 75 <SEP> 8 <SEP> H <SEP> 20 <SEP> 2 <SEP> 5 <SEP> 5 <SEP> 11 <SEP> G <tb> 90 <SEP> 13 <SEP> H <SEP> 35 <SEP> 25 <SEP> 3 <SEP> 7 <SEP> 7 <SEP> 13 <SEP> H <tb> 105 <SEP> 16 <SEP> J <SEP> 30 <SEP> 4 <SEP> 8 <SEP> 8 <SEP> 16 <SEP> H <tb> <SEP> 120 <SEP> 19 <SEP> J <SEP> 35 <SEP> 5 <SEP> 8 <SEP> 8 <SEP> 22 <SEP> H <tb> <SEP> 40 <SEP> 2 <SEP> 5 <SEP> 10 <SEP> 10 <SEP> 25 <SEP> J <tb> <SEP> 20 <SEP> 4 <SEP> E <SEP> 50 <SEP> 3 <SEP> 6 <SEP> 12 <SEP> 15 <SEP> 32 <SEP> J <tb> <SEP> 25 <SEP> 6 <SEP> F <tb> <SEP> 30 <SEP> 2 <SEP> 8 <SEP> F <SEP> @ <SEP> <SEP> @ <SEP> @ <SEP> <SEP> @ <tb> <SEP> JO <SEP> 39 <SEP> G <SEP> 10 <SEP> 2 <SEP> 2 <SEP> 6 <SEP> <SEP> E <tb> 50 <SEP> 5 <SEP> 11 <SEP> H <SEP> 15 <SEP> @ <SEP> <SEP> @ <SEP> <SEP> @ <SEP> <SEP> @ <SEP> <SEP> @ <tb> <SEP> 0 <SEP> 60 <SEP> 5 <SEP> 19 <SEP> H <SEP> 40 <SEP> 4 <SEP> 5 <SEP> 6 <SEP> 12 <SEP> G <tb> <SEP> 40 <SEP> 25 <SEP> @ <SEP> <SEP> @ <SEP> <SEP> <RTI ID=95.15> @ <SEP> <SEP> @ <SEP> <SEP> @@ <SEP> <SEP> @ <tb> <SEP> 75 <SEP> 8 <SEP> 25 <SEP> J <tb> 90 <SEP> 12 <SEP> 25 <SEP> J <SEP> 30 <SEP> 3 <SEP> 6 <SEP> 8 <SEP> 10 <SEP> 20 <SEP> J <tb> <SEP> 105 <SEP> 15 <SEP> 30 <SEP> - <SEP> 35 <SEP> 4 <SEP> 8 <SEP> 8 <SEP> 11 <SEP> 25 <SEP> J <tb> <SEP> 120 <SEP> 20 <SEP> 37 <SEP> - <SEP> 40 <SEP> 6 <SEP> 8 <SEP> 9 <SEP> 11 <SEP> 32 <SEP> J <tb> <SEP> 15 <SEP> <SEP> 1 <SEP> 5 <SEP> 0 <SEP> 5 <SEP> 2 <SEP> 3 <SEP> C <tb> <SEP> 25 <SEP> 4 <SEP> 8 <SEP> F <SEP> 10 <SEP> @ <SEP> <SEP> 4 <SEP> 0 <SEP> @ <tb> <SEP> 30 <SEP> 3 <SEP> 4 <SEP> 9 <SEP> G <SEP> 15 <SEP> 2 <SEP> 3 <SEP> 5 <SEP> 5 <SEP> 12 <SEP> G <tb> <SEP> 35 <SEP> 4 <SEP> 5 <SEP> 13 <SEP> G <SEP> 45 <SEP> 20 <SEP> 3 <SEP> 4 <SEP> 6 <SEP> 8 <SEP> 15 <SEP> H <tb> <SEP> 40 <SEP> 5 <SEP> 5 <SEP> 17 <SEP> H <SEP> 25 <SEP> 1 <SEP> 4 <SEP> 6 <SEP> 6 <SEP> 10 <SEP> 19 <SEP> H <tb> <SEP> 50 <SEP> 5 <SEP> 7 <SEP> 23 <SEP> H <SEP> 30 <SEP> 2 <SEP> 5 <SEP> 7 <SEP> 10 <SEP> 16 <SEP> 28 <SEP> J <tb> <SEP> 60 <SEP> 7 <SEP> 12 <SEP> 25 <SEP> J <SEP> 5 <SEP> 1 <SEP> 3 <SEP> 4 <SEP> D <tb> <SEP> 75 <SEP> 10 <SEP> 15 <SEP> 30 <SEP> J <SEP> 10 <SEP> 3 <SEP> 4 <SEP> 5 <SEP> 10 <SEP> F <tb> <SEP> 90 <SEP> 15 <SEP> 17 <SEP> 38 <SEP> . <SEP> 15 <SEP> 1 <SEP> 3 <SEP> 5 <SEP> 6 <SEP> 6 <SEP> 15 <SEP> G <tb> <SEP> 10 <SEP> 1 <SEP> 3 <SEP> 0 <SEP> 50 <SEP> 20 <SEP> 3 <SEP> 3 <SEP> 6 <SEP> 6 <SEP> 10 <SEP> 18 <SEP> H <tb> <SEP> 25 <SEP> 3 <SEP> 4 <SEP> 8 <SEP> 10 <SEP> 10 <SEP> 25 <SEP> @ <tb> <SEP> 15 <SEP> 3 <SEP> 6 <SEP> E <tb> <SEP> 20 <SEP> 5 <SEP> 9 <SEP> F <SEP> @@ <SEP> @ <SEP> @ <SEP> @ <SEP> @ <SEP> @ <SEP> @ <SEP> @ <SEP> @ <SEP> @ <SEP> <tb> <SEP> 25 <SEP> 3 <SEP> 5 <SEP> 10 <SEP> G <SEP> 10 <SEP> 2 <SEP> 4 <SEP> 5 <SEP> 6 <SEP> 12 <SEP> F <tb> <SEP> 30 <SEP> 30 <SEP> 6 <SEP> 6 <SEP> 12 <SEP> G <SEP> 55 <SEP> 15 <SEP> 1 <SEP> 3 <SEP> 5 <SEP> 7 <SEP> 7 <SEP> 17 <SEP> G <tb> <SEP> 35 <SEP> 7 <SEP> 7 <SEP> 18 <SEP> H <SEP> 20 <SEP> 4 <SEP> <SEP> 5 <SEP> 6 <SEP> 7 <SEP> 10 <SEP> 24 <SEP> H <tb> <SEP> 40 <SEP> 3 <SEP> 10 <SEP> 10 <SEP> 23 <SEP> H <SEP> 10 <SEP> 1 <SEP> 3 <SEP> 4 <SEP> 6 <SEP> 6 <SEP> 13 <SEP> G <tb> <SEP> 50 <SEP> 5 <SEP> 10 <SEP> 15 <SEP> 25 <SEP> J <SEP> 60 <SEP> 15 <SEP> 2 <SEP> 3 <SEP> 4 <SEP> 8 <SEP> 8 <SEP> 18 <SEP> G <tb> <SEP> 60 <SEP> 6 <SEP> 15 <SEP> 15 <SEP> 31 <SEP> J <SEP> 20 <SEP> 5 <SEP> 6 <SEP> 6 <SEP> 8 <SEP> 10 <SEP> 30 <SEP> H <tb> Tabelle: 6 EMI95.2 <tb> <SEP> Nullzeittauchgrenzen <tb> m <SEP> 9 <SEP> 12 <SEP> 15 <SEP> 18 <SEP> 20 <SEP> 25 <SEP> 30 <SEP> 35 <tb> min <SEP> 720 <SEP> 90 <SEP> 30 <SEP> 20 <SEP> 15 <SEP> 10 <SEP> 5 <SEP> 4 <tb> Repetitivsystem für 701 - 1500 m über Meer Tabelle: 7 Oberflächenintervalltabelle (min) EMI96.1 <tb> <SEP> Repetitivgruppe <SEP> am <SEP> Ende <SEP> des <SEP> Oberflächenintervalls <tb> J <SEP> H <SEP> G <SEP> F <SEP> E <SEP> D <SEP> C <SEP> B <SEP> A <SEP> "O" <tb> J <SEP> 17 <SEP> 35 <SEP> 59 <SEP> 87 <SEP> 105 <SEP> 125 <SEP> 150 <SEP> 183 <SEP> 265 <tb> <SEP> H <SEP> 19 <SEP> 42 <SEP> 71 <SEP> 89 <SEP> 109 <SEP> 134 <SEP> 166 <SEP> 250 <tb> <SEP> tewee <SEP> G <SEP> 23 <SEP> 52 <SEP> 69 <SEP> 90 <SEP> 115 <SEP> 147 <SEP> 230 <tb> <SEP> F <SEP> ts <SEP> F <SEP> 29 <SEP> 46 <SEP> 67 <SEP> 92 <SEP> 124 <SEP> 207 <tb> <SEP> E <SEP> e <SEP> Ae <SEP> E <SEP> 18 <SEP> 39 <SEP> 64 <SEP> 96 <SEP> 178 <tb> <SEP> D <SEP> 7'7 <SEP> d <SEP> D <SEP> 21 <SEP> 46 <SEP> 78 <SEP> 161 <tb> <SEP> 0 <SEP> 25 <SEP> 58 <SEP> 141 <tb> <SEP> 83A31815 <tb> Tabellle: 8 Zeitzuschlag- oder Repetitivtablle EMI96.2 <tb> <SEP> I <tb> Tie <tb> f, <SEP> o <SEP> 8 <SEP> 10 <SEP> 12 <SEP> 15 <SEP> 20 <SEP> 25 <SEP> 30 <SEP> 35 <SEP> 40 <SEP> 45 <SEP> 50 <SEP> 55 <SEP> 60 <tb> n <tb> <SEP> H <SEP> > 225 <SEP> 190 <SEP> 125 <SEP> 93 <SEP> 60 <SEP> 44 <SEP> 35 <SEP> 30 <SEP> 25 <SEP> 22 <SEP> 20 <SEP> 18 <SEP> 16 <tb> <SEP> G <SEP> > 330 <SEP> 225 <SEP> 130 <SEP> 92 <SEP> 71 <SEP> 47 <SEP> 35 <SEP> 29 <SEP> 24 <SEP> 21 <SEP> 18 <SEP> 16 <SEP> 15 <SEP> 13 <tb> =F <SEP> 330 <SEP> 132 <SEP> 90 <SEP> 67 <SEP> 53 <SEP> 36 <SEP> 27 <SEP> 23 <SEP> 19 <SEP> 16 <SEP> 14 <SEP> 12 <SEP> 11 <SEP> 10 <tb> .= <SEP> E <SEP> 142 <SEP> 83 <SEP> 59 <SEP> 46 <SEP> 37 <SEP> 26 <SEP> 20 <SEP> 16 <SEP> 14 <SEP> 12 <SEP> 11 <SEP> 9 <SEP> 8 <SEP> 7 <tb> ç <SEP> D <SEP> 103 <SEP> 64 <SEP> 47 <SEP> 37 <SEP> 30 <SEP> 21 <SEP> 16 <SEP> 13 <SEP> 11 <SEP> 10 <SEP> 9 <SEP> 7 <SEP> 7 <SEP> 6 <tb> 73 <SEP> C <SEP> 73 <SEP> 48 <SEP> 36 <SEP> 28 <SEP> 23 <SEP> 16 <SEP> 12 <SEP> 10 <SEP> 9 <SEP> 8 <SEP> 7 <SEP> 6 <SEP> 6 <SEP> 5 <tb> <SEP> B <SEP> 51 <SEP> 34 <SEP> 26 <SEP> 21 <SEP> 17 <SEP> 12 <SEP> 9 <SEP> 8 <SEP> 7 <SEP> 6 <SEP> 5 <SEP> 5 <SEP> 4 <SEP> 4 <tb> <SEP> A <SEP> 32 <SEP> 21 <SEP> 16 <SEP> 13 <SEP> 11 <SEP> 8 <SEP> 6 <SEP> 5 <SEP> 5 <SEP> 4 <SEP> 4 <SEP> 3 <SEP> 2 <SEP> 2 <tb> Tablle 9: Bsp. Punkt im Repetitiv- Tauch Gesamt- aktuelle äquivalente Nullzeigrenze: Dekompression entsprechend Dekompressions Tauchgag Gruppe tiefe (@) tauchzeit Tauchzeit Tauch innerhalb: N einem Tauchgang von halte (min) bei (min) (min) (min bei m) überschritten: Ü min bei m 9m 6m 3m 1A a 33 14 14 14/35 N - - - (ev.3) b 33 16 16 16/35 ü 20 35 - - 5 c 33 21 21 21/35 ü 25 35 - - 9 d 33 26 26 26/35 ü 30 35 - - 12 e 33 34 34 34/35 ü 35 35 - 5 17 1B a 32 13 13 13/35 N - - - (ev.3) b 19 15 15 34/20 ü 50 20 - - 4 c 19 34 34+19=53 53/20 ü 60 20 - - 7 (herkömmlich: 35 35 - 5 17) 1C a 33 20 20 20/35 ü 20 35 - 5 b 17 21 21 21/35 ü 25 35 - - 9 c 9 26 26 26/35 ü 30 35 - - 12 d 9 30 30 30/35 ü 30 35 - - 12 e 9 34 34 34/35 ü 35 35 - 5 17 1D a 20+ 18 18 16/25 N - - - (ev.3) b 25+ 18 16 13/30 N - - - @ c 30+ 19 13 10/35 N - - - @ d 32 25 10 + 6= 16 16/35 ü 20 35 - - 5 e 32 30 16 + 5= 21 21/35 ü 25 35 - - 9 f 32 34 21 + 4= 25 25/35 ü 25 35 - - 9 (herkömmlich: 35 35 5 17) 1E a 19 32 32 32/20 ü 50 20 - - 4 b 20+ 32 32 26/25 ü 30 25 - - 5 c 25+ 32 26 22/30 ü 25 30 - - 5 d 30+ 33 22 + 1= 23 22/35 ü 25 35 - - 9 e 32 36 22 + 3= 25 25/35 ü 30 35 - - 12 f 32 41 25 + 5= 30 30/35 ü 30 35 - - 12 (herkömmlich, z.B. US Navy: 50 35 3 10 35) Tablle 10: Bsp. Punkt im Repetiv- Tauch Gesamt- aktuelle äquivalente Nullzeitgrenze: Dekompression entspre Dekompressions Tauchgang Gruppe tiefe (m) tauchzeit Tauchzeit Tauchzeit innerhalb: N einem Tauchgang von halte (min) bie (min) (min) (min bei m) überschritten: ü min bei m 9m 6m 3m 1F a B 27 7 7+8=15 N - - (ev.3) b B 27 12+ 15+ 5=20+ 20+/30 ü 25 30 - - 5 c B 27 17+ 20+ 5=25+ 25+/30 ü 30 30 - - 9 d B 27 22+ 25+ 5=30+ 30+/30 ü 35 30 - - 12 e B 27 26 30+ 4+34 34/30 ü 35 30 - - 12 1G a C 19 4 4+16=20 20 /20 N - - - (ev.3) b (ceuer C 19 9 9+16=25 25 /20 N - - - @ Tauchgang) c C 16 14 25+ 5=30 30 /20 N - @ d C 11 34 30+20=50 113 /12 N - @ e C 11 44 113+10=123 123/ 12 N - @ (herkömmlich: 52 52+20=72 75 20 - - 18) 1H a E 14 4 4+34=38 38 /15 N - - - (ev.3) b(neuer E 14 6 6+34=40 40 /15 N - - - @ fauchgang) c E 14 11 40+ 5=45 45 /15 N - - - @ d E 15+ 15 [45-34=15 12 /20] 12+25=37 37 /20 N - - - @ e(1.Meth.) E 11 28 37+13=50 50 /18 N - - - @ @113 /12 f E 12+ 35 113+ 7=120 97 /15 ü - - - 10 [120-42=78 63+34 /15] g E 14 38 97+ 3=100 100 /15 ü - - - 10 e (2.Meth.) E 11 28 113/12 80 /15 ü - - 5 f E 12+ 35 80+ 7=87 87 /15 ü 90 15 - - 5 g E 14 38 87+ 3=90 90 /15 ü 90 15 - - 5 (herkömmlich: F 48 48+34=82 90 20 - - 23) Tablle 11 Tabelle 11 Programm: 1 * RSTART 2 * Page 1 3 * RSTART Programm: 55 DEST EOU 55 4 * 56 AASL EOU 51 5 * ========================================= RSTART 57 6 * 58 DOWNCl EOU 27 7 * DIESES PROGRAM INITIALISEERT ALLE ANFANGSWERTE Page 2 59 DOWC30 EOU 26 8 * IN DEN VARIABLEN, DEN TIMERS, DEN COUNITERS. 60 9 * ZUEDM WIRD DER INTERRUPT-COUNTER INITIALISIERT, 61 SUBRUTINEN 10 * FREIGEGEBEN UND GESTARTET. 62 11 * NACH AUSFUEHRUNG ALL DESSEN WIRD AUF DEN ANFANG 63 SUBD EOU 308 12 * DES MAIN-PRORAMMES GESPRUNGEN. 64 HTIMER EOU RZ 13 * 65 14 * DEM : DAS GESAMMTE DAA-MEM@RY (INIERN) WIRD 66 15 * ZUERST AUF NULLGESETZT UND ANSCHLIESSEND 67 16 * DIE BETREFFENDEN SPEICHER, WELCHE UNGLEICH 68 STATEMENTS 17 * NULL SEIN MUESSEN, GESETZT 69 ********************* 18 * EBENSO WERDEN ALLE STATES UND FLAGS AUF 70 19 * DES START WERT GESETZT. 71 20 * 73 RSTART: 21 * # AT SURFACE # STATRG: = 0000 0001 74 22 * # PORT2: = 0000 0000 , DAS BEDEUTET: 75 23 * NOT SNORGEL 76 24 * NOT OVT OF RANGE 77 * SET ALL TIMER, COUNTER, VARIABLE ON ZERO 25 * NOT DEKOMPRIMIEREN 78 26 * # AT ZEROTIME-DIVE # FLAG F1: = 1 79 27 * # TIEFENSTUFE: = 6M # DEST : = 12 80 * SET DIVERSE SPEICHER UNGLEICH NULL * 28 * # DOWNCOUNTER FUER ISEC. # DEWNC1 : =2 81 29 * # DOWNCOUNTER FUER 30SEC. # DOWC30 : =61 82 30 * # ALLTITUDE ABOVE SEE LEVEL # AASL : =7 83 * SET STATES AND FLAGS * 31 * # XXXXXXX FUER (0-700)M XXXXXXXXXXXXXXXXXXXXXXXX 84 32 * # INTERRUPT-COUNTER # T : =125 85 33 * 86 * SET INTERRUPT-COUNTER * 34 * 87 35 * DIESES PROGRAM LAEUFT NUR EIMMAL AB. DANN, WENN 88 36 * DAS CERAET EINGESCHALTET WIRD SOMIT ERFUELT 89 * SET HTIMER * 37 * DER HAUPTSCHALTER AUCH DIE FUNKTION DES RESET- 90 38 * SCHALTERS. 91 39 * 92 * ENABLE AND START INTERRUPT-COUNTER * 40 *====================================================== 93 41 * 94 42 * 95 * GOTU MAIN PROGRAM * 43 * 96 44 * 97 45 * 98 46 ******************************************************** 99 END 47 48 49 EOUATES 50 ******************* 51 52 53 VARABLEN: 54 Tabelle 12 1 *******************************************************Tabelle 12 55 * SET HTIMER AND TIMER * Programm: 2 * Programm: 56 HTIME 3 * HIME HTIME 57 Page 1 4 * Page 2 58 * GOTO ANFANG DES MAINPROGRAMMES 5 * 59 * ICE UEBERLISTUNG * 6 * 60 7 * SUBROUTINE ZUM GENERIEREN EINS 0.5 SEK - 61 8 * TAKTES. 62 * SET STACKPOINTER = 1 * 9 * 63 10 * DIESE SUBROUTINE WIRD ALLE 0.02 SEK. VON 64 11 * INTERRUPT-COUNTER AUFGERUFEN. DER HILFSTIMER 65 * RUECKSPRUNGWERTE IN REGISTER 8 12 * WIRD DEKREMENTIERT ERREICHT ER DEN WERT NULL 66 * UND 9 LADEN 13 * SO SOND 0.5 SEKUNDEN VERSTRICHEN. # 67 14 * 68 15 * GOTO # ANFANG DES MAINPROGRAMMES. 69 END 16 * 17 * d.h. DER STACKPOINTER WIRD AUF 1 GESETZT UND 18 * DIE ADRESSE DES MAINPROGRAMMES WIRD IN 19 * DEN STACK GESCHRIEBEN, DAMIT MAN DIE 20 * HILFSTIMEROOUTINE TROTZEDM MIT RETR 21 * VERLASSEN KANN. 22 * 23 * ANDERENFALLS WIRD MIT RETURN AN DIE STELLE DES 24 * MAINPROGRAMMES GESPRUNGEN, WO ES DER INTERRUPT 25 * COUTER UNTERBROCHEN HAT. 26 * 27 * BEM: DIESES PROGRAM BEGINET BEI DER ADRESSE 7H 28 * * 7H = TIMER-INTERRUPT-VEKTOR 29 * 30 * 31 *==================================================== 32 * 33 * 34 * 35 * 36 ***************************************************** 37 38 39 EOUATES 40 **************** 41 42 43 HTIMER EOU R7 44 45 46 STAETMENTS 47 ***************************************************** 48 49 50 BOOT ZUM EINSCHALTEN DES GERAETES. * 51 AN DER UHRSRUNGSADRESSE STEHT DER @UMP * 52 * 53 54 Tabelle 13 1 ; *************************************************** Tabelle 13 55 ; Programm: 2 ; * Programm: 56 ; PSNORC 3 ; * DRUCKERFASSEN/UMSCHALTEN AUF SCHNORCHELN PSNDRC 57 ; VARIABLEN: Page 1 4 ; * Page 2 58 ; 5 ; *=================================================== 59 ; PALT EQU 63 6 ; * 60 ; PNEU EQU 62 7 ; * DIESES MAINPROGRAM LIEST DEN DRUCK (PNEU) UEBER 61 ; PNULL EQU 61 8 ; * DAS PORT PO EIN UND VERARBEITET DIESEN : 62 ; DELTAP EQU 59 9 ; * 63 ; STATRQ EQU 24 10 ; * A) ZUR ERKENNUND OB DER TAUCHER 64 ; DOWNC1 EQU 27 11 ; * DAS GERAET UNTER WASSER EINGE- 65 ; 12 ; * SCHALTET HAT # 66 ; SUBRUTINEN: 13 ; * STATUS: = OUT OF RANGE 67 ; SUB EQU XXXXXXXXXXXXXXXXX 14 ; * 68 ; SUBD EQU XXXXXXXXXXXXXXXXX 15 ; * B) ZUR ERKENNUNG OB DER TAUCHER 69 ; 16 ; * INS WASSER EINGESTIEGEN IST UND 70 ; 17 ; * ZUR DIREKTEN UMSCHALTUNG DER 71 ; 18 ; * VERSTAERKUNG DES ADC. # 72 ; STATEMENTS 19 ; * FLAG: = SNORCEL 73 ; **************************** 20 ; * 74 ; 21 ; * C) ZU DELTAP. DAS EINERSEITS DIE 75 ; 22 ; * TAUCHRICHTUNG ALS VORZEICHEN 76 ; 23 ; * BEINHALTET WAEREND DEA TAUCHER 77 ; 24 ; * SICH IM WASSER BEFINDET UND 78 PSNCRC: 25 ; * ANDERERSEITS DIE IMFORMATION, OB 79 ; 26 ; * SICH DER TAUCHER IM WASSER BE 80 ; * INPUT VON PNEU * 27 ; * FINDET ODER NICHT. 81 ; 28 ; * -DELTAP WIRD IM SEC. - TAKT BERECH- 82 ; * ADC EIN, EPROM AUS # PORT2 BIT4=1 * 29 ; * NET. 83 ; 30 ; * 84 ; 31 ; * D) ZUM LUFTDRUCK AM TAUCHPLATZ # 85 ; * START ADC * 32 ; * PNULL: = LUFTDRUCK 86 ; 33 ; * ERFORDERLICHE ANFANGS-INITIALISIERUND DURCH 87 ; 34 ; * DEN RESTART. 88 ; * WAIT ON CONVERSION COMPLETE * 35 ; * 89 ; 36 ; * 90 ; 37 ; * DOWNCOUNTER # DOWNC1: = 2 91 ; * LESE ADC * 38 ; * ALTER-DRUCK # PALT: = 0 92 ; 39 ; * NOT SNORCEL # PORT P2 BIT6: = 0 93 ; 40 ; * 94 ; * LEST PALT = 0 ?, NEIN # GOTO PS1 41 ; * BEM : ZYKLISCHES STARTEN DIESES PROGRAMMES 95 ; 42 ; * ALLE 0.5 SEC. 96 ; 43 ; * 97 ; * JA # TEST PNEU # 1.20DAR ?, NEIN # GOTO PS2 44 ; * 98 ; 45 ; *======================================================== 99 ; 46 ; * 100 ; * JA# DAS GERAET WURDE UNIER WASSER EINGESCHALTET 47 ; * 101 ; * SET STATUS: = OUT OF RANGE, MITTELS LED-ANZUENDEN 48 ; * 102 ; * UEDER PORT2, LEITUNG 7 (BIT7: = 1). 49 ; * 103 ; * VERSTAERKUNG DES ADC UMSCHALTEN UEBER PORT2 LEI 50 ; * 104 ; * TUNG 6 (BIT6: = 1). 51 ; 105 ; * AT SNORCEL # PORT P2 BIT6: = 1 52 ; 106 ; 53 ; EQUATES 107 ; 54 ; ******************** 108 ; * SET FOR REDUCED DEPTH-NMETER WORKING * 109 ; * PNULL: = 1BAR Tabelle 13 110 ; Tabelle 14 1 ;*************************************************************** Programm : 111 ; Programm : 2 ;* 112 ; * GOTO CHKSET * CHKSET 3 ;* PSNORC 113 ; Page 1 4 ;* 114 ; 5 ;*============================================================== Page 3 115 ; 6 ;* 116 PS2; 7 ;* DIESES MATNPROGRAM WIRD ALLE 0.5 SEKUNDEN AD 117 ; * PALT : = PNEU * 8 ;* GEARBEITET, 118 ; 9 ;* DABEI WERDEN DIE ENTSPRECHENDEN VARIADLEN, 119 ; 10 ;* TIMERS UND COUNTER, WENN ERFORDERLICH, NACHGE 120 PSI : 11 ;* FUEHRT UND (DDER) NEU GESETZT. 121 ; * TEST DOWMCOUNTER-LOOP = ISEC @ NEIN# GOTO CHKSET 12 ;* ZUDEM WIRD NACH AUSFUERUNG DES OBEM BESCHRIE 122 ; 13 ;* BENEN, INFOLGE DES CESETZTEN GTATUS, AUF DEN 123 ; 14 ;* ANFANG DES NACHFOLGEND, ABZULAUFENDEN PROGRAMMES 124 ; * JA-3 DELTAP ; = PNEU-PALT * 15 ;* GESPRUNGEN. 125 ; 16 ;* 126 ; 17 ;* 127 ; * TEST AT SNORCEL @ JA# GOTD P53 18 ;*============================================================ 128 ; PORT P2 BITA=! @ 19 ;* 129 ; 20 ;* 130 ; * NEIN # TEST TAUCHER IST IN DAS WASSER EINGESTIEGEM 21 ;* 131 ; 22 ;* 132 ; * # TEST DELTAP < 80 7, NEIN # GOTO P53 23 ;*************************************************************** 133 ; 24 ; 134 ; 25 ; 135 ; * JA # TEST DELTAP > 0.0258AR 7, #NEIN GOTO P53 26 ; EQUATES 136 ; 27 ; ********************************** 137 ; 28 ; 138 ; * JA # BET STATES AND FLAGS FOR SMORCEL-WORK * 29 ; 139 ; 30 ; 140 ; * AT SNORCEL # PORT P2 BIT6:=1 31 ; 141 ; 32 VARIABLEN : 142 ; 33 ; PNEU EQU 52 143 ; * PNULL : = PALT/4. MIT ROTATE * 34 ; PNULL EQU 51 144 ; 35 ; DEPTH EQU 58 ; AKTUELLE TAUCHTIEFE 145 ; 36 ; DEMAXV EQU 57 ; MAX. TAUCHTIEFE (VARIABEL) 146 ; * PMEN := PMEU/4, MIT ROTATE * 37 ; DEMAXD EQU 56 ; MAX. TAUCHTIEFE(DISPLAY) 147 ; 38 ; DEDEX EQU 53 ; AKTUELLE DEKO-TIEFENSTUFE 148 ; 39 ; DEDEKM EQU 52 ; MAX. DEKO. -TIEFENSTUFE 149 ; 40 ; BOTSEC EQU 47 ; BOTTOMTIME (SEKUNDEN-ANTEIL) 150 PS3: 41 ; BOT EQU 46 ; BOTTOMTIME (MINUTSN-ANTEIL) 151 ; * PALT ;= PNEU * 42 ; BOTZZ EQU 43 152 ; 43 ; BOTZZS EQU 42 153 ; 44 ; SFINTE EQU 41 154 ; * SET DOWNCI : = 2 * 45 ; SFISEC EQU 40 155 ; 46 ; KEGELT EQU 39 ; KEQELZEIT(MINUTENANTEIL) 156 ; 47 ; KEGSEC EQU 38 ; KEGELZEIT(SEKUNDENANTEIL) 157 ; 48 ; DEKOTT EQU 37 158 ; * GOTO CHKSET * 49 ; DEKOTS EQU 36 159 ; 50 ; DEKOT EQU 35 160 ; 51 ; UPDIVT EQU 34 161 END 52 ; DIVET EQU 33 Tabelle 14 55 ; DOWNCI EQU 27 Tabelle 14 110 ; Programm : 56 ; DOWCBO EQU 26 @ DOWNCOUNTER FUER @OSEC. Programm : 111 ; CHKSET 57 ; STATRG EQU 24 CHKSET 112 ; Page 2 58 ; Page 3 113 SET3 : 59 ; 114 ; * TEST AT SURFACE @, NEIN# GOTO SET2 * 60 ; SUBRUTINEN : 115 ; # STATRG BITO=1 ? 61 ; 116 ; 62 ; SUB EQU XXXH FUER TEST IM ICE 117 NXSETI : 63 ; SUBO EQU XXXH FUER TEST IM ICE 118 ; * @A# TEST AT SURFACEINTERVAL @ NEIN# GOTO SET4 64 ; 119 ; 65 ; 120 ; 66 ; DIVBD EQU XXXH ; B BY B DIVIDE, DIREKT 121 NXSET2 : 67 ; BDECOW EQU @@OH ; SOBR. DECO-WERTE 122 ; * SURFACEINTERVAL-TIME NACHFUEHREN * 68 ; 123 ; * JA# TEST SFISEC=120 ? NEIN GOTO SET4 * 69 ; 124 ; 70 ; STATEMENTS 125 ; 71 ;****************************** 126 ; * JA# SFINTT : = SFINTT+1, SFISEC : = 0 * 72 ; 127 73 ; 128 ; 74 ; 129 ; * GOTO SET 4 * 75 ; 130 ; 76 CHKSET : 131 ; 77 ; 132 ; 78 ; 133 SETS : 79 ; 134 ; * SFISEC : = SFISEC+1 * 80 ; 135 ; 81 ; * TEST AT SOFIWARE-ERROR 2. JA# GOTO CHE2 136 ; 82 ; # STARG BIT6=1 137 ; 83 ; 138 ; 84 ; 139 ; 85 ; 140 SETI : 86 SETO : 141 ; * SET ALL FOR DUT DF RANGE * 87 ; * NEIN# DOUNCOUNTER ISEC. ERNIEDIGEN * 142 ; 88 ; 143 ; * SET STATES AND FLAGS AT ZERD * 89 ; 144 ; 90 ; * TEST OUT OF RANGE @, JA# GOTO SETI * 145 ; * PREPARE FOR DISPLAY * 91 ; # PORT2 BIT@=1 ? 146 ; 92 ; 147 ; 93 ; 148 ; * AKTUELLE TAUCHTIEFE (DEPTH) BESTIMMEN * 94 ; 149 ; # DEPTH : = PNEU-PNULL 95 POSET2 : 150 ; 96 ; * NEIN # AUFSTIEGSZEIT INNERRALB DER NULLZEIT 151 ; * TEST TAUCNER VERLAESST DAS WASSER ?. NEIN # * BEST. 97 ; # UPDIVT : = TRUNC {(DEPTH+10)/20)) 152 ; * # GOTO SET2 98 ; 153 ; TEST OEPTH < = 0 ? 99 ; * TEST AT ZERDTIMDIVE ? JA# GOTO SET@ * 154 ; 100 ; # FLAG F1=1 ? 155 ; 101 ; 156 ; * DEPTH : = 0 * 102 ; * NEIN # BESTIMME ALLE BENDETIGTEN DEKO-WERTE 157 ; * 103 ; # PREPARE AND CALL SUBR. BDECOW 158 ; 104 ; # DEXOT : = (DEKOT DER DEOKM) 159 ; 105 ; # DEDEK. = DEDEKM 160 ; 106 ; # SUMME DER DEKOTIME ABSPEICHERN IN SO 161 SET2 : EKOT 107 ; 162 ; * TAUCHZEIT NACHFUEHREN , 108 ; * AUFSTIEGSIEIT AUSSERHALB DER NULLZEIT NACH@U 163 ; * TEST DIVETS = 120 # NEIN GOTO SET6 ERREN 109 ; # UPDI@@: = UPOIVT + (SUMME DER DEKOTI 164 . MES) Tabelle 14 165 ; * JA# DIVET : = DIVET+1, DIVETS: = 0 * Tabelle 14 220 ; Programm; 166 Programm: 221 SET11; CHKSET 167 ; CHKSET 222 ; * KEQSEC; = KEQSEC+1 * Page 4 168 ;* GCTO SETZ * Page 5 223 ; 169 ; 224 ; 170 ; 225 ; 171 ; 226 ; 172 SET6 ; 227 SET12; 173 ; * DIVETS: = DIVETS+1 * 228 ; * DOWNNOWNTER-30SEC ERNIEDRIGEN * 174 ; 229 ; # DOWC30 ; = DOWC30-1 175 ; 230 ; 176 ; 231 ; 177 ; 232 ; 178 SET7; 233 SET10 ; 179 ; *TEST OUT OF RANGE ?, JA# GOTO DISPLY 234 ; * TESE AT DECOMPRIMIEREN ? NEIN# GOTO CHEK1 * 180 ; # PORTE DIT7 = 1 ? 235 ; # PORT2 DIT5 = 1 ? 181 ; 236 ; 182 237 NXSET6; 183 ; 238 ; * JA# DEKOTIME-TOTAL ERFASSEN UND DIE DEKOTIME DER 184 SET4; 239 ; * BETREFFENDEN DEKOTIEFENSTUFF HINUNTER ZAEHLEN 185 ; * TEST AT KOREKTURssOTTOMTIME ? MEIN# GOTO SET3 240 ; * TEST DEKOTS = 120 ?, NEIN GOTO SET13 186 ; # STATRG EIT4 = 1 ? 241 ; 187 ; 242 ; 188 NXSET4; 243 PQSET3 ; 189 ; * JA# KORREKTURGOTTOMTIME NACHFUEHREN * 244 ; * JA# DEKOTT; = DEKOTT+1, DEKOTS; = 0 DEKOT; = DEKOT-1 190 ; * TEST BOTZZS = 120 ?, NEIN GOTO SET9 * 245 191 ; 246 ; 192 PQSET1; 247 ; * GOTO SET14 * 193 ; * JA# DOTZZ: = DOTZZ+1, BOTZZS: = 0 * 248 ; 194 249 ; 195 ; 250 ; 196 ; * GOTO SETB * 251 SET13; 197 ; 252 ; * DEKOTS; = DEKOTS+1 * 198 ; 253 ; 199 ; 254 ; 200 SET9; 255 ; 201 ; * DOTZZS; = DOTZZS+1 * 256 ; 202 ; 257 SET14; 203 ; 258 ; * AUFTAUCHZEIT WAEHREND DER DEKOMPRESSION UM DIE * 204 ; 259 ; * TOTAL DEKOMPRIMIERTE ZEIT (DEKOTT) ERNIEDRICEN * 205 ; 260 ; # UPDIVT; = UPDIVT+SDEKOT-DEKOTT 206 SETB, 261 ; 207 ; TEST AT DIVEUP ?, NEIN# GOTO SETIO * 262 ; 208 ; # STATRG DIT2 = 1 ? 263 ; 209 ; 264 ; 210 NXSETS; 265 ; 211 ; * JA# KORREKTURssOTTOMTIME NACHFUEHREN * 266 ; 212 ; * TEST KEQSEC = 120 ? NEIN COTO SET11 * 267 CHEK1; 213 ; 268 ; * TESTEN DER STATES UND INFOLGE DESSEN * 214 ; * JA# KEGELT ; = KEGELT+1, KEQSEC; = 0 * 269 ; * # GOTO NEXT PROGRAN 215 270 ; 216 ; 271 ; 217 ; * GOTO SET12 272 ; 218 ; 273 ; 210 ; 274 CHEK2 Tabelle 14 Tabelle 15 1 ; ********************************************************* Programm: 2 ;* CHKSET Programm: 3 ;* OBERFLAECHENBEREICH Page 6 SURFACE 4 ;* Page 1 5 ;*========================================================= 6 ;* 275 ; * AT SOFTWARE-ERROR * 7 ;* DIESES MAINPROGRAM WIRD INFOLGE DES STATUS= 276 ; * SET ALL FOR SOFTWARE-ERROR 8 ;* AT SURFACE ADGEARBEITET UND FUEHRT DABEI AUS: 277 ; 9 ;* 278 ; * SET STATES AND FLAGES AT 2ERO * 10 ;* ERKENNUNG OB DER TAUCHER. 279 ; 11 ;* 280 ; 12 ;* A) SCHNORCHELT, D.H. SICH IM WASSER 281 ; * PREPARE FOR DISPLAY * 13 ;* BEFINDET, JEDOCH IM BEREICH DER 282 ; 14 ;* OBERFLAECHE BLEIBT. # 283 ; 15 ;* DEPTH: = (PNEU-PNULL) 284 ; * GBTO DISPLY * 16 ;* 285 ; 17 ;* B) DEN OBERFLAECHENBEREICH VERLAESST 286 ; 18 ;* INDEM ER INS TAUCHEN UEBERGEHT. # 288 END 19 ;* STATUS: = DIVE 20 ;* 21 ;* C) DAS WASSER VERLAESST UND DAHER DIE 22 ;* VERSTAERKUNG DES ADC DIRECKT UM USER SYMBOLS 23 ;* SCHALTET. CHEK1 0000 CHEK2 0000 CHKSET 0000 NXSET1 0000 NXSET2 0000 NXSET 24 ;* FLAG: = NOT SNORCEL PGSET1 0000 PGSET2 0000 PGSET3 0000 SETO 0000 SET1 0000 SET10 25 ;* SET13 0000 SET14 0000 SET2 0000 SET3 0000 SET4 0000 SET5 26 ;* D) SICH IN EINEN SURFACEINTERVAL BE SET8 0000 SET9 0000 27 ;* FINDET # 28 ;* CALL SUBRUTINE, ZUR BESTIMMUNG DER 29 ;* REP. GROUP AT END OF SURFACE INTER 30 ;* VAL. 31 ;* 32 ;* D) DIE REP. GROUP "O" ERREICHT HAT # 33 ;* FLAG: = NOT SURFACEINTERVAL 34 ;* 35 ;* ERRFORDERLICHE ANFANGS-INITIALISIERUNG DURCH 36 ;* DEN RESTART. 37 ;* 38 ;* SURFACEINTERVALITIME # SFINTT :=0 39 ;* DTO # SFISEC: =0 40 ;* NOT SURFACEINTERVAL # STATRG BIT3 : =0 41 ;* AT SURFACE # STATRG BIT0 =1 42 ;* AKTUELLE REP. GROUP # RPGRUP =0 43 ;* 44 ;* BEM. : ZYKLISCHES STARTEN DIESEE PROGRAMMES 45 ;* ALLE 0 5 SEC. 46 ;* 47 ;* 48 ;*===================================================== 49 ;* 50 ;* 51 ;* 52 ;* 53 ;****************************************************** 54 ; Tabelle 15 55 ; Tabelle 15 110 ; 56 ; EQUATES 111 ; Programm : 57 ;********************* Programm : 112 SF1: SURFAC 58 ; SURFAC 113 ; * SET FOR SURFACE-WORK * 59 ; 114 ; * NOT SNORCEL # PRRT P2 BIT6: =0 * Page 2 60 ; VARIABLEN: 115 ; 61 Page 3 116 ; 62 ; PENU EQU 62 117 ; * PALT:= PALT*4, DRUCK AN DIE VERSTAERKUNG 4 ANPASSBEN 63 ; PNULL EQU 61 118 ; 64 ; DEPTH EQU 58 ; AKTUELLE TAUCHTIEFE 119 ; 65 ; RPGRUP EQU 50 ; AKTUELLE REP GROUP 120 ; * DEPTH: = 0 * 66 ; SFINTT EQU 41 ; SURFACEINTERVAL-TIMER (MINUTEN) 121 ; 67 ; SFISEC EQU 40 ; SURFACEINTERVAL-TIMER (SECUNDEN) 122 ; 68 ; STATRQ EQU 24 ; STATUSERGISTER 123 ; 69 ; 124 SF2: 70 ; 125 ; * TEST AT SURFACEINTERVAL ? NEIN # GOTO DISPLY 71 ; SUBRUTINEN; 126 ; 72 127 ; 73 ; SUB EQU XXXH; 128 ; * JA # BESTIMME AKTUELLE REP GROUP AT THE END OF * 74 ; SUBD EQU XXXH; 129 ; * THE (RPQRVP) AND THE SURFACEINTERVAL-TIME * 75 ; BRPGSF EQU XXXH; SUBRUTIME ZUR RPGRUP BESTIM- 139 ; 76 MUNG AN DER OBERFLAECHE. 131 ; 77 ; 132 ; * TEST REP GROUP AT END OF SURFACE-INTERVAL = 0 ? * 78 ; STATEMENTS 133 ; * NEIN# GOTO DISPLY * 79 ; *********************** 134 ; 80 ; 135 ; 81 ; 136 ; * JA# SET NOT SURFACEINTERVAL # STATRG BIT3: =0 * 82 ; 137 ; 83 ; 138 ; 84 SURFAC: 139 ; * GOTO DISPLY * 85 ; 140 ; 86 ; 141 ; 87 ; * TEST AT SNORCEL ? NEIN # GOTO SF2 * 142 END 88 ; USER SYMBOLS 89 ; SF1 0000 SF2 0000 SURFAC 00000 90 ; * JA# AKTUELLE TAUCHTIEFE (DEPTH) BERECHNEN * 91 ; ASSEMBLY COMPLETE, NO ERRORS 92 ; 93 ; * TEST TAUCHER VERLAESST DAS WASSER ? JA# GOTO SF1 * 94 ; * TEST DEPTH # 0 ? * 94 ; 96 ; 97 ; * NEIN# TEST DEPTH > 1. SM ? NEIN# GOTO SF2 * 98 ; 99 ; 100 ; * JA# TAUCHER AM TAUCHEN # SET STATES * 101 ; 102 ; * AT DIVE # STATRG BITI;=1 103 ; 104 ; 105 ; * NOT SURFACE # STATRG BITO: =0 * 106 ; 107 ; 108 ; * GOTO DISPLY* 109 ; Tabelle 16 1 ; ******************************************************** Tabelle 16 55 ; * 2 ; * 56 ; * Programm: 3 ; * DIVE Programm : 57 ; ******************************************************* DIVE 4 ; * DIVB 58 ; 5 ; *======================================================== 59 ; Page 1 6 ; * Page 2 60 ; EOUATES 7 ; * DIESES MAIMPROGRAM WIRD INFOLGE DES STATUS AT 61 ; ************************ 8 ; * DIVE ABGEARBEITET UND FUEHRT DABE1 AUS 62 ; 9 ; * 63 ; 10 ; * 1. BESTIMMUNG DER BOTTOMTIME UND DEN 64 ; VARIABLEN: 11 ; * DIVERSEN "TIEFEN". 65 ; 12 ; * 66 ; PNEU EQU 62 13 ; * 2. ERKENNUNG DB DER TAUCHER; 67 ; PNULL EQU 61 14 ; * 68 ; DELTAB EQU 59 15 ; * A) TAUCHT. D.H. IN DIE TIEFE ODER IN 69 ; DEPTH EQU 58 ; AKTUELLE TAUCHTIEFE 16 ; * DIE WAAGERECHTE SHWIMMT. BEWEGT 70 ; DEMAXY EQU 57 ; MAX. TAUCHTIEFE (VARIABEL) 17 ; * SICH DER TAUCHER GEGEN DIE OBERFAE- 71 ; DEMAXD EQU 56 ; MAX. TAUCHTIEFE (dISPLAY) 18 ; * CHE. # 72 ; DEST EQU 55 ; AKTUELLE TIEFENSTUFE 19 ; * STATUS: = DIVEVP 73 ; DESTK EQU 54 ; KORREKTUR-TIEFENSTUFE 20 ; * 74 ; RPGRUP EQU 49 21 ; * B) INFOLGE DES STUFENWEISEN ABTAUCHENB 75 ; BOTSEC EQU 48 ; BOTTEMTIME (SENUNDEN-ANTEIL) 22 ; * EINEN ZEITGEWINN BEZUEGLICH DER BOT- 76 ; BOT EQU 47 ; BOTTOMTIME (MINUTEN-ANTEIL) 23 ; * TOMTIME ERHAELT. # 77 ; SOTM EQU 46 ; KORREKTUR-BOTTOMTIME(NULLZEIT 24 ; * DOTTOMTIME : = ZEITZUSGHLAG 78 ; ; DER DEMAXU) 25 ; * 79 ; BOTZZ EQU 45 ; BOTTOMTIME-ZUSCHLAGSZEIT 26 ; * C) AN DER NULLZEITGENZE AUFTAUCHT UND 80 ; KEGELT EQU 42 ; KEQELZEITOMIMUTEN-TIMER) 27 ; * SOFORT WIEDER AUF DIE VORHERIGE 81 ; KEGSEC EQU 41 ; KEGELZEITISEKUNDEN-TIMER) 28 ; * MAXIMALE TAUCHTIEFE ABTAUCHT. # 82 ; DOWCBO EQU 29 ; DOWNCOUNTER FUER 30SEC. 29 ; * # KORREKTUR DER DADURCH FEHLERBE- 83 ; 30 ; * HAFTET ENSTANDENEN BOTTOMTIME # 84 ; SUBRUTINEN: 31 ; * BOTTOMTIME: = (NULLZEIT DER MAXIMALEN 85 ; 32 ; * TAUCHTIEFE)+(BOTTOMTIME- 86 ; STATRG EQU 24 33 ; * ZUSCHLAGSZEIT) 87 ; BUB EQU XXXH 34 ; * 88 ; ZUBD EQU XXXH 35 ; * D) DIE MULLZEITGRENZE UEBERSCHRITTEN 89 ; BAPGUW EQU XXXH,SUBR ZUR RPGRUP-DEST. 36 ; * WURDE. # 90 ; UNTER WASER 37 ; * FLAG: = NOT ZEROTIME-DIVE 91 ; SZZU EQU XXXH,SUBR ZUR ZUSCHLAGSZEIT-BEST. 38 ; * 92 ; BZT EQU XXXH,SUBR ZUR ZERDTIME-BEST. 39 ; * 93 ; BDEST EQU XXXH;SUBR ZUR TIEFEMSTUFEN-BEST. 40 ; * ERFORDERLICHE ANFANGSINITIALISIERUNG DURCH DEN 94 ; BDESTIN EQU XXXH;SUBR. ZUR MAECHST GROESSEREN 41 ; * RESTART. 95 ; ;@IEFENSTUFEN-BEST. 42 ; * AT ZEROTIME-DIVE # FLAG F1:=1 96 ; 44 ; * NOT KORREKTUR-BOTTOMTIME # STATRG BIT6:=0 97 ; 45 ; * NOT DIVE # STATRG BIT1:=0 98 ; STATEMENTB 46 ; * TIEFENSTUFE = 12M # DEST = 24 99 ; ********************* 47 ; * 100 ; 48 ; * BEM : ZYKLISCHES STARTEN DIESES PROGRAMES 101 ; 49 ; * ALLE 0,5 SEC. 102 ; 50 ; * 103 ; 51 ; * 104 DIVE: 52 ; *************************************************** 105 ; 53 ; * 106 ; 54 ; * 107 ; 108 ; * AKTUELLE TAUCHITTEFE (DEPTH) BERECHNEN * 109 ; DEPTH: (PNEU-PNULL) Tabelle 16 110 ; Tabelle 16 165 ; * JA # MAXIMAL MOEGLICHE BOTTOMTIME VEBERSCHRITTEN # 111 ; Programm: 166 ; Programm : 112 ; * TEST DELTAP < 0 ? JA# GOTO DIVE1 * 167 ; * SET FOR OUT OF RAMGE. DIVE 113 ; # DELTAP = (PNEU-PALT) DIVE 168 ; # OUT OF RAMGE # PORT2 BIT7=1 114 ; 169 ; # NOT DIVE # STATRG BIT1=0 Page 3 115 ; * NEIN# MAX. TAUCHTIEFEN NACHFUEHREN WENN ERFORDERLICH Page 4 170 ; 116 ; 171 ; * GOTO DISPLY * 117 ; 172 ; 118 ; * TEST DEPGH > DEMAXD ? NEIN# GOTO DIVER2 * 173 ; 119 ; 174 ; 120 ; * JA# DEMAXD: = DEPTH * 175 DIVES: 121 ; 176 ; * KORREKTUR DER FEHLERBEHAFTETEN BOTTOMTIME INFGLGE 122 ; 177 ; * KURZZEITIGEM AUFTAUCHEN. 123 ; 178 ; 124 DIVES: 179 ; 125 ; * TEST DEPTH > DEMAXV ? NEIN# GOTO DIVE3 * 180 ; * TEST AKTUELLE TIEFENSTUFE = KORREKTUR-TIMERFENTUFE ? 126 ; 181 ; * NEIN# GOTO DIVE6 127 ; * JA# DEMAXV: = DEPTH * 182 ; 128 ; 183 ; * JA# TEST ((NULLZEIT DER MAX. TAUCHTIEFS)+ 129 ; 184 ; * (BOTTOMTIME-ZUSCHLAGESZEIT)) > BOTTOMTIME ? 130 ; 185 ; * JA # GOTO DIVE7 131 DIVES: 186 ; 132 ; * STUFENWEISES ABTAVCHEN UND BOTTOMTIME MIT * 187 ; * NEIN# BOTTOMTIME: =[(NULLZEIT DER MAX. TAUCHTIEFE)+ 133 ; * ZETITGEWINN BERECHNEN, WENN MOEQLICH. * 188 ; * (BOTTOMTIME-ZUSCHLAGSTIME)] 134 ; 189 ; 135 ; 190 ; 136 ; * TEST AKTUELLE TIEFENSTUFE UEBERSCHRITTEN ? NEIN# 191 ; 137 ; * # GOTO DIVE4 192 DIVE7; 138 ; 193 ; * SET NOT KORREKTUR-BOTTOMTIME * 139 ; * JA# BESTIMME REP GROUP MIT DER AKTUELLEN TIEFEN- 194 ; * STATGE BITB : = 0 140 ; * STUFE UND DER BOTTOMTIME IN DER REPETITV-TABELLE. 195 ; 141 ; # PREPARE AND CALL SUBR. BRPQUW 196 ; 142 ; 197 ; * RUECKSETIEN DER BOTTOMTIME-ZUSCHLAGSZEIT IN * 143 ; * BESTIMME NAECHST GROESSERE TIEFENSTUFE MIT DER 198 ; * MINUTEN UND SEKUNDEN : = 0 144 ; * AKTUELLEN TIEFENSTUFE UND DER REPETITIV-TABELLE. 199 ; 145 ; # PREPARE AND CALL SUBR. DESIN 200 ; * GOTO DIVES * 146 ; 201 ; 147 ; * BESTIMME DEN ZEITZUSCHLAOIZZU; MIT DER (NEUEN)AKTO- 202 ; 148 ; * ELLEN TIEFENSTUFE UND DER REP. GROUP IN DER REP- 203 ; 149 ; * ETITIV-TABELLE. 204 DIVE1: 150 ; # PREPARE AND CALL SUBR. BZZU 205 ; * NEIN# TAUCHER AM AUFTAUCHEN * 151 ; 206 ; 152 ; * TEST ZEITZUSCHLAGI(ZZU) > BOTTOMTIME ?, JA# 207 ; * BOTTOMTIME: = BOTTOMTIME+0 SSEC 153 ; * # GOTO DIVE4 208 ; 154 ; 209 ; * SET STATES * 155 ; * NEIN# BOTTOMTIME: # ZEITZUSCHLAG 210 ; * NOT DIVE # STATRG BIT1:=0 * 156 ; 211 ; * AT DIVEUP # STATRG BIT2:=1 * 157 ; 212 ; 158 ; 213 ; * SET TIMERS AND COUNTERS * 159 DIVE4: 214 ; * KEGELZEIT :=0 IN BEKUNDEN- UND MINUIER-TIMER * 160 ; * BOTTONTIME: = BOTTOMTIME+0 SSEC * 215 ; * DOWNCOUNTER BOSEG :=61 * 161 ; 216 ; 162 ; 217 ; 163 ; # ISST BOTTOMTIME BESS MIN # NEIN# GOTO DIVES : 218 ; 164 ; 219 DIVES: Tabelle 16 220 ; * TEST AT ZEROTIME-DIVE ? NEIN# GOTO DISPLY * Tabelle 17 1 ; ************************************************************ 221 ; 2 ; * Programme : 222 ; * JA# BESTIMME ZEROTIME DER MAX. TAUCHTIEFE * Programm : 3 ; * DIVEUP 223 ; # PREPARE AND CALL SUBR. BZT DIVEUP 4 ; * DIVE 224 ; 5 ;*=========================================================== Page 5 225 ; Pago 1 6 ; * 226 ; * TEST AT ZERGTIME-DIVE ? NEIN# GOTO DISPLY 7 ; * DIESES MAINPROGRAM WIRD INFOLGE DES STATUS 227 ; 8 ; * AT DIVEUP ABGEARBEITET UND FUEHRT DABEI FOLGEN 228 ; * JA # * 9 ; * DES AUS : 229 ; * TET BOTTOMTIME # ZEROTIME ? NEIN# GOTO OISPLY 10 ; * 230 ; 11 ; * 1. BESTIMMUNG DER AKTUELLEN TAUCHTIEFE UND 231 ; * JA# KORREKTUR-BOTTOMTIME: = BOTTOMTIME * 12 ; * NACHFUEHRUNG DER TEMPORAEREN-BOTTOMIME. 232 ; 13 ; * 233 ; 14 ; * 234 ; * UMRECHNENEN DER BOTTOMTIME BER MAX. TAUCHTIEFE * 15 ; * 2. ZYKLISCHES ANSETZEN VON AUFTAUCHKEGELN UND 235 ; * (VARIABEL) AUF DIE AKTUELLE TAUCHTIEFE * 16 ; * KONTROLLIEREN, OB DER TAUCHER SICH IN 236 ; 17 ; * DIESEN ZEITLICH UND DRUCKMAESSIG LIMMITIER 237 ; * BESTIMME REP GROUP MIT DER MAX, TAUCHTIEFE UND * 18 ; * TEN AUFTAUCHKEGELN BEFINDET. 238 ; * DER ZEROTIME. 19 ; * D.H. : 239 ; # PREPARE AND CALL SUBR. BRPGUW 20 ; * ERKENNUNG OB DER TAUCHER NICHTMEHR DEFINI 240 ; 21 ; * TIONSGEMAESS AUFTAUCHT; 241 ; * BESTIMME BOTTOMTIME MIT DER REP GROUP UND DER * 22 ; * 242 ; * AKTUELLEN TAUCHTIEFE. * 23 ; * A) INDEM ER IN DEN OEBERFLAECHEN-BEREICH 243 ; # PREPARE AND CALL SUBR. BZZU 24 ; * GELANGT. # 244 ; 25 ; * STATUS: = SURFACE 245 ; * BESTIMME ZEROTIME DER AKTUELLEN TAUCHTIEFE * 26 ; * 246 ; # PREPARE AND CALL SUBR. BZT 27 ; * B) DIE UNTERSTE DECOSTUFE ERREICHT HAT # 247 ; 28 ; * STATUS: = DECOMPRIMIEREN 248 ; 29 ; * STATUS: = DECOMPRIMIEREN 249 ; * TEST BOTTOMTIME > ZEROTIME ? JA# GOTO DIVEB * 30 ; * C) IN DAS TAUCHEN UEBERWECHSELT WEIL DIE 250 ; 31 ; * AUFSTIEGESRATE < OM/MIN IST 251 ; * NEIN# SET FOR KORREKTUR 32 ; * 252 ; 33 ; * 251 ; * NEIN# SET FOR KORREKTUR * 34 ; * 3. ERKENNUNG OB DER TAUCHER; 253 ; * AT KORREKTUR-BOTTOMTIME # STATRG BIT4 :=1 * 35 ; * 254 ; * MAX TAUCHTIEFE(VARIABEL) = AKTUELLE TAUCHTIEFE* 36 ; * A) AN DER NULLZEITGRENZE AUFTAUCHT # 255 ; * KGRREKTUR-TIEFENSTUFE: = AKTUELLE TIEFENSTUFE * 37 ; * DADURCH WIRD EIN STUFENWEISES AUFTAU 256 ; * BESTIMME (NEUE) AKTUELLE TIEFENSTUFE MIT DER * 38 ; * CHEN ERMOEGLICHT. 257 ; * AKTUELLEN TAUCHTIEFE IN DER DECO-TABELLE * 39 ; * D.H. ; UMRECHMEN DER BOTTOMTIME AUS DER 258 ; # PREPARE AND CALL SUBR BDESY 40 ; * TIEFE, WO MIT DEN AUFSTIEG BECOMMEN 258 ; 41 ; * WURDE, IN DIE BOTTOMTIME DER AKTUELLEN 260 ; * GOTO DISPLY * 42 ; * TAUCHIEFE. BEREITSTELLUNG DER KORREK 261 ; 43 ; * TURWERTE FUER EIN ALLFAELLIGES UEBER 262 ; 44 ; * WECHSELN INS TAUCHEN. 263 ; 45 ; * 264 DIVES: 46 ; * B) DIE NULLZEITGRENZE UBERSCHREITET. # 265 ; * SET NOT ZEROTIME-DIVE # FLAG F1:=0 47 ; * FLAG: = NOT ZEROTIMEDIVE 266 ; 48 ; * 267 ; * GOTO DISPLY * 49 ; * C) UNTER DIE TIEFENSTUFE ABGETAUCHT IST. 268 ; 50 ; * IN DER MIT BEM AUFSTIEG BEGONNEN WOPDE 269 ; 51 ; * # 270 END 52 ; * STATUS: = DIVE USER SYMBOLS 53 ; * DIVE 0000 DIVE1 0000 DIVE2 0000 DIVE3 0000 DIVE4 0000 DIVE5 54 ; * DIVE6 0000 Ttabelle 17 55 ; * ERFSRDERLICHE ANFANGSINITIALISIERUNG DURCH Tabelle 17 110 56 ; * DEN RESTART. 111 ; BUB EQU XXXH Programm : 57 ; * Programm: 112 ; BUDD EQU XXXH DIVEUP 58 ; * AT ZEROTIMDIVE # FLAG F1:=1 DIVEUP 113 ; DRPGUW EQU XXXH;SUBR. ZUR RPGRUP-BEST. 59 ; * NOT DIVEUP # STATRG BIT2:=0 114 ; ; UNTER WASER. Page 2 60 ; * NOT KORREKTURSOTTOMTIME # STATRG BIT4:=0 Page 3 115 ; BZZU EQU XXXH;SUBR. ZUR ZUSCHLAGSZEIT-DEST. 61 ; * KEGELTIME # KEGELT:=0 116 ; BZT EQU XXXH;SUBR. ZUR ZEROTIME-BEST 62 ; * KEGELTIME(SEKUNDEN) # KEGELT:=0 117 ; BDEST EQU XXXH;SUBR. ZUR TIEFENSTUFEN-BEST 63 ; * DOWNCOUNTER FUER 30SEC # DOWCBO:=61 118 ; 64 ; * TEMPORAERE-BOTTONTIME # TBT:=0 119; 65 ; * 120 ; 66 ; * 121 ; STATEMENTS 67 ; * BEM. : ZYKLISCHES STARTEN ALLE G. SSEC. 122 ;****************** 68 ; * 123 ; 69 ; * 124 ; 70 ; *===================================================== 125 ; 71 ; * 126 ; 72 ; * 127 DIVEUP: 73 ; * 128 ; 74 ; * 129 ; 75 ; ******************************************************* 130 ; 76 ; 131 ; * AKTUELLE TAUCHTIEFE (DEPTH) BERECHNEN * 77 ; 132 ; DEPTH ;= (PNEU-PNULL) 78 ; EOUATES 133 ; 79 ;******************** 134 ; 80 ; 135 ; *TEST (DOWNCOUNTER-30SEC.) = 30 ? NEIN-QDTD DIVUP1 81 ; 136 ; 82 ; 137 ; * JA#DRUCK BEI BEGINN DES AUFTAUCHENS IM KEGEL RETIEN; 83 ; VARIABLEN; 138 ; # PALT30:=PALT 84 139 ; 85 ; PALT EQU 63 140 ; 86 ; PNEU EQU 62 141 ; 87 ; PNULL EQU 61 141 ; 88 ; PALTBO EQU 60 142 DIVUP1; 89 ; DELTAP EQU 59 143 ; * TEMPORAERE-BOTTOMTIME NACHFUCHREN; WOBEI DIE SEKUN 90 ; DEPTH EQU 58 ; AKTUELLE TAUCHTIEFE 144 ; * DEN UND MINUTEN DER BOTTOMTIME UND KEGELTIME VER 91 ; DEMAXV EQU 57 ; MAX. TAUCHTIEFE(VARTABEL) 145 ; * RECHNET WERDEN: # SUMM: = BOTSEC+KEGESC 92 ; DEST EQU 55 ; AKTUELLE TIEFENSTUFE 146 ; * # TEST SUMME = 1200 93 ; DESTK EQU 54 ; KORREKTUR-TIEFENSTUFE 147 ; * # NEIN # GOTO NEXDUL 94 ; DEDEK EUQ 53 ; AKTUELLE DEKO-TIEFENSTUFE 148 ; * JA# TAT:= BOT+KEGELT+1 95 ; DEDEKM EQU 52 ; MAX. DEKO. - TIEFENSTUFE 149 ; * NEXDU1: # TBT: = BOT+KEGELT 96 ; RPGRUP EQU 49 150 ; 97 ; BOTSEC EQU 48 ; BOTTOMTIME(SEKUNDEN-ANTEIL) 151 ; 98 ; BOT EQU 47 ; BOTTOMTIME(MINUTEN-ANTEIL) 152 ; 99 ; BOTK EQU 46 ;KORREKTUR-BOTTOMTIME (TEMPO- 153 ; * TEST AT ZEROTIME-DIVE ? JA# GOTO DIVUP2 * 100 ; ;-RAERE-BOTTOMTIME) 154 ; 101 ; KEQELT EQU 42 ; KEGELZEIT(MINUTENANTEIL) 155 ; * NEIN# TEST DEPTH = DEDEMN ? NEIN# GOTO DIVUP4 * 102 ; KEGSEC EQU 41 ; KEGELZEIT(BEKUNDENANTEIL) 156 ; 103 ; TBT EQU 34 ; TEMPORAERE-BOTTOMTIME 157 ; * JA# DENOMPRESSIONS-COUNTODUN BEGIMNT * 104 ; DIVET EQU 33 ; DIVETIME(MINUTENANTEIL) 158 ; 105 ; DIVETS EQU 32 ; DIVETIME(SEKUNDENANTEIL) 159 ; * SET STATEB * 106 ; DOWCBO EQU 29 ; DOWNCOUNTER FURER 30SEC. 160 ; * NOT DIVEUP # STATRG BIT2:=0 107 ; STATRG EQU 24 161 ; * AT DENOMPRESSION # PCRT2 BIT5:=1 * 108 ; 162 ; * UEBER PERT P2 LTG 5 (BIT5) WIRD EIN LED ANGESZUEDET * 109 ; VARIABLEN: 163 ; * AT ZEROTIME-DIVE # FLAG F1:=1 164 ; * SET DOWNCOUNTER-30SEC ; = 64 Tabelle 17 165 ; # DOWC30:=61 Tabelle 17 220 ; # PREPARE AND CALL SUBR. BOEST 166 ; 221 ; Programm: 167 ; *GOTO DISPLY * Programm: 222 ; * GOTO DIVUP4 DIVEUP 168 ; DIVEUP 223 ; 169 ; 224 ; Page 4 170 ; Page 5 225 ; 171 DIVUP2: 226 DIVUP5; 172 ; * TEST DEPTH # 0 SM ? NEIN# GOTO DIVUP3 * 227 ; * SET NOT ZEROTIM-DIVE# FLAG F1:=0 * 173 ; 228 ; 174 ; * JA# TAUCHER IM OEBERFLAECHENBEREICH * 229 ; 175 ; 230 ; 176 ; * SET STATES 231 DIVUP4: 177 ; * NOT DIVEUP # STATRG BIT2:=0 * 232 ; * TEST ABGETAUCHT UNTER DIE TIEFENSTUFE * 178 ; * AT SURFACE # STATRG BIT0:=1 * 233 ; * WO MIT DEM AUFTAUCHEN BEGONNEN WURDE ?, JA# * 179 ; 234 ; * # GOTO DIVUP6 180 ; * SET DIVETIME: = 0, IN MINUTEN UND SECUNDEN * 235 ; # TEST DEPTH > DEST ? 181 ; 236 ; 182 ; * GOTO DISPLY * 237 ; * NEIN # TEST DOWNCOUNTER 30SEC ? NEIN# GOTO DISPLY 183 ; 238 ; # TEST DEWC30 = 0 ? 184 ; 239 ; 185 ; 240 ; * JA# TEST WIRD MIT MINDESTENS SM/MIN AUFGETAUCHT ? 186 DIVUP3: 241 ; * D.H. : TEST ASCENTRATE=0 4BAR/30SEC ? JA#GOTO DIVUP6 187 ; * NEIN# BESTIMME ZEROTIME DER MAX. TAUCHTIEFE. 242 ; # TEST (APLT30 + 0 4BAR) > PNEU ? 188 ; # PREPARE AND CALL SUBR. BZT 243 ; 189 ; 244 ; * NEIN# TAUCHER NOCH IM AUFTAUCHKEGEL * 190 ; 245 ; * SET (DOWNCOUNTER 30SEC.):=61 * 191 ; * BESTIMME REP GROUP MIT DER MAX. TAUCHTIEFE UND * 246 ; 192 ; * BER ZEROTIME. * 247 ; * GOTO DISPLY * 193 ; # PREPARE AND CALL SUBR. BRPGUW 248 ; 194 ; 249 ; 195 ; 250 ; 196 ; * TET TEMPORAERE-BOTTDMTIME > ZEROTIME ? NEIN# 252 DIVUP6: 197 ; * # GOTO DIVUP4 253 ; 198 ; 254 ; * SET TIMERS * 199 ; * JA# RETTEN DER TEMPORAEREN-BOTTOMTIME UND 255 ; 200 ; * INITIALISIEREN FUER EINEN NEUEN AUFIAUCHKEGEL 256 ; * BOTTOMTIME: = BOTTOMTIME+KEGELTIME: WOBEI DIE SEKUN 201 ; 257 ; * DEN UND MINUTEN DER BOTTOMTIME UND KEGELTIME VER 202 ; * KORREKTURBOTTOMTIME: = TEMPORAERE-BOTTOMTIME 258 ; * RECHNET WERDEN: # SUMME: = BOTSEC+KEGSEC 203 ; * KEGELTIME: = 0 ; IN SEKUMGEN- UND MINUTEN-TIMER 259 ; * # TEST SUMME = 120D ? 204 ; * DOWNCOUNTER 30SEC. : = 61 * 260 ; * NEIN # GOTO NEXDU2 205 ; 261 ; * JA# BOT: = BOT+KEGELT+1 206 ; 262 ; * NEXOU2: # BOT: = BOT+KEGELT 207 ; * BESTIMME BOTTOMTIME MIT DER REP. GROUP UND DER 263 ; 208 ; * AKTUELLEN TAUCHTIEFE. 264 ; # TEST BOT > 255 ? # JA GOTO NEXDU3 209 ; # PREPARE AND CALL SUBR. BZZU 265 ; 210 ; 266 ; 211 ; * TEST BOTTOMTIME > ZEROTIME ? JA# GOTO DIVUP5 267 ; * KEGELTIME: = 0, IN SEKUNDEN- UND MINUTEN-TIMER * 212 ; 268 ; 213 ; * NEIN# SET FOR KORREKTOR 269 ; * SET STATES * 214 ; 270 ; 215 ; * AT KORREKTUR-BOTTOMTIME # STATRG BIT4:=1 271 ; * NOT DIVEUP # STATRG BIT2:=0 * 216 ; * MAX. TAUCHTIEFE(VARIABEL): = AKTUELLE TAUCHTIEFE 272 ; * AT DIVE # STATRG BITI :=1 * 217 ; * KORREKTUR-TIEFENSTUFE: = AKTUELLE TIEFENSTUFE 273 ; 218 ; * BESTIMME (NEUE) AKTUELLE TIEFENSTUFE MIT DER 274 ; * GOTO DISPLY 219 ; * AKTUELLEN TAUCHTIEFE IN DER DECO-TABELLE Tabelle 17 275 ; Tabelle 18 1 ; ********************************************** 276 ; 2 ; * Programm: 277 ; Programm : 3 ; * DECO DIVEUP 278 NEXDU0: DECO 4 ; * 279 ; * MAXIMAL MOEGLICHE BOTTOMTIME USERSCHRITIEN 5 ; *============================================== Page 6 280 ; * SET FOR OUT OF RANGE # PORT2 BIT7:=1 Page 1 6 ; * 281 ; 7 ; * DIESES PROGRAM WIRD INFOLGE DES STATUS AT DEKO 282 ; * GOTO DISPLY * 8 ; * ABGEARBEITET UND FUEHRT DABEI POLGENDES AUS: 283 ; 9 ; * 284 ; 10 ; * 1. DESTIMMUNG BER AKTUELLEN TAUCHTIEFE, 285 ; 11 ; * 286 END 12 ; * 2. ERKENNUNG OB DER TAUCHER NICHT VOR USER GYMBOLD 13 ; * SCHRIFTSGEMAES DEKOMPRIMIERT. DIVEUP 0000 DIVUP1 0000 DIVUP2 0000 14 ; * DIVUP3 0000 DIVUP4 0000 DIVUP 15 ; * A) INDEM ER BM UNTER DIE MAX. DEKO-TIERFEN ASSEMBLY COMPLETE, NO ERRORS 16 ; * STUFE ABTAUCHT. 17 ; * # STATUS: = DIVE 18 ; * 19 ; * B) WENN ER WAEHREND DEM DECO-COUNTDOWN IN 20 ; * IN DEN OBERFLAECHENBEREICH EINTAUCHT. 21 ; * D.H. ; DIE DEKOMPRESSION NICHT DEENDET. 22 ; * # STATUS: = OUT OF RANGE 23 ; * 24 ; * 3. ERKENNUNG OB DER TAUCHER NACH BEENDETER 25 ; * DEKOMPRESSION, INNERT 30 SEKUNDEN, IN DEN 26 ; * OBERFLAECHENBEREICH ZURUECKKHRT. 27 ; * # STATUS: = SURFACE 28 ; * ERREICHT DER TAUCHER DIE OBERFLAECHE IMMERT 29 ; * 3 BEKUNDEN NICHT. 30 ; * # STATUS: = DIVE 31 ; * 32 ; * 4. BESTIMMUNG DER NAECHST HOEHEREN DEXO-TIEFEN 33 ; * STUFE UND DER ZUGEHOERIGEN DEMO-TIME, WENN 34 ; * DIE AUTUELLE DEKO-TIME DEN WERT NULL ER 35 ; * REICHT HAT UND SINE NAECHST HOEHERE DEKO 36 ; * TIEFENSTUFE EXISTIERT. 37 ; * ANBERENFALLS: # 38 ; * DEKOMPRESION VORSCHRIFTSGEMAESS BEENDET. 38 ; * # FLAG: = DEKDENDE 40 ; * 41 ; * 5. BEI VORSCHRIFTSGEMESSER BEENDIGUNG DER 42 ; * DEKOMPRESSION WIRD DIE REP GRUPPE DES 43 ; * ABGESCHLOSSENEN TAUCHGANGES BESTIMMT UND 44 ; * FUER EINEN MEUEN TAUCHGANG INITIALISIERT 45 ; * 46 ; * 47 ; * 48 ; * ERFORDERLICHE ANFANGSINITIALISIERUNG BURCH 49 ; * DEN RESTART. 50 ; * 51 ; * AT SURFACE # STATRG BIT0:=1 52 ; * NOT DIVE # STATRG BIT1:=0 53 ; * NOT DIVEUP # STATRG BIT2:=0 54 ; * NOT DEKOENDE # STATRG BIT5:=0 Tabelle 18 55 ; * NOT SURFACEINTERVAL # STATRG BIT3:=0 Tabelle 18 110 ; BRPDEC EQU XXXH,SUBR. ZUR REP. GRUPPEN DEST. 56 ; * NOT DEKOMPRESSION # PORT2 BIT3:=0 111 ; SENN DIE ZEROTIME VEBERSCHRIT Programm: 57 ; * NOT OUT OF RANGE # PORT2 BIT6:=0 Programm: 112 ; DECO 58 ; * DECO 113 ; 59 ; * DOWNCOUNTER -30 SEC. # DOWCBO:=60 114 ; Page 2 60 ; * DOWNCOUNTER -1MIN. # DOWC1M:=120 Page 3 115 ; 61 ; * DEKOTIME-TOTAL # DEKOTT:=0 116 ; STATEMENTS 62 ; * DEKOTIME # DEKOT :=0 117 ;************************ 63 ; * MAX. DEKO-TIEFENSTUFE # DEDEKM:=0 118 ; 64 ; * DEKO-TIEFENSTUFE # DEDEK :=0 119 ; 65 ; * 120 ; 66 ; * 121 ; 67 ; * SEM : ZYKLISCHES STARTEN ALLE 0.5 SEC. 122 DECO: 68 ; * 123 ; 69 ; * 124 ; 70 ; *================================================= 125 ; 71 ; * 126 ;* AKTUELLE TAUCHTIEFE (DEPTH) BESTIMMEN * 72 ; * 127 ; # DEPTH: = PNEU-PNULL 73 ; * 128 ; 74 ; * 129 ; 75 ; ***************************************************** 130 ; * TEST TAUCHER 3M UNTER DIE MAX. DEKO-TIEFENSTUFE * 76 ; 131 ; * ABGETAUCHT ?, NEIN# GOTO DEKO1 * 77 ; 132 ; # TEST DEPTH > (DEDEKM+3M) 78 ; EQUATES 133 ; 79 ; ********************** 134 ; * JA# TAUCHER HAT IN DAS TAUCHEN UEBERGEWECHSELT * 80 ; 135 ; 81 ; 136 ; * SET TIMERS * 82 ; VARIABLEN: 137 ; 83 138 ; * BOTTOMTIME: = BOTTOMTIME+(TOTAL-DEKOMPRIMIERTE ZEIT) 84 ; PALT EQU 63 139 ; * WOBEI DIE SEKUNDEN UND MINUTEN DER BOTTOMTIME UND 85 ; PNEU EQU 62 140 ; * DER TOTAL- DEKOMPRIMIERTEN ZEIT VERRECHNET WERDEN 86 ; PNULL EQU 61 141 ; * # SUMME : = BOTSEC+DEKOTS 87 ; PALT30 EQU 60 142 ; * # TEST SUMME = 1200 ? 88 ; DELTAP EQU 59 143 ; * NEIN # GOTO NEDECO 89 ; DEPTH EQU 58 ; AKTUELLE TAUCHTIEFE 144 ; * JA# BOT. = BOT+DEKOTT+1 90 ; DEMAXV EQU 57 ; MAX. TAUCHTIEFE(VARIABEL) 145 ; * MEDECO # BOT: = BOT+DEKOTT 91 ; DEST EUQ 55 ; AKTUELLE TIEFENSTUFE 146 ; 92 ; DEDEK EQU 53 ; AKTUELLE BEKO-TIEFENSTUFE 147 ; * DEKOTIME-TOTAL: = 0 ; IN SEKUNDEN- UND MINUTEN-TIRER 93 ; DEDEKM EUQ 52 ; MAX DEKO-TIEFENSTUFE 148 ; 94 ; RPGRUP EQU 50 149 ; * SET NOT ZEROTIMOIVE # FLAG F1.=0 95 ; BOTSEC EQU 48 ; BOTTOMTIME(SEKUNDEN-ANTEIL) 150 ; 96 ; BOT EQU 46 ;BOTTOMTIME(MINUTEN-ANTEIL) 151 ; 97 ; BOTK EQU 45 ; KORREKTUR-BOTTOMTIME (TEMPO 152 ; 98 ;-RAERE-BOTTOMTIME) 153 DEKO6: 99 ; DEKOTT EQU 37 ; DEKOTIME-TOTAL 154 ; * SET STATES * 100 ; DEKOTS EQU 36 ; DEKOTIME IN SECUNDEN 155 ; 101 ; DEKOT EQU 35 ; DEKOTIME 156 ; * NOT DEKOMPRESSION # PORT2 BIT5:=0 102 ; DOWC30 EQU 26 ; DOWNCOUNTER FUER 30SEC. 157 ; * AT DIVE # STATRG BIT1:=1 103 ; STATRG EQU 24 158 ; 104 ; 159 ; * GOTO DISPLY 105 ; SUBRUTINEN: 160 ; 106 161 ; 107 ; SUB EQU XXXH 162 ; 108 ; SUBD EQU XXXH 163 DEKO1: 109 ; BDEKOT EQU XXXH; SUBR. ZUR DEKOTIME-BEST, 164 TEST AUCHER AUF 0 5M AUFGETAUCHT ? NEIN# * Tabelle 18165 ; * # GOTO DEKO2 * Frogramm: 166 ; # TEST DEPTH = 0.5M ? 167 ; DECO, 168 ; * JA# TEST AT DEKOENDE ?. JA# GOTO DEKO5 * 169 ; # TEST STATRG BIT5 = 1 Page 4 170 ; 171 ; * NEIN# TAUCHER IST OHNE VORSCHRIFISGEMAESES * 172 ; * DEKOMPRIMIEREN AUFGETAUCHT. * 173 ; 174 ; * SET OUT OF RANGE # PORT2 BIT7;=1 * 175 ; 176 ; * GOTO DISPLY * 177 ; 178 ; 179 ; 180 DEKO2: 181 ; * TEST AT DEKOENDE ?. NEIN# GOTO DEKO3 * 182 ; # TEST STATRG BIT5 =1 ? * 183 ; 184 ; * JA# TAUCHER HAT VORSCHRIFTSGEMAESS * 185 ; * ZU ENDE DEKOMPRIMIERT. * 186 ; 187 ; * WAIT LOOP 30SEC. FUER DAS ZURUECKKEH- * 188 ; * REN IN DEN OBERFLAECHENBEREICH. * 189 ; # DOWC30:= DOWC3o-1 190 ; 191 ; 192 ; * TEST WAIT= 30SEC. ?. NEIN GOTO DISPLY * 193 ; # DOWC30 = 0 ? 194 ; 195 ; * JA# SET FOR A NEW DIVE * 196 ; 197 ; * NOT DEKOENDE # STATRG BIT5:=0 * 198 ; 199 ; * SET TIMERS * 200 ; 201 ; * BOTTOMTIME: = 30SEC. * 202 ; * DIVETIME:= 0, IN SEKUMDEN UND MINUTEN * 203 ; 204 ; * GOTO DEKO6 * 205 ; 206 ; 207 ; 208 DEKO3: 209 ; * TEST DEKOTIME DER AKTUELLEN DEKO-TIEFENSTUFE 210 ; * ABGELAUFEN, D.H.: NULL IST ?. NEIN# GOTO DISPLY 211 ; # TEST DEKOT = 0 ? 212 ; 213 ; * JA# NAECHST HOSHERE DEKOTIEFENSTUFE BESTIMMEN 214 ; # DEDEK:= DEDEK-3M XXXXXX NUR F. TAB 0-700 215 ; 216 ; 217 ; * TEST DEKOMPRESSION BEENDET ?, NEIN# GOTO DEKO4 * 218 ; # DEDEK - 0 ? 219 ; Tabelle 18220 ; * JA# TAUCHGANG VORSCHRIFISGEMAESS MIT DER DEKO- * 221 ; * MPRESSION ABGESCHLOSSEN. * Programm: 222 ; DECO 223 ; * BESTIMME REP. GROUP MIT DER BOTTOMTIME UND DER * 224 ; * MAX, TAUCHTIEFE IN DER REPETITIVTABELLE. * Page 5 225 ; # PREPARE AND CALL SUBR. BRPOEC 226 ; 227 ; * SET AT DEKOENDE # STATRG BIT5:=1 * 228 ; 229 ; * SET (DEKOTIME TOTAL):= 0, IN MINUTEN UND SEKUNDEN 230 ; # DEKOTT:=0 231 ; 232 ; * GOTO DISPLY 233 ; 234 ; 235 ; 236 DEKO4: 237 ; * BESTIMMER DEKOTIME MIT DER DEKO-TIEFENSTUFE, * 238 ; * DER BOTTOMTIME UND DER MAX. TAUCHTIEFE, IN DER * 239 ; * DECOTABELLE. * 240 ; # PREPARE AND CALL SUBR. BDEKOT 241 ; 242 ; * COTO DISPLY * 243 ; 244 ; 245 ; 246 DEKO5: 247 ; * TAUCHER IST INNERT 30 SEC. IN DEN OBERFLAECHEN 248 ; * BEREICH ZURUECK GEKEHRT. 249 ; * SET STATES, FLAGS AND TIMERS 250 ; 251 ; * NOT DEKOMPRIMIEREN # PORT2 BIT5:=0 * 252 ; * AT SURFACE # STATRG BIT0:=1 * 253 ; * NOT DEKOENDE # STATRG BIT5.=0 * 254 ; * AT SURFACEINTERVAL # STATRG BIT3:=1 * 255 ; 256 ; * SET TIEFENSTUFE:= @M, FUER REPETITIV-TAUCHGANG 257 ; # DEST:=12 258 ; 259 ; * DIVETIME:= 0, IN MINUTEN UND SEKUNDEN 260 ; 261 ; * GOTO DISPLY * 262 ; 263 ; 264 ; 265 ; END USER SYMBOLS DECO 0000 DEK01 0000 DEK02 0000 DEK03 0000 DEK04 0000 DEK ASSEMBLY COMPLETE, NO ERRORS Tabelle 20 110 ; 111 ; Programm: 112 ; DISPLY 113 NXDIS1: 114 ; # JA, ADDIERE HALBMETERSTUFE = 0 ZUR TIEFE Page 3 115 ; 116 ; * GOTO DIS5 * 117 ; 118 ; 119 ; 120 DIS2: 121 ; * TEST DISPCO = 8 ?. NEIN# GOTO DIS3 * 122 ; 123 ; * JA# DISP8: = UPDIVT * 124 ; 125 ; * GOTO DIS5 * 126 ; 127 ; 128 ; 129 DIS3: 130 ; * TEST DISPCO = 12 ?. NEIN# GOTO DIS4 * 131 ; 132 ; * JA# * 133 ; * (DEPTH+1)/2 # DEKOSTUFEN-TIEFE UMRECHMEN IN METER 134 ; 135 ; * GOTO DIS5 136 ; 137 ; 138 ; 139 DIS4: 140 ; * DEKOSTUFENZEIT # ANZEIGEWERT * 141 ; 142 ; 143 ; 144 DIS5: 145 ; * TEST AT POWER DOWN ?. NEIN# GOTO DIS6 * 146 ; # INPUT PIN T1 = 0 ? 147 ; 148 ; * JA# POWER DOWN MODUS * 149 ; 150 ; 151 ; * TEST DOWNCOUNTER-1SEC = 0 ?. NEIN# GOTO DIS6 * 152 ; 153 ; * JA# DISP8: = 0, DISP16: = 0 * 154 ; 155 ; 156 ; 157 DIS6: 158 ; * ANZEIGE-WERT BIN-BCD-WANDELN MIT FUEHRENDER NULL 159 ; * ERKENNUNG UND BLANK-CODIERUNG, TESTEN AUF SOFT 160 ; * WARE-ERROR, WENN JA, ENTSPRECHENDE WERTE CODIERE 161 ; 162 ; * TEST (DISP8 AND DISP16) = 0 ?, JA# GOTO DIS7 163 ; 164 ; *-NEIN# TEST AT SOFTRARE-ERROR ?, JA# GOTO DIS9 Tabelle 20 165 ; # STATRO BIT6=1 ? 166 ; Programm: 167 ; * NEIN# PREPARE AND CALL SUBR. BINBCD * 168 ; DISPLY 169 ; * GOTO DIS8 * Page 4 170 ; 171 ; 172 ; 173 DIS9: 174 ; * ANZEIGEWERTE FUER DEN SOFTWARE-ERROR BEREITSTELLN 175 ; 176 ; * GOTO DIS8 * 177 ; 178 ; 179 ; 180 DIS7: 181 ; * ALLE ANZEIGEWERTE SIND NULL# SET ALL FOR BLANKS 182 ; 183 ; 184 ; 185 DIS8: 186 ; * ALLE ANZEIGEWERTE, ZIFFER 3 BIS ZIFFER 0, IN DEN 187 ; * REGISTERN R4 UND R5 SERIELL AN DAS DISPLAY AUS 188 ; * SENDEN. BEI DIGIT 0 BEGINNEND BIS DIGIT 3. 189 ; * AN DEN CHIP 3 WIRD 2 MAL DAS R5, MIT JEWEILS 2 190 ; * ZIFFERN, AUSGESENDET. 191 ; * AUSSERDEM WIRD FUER JEDE AUSGESENDETE ZIFFER DER 192 ; * DISPLAY-COUNTER (DISPCO) UM EINS ERHOEHT. 193 ; 194 ; * TEST DISPCO > = 12 ?, JA# GOTO DIS10 * 195 ; 196 ; * NEIN# 4 ZIFFERN AN DAS DISPLY AUSSENDEN * 197 ; 198 ; 199 ; 200 DIS10: 201 ; * JA# 2 ZIFFERN AN DAS DISPLAY AUSSENDEN * 202 ; 203 ; 204 ; * RUECKSETZEN DER ANZEIGEWERTE * 205 ; * # DISP8: = 0, DISP16: = 0 * 206 ; 207 ; 208 ; * TEST DISPCO = 16 ?, JA# GOTO DIS11 * 209 ; 210 ; * NEIN# TEST AT SOFTWARE-ERROR ?, NEIN# GOTO DISO 211 ; # STATRG BIT6=0 ? 212 ; 213 ; 214 ; 215 DIS11: 216 ; * JA# DISPLAY-COUNTER NEU INITIALISIEREN * 217 ; # DISPCO: = 0 218 ; 219 ; Tabelle 20 110 ; 111 ; Programm; 112 ; DISPLY 113 NXDIS1; Page 3 114 ; # JA, ADDIERE HALBMETERSTUFE = 0 ZUR TIEFE 115 ; 116 ; * GOTO DIS5 * 117 ; 118 ; 119 ; 120 DIS2: 121 ; * TEST DISPCO = 8 ?. NEIN# GOTO DIS3 * 122 ; 123 ; * JA# DISP8: = UPDIVT * 124 ; 125 ; * GOTO DIS5 * 126 ; 127 ; 128 ; 129 DIS3: 130 ; * TEST DISPCO = 12 ?, NEIN# GOTO DIS4 * 131 ; 132 ; * JA# * 133 ; * (DEPTH+1)/2 # DE@OSTUFEN-TIEFE UMRECHINEN IN NETER 134 ; 135 ; * GOTO DIS5 136 ; 137 ; 138 ; 139 DIS4: 140 ; * DEKOSTUFENZEIT # ANZEIGEWERT * 141 ; 142 ; 143 ; 144 DIS5: 145 ; * TEST AT POWER DOWN ?, NEIN# GOTO DIS6 * 146 ; # IMPUT PIN T1 = 0 ? 147 ; 148 ; * JA# POWER DOWN MODUS * 149 ; 150 ; 151 ; *TEST DOWNCOUNTER-1SEC = 0 ?, NEIN# GOTO DIS6 * 152 ; 153 ; * JA# DISP8: = 0. DISP16: = 0 * 154 ; 155 ; 156 ; 157 DIS6: 158 ; * ANZEIGE-WERT BIN-BCD-WANDELN MIT FUEHRENDER NULL. 159 ; * ERKENNUNG UND BLANK-CODIERUNG. TESTEN AUF SOFT 160 ; * WARE-ERROR, WENN JA, ENTSPRECHENDE WERTE CODIEREN. 161 ; 162 ; * TEST (DISP8 AND DISP16) = 0 ?, JA# GOTO DIS7 * 163 ; 164 ; * NEIN# TEST AT SOFTWARE-ERROR ?, JA# GOTO DIS9. Tabelle 20 165 ; # STATRG SIT6=1 ? 166 ; Programm: 167 ; * NEIN# PREPARE AND CALL SUBR, BINBCO * DISPLY 168 ; 169 ; * GOTO DIS8 * Page 4 170 ; 171 ; 172 ; 173 DIS9: 174 ; * ANZEIGEWERTE FUER DEN SOFTWARE-ERROR BEREITSTELLN 175 ; 176 ; * GOTO DIS8 * 177 ; 178 ; 179 ; 180 DIS7: 181 ; * ALLE ANZEIGEWERTE SIND NULL# SET ALL FOR BLANKS 182 ; 183 ; 184 ; 185 DIS8: 186 ; * ALLE ANZEIGEWERTE, ZIFFER 3 BIS ZIFFER 0, IN DEN 187 ; * REGISTERN R4 UND R5 SERIELL AN DAS DISPLAY AUS 188 ; * SENDEN. BEI DIGIT 0 BEGINNEND BIS DIGIT 3. 189 ; * AN DEN CHIP 3 WIRD 2 MAL DAS R5, MIT JEWEILS 2 190 ; * ZIFFERN, AUSGESSNDET. 191 ; * AUSSERDEM WIRD FUER JEDE AUSSGESENDETE ZIFFER DER 192 ; * DISPLAY-COUNTER (DISPCO) UM EINS ERHOEHT. 193 ; 194 ; * TEST DISPCO > = 12 ?, JA# GOTO DIS10 * 195 ; 196 ; * NEIN# 4 ZIFFERN AN DAS DISPLY AUSSENDEN * 197 ; 198 ; 199 ; 200 DIS10: 201 ; * JA# 2 ZIFFERN AN DAS DISPLAY AUSSENDEN * 202 ; 203 ; 204 ; * RUECKSETZEN DEN ANZEIGEWERTE * 205 ; * # DISP8: = 0, DISP16: = 0 * 206 ; 207 ; 208 ; * TEST DISPCO = 16 ?, JA# GOTO DIS11 * 209 ; 210 ; * NEIN# TEST AT SOFTWARE-ERROR ?, NEIN# GOTO DISO 211 ; # STATRG BIT6=0 ? 212 ; 213 ; 214 ; 215 DIS11: 216 ; * JA# DISPLAY-COUNTER NEU INITIALISIEREN * 217 ; # DISPCO: = 0 218 ; 219 ; Tabelle 20 220 ;* WAIT-LOOP ZUR ERKENNUNG OB DAS PROGRAM Tabelle 21 Adr. Prodramm Programm : 221 ;* ZYKLISCH ALLE 0.5 SEKUNDEN VOM HTIMER Programm: DISPLAY 222 ;* AUFGESTARTET WIRD. MEMORY B 0 Pago 5 223 ;* DER WAIT-LOOP DAUERT CA. 1.5 SEKUNDEN. Page 1 E 1 224 ;* WIRD ER WAEHREND DIESER ZEIT NICHT T 2 225 ;* UNTRBROCHEN. SD LAEUFT DER SOFTWARE- R 3 226 ;* ERROR AN. # SET STATRG BIT6: = 1 I 4 227 ;* # GOTO CHEKSET E 5 228 ; B 6 229 ; S 7 230 ;* WAIT-LOOP * S 231 ; Y HTIME: generiert aus dem 232 ; T Timer-Interrupt 233 ;* SET AT SOFTWARE-ERROR * E den 0,5 s-Takt. 234 ; M Test: Takt = 0.5s? 235 ; Ja JMP PSNORC 236 ;* GOTO CHKSET * Nein JMP Return 237 ; RSTART: Initialisierunq & BR< 238 ; Start Interrupt 239 ; Timer, JMP PSNORC 240 ; END PSNORC: Druckerfassen USER SYMBDLS CEKSET: Chek-und Set-Rout. DIS0 0000 DIS1 0000 DIS10 0000 M für alle Timer, DIS6 0000 DIS7 0000 DIS8 0000 A Counter & Variablen. I JMP'S auf div. Main. DIS11 0000 DIS2 0000 DIS3 N Programme. DIS9 0000 DISPLY 0000 NXDIS P SURFAC: Oberflächenbereich R JMP DISPLY ASSEMBLY COMPLETE, NO ERRORS M DIVE: Tauchen M JMP DISPLY A DVEUP: Auftauchen R JMP DISPLY G DECO: Dekomprimieren O JMP DISPLY DISPLY: Anzeiqe bedienen inkl. 1.5s Wait-Loop LIB: alle benötiqten Subroutinen 2K Grenze S U R B O U T. Tabelle 22 1 ; ***************************************************** Tabelle 2255 ; (MINUTEN-ANTEIL) 2 ; * 56 SFISEC EQU 40 ;SORFAC-INTERVAL-TIME Program: 3 ; * VARLST Programm: 57 0028 ; (SEKUNDEN-ANTEIL) VARLST 4 ; * VARLST 58 KEGELT EQU 39 ;KEGELZEIT (MINUTENAMTEIL) 5 ; *==================================================== 59 KEGSEC EQU 38 0027 ;KEGELZEIT (SEKUNDENANTEIL) Page 1 6 ; * Page 2 60 DEKOTT EQU 37 0026 ;DEKOTIME-TOTAL 7 ; * DIESES PROGRAM BEINHALTET ALLE IN DER SOFTWARE 61 DEKOTS EQU 36 0025 ;DEKOTIME (SEKUNDENANTEIL) 8 ; * DES DECOCOMPUTER VERWENDETEN GLOBALEN VARIABLEN, 62 DEKOT EQU 35 0024 ;DEKOTIME 9 ; * MIT DEREN EGUATES. 63 UPOIVT EQU 34 0023 ;UPDIVETIME 10 ; * 64 DIVET EQU 33 0022 ;DIVETIME (MINUTENANTEIL) 11 ; * ZUDEM IST EINE LISTE DER VERWENDETEW SUBRUTINEN 65 DIVETS EQU 32 0021 ;DIVETIME (SEKUNDENANTEIL) 12 ; * BEIGEFEUEGT. 66 SDEKOT EQU 31 0020 ;SUMME DER DEKOTIMES 13 ; * 67 ; FREI EQU 30 001F 14 ; * 68 DISP16 EQU 29 ;OBERE 8-BIT DES DISPLYWERTES 15 ; *==================================================== 69 DISP8 EQU 28 001D ;UNTERE 8-BIT DES DISPLYWERTES 16 ; * 70 DOWNC1 EQU 27 001C ;DOWNCOUNTER FUER 1SEC. 17 ; * 71 DOWC30 EQU 26 001B ;DOWNCOUNTER FUER 30SEC. 18 ; * 72 DISPCO EQU 25 001A ;DISPLY-COUNTER, 19 ; * 73 STATRG EQU 24 0019 ;SYATUSREGISTER 20 ; ***************************************************** 74 ; 0018 21 ; 75 ; 22 ; 76 ; 23 ; EGUATE3 77 ; SUBRUTINEN: 24 ; ******************* 78 ; 25 ; 79 ; 26 ; 80 ; SUB ;SUBTRAKTION DIREKT 27 ; VARIABLEN: 81 ; SUBD ;SUBTRAKTION INDIREKT 28 82 ; MPBXSD ;MULTIPLIKATION DIREKT, EXE BIT 003F 29 PALT EQU 63 ;ALTER DRUCK 83 ; DIVBD ;DIVISION DIREKT, S/B BIT-OS BIT 003E 30 PNEU EQU 62 ;NEUER DRUCK 84 ; BINBCD ;BIMAER-BCD-WANDLUNG MIT UMTER 003D 31 PNULL EQU 61 ;LUFTORUCK 85 ; ;DRUECKUNG FUEHRENDER NULLEN 003C 32 PALT30 EQU 60 ;DRUCK VOR 30 SEKUNDEN 86 ; BRPGSF ;BESTIMMEN DER REP. GRUPPE MIT 003B 33 DELTAP EQU 59 ;DELTA DRUCK 87 ; ;DBERFLAECHENINTERVALLTAGELLE 003A 34 DEPTH EQU 58 ;AKTUELLE TAUCHTIEFE 88 ; DRPGUW ;BESIMMEN DER REP. GRUPPE MIT 0039 35 DEMAXV EQU 57 ;MAX. TAUCHTIEFE (VARIABEL) 89 ; ;DER REPETITIVTABELLE 0038 36 DEMAXD EQU 56 ;MAX. TAUCHTIEFE(DISPLAY) 90 ; DRPDEC ;BESTIMMEN DER REP. GRUPPE MIT 0037 37 DEST EQU 55 ;AKTUELLE TIEFENSTUFE 91 ; ;DER DECO-TABELLE 0036 38 DESTK EQU 54 ;KORREKTUR-TIEFENSTUFE 92 ; DZZU ;BESTIMMEN DES ZEITZUSCHLAGES 0035 39 DEDEK EQU 53 ;AKTUELLE DEKO-TIEFEMSTUFE 93 ; ;MIT DER REP. TADELLE 0034 40 DEDEKM EQU 52 ;MAX. DEKO.-TIEFENSTUFE 94 ; BDEST ;SESTIMMEN DER ATUELLEN 0033 41 AASL EQU 51 ;ALTITUDE ABOVE SEA LEVEL 95 ; ;TIEFENSTUFE QUEMAESS DECO 0032 42 RPGRUP EQU 50 ;AKTUELLE REP, GRUFFE 96 ; ;TABELLE 0031 43 RPCEND EQU 49 ;REP, GRUPPE AN ENDE DES 97 ; BDESTN ;BESTIMMEN DER MAECHSTEN 44 ;OBERFLAECHENINTERVALLS 98 ; ;TIEFENSTUFE GEMAESS REP. TAB. 0030 45 RPGZZU EQU 48 ;REPETITIV-ZEITZUSCHLAG 99 ; BZT ;BESTIMMEN DER ZERO-TIME 002F 46 BOTGEC EQU 47 ;BOTTOMTIME(SEKUNDEN-ANTEIL) 100 ; BDEKOT ;BESTIMMEN DER DEKOZEIT AUF 002E 47 BOT EQU 46 ;BOTTOMTIME(MINUTEN-ANTEIL) 101 ; ;EINER BEST. DECOTIEFENSTUFE 002D 48 BOTK EQU 45 ;KORREKTUR-BOTTOMTIME 102 ; BDECOW ;BESTIMMEN FOLGENDER WERTE. 002C 49 TBT EQU 44 ;TEMPORAERE-BOTTOMTIME 103 ; ;- SUMME DER DECOZEITEN 002B 50 BOTZZ EQU 43 ;BOTTOMTIME-ZEITZUSCHLAG 104 ; ;- MAX. DECOTIEFENSTUFE 51 ; (MINUTEN-ANTEIL) 105 ; ; ZEIT AUF DEH MAX DECO 002A 52 BOTZZS EQU 42 ;BOTTOMTIME-ZEITZUSCHLAG 106 ; ; TIEFENSTUFE 53 ; (SEKUNDEN-ANTEIL) 107 ; FNEXTT ;POSITIONIEREN DES POINTERS 0029 54 SFINTT EQU 41 ;SURFACE-INTERVAL-TIME 108 ; ;AUF DEN ANFANG DER NAECHSTEN 109 ; ;TABELLE Tabelle 22 110 ; XREPTB ; HILFSROUTINE FUER ALLE SUB Programm: 111 ; ; ROUTINEN, WELCHE DIE REP. VARLST 112 ; ; TABELLE VERWENDEN Page 3 113 ; XDECTB ; HILFSROUTINE FUER ALLE SUB 114 ; ; ROUTINEN, WELCHE DIE DECO 115 ; ; TABELLE VERWENDEN 116 ; 117 ; 118 END USER SYMBOLS AASL 0033 BOT 002E BOTK 002D DOTSEC 002F BOTZZ 002B BOTZZ DEKOT 0023 DEKOTS 0024 DEKOTT 0025 DELTAP 003B DEMAXD 0038 DEMAX DESTK 0036 DISP16 001D DISPS 001C DISPCO 0019 DIVET 0021 DIVET KEGELT 0027 KEGSEC 0026 PALY 003F PALT30 003C PNEU 003E PNULL RPGZZU 0030 SDEKOT 001F SFINTT 0029 SFISEC 0028 STATRG 001B TBT ASSEMBLY COMPLETE NO ERRORS

Claims: PATENTANSPRUECHE 1. Anzeigeeinrichtung für die Parameter eines Tauchganges, wie z.B. aktuelle Tiefe, maximal getauchte Tiefe, bis herige Tauchzeit o. dgl., welche Anzeigeeinrichtung über a) wenigstens einen Speicher für die Dekompressions parameter bei einer Reihe von Tauchtiefen und -zeiten, und b) eine Auswerte- und Verknüpfungsstufe für die ge messenen Werte des Tiefen- und des Zeitmessers mit den im Speicher gespeicherten Werten angesteuert ist, dadurch gekennzeichnet, dass in jedem Zeitpunkt des Tauchganges die in Abhängigkeit von den durchtauchten Tiefen und Zeiten erforderliche Gesamtauftauchzeit inklusive der vorgeschriebenen Dekompressionshalte an zeigbar ist und/oder eine Wandlereinrichtung (5) für die jeweils aktuelle Grundzeit beim Eintritt in eine neue Tauchtiefenstufe in die dieser neuen Tauchtiefen stufe äquivalente Grundzeit vorgesehen ist. 2. Einrichtung nach Anspruch 1, dadurch gekennzeichnet, dass mit Hilfe der Wandlereinrichtung (5) auch der, vorzugsweise jeweils mit Hilfe eines Messgerätes (6) gemessene, Luftdruck berücksichtigbar ist. 3. Einrichtung nach Anspruch 2, dadurch gekennzeichnet, dass ein einziger, vorzugsweise eine piezoresistive Messzelle aufweisender, Druckmesser (6) sowohl für den Luft- wie für den Wasserdruck mit der die Wandlerein richtung (5) enthaltenden Schaltung verbunden ist. 4. Einrichtung nach Anspruch 3, dadurch gekennzeichnet, dass der Messbereich des Druckmessers (6) jeweils für Luft- bzw. für Wasserdruckmessung mit Hilfe einer Schalteinrichtung (34) umschaltbar ist. 5. Einrichtung nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, dass an den Ausgang des Druckmessers (6) eine Differenzierstufe (26) angeschlossen ist. 6. Einrichtung nach Anspruch 4 oder 5, dadurch gekenn zeichnet, dass die Schalteinrichtung (34) eine Sprung erkennungsstufe (35) für den Druck umfasst, die bei spielsweise von der Differenzierstufe (26) gebildet ist. 7. Einrichtung nach Anspruch 4, 5 oder 6, dadurch ge kennzeichnet, dass - z.B. für eine Auswerte- und Ver knüpfungsstufe begrenzten Arbeitsbereiches -mit Hilfe der der Schalteinrichtung(3-4) durch Umschalten der Verstärkung oder des Bit-Bereiches eines der Auswerte- und Ver knüpfungsstufe vorgeschalteten Analog-Digital-Wandlers (22) eine Bereichsumschaltung durchführbar ist. 8. Einrichtung nach Anspruch 7, dadurch gekennzeichnet, dass eine durch die Schalteinrichtung (34) umschaltbare Referenzspannungsquelle (24, 24', 24") vorgesehen ist, der zweckmässig ein Analog-Digital.-Wandler (22) nach geschaltet ist. 9. Einrichtung nach einem der Ansprüche 4 bis 8, dadurch gekennzeichnet, dass die Schalteinrichtung (34) zu mindest einen FET-Schalter aufweist. 10. Einrichtung nach Anspruch 9, dadurch gekennzeichnet, dass dem FET-Schalter zur Entkoppelung gegenüber dem Eingang der nachgeschalteten Stufe, insbesondere des Analog-Digital-Wandlers (22), ein Impedanzwandler (40) nachgeschaltet ist. 11. Einrichtung nach einem der Ansprüche 1 bis 10, dadurch gekennzeichnet, dass bei Auftreten einer Abnormfunktion durch eine aus einem Zeitgeberrund aus einem Druck aufnehmer (6) bestehende Detektorschaltung ein Warn signal (12) und/oder eine Schleppwertanzeige (16a) für die maximal erreichte Tauchtiefe einschaltbar ist (sind). 12. Einrichtung nach einem der Ansprüche 1 bis 11, dadurch gekennzeichnet, dass die Wandlereinrichtung (5) einen Rechner (27) und Speicher für Grundzeiten und/oder Dekompressionszeiten und/oder Repetitivgruppen, auf weist. 13. Einrichtung nach Anspruch 12, dadurch gekennzeichnet, dass der bzw. die Speicher (ein) Tabellenspeicher (28) ist (sind). 14. Einrichtung nach einem der Ansprüche 1 bis 13, dadurch gekennzeichnet, dass die Wandlereinrichtung (5) eine Speicherschaltung für die jeweils durchtauchten Tiefen und Zeiten, sowie gegebenenfalls für die sich er gebenden Korrekturwerte aufweist. 15. Einrichtung nach einem der Ansprüche 1 bis 14, mit wenigstens einer Segmentanzeige, dadurch gekennzeichnet, dass die Segmentanzeige (16a) wechselweise - z.B. vor und nach Auftreten einer Abnormfunktion - zur Anzeige verschiedener Angaben umschaltbar ist. 16. Einrichtung nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass eine astabile Multi vibratorschaltung zur getakteten Ansteuerung wenigstens einer Anzeige (10 - 12) vorgesehen ist.

Inventors: HERMANN, JUERGEN, VOGLER, ROLAND, Hermann, Jürgen
Applicants: DIVETRONIC INSTR AG
Application year: 1982
Main classification: B63C11
IPC codes: B63C11, G06F17