XCTL-Steuerprogramm

Benutzer-Leitfaden

Basisanwendung:

Diffraktometrie / Reflektometrie

Linescan

Einstellen der Parameter

Start und Kontrolle






Dokumentversion: 1.1 (27.03.2003)
Autoren: Stephan Berndt, Jens Ullrich
          überarbeitet: U. Sacklowski
Institut für Informatik
Humboldt-Universität zu Berlin


Inhaltsverzeichnis


1.      Einführung
2.      Benutzungsoberfläche (Allgemeine Hinweise)
3.      Produktstruktur
4.      Trainingsteil (Typische Anwendungen)
- Beispielanwendungen zur Dialogbox 'Einstellungen StepScan'
- Beispielanwendung zu den Dialogboxen 'Einstellungen StepScan' und
            'Einstellungen  dynamische Schrittweitensteuerung'
- Beispielanwendungen zur Dialogbox 'Einstellungen kontinuierlicher Scan'
- Beispiele für Funktionen während des Scanablaufes
- Beispiele für allgemeine Funktionen
5.      Überblick über die Funktionalität
6.      Benutzungsoberfläche und Funktionalität
   6.1 Basisanwendung 1 - Öffnen eines Linescan- oder Areascan-Fensters
   6.2 Basisanwendung 2 - Verändern der Fensterkoordinaten
   6.3 Basisanwendung 3 - Laden von Meßdaten
   6.4 Basisanwendung 4 - Anzeige und Analyse von Meßdaten
7.      Benutzungsoberfläche im Detail 
   7.1 Dialogbox 'Einstellungen StepScan'
   7.2 Dialogbox 'Einstellungen ContinuousScan'
   7.3 Dialogbox 'Dynamische Schrittweitensteuerung'
   7.4 Dialogbox 'Altes Datenfile laden ...'
   7.5 Dialogbox 'Sichern unter ...'
8.      Dateien
   8.1  ini-Datei
   8.2  crv-Datei
   8.3  bk-Datei
   8.4  andere Meßwertdateien
9.      Literaturverzeichnis und Web-Adressen
10.  Glossar
11. Register

Anhang
    Dialog- und Meßfenster in Englisch


1.      Einführung


Dieses Dokument beschreibt die Funktionen des XCTL Programms, die für die Einstellungen und die Durchführung eines Linescans bei der Diffraktometrie/Reflektometrie entscheidend sind.

Gedacht ist der Benutzerleitfaden in erster Linie für Physik-Studenten und wissenschaftliche Mitarbeiter am Physik-Fachbereich der Humboldt-Universität zu Berlin. Außerdem kann er eine Hilfe für sich ins Projekt 'Software Sanierung' (HUB IfI) einarbeitende Informatik-Studenten sein.

Verwiesen wird hier ergänzend auf den Benutzerleitfaden für die Basisanwendung  ‚Diffraktometrie/Reflektometrie: Darstellung von Meßergebnissen'.

Kapitel 1-3 enthalten allgemeine Hinweise zur Einordnung der Thematik. Kapitel 4 beschreibt in Kurzform typische Anwendungsfälle im Themenbereich. Die Kapitel 5-7 geben einen erst überblicksmäßigen, dann einen detaillierten Einblick in die Funktionalität und die Benutzeroberfläche. Im Kapitel 5 wird dabei erstmals die Unterteilung in Stepscan und Continousscan erläutert. Im Kapitel 8 werden der Aufbau und Inhalt der im behandelten Gebiet relevanten Dateien beschrieben. Es folgt Punkt 9 mit einem Verweis auf verwandte Dokumente und Punkt 10 mit einem Glossar. Im Anhang befinden sich Abbildungen der besprochenen Dialogfenster in englischer Sprache.


2.      Benutzungsoberfläche (Allgemeine Hinweise)

a) Bedienung

Die Bedienung folgt dem Windows-Standard. Die einzelnen Oberflächenelemente folgen alle den Standard-Windows-Funktionen.

Über die eingeblendete Menüzeile sind die Hauptfunktionen erreichbar. Die einzelnen Pull-Down Menüs lassen sich durch einen Klick mit der linken Maustaste auf den Menükopf öffnen. Spezielle Pop-Up Menüs sind durch einen Klick mit der rechten Maustaste in der Fenster-Arbeitsfläche verfügbar.

b) Oberflächen-Elemente


Aktionsschalter (Button)


Textfeld (Textfield)


Radiobutton


Scrollbalken (Scrollbar)


Checkbutton


Auswahlbox (Combobox)


3.  Produktstruktur


Fenster:
- Linescan- Fenster kann man über das Pull-Down Menü 'Öffnen' -> 'LineScan-Fenster' aufrufen

Dialoge:
-        Dialog 'Einstellungen StepScan' öffnet sich über das Pop-Up Menü im Linescan-Fenster
-         Dialog 'Einstellungen kontinuierlicher Scan' öffnet sich über das Pop-Up Menü im Linescan-Fenster
-         Dialog 'Einstellungen dynamische Schrittweitensteuerung' öffnet sich über den Dialog 'Einstellungen StepScan' , wenn der Checkbutton 'aktivieren' im Gruppenfeld 'Dynamische Schrittweite' aktiviert ist und der zu diesem Gruppenfeld gehörende Button 'Einstellungen' angeklickt wird

Dateien:
-         siehe Punkt 8


4. Trainingsteil

Beispielanwendungen zur Dialogbox 'Einstellungen StepScan':


a)     
Einstellen der Parameter für einen Stepscan im Standard-Modus

1.      Öffnen eines Linescan-Fensters (Menü: Öffnen; LineScan-Fenster)
2.      Rechtsklick mit der Maus im Linescan-Fenster und Auswahl des Menüpunktes 'Setup StepScan'
3.     Auswahl des Auswahlboxeintrages 'Standard' im Gruppenfeld 'Scan-Typ'
4.      Auswahl einer Scanachse im gleichnamigen Gruppenfeld 'Scan-Achse'
5.      Eingabe der Parameter 'Minimum', 'Maximum' und 'Schrittweite' im Gruppenfeld 'Scan-Achse' (diese Parameter sind von der ausgewählten Scanachse abhängig)
6.  Auswahl eines Detektors in der Auswahlbox des gleichnamigen Gruppenfeldes 'Detektor'
7.     Eingabe der Beschränkungsparameter 'Zeit' und 'Impulse' (diese Parameter sind von dem ausgewählte Detektor abhängig)
8.     Der Checkbutton für die dynamische Schrittweitensteuerung muß deaktiviert sein und unter Monitor-Detektor muß 'Kein Monitor' ausgewählt sein.
9.      anschließend kann optional  eine Speicheroption im gleichnamigen Gruppenfeld ausgewählt werden
10.  wenn dies erfolgt ist, so kann gleich ein Verzeichnis-Pfad für die zu speichernde Datei im Textfeld 'Sicherungs-Verzeichnis' eingegeben werden (der Pfad kann kurz vor dem Scanstart bei der Eingabe des Dateinamens noch geändert werden)
11.  durch Betätigen des OK-Buttons kann nun die Dialogbox im Falle fehlerfreier Eingaben verlassen und die Werte übernommen werden (wenn die Dialogbox sich nicht schließt , so wurden in einem oder mehreren Feldern unzulässige Werte eingegeben, welche nun auf zulässige geändert werden (siehe auch 7.1)


b)      Einstellen der Parameter für einen Stepscan im Omega2Theta-Modus

