Verhaltensspezifikation (Pflichtenheft RTK-Steuerprogramm)

Hauptfunktion: Diffraktometrie/Reflektometrie

Teilfunktion: Einstellungen und Ablauf beim AreaScan

Dokumentversion: 1.1 (letzte Änderung: 14.November 2001)
Autor: J. Ullrich, S.Berndt
Zustand: abgeschlossen


Gliederung

1.Überblick
2.Funktionale Beschreibung
2.1.Einstellungen
2.1.1.AreaScan im Standard-Modus
2.1.2.AreaScan im Omega2Theta-Modus
2.1.3.Verwendung eines Absorbers
2.1.4.Sichern von Areascan-Kurven
2.1.5.Einstellungen für den Detektor
2.1.6.Start und Beenden der Teilfunktion
2.2.Ablauf des Areascans
2.2.1.Start eines Areascans
2.2.2.Unterbrechen eines Areascans
2.2.3.Fortsetzen eines Areascans
2.3.Sonstige Funktionen
2.3.1.Datenbasis laden
2.3.2.Datenbasis speichern
2.3.3.Datenbasis löschen
2.3.4.Kurvenfunktionen
2.3.5.Kontinuierliche Spektren darstellen
2.3.6.PSD extern synchronisieren
2.3.7.Auswahl einers Scan-Kurve
2.3.8.Kalibrieren des PSD
2.4.Start und Beenden der Teilfunktion Areascan-Fenster
2.4.1.Start der Teilfunktion Areascan-Fenster
2.4.2.Beenden der Teilfunktion Areascan-Fenster
3.Daten
3.1.Benutzerschnittstelle
3.1.1 Dialogbox ,Einstellungen Areascan'
3.1.2 Dialogbox ,PSD-Measurements under Remote Control'
3.1.3 Dialogbox ,Scan-Auswahl'
3.1.4 Dialogbox ,PSD-Kalibrierung'
3.2.Dateien
3.2.1 ini-Datei
3.2.2 psd-Datei
3.2.3 rep-Datei
3.2.4 bk-Datei
4.Testfälle
5.Fehler
6.Änderungswünsche
7.Offene Fragen
8.Anmerkungen
9.Verwandte Dokumente
10.Glossar

1. Überblick

Die Teilfunktion 'Einstellungen und Ablauf des Areascan' ist Teil des Diffraktometrie/Reflektometrie-Gesamtvorganges (Dokument: 'Diffr./Refl.-Gesamtvorgang'). Dort ist sowohl ihre Einordnung in den Gesamtvorgang beschrieben, als auch der fachliche Hintergrund. Mit der Teilfunktion 'Einstellungen' sind vor dem Start und der Kontrolle des Areascan alle dafür relevanten Angaben eingebbar.

Mit der Teilfunktion 'Ablauf des Areascan'
- kann die Startposition angefahren werden,
- wird die Messung gestartet mit nachfolgender Information zum Stand und Verlauf der Messung,
- kann die Messung angehalten und zu einem späteren Zeitpunkt fortgesetzt werden,
- wird die Messung gestoppt.

Mit der Teilfunktion 'Sonstige Funktionen' können
- Datenbasen geladen, gespeichert und gelöscht
- Kurven fixiert, sowie fixierte Kurven gespeichert und gelöscht
- die kontinuierlichen Energie- und Impuls-Spektren des PSD angezeigt
- einzelne Kurven der aktuellen Datenbasis ausgewählt und betrachtet
- der Psd kalibriert
- sowie eine Synchronisation des PSD von einer externen Quelle vorgenommen
werden.

2. Funktionale Beschreibung

2.1 Einstellungen

2.1.1 Areascan im Standard-Modus

Es wird eine Probe über eine Achse (Omega) von einem Start- zu einem Endwinkel mit einer bestimmten Schrittweite bewegt und in jedem dieser Schritte wird die von der Probe reflektierte Röntgenstrahlung mit Hilfe eines 1-dimensionalen Detektors (Psd) gemessen. Die über alle Kanäle des Psd abgetragenen Intensitäten zur aktuellen Motorposition werden in Form einer Kurve dargestellt. Somit entsteht fortlaufend eine Datenbasis aus mehreren solcher Kurven.



Abb. 3.12: Dialogbox Einstellungen AreaScan'

Im Einzelnen werden eingestellt:
Die folgenden Parameter des Omegamotors:
- Startwinkel, Endwinkel, Schrittweite
Der Detektor zum Messen des reflektierten Röntgenstrahls. Dies muß beim Standardscan ein 1-dimensionaler Detektor sein. Zur Ermittlung der Impulsrate werden die Zählzeit und die maximale Impulsrate angegeben (Detektor-Parameter: Zeit, Counts).
Die maximale Impulsrate gibt den Maximalwert an, den der Detektor zählen darf. Wird diese vor dem Ablauf der Zählzeit erreicht, wird die max. Impulsrate auf die Zählzeit hochgerechnet. Anschließend beginnt ein neues Zeitintervall. Beide Angaben sind durch ein log. ODER verknüpft. Für den Lauf eines Standardscan wird die Theta-Achse fixiert.

Erforderliche Parameter:

2.1.2 AreaScan im Omega2Theta-Modus

2.1.2.1 Areascan im Omega2Theta-Modus mit einem 1-dimensionalen Detektor (Psd)
DIALOGBOX wie unter 2.1.1

Beim Omega2Theta-Modus wird die Probe über die Omega-Achse von einem Start- zu einem Endwinkel mit einer bestimmten Schrittweite bewegt. Dabei wird zusätzlich (abweichend vom Standard-Modus) in jedem Omega-Schritt ein 1-dimensionaler Detektor (Psd) um einen bestimmten 2Theta-Schritt über die Theta-Achse bewegt. Die in jedem Omega-Schritt von der Probe reflektierte Röntgenstrahlung wird mit diesem Detektor gemessen und bezüglich der Kanäle als Kurve abgetragen. Somit entsteht fortlaufend eine Datenbasis aus mehreren solcher Kurven (je Omega-Stellung eine Kurve).

Im Einzelnen werden eingestellt:
Die folgenden Parameter des Omegamotors:
- Startwinkel, Endwinkel, Schrittweite
Die folgenden Parameter des 2ThetaMotors:
- Relation: gibt den Faktor zur Schrittweite des Omegamotors an
Der Detektor zum Messen des reflektierten Röntgenstrahls. Zur Ermittlung der Impulsrate werden die Zählzeit und die maximale Impulsrate angegeben (Detektor-Parameter: Zeit, Counts).
Die maximale Impulsrate gibt den Maximalwert an, den der Detektor zählen darf. Wird diese vor dem Ablauf der Zählzeit erreicht, wird die max. Impulsrate auf die Zählzeit hochgerechnet. Anschließend beginnt ein neues Zeitintervall. Beide Angaben sind durch ein log. ODER verknüpft.

Erforderliche Parameter:
2.1.2.2 Areascan im Omega2Theta-Modus mit einem 0-dim. Detektor
DIALOGBOX wie unter 2.1.1

Beim Omega2Theta-Modus wird die Probe über die Omega-Achse von einem Start- zu einem Endwinkel mit einer bestimmten Schrittweite bewegt. Dabei wird in jedem Omega-Schritt ein 0-dimensionaler Detektor um das Vielfache (Relation) des aktuellen Omegaschrittes über die Theta-Achse bewegt. Anschließend wird der 0-dimensionale Detektor bei fester Omega-Stellung mit der angegebenen Schrittweite über einen Bereich gefahren, dessen Mittelpunkt dem Vielfachen(Relation) des aktuellen Omega-schrittes entspricht. Die in jedem Omega-Schritt von der Probe reflektierte Röntgenstrahlung wird mit diesem Detektor gemessen und bezüglich der Omega-Winkel als Kurve abgetragen. Somit entsteht fortlaufend eine Datenbasis aus mehreren solcher Kurven (je Omega-Stellung eine Kurve).

