ATOS-Magazin Juni/Juli 1997 |  | # Achtung Aufnahme Von Holger Dammann Hiermit möchte ich ein Programm vorstellen, mit dem tatsächlich "Aufnahmen" gemacht werden können. Nichts Neues, wird die geneigte Leserschaft anmerken, ist diese Art der Anwendung für Rechner dieses Typs doch nicht ungewöhnlich. Aber halt. Es geht hier nicht um Töne oder gar Musik. Mit Recorder können Meßwerte aufgezeichnet werden. Langweilig? Sie haben etwas zum Thema Aufzeichnung akustischer Signale erwartet? Aber bevor Sie diese Bytes ins Datennirwana schicken, riskieren Sie ruhig noch ein paar Zeilen. Denn mit Recorder ist mehr möglich, als auf den ersten Blick zu erkennen ist. Übersicht: Wie geht'n das? Anschluß und Anschlußbelegung Das Programm Wozu brauche ich das? Weiterverarbeitung der Meßwerte Tips, Tricks und mögliche Fehler Fazit zu Recorder Der Autor von Recorder ### Wie geht'n das? Eigentlich ganz einfach. Mit einem Digitalmultimeter (DMM) werden Werte gemessen (z.B. Spannungen). Das besagte DMM wird über die serielle Schnittstelle mit dem Rechner verbunden und die Meßwerte mit dem Programm Recorder aufgezeichet. Und hier ist auch schon der erste "Knackpunkt". Das DMM muß über eine serielle Schnittstelle verfügen (der Rechner latürnich auch). Da aber solcherlei Gerät bereits für knapp 100 DM käuflich zu erwerben ist (inzwischen vielleicht schon billiger?) und auf keinem Basteltisch fehlen darf, sehe ich hier nicht das größte aller Probleme (welches man ja bekanntlich sowieso nicht vor Augen sieht). Mit dem Programm Recorder werden die Meßwerte vom Multimeter abgeholt und sowhl tabellarisch als auch grafisch angezeigt. Darüberhinaus können die Werte zur Weiterverarbeitung, z.B. mit einer Tabellenkalkulation, abgespeichert werden. Weiterhin besteht die Möglichkeit, vom Programm vier Ausgänge (Druckerport) in Abhängigkeit der Meßwerte zu schalten, etwa so, daß wenn ein bestimmter Schwellwert über- oder unterschritten wird, ein Ausgang ein- bzw. ausgeschaltet wird. ### Anschluß und Anschlußbelegung Wie schon erwähnt, wird das Meßgerät über die serielle Schnittstelle mit dem Rechner verbunden. Da viele Geräte aber nicht über eine normale 9- oder 25-polige Buchse verfügen, muß entweder ein geeignetes Kabel gekauft oder ein solches selbst angefertigt werden. Der Anschluß am Meßgerät besteht oftmals lediglich aus 5 "Löchern". Doch praktischerweise muß hierfür kein Spezialstecker gekauft werden, ein gewöhnliches Stück Stiftleiste paßt. Dem des Lötens Kundigen steht also, außer der Beschaffung einiger Kleinigkeiten, nichts im Wege.
      Stift-     25-pol     9-pol    Bezeichnung
      leiste
         O--------- 7-------- 5         Masse
         O--------- 2-------- 3         Sendedaten (TxD)
         O--------- 4-------- 7         RTS

         O---------20-------- 4         DTR
         O--------- 3-------- 2         Empfangsdaten (RxD)
Wie bereits erwähnt, besteht die Möglichkeit, über den Druckerport Ausgaben zu tätigen. Um hier LED, Lämpchen oder auch Relais anzusteuern, muß eine Treiberschaltung eingesetzt werden, denn der Soundchip des Atari, der ja diesem Port Leben einhaucht, ist leider recht schwach auf der Brust. Hierfür eignet sich z.B. ein ULN2803. In diesem IC befinden sich acht Treiber mit open-Kollektor Ausgängen, von denen jedoch nur vier benötigt werden. Praktischerweise sind die Schutzdioden zum Ansteuern induktiver Lasten (Relais) schon integriert. Somit müssen die Pins 1 - 4 des ICs mit den Pins 2 - 5 des Druckerports verbunden werden. Nicht zu vergessen, daß auch mindestens eine Masseleitung gezogen werden muß:
       ULN2803      Druckerport   Bezeichnung
            1-----------2          Data 0
            2-----------3          Data 1
            3-----------4          Data 2
            4-----------5          Data 3
            9-----------18-25      Masse
           10                      +Ub (z.B. vom Joystickport)