1.      Öffnen eines Linescan-Fensters (Menü: Öffnen; LineScan-Fenster)
2.      Rechtsklick mit der Maus im Linescan-Fenster und Auswahl des Menüpunktes 'Setup StepScan'
3.      Auswahl des Auswahlboxeintrages 'Omega2Theta' im Gruppenfeld 'Scan-Typ' (dieser Scantyp lässt sich nur auswählen, wenn die entsprechenden Achsen verfügbar sind)
4.      Eingabe der Parameter 'Minimum', 'Maximum' und 'Schrittweite' (diese Parameter sind von der Omega-Scanachse abhängig) sowie '2Theta' im Gruppenfeld 'Scan-Achse'
5.      Auswahl eines Detektors in der Auswahlbox des gleichnamigen Gruppenfeldes 'Detektor'
6.      Eingabe der Beschränkungsparameter 'Zeit' und 'Impulse' (diese Parameter sind von dem ausgewählte Detektor abhängig)
7.      Der Checkbutton für die dynamische Schrittweitensteuerung muß deaktiviert sein und unter Monitor-Detektor muß 'Kein Monitor' ausgewählt sein.
8.      anschließend kann optional  eine Speicheroption im gleichnamigen Gruppenfeld ausgewählt werden
9.      wenn dies erfolgt ist, so kann gleich ein Verzeichnis-Pfad für die zu speichernde Datei im Textfeld 'Sicherungs-Verzeichnis' eingegeben werden (der Pfad kann kurz vor dem Scanstart bei der Eingabe des Dateinamens noch geändert werden)
10.  durch Betätigen des OK-Buttons kann nun die Dialogbox im Falle fehlerfreier Eingaben verlassen und die Werte werden übernommen (wenn die Dialogbox sich nicht schließt , so wurden in einem oder mehreren Feldern unzulässige Werte eingegeben, welche nun auf zulässige geändert werden (siehe auch 7.1)


c)      Einstellen der Parameter für einen Stepscan mit Monitorsignal

1.      gleiche Vorgehensweise wie bei a) oder b) in den Schritten 1. bis 6.
2.      falls der Checkbutton für die dynamische Schrittweitensteuerung aktiviert ist , so ist dieser zu deaktivieren
3.      Auswahl eines Monitor-Detektors
4.      solange den Button im gleichen Gruppenfeld betätigen, bis der Button den Namen des gewünschten Monitordetektors trägt
5.      gleiche Vorgehensweise wie bei a) oder b) in den Schritten 8. bis 10.


Beispielanwendung zu den Dialogboxen 'Einstellungen StepScan' und 'Einstellungen Dynamische Schrittweitensteuerung:


d)      Einstellen der Parameter für einen Stepscan mit dynamischer Schrittweitensteuerung

1.      gleiche Vorgehensweise wie bei a) oder b) in den Schritten 1. bis 6.
2.      unter Monitor-Detektor muß 'Kein Monitor' ausgewählt sein
3.      aktivieren des Checkbuttons 'aktivieren' im Gruppenfeld 'dynamische Schrittweite'
4.      anklicken des Buttons 'Einstellungen' im gleichen Gruppenfeld (=> Dialogbox 'Dynamische Schrittweitensteuerung' öffnet sich)
5.      eingeben der 'Intensität' und 'Verhältnis' Felder der einzelnen Level (dabei die Intensitätswerte der Größe nach aufsteigend von oben nach unten ordnen)
Um z.B. den Achsenbereich,  in dem Intensitäten zwischen 2000 und 3000 Impulsen/Sekunde gemessen werden, mit der halben Schrittweite und den Achsenbereich,  in dem Intensitäten über 3000 Impulsen/Sekunde gemessen werden, mit doppelter Schrittweite zu durchfahren, wären folgende Eingaben zu tätigen.

Level

Intensität

Verhältnis

0

1000

1

1

2000

0.5

2

3001

2

 
6.      durch Betätigen des OK-Buttons kann nun die Dialogbox 'dynamische Schrittweitensteuerung' im Falle fehlerfreier Eingaben verlassen und die Werte werden übernommen (wenn die Dialogbox sich nicht schließt , so wurden in einem oder mehreren Feldern unzulässige Werte eingegeben, welche nun auf zulässige geändert werden (siehe auch 7.3)
7.      anschließend kann optional  eine Speicheroption im gleichnamigen Gruppenfeld der Dialogbox 'Einstellungen StepScan' ausgewählt werden
8.      wenn dies erfolgt ist, so kann gleich ein Verzeichnis-Pfad für die zu speichernde Datei im Textfeld 'Sicherungs-Verzeichnis' eingegeben werden (der Pfad kann kurz vor dem Scanstart bei der Eingabe des Dateinamens noch geändert werden)
9.      durch Betätigen des OK-Buttons kann nun die Dialogbox 'Einstellungen StepScan' im Falle fehlerfreier Eingaben verlassen und die Werte übernommen werden (wenn die Dialogbox sich nicht schließt , so wurden in einem oder mehreren Feldern unzulässige Werte eingegeben, welche nun auf zulässige geändert werden (siehe auch 7.1

Beispielanwendung zur Dialogbox 'Einstellungen kontinuierlicher Scan':


e)      Einstellen der Parameter für einen kontinuierlichen Scan

1.      Öffnen eines Linescan-Fensters (Menü: Öffnen; Scan-Fenster)
2.      Rechtsklick mit der Maus im Linescan-Fenster und Auswahl des Menüpunktes 'Setup ContinuousScan'
3.      Auswahl einer Scanachse im gleichnamigen Gruppenfeld 'Scan-Achse'
4.      Eingabe der Parameter 'Startposition', 'Endposition' und 'Bereichsgröße'
5.      Auswahl eines Detektors in der Auswahlbox des Gruppenfeldes 'Sensor'
6.      Eingabe der 'Meßzeit' im Gruppenfeld 'Sensor'
7.      optional kann im Gruppenfeld 'Speicheroption' der Checkbutton 'Bei beenden speichern' aktviert werden und im Textfeld 'Sicherungsverzeichnis' der Pfad angegeben werden in dem die Datei abgelegt werden soll
8.      durch Betätigen des OK-Buttons kann nun die Dialogbox 'Einstellungen ContinuousScan' im Falle fehlerfreier Eingaben verlassen und die Werte werden übernommen (wenn die Dialogbox sich nicht schließt , so wurden in einem oder mehreren Feldern unzulässige Werte eingegeben, worauf durch Messageboxen hingewiesen wird (siehe auch 7.2)

Beispiele für Funktionen während des Scanablaufes:


f)       Starten und kontrollieren eines Linescan

1.      Einstellungen für einen Linescan vornehmen je nach Art siehe a),b),c),d),e)
2.      Rechtsklick mit der Maus im Linescan-Fenster und Auswahl des Menüpunktes 'StepScan starten' bei a, b, c, d oder Auswahl des Menüpunktes 'Kontinuierlichen Scan starten'
3.      Fortsetzen des Scanstarts durch Bestätigung der Meldung durch betätigen des Ok-Buttons
4.      wenn eine Speicheroption in der jeweiligen Einstellungsbox gewählt wurde, so muß nun in einer Dialogbox 'Sichern unter' ein Dateiname eingegeben bzw. ausgewählt werden und die Dialogbox mittels Ok-Button verlassen werden
5.      (der Scan wurde nun gestartet ; der Lauf des Linescans wird in der Statusleiste protokolliert und die Werte werden in das Koordinatensystem des Linescan-Fensters gezeichnet)
6.      nun könnten der Linescan unterbrochen werden (siehe g)) bzw. der unterbrochene wieder fortgesetzt werden (siehe h))
7.      am Ende des Linescan erscheint eine Meldung die darauf hinweist, das der jeweilige Scan beendet wurde
8.      jetzt ist der Linescan beendet und es könnten allgemeine Funktionen durchgeführt werden (siehe Beispiele für allgemeine Funktionen).


g)     
Unterbrechen eines Linescans

1.      nachdem ein Linescan gestartet wurde (siehe f) 1. bis 5.) kann dieser Linescan durch betätigen der ESC-Taste oder über den Menüpunkt 'Scan unterbrechen' (Menü: Ausführen; Scan unterbrechen) angehalten werden (dies wird durch eine Meldung in der Statusleiste angezeigt)


h)     
Fortsetzen eines unterbrochenen Linescans
1.      durch nochmaliges Betätigen der Esc-Taste bzw. über den Menüpunkt 'Scan fortsetzen' (Menü: Ausführen; Scan fortsetzen) wird der Linescan an der letzten gemessenen Position fortgesetzt

Beispiele für allgemeine Funktionen :


i)        Nachladen einer Meßkurve
-         siehe  Dokument: 'Benutzer-Leitfaden: Basisanwendung – Diffraktometrie / Reflektometrie- Darstellung von Meßergebnissen' unter 4 a)


