[Inhalt]
(Ionen-Teststand Massenspektren-Messung)
04.Apr.2025 K. Huber, Strahlenzentrum Univ. Gießen Version 14.Jul.2025
• Anleitungs-Formate | ||
• Funktion von MASST | ||
• Bedienung von MASST | ||
• Archivierung der Daten | ||
• Statusanzeigen auf dem Bildschirm | ||
• Anhang |
Nächste: Funktion von MASST, Nach oben: Top [Inhalt]
Diese Anleitung zum MASST-Messprogramm steht in verschiedenen Formaten zur Verfügung. Die entsprechenden Files finden Sie auf dem Host-Rechner (z.Z. Ionix) unter /usr/exp/ex_help oder auf Ihrem Experiment-Account unter $HOME/ex_home/ex_help:
massT.txt | Text-Format, kann z.B. mit a2ps in
handlichem Format gedruckt werden. Es fehlen jedoch Bilder und Grafiken. | |
massT.dvi | DVI-Format, kann z.B. mit dvips auf
einem Postscript-Drucker gedruckt werden oder mit xdvi auf einem X-Windows
Bildschirm dargestellt werden. | |
massT.html | HTML-Format, kann mit jedem HTML-Browser gelesen werden. | |
massT.info | INFO-Format, kann mit dem
GNU-Info-Browser (info -f massT.info ) und GNU-emacs
gelesen werden. Es fehlen jedoch Bilder und Grafiken. | |
massT.pdf | PDF-Format, mit dem Acrobat-Reader zu
lesen. |
Nächste: Bedienung von MASST, Vorige: Anleitungs-Formate, Nach oben: Top [Inhalt]
• Überblick | ||
• Ablauf der Messung | ||
• MASST Geräteeinstellungen |
Nächste: Ablauf der Messung, Nach oben: Funktion von MASST [Inhalt]
Für den Ionen-Quellen-Teststand existieren folgende Datenerfassungsprogramme:
MASST | Messung von Massenspektren |
Sowie die Auswerteprogramme:
Das MASST Programm ist ein Abkömmling des MASS Messprogrammes. Es dient der Aufnahme von Massen-Scan-Spektren. Es werden vier Spektren mit der wählbaren Länge von N Kanälen erzeugt, die als Zeilen einer 4*N Matrix angeordnet sind:
Die Hard- und Software Voraussetzungen sind:
Nächste: Geräteeinstellungen, Vorige: Überblick, Nach oben: Funktion von MASST [Inhalt]
Die Erfassung der Messdaten erfolgt über fünf Interfaces im Data-Routing:
Die Steuerung des Experimentes erfolgt zur Zeit über sieben Interfaces im Control-Routing:
Zu Beginn der Messung erfolgt eine Anfangsnormierung:
Der Ablauf des Experimentes besteht aus einer Serie von Messintervallen, wobei für jedes Messintervall das Magnetfeld, die Kanalnummer und die Mess- und Pausenzeit durch MASST ausgegeben werden. Die Magnetfeldeinstellung erfolgt über Lichtwellenleiter (LWL) an den DAC (16 Bit) in einer eigenständigen Box und von dort über Kupfer (0 - 10V) zum Heinzinger-Netzgerät. Dieses benötigt laut Unterlagen 50us von Leerlauf bis Volllast. Mit Magnet geht es vermutlich nicht so schnell...
Als nächstes wird die aktuelle Kanalnummer über das Control-Routing ausgegeben zum Positions-Interface im Data-Routing. Anschließend wird der Messzeit-Timer geladen und zum Schluss wird der Pausen-Timer geladen und gestartet. Mit dem Pausen-Timer kann das Einschwingen des Magneten abgewartet werden. Das Ende der Pause startet unmittelbar die Messzeit. Gesteuert durch den GATE-Impuls akkumulieren die U/D-Zähler im Data-Routing während der Messzeit die ankommenden Zählimpulse.
Die Messzeit wird ermittelt durch Zählen eines Zeittaktes, der durch die programmierbare Zeitbasis im Control-Routing erzeugt wird.
Nach Ablauf der Messzeit wird von der Interrupt-Karte ein Read-Impuls zum Übertragen der Kanalnummer, und der U/D-Zähler erzeugt, sowie ein Reset-Signal zum Löschen der Zähler. Mit dem Read-Signal werden Kanalnummer und Zählerinhalte in je ein Senderegister übertragen, so dass die Interfaces anschließend sofort wieder frei sind, während die Übertragung der Daten einige Zeit in Anspruch nehmen kann.
Die Kanalnummer wird mit Vorrang zur Übertragung angemeldet. Damit wird sichergestellt, dass sie zuerst übertragen wird, um eine Synchronisation der Software zu ermöglichen. Die Daten werden vom Messprogramm erst dann verarbeitet, wenn ein vollständiger Datensatz von allen vier Datenworten eines Messintervalles übertragen ist. Dann werden die übertragenen Werte der drei U/D-Zähler in dem jeweils aktuellen Kanal der Spektren 1 bis 4 abgelegt. Fehler bei der Übertragung werden erkannt und registriert (sequence errors). Ein unvollständiger Datensatz wird verworfen. Wird ein Zähler mehrfach übertragen, so werden die zuviel übertragenen Daten verworfen, und nur das erste Datum wird verarbeitet, falls ein vollständiger Datensatz zustande kommt. Jeder solcher Fehler erhöht den ’Sequence error counter’ um eins.
Am Ende der Messzeit wird außerdem ein Interrupt erzeugt, der der Software mitteilt, dass der nächste Zyklus mit der Ausgabe des nächsten Steuerparametersatzes erfolgen kann.
Wird mit kurzen Messintervallen (<?ms) gearbeitet, so besteht die Gefahr, dass die anfallenden Messdaten nicht schnell genug verarbeitet werden können und Datenverluste auftreten, die die Messung unbrauchbar machen. Um dies zu vermeiden, werden die Busy-Meldungen der U/D-Zähler auf einer Sammelleitung des Data-Routing der SCAN-Karte zugeführt (das POS-Interface braucht dabei nicht berücksichtigt zu werden, da es mit Vorrang behandelt wird). Von der SCAN-Karte wird das gemeinsame Busy-Signal der Interrupt-Karte im Control-Routing zugeführt, um dort ein erneutes Read solange zurück zu halten, wie noch eine der Zählerkarten Busy meldet. Zur Überwachung kann das Read-Signal der SCAN-Karte zugeführt werden. Trifft es dort auf eine Busy-Meldung der Zähler, so wird die Übertragung eines entsprechenden Fehlerwortes zum Messprogramm veranlasst, das mit dem Fehler ’Buffer overrun’ reagiert. Die SCAN-Karte setzt in diesem Falle die ’Overrun LED’. Die SCAN-Karte führt darüberhinaus die Lifetime-Messung durch unter Berücksichtigung der gesamten Totzeit der Zählerkarten.
Nachtrag (25.Feb.10): durch die 16Bit-Zähler und die maximale Frequenz der Spannungs-Frequenz-Wandler von 500kHz führen Messintervalle über ca. 130ms zum Überlaufen der Zähler. Um dies zu vermeiden werden ab der Version 25.Feb.10 überlange Messzeiten in aufeinanderfolgende Intervalle von maximal 100ms zerlegt. Die Pausenzeit wird nur einmal am Anfang einer solchen Intervallserie durchgefúhrt. Innerhalb der Serie wird ein Minimalwert (0.001ms) verwendet.
Vorige: Ablauf der Messung, Nach oben: Funktion von MASST [Inhalt]
• Gaußmeter Bell 620 |
Nach oben: Geräteeinstellungen [Inhalt]
Mit der Hall-Sonde außerhalb des Magneten kann der Nullpunkt justiert werden. Dazu muss eine ausreichende Aufwärmzeit abgewartet werden. Zuletzt war der Nullpunkt nur bis auf +4mV abzugleichen.
Messbereich: 1k
Das Gaußmeter liefert am Ausgang bei Vollausschlag 1V, das über einen Spannungs-Frequenz-Wandler (50kHz/V) und einem U/D-Zähler registriert wird.
Mit 150A vom Heinzinger sollte der Magnet laut Datenblatt 7.5 kGauß erreichen. Das Gaußmeter zeigt jedoch nur knapp 7 kGauß an. Die Hall-Sonde war dabei auf maximalen Ausschlag positioniert.
Nächste: Archivierung der Daten, Vorige: Funktion von MASST, Nach oben: Top [Inhalt]
Das Programm ist weitgehend selbsterklärend. Die notwendigen Eingaben werden in Dialogform angefordert. Der Dialog ist in einer Hierarchiestruktur aufgebaut, wobei mittels Menülisten von einer Dialogebene in die andere gewechselt werden kann. Für Parametereingaben existieren im Allgemeinen Vorbelegungswerte, die editiert werden können.
• MASST Top-Menü | ||
• MASST Start-Menü | ||
• Experiment-Parameter-Eingabe | ||
• Funktionen bei laufendem Experiment | ||
• MASST Konfigurations-Menü |
Nächste: MASST Start-Menü, Nach oben: Bedienung von MASST [Inhalt]
• Exit MASST | ||
• Start experiment | ||
• Show header | ||
• Analyse spectrum | ||
• Delete spectrum | ||
• Convert spectrum to ASCII | ||
• Edit header of spectrum | ||
• Execute shell command | ||
• Set configuration | ||
• Help |
Nächste: Start experiment, Nach oben: MASST Top-Menü [Inhalt]
Verlassen des Programmes.
Nächste: Show header, Vorige: Exit MASST, Nach oben: MASST Top-Menü [Inhalt]
Führt zum MASST Start-Menü. (Siehe MASST Start-Menü.)
Nächste: Analyse spectrum, Vorige: Start experiment, Nach oben: MASST Top-Menü [Inhalt]
Zeigt die wichtigsten Daten des Headers, der jedem Spektrum beigefügt ist:
Die Darstellung des Headers kann mit der Leertaste wiederholt und mit der Return-Taste beendet werden. Für ein nicht existierendes Spektrum (Status new) erfolgt eine gekürzte Ausgabe.
Nächste: Delete spectrum, Vorige: Show header, Nach oben: MASST Top-Menü [Inhalt]
Startet als Subtask ein Auswerteprogramm zur graphischen Darstellung und Auswertung des aktuellen Spektrums. Eine gestartete Messung läuft während der Auswertung weiter. Nach Verlassen des Auswerteprogramms wird in das Messprogramm zurückgekehrt. Üblicherweise kann das Startup-Verhalten der Auswerteprogramme konfiguriert werden (^Z -> Set configuration -> Startup mode).
MASST verwendet standardmäßig das Programm PEAK3 als Auswerteprogramm. Unter "Set Configuration" kann ein anderes Auswerteprogramm konfiguriert werden.
Nächste: Convert spectrum to ASCII, Vorige: Analyse spectrum, Nach oben: MASST Top-Menü [Inhalt]
Ein existierendes Spektrum wird gelöscht (im Arbeitsspeicher und auf dem Host-Rechner), die Daten sind verloren.
Nächste: Edit header of spectrum, Vorige: Delete spectrum, Nach oben: MASST Top-Menü [Inhalt]
Das Spektrum wird mit oder ohne Header und mit oder ohne Kanalnummern in ASCII Form auf einen File geschrieben.
Nächste: Execute shell command, Vorige: Convert spectrum to ASCII, Nach oben: MASST Top-Menü [Inhalt]
Falls die Eingabe der Header-Daten fehlerhaft war, besteht hier die Möglichkeit zur Korrektur. Jedoch nur für die experimentbeschreibenden und nicht für die messungsrelevanten (z.B. Spektrumslänge) Header-Daten.
Nächste: Set configuration, Vorige: Edit header of spectrum, Nach oben: MASST Top-Menü [Inhalt]
Einige der VxWorks-Shell-Kommandos (cd, ls, pwd, whoami) können ausgeführt werden.
Nächste: Help, Vorige: Execute shell command, Nach oben: MASST Top-Menü [Inhalt]
Führt zum MASST Konfigurations-Menü. (Siehe MASST Konfigurations-Menü.)
Vorige: Set configuration, Nach oben: MASST Top-Menü [Inhalt]
Bringt diese Anleitung über das menüorientierte GNU-INFO-Programm auf den Bildschirm. INFO läuft dabei auf einem Server (z.Z. Ionix).
Wenn INFO mit ’Q’ oder ’q’ normal beendet wird, dann erfolgt die direkte Rückkehr zum Messprogramm. Wird INFO jedoch mit ’^C’ abgebrochen, so bleibt das Login auf dem INFO-Server erhalten und muss mit ’exit’ oder ’logout’ beendet werden!
Nächste: Experiment-Parameter-Eingabe, Vorige: MASST Top-Menü, Nach oben: Bedienung von MASST [Inhalt]
• Return | ||
• Create new spectrum | ||
• Continue old spectrum | ||
• Test run | ||
• Print hardware info |
Nächste: Create new spectrum, Nach oben: MASST Start-Menü [Inhalt]
Rückkehr zum Top-Menü.
Nächste: Continue old spectrum, Vorige: Return, Nach oben: MASST Start-Menü [Inhalt]
Start der Messung, falls noch kein Spektrum des angegebenen Namens existiert (Status new). Das Spektrum wird auf der Platte des Host-Rechners angelegt, ist zunächst jedoch noch leer. Für ein bereits existierendes Spektrum erfolgt eine Fehlermeldung (Status old).
Für den Start einer Messung müssen die zugehörigen Parameter eingegeben
werden.
(Siehe Experiment-Parameter-Eingabe.)
(Siehe Funktionen bei laufendem Experiment.)
Nächste: Test run, Vorige: Create new spectrum, Nach oben: MASST Start-Menü [Inhalt]
Start der Messung, falls sie mit einem bereits existierenden Spektrum (Status old) fortgesetzt werden kann (abh. vom Messprogramm). Das Spektrum wird vom Host-Rechner geladen, falls es noch nicht da ist. Für ein noch nicht existierendes Spektrum erfolgt eine Fehlermeldung (Status new).
Für den Restart der Messung kann nur ein Teil der zugehörigen Parameter
geändert werden.
(Siehe Experiment-Parameter-Eingabe.)
(Siehe Funktionen bei laufendem Experiment.)
Nächste: Print hardware info, Vorige: Continue old spectrum, Nach oben: MASST Start-Menü [Inhalt]
Start der Messung, falls noch kein Spektrum des angegebenen Namens existiert (Status new), ohne jedoch auf dem Host-Rechner einen File anzulegen. Beim Stop der Messung wird angefragt, ob die Messdaten noch gerettet werden sollen. Auch während der Messung können die Daten mit ’Save spectrum’ zum Host-Rechner gerettet werden.
Die Messdaten können während des TEST RUNs im Speicher (nicht auf der Platte) gelöscht werden mittels einer Funktion im Display-Programm (Analyse spectrum).
Für den Start der Messung müssen die zugehörigen Parameter eingegeben
werden.
(Siehe Experiment-Parameter-Eingabe.)
(Siehe Funktionen bei laufendem Experiment.)
Vorige: Test run, Nach oben: MASST Start-Menü [Inhalt]
Druckt wahlweise den Hardware-Status oder Status und Daten, so wie sie vom Experiment über das Data-Routing übertragen werden, direkt auf dem Bildschirm aus. Die Interface-Karten im Data-Routing benötigen i.a. zur Übertragung von Daten ein externes Signal (z.B. READ-Trigger). Diese Funktion dient Diagnosezwecken (z.B. Ermittelung der Datenkennung).
Nächste: Funktionen bei laufendem Experiment, Vorige: MASST Start-Menü, Nach oben: Bedienung von MASST [Inhalt]
Für den Start einer Messung müssen die zugehörigen Parameter eingegeben werden. Einige der Parameterangaben sind notwendig für die Durchführung der Messung, andere sind für die Auswertung relevant oder haben nur beschreibende Funktion. Für den Restart der Messung kann nur ein Teil der zugehörigen Parameter geändert werden.
Title
Zur Beschreibung der Messung kann eine Titelzeile eingegeben werden.
Length of single spectrum
Es ist die Länge N eines einzelnen Spektrums der 4*N Matrix anzugegeben
(N < 65536).
Weitere Eingaben auf der nächsten Seite:
B min.
Startwert für den Magnetfeld-Scan [kGauss].
B max.
Endwert für den Magnetfeld-Scan [kGauss].
Startup time
Pausenzeit nach Einstellen des Magnetfeld-Startwertes [s].
Pause time
Pausenzeit nach einem Magnetfeldschritt [ms].
Gate time
Messzeit [ms]
Die folgenden Parameter sind experimentbeschreibend, sie haben keinen Einfluss auf die Datenerfassung:
Acceleration voltage
Quellen-Extraktions-Spannung [kV].
Diaphragm horizontal
Schlitzblende horizontal [mm].
Diaphragm vertical
Schlitzblende horizontal [mm].
Faraday cup #
Faraday Cup Nummer.
Gas pressure
Gasdruck in der Quelle [mb].
Gas type
Angaben zum Gastyp.
Time base spectrum 4
Zeitbasis für das 4. Spektrum; die Angabe von
n (ganzzahlig) ergibt einen Zeitakt 2^(-n) MHz.
Zur Vermeidung eines Überlaufs des 16-Bit Zeitzählers ist der Takt
auf 500kHz begrenzt (n>0).
Ion current converter
Die Ionenstrom-Konverter-Einstellung wird nur
ausgelesen und die Werte im Header des Spektrum
abgelegt. Sollte die Einstellung verändert werden,
so wird ein ’Update Converter data’ nötig.
Nächste: MASST Konfigurations-Menü, Vorige: Experiment-Parameter-Eingabe, Nach oben: Bedienung von MASST [Inhalt]
• Stop experiment | ||
• Save spectrum | ||
• Show header | ||
• Analyse spectrum | ||
• Detach MASST |
Nächste: Save spectrum., Nach oben: Funktionen bei laufendem Experiment [Inhalt]
Die Messung wird gestoppt und die Daten werden zum Host-Rechner übertragen (Siehe Archivierung der Daten.). Im Modus "Test Run" wird allerdings zuerst abgefragt, ob die Daten gerettet werden sollen, Default ist "no".
Treten bei der Datenübertragung Probleme auf, so erfolgt eine Fehlermeldung. Die Daten bleiben erhalten und der Stop kann wiederholt werden.
Nächste: Show header., Vorige: Stop experiment., Nach oben: Funktionen bei laufendem Experiment [Inhalt]
Alte Version:
Während der laufenden Messung kann das Spektrum zum Host-Rechner gerettet
werden. Auf einem Unix-Host wird dabei ein bereits existierendes Spektrum
gleichen Namens überschrieben. Ebenso wird ein auf diese Weise gerettetes
Spektrum am Ende bei einem "Stop experiment" wieder überschrieben (nicht
im Modus "Test Run"). Soll es erhalten bleiben, so muss es zuvor umbenannt
werden.
Neue Version:
Es existieren mehrere Möglichkeiten um während einer laufenden Messung
das Spektrum zum Host-Rechner zu retten:
Number of backups
Es wird höchstens die angegebene Anzahl Backups durchgeführt.
Time between backups [min]
Zeitlicher Abstand zwischen den Backups in Minuten und Zeit bis zum
ersten Backup. Im Falle einer Scan-Messung wird nach Ablauf dieser Zeit
ggf. noch auf das Ende eines Scan-Durchlaufs gewartet (s.u.).
Save to master(0)/new(1) file
Das Backup kann sowohl auf den normalen Daten-File (Master) erfolgen,
der dann jeweils überschrieben wird, oder es wird jedes Mal ein neuer
File angelegt, dessen Name Datum und Uhrzeit enthält.
Stop data while saving(0/1) bei Messungen von Spektren
Wenn die Messung während des Backups weiterläuft könnte das
ein ’schiefes’ Spektrum zur Folge haben falls die Zeit für die
Datenübertragung nicht deutlich kürzer ist als die Messzeit.
Save at end of scan(0/1) bei Scan-Messungen
Ein Backup mitten in einem Scan-Durchlauf hat eine Stufe in den
Messdaten zur Folge.
Nächste: Analyse spectrum., Vorige: Save spectrum., Nach oben: Funktionen bei laufendem Experiment [Inhalt]
Zeigt die wichtigsten Daten des Headers, der jedem Spektrum beigefügt ist:
Die Darstellung des Headers kann mit der Leertaste wiederholt und mit der Return-Taste beendet werden. Für ein nicht existierendes Spektrum (Status new) erfolgt eine gekürzte Ausgabe.
Nächste: Detach MASST., Vorige: Show header., Nach oben: Funktionen bei laufendem Experiment [Inhalt]
Startet als Subtask ein Auswerteprogramm zur graphischen Darstellung und Auswertung des aktuellen Spektrums. Eine gestartete Messung läuft während der Auswertung weiter. Nach Verlassen des Auswerteprogramms wird in das Messprogramm zurückgekehrt. Üblicherweise kann das Startup-Verhalten der Auswerteprogramme konfiguriert werden (^Z -> Set configuration -> Startup mode).
MASST verwendet standardmäßig das Programm PEAK3 als Auswerteprogramm. Unter "Set Configuration" kann ein anderes Auswerteprogramm konfiguriert werden.
Vorige: Analyse spectrum., Nach oben: Funktionen bei laufendem Experiment [Inhalt]
Hiermit kann das Messprogramm verlassen werden, ohne dass die Messung unterbrochen wird. Die Kontrolle über das Messprogramm gewinnt man zurück durch einen erneuten Start.
Achtung: es existiert zur Zeit keine Sicherung gegen ein weiteres Starten eines anderen Messprogrammes, das die laufende Messung stören w#"urde!
Vorige: Funktionen bei laufendem Experiment, Nach oben: Bedienung von MASST [Inhalt]
Unter diesem Konfigurations-Menü erfolgen alle notwendigen Anpassungen des Programmes. Beim allerersten Start des Messprogrammes wird dieser Menüpunkt stets automatisch aufgerufen. Danach sollte er nur noch bei Konfigurationsänderungen benutzt werden.
• Return | ||
• General parameters | ||
• Background program | ||
• Data Routing hardware | ||
• Control Routing hardware | ||
• Ion current converter | ||
• Gauss to mV conversion |
Nächste: General parameters, Nach oben: MASST Konfigurations-Menü [Inhalt]
Rückkehr zum Top-Menü.
Nächste: Background program, Vorige: Return.., Nach oben: MASST Konfigurations-Menü [Inhalt]
Name of experiment
Dieser Name wird im Header des Spektrums als Experimentname eingetragen.
Print verbose messages
Bei Angabe einer "1" werden ausführlichere Meldungen ausgegeben.
Delay messages
Gelegentlich wird eine vorausgehende von einer nachfolgenden Meldung
so rasch überschrieben, dass sie nicht gelesen weren kann. Hier kann
für Meldungen eine Mindestverweilzeit (in Sek.) auf dem Bildschirm
angegeben werden. Dies verzögert natürlich die Bedienung des
Programmes und sollte deshalb nur für Testzwecke eingeschaltet werden.
Check task stack
Unter VxWorks wird der Stack einer Task aus Zeitgründen nicht auf
Überlauf geprüft. Ein Überlauf führt in der Regel jedoch
zur Zerstörung der Task und auch des Systems. Eine "1" führt
beim Stop der Task zu einer Prüfung des Stack. Im Allgemeinen nur
bei Problemen notwendig.
Nächste: Data Routing hardware, Vorige: General parameters, Nach oben: MASST Konfigurations-Menü [Inhalt]
Unter dem Menüpunkt "Analyse spectrum" wird ein Auswerteprogramm gestartet, das an dieser Stelle spezifiziert werden muss. Im folgenden Beispiel wird davon ausgegangen, dass das Messprogramm MCA das Auswerteprogramm PEAK3 verwendet.
Abhängig davon ob als Laborrechner ein VME-System oder ein INTEL-System im Einsatz ist, sind die Angaben unterschiedlich:
File: VME-> /usr/exp/ex_prog/peak3v.o INTEL-> /usr/exp/ex_prog/peak3.out
Dies ist der Pfad zum Auswerteprogramm PEAK3.
Symbol: VME-> _peak3 INTEL-> peak3
Dies ist das Symbol unter dem PEAK3 unter VxWorks registriert ist.
Task: tMcaBg
Dies ist ein frei wählbarer Task-Name für das Auswerteprogramm, der
sich jedoch von allen bereits vorhandenen Task-Namen unterscheiden muss.
Argmts: VME-> ,,"peak3_mca.vxw",,'S' INTEL-> ,,"peak3_mca.vxwi",,'S'
Dies sind die Argumente, die dem Auswerteprogramm mitgegeben werden können. Bei den Standardauswerteprogrammen (PEAK, WQA, IAC, IAP, LAC usw.) haben sie folgende Funktion:
S | Einzelspektrums-Darstellung. | |
M | Matrix-Darstellung (Hidden Lines). | |
C | Matrix-Darstellung (Contour Plot). | |
I | Peak-Integration, Wirkungsquerschnitts-Berechn. usw. | |
X | S oder M wird passend ausgewählt. |
Task priority: 100
Priorität unter der die Auswertung läuft. 100 ist ein guter Wert!
Task options: 0x00000008
0x00000008 bedeutet, dass die Task den Floating-Point-Prozessor benutzt.
Task stack: VME-> 5000 | INTEL-> 8000
Unter VxWorks wird das Stack einer Task aus Zeitgründen nicht dynamisch
verwaltet, sondern beim Start fest zugeteilt. Es muss ausreichend groß
gewählt werden, da es während der Laufzeit nicht überwacht
wird und ein Überlauf zur Zerstörung von Task und System führt.
Für die Standardauswerteprogramme ist 5000 bzw. 8000 ausreichend, ansonsten
sollte man eher einen Werte von 20000 nehmen.
Unload: 1
Eine "1" bedeutet, dass das Auswerteprogramm nach der Rückkehr ins
Messprogramm wieder aus dem Speicher gelöscht wird. Dies sollte die
Regel sein.
Stack check: 0
Unter VxWorks wird das Stack einer Task aus Zeitgründen nicht auf
Überlauf geprüft. Ein Überlauf führt in der Regel jedoch
zur Zerstörung der Task und auch des Systems. Eine "1" führt
beim Stop der Task zu einer Prüfung des Stack. Im Allgemeinen nur
bei Problemen notwendig.
Nächste: Control Routing hardware, Vorige: Background program, Nach oben: MASST Konfigurations-Menü [Inhalt]
Falls das Data-Routing im Experiment zum Einsatz kommt, muss die Software wissen, auf welchem Wege das Data-Routing an den Laborrechner angeschlossen ist.
Anschluss an einen VME-Rechner:
Anschluss an einen INTEL-Rechner:
Das Data-Routing ist über USB an den Laborrechner angeschlossen und kann
deshalb vom Messprogramm gesucht und gefunden werden:
Die erste Liste zeigt alle über USB angeschlossenen Geräte. Der Data-Routing Anschluss zeigt sich als:
FTDI FT2232H MiniModule IAMP-DataRout
Der Datentransfer erfolgt über zwei Ports des TTY-Treibers. Mittels Statusabfragen über die ersten acht Ports kann das Data-Routing gefunden werden. Die zweite Liste zeigt das Ergebnis der Abfragen und markiert den Data-Routing-Anschluss.
Nächste: Ion current converter, Vorige: Data Routing hardware, Nach oben: MASST Konfigurations-Menü [Inhalt]
Falls das Control-Routing im Experiment zum Einsatz kommt, muss die Software wissen, auf welchem Wege das Control-Routing an den Laborrechner angeschlossen ist.
Anschluss an einen VME-Rechner:
Anschluss an einen INTEL-Rechner:
Das Control-Routing ist über USB an den Laborrechner angeschlossen und kann
deshalb vom Messprogramm gesucht und gefunden werden:
Die erste Liste zeigt alle über USB angeschlossenen Geräte. Der Control-Routing Anschluss zeigt sich als:
FTDI FT2232H MiniModule IAMP-CntlRout
Der Datentransfer erfolgt über zwei Ports des TTY-Treibers. Mittels Statusabfragen über die ersten acht Ports kann das Control-Routing gefunden werden. Die zweite Liste zeigt das Ergebnis der Abfragen und markiert den Control-Routing-Anschluss.
Nächste: Gauss to mV conversion, Vorige: Control Routing hardware, Nach oben: MASST Konfigurations-Menü [Inhalt]
Der Ionenstrom wird über ein Elektrometer (3pA-100uA) gemessen und in eine Frequenz gewandelt. Der Spannungs-Frequenz-Konverter ist so ausgelegt, dass er bei Vollausschlag des Elektrometers 500kHz abgibt. Für die einzelnen Messbereiche kann es jedoch geringfügige Abweichungen geben, die durch eine exakte Messung bestimmt werden müssen. Mit den Ionenstrom-Konversions-Faktoren können diese Abweichungen berücksichtigt werden.
Zur Eichung steht eine Keithley 261 Picoampere Source zur Verfügung.
Folgendes ist dabei zu beachten:
Die Ströme werden durch eine einstellbare Spannung (0-10.99V) und einen
einstellbaren Serienwiderstand (100k, 1M,...,100G) erzeugt.
Das Elektrometer hat jedoch einen Eingangswiderstand von 100k,
der sich zu dem Serienwiderstand addiert. Damit ergeben sich folgende
relative Abweichungen von den Sollwerten:
Wahl R +100k I 10^-5 100k 200k 0.500 10^-6 1M 1.1M 0.909 10^-7 10M 10.1M 0.990 10^-8 100M 100.1M 0.999
Vorige: Ion current converter, Nach oben: MASST Konfigurations-Menü [Inhalt]
Festlegen des Konversionsfaktors (Gauß/mV) zur Umrechnung der vom Gaußmeter gelieferten Spannung in Gauß-Werte des Magnetfeldes. Das Gaußmeter sollte mit den richtigen Einstellungen (Siehe Gaußmeter.) bei 10kGauss am Ausgang 1V liefern, d.h. Konversionsfaktor = 10 Gauss/mV. Nach erfolgtem Nullpunktabgleich des Gaußmeters den Magneten auf einen definierten, hohen Wert fahren (braucht einige Zeit!) und den vom Gaußmeter gelieferten Spannungswert messen.
Nächste: Statusanzeigen, Vorige: Bedienung von MASST, Nach oben: Top [Inhalt]
Die Labor-Rechner verwenden in der Regel keine eigenen Medien zum Speichern der Messdaten sondern sie benutzen die Dienste von Servern im Netzwerk.
Unter VxWorks, dem Betriebssystem der Labor-Rechner, wird im Boot-File des
Labor-Rechners der Server und der User-Account festgelegt, von dem das
System gebootet wird.
Nach dem Booten eines Labor-Rechners ist, wie bei einem normalen Login,
die Home-Directory des Users als Work-Directory eingestellt. Mit
cd "path"
("’s nicht vergessen!) bewegt man sich in fast gewohnter
Weise durch die Directory-Hierarchie. Die Schreibweise für
Pfadangaben richtet sich nach dem Host-Rechner.
Diese Netzwerkzugriffe erfolgen über RSH. Der File $HOME/.rhosts muss dafür die entsprechende Freigabe enthalten.
Für den Transfer großer Datenmengen, insbesondere bei "List-Mode" Messungen, ist RSH jedoch weniger geeignet. In solchen Fällen sollte der Datentransfer über NFS erfolgen. Dazu muss auf dem Host-Rechner der /etc/exports File die notwendigen Freigaben enthalten und in dem Boot-Script-File
$HOME/ex_home/ex_param/startup.vxw (VME-Rechner) $HOME/ex_home/ex_param/startup.vxwi (INTEL-Rechner)
müssen die benötigten NFS-Verbindungen eingetragen sein.
Um das Ganze übersichtlich zu halten, werden die Labor-Systeme in der
Regel zur Zeit folgendermaßen betrieben:
$HOME/ex_home/ex_data: Messdaten $HOME/ex_home/ex_help: Help-Files für die Mess- und Auswerteprogramme $HOME/ex_home/ex_param: Parametersätze der Mess- und Auswerteprogramme $HOME/ex_home/ex_prog: Mess- und Auswerteprogramme $HOME/ex_home/vxw: VxWorks Betriebssysteme für die Labor-Rechner
bootHost:spektr.spe $HOME/spektr.spe bootHost:ddd/spektr.spe $HOME/ddd/spektr.spe ~/spektr.spe $HOME/spektr.spe ~/ddd/spektr.spe $HOME/ddd/spektr.spe spektr.spe ./spektr.spe ddd/spektr.spe ./ddd/spektr.spe
home:spektr.spe $HOME/spektr.spe data:spektr.spe $HOME/ex_home/ex_data/spektr.spe
Weitere NFS-Laufwerke können im Boot-Script-File freigegeben bzw. neu
definiert werden.
Die existierenden NFS-Laufwerke können Sie sich mit dem SHOW-Programm
unter "Network(NFS) devices" anzeigen lassen.
home:ex_home/ex_data/test.spe -> home:./ex_home/ex_data/test.spe
$HOME/ex_home/ex_param/<Programmname>par.vxw (VME-Rechner) $HOME/ex_home/ex_param/<Programmname>par.vxwi (INTEL-Rechner)
auf, um sie bei einem nachfolgenden Start als Default-Werte anbieten zu können.
Nächste: Anhang, Vorige: Archivierung der Daten, Nach oben: Top [Inhalt]
In der obersten Zeile wird an erster Stelle der Name des Programmes dargestellt. An zweiter Stelle folgt die Statusinformation offline/online/test, die anzeigt ob die Messung gestartet ist oder nicht. Dann folgt der Name des Spektrums und am Ende der Zeile eine detaillierte Statusanzeige in hexadezimaler Form von folgender Bedeutung:
STATUS of spectrum (hexadecimal) 0001 Spectrum created on disk 0002 Spectrum saved on disk 0004 Spectrum created in memory 0008 Spectrum loaded in memory 0010 Experiment online 0020 Autonomous stop of experiment 0040 Test run 0100 Experiment failure 0200 Wrong typ of spectrum 0400 Error reading header of spectrum 0800 Error reading spectrum file 1000 Header loaded
Die zweite Zeile dient der Ausgabe von Fehlermeldungen (blinkend), sowie Informationen über die augenblicklichen Aktivitäten des Programmes.
Vorige: Statusanzeigen, Nach oben: Top [Inhalt]
• Messdatenformat | ||
• MASST Hardware |
Nächste: MASST Hardware, Nach oben: Anhang [Inhalt]
• Struktur der MASST-Dateien | ||
• Struktur des MASST-Headers |
Nächste: Struktur des MASST-Headers, Nach oben: Messdatenformat [Inhalt]
Die MASST-Messdaten-Files entsprechen dem Strahlenzentrumsstandard und können deshalb mit einer Anzahl vorhandener Programme weiterverarbeitet werden. Sie beginnen mit einem Header von 512 Bytes Länge, der am Anfang einen standardisierten Teil enthält und anschließend noch eine Reihe weiterer Daten (z.B. Lifetime-, Realtime-Zähler usw.), zu denen man über die Include-Files ~/ex_home/ex_src/.../massT.conf und massT.h Zugang hat.
Anschließend folgen die 4 Spektren in der Reihenfolge:
Die Länge der Spektren ist wählbar. Die Kanäle der Spektren sind als INTEGER*4 (BYTES = 4) deklariert, d.h. jeder Kanal kann ca. 4*10^9 Ereignisse aufnehmen.
--- | | Header, 512 Bytes | --- | | Primärionenstrom, (Anz. Kanäle * 4) Bytes | --- | | Magnetfeld am Anfang der Messintervalle (Anz. Kanäle * 4) Bytes | --- | | Magnetfeld-Mittelwert der Messintervalle (Anz. Kanäle * 4) Bytes | --- | | Messzeit pro Messintervall, (Anz. Kanäle * 4) Bytes | ---
Vorige: Struktur der MASST-Dateien, Nach oben: Messdatenformat [Inhalt]
#define lIDHDR 8 #define lHDLEN 1 #define lEXPMNT 6 #define lIDPRG 8 #define lSTDAT 9 #define lSTTIM 8 #define lSPDAT 9 #define lSPTIM 8 #define lSPENAM 8 #define lSPTYPE 4 #define lROWS 6 #define lCOLS 6 #define lBYTES 1 #define lHDFREE 4 #define lRESRV 38 #define lLTXT 4 #define lTEXT 80 Plattformabhängige Definitionen: UINT2: 2 Bytes "unsigned int" UINT4: 4 Bytes "unsigned int" typedef union { struct { struct { char idhdr[lIDHDR]; /* ID of header: "STRZ-VXW" (VME) | "STRZ-VXI" (INTEL) */ char hdlen[lHDLEN]; /* Length of header: "1" */ char expmnt[lEXPMNT]; /* Experiment */ char idprg[lIDPRG]; /* ID of generating Program: "MASST" */ char stdat[lSTDAT]; /* Date of start */ char sttim[lSTTIM]; /* Time of start */ char spdat[lSPDAT]; /* Date of stop */ char sptim[lSPTIM]; /* Time of stop */ char spenam[lSPENAM]; /* Name of spectrum */ char sptype[lSPTYPE]; /* Type of spectrum: "MCA2" */ char rows[lROWS]; /* Number of rows: " 4" */ char cols[lCOLS]; /* Channels/row: " <var>" */ char bytes[lBYTES]; /* Bytes/channel: "4" */ char hdfree[lHDFREE]; /* First free byte in header (0,...) */ char resrv[lRESRV]; /* Reserved */ char ltxt[lLTXT]; /* Length of text: "80" */ char text[lTEXT]; /* Text */ } stddat; /* Standard data of header */ struct { UINT2 status; /* Status of spectrum */ UINT4 rltcnt; /* Realtime */ UINT4 lftcnt; /* Lifetime */ UINT4 datcnt; /* Processed positions */ UINT4 outcnt; /* Positions out of range */ UINT4 ioncnt; /* Counter 1, ion data */ UINT4 timcnt; /* Counter 2, timer data */ UINT4 gaucnt; /* Counter 3, Gauss data */ UINT4 seqcnt; /* Sequence errors */ UINT4 bovcnt; /* Buffer overruns */ UINT4 rejcnt; /* Rejected data */ UINT4 errcnt; /* Error counter */ UINT4 fulcnt; /* Fifo full counter */ UINT2 staplo; /* Status of plot */ UINT2 slen; /* Length of single spectrum */ REAL4 expar[14]; /* Extended MASST parameters */ char gastype[50]; /* Type of gas, MASST only */ UINT4 runtim; /* Realtime to run experiment [s] */ } spcdat; /* Special data of header */ } hdata; /* Header data */ struct { char h512[512]; /* Fill 512 bytes block */ } htotal; /* Total header */ } HEADER;
Experiment-Parameter: EXPAR[ ] | ESS-Programm | ESW-Programm | MASS-Programm ---------+----------------------+-----------------------+---------------------- 0 | Startenergie [eV] | Elektronenenerg. [eV] | Startmagnetfeld [kGauss] 1 | Endenergie [eV] | - | Endmagnetfeld [kGauss] 2 | Ionenladung q | Accel. voltage [kV] 3 | Ionenmasse [amu] | Diaphragm horizontal [mm] 4 | Ionenenergie [keV] | Diaphragm vertical [mm] 5 | Efficiency [%] | Faraday Cup # 6 | Teiler Zeitbasis 4.Spektrum 7 | Elektronenstromkonv. Bereich | Gasdruck [mb] 8 | Elektronenstromkonv. F.S. [Hz] | Gauss -> mV [Gauss/mV] 9 | Ionenstromkonverter Bereich 10 | Ionenstromkonverter Full Scale [Hz] 11 | Startup Wartezeit [s]| Teiler Winkelschrittg.| Startup Wartezeit [s] 12 | Pausenzeit [ms] | Winkelschrg. [Imp/10mm] Pausenzeit [ms] 13 | Messzeit [ms] | - | Messzeit [ms]
Header Typen
/****** Header ID ******/ STRZ-VXW /* VME/VxWorks-type header */ STRZ-VXI /* Intl/VxWorks-type header */ STRZ-LNX /* I86/Linux-type header */ STRZ-VAX /* VAX/VMS-type header */ STRZ-ULT /* DS5000/Ultrix-type header */ STRZ-OSF /* Alpha/OSF1-type header */
Alignment in Structure
In einer Structure werden die Daten abhängig von Rechnersystem und Compiler
unterschiedlich an Vielfachen von Bytes ausgerichtet. Dieses Alignment
vereinfacht i.a. die Speicherzugriffe.
VXW-Header: m68k GCC (VME-Rechner) Max-Alignment = 2 VXI-Header: llvm (INTEL-Rechner) Max-Alignment = 4 LNX-Header: i86 GCC Max-Alignment = 4 VAX-Header: PDP11 Fortran77 Max-Alignment = 2 ULT-Header: DS5000 DEC C kein Max-Alignment = 32 OSF-Header: Alpha C89 kein Max-Alignment = 32
IEEE Endien
IEEE Big Endien: höchstwertiges Byte zuerst IEEE Little Endien: niederwertiges Byte zuerst Integer Single Double VXW-Header: Big I Big S Big T VXI-Header: Little I Little S Little T LNX-Header: Little I Little S Little T VAX-Header: Little I VAX F VAX D ULT-Header: Little I Little S Little T OSF-Header: Little I Little S Little T
Vorige: Messdatenformat, Nach oben: Anhang [Inhalt]
• MASST Control-Routing | ||
• MASST Data-Routing |
Nächste: Data-Routing, Nach oben: MASST Hardware [Inhalt]
Control-Routing |====================| |Read/Reset-Verteiler| |(Slot11,12) In|<-. | 4 * Reset Out|--|---------> Reset (Data-Routing[1]) | 4 * Read Out|--|---------> Read (Data-Routing[2]) |====================| | |SCAN/DCB-Umschalter | | |(Slot09,10) | | | Gate SCAN Out|--|---------> Gate-Signal-Verteiler (Data-Routing[3]) | Read SCAN Out|--|---------> SCAN-Kontr./Kanalnr., Read (Data-Routing[4]) | Read DCB Out|--|---------> ungenutzt (Schalter auf SCAN!!!) | Read/Reset Out|--' | Gate SCAN In|<-----. | Read SCAN In|<-. | | Read DCB In|<-|---|------ ungenutzt (Schalter auf SCAN!!!) |====================| | | |====================| | | | Interrupt Eingabe | | | |(Slot07) !Busy In|<-|---|------ SCAN-Kontrolle, Busy (Data-Routing[5]) | Read/Reset|--' | | Start|<---. | |====================| | | | DAC-Datenausgabe | | | |(Slot06) LWL Out|----|-|-----> DAC-Box ---> Magnet |====================| | | | Messber.-Eingabe | | | |(Slot05) Ser. In|<---|-|------ Ionenstrom-Konverter-Messbereich |====================| | | | Zeitbasis-Ausgabe | | | |(Slot04) Out|----|-|-----> Messzeit, Count (Data Routing[6]) |====================| | | | Pausenzeit-Ausgabe | | | |(Slot03 !Intervall|--. | | |====================| | | | | Messzeit-Ausgabe | | | | |(Slot02) Ext. Start|<-' | | | !Intervall|----' | | Intervall|------' |====================| |Kanalnummer-Ausgabe | |(Slot01) 20 pol.|-----------> Kanalnummer, 20 pol. (Data Routing[7]) |====================| | Adress-Decoder | |(Slot00) | |====================|
Vorige: Control-Routing, Nach oben: MASST Hardware [Inhalt]
Das Messprogramm erwartet folgende Anordnung der Interface-Karten im Data-Routing (von links):
IFS Karte (Modus: RUN, FREI) Pos-Karte (Kanalnummer; auf Vorrang verdrahtet!) IFS Karte (Modus: RUN, K2) U/D-Zähler (Zähler 1; Primärionenstrom) IFS Karte (Modus: RUN, K2) U/D-Zähler (Zähler 2; Messzeit) IFS Karte (Modus: RUN, K2) U/D-Zähler (Zähler 3; Magnetfeld) IFS Karte (Modus: LFT, FREI) SCAN-Karte (Überwachung)
Data-Routing |===============| |1->8 Buffer IN|<----------<Gate (Control-Routing[3]) | 8 * OUT|------. |===============| | |===============| | |SCAN | | | BUSY|------|---->SCAN-Kontrolle, Busy (Control-Routing[5]) | READ|<-----|-+--<SCAN/DCB, Read SCAN (Control-Routing[4]) |---------------| | | |IFS (LFT,FREI) | | | |===============| | | |U/D-ZLR GATE|<-----+ | | RESET|<---. | | | READ|<-. | | | | COUNT|<-|-|-|-|--<Magnetfeld (Gaußmeter) |---------------| | | | | |IFS (RUN, K2) | | | | | |===============| | | | | |U/D-ZLR GATE|<-|-|-+ | | RESET|<-|-+-|-|--<Reset (Control-Routing[1]) | READ|<-+-|-|-|--<Read (Control-Routing[2]) | COUNT|<-|-|-|-|--<Messzeit (Control-Routing[6]) |---------------| | | | | |IFS (RUN, K2) | | | | | |===============| | | | | |U/D-ZLR GATE|<-|-|-' | | RESET|<-|-' | | READ|<-' | | COUNT|<-------|--<Primärionenstrom (Elektrometer) |---------------| | |IFS (RUN, K2) | | |===============| | |POS | | | READ|<-------' |20-pol. Stecker|<---------<Kanalnummer (Control-Routing[7]) |---------------| |IFS (RUN,FREI) | |===============|