Was jetzt noch fehlt, ist die Versorgungsspannung. Für Experimente mit LED reicht es, sich +5V vom Joystickport zu leihen (Pin 7). Sollen jedoch Relais, Lämpchen oder ähnliche durstigere Verbraucher geschaltet werden, muß u.U. ein externes Netzteil her. Das IC läßt sich, laut Datenblatt, mit bis zu 500mA und 50V belasten. ### Das Programm Das Programm ist vollständig in GEM eingebunden und dürfte somit auf allen Ataris und Kompatiblen laufen. Meine Tests habe ich auf einem TT mit Grafikkarte und unter N_AES sowie auf einem 260ST durchgeführt. Auf beiden Rechnern traten keine Probleme auf. Da das Programm aber auf einem ST entwickelt wurde, fehlt leider ein Auswahlmenü für die serielle Schnittstelle. Dieses Manko ließ sich aber auf dem TT mit MODEM.CPX beheben. Es wird die im CPX gewählte Schnittstelle unterstützt. Alle Details des Programms aufzuzählen, würde zum einen die Gähnmuskulatur der geschätzten Leserschaft übermäßig beanspruchen, zum anderen dem Interessierten die Freude des Ausprobierens nehmen. Daher möchte ich an dieser Stelle nur noch auf einige Besonderheiten eingehen. Messungen mit (nicht linearen) Sensoren Viele Größen lassen sich nicht direkt mit einem DMM messen. So verfügen z.B. nicht alle Geräte über einen (geeigneten) Temperaturmeßbereich. Dieser Mangel läßt sich aber durch Einsatz eines geeigneten Sensors (z.B. NTC, PTC) beheben. Dummerweise entspricht die Anzeige (im Ohmbereich) aber nicht der Temperatur. Dem Anwender bleiben jedoch dauernde Malträtierungen des Taschenrechners erspart, denn Recorder bietet die Möglichkeit, eine "Übersetzungstabelle" zu verwenden. So läßt sich jeder vom DMM gelieferte Wert in einen Wert der gewünschten Einheit umrechnen. Werte, die nicht exakt in der Tabelle wiederzufinden sind, werden interpoliert. Die Mühe der Berechnung muß man sich also nur einmal machen. Weiterverarbeitung der Meßwerte Wer sich intensiver mit der Weiterverarbeitung der gemessenen Werte beschäftigen möchte, wird nicht umhinkommen, andere Programme mit den gewonnenen Daten zu füttern. Leider bietet Recorder jedoch keine Möglichkeit, die Datensätze in einem üblichen Format (z.B. CSV) zu exportieren. So muß man sich mit dem Format, wie es vom Meßgerät geliefert wird, begnügen. Um diese Daten z.B. einer Tabellenkalkulation schmackhaft zu machen, gibt es vielerlei Methoden. Zum einen kann sich der kundige Nutzer ein Programm schreiben, welches die Daten konvertiert (wer sich dieser Herausforderung stellt, möge sich bitte bei mir melden). Einfachere Gemüter werden sich vielleicht mit einem Makro eines Editors zu helfen wissen. Oder man kann, wie noch zu sehen ist, die "Programmiersprache" einer Tabellenkalkulation verwenden. ### Wozu brauche ich das? Bisher ist es eine Spielerei für passionierte Bastler. Aber was soll ich jetzt damit? Das kann doch nicht Selbstzweck sein. Im Prinzip sind der Fanta... pardon Phantasie hier keine Grenzen gesetzt. Zur Anregung möchte ich aber mal ein paar Anwendungsbeispiele vorstellen. So läßt sich z.B. der Strom von Kaffeemaschine, Joghurtbereiter oder dem Treppenlicht messen und somit auch die Kosten dieser Verbraucher bestimmen. Ausgehend von einer konstanten Versorgungsspannung von 230V läßt sich nicht nur die Leistung (in Watt), sondern auch die Energie (in Wattstunden) ermitteln. Wer nun auf die Idee kommt, den "Energieverbrauch" eines Kühlschranks oder einer Heizungspumpe zu ermitteln, wird mit einer Strommessung nicht weit kommen. Denn die simple Multiplikation von Strom und Spannung ergibt bei nicht rein ohmschen Verbrauchern die Scheinleistung (S). Die gewünschte Wirkleistung (die Leistung, die beim Energieversorgungsunternehmen wirklich bezahlt werden muß) läßt sich aber berechnen, wenn der cos(Phi) bekannt ist. Dieser ist aber leider nicht auf jedem Typenschild zu finden. Es gibt jedoch auch für die Messung der Wirkleistung und des cos(Phi) Meßgeräte bzw. geeignete Adapter. An dieser Stelle möchte ich dringlichst darum bitten, die nötige Vorsicht walten zu lassen. Beim Messen an netzbetriebenen Geräten sollte man immer die eigene Sicherheit und vor allem die Sicherheit anderer Personen im Auge behalten, denn sonst kann das ein oder andere Experiment in das benannte Körperteil gehen. Bei unsachgemäßer Durchführung besteht Lebensgefahr! Doch kommen wir nun zu einem weniger gefährlichen Einsatzgebiet: Das Auf- und Entladen von Akkus zum Beispiel. Diese nützlichen Stromspender benötigen eine gewisse Pflege und Zuwendung. So ist es gar nicht allzu selten, daß man seine NiCd-Akkus durch wiederholtes Auf- und Entladen wieder reanimieren muß. Diese Aufgabe kann jetzt rechnergesteuert erfolgen. Die Akkus werden über ein Relais entweder mit dem Ladegerät oder einem Entladewiderstand verbunden. Das Relais wird, abhängig vom gemessenen Ladezustand, gesteuert. Und so ganz nebenbei wird auch noch die Lade- bzw. Entladekurve aufgezeichnet. Wie anhand dieser Beispiele zu sehen ist, sind die Einsatzmöglichkeiten vielfälltig. Vor allem wenn man einen Blick auf die vielfältigen meßbaren Größen moderne Multimeter oder die große Zahl unterschiedlichster Sensoren (Temperatur, Helligkeit, Beschleunigung, Gase, ...) wirft, kommen sicher noch ganz andere Einsatzgebiete in Betracht. ### Weiterverarbeitung der Meßwerte Bis hierher durfte festgestellt werden, daß es uns durchaus gelingt, viele schöne Meßwerte in unseren Atari zu verfrachten. Doch damit ist es in vielen Fällen nicht getan. Vergleiche mehrerer Meßreihen oder Gegenüberstellungen mit per Formel ermittelten Werten erfordern eine Datenübernahme in andere Programme. Hier zeigt sich auch eine Schwäche von Recorder. Leider können die Meßdaten nur in dem Format, wie es vom DMM geliefert wurde, abgespeichert werden. Mit diesem proprietären Format lassen sich andere Programme (z.B. Tabellenkalkulation) nur selten beglücken. Trotzdem muß an dieser Stelle nicht aufgegeben werden. Am Beispiel von LDW PowerCalc läßt sich nämlich zeigen, daß eine Integration in eine Tabelle gar nicht so schwierig ist. Die mit Recorder gespeicherte Meßreihe läßt sich in LDW einfach als Text in eine Spalte importieren. Mittels der Befehle MID, VALUE und TIME können jetzt einzelne Werte aus den importierten Strings "herausgepult" werden. MID dient zum Extrahieren eines Teilstrings. Mit VALUE kann ein String in eine Zahl gewandelt werden. Und mit TIME läßt sich eine Zeitangabe bewerkstelligen. Dazu ein kleines Beispiel: In der Zelle A1 steht folgende Zeichenkette:
    (     1)  01.01.1997  20:15:55  :  TE  0023    C