j)       Sichern einer dargestellten Meßkurve
-         Öffnen des 'Sichern unter' Dialogs (Menu: Datei; Sichern unter...) bzw.  (Menu: Datei; Sichern)
-         Eingabe eines Dateinamens im Textfeld 'Dateiname:' unter dem die Datei als 'Dateiname.crv' gespeichert wird, sobald die Dialogbox mittels Ok-Button verlassen wurde


k)    
Fixieren einer Messkurve, Sichern dieser fixierten Messkurve und anschließendes Löschen der fixierten Kurve
-         Rechtsklick mit der Maus im Linescan-Fenster und Auswahl des Menüpunktes 'fixieren' im Untermenü 'Scan'
-         Die rote Kurve ist nun fixiert.


l)       
Sichern einer fixierten Messkurve
-         Rechtsklick mit der Maus im Linescan-Fenster und Auswahl des Menüpunktes 'speichern' im Untermenü 'Scan' 

m)    löschen einer fixierten Kurve
-         Rechtsklick mit der Maus im Linescan-Fenster und Auswahl des Menüpunktes 'löschen' im Untermenü 'Scan'


n)     
Löschen der aktuellen Messkurve  im Scan-Fenster
-         auswählen des Menüpunktes 'Neu' (Menu: Datei; Sichern unter)

o)      Ändern der Darstellungsoptionen
-         siehe  Dokument: 'Benutzer-Leitfaden: Basisanwendung – Diffraktometrie / Reflektometrie- Darstellung von Meßergebnissen' unter 4 g)


5.   Überblick über die Funktionalität

Die Teilfunktion 'Diffraktometrie / Reflektometrie – Linescan: Einstellen der Parameter, Start und Kontrolle' ist Teil des Diffraktometrie/Reflektometrie-Gesamtvorganges (Dokument: 'Benutzer-Leitfaden für einen Gesamtvorgang – Diffraktometrie / Reflektometrie').

    Der Begriff Linescan steht als Überbegriff für den Stepscan und den Continuousscan. Er beinhaltet die Scans, bei denen ein 0-dimensionaler Detektor über eine Achse mißt. Der Unterschied zwischen Step- und Continuosscan besteht darin, daß beim Stepscan die Probe schrittweise und beim Continuousscan die Probe kontinuierlich bewegt wird. Im Dokument 'Benutzer-Leitfaden für einen Gesamtvorgang – Diffraktometrie / Reflektometrie' 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 Linescan alle dafür relevanten Angaben eingebbar. Mit der Teilfunktion 'Start und Kontrolle des Linescan'

-         kann die Startposition angefahren werden,
-         wird die Messung gestartet mit nachfolgender Information zum Stand und Verlauf der Messung,
-         kann eine laufende Messung unterbrochen, sowie eine unterbrochene Messung fortgesetzt werden
-         wird die Messung gestoppt.

Es stehen noch weitere Funktionen zur Verfügung. So können Kurven

- geladen, gespeichert und gelöscht werden,
- fixiert werden, sowie fixierte Kurven gespeichert und gelöscht werden.

6.      Benutzungsoberfläche und Funktionalität

Funktionale Beschreibung

Zur Durchführung von Experimenten zur Diffraktometrie/Reflektometrie sowie zur Auswertung der gewonnenen Meßdaten benötigt man natürlich auch eine grafische Darstellung der Daten. Diese erleichtert die Auswertung der Experimente durch gezielte Darstellung von Abhängigkeiten der Parameter. Grundsätzlich wird auf eine Darstellung der Parameter in einem Koordinatensystem zurückgegriffen. Zur optimalen Nutzung der Grafikausgabe läßt sich diese noch gezielt manipulieren.

6.1 Basisanwendung 1 - Öffnen und Schließen eines Linescan-Fensters

Menüpunkte zum Öffnen der zentralen Fenster für die Diffraktometrie/Reflektometrie

Über die Funktion 'Öffnen: LineScan-Fenster' wird das Linescan-Fenster geöffnet. Von hier aus werden alle weiteren Funktionen aufgerufen. Das Öffnen eines 2. Linescan-Fensters ist nicht möglich.

    Die Lage und Größe eines LineScan-Fensters kann standardmäßig in der  ini-Datei des XCTL-Programms eingestellt werden (siehe Punkt 8.3 ini-Datei). Die anfängliche Achseneinteilung ergibt sich durch vordefinierte Standardwerte. Im Linescan-Modus wird als Scanachse stets der Omega-Winkel vordefiniert (Abzisse), die Einteilung der Ordinate erfolgt stets logarithmisch skaliert mit 0.1 als Intensitätsminimum und 10000 (Linescan) als Intensitätsmaximum.

6.2 Basisanwendung 2 – Laden von Meßdaten

Wenn ein Linescan- bzw. Areascan-Fenster geöffnet wurde, kann ein Nachladen von Meßdaten bereits durchgeführter Versuche erfolgen.


Menüpunkt zum Nachladen von vorhandenen Meßdaten

In einer Datei abgelegte Meßdaten können über den Hauptfenster-Menüpunkt 'Datei'-> 'Nachladen' geladen werden. Es erscheint eine Standard-Windows-Dialogbox, mit der man eine einzulesende Datei auswählen kann (siehe Punkt 7.4: Daten nachladen).

    Im Linescan-Modus wird die Anzahl der gelesenen Punkte der geladenen Kurve in der Statuszeile angezeigt (leider nur in 30iger Schritten und nicht die genaue Anzahl). Beim erfolgreichen Beenden wird 'Altes Datenfile wurde gelesen' ausgegeben. Im Titel des Fensters werden Name und Verzeichnispfad der Meßdatei angezeigt. Die gewählte Darstellungsart und Intensitätsskalierung werden berücksichtigt und eine entsprechende Darstellung der Meßdaten vorgenommen (vorausgesetzt die geladenen Daten fallen in die gewählte Achs-/Intensitätseinteilung). Die Scanachse wird berücksichtigt, die Minima und Maxima der Scanachse(n) werden aus der Meßdatei übernommen. Die Intensitätsskalierung und Intensitätsminima/Intensitätsmaxima werden entsprechend der Einstellungen in der Dialogbox 'Einstellungen für die Darstellung' dargestellt.

6.3   Basisanwendung 3 - Speichern von Meßdaten

Neben der Möglichkeit eine Meßkurve automatisch direkt während oder sofort nach Beendigung eines Messvorganges zu speichern gibt es zusätzlich noch die Möglichkeit, eine aktuell dargestellte Kurve auch nachträglich noch zu sichern. Dabei muß man grundsätzlich zwischen dem Speichern einer nicht fixierten Kurve (wird im Linescan-Fenster rot dargestellt) und dem Speichern einer fixierten Kurve (wird blau dargestellt) unterscheiden.

    Eine im Scanfenster dargestellte nichtfixierte Kurve läßt sich über den Hauptfenster-Menüpunkt 'Datei' -> 'Sichern' oder 'Sichern unter ...' in einer CRV-Datei ablegen. Wobei beim 'Sichern unter ...' in folgender Dialogbox ein Dateiname einzugeben bzw. auszuwählen ist.

Beim 'Sichern' einer bereits gespeicherten Kurve wird folgende Meldung in der Statusleiste des Hauptfensters angezeigt: 'File wurde bereits gespeichert !'. Wurde die Kurve noch nicht gespeichert, so entspricht der Vorgang dem des 'Sichern unter ...'.

Nun werden die Headerinformationen sowie die Daten in diese Datei gespeichert(siehe 8.2) Anschließend wird dieser neue Dateiname in die Titelleiste des Scanfensters eingetragen.

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

6.4 Basisanwendung 4 – Durchführen eines Stepscan

Nur nachdem gültige Parameter eingegeben wurden (d.h. die Einstellungsdialogbox zum Stepscan wurde bereits aufgerufen, siehe 7.1) und wenn weiterhin gerade kein anderer Scan läuft (dieser müßte vorher unterbrochen werden), kann ein Scanvorgang gestartet werden. Dies geschieht über das Scanfenster-Menü => 'Scan starten' .

Daraufhin wird eine Dialogbox angezeigt, in der man einen Dateinamen auswählen bzw. eingeben kann.

DIALOGBOX

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

    Es folgt eine Messagebox, die über den jeweils gewählten Scanmodus(Standard, Omega-2Theta), die Scanachse, über die die Probe bewegt werden soll, sowie den Bereich, über den die Probe bewegt werden soll, informiert und die Möglichkeit gibt, den Scanstart abzubrechen bzw. fortzusetzen.