Im Einzelnen werden eingestellt:
Die folgenden Parameter des Omegamotors:
- Startwinkel, Endwinkel, Schrittweite
Die folgenden Parameter des 2Thetamotors:
- Bereich, Relation, Schritt
Der 0-dimensionale Detektor zum Messen des reflektierten Röntgenstrahls. Zur Ermittlung der Impulsrate werden die Zählzeit und die maximale Impulsrate angegeben (Detektor-Parameter: Zeit, Counts).
Die maximale Impulsrate gibt den Maximalwert an, den der Detektor zählen darf. Wird diese vor dem Ablauf der Zählzeit erreicht, wird die max. Impulsrate auf die Zählzeit hochgerechnet. Anschließend beginnt ein neues Zeitintervall. Beide Angaben sind durch ein log. ODER verknüpft.

Erforderliche Parameter:

2.1.3 Verwenden eines Absorbers

DIALOGBOX wie unter 2.1.1

Die Verwendung eines Absorbers macht nur bei eindimensionalen Detektoren Sinn. Mittels eines Drahtes werden einige Kanäle des Detektors abgeschirmt.

Grund: Herausfiltern des Peaks mit der höchsten Intensität, da diese hier oberhalb der vom Detektor verträglichen liegen kann.

Im Einzelnen werden eingestellt:
- Absorber benutzen (Checkbox: An)