@MID(A1,5,3) liefert die Zeichenkette " 1". Mit @VALUE(@MID(A1,5,3)) erhält man die Zahl "1". Auf diese Art kann dann auch die Uhrzeit aus der vorliegenden Zeichenkette in das korrekte Format gewandelt werden:
    @TIME(@VALUE(@MID(A1,22,2)),@VALUE(@MID(A1,25,2)),@VALUE(@MID(A1,28,2)))
- Das sieht zwar auf den ersten Blick etwas kryptisch aus, aber ich denke, nicht nur diejenigen, die sich mal per BASIC mit ihrem Rechner verständigt haben, sehen, wie es funktioniert. ### Tips, Tricks und mögliche Fehler Es können keine Daten eingelesen werden: Anschlüsse prüfen. Ist die richtige Schnittstelle eingestellt (z.B. mit MODEM.CPX)? Stimmen die Schnittstellenparameter? Diese müssen den Unterlagen des Meßgerätes entnommen und in Recorder unter 'REPORT - Komm.-Parameter' eingetragen werden. Üblich ist: 1200 Baud, keine Parität, 7 Datenbits, 2 Stopbits. Ist die Anzahl der Zeichen je Meßwert korrekt (z.B. 14 Byte) eingetragen? Stimmt die Belegung der Stecker? Stimmt das Einleseintervall (z.B. eine Sekunde)? Daten werden nur tabellarisch dargestellt. Evtl. sendet das Meßgerät die Daten in einem neuen, noch nicht unterstützten Format. Wenn sich die beiliegenden Beispiele korrekt darstellen lassen, die selbst gemessenen Daten aber nicht, sollte man mit dem Autor Verbindung aufnehmen. Wozu dient die COM-Einstellung? Viele Meßgeräte schalten sich nach einer gewissen Zeit selbst aus. Damit dies nicht während einer Messung passiert, haben sie einen Schalter "COM". Wenn dieser betätigt ist, sendet das Gerät die Meßwerte selbsttätig und schläft nicht ein.(!nl) Neuere Geräte habe diesen Schalter u.U. nicht mehr. Bei diesen Geräten wird die Selbstabschaltung blockiert, wenn die serielle Schnittstelle abgefragt wird. Die grafische Anzeige springt. In der grafischen Anzeige werden nur die Zahlenwerte berücksichtigt, nicht jedoch die Einheiten. Wenn das Meßgerät über eine automatische Bereichsumschaltung verfügt und in dieser Größenordnung gemessen wird, kann es zum "Springen" der Anzeige kommen. Beispiel:
      370 mA
      375 mA
      380 mA
      0.40 A
      0.41 A
      0.40 A
      377 mA