MESSAGEBOX

Wurde beim Standard- oder Omega2Theta-Scan in der Einstellungsdialogbox die Speicheroption 'Ständig sichern' oder 'Bei Beenden speichern' aktiviert, so folgt jetzt eine Dialogbox, in der man den Dateinamen eingeben kann, unter dem die Meßwerte des Scans abgelegt werden sollen. Diese Dialogbox erscheint (bei allen Scantypen) auch, wenn sich eine nachgeladene Kurve im Speicher befindet und keine der Speicheroptionen aktiviert wurde. In diesem Fall wird die aktuelle Hauptkurve unter dem gewählten Dateinamen (mit falschen Headerinformationen) abgelegt.

a)Standardscan

Der Motor bewegt sich nun auf die Startposition des Scans. 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 Detektors und falls eingestellt, die des Monitordetektors. Nach erfolgter Messung wird folgender Text in der Statusleiste des Hauptfensters angezeigt. ' Scan ... Winkel = XXX Intensität = YYY verbl. Zeit = ZZZ Min.', wobei XXX die aktuelle Position des Motors ist, YYY die vom Detektor gemessene Intensität an dieser Position (kein Monitor eingestellt) ist, YYY der Quotient aus der vom Detektor gemessene Intensität an dieser Position und der vom Monitordetektor gemessenen Intensität an dieser Position( Monitor eingestellt ) ist, ZZZ die bis zum Ende des Scans verbleibende Zeit ist (Da dieser Wert durch Hochrechnen der Dauer der Messung des ersten Punktes auf die Gesamtzahl der Meßpunkte erfolgt, ist diese Angabe im ersten Schritt sowie bei dynamischer Schrittweitensteuerung falsch).

Anschließend wird über der Motorposition die dazugehörige Detektorintensität ins Koordinatensystem des Linescan-Fensters eingezeichnet und bei aktiviertem 'Ständig sichern' in die ausgewählte Datei geschrieben.

Nun fährt der Motor auf den nächsten Meßpunkt. Dieser entspricht, wenn keine dynamische Schrittweitensteuerung aktiviert ist (siehe 7.1), der aktuellen Motorposition + der eingestellten Schrittweite aus der Einstellungsdialogbox. Bei eingestellter dynamischer Schrittweitensteuerung (siehe 7.1 und 7.3) wird die Schrittweite in Abhängigkeit von der gemessenen Detektorintensität (die bei eingestelltem Monitor mit der Monitorintensität normiert wird) ermittelt. Dabei wird diese Intensität mit dem ersten Wert im ini-File unter '[Scan] Level i ' verglichen und das i ermittelt, für das dieser Wert größer als die gemessene Intensität ist. Anschließend wird die neue Schrittweite aus dem Produkt des zweiten Wertes des Level i und der eingestellten Schrittweite aus der Einstellungsdialogbox gebildet und der nächste Messpunkt (aktuelle Motorposition + neue Schrittweite) angefahren. Am nächsten Meßpunkt angekommen, beginnt die nächste Messung des Detektors und falls eingestellt des Monitordetektors. ...

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 'Scan Ready' angezeigt. 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 so wird jetzt die komplette Kurve in der ausgewählten Datei abgelegt und folgende Meldung ausgegeben.

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.

b)Omega2ThetaScan

Der Omega- und der Thetamotor bewegen sich nun auf die Startpositionen des Scans. Dies wird in der Statusleiste des Hauptfensters durch den Text 'Anfahren der Startposition ...' angezeigt. Haben die Motoren diese Startpositionen erreicht, beginnt die erste Messung des Detektors und falls eingestellt des Monitordetektors. Nach erfolgter Messung wird folgender Text in der Statusleiste des Hauptfensters angezeigt. ' Scan ... Winkel = XXX Intensität = YYY verbl. Zeit = ZZZ Min.', wobei XXX die aktuelle Position des Omegamotors ist, YYY die vom Detektor gemessene Intensität an dieser Position(kein Monitor eingestellt) ist, YYY der Quotient aus der vom Detektor gemessene Intensität an dieser Position und der vom Monitordetektor gemessenen Intensität an dieser Position( Monitor eingestellt) ist, ZZZ die bis zum Ende des Scans verbleibende Zeit ist(Da dieser Wert durch Hochrechnen der Dauer der Messung des ersten Punktes auf die Gesamtzahl der Meßpunkte erfolgt, ist diese Angabe im ersten Schritt sowie bei dynamischer Schrittweitensteuerung falsch).

Anschließend wird über der Omegamotorposition die dazugehörige Detektorintensität ins Koordinatensystem des Linescan-Fensters eingezeichnet und bei aktiviertem 'Ständig sichern' inklusive der Thetaposition in die ausgewählte Datei geschrieben. Nun fahren die Motoren auf den nächsten Meßpunkt. Dieser entspricht, wenn keine dynamische Schrittweitensteuerung aktiviert ist, der aktuellen Motorenpositionen + die eingestellte Schrittweite aus der Einstellungs-Dialogbox. Bei eingestellter Schrittweitensteuerung wird die Schrittweite in Abhängigkeit von der gemessenen Detektorintensität (die bei eingestelltem Monitor mit der Monitorintensität normiert wird) ermittelt. Dabei wird diese Intensität mit dem ersten Wert im ini-File unter '[Scan] Level i ' verglichen und das i ermittelt, für das dieser Wert größer als die gemessene Intensität ist. Anschließend wird die neue Schrittweite aus dem Produkt des zweiten Wertes des Level i und der eingestellten Schrittweite aus der Einstellungsdialogbox gebildet und der nächste Meßpunkt (aktuelle Motorenpositionen + neue Schrittweite) angefahren. Am nächsten Meßpunkt angekommen beginnt die nächste Messung des Detektors und falls eingestellt des Monitordetektors.

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 'Scan Ready' angezeigt. Jetzt fahren der Omegamotor und der Thetamotor auf die Position zurück, auf der er sich vor Beginn des Scans befunden hat. Wenn 'Bei Beenden speichern eingestellt ist so wird jetzt die komplette Kurve in der ausgewählten Datei abgelegt. Bei 'Ständig sichern' wird der Headerteil der Datei aktualisiert. Es werden jeweils dieselben Meldungen wie beim Standardscan(a) ausgegeben.

6.5 Basisanwendung 5 – Durchführen eines Continuousscan

Ähnlich wie beim Stepscan soll auch beim kontinuierlichen Scan der Start eines Scans nur möglich sein, wenn gültige Parameter eingegeben wurden (d.h. die Einstellungsdialogbox kontinuierlicher Scan wurde bereits aufgerufen) und wenn weiterhin kein anderer Scan läuft( dieser müßte vorher unterbrochen werden). Erst wenn diese Bedingungen erfüllt sind wird der entsprechende Menüpunkt anwählbar.

    Dies geschieht über das Scanfenster-Menü => 'kontinuierlichen Scan starten' . Die Bezeichnung dieses Menüpunktes ist abhängig von der zuletzt aufgerufenen Einstellungsdialogbox ( StepScan => 'StepScan starten' / kontinuierlicher Scan => 'kontinuierlichen Scan starten').

    Es erscheint nun die folgende Meldung. An dieser Stelle kann der Start des kontinuierlichen Scans durch Betätigen des 'Nein'-Buttons abgebrochen werden. Um fortzusetzen muß der 'Ja'-Button betätigt werden.

 

Im Anschluß erscheint, unter der Bedingung, daß die Speicheroption 'Bei Beenden speichern' in der Einstellungsdialogbox ausgewählt wurde, jetzt eine Dialogbox wie unter 6.4, in der man den Dateinamen eingeben kann, unter dem die Meßwerte des Scans abgelegt werden sollen.

Nun wird die Probe auf ihre Startposition bewegt, was in der Statusleiste durch die Meldung 'Anfahren der Startposition' dem Nutzer mitgeteilt wird. Hat der Motor seine Startposition erreicht so beginnt der Detektor mit dem Messen und der Motor fährt mit einer konstanten Geschwindigkeit die Endposition an. Nachdem die Messung über einem Meßbereich abgeschlossen wurde erfolgt eine Ausschrift der Form 'Bereich von: XXX bis: YYY Intensität: ZZZ' in der Statuszeile. Gleichzeitig wird diese Intensität über dem Mittelpunkt des gerade durchfahrenen Bereichs in Form einer Kurve in das Linescan-Fenster gezeichnet.

    Dabei steht das XXX für einen Winkelwert, der die Anfangsposition des aktuellen Meßbereichs, YYY für einen Winkelwert, der die Endposition des aktuellen Meßbereichs, ZZZ für die über dem durch XXX und YYY begrenzten Bereich gemessene Intensität angibt.

!!!ACHTUNG!!! Bei der Verwendung eines Motors, der über die Schnittstellenkarte C-832 angesprochen wird, kann es vorkommen, daß die reale Geschwindigkeit des Motors stark von der erwarteten abweicht. In diesem Fall weicht auch die Anzahl der Meßbereiche von der erwarteten Zahl ab. Die grundsätzliche Funktionalität bleibt aber erhalten. !!!ACHTUNG!!!

Nachdem die Probe an der Endposition des kontinuierlichen Scans angelangt ist werden bei aktivierter Speicheroption 'Bei Beenden speichern' nun die Meßwerte in der am Anfang des Scans ausgewählten Datei abgelegt. Anschließend fährt die Probe die Position an, auf der sie sich vor dem Beginn des Scans befunden hat zurück.

7.      Benutzungsoberfläche im Detail

Benutzerschnittstelle

Die Benutzerschnittstelle teilt sich funktionsorientiert. Für Einstellungen vor dem Scan stehen die Dialogboxen 'Einstellungen StepScan', 'Einstellungen ContinuousScan' und 'Einstellungen Dynamische Schrittweite' zur Verfügung. 

7.1 Dialogbox 'Einstellungen StepScan'

Im XCTL-Programm ist ein leeres Linescan-Fenster geöffnet worden, durch klicken mit der rechten Maustaste innerhalb des Fensters wurde ein Untermenu aufgerufen. Über den Menupunkt 'Einstellungen StepScan' kommt man zur Dialogbox 'Einstellungen StepScan'.

Modaldialog 'Einstellungen StepScan'

7.1.1 Steuerung

Die Dialogbox ist mausgesteuert, der Wechsel zwischen den Dialogelementen ist mittels 'Tabulator'-Taste möglich. Das Betätigen von 'Return'-Taste innerhalb der Dialogbox aktiviert das OK-Button. Alle CheckBoxen sind über ShortCuts (de)aktivierbar.

7.1.2 Eingabe/Ausgabe und Prüfung

a) Gruppenfeld :[Scan-Achse]

- [Combobox]:Auswahl der Scan-Achse (Motor)
Über die hier ausgewählte Scan-Achse soll die Probe bewegt werden.
Angezeigt werden alle in der  ini-Datei spezifizierten und physisch verfügbaren Motoren: 
ini-Datei: [Motor i], Name=
-> Der gerade aktive Motor wird vorausgewählt.
Nur bei Standard Scan ist die Auswahl eines Motors möglich. Beim Omega2Theta Scan wird in diesem Element automatisch die Omegaachse ausgewählt und das Dialogelement wird ausgegraut.

- [Textfeld]:Einheit
Dieses nicht durch den Nutzer editierbare Feld zeigt die zum eingestellten Motor zugehörige Einheit an.
-> Wert kommt vom Motor (aus ini-File des akt. Motors)

- [Textfeld]:Minimum
Hier wird die Startposition des ausgewählten Motors für den Scan eingegeben.
-> Wert bei erstem Aufruf der Box auf -100 * Schrittweite des aktuellen Motors
-> 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]
Der Wert muß echt kleiner als das eingegebene Maximum sein.

- [Textfeld]:Schrittweite
Hier wird die Schrittweite, mit der die Probe über den ausgewählten Motor während des Scans bewegt werden soll, eingegeben.
-> Wert bei erstem Aufruf der Box auf  Schrittweite des aktuellen Motors
-> Bei wiederholtem Aufruf der Box werden die Werte vom letzten Aufruf gesetzt
zulässiger Wertebereich:[Werte größer null]

-[Textfeld]:Maximum
Hier wird die Endposition des ausgewählten Motors für den Scan eingegeben.
-> Wert bei erstem Aufruf der Box auf 100 * Schrittweite des aktuellen Motors
-> 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]
Dieser Wert muß echt größer als das eingegebene Minimum sein.

-[Textfeld]:2Theta
In diesem Textfeld kann die Theta-Startposition angegeben werden. Dieses Feld ist ausgegraut, wenn der Standard-Scanmodus ausgewählt ist.
-> Wert bei 1. Aufruf der Box auf 2*Omegastartposition) gesetzt
-> Wert bei wiederholtem Aufruf der Box auf Wert von letztem Aufruf gesetzt
zulässiger Wertebereich:[min. Thetawinkel, min. Thetaschrittweite, Endwert ]
Achtung: Der Endwert ist abhängig von der Anzahl der Schritte des Scans und von der Thetaschrittweite.
Bsp.: gültiger Motorbereich (Theta) (-10.0 bis 10.0), Scan hat 5 Schritte und Thetaschrittweite = 2
==> Endwert = 0.0

b) Gruppenfeld:[Scan-Typ]

- [Combobox]: Auswahl des Scan-Typs
Hier kann die Art des Scans zwischen Standard und Omega2Theta gewählt werden.
-> Beim ersten Aufruf der Box wird Standard vorausgewählt.
-> Bei wiederholtem Aufruf der Box werden die Werte vom letzten Aufruf gesetzt
Der Scan-Typ 'Omega2Theta' läßt sich nur auswählen, wenn sowohl der Omega- als auch der Thetamotor verfügbar ist.

c) Gruppenfeld:[Detektor]

- [Combobox]:Auswahl des Detektors
Hier kann der 0-dimensionale 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.

- [Textfeld]: Zeit ... sec
Zeitintervall in Sekunden, in welchem der Detektor die Impulsrate zählt.
-> Bei erstem Aufruf der Box aus ini-File: [Scan],  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: [Werte größer null ]

- [Textfeld]: Counts
Maximale Impulsrate, die der Detektor zählen darf.
-> Bei erstem Aufruf der Box aus ini-File: [Scan], ExposureCounts=
-> Bei erstem Aufruf der Box und fehlendem Eintrag in ini-Datei auf '10000' setzen
-> Bei wiederholtem Aufruf der Box werden die Werte vom letzten Aufruf gesetzt
- zulässiger Wertebereich: [Wert größer null]

Detektor-Zeit und -Counts sind durch ein log. ODER verknüpft. Bei Erfüllung einer Bedingung erfolgt eine Reaktion.

d) Gruppenfeld:[Monitor-Detektor]
Hier kann man einstellen, ob ein Kontrolldetektor benutzt werden soll oder nicht.
- [Button]:
'Kein Monitor' : keiner ausgewählt
Ansonsten werden die über die  ini-Datei spezifizierten und physisch verfügbaren Detektoren angeboten.

e) Gruppenfeld:[Speicher-Optionen]

- [Checkbox]:Ständig Sichern
Hier kann man einstellen, ob man während des Scans die Meßwerte fortlaufend in einer crv-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ßwerte eines Scans erst nach Beendigung des Scans in einer crv-Datei ablegen möchte.
-> Bei erstem Aufruf der Box aus ini-Datei [Scan], SaveOnReady=
-> Bei erstem Aufruf der Box und fehlendem Eintrag in ini-Datei auf 'markiert' setzen
-> Bei wiederholtem Aufruf der Box werden die Werte vom letzten Aufruf gesetzt

Diese beiden Speicheroptionen sind durch das logische EXKLUSIV-ODER  verknüpft. Bei Aktivierung der einen Option wird automatisch die andere deaktiviert.

-[Textfeld]:Sicherungs-Verzeichnis
Hier kann man den Pfad angeben, in dem die Kurvendateien abgelegt werden soll.
-> Bei erstem Aufruf der Box aus ini-Datei [Scan], 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) Gruppenfeld:[dynamische Schrittweite]

-      [Checkbox]:aktivieren
Hier kann man einstellen, ob man während des Scans die Schrittweite in Abhängigkeit von der aktuell gemessenen Intensität steuern möchte.
-> Beim ersten Aufruf der Box nicht markiert.
-> Bei wiederholtem Aufruf der Box werden die Werte vom letzten Aufruf gesetzt