Erforderliche Parameter:
  • Absorber-benutzen-Checkbox

  • 2.1.4 Sichern von Areascan-Kurven

    DIALOGBOX wie unter 2.1.1

    Man kann die Datenbasis während der Messung Kurve für Kurve oder am Ende der Messung in einer Datei ablegen ('Speicher-Optionen'). Dabei werden auch allgemeine Informationen zur Messung in der Datei gespeichert. In einer weiteren Datei (Report) werden zu allen Kurven Zusatzinformationen abgelegt.

    Im Einzelnen werden eingestellt:
    - Kontinuierlich Sichern (Checkbox: An/Aus)
    - Bei Beenden speichern (Checkbox: An/Aus)
    - Sicherungs-Verzeichnis für die Datei

    Erforderliche Parameter:

    2.1.5 Einstellungen für den Detektor

    Die aktuellen Einstellungen für den Detektor können über eine jeweilige, zum Detektor gehörige, Einstellungsbox geändert werden. Diese Box erreicht man über das Button 'Geräte-Einstellungen'. Die genaue Bedeutung der einzelnen Funktionen der jeweiligen Dialogbox sind einem Pflichtenheft zu den Detektoren zu entnehmen.


    Abb. 3.13: Dialogbox ‚Einstellungen für den Psd'

    2.1.6 Start und Beenden der Teilfunktionen

    Start:
    Die Dialogbox 'Einstellungen Areascan' wird geöffnet über das Scan-Fenster-Menü: Setup Measurement ...

    Beendigung:
    Die Dialogbox wird geschlossen
    - über die Buttons Abbrechen und OK oder
    - über den Windows-Button 'x'.

    2.2 Ablauf des Areascan

    2.2.1 Start eines Areascans

    Dies geschieht über das Areascan-Fenster-Menü => 'Start Areascan'. Allerdings kann ein Areascan-Vorgang nur gestartet werden, wenn gerade kein anderer Areascan läuft (dieser müßte vorher unterbrochen werden) .

    Wenn noch eine kontinuierliche Anzeige des Psd-Spektrums aktiv ist, muß diese vorher deaktiviert werden. Es erscheint die folgende Meldung:


    Die Anzahl der zu erwartenden Scans darf die maximale Kapazität der Datenbasis nicht überschreiten (maximal 999), sonst erscheint die folgende Meldung:


    Es folgt eine Dialogbox, die über den jeweils gewählten Scan-Modus (Standard, Omega2Theta) sowie den Bereich, über den die Probe bewegt werden soll, informiert und die Möglichkeit gibt, den Scanstart abzubrechen bzw. fortzusetzen.

    Abb. 3.14

    Es folgt jetzt eine Dialogbox, in der man den Dateinamen eingeben kann, unter dem die Meßwerte des Areascans abgelegt werden sollen (Speicherung der Kurven erfolgt allerdings nur, falls eine Speicheroption ausgewählt wurde).


    Abb. 3.15: Dialogbox ‚Sichern unter...'

    Wird diese Dialogbox verlassen, ohne einen Dateinamen anzugeben, bekommt die Datei automatisch den Namen 'SCANXXX.psd', wobei XXX für die kleinste nicht negative Zahl steht, für die so eine Datei im gewählten Verzeichnis noch nicht existiert (z.B. SCAN002.psd, wenn SCAN000.psd und SCAN001.psd schon existieren).

    a)Standardscan

    Der Omegamotor bewegt sich nun auf die Startposition des Areascans. Dies wird in der Statusleiste des Hauptfensters durch den Text "Anfahren der Startposition ..." angezeigt. Hat der Motor diese Startposition erreicht, beginnt die erste Messung des Psd. Nach erfolgter Messung wird folgender Text in der Statusleiste des Hauptfensters angezeigt: "Measurement! Omega: XXX P(YYY<>ZZZ) Integral Intensity: PPP > QQQ", wobei XXX die aktuelle Position des Omegamotors, YYY die Position des Peak (Kanalnummer des Psd), ZZZ die an der Peakposition gemessene Intensität, PPP die integrale Intensität (Mittelwert über alle Psd-Kanäle ), QQQ die Nummer des aktuellen Scans ist.

    Anschließend wird die Meßkurve in das Koordinatensystem des Areascan-Fensters eingezeichnet. Bei aktiviertem 'Ständig sichern' wird die Meßkurve in die ausgewählte Datei geschrieben und in der Statuszeile erscheint: 'Scan XXX schreiben', wobei XXX die aktuelle Scan-Nummer ist. Nun fährt der Motor auf den nächsten Meßpunkt. Dieser entspricht der aktuellen Omegamotor-Position + der eingestellten Schrittweite aus der Einstellungsdialogbox. Am nächsten Meßpunkt angekommen, beginnt die nächste Messung des Psd.

    Hat der Motor den letzten Meßpunkt erreicht und die Messung durchgeführt, dargestellt und bei 'Ständig sichern' gespeichert, wird in der Statusleiste des Hauptfensters 'XXX Scan's has been measured' angezeigt, wobei XXX die Anzahl der gemessenen Scans (Spektren) ist. Jetzt fährt der Motor auf die Position zurück, auf der er sich vor Beginn des Scans befunden hat. Wenn 'Bei Beenden speichern' eingestellt ist, wird jetzt die komplette Datenbasis in der ausgewählten Datei abgelegt und folgende Meldung ausgegeben:


    Abb. 3.16

    Bei 'Ständig sichern' wird der Headerteil der Datei aktualisiert. Bei 'Ständig sichern' und bei einem Scan ohne ausgewählte Speicheroptionen wird nun folgende Meldung ausgegeben:


    Abb. 3.17

    Wenn eine der Speicheroptionen gewählt ist, werden jetzt Zusatzinformationen zu den Meßkurven in einer Reportdatei unter dem selben Dateinamen mit der Endung 'rep' abgelegt.

    b) Omega2Theta-Scan mit einem 1-dimensionalen Detektor (Psd)

    Der Omegamotor und der Thetamotor bewegen sich nun auf die Startposition des Areascans. Dies wird in der Statusleiste des Hauptfensters durch den Text "Anfahren der Startposition ..." angezeigt. Haben die Motoren diese Startposition erreicht, beginnt die erste Messung des Psd. Nach erfolgter Messung wird folgender Text in der Statusleiste des Hauptfensters angezeigt: " Messung läuft! O: XXX T: YYY P(ZZZ<>PPP) Gesamtintensität: QQQ > RRR", wobei XXX die aktuelle Position des Omegamotors, YYY die aktuelle Position des Thetamotors, ZZZ die Position des Peak (Kanalnummer des Psd), PPP die an der Peakposition gemessene Intensität, QQQ die Gesamtintensität des Psd ist, RRR die Nummer des aktuellen Scans ist.

    Anschließend wird die Meßkurve in das Koordinatensystem des Areascan-Fensters eingezeichnet. Bei aktiviertem 'Ständig sichern' wird die Meßkurve in die ausgewählte Datei geschrieben und in der Statuszeile erscheint: 'Scan XXX schreiben', wobei XXX die aktuelle Scan-Nummer ist. Nun fahren die Motoren auf den nächsten Meßpunkt. Dieser entspricht für den Omegamotor seiner aktuellen Position und der eingestellten Schrittweite aus der Einstellungsdialogbox und für den Thetamotor seiner aktuellen Position und der Schrittweite des Omegamotors * Wert für Relation (in Einstellungsbox festgelegt). Am nächsten Meßpunkt angekommen, beginnt die nächste Messung des Psd.

    Haben die Motoren den letzten Meßpunkt erreicht und die Messung durchgeführt, dargestellt und bei 'Ständig sichern' gespeichert, wird in der Statusleiste des Hauptfensters 'XXX Scan's has been measured' angezeigt, wobei XXX die Anzahl der gemessenen Scans (Spektren) ist. Jetzt fahren die Motoren auf die Position zurück, auf der sie sich vor Beginn des Scans befunden haben.

    Wenn 'Bei Beenden speichern eingestellt ist, so wird jetzt die komplette Datenbasis in der ausgewählten Datei abgelegt. Bei 'Ständig sichern' wird der Headerteil der Datei aktualisiert. Es erscheinen dieselben Meldungen wie unter a).
    Wenn eine der Speicheroptionen gewählt ist, werden jetzt Zusatzinformationen zu den Meßkurven in einer Reportdatei unter demselben Dateinamen mit der Endung 'rep' abgelegt.


    c) Omega2ThetaScan mit einem 0-dimensionalen Detektor (SLD-Scan)

    Der Omegamotor und der Thetamotor bewegen sich nun auf die Startposition des Areascans. Dies wird in der Statusleiste des Hauptfensters durch den Text "Anfahren der Startposition ..." angezeigt. Haben die Motoren diese Startposition erreicht, beginnt die erste Messung des Detektors. Nach erfolgter Messung wird folgender Text in der Statusleiste des Hauptfensters angezeigt: "Measurement! Omega: XXX 2Theta: YYY Intensity: ZZZ", wobei XXX die aktuelle Position des Omegamotors, YYY die aktuelle Position des Thetamotors, ZZZ die vom Detektor gemessene Intensität ist.

    Anschließend werden die Meßpunkte in das Koordinatensystem des Areascan-Fensters eingezeichnet. Bei aktiviertem 'Ständig sichern' werden die Meßpunkte fortlaufend in die ausgewählte Datei geschrieben und in der Statuszeile erscheint: 'Scan XXX schreiben', wobei XXX die aktuelle Scan-Nummer ist (siehe Fehler). Wenn der Thetamotor bei der aktuellen Omegaposition noch nicht den gesamten Thetabereich durchlaufen hat, wird er auf die nächste Position bewegt, die sich aus: aktuelle Thetaposition+Schrittweite des Thetamotors ergibt. Hat der Thetamotor seine Endposition erreicht, werden beide Motoren auf ihre neuen Startpositionen bewegt und das Areascan-Fenster neu gezeichnet. Die neue Position des Omegamotors entspricht der aktuellen Omegamotor-Position + der eingestellten Omega-Schrittweite aus der Einstellungsdialogbox. Die neue Position des Thetamotors ist: neue Omegaposition * Wert für 'Relation' - 'Window'/2 (in Einstellungsbox festgelegt). Am nächsten Meßpunkt angekommen, beginnt die nächste Messung des Detektors.

    Haben die Motoren jeweils den letzten Meßpunkt erreicht und die Messung durchgeführt, dargestellt und bei 'Ständig sichern' gespeichert, wird in der Statusleiste des Hauptfensters 'XXX Scan's has been measured' angezeigt, wobei XXX die Anzahl der gemessenen Scans ist. Jetzt fahren die Motoren auf die Position zurück, auf der sie sich vor Beginn des Scans befunden haben. Wenn 'Bei Beenden speichern' eingestellt ist, wird jetzt die komplette Datenbasis in der ausgewählten Datei abgelegt. Bei 'Ständig sichern' wird der Headerteil der Datei aktualisiert. Es erscheinen dieselben Meldungen wie unter a).

    Wenn eine der Speicheroptionen gewählt ist werden jetzt Zusatzinformationen zu den Meßkurven in einer Reportdatei unter demselben Dateinamen mit der Endung 'rep' abgelegt.(#Fehler:30/33)

    2.2.2 Unterbrechen eines Areascans

    Ein laufender Areascan kann unterbrochen werden. Dies geschieht entweder über den Hauptfenster-Menüpunkt 'Ausführen'->'Messung unterbrechen' oder durch Drücken der ESC-Taste. Daraufhin wird die Messung gestoppt. In der Statusleiste erscheint die Meldung 'Measurement has been interrupted !'. Es werden keine weiteren Punkte in die aktuelle Kurve aufgenommen. Weiterhin ändert sich der Menüeintrag des Hauptfenster-Menüs 'Ausführen' von 'Messung unterbrechen' zu 'Messung fortsetzen'. Es kann jetzt auch wieder ein neuer Areascan gestartet werden (der Menüpunkt 'Scan starten' ist wieder aktiv).

    2.2.3 Fortsetzen eines Areascans

    Ein unterbrochener Areascan kann fortgesetzt werden. Dies geschieht entweder über den Hauptfenster-Menüpunkt 'Ausführen'->'Messung fortsetzen' oder durch Drücken der ESC-Taste. Daraufhin wird der Motor auf den nächsten Meßpunkt bewegt und der Scan wird fortgesetzt. (#Fehler:72)
    In der Statusleiste erscheinen wieder die aktuellen Scan-Informationen. Es werden wieder weitere Punkte in die aktuelle Kurve aufgenommen. Weiterhin ändert sich der Menüeintrag des Hauptfenster-Menüs 'Ausführen' von 'Messung fortsetzen' zu 'Messung unterbrechen'.

    2.3 Sonstige Funktionen

    2.3.1 Datenbasis laden

    Eine in einer Datei abgelegte Datenbasis (Format .psd) kann über den Hauptfenster-Menüpunkt 'Datei' -> 'Nachladen...' geladen und im Areascan-Fenster dargestellt werden. Dieser Menüpunkt ist nur anwählbar, wenn ein Areascan-Fenster geöffnet ist. Eine Auswahl der zu ladenden Datei geschieht über folgende Dialogbox:


    Abb. 3.18: Dialogbox ‚Nachladen...'

    Bei einer Datei wird der Ladevorgang abgebrochen, wenn der Headerteil der Datei weniger als 50 Byte enthält, die [Header]-marke nicht existiert oder in den Headerinformationen ein Filetyp<>1 eingetragen ist. Folgende Fehlermeldung wird ausgegeben:


    Abb. 3.19

    Außerdem wird das Nachladen abgebrochen, wenn keine Meßwerte hinter der [DATA]-marke folgen.
    Zunächst werden folgende Headerinformationen in die allgemeinen Einstellungen übernommen:
    Während die Datenbasis geladen wird, erfolgt alle 5 Meßkurven folgende Ausgabe in die Statusleiste: 'X Scan's gelesen', wobei X die Anzahl der schon geladenen Meßkurven angibt. Nachdem die Datenbasis geladen wurde, wird die erste Kurve in das auf diese Kurve angepaßte Koordinatensystem des Areascan-Fensters gezeichnet, wobei die gerade angezeigte Kurve entfernt wird, sofern sie nicht fixiert wurde. Eine eventuell im Speicher befindliche Datenbasis wird gelöscht. Der Dateiname der geladenen Datei wird nun in die Titelleiste des Areascan-Fensters eingetragen.

    2.3.2 Datenbasis speichern

    Eine aktuelle Datenbasis läßt sich über den Hauptfenster-Menüpunkt 'Datei' -> 'Sichern' oder 'Sichern unter ...' in einer PSD-Datei ablegen, wobei beim 'Sichern unter ...' in folgender Dialogbox ein Dateiname einzugeben bzw. auszuwählen ist:

    DIALOGBOX wie unter 2.2.1

    Beim Sichern einer bereits gespeicherten Datenbasis wird folgende Meldung in der Statusleiste des Hauptfensters angezeigt: 'File wurde bereits gespeichert !'. Wurde die Datenbasis noch nicht gespeichert, so entspricht der Vorgang dem des 'Sichern unter ...'.
    Nun werden die Headerinformationen sowie die Daten in diese Datei gespeichert (siehe 3.2.2). Anschließend wird dieser neue Dateiname in die Titelleiste des Areascan-Fensters eingetragen. Außerdem wird unter dem gleichen Dateinamen mit der Endung 'rep' eine Reportdatei angelegt.

    2.3.3 Datenbasis löschen

    Eine Datenbasis läßt sich über das Hauptfenster-Menü 'Datei' -> 'Neu' löschen. Dabei wird die Datenbasis aus dem Areascan-Fenster und aus dem Speicher entfernt und die Titelleiste erhält den Eintrag 'untitled.psd'. Eine Abfrage, ob eine noch nicht gespeicherte Datenbasis eventuell gesichert werden soll, erfolgt nicht.

    2.3.4 Kurvenfunktionen

    2.3.4.1 Kurve fixieren
    Nur wenn die Darstellungsart 'Kurve' gewählt ist, läßt sich eine dargestellte Kurve (Hauptkurve) fixieren, um so die Möglichkeit zu haben, sie direkt mit anderen Kurven im Areascan-Fenster vergleichen zu können. Dabei wird eine gerade fixierte Kurve gelöscht. Diese Funktion wird über das Areascan-Fenster-Menü 'Scan' -> 'Fixieren' aufgerufen. Diese Kurve wird aber erst bei Start eines neuen Scans, nach dem Laden einer Datenbasis bzw. dem Löschen der aktuellen Datenbasis farblich als fixiert gekennzeichnet (blau). Sie bleibt solange fixiert, bis sie gelöscht wird (siehe 2.3.4.3) oder eine andere Kurve fixiert wird.

    2.3.4.2 Fixierte Kurve speichern
    Eine fixierte Kurve läßt sich über das Scanfenster-Menü 'Scan' -> 'Speichern' in einer über eine Dialogbox (wie unter 2.3.1) ausgewählten Datei im BK-Format ablegen. Nun werden die Headerinformationen sowie die Daten in diese Datei gespeichert (siehe 3.2.4).

    2.3.4.3 Fixierte Kurve löschen
    Eine fixierte Kurve (Darstellungsart: Kurve) läßt sich über das Scanfenster-Menü 'Scan' -> 'Löschen' löschen. Dabei wird die fixierte Kurve aus dem Areascan-Fenster entfernt.

    2.3.5 Kontinuierliche Spektren darstellen

    siehe unter 'Offene Fragen'

    2.3.5.1 Kontinuierliche Energiespektren darstellen
    Wenn die Darstellungsart 'Kurve' gewählt wurde, kann man sich das Energiespektrum des PSD kontinuierlich anzeigen lassen. Diese Funktion läßt sich über den Scanfenster-Menüpunkt 'Psd -> Show Energy-Spectrum' aufrufen. Vorraussetzung ist allerdings, daß ein Psd angeschlossen ist. Sonst erscheint die Meldung: "Kein Psd verfügbar."
    Der Eintrag im Scanfenster-Menü wird bei Auswahl anschließend markiert. Ist eine andere Darstellungsart als 'Kurve' gewählt, erscheint bei Auswahl des kontinuierliche Spektrums die Meldung:



    Bei aktiver kontinuierlicher Anzeige kann keine andere kontinuierliche Anzeige gestartet sowie die Dialogbox 'PSD-Kalibrierung' nicht aufgerufen werden. Es erscheint die folgende Meldung:


    Abb. 3.20

    Die Meßzeit eines Spektrums wird gesteuert über die Werte Zeit- bzw. Impuls-Begrenzung in der detektorspezifischen Einstellungsbox. Soll die kontinuierliche Darstellung gestoppt werden, muß entweder der entsprechende Eintrag im Scanfenster-Menü gedrückt, die ESC-Taste gedrückt oder der Menüpunkt: 'Messung' -> 'Messung unterbrechen' aufgerufen werden. Die Markierung im Scanfenster-Menü wird daraufhin entfernt.

    2.3.5.2 Kontinuierliche Impulsspektren darstellen
    Wenn die Darstellungsart 'Kurve' gewählt wurde, kann man sich das Impulsspektrum des PSD kontinuierlich anzeigen lassen. Diese Funktion läßt sich über den Scanfenster-Menüpunkt 'Show Impulse-Spectrum' aufrufen. Vorraussetzung ist allerdings, daß ein Psd angeschlossen ist. Sonst erscheint die Meldung: "Kein Psd verfügbar."
    Der Eintrag im Scanfenster-Menü wird bei Auswahl anschließend markiert. Ist eine andere Darstellungsart als 'Kurve' gewählt, erscheint bei Auswahl des kontinuierlichen Spektrums die Meldung:



    Bei aktiver kontinuierlicher Anzeige kann keine andere kontinuierliche Anzeige gestartet sowie die Dialogbox 'PSD-Kalibrierung' nicht aufgerufen werden. Es erscheint die folgende Meldung:


    Abb 3.21

    Die Meßzeit eines Spektrums wird gesteuert über die Werte Zeit- bzw. Impuls-Begrenzung in der detektorspezifischen Einstellungsbox. Soll die kontinuierliche Darstellung gestoppt werden, muß entweder der entsprechende Eintrag im Scanfenster-Menü gedrückt, die ESC-Taste gedrückt oder der Menüpunkt: 'Messung' -> 'Messung unterbrechen' aufgerufen werden. Die Markierung im Scanfenster-Menü wird daraufhin entfernt.

    2.3.6 PSD extern synchronisieren



    Abb. 3.22: Dialogbox ‚External synchronize'

    Diese Funktion läßt sich über den Scanfenster-Menüpunkt 'Measure External synchronized..' aufrufen. Sie dient der Nutzung eines anderen Psd. Dieser Psd wird über das von der Firma mitgelieferte Programm betrieben. Das XCTL-Steuerprogramm hat nur die Aufgabe, die vom Psd gemessenen Zählraten abzufragen und in einer Datei abzulegen. Die gesamte Diffraktometersteuerung (Motorensteuerung) wird in diesem Fall durch das dortige System vorgenommen. Voraussetzung für diese Funktion ist ein angeschlossener Psd und ein Thetamotor. Sonst erscheint die Meldung:


    Abb. 3.23

    2.3.7 Auswahl einer Scan-Kurve



    Abb. 3.24: Dialogbox ‚Scan-Auswahl'

    Wenn die Darstellungsart 'Kurve' gewählt wurde, kann man zwischen den einzelnen Kurven einer aktuellen (aufgenommenen oder geladenen) Datenbasis hin- und herwechseln, sie nacheinander betrachten oder eine bestimmte Kurve direkt auswählen. Das Areascan-Fenster wird dabei im Hintergrund entsprechend aktualisiert. Diese Funktion läßt sich über den Scanfenster-Menüpunkt 'Choose Scan...' aufrufen.

    2.3.8 Kalibrieren des PSD

    Diese Funktion läßt sich über den Scanfenster-Menüpunkt 'Psd -> Calibrate...' aufrufen. Durch Bewegen eines Peaks mit Hilfe des Thetamotors innerhalb des Darstellungsfensters vom linken Rand zum rechten Rand wird versucht, den Winkel zu ermitteln, der einem Kanal des Psd entspricht. Bei Aufruf der Dialogbox wird im Hintergrund das Spektrum des Psd kontinuierlich angezeigt.


    Abb. 3.25: Dialogbox ‚Psd-Kalibrierung'

    Voraussetzung für diese Funktion ist ein angeschlossener Psd und ein Thetamotor. Sonst erscheint die Meldung:


    Abb. 3.26

    Bei aktiver kontinuierlicher Anzeige kann keine PSD-Kalibrierung vorgenommen werden. Es erscheint die folgende Meldung:


    Abb. 3.27

    2.4 Start und Beenden der Teilfunktion Areascan-Fenster

    2.4.1 Start der Teilfunktion Areascan-Fenster


    Abb. 3.28: Areascan-Fenster

    Ein Areascan-Fenster kann über den Hauptfenster-Menüpunkt 'Öffnen' -> 'AreaScan-Fenster' geöffnet werden. Dies ist nur möglich, wenn nicht bereits ein anderes Areascan-Fenster geöffnet ist oder die Anzahl der geöffneten XCTL-Fenster kleiner als 5 ist. Dabei werden die im [AreaScan]-Abschnitt des Ini-Files befindlichen Parameter eingelesen bzw., wenn nicht vorhanden, auf ihre Defaultwerte gesetzt. Anschließend wird das Areascan-Fenster an die im Ini-File (siehe 3.2.1) angegebene Position gezeichnet. In das Areascan-Fenster wird ein Koordinatensystem gezeichnet (siehe Pflichtenheft 'Bildnerische Darstellung'). Außerdem wird der Ausdruck 'untitled.psd' in die Titelleiste des Fensters eingetragen. Die Funktionen unter 2.3.1 bis 2.3.4 lassen sich nur anwählen, wenn ein Areascan-Fenster geöffnet ist. Nach dem Öffnen eines Areascan-Fensters läßt sich das Scanfenster-Menü durch Betätigen der rechten Maustaste an der aktuellen Position des Mauszeigers aufrufen.

    2.4.2 Beenden der Teilfunktion Areascan-Fenster

    Ein Areascan-Fenster läßt sich nur über das 'x'-Symbol in der Titelleiste des Areascan-Fensters schließen. Ein gerade laufender Scan wird abgebrochen. Wenn sich im Speicher eine Datenbasis befindet, die noch nicht gespeichert wurde, erfolgt vor dem Schließen des Fensters eine Anfrage, ob sie vorher gespeichert werden soll. Anschließend werden einige Parameter ins Ini-File übernommen (siehe 3.2.1).

    3. Daten

    3.1 Benutzerschnittstelle

    3.1.1 Dialogbox ,Einstellungen Areascan'


    Abb. 3.29: Dialogbox ,Einstellungen AreaScan'

    3.1.1.1 Steuerung
    - Die Dialogbox ist mausgesteuert.
    - Der Wechsel zwischen den Dialogelementen ist mittels TAB möglich.
    - Das Drücken von Return innerhalb der Dialogbox aktiviert das OK-Button.
    - Alle Checkboxen sind über Shortcuts (de)aktivierbar.

    3.1.1.2 Eingabe/Ausgabe und Prüfung
    (#Fehler:50/51)

    a) Gruppenfeld :[Einstellungen Omega]

    - [Textfeld]:Minimum
    Hier wird die Startposition des ausgewählten Motors für den Scan eingegeben.
  • Wert bei erstem Aufruf vom Motor
  • Bei wiederholtem Aufruf der Box werden die Werte vom letzten Aufruf gesetzt
  • Zulässiger Wertebereich:[min. Winkel des Motors+Schrittweite des Motors, Schrittweite des Motors, max. Winkel des Motors]

    - [Textfeld]:Maximum
    Hier wird die Endposition des ausgewählten Motors für den Scan eingegeben.
  • Wert bei erstem Aufruf vom Motor
  • Bei wiederholtem Aufruf der Box werden die Werte vom letzten Aufruf gesetzt
  • Zulässiger Wertebereich:[min. Winkel des Motors, Schrittweite des Motors, max. Winkel des Motors-Schrittweite des Motors]

    - [Textfeld]:Schritt
    Hier wird die Schrittweite, mit der der Motor bewegt werden soll, eingegeben.
  • Wert bei erstem Aufruf der Box auf Schrittweite des Motors
  • Bei wiederholtem Aufruf der Box werden die Werte vom letzten Aufruf gesetzt.
  • Zulässiger Wertebereich:[positives Vielfaches der Schrittweite des Motors]

    b) Gruppenfeld :[Einstellungen 2Theta]

    - [Textfeld]:Schritt
    Eingaben sind hier nur bei einem O2T-Scan mit einem 0-dim. Detektor möglich.
    Der Wert gibt die Schrittweite des Thetamotors an.
  • Wert wird bei Aufruf des Scan-Fensters auf Relation * Omega-Schrittweite gesetzt.
  • Bei wiederholtem Aufruf der Box werden die Werte vom letzten Aufruf gesetzt.
  • Zulässiger Wertebereich:[positives Vielfaches der Schrittweite des Motors]

    - [Textfeld]:Relation
    Eingaben sind hier nur beim Omega2Theta-Scan möglich.
    Gibt das Verhältnis an, in dem Omega- und Thetamotor zueinander stehen bzgl. Schrittweite, Maximum und Minimum.
  • Wert wird bei Aufruf des Scan-Fensters auf 2.0 gesetzt.
  • Bei wiederholtem Aufruf der Box werden die Werte vom letzten Aufruf gesetzt.
  • Zulässiger Wertebereich:[positive reelle Zahlen]

    - [Textfeld]:Bereich
    Eingaben sind hier nur bei einem O2T-Scan mit einem 0-dim. Detektor möglich.
    Der Wert gibt den Gesamtbereich an, den der Thetamotor in einem Omega-Schritt durchlaufen soll.
  • Wert wird bei Aufruf des Scan-Fensters auf ThetaMax-ThetaMin gesetzt.
  • Bei wiederholtem Aufruf der Box werden die Werte vom letzten Aufruf gesetzt.
  • Zulässiger Wertebereich:[0,...,ThetaMax-ThetaMin]

    - [Checkbox]: Theta-Achse fixieren
    a)Bei Benutzung eines Psd kann die Theta-Achse fixiert werden. --> Standardscan
    sonst --> Omega2Theta
    In diesem Fall wird das gesamte Gruppenfeld ausgegraut, sonst nur 'Schritt' und 'Bereich' ausgegraut.
  • Beim Aufruf der Box ist die Checkbox nicht markiert.


  • b)Ist ein 0-dim. Detektor ausgewählt, ist die Checkbox ausgegraut.
  • Beim Aufruf der Box ist die Checkbox markiert.


  • c) Gruppenfeld:[Detektor]

    - [Combobox]:Auswahl des Detektors
    Hier kann der Detektor, mit dem während des Scans gemessen werden soll, ausgewählt werden.
    Angezeigt werden alle in der .ini-Datei spezifizierten und physisch verfügbaren Detektoren: .ini-Datei: [Device i], Name=
  • Der gerade aktive Detektor wird vorausgewählt.
  • Wechselt man von einem 0-dimensionalen Detektor auf einen Psd oder umgekehrt, so werden automatisch die Eingabefelder im Gruppenfeld 'Einstellungen 2Theta' entsprechend gesperrt bzw. freigegeben und mit Werten belegt. (#Fehler:38)

    - [Textfeld]: Meßzeit ... sec
    Zeitintervall in Sekunden, in welchem der Detektor die Impulsrate zählt.
  • Bei erstem Aufruf der Box aus ini-File: [AreaScan], ExposureTime=
  • Bei erstem Aufruf der Box und fehlendem Eintrag in ini-Datei auf '1.0' setzen.
  • Bei wiederholtem Aufruf der Box werden die Werte vom letzten Aufruf gesetzt.
  • Zulässiger Wertebereich: [Wert ungleich null ]

    - [Textfeld]: Impulse
    Maximale Impulsrate, die der Detektor zählen darf.
  • Bei erstem Aufruf der Box auf 30000 gesetzt
  • Bei wiederholtem Aufruf der Box werden die Werte vom letzten Aufruf gesetzt.
  • Zulässiger Wertebereich: [Wert ungleich null]
    Detektor-Zeit und -Counts sind durch ein log. ODER verknüpft. Bei Erfüllung einer Bedingung erfolgt eine Reaktion.

    - [Aktionsschalter]: Geräte-Einstellungen
    Aufruf eines Einstellungsdialogs für den ausgewählten Detektor, sofern eine Einstellungbox vorhanden ist.

    - [Checkbox]: Absorber benutzen
    Hier kann man einstellen, ob während des Scans ein Absorber benutzt wird.
  • Beim ersten Aufruf der Box nicht markiert
  • Bei wiederholtem Aufruf der Box werden die Werte vom letzten Aufruf gesetzt.


  • d) Gruppenfeld:[Motor-Einheiten]

    Dieses nicht durch den Nutzer editierbare Feld zeigt die zu den Motoren zugehörige Einheit an.
  • Wert kommt vom Omegamotor
  • Wert wird nur einmal bei Aufruf der Box gesetzt.


  • e) Gruppenfeld:[Speicher-Optionen]

    - [Untergruppenfeld]: Format
    Hier sind keine Einstellungen möglich.
  • 'DIB' ist ausgegraut.
  • 'Standard' ist markiert.


  • - [Checkbox]:Kontinuierlich sichern
    Hier kann man einstellen, ob man während des Scans die Meßkurven fortlaufend in einer psd-Datei ablegen möchte.
  • Beim ersten Aufruf der Box nicht markiert.
  • Bei wiederholtem Aufruf der Box werden die Werte vom letzten Aufruf gesetzt


  • -[Checkbox]:Bei Beenden speichern
    Hier kann man einstellen, ob man die Meßkurven eines Scans erst nach Beendigung des Scans in einer psd-Datei ablegen möchte.
  • Bei erstem Aufruf der Box nicht markiert.
  • Bei wiederholtem Aufruf der Box werden die Werte vom letzten Aufruf gesetzt.


  • -[Textfeld]:Sicherungs-Verzeichnis
    Hier kann man den Pfad angeben, in dem die Kurvendateien abgelegt werden soll.
  • Bei erstem Aufruf der Box aus ini-Datei [AreaScan],DataPath=
  • Bei erstem Aufruf der Box und fehlendem Eintrag in ini-Datei auf 'C:\\' setzen.
  • Bei wiederholtem Aufruf der Box werden die Werte vom letzten Aufruf gesetzt.
  • Zulässiger Wertebereich[ alle existierenden Verzeichnisse, auf die man Schreibrecht besitzt]

    f) Aktionsschalter: [Parameter aktualisieren]

    Übernahme von einigen Dialogeinträgen ohne Prüfung:
    - Sicherungs-Verzeichnis
    - Kontinuierlich sichern
    - Omegaschrittweite
    - Thetarelation
    - Speicherformat
    Die Dialogbox bleibt geöffnet.

    g) Aktionsschalter: [Abbrechen]

    Dialogbox schließen, bereits eingegebene Werte werden bis auf die Auswahl eines neuen Detektors verworfen. Wenn zwischendurch 'Parameter aktualisieren' aufgerufen wurde, so werden die dort übernommenen Werte nicht zurückgesetzt.

    h) Aktionsschalter: [OK]

    Mit der Taste 'OK' werden die aktuellen Einstellungen überprüft. Bei Korrektheit aller Werte werden die Werte übernommen und die Dialogbox geschlossen, sonst bleibt die Dialogbox geöffnet und evtl. werden einige Einstellungen automatisch geändert:
    - 'Omega-Maximum' wird nur übernommen, wenn der Wert kleiner oder gleich dem
    Maximum des Motors ist.
    Sonst wird 'Maximum' auf (Maximum des Motors) - (Schrittweite des Motors)
    gesetzt (hier erfolgt keine Anzeige des korrigierten Wertes [siehe Fehler]).
    - 'Omega-Minimum' wird übernommen, wenn der Wert größer oder gleich dem Minimum des Motors ist
    Sonst wird 'Minimum' auf (Minimum des Motors) + (Schrittweite des Motors)
    gesetzt.
    - 'Theta-Bereich' wird übernommen, wenn der Wert ungleich 0 ist.
    Sonst wird er auf ((OmegaMax)-(OmegaMin))*Relation gesetzt.
    - 'Theta-Schrittweite' wird übernommen, wenn der Wert ungleich 0 ist.
    Sonst wird er auf (Omega-Schrittweite)* Relation gesetzt.
    - 'Meßzeit' wird übernommen, wenn der Wert ungleich 0 ist.
    - 'Impulse' wird nur übernommen, wenn der Wert ungleich 0 ist.
    - 'Sicherungs-Verzeichnis' wird übernommen, wenn der Pfad existiert. Sonst wird der Pfad auf "C:\\" gesetzt.
    - Alle weiteren Einstellungen werden ohne weitere Prüfung übernommen.

    3.1.2 Dialogbox ,PSD-Measurements under Remote Control'

    (#Fehler:56)Vorbemerkung: Diese Dialogbox funktioniert nicht! (Siehe auch unter 2.3.6)


    Abb. 3.30: Dialogbox ‚PSD_Measurements under Remote Control'

    3.1.2.1 Steuerung
    - Die Dialogbox ist mausgesteuert.
    - Der Wechsel zwischen den Dialogelementen ist mittels TAB möglich.
    - Das Drücken von Return innerhalb der Dialogbox aktiviert den Leave-Button.

    3.1.2.2 Eingabe/Ausgabe und Prüfung
    a)Gruppenfeld :

    - [Textfeld]:Datafiles(Datenpfad)
    Hier erfolgt die Eingabe eines Datenpfades.

    - [Textfeld]:Datafiles(Dateiname)
    Hier erfolgt die Eingabe eines Dateinamens.

    - [Textfeld]:Datafiles(Extension)
    In diesem nicht durch den Nutzer editierbaren Feld steht die Extension.

    - [Textfeld]:
    Informationsfeld über den aktuellen Zustand der Messung

    b) Aktionsschalter: [Start]

    ? Starten der Datenaufnahme.

    c) Aktionsschalter: [Interrupt]

    ? Unterbrechen der Datenaufnahme.

    d) Aktionsschalter: [Stop]

    ? Beenden der Datenaufnahme.

    e) Aktionsschalter: [Leave]

    Dialogbox schließen ohne Überprüfung von Eingaben.

    3.1.3 Dialogbox ,Scan-Auswahl'



    Abb. 3.31: Dialogbox ‚Scan-Auswahl'

    3.1.3.1 Steuerung
    - Die Dialogbox ist mausgesteuert.
    - Tastatureingaben sind nur im Feld 'ScanId' möglich; die Eingaben werden durch Drücken des 'Update'-Buttons aktiviert.

    3.1.3.2 Eingabe/Ausgabe und Prüfung
    a) Gruppenfeld :[Scan-Auswahl]

    - [Textfeld]:Max.ScanId
    Dieses nicht durch den Nutzer editierbare Feld zeigt die Anzahl der zur Datenbasis gehörenden Kurven an.
  • Wert kommt von Datenbasis


  • - [Textfeld]:Omega
    Dieses nicht durch den Nutzer editierbare Feld zeigt die Omegaposition der gerade dargestellten Kurve der Datenbasis an.
  • Wert kommt von Datenbasis (Reportkurve)


  • - [Textfeld]:Maximum
    Dieses nicht durch den Nutzer editierbare Feld zeigt die maximale Intensität der gerade dargestellten Kurve der Datenbasis an.
  • Wert wird jedesmal aus gerade dargestellter Kurve ermittelt


  • - [Textfeld]:ScanId
    Hier wird die gewünschte Scan-Kurve ausgewählt.
  • Wert bei erstem Aufruf der Box auf 0
  • Bei wiederholtem Aufruf der Box werden die Werte vom letzten Aufruf gesetzt
  • Zulässiger Wertebereich: [0..Max.ScanId]

    b) Scrollbar:

    Hier wird die gewünschte Scan-Kurve ausgewählt.
    Der Wert '0' ist am unteren Ende des ScrollBars, die Max.ScanId am oberen. Beim Anklicken auf dem oberen bzw. unteren Bereich des Scrollbars wird der Index der anzuzeigenden Kurve um 10 erhöht bzw. verringert.

    c) Aktionsschalter: [Update]
    Aktualisieren des Areascan-Fensters mit gewählter ScanId, sowie Aktualisieren der Werte im Gruppenfeld 'Scan-Auswahl'.

    d) Aktionsschalter: [Abbruch]
    Dialogbox schließen, bereits eingegebene Werte im Feld 'ScanId' werden verworfen.

    e) Aktionsschalter: [OK]
    Der Schalter macht dasselbe wie 'Abbruch'.

    3.1.4 Dialogbox ,PSD-Kalibrierung'



    Abb. 3.32: Dialogbox ‚Psd-Kalibrierung'

    3.1.4.1 Steuerung
    - Die Dialogbox ist mausgesteuert.
    - Der Wechsel zwischen den Dialogelementen ist mittels TAB möglich.
    - Das zweimalige Drücken von Return innerhalb der Dialogbox aktiviert das Beenden-Button.

    3.1.4.2 Eingabe/Ausgabe und Prüfung
    a) Scrollbar:
    Hier kann der gesamte Bereich des Thetamotors abgefahren werden.
    Der minimale Wert ist am linken, der maximale am rechten Rand.

    b) Textfeld: [Winkel 2Theta (alt)]
    Dieses nicht durch den Nutzer editierbare Feld zeigt fortlaufend die aktuelle Thetaposition an. Der Wert wird vom Thetamotor geholt.

    c) Textfeld: [Winkel 2Theta (neu)]
    Hier ist die Eingabe einer neuen Thetaposition möglich, die durch Drücken der Enter-Taste oder des Beenden-Buttons angefahren wird. Bei Aufruf der Dialogbox enthält das Feld die aktuelle Thetaposition.
    Zulässiger Wertebereich:[Bereich des Motors]

    d) Textfeld: [Einheit]
    Dieses nicht durch den Nutzer editierbare Feld zeigt die aktuelle Einheit des Thetamotors an. Der Wert kommt vom Thetamotor.

    e) Aktionsschalter: [Linke Position erreicht]
    Festlegen der linken Peak-Position.
    Wenn die rechte Peak-Position noch nicht festgelegt war, wird die Eingabe übernommen und das Button ausgegraut. Wenn die rechte Peak-Position schon festgelegt wurde, erfolgt ein Test, ob diese Thetamotor-Position der Position vom rechten Peak entspricht. Ist dem so, so erfolgt keine Berechnung. Wenn die Positionen nicht gleich sind, wird überprüft, ob die Kanäle, auf denen der rechte bzw. linke Peak liegen, übereinstimmen. In diesem Fall erfolgt eine Fehlermeldung und die Eingabe wird nicht übernommen. Ansonsten wird der neu berechnete Wert für Textfeld g) eingetragen.

    f) Aktionsschalter: [Rechte Position erreicht]
    Festlegen der rechten Peak-Position.
    Wenn die linke Peak-Position noch nicht festgelegt war, wird die Eingabe übernommen und das Button ausgegraut. Wenn die linke Peak-Position schon festgelegt wurde, erfolgt ein Test, ob diese Thetamotor-Position der Position vom linken Peak entspricht. Ist dem so, so erfolgt keine Berechnung. Wenn die Positionen nicht gleich sind, wird überprüft, ob die Kanäle, auf denen der rechte bzw. linke Peak liegen übereinstimmen. In diesem Fall erfolgt eine Fehlermeldung und die Eingabe wird nicht übernommen. Ansonsten wird der neu berechnete Wert für Textfeld g) eingetragen.

    g) Textfeld: [Winkel je Kanal]
    Dieses nicht durch den Nutzer editierbare Feld zeigt den Winkel des Thetamotors an, der durch einen Psd-Kanal abgedeckt wird. Der Wert wird aus den Festlegungen für die linke bzw. rechte Position ermittelt. Bei Aufruf der Dialogbox kommt der Wert vom Psd.

    h) Aktionsschalter: [Abbrechen]
    Dialogbox schließen, eine eventuell eingegebene neue Position wird nicht angefahren. Sämtliche weiteren Aktionen, die vorher stattfanden, werden übernommen.

    i) Aktionsschalter: [Beenden]
    Dialogbox schließen, wenn im Textfeld c) keine Eingabe erfolgt ist, sonst wird erst diese neue Position angefahren und durch ein weiteres Drücken auf das Beenden-Button die Dialogbox geschlossen. Sämtliche weiteren Aktionen werden übernommen.

    3.2 Dateien

    3.2.1 ini-Datei

    Erforderlich ist der Areascan-Abschnitt mit zahlreichen Parametern. Dies soll an einem Beispiel erläutert werden:
    Beispiel:
    [AreaScan]
    ExposureTime=1.00
    ExposureCounts=20000
    WriteAbsorberPosition=0
    Failure=0.02
    xo=18
    yo=24
    dx=822
    dy=598
    DataPath=c:\
    SaveOnReady=0
    Report=Integral
    Level0=0.02
    Level1=0.05
    Level2=0.10
    Level3=0.20
    Level4=0.30
    Level5=0.40
    Level6=0.50
    Level7=0.60
    Level8=0.70
    Level9=0.80
    Level10=0.90
    Level11=1.0
    LevelNumber=11
    swPalette=0
    
    Erklärung:
  • 'swPalette' Wert für 'Bildnerische Darstellung'
  • 'Leveli' Werte für 'Bildnerische Darstellung'
  • 'LevelNumber' Wert für 'Bildnerische Darstellung'

  • 3.2.2 psd-Dateien

    Die Meßwertreihen werden in einem Dateiformat abgelegt, welches sich in einen Header- und einen Daten-Abschnitt unterteilt. Dies soll an einem Beispiel erläutert werden:

    Beispiel:

    Comment=Topographie-Meßplatz
    [Header]
    User=Panzner Date=01.02.2001 Time=11:06:11
    DataRows=21 DataColumns=31 FileType=1
    FirstColumn=0 LastColumns=30
    OmegaMin=0.0000 OmegaStep=0.20000 OmegaMax=4.0000
    ThetaMin=0.000 ThetaStep=0.4000 ThetaMax=8.000 MoveRelation=2.00
    Target=p457  Reflection=[658] Orientation=[999]
    WaveLength=1.540 Current=35  HV=40
    TimePerScan=1.00 PsdStep=124194344.000000 PsdAddedChannels=64
    [Data]
    215.26 182.97 204.50 157.53 165.36 158.51 191.78 197.65 176.13 189.82 180.04 164.38 223.09 244.62 470.65 5215.3 4675.1 461.84 262.23 192.76 163.41 186.89 188.85 167.32 207.44 182.00 205.48 187.87 227.01 192.76 192.76
    175.32 201.76 160.63 174.34 177.28 199.80 194.91 168.46 202.74 158.67 201.76 199.80 153.77 288.93 479.92 5210.6 4614.1 468.17 266.41 222.33 172.38 205.68 187.07 208.62 190.01 192.95 158.67 177.28 162.59 195.89 195.89
    ...
    
    Erklärung:
    In der 1.Zeile steht Comment=A, wobei A für den Eintrag unter 'Einstellungen' => 'Programm' steht unter 'Besondere Bedingungen'.
    Es folgt der Abschnitt [Header], der folgende Einträge enthält:
    - 'User' wird aus 'Einstellungen' => 'Programm' unter 'Nutzer' übernommen.
    - 'Date' und 'Time' enthalten das aktuelle Datum bzw. die aktuelle Systemzeit zu Beginn der Messung.
    - 'DataRows' ist Anzahl der Kurven der Datenbasis, entspricht der Anzahl der Zeilen im [Data]-Abschnitt.
    - 'DataColumns' ist Anzahl der Werte je Meßkurve (entspricht Anzahl der Kanäle).
    - 'FileType' ist vom Programm auf 1 festgesetzt.
    - 'FirstColumn' ist die erste Kanalnummer.
    - 'LastColumns' ist die letzte Kanalnummer.
    - 'OmegaMin' ist Startwinkel des Omegamotors.
    - 'OmegaStep' ist Schrittweite des Omegamotors.
    - 'OmegaMax' ist Endwinkel des Omegamotors.
    - 'ThetaMin' ist Startwinkel des Thetamotors.
    - 'ThetaStep' ist Schrittweite des Thetamotors.
    - 'ThetaMax' ist Endwinkel des Thetamotors.
    - 'MoveRelation' gibt Vielfaches an, mit dem sich Winkel bzw. Schrittweite des Theta- vom Omegamotor unterscheiden.
    - 'Target', 'Reflection' und 'Orientation' werden aus 'Einstellungen' => 'Programm' unter 'Angaben zur Probe' übernommen.
    - 'WaveLength', 'Current', 'HV' werden aus dem 'Einstellungen' => 'Programm' unter 'Betriebsparameter' übernommen.
    - 'TimePerScan' enthält die Meßzeit pro Schritt.
    - 'PsdStep' gibt den Winkel an, der einem einzelnen Psd-Kanal entspricht (dieser Eintrag existiert nur beim Psd-Scan).
    - 'PsdAddedChannels' gibt an, wieviele Kanäle zu einem zusammengefaßt werden sollen (dieser Eintrag existiert nur beim Psd-Scan).
    Es folgt der Abschnitt [Data], der folgende Einträge enthält:
    - Jede Zeile enthält die Informationen einer Meßkurve, bestehend aus den Intensitätswerten.

    3.2.3 rep-Dateien

    Die Zusatzinformationen werden in einem Dateiformat abgelegt, welches an folgendem Beispiel erläutert werden soll:

    Beispiel:

    # Report: ScanId Omega : Theta : Integral Intensity
    0 0.0000 0.000 22237.770
    1 0.2000 0.400 22033.301
    2 0.4000 0.800 22261.508
    3 0.6000 1.200 22345.400
    4 0.8000 1.600 22311.459
    5 1.0000 2.000 22189.031
    6 1.2000 2.400 22305.283
    7 1.4000 2.800 22323.213
    8 1.6000 3.200 22333.986
    9 1.8000 3.600 22051.859
    10 2.0000 4.000 22181.195
    11 2.2000 4.400 22196.865
    12 2.4000 4.800 22449.119
    13 2.6000 5.200 22095.006
    14 2.8000 5.600 22286.973
    15 3.0000 6.000 22175.146
    16 3.2000 6.400 22311.459
    17 3.4000 6.800 22283.057
    18 3.6000 7.200 22407.045
    19 3.8000 7.600 22386.875
    20 4.0000 8.000 22321.254
    

    Erklärung:
    In der ersten Zeile stehen die Erklärungen zu den 4 Spalten:
    - In der ersten Spalte steht die Kurvennummer.
    - In der zweiten Spalte steht die Omega-Position zu dieser Kurve.
    - In der dritten Spalte steht die Thetaposition zu dieser Kurve (=Omegawert * Relation).
    - In der vierten Spalte steht abhängig von der Programmeinstellung (im ini-File):
    - Integrale Intensität -> Integral Intensity
    - Messzeit -> MeasurementTime
    - Absorber-Position -> AbsorberPosition
    - Peak-Position -> PeakPosition
    - Monitorintensität -> Monitor Signal
    Die Zahlenwerte einer Zeile gehören zu einer Kurve.

    3.2.4 bk-Dateien

    Die fixierten Kurven werden in einem Dateiformat abgelegt, welches sich in einen Header- und einen Daten-Abschnitt unterteilt. Dies soll an einem Beispiel erläutert werden:

    Beispiel:

    [Header]
    Vergleichs-Scan
    X >> Intensity >> Z
    [Data]
    0.000 7.835 0.000
    -3600.091 7.835 2.000
    -7200.181 9.794 4.000
    -10800.271 4.897 6.000
    -14400.362 7.835 8.000
    -18000.453 4.897 10.000
    -21600.543 1.959 12.000
    -25200.633 7.835 14.000
    -28800.723 8.815 16.000
    -32400.812 7.835 18.000
    -36000.902 8.815 20.000
    -39600.992 5.877 22.000
    ...
    
    Erklärung:
    Im [Header]-abschnitt stehen nur die beiden Strings wie im Beispiel.
    Es folgt der Abschnitt [Data], der folgende Einträge enthält:
    - Jede Zeile enthält die Informationen eines Punktes, bestehend aus 3 Werten: dem Theta-Winkel, der Intensität und der Kanalnummer.

    4. Testfälle

    Folgende Abläufe beinhalten einen Grobtest der Funktionalitäten von Linescan und Areascan. Dabei wurde auf den Test der fehlerhaften Funktionalität (External sync.) verzichtet.

    Testabläufe

    5. Fehler

    Bei allen Fehlern siehe Fehlerliste.
    Die angegebenen Fehlernummern entsprechen denen in der Fehlerliste .

    6. Änderungswünsche


    7. Offene Fragen


    Die genaue Definition von ‚Kontinuierlichem Energie- bzw. Impulsspektrum' ist noch mit den Physikern zu klären.

    8. Anmerkungen

    Nach dem Durcharbeiten des Dokuments Diffraktometrie/Reflektometrie-Gesamtvorgang, Analyse des XCTL-Steuerprogramms und der zugehörigen Quellen sowie Klärung offener Fragen mit Physikern entstand dieses Pflichtenheft. Grundlage für die Form des Dokuments war das Dokument Linescan (v2.0).

    Neuerungen zur Version 1.1:

    9. Verwandte Dokumente


    10. Glossar


    Datenbasis
    Eine Datenbasis ist eine Menge von Kurven, welche die Meßwerte enthalten, und einer Reportkurve, die zu jeder dieser Kurven die wichtigsten Informationen wie Omegawinkel, Thetawinkel sowie eine Zusatzinformation, die durch den Wert, der unter Report im Ini-File angegeben ist, speichert. Eine Meßkurve ist eine Folge von Tripeln (x,y,z), wobei x und z der Kanalnummer des Psd und y der bei diesem Kanal gemessenen Intensität entspricht. Bei Verwendung eines 0-dimensionalen Detektors enthält x den Thetawinkel, y die bei diesem Winkel gemessene Intensität und z den aktuellen Theta-Schritt.