Ggf. sollte die automatische Bereichsumschaltung abgestellt werden. Die Batterie des DMM ist so schnell leer. Kann ich ein Netzteil verwenden? Von der Speisung des DMM durch ein Netzteil möchte ich dringlichst abraten. Die Batteriekontakte sind nicht von den Meßkontakten getrennt. D.h., daß die gemessene Spannung auch an den Batteriekontakten anliegt. Besser ist es, einen Akku zu verwenden. ### Fazit zu Recorder Da die Auswahl solcherlei Weichware für Ataris nicht sonderlich groß ist, fällt es schwer, Vergleiche zu ziehen. Bleibt also nur der Blick über den Tellerrand zur oftmals buntgestalteten "Konkurrenz" (sorry, Mitbewerber). Wer sich hier nicht von vollmundigen Werbeaussagen beeindrucken läßt, wird feststellen, daß Recorder durchaus sein Geld wert ist. Möchte man in ein umfangreicheres Programm investieren, wird man auch im DOSenlager nicht an jeder Ecke fündig und muß unter Umständen nicht selten sein Budget deutlich mehr beanspruchen. Zu guter Letzt noch eine kleine Liste mit den Vor- und Nachteilen von Recorder:
+ | Werteumsetzung durch Tabelle (Kalibrierung)
+ | Großanzeige
+ | Meßreihen speicherbar
+ | Langzeitoszilloskop
+ | Meßwerteliste
+ | Werteabfrage in der Grafik per Mausklick
+ | Vier Schaltausgänge (Schwellwerte)
+ | Fontauswahl und -größe
+ | Schaltausgänge direkt setz- / rücksetzbar
+ | Zeichen je Meßwert einstellbar
+ | automatische Skallierung möglich
+ | manuelle Scallierung möglich
+ | Liste und Grafik während der Messung scrollbar
+ | Einfache Treiberschaltung (kein Latch erforderlich)
+ | Autor ist direkt ansprechbar
- | kein Bargraph
- | kein Ausdruck
- | kein Grafikexport
- | keine Zoomfunktion
- | nur ein DMM möglich (keine Verknüpfung mehrerer DMM)
- | kein "genormtes" Exportformat
- | keine Umrechnungsfunktion (dafür aber Tabelle)
### Der Autor von Recorder Leider ist der Autor nicht per E-Mail erreichbar. Wer sich also registrieren lassen möchte, spezielle Wünsche hat oder Hilfe benötigt, muß den beschwerlichen Weg des traditionellen Briefes wählen.
Adresse: | Dieter Liebl Dachshof 7 59071 Hamm
Telefon: | 02381/81400
Wer hat das hier verbrochen? MausNet: Holger Damman bzw. email an: Holger Dammann im Mad-Netz Material
Stiftleiste min. 6pol. | z.B. | Conrad Best.-Nr. 739448-99 | 0,50 DM
Schnittstellenleitung |  | Conrad Best.-Nr. 130583-99 | 14,95 DM
Treiber-IC ULN2803 | z.B. | Conrad Best.-Nr. 171824-99 | 2,55 DM
Copyright © by Rainer Wiesenfeller Letzte Änderung am 25. Juni 1997