- [Button]:Einstellungen
Hier läßt sich die Dialogbox 'Einstellungen dynamische Schrittweitensteuerung' (siehe 7.3) aufrufen um dort die genauen Parameter für die Schrittweitensteuerung einzugeben.
Dieser Button ist nur dann aktiv, wenn die Checkbox 'aktivieren' markiert ist.

g) [Aktionsschalter]: Abbrechen

Dialogbox schließen, bereits eingegebene Werte werden verworfen.

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 fehlerhafte Einstellungen werden automatisch geändert:
- 'Maximum' wird nur übernommen, wenn der Wert kleiner oder gleich dem Maximum des Motors ist.
    Sonst wird 'Maximum' auf  (Maximum des Motors) - (Motorschrittweite) gesetzt.
- 'Schrittweite' wird übernommen, wenn der Eintrag größer 0 ist.
   Sonst wird ‚Schrittweite’ auf aktuelle Motorschrittweite gesetzt
- 'Minimum wird übernommen, wenn der Wert größer oder gleich dem Minimum des 
   Motors ist (I) und weiterhin kleiner als der Wert für 'Maximum' ist (II).
   Trifft (II) nicht zu, wird 'Minimum' auf 'Maximum'-10*(Schrittweite des Motors) gesetzt.
     Trifft (I) nicht zu, wird 'Minimum' auf (Minimum des Motors)+10*(Schrittweite des Motors) gesetzt.
- 'Zeit' wird übernommen, wenn der Wert größer 0 ist.
  Sonst auf Wert gesetzt, der beim Öffnen der Dialogbox gesetzt war
- 'Impulse' wird nur übernommen, wenn der Wert größer 0 ist.
  Sonst auf Wert gesetzt, der beim Öffnen der Dialogbox gesetzt war
- 'Sicherungs-Verzeichnis' wird übernommen, wenn der Pfad existiert. Sonst wird der Pfad auf 'C:\\' gesetzt.
- 2Thetaposition außerhalb des Gültigkeitsbereiches für Theta ==> Fehlermeldung 'Bereichsüberschreitung(Theta)'
- Alle weiteren Einstellungen werden ohne weitere Prüfung übernommen.

7.2 Dialogbox 'Einstellungen ContinuousScan'

Im XCTL-Programm ist ein leeres Linescan-Fenster geöffnet worden, durch klicken mit der rechten Maustaste innerhalb des Fensters wurde ein Untermenü aufgerufen. Über den Menupunkt 'Einstellungen ContinuousScan' kommt man zur Dialogbox 'Einstel-lungen ContinuousScan'.

DIALOGBOX:


Modaldialog 'Einstellungen ContinuousScan'

7.2.1 Steuerung

Die Dialogbox ist mausgesteuert, der Wechsel zwischen den Dialogelementen ist mittels 'Tabulator'-Taste möglich. Der Checkbutton 'Bei Beenden speichern' lässt sich durch drücken der Taste B (de)aktivieren. Die Dialogbox schließt sich nach Betätigen des 'OK'-Buttons, bzw. des 'Abbrechen'-Buttons. Falls Bedienfehler auftreten, wird der als falsch erkannte eingegebene Wert wird durch einen Standardwert ersetzt. Durch betätigen des Buttons 'Aktualisieren' werden die Werte für die Felder Geschwindigkeit und Messpunkte neu berechnet und angezeigt.

7.2.2 Eingabe/Ausgabe und Prüfung

a) Gruppenfeld :[Scan-Achse]

- [Combobox]:Auswahl der Scan-Achse (Motor)
Über die hier ausgewählte Scan-Achse soll die Probe bewegt werden.
Angezeigt werden alle in der .ini-Datei spezifizierten und physisch verfügbaren Motoren: .ini-Datei: [Motor i], Name=
-> Der gerade aktive Motor wird vorausgewählt.
Bei Auswahl eines neuen Motors wird in das Feld Einheit die Einheit des neu eingestellten Motors eingetragen.

- [Textfeld]:Einheit
Dieses nicht durch den Nutzer editierbare Feld zeigt die zum eingestellten Motor zugehörige Einheit an.
-> Wert kommt vom Motor (aus ini-File des akt. Motors)

- [Textfeld]:Startpunkt
Hier wird die Startposition (der jeweiligen Motoreinheit) des ausgewählten Motors für den Scan eingegeben. Der Startpunkt gibt den Bereichsanfang des ersten Meßbereiches an.
-> Wert bei erstem Aufruf der Box auf - 100 * Schrittweite des 1. Motors der Motorliste
-> 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]
Der Wert Startposition kann weiterhin ungültig sein, wenn sich durch die Einbeziehung des Beschleunigungsweges zur Startposition ein ungültiger Winkelwert ergibt. Der Beschleunigungsweg ist von der berechneten Geschwindigkeit sowie der Beschleunigung des Motors abhängig.


- [Textfeld]:Geschwindigkeit
Dieses nicht durch den Nutzer editierbare Feld zeigt die Geschwindigkeit (jeweiligen Motoreinheit pro Sekunde ) an, mit welcher der Motor während des Scans bewegt werden muß um den anderen aktuell eingestellten Parametern zu genügen.
-> dieser Wert wird bei jedem Mausklick auf den Aktionsschalter 'Parameter aktualisieren' bzw. bei Auswahl einer anderen Scanachse oder eines anderen Detektors neu berechnet.
Zulässiger Wertebereich: [min. Geschwindigkeit des Motors, max. Geschwindigkeit des
            Motors]

- [Textfeld]:Endpunkt
Hier wird die Endposition (jeweiligen Motoreinheit) des ausgewählten Motors für den Scan eingegeben.
-> Wert bei erstem Aufruf der Box auf + 100 * Schrittweite des 1. Motors der Motorliste
-> Bei wiederholtem Aufruf der Box werden die Werte vom letzten Aufruf gesetzt.
Zulässiger Wertebereich: [min. Winkel des Motors + 1*Schrittweite des Motors,
            Schrittweite des Motors, max. Winkel des Motors- Schrittweite des Motors]
Der Wert Endposition kann weiterhin ungültig sein, wenn sich durch die Einbeziehung des Bremsweges zur Endposition ein ungültiger Winkelwert ergibt. Der Bremsweg ist von der berechneten Geschwindigkeit sowie der Beschleunigung des Motors abhängig.

- [Textfeld]:Meßbereichsgröße
Hier wird die Größe eingegeben, die ein Meßbereich haben soll. Also die Größe eines Winkelbereichs über dem eine Intensitätsmessung durchgeführt werden soll.
-> Wert bei erstem Aufruf 10 * Schrittweite des aktuellen Motors
-> Bei wiederholtem Aufruf der Box werden die Werte vom letzten Aufruf gesetzt.
Zulässiger Wertebereich: [>Schrittweite des Motors]


b)Gruppenfeld:[Sensor]

- [Combobox]:Auswahl des Sensors
Hier kann der 0-dimensionale 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.

-[Textfeld]:Meßzeit ...sec
Hier kann man die Zeit eingeben, während der der Detektor die Impulse für einen Meßbereich zählt.
-> Bei erstem Aufruf der Box aus ini-File: [Scan],  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: [Werte größer null]

-[Textfeld]:Meßpunkte
Dieses nicht durch den Nutzer editierbare Feld zeigt die voraussichtliche Anzahl der Meßpunkte des Scans an.
-> Dieser Wert wird bei jedem Mausklick auf den Aktionsschalter 'Parameter aktualisieren' bzw. bei Auswahl einer anderen Scanachse oder eines anderen Detektors neu berechnet.

c) Gruppenfeld: [Speicher-Optionen]

[Checkbox]: Bei Beenden speichern
Hier kann ausgewählt werden, ob die Meßkurve automatisch nach Beendigung der Messung in dem unter 'Sicherungs-Verzeichnis' angegebenen Pfad als crv-Datei abgespeichert werden soll.
-> Bei erstem Aufruf der Box aus ini-Datei [Scan], SaveOnReady=
-> Bei erstem Aufruf der Box und fehlendem Eintrag in ini-Datei auf 'markiert' setzen
-> Bei wiederholtem Aufruf der Box werden die Werte vom letzten Aufruf gesetzt

