**************************************** * Anleitung zum Messprogramm ESW * * 'Elektronen-Stoss-WQ-Absolutmessung' * **************************************** 29.04.1992 K. Huber Version 26.08.2002 (VME-Version) Sie finden diese Anleitung auf dem SERVIX unter $HOME/ex_home/ex_help/eswhlp.txt, wenn Sie auf Ihrem Experiment-Account eingelogged sind. Die Hard- und Software Voraussetzungen sind: VME Experiment-Rechner-System Data-Routing-Einheit Control-Routing-Einheit VT240/330 Terminal oder PC ueber COM oder TeraTerm VxWorks Betriebssystem Netzwerkanschluss zu einem Host-Rechner Das ESW Programm ist eine Weiterentwicklung des ESI Messprogrammes. Es dient der Absolutmessung von Elektronen-Stoss-WQ-Spektren. Es werden fuenf Spektren mit der waehlbaren Laenge von N Kanaelen erzeugt, die als Zeilen einer 5*N Matrix angeordnet sind. Die Erfassung der Messdaten erfolgt ueber fuenf U/D-Zaehler im Data-Routing: fuer die Ionisiererposition (=aktuelle Kanalnummer im Spektrum), Ionisations- signal, Primaerionenstrom, Elektronenstrom und Messzeit pro Kanal. Das Mess- programm erwartet folgende Anordnung der Interface-Karten im Routing (von links): IFS Karte (Modus: STOP; wird fuer die ESW-Messung nicht benoetigt) POS-Karte (Positionseingabe ESS Messung) IFS Karte (Modus: LFT, FREI) U/D-Zaehler (Positionszaehler; auf Vorrang verdrahtet!) IFS Karte (Modus: RUN, K2) U/D-Zaehler (Zaehler 1; Ionisationssignal) IFS Karte (Modus: RUN, K2) U/D-Zaehler (Zaehler 2; Primaerionenstrom) IFS Karte (Modus: RUN, K2) U/D-Zaehler (Zaehler 3; Elektronenstrom) IFS Karte (Modus: RUN, K2) U/D-Zaehler (Zaehler 4; Messzeit) IFS Karte (Modus: STOP) ESS-Karte (Ueberwachung ESS Messung) Der Positionszaehler muss als erster uebertragen werden, um ein gesichertes Erkennen eines Datenpaketes (5 Datenworte) zu ermoeglichen. Deshalb muss dieser im Vorrangmodus betrieben werden. Hierzu ist auf der zugehoerigen U/D-Karte eine Aenderung notwendig: Pin 26a des VG-Steckers auf 0V. Karte danach unbedingt durch beschrifteten Aufkleber kennzeichnen! Die Zaehler 1-4 werden wegen der Kompatibilitaet mit der ESS-Messung im Kopplungsmodus K2 betrieben. Das zu diesem Betrieb notwendige Bus-Signal liefert die ESS-Karte. Sie muss deshalb vorhanden sein. Zu Beginn der Messung erfolgt durch ESW eine Anfangsnormierung ueber fuenf Interfaces im Control-Routing: Einstellung der Netzgeraete fuer die Elektronenenergie ueber drei DAC-Karten, programmieren einer Zeitbasis- karte als Taktgeber zur Messung der Messzeit pro Kanal (4. Spektrum) und Einlesen der Messbereiche fuer Ionen- und Elektronenstrom ueber eine digi- tale Eingabekarte. Der Ablauf des Experimentes besteht aus einer Serie von Messintervallen, denen jeweils eine bestimmte Ionisiererposition zugeordnet ist. Die Steuerung des Ablaufs erfolgt durch das Winkelschrittgeber-Interface. (Dieses ist im Control-Routing untergebracht, jedoch nicht programmierbar.) Es sorgt mit Hilfe des Positionszaehlers fuer eine Zuordnung der Ionisiererpositionen zu den Kanaelen der fuenf Spektren und erzeugt die fuer das Steuern der Zaehler notwendigen Signale RESET, READ und UP/DOWN. Waehrend eines Messintervalles akkumulieren die Zaehler die ankommenden Zaehlimpulse. Nach Ablauf eines Messintervalles wird von dem Winkelschritt- geber-Interface ein Read-Impuls zum Uebertragen des Positionszaehlers und der vier Zaehler erzeugt, sowie ein Reset-Signal zum Loeschen der Zaehler. Sodann wird der Positionszaehler fortgeschaltet (+1 oder -1 je nach U/D-Signal). Mit dem Read-Signal werden Position und Zaehlerinhalte in je ein Senderegister uebertragen, so dass die Interfaces anschliessend sofort wieder frei sind, waehrend die Uebertragung der Daten einige Zeit in Anspruch nehmen kann. Die Position wird mit 'Vorrang' zur Uebertragung angemeldet. Damit wird sichergestellt, dass sie zuerst uebertragen wird, um eine Synchronisation der Software zu ermoeglichen. Die Daten werden vom Messprogramm erst dann verarbeitet, wenn ein vollstaendiger Datensatz von allen fuenf Datenworten eines Messintervalles uebertragen ist. Fehler bei der Uebertragung werden erkannt und registriert (sequence errors). Ein unvollstaendiger Datensatz wird verworfen. Wird ein Zaehler mehrfach uebertragen, so werden die zuviel uebertragenen Daten verworfen, und nur das erste Datum wird verarbeitet, falls ein vollstaendiger Datensatz zustande kommt. Jeder solcher Fehler erhoeht den 'Sequence error counter' um eins. Der Wert des Positionszaehlers gibt bei der Verarbeitung die Nummer des aktuellen Kanals in den Spektren an. Die uebertragenen Werte der vier Zaehler 1,2,3,4 werden jeweils zu dem aktuellen Kanal der Spektren 1,2,3,4 addiert. Das fuenfte Spektrum wird anschliessend erzeugt durch Division des aktuellen Kanals des ersten Spektrum durch den des zweiten Spektrums, multipliziert mit einem Skalierungsfaktor (2**15=32768), um in der Integer- darstellung eine ausreichende Genauigkeit zu erreichen. Die Messzeit je Kanal wird ermittelt durch Zaehlen eines Zeittaktes, der durch eine programmierbare Zeitbasis im Control-Routing erzeugt wird. Die maximale Datenrate ist abhaengig von der verwendeten CPU: MVME162 ?kHz MVME172 ?kHz Messdaten --------- Die Spektren entsprechen dem Strahlenzentrumsstandard und koennen deshalb mit einer Anzahl vorhandener Programme weiterverarbeitet werden. Das Spektrum ist in 512 byte Records segmentiert, mit dem Header im ersten Record. Der Header enthaelt am Anfang einen standardisierten Teil und anschliessend noch eine Reihe weiterer Daten (z.B. Lifetime-, Realtime-Zaehler usw.), zu denen man ueber die Include-Files ~/ex_home/ex_src/.../esw.conf und esw.h Zugang hat. Die Kanaele des Spektrums sind als INTEGER*4 deklariert, d.h. jeder Kanal kann ca. 10**10 Ereignisse aufnehmen. Ein Record enthaelt 128 Kanaele. Der Verschnitt am Ende des Spektrums ist mit Nullen aufgefuellt. Die Spektren werden ueblicherweise auf dem SERVIX unter dem zugeordneten Account gespeichert. zB.: Experiment xxxx Account xxxx File Name Ablage auf ~/ex_home/ex_data/spektr.spe /usr/user/xxxx/ex_home/ex_data/spektr.spe home:spektr.spe /usr/user/xxxx/spektr.spe data:spektr.spe /usr/user/xxxx/ex_home/ex_data/spektr.spe Die Laufwerke home:, data: usw werden in ~/ex_home/ex_param/startup.vxw definiert. Die existierenden Laufwerke koennen mit dem SHOW-Programm (Network (NFS) devices) angezeigt werden. Das Messprogramm hebt seine aktuellen Parameter in dem File ~/ex_home/ex_param/eswpar.vxw auf, um sie bei einem nachfolgenden Start als Default-Werte anbieten zu koennen. Bildschirmanzeigen ------------------ In der obersten Zeile wird an erster Stelle der Name des Programmes darge- stellt. 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 ueber die augenblicklichen Aktivitaeten des Programmes. Bedienung des Programmes ------------------------ Das Programm ist weitgehend selbsterklaerend. Die notwendigen Eingaben werden in Dialogform angefordert. Der Dialog ist in einer Hyrarchiestruktur auf- gebaut, wobei mittels Menuelisten von einer Dialogebene in die andere ge- wechselt werden kann. Fuer Parametereingaben existieren im Allgemeinen Vorbelegungswerte, die editiert werden koennen. +++ Einstiegsebene Exit ESW Verlassen des Programmes. Start experiment Fuehrt zu einer weiteren Dialogebene, in der eine naehere Spezifikation des Starts erfolgt. Show header Zeigt die wichtigsten Daten des Headers, der jedem Spektrum beigefuegt ist: Name des Experimentes; Name des Programmes; Name des Spektrums. Titelzeile Startzeit und -datum; Stopzeit und -datum. Laenge des Spektrums. Restzeit des Timers fuer die Messzeitvorgabe (Timer). Die Zeit in Sekunden, waehrend der das Experiment gestartet war (Realtime). Die um die Totzeit korrigierte Zeit (Realtime - Deadtime), die zur Datenaufnahme zur Verfuegung stand (Lifetime). Es wird nur die Lifetime des Positionszaehlers registriert. Anzahl der empfangenen Positionsdaten (Positions received). Anzahl der Positionsdaten, die ausserhalb der Spektrengrenzen lagen und deshalb nicht verarbeitet wurden (Positions out of range). Anzahl der von dem Zaehler 1(2,3,4) empfangenen Daten (Counter 1(2,3,4) received). Anzahl der Faelle, in denen die erwartete Reihenfolge der ankommenden Daten (erst Kanalnummer dann 4 Zaehlerdaten) durchbrochen wurde (Data sequence errors). Anzahl der Daten, die auf Grund ihrer Datenkennung ausgesondert wurden, weil sie mit dem Experiment in keinem Zusammenhang stehen (Rejected data). Entweder wurde beim Start die Datenkennung falsch angegeben, oder es ist eine zusaetzliche Datenquelle unbeabsichtigt mitgelaufen. Anzahl der Faelle, in denen die Bearbeitung der Daten nicht schritt- halten konnte und Datenverluste auftraten (Fifo overflows). Anzahl der Daten, die durch Hardwarefehler oder -stoerungen ver- stuemmelt uebertragen wurden (Data errors). Auflistung der experimentbeschreibenden Parameter. Die Darstellung des Headers kann mit der Leertaste wiederholt und mit der Return-taste beendet werden. Fuer ein nicht existierendes Spektrum (Status new) erfolgt eine gekuerzte Ausgabe. Analyse spectrum Startet als Subtask ein Auswerteprogramm zur graphischen Darstellung und Auswertung des aktuellen Spektrums. Nach Verlassen des Auswerteprogramms wird in das Messprogramm zurueckgekehrt. Ueblicherweise kann das Startup- Verhalten der Auswerteprogramme konfiguriert werden (^Z -> Set configuration -> Startup mode). ESW verwendet standardmaessig das Programm WQA als Auswerteprogramm. Unter "Set Configuration" kann ein anderes Auswerteprogramm konfiguriert werden. Set name of spectrum Eingabe eines File-Namens fuer das Spektrum. Dieses kann ein bereits existierendes (Status old) oder ein noch nicht existierendes (Status new) Spektrum sein. Die Angabe muss im File-Format des Host-Rechners erfolgen. Fehlende Laufwerksangaben werden ergaenzt, ferner wird nach dem Laufwerk zur Umgehung eines Systemfehlers './' eingefuegt: ~/ex_home/ex_data/test.spe -> home:./ex_home/ex_data/test.spe home:ex_home/ex_data/test.spe -> home:./ex_home/ex_data/test.spe x/test.spe -> data:./x/test.spe test.spe -> data:./test.spe Die Zugriffe zum Host-Rechner laufen in der Regel ueber NFS und muessen auf dem Host freigegeben sein (/etc/exports). Falls die Freigabe fehlt, kann zur Not auch ueber das Laufwerk 'bootHost:' mittels RSH auf den Host zugegriffen werden, was bei sehr langen Files aber zu Speicherproblemen fuehren kann. Laufwerksdefinitionen siehe: ~/ex_home/ex_param/startup.vxw und SHOW-Programm. Delete spectrum Ein existierendes Spektrum wird geloescht (im Arbeitsspeicher und auf dem Host-Rechner), die Daten sind verloren. Convert spectrum to ASCII Das Spektrum wird mit oder ohne Header und mit oder ohne Kanalnummern in ASCII Form auf einen File geschrieben. Execute shell command Einige der VxWorks-Shell-Kommandos koennen ausgefuehrt werden. Set configuration Unter diesem Menuepunkt erfolgen alle Angaben, die das Messprogramm an das Experiment anpassen. Beim ersten Start wird dieser Menuepunkt stets automatisch aufgerufen. Spaeter sollte er nur noch bei Konfigurations-Aenderungen benutzt werden. Er enthaelt ein Untermenue: Return zurueck zum Hauptmenue General parameters allgemeine Parameter Background program Spezifikation eines Auswerteprogramms Data Routing hardware Anschluss des Data-Routing ans VME Control Routing hardware Anschluss des Control-Routing ans VME Data identification bits Festlegen der Datenkennungs-Bits Ion current converter Ionenstrom-Konversions-Faktoren Electron current converter Elektronenstrom-Konversions-Faktoren Limits for e-gun voltage Grenzen fuer die e-Kanonenspannung Help Kopiert diesen Help-file auf den Bildschirm. +++ Startebene Return Rueckkehr zur uebergeordneten Dialogebene. Create new spectrum Start der Messung, falls noch kein Spektrum des angegebenen Namens existiert (Status new). Das Spektrum wird auf der Platte des Host-Rechners angelegt, ist zunaechst jedoch noch leer. Fuer ein bereits existierendes Spektrum erfolgt eine Fehlermeldung (Status old). Continue old spectrum Start der Messung, falls sie mit einem bereits existierenden Spektrum (Status old) fortgesetzt werden soll. Das Spektrum wird vom Host-Rechner geladen, falls es noch nicht da ist. Fuer ein noch nicht existierendes Spektrum erfolgt eine Fehlermeldung (Status new). Test run 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 werden die Daten nicht zum Host-Rechner gerettet, im Speicher bleiben sie aber erhalten und werden erst bei einem erneuten Start geloescht. Waehrend der Messung koennen die Daten mit 'Save spectrum' gerettet werden. Die Messdaten koennen waehrend des TEST RUNs im Speicher (nicht auf der Platte) geloescht werden mittels einer Funktion im Display-Programm (Analyse spectrum). Print hardware info Druckt wahlweise den Hardware-Status oder Status und Daten, so wie sie vom Experiment uebertragen werden, direkt auf dem Bildschirm aus. Diese Funktion dient Diagnosezwecken (zB. Ermittelung der Datenkennung), ein Spektrum wird nicht akkumuliert. +++ Start-Parameter Eingabe Nach dem Start einer Messung muessen die zugehoerigen Parameter eingegeben werden. Einige der Parameterangaben sind notwendig fuer die Durchfuehrung der Messung, andere haben nur beschreibende Funktion. Title Zur Beschreibung der Messung kann eine Titelzeile eingegeben werden. Length of single spectrum Es ist die Laenge N eines einzelnen Spektrums der 5*N Matrix anzugegeben (N < 32768). Timer Eingabe einer Messzeitvorwahl in Sekunden Echtzeit. Bei Angabe von 0 oder eines negativen Wertes erfolgt kein automatischer Stop. Bei einem Neustart eines Spektrums ist der Vorbelegungswert immer 0, waehrend bei einem Restart die eventuell noch vorhandene Restzeit als Vorbelegung angeboten wird. Die Messung wird nach Ablauf der angegebenen Zeit angehalten mit der Meldung 'Experiment finished'. Sie muss anschliessend mit STOP EXPERIMENT noch gestoppt werden. Zuletzt werden die experimentbeschreibenden Parameter angefordert. Sie haben keinen Einfluss auf die Datenerfassung. +++ Funktionen bei laufendem Experiment Stop experiment Die Messung wird gestoppt und die Daten werden zum Host-Rechner uebertragen (nicht im Modus "Test Run"). Treten bei der Datenuebertragung Probleme auf, so erfolgt eine Fehlermeldung. Die Daten bleiben erhalten und der Stop kann wiederholt werden. Save spectrum Waehrend der laufenden Messung kann das Spektrum zum Host-Rechner gerettet werden. Auf einem Unix-Host wird dabei ein bereits existierendes Spektrum gleichen Namens ueberschrieben. Ebenso wird ein auf diese Weise gerettetes Spektrum am Ende bei einem "Stop experiment" wieder ueberschrieben (nicht im Modus "Test Run"). Show header Siehe oben. Analyse spectrum Startet als Subtask ein Auswerteprogramm zur graphischen Darstellung und Auswertung des aktuellen Spektrums. Die Messung laeuft waehrend der Auswertung weiter. Nach Verlassen des Auswerteprogramms wird in das Messprogramm zurueckgekehrt. (Siehe oben) Detach MCA Hiermit kann das Messprogramm verlassen werden, ohne dass die Messung unterbrochen wird. Die Kontrolle ueber das Messprogrammes gewinnt man zurueck durch einen erneuten Start. Achtung: es existiert zur Zeit keine Sicherung gegen ein weiteres Starten eines anderen Messprogrammes, das die laufende Messung stoeren koennte! Data-Routing |===============| |ESS | | ESS-Messung | | | |---------------| |IFS | | (STOP) | |===============| |U/D-ZLR | | RESET|<---. | READ|<-. | | COUNT|<-|-|-----