d)Aktionsschalter: [Abbrechen]

Dialogbox schließen, bereits eingegebene Werte werden verworfen.

e) 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:
- 'Meßbereichsgröße' wird übernommen, wenn der Wert größer oder gleich min.
   Schrittweite des Motors , sonst wird er auf min. Schrittweite des Motors gesetzt.
- 'Startpunkt' wird übernommen, wenn Wert größer oder gleich dem Minimum und
   kleiner dem Maximum des Motors ist. Er wird sonst auf min. Winkel des  Motors
   gesetzt 
   Dabei muß der Startpunkt auch unter Einbeziehung des Beschleunigungsweges noch   
   einen gültigen Motorwinkel darstellen. Es erscheint eine entsprechende Fehler-
   meldung die den Beschleunigungsweg zu den aktuellen Einstellungen angibt.
- 'Endpunkt' wird übernommen, wenn Wert größer dem Minimum und kleiner oder
   gleich dem Maximum des Motors ist. Außerdem muß der Wert größer als der Wert
   der Startposition sein. Ansonsten werden die Werte Startpunkt und Endpunkt
   vertauscht. Bei Gleichheit der beiden Werte greift das Kriterium unter Meßpunkte.
   Dabei muß der Endpunkt auch unter Einbeziehung des Bremsweges noch   
   einen gültigen Motorwinkel darstellen. Es erscheint eine entsprechende Fehler-
   meldung die den Bremsweg zu den aktuellen Einstellungen angibt.
-'Geschwindigkeit' muß im Bereich der erlaubten Geschwindigkeit liegen (ist dies nicht
   der Fall, erscheint eine entsprechende Fehlermeldung).
-'Meßzeit' wird übernommen, wenn Wert größer 0. Er wird sonst auf 1 gesetzt.
- Meßpunkte wird übernommen, wenn der Wert größer als 0 ist (ist dies nicht der Fall
   erscheint eine entsprechende Fehlermeldung).


f)Aktionsschalter: [Parameter aktualisieren]

Durch Betätigen dieser Taste werden die Werte der Felder 'Geschwindigkeit' und 'Meßpunkte' (in Abhängigkeit von den Werten in den anderen Feldern) aktualisiert.

7.3  Dialogbox 'Einstellungen dynamische Schrittweite'

Die Dialogbox ist über die Dialogbox ‚Einstellungen LineScan’ im Gruppenfeld ‚Dynamische Schrittweite’ über das Button ‚Einstellungen’ erreichbar. Es lässt sich nur anwählen, wenn die Checkbox ’aktivieren’ angewählt wurde.

  

Dialogbox 'Dynamische Schrittweite'
Hinweis: Die 'von'-Werte sind nur in der Parameterdatei 'develop.ini' (s. 8.1) mittels eines Editors änderbar.

Achtung: Die 'von'-Werte müssen die maximale Intensität einschließen, da es sonst zu einem Programmabsturz kommt.

7.3.1 Steuerung

Die Dialogbox ist mausgesteuert. Eine Bestätigung der geänderten Werte innerhalb der Dialogbox ist mittels 'Return'-Taste oder 'OK'-Button möglich. Die Dialogbox schließt sich nach Betätigen des 'OK'-Buttons, bzw. des 'Abbruch'-Buttons.

7.3.2 Eingabe/Ausgabe und Prüfung

a) Gruppenfeld :[Level]
Diese nicht durch den Nutzer editierbaren Felder zeigen eine Numerierung für die einzugebenden Intensitäts- bzw. Verhältniswerte.

b) Textfelder:[von]
Diese nicht durch den Nutzer editierbaren Felder zeigen die Start-Intensitäten, ab denen der angegebene Verhältniswert gelten soll.

c) Textfelder:[bis]
In diesen Feldern werden die Intensitätswerte, bis zu denen der angegebene Faktor gelten soll, eingetragen.
Vorgabe sind beim ersten Aufruf der Dialogbox Werte aus dem ini-File. Die Werte sind aufsteigend sortiert. Default-Werte sind von 1000 bis 10000 in [1000]-Schritten. Bei wiederholtem Aufruf der Dialogbox werden die Werte vom letzten Aufruf gesetzt.

d) Gruppenfeld :[Faktor]
In diesen Feldern werden die Verhältniswerte eingetragen. Vorgabe sind beim erstem Aufruf der Dialogbox Werte aus dem ini-File. Default-Werte sind alle gleich 1. Bei wiederholtem Aufruf der Dialogbox werden die Werte vom letzten Aufruf gesetzt.

e) Aktionsschalter:[Zurücksetzen]
Durch Drücken dieses Button werden die bei Aufruf der Dialogbox eingestellten Werte gesetzt.

f) Aktionsschalter: [Abbrechen]
Dialogbox schließen, bereits eingegebene Werte werden verworfen.

g) 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:

·  ist im Gruppenfeld [Faktor] ein Wert kleiner oder gleich 0, wird er auf 1 gesetzt

·  sind die Intensitätswerte nicht aufsteigend sortiert, werden sie sortiert, dabei wird bei gleichen Intensitätswerten nur der erste genommen, alle weiteren werden auf den jeweils um 1 erhöhten aktuellen maximalen Intensitätswert und deren Verhältniswert auf 1 gesetzt

·  ist im Gruppenfeld [Intensität] ein Wert kleiner 0, wird er auf den jeweils um 1 erhöhten aktuellen maximalen Intensitätswert gesetzt und der Verhältniswert auf 1 gesetzt

7.4 Daten nachladen

Daten eines in einer Datei abgelegten  Linescans können über den Hauptfenster-Menü-punkt 'Datei' -> 'Nachladen...' geladen und im  Linescan-Fenster (Daten eines Linescans - Dateiname '*.crv') dargestellt werden. Dieser Menüpunkt ist nur anwählbar, wenn ein  Linescan-Fenster geöffnet ist. Eine Auswahl der zu ladenden Datei geschieht über folgende Standard-Windows-Dialogbox.

Die Standard-Windows-'Datei öffnen'-Dialogbox.

7.5 Daten speichern

Daten einer im Speicher befindlichen Kurve können in einer Datei abgelegt werden. Dies geschieht über den Hauptfenster-Menüpunkt 'Datei' -> 'Sichern...' bzw. 'Sichern unter...'. Die Extension für die Dateien ist *.crv. Dieser Menüpunkt ist nur anwählbar, wenn ein  Linescan-Fenster geöffnet und eine Kurve im Speicher ist. Eine Auswahl eines Dateinamens der zu speichernden Datei geschieht über folgende Standard-Windows-Dialogbox.

Die Standard-Windows-'Datei speichern'-Dialogbox.

8.      Dateien

8.1 ini-Datei

Erforderlich ist der Scan-Abschnitt in der develop.ini-Datei mit zahlreichen Parametern. Dies soll an einem Beispiel erläutert werden:

Beispiel:

[Scan]
DataPath=C:\DATA\
ExposureTime=1.00
ExposureCounts=150000
xo=18
yo=61
dx=694
dy=662
SaveOnReady=1
 Level 0 2000 2
Level 1 3000 1.5
Level 2 4000 1.4
Level 3 5000 1.3
Level 4 6000 1.2
Level 5 8000 1.1
Level 6 10000 1
Level 7 12000 0.9
Level 8 16000 0.8
Level 9 20000 0.7
Level 10 25000 0.5

Erklärung:

8.2 crv-Datei

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:

a) Stepscan

Beispiel:

Comment=Diffraktometrie-Meßplatz
[Header]
User=Gartstein
Date=15.05.2000 Time=17:42:08
DataOffset=1000
Point_Number=21
FileType=Standard
Target=1445  Reflection=[000] Orientation=[001]
ArgumentMin=-10.00  ArgumentWidth=1.000 ArgumentMax=10.00
WaveLength=1.540 Current=25  HV=30
TimePerScan=1.00
[Data]
-9.998   530.2849   0.0000
-8.999   628.6367   0.0000
-7.995   849.3754   0.0000
-6.996   1173.1509   0.0000
-5.998   1869.6578   0.0000
-4.999   3324.6497   0.0000
-3.995   6308.4224   0.0000
-2.996   11779.9170   0.0000
-1.997   18131.5430   0.0000
-0.999   21413.2988   0.0000
0.000   22541.0898   0.0000
1.004   23267.3555   0.0000
2.003   20869.2754   0.0000
3.002   13469.2734   0.0000
4.000   6937.8330   0.0000
5.005   3470.7600   0.0000
6.004   1964.4679   0.0000
7.002   1231.4954   0.0000
8.001   886.4710   0.0000
9.005   617.1450   0.0000
10.004   499.9311   0.0000

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.
- 'DataOffset' gibt an, ab welchem Byte die Kurvendaten in der Datei stehen. Der Wert ist vom Programm auf 1000 festgesetzt.
- 'Point_Number' gibt die Anzahl der Punkte der Kurve an.
- 'FileType' -> siehe unter b)
- 'Target', 'Reflection' und 'Orientation' werden aus 'Einstellungen' => 'Programm' unter 'Angaben zur Probe' übernommen.
-   'ArgumentMin', 'ArgumentWidth', 'ArgumentMax' enthalten die Werte für Minimum, Schrittweite, Maximum des verwendeten Motors.
-    'WaveLength', 'Current', 'HV' werden aus dem 'Einstellungen' => 'Programm' unter 'Betriebsparameter' übernommen.
-   ‚TimePerScan' enthält die Meßzeit pro Schritt.
-    Es folgt der Abschnitt [Data], der folgende Einträge enthält:
Jede Zeile enthält die Informationen eines Punktes, bestehend aus 3 Werten: dem Winkel, der Intensität und der Z-Koordinate.
Der Z-Wert ist immer 0, außer - bei Verwendung eines Monitors (die gemessene Monitorintensität) oder beim Omega2ThetaScan (der zugehörige Thetawinkel)

b) Continuousscan

Zunächst alles wie unter a)

Zum FileType:

 - 'FileType': Dieser Wert gibt den Typ der Meßdatei an.
   + FileType=Continuous bei Meßdatei die durch kontinuierlichen Scan erstellt wurde.
Weitere mögliche Werte in *.crv - Dateien sind :
   + FileType=Omega2Theta bei Meßdatei die durch einen StepScan im Omega2Theta-Modus erstellt wurde.
   + FileType=Standard bei Meßdatei die durch einen StepScan im Standard-Modus oder durch Zerlegen einer Datenbasis erstellt wurde.
   + FileType=Aquisition bei Meßdatei die durch einen Schnitt durch eine Bitmap erstellt wurde (siehe Areascan Datenerhebung).
   + FileType=Comparison bei Meßdatei in der eine fixierte Kurve gespeichert wurde.

Der Rest des Header wie unter a)

Es folgt der Abschnitt [Data], der folgende Einträge enthält:
- Jede Zeile enthält die Informationen eines Bereiches, bestehend aus 3 Werten: der Bereichsstartposition, der Bereichsendposition , der Intensität die über diesem Bereich gemessen wurde.

8.3 bk-Datei

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]
-9.998   530.2849   0.0000
-8.999   628.6367   0.0000
-7.995   849.3754   0.0000
-6.996   1173.1509   0.0000
-5.998   1869.6578   0.0000
-4.999   3324.6497   0.0000
-3.995   6308.4224   0.0000
-2.996   11779.9170   0.0000
-1.997   18131.5430   0.0000
-0.999   21413.2988   0.0000
0.000   22541.0898   0.0000
1.004   23267.3555   0.0000
2.003   20869.2754   0.0000
3.002   13469.2734   0.0000
4.000   6937.8330   0.0000
5.005   3470.7600   0.0000
6.004   1964.4679   0.0000
7.002   1231.4954   0.0000
8.001   886.4710   0.0000
9.005   617.1450   0.0000
10.004   499.9311   0.0000

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 Winkel, der Intensität und der Z-Koordinate.
- Der Z-Wert ist immer 0, außer - bei Verwendung eines Monitors (die gemessene Monitorintensität) oder
- beim Omega2ThetaScan (der zugehörige Thetawinkel)

!! Beim Continuousscan sind im [Data] - Abschnitt in der 1. Spalte die Bereichsmittelpunkte der jeweiligen Bereiche, in der 2. Spalte die Intensitäten über diesen Bereichen und in der 3. Spalte die Endpunkte der jeweiligen Bereiche abgelegt.

8.4 andere Meßwertdateien

Dieser Punkt soll hier nur der Vollständigkeit halber erwähnt werden. Es existieren 'dtn-Dateien' (siehe Dokument: 'Benutzer-Leitfaden für Basisanwendung – Diffraktometrie/Reflektometrie Darstellung von Messergebnissen ') die im Areascan-Fenster erstellt werden und im Linescan-Fenster betrachtet werden können.

9.      Verwandte Dokumente

·          Diffraktometrie/Reflektometrie – Benutzerleitfaden für Basisanwendung – Diffraktometrie / Reflektometrie Darstellung von Messergebnissen
·          Verhaltensspezifikation Diffraktometrie/Reflektometrie - Linescan, Areascan
·          Verhaltensspezifikation Ausgangssystem - Hauptfunktion: Diffraktometrie/Reflektometrie - Teilfunktion: grafische Darstellung der Messergebnisse
·          Verhaltensspezifikation überarbeites System - Hauptfunktion: Diffraktometrie/Reflektometrie - Teilfunktion: grafische Darstellung der Messergebnisse
·          Quellen des XCTL-Steuerprogramms
·          WWW-Seiten des Instituts für Informatik Humboldt-Universität zu Berlin zum Projekt Software Sanierung: http://www.informatik.hu-berlin.de/ Institut/struktur/softwaretechnikII/lehre/PROJ_SE_WS98/index.html

10. Glossar

Kurve
Eine Kurve ist eine Folge von Tripeln (x,y,z), wobei x die Motorposition bzw. das Zentrum eines Motorbereichs, y die an dieser Motorposition bzw. über dem Bereich gemessene Intensität und z eine Zusatzinformation (z.B. die Monitorintensität), die nicht im Linescan-Fenster dargestellt wird, angibt. Die Messungen während eines Linescans werden in einer solchen Struktur abgelegt.

Dynamische Schrittweitensteuerung
Die dynamische Schrittweitensteuerung ist ein Mechanismus, der es erlaubt, während des laufenden Stepscans die Schrittweite zum nächsten Meßpunkt abhängig von der gerade gemessenen Detektorintensität festzulegen. Dadurch ist es möglich einen für die Auswertung besonders wichtigen Bereich (z.B. den Peak) genauer und unwichtige Bereiche nur grob zu betrachten.

Linescan
Linescan ist als Oberbegriff des Stepscan und des Continuousscan zu verstehen. Unter diesem Begriff sind die Scanabläufe zusammengefasst, bei denen ein 0-dimensionaler Detektor nur über eine Achse oder gleichzeitig über Omega und Theta bewegt wird. Ergebnis eines Linescans ist immer eine Kurve.

Stepscan
Stepscan bezeichnet den Linescan-Vorgang, bei dem ein Objekt schrittweise über eine Achse oder gleichzeitig über Omega und Theta bewegt wird und bei dem dann jeweils nach jedem Schritt eine neue Messung an dieser festen Motorposition durchgeführt wird.
Die dargestellte Kurve zeigt die Intensitäten über der jeweiligen Motorpositionen abgetragen.

Continuousscan
Continuousscan bezeichnet den Linescan-Vorgang, bei dem ein Objekt kontinuierlich von einem Startpunkt zu einem Endpunkt über eine Achse bewegt wird und bei dem während der Bewegung des Motors der Detektor eine Messung über äquidistanten Bereichen durchführt. Die dargestellte Kurve zeigt die Intensitäten der jeweiligen Bereiche über deren Mittelpunkten abgetragen.

Omega2Theta-Modus
Der Omega2Theta-Modus ist ein spezieller Modus des Stepscan, bei dem die Probe über die Omegaachse bewegt wird. Zusätzlich zur Omegabewegung wird in jedem Schritt aber auch die Thetaachse um den doppelten Wert der Omegaschrittweite bewegt.

Standard-Modus
Der Standard-Modus ist ein Modus des Stepscan, bei dem die Probe ausschließlich über eine Achse bewegt wird.


Anhang


Dialog- und Meßfenster in Englisch