Verhaltensspezifikation (Pflichtenheft RTK-Steuerprogramm)
Hauptfunktion: Diffraktometrie/Reflektometrie
Teilfunktion: Einstellungen und Ablauf beim LineScan
Dokumentversion: | 2.1 (letzte Änderung: 9. Januar 2001) |
Autor: | J. Ullrich, S.Berndt |
Änderungen: | Anpassen des Dokumentes gemäß der Vereinbarungen vom Projektgruppentreffen (13.12.2000) |
Zustand: | in Bearbeitung |
Gliederung
1. Überblick
2. Funktionale Beschreibung
2.1 Einstellungen
2.1.1 StepScan im Standard-Modus
2.1.2 StepScan im Omega2Theta-Modus
2.1.3 Sichern von StepScan-Kurven
2.1.4 Verwenden eines Kontroll-Detektors
2.1.5 ContinuousScan
2.1.6 Start und Beenden der Teilfunktionen
2.2 Ablauf des StepScan
2.2.1 Start eines Scans
2.2.2 Unterbrechen eines Scans
2.2.3 Fortsetzen eines Scans
2.3 Sonstige Funktionen
2.3.1 Kurve laden
2.3.2 Kurve speichern
2.3.3 Kurve löschen
2.3.4 Kurve fixieren
2.4 Start und Beenden der Teilfunktion(Fenster)
2.4.1 Start der Teilfunktion(Fenster)
2.4.2 Beenden der Teilfunktion(Fenster)
3. Daten
3.1 Benutzerschnittstelle
3.1.1 Dialogbox ,Einstellungen StepScan'
3.1.1.1 Steuerung
3.1.1.2 Eingabe/Ausgabe und Prüfung
3.1.2 Dialogbox ,Einstellungen ContinuousScan'
3.1.2.1 Steuerung
3.1.2.2 Eingabe/Ausgabe und Prüfung
3.2 Dateien
3.2.1 ini-Datei
3.2.2 crv-Dateien
3.2.3 bk-Dateien
4. Testfälle
5. Fehler
6. Änderungswünsche
7. Offene Fragen
8. Anmerkungen
9. Verwandte Dokumente
10. Glossar
Die Teilfunktion 'Einstellungen und Ablauf des StepScan' 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 StepScan alle dafür relevanten Angaben
eingebbar.
Mit der Teilfunktion 'Ablauf des StepScan'
- 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.
Mit der Teilfunktion 'Sonstige Funktionen' können Kurven
- geladen, gespeichert und gelöscht werden,
- fixiert werden, sowie fixierte Kurven gespeichert und gelöscht
werden.
2.1.1 StepScan im Standard-Modus
DIALOGBOX:
Es wird eine Probe über eine Achse 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 0-dimensionalen Detektors gemessen. Diese über dem jeweiligen Winkel abgetragene Intensität wird in Form einer Kurve dargestellt.
Im Einzelnen werden eingestellt:
- Der Scan-Typ: Standard.
- Der Motor ('Scan-Achse'), über die die Probe bewegt wird mit
dem Start-, Endwinkel und der Schrittweite.
- 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:
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 in jedem Omega-Schritt ein 0-dimensionale Detektor
um 2 Theta-Schritte über die Theta-Achse bewegt. Die in jedem Omega-Schritt
von der Probe reflektierte Röntgenstrahlung wird mit diesem Detektor
gemessen und wird bezüglich der Omega-Winkel als Kurve abgetragen.
Im Einzelnen werden eingestellt:
- Der Scan-Typ: Omega2Theta
- Den Start-, Endwinkel und die Schrittweite des Omega-Motors.
- 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:
DIALOGBOX wie unter 2.1.1
Beim Standard- sowie Omega2Theta-Scan kann man die Kurven während
der Messung Punkt für Punkt oder am Ende der Messung in einer Datei
ablegen('Speicher-Optionen'). Dabei werden zusätzlich Informationen
zur Messung in der Datei gespeichert.
Im Einzelnen werden eingestellt:
- Ständig Sichern (CheckBox: An/Aus)
- Bei Beenden speichern (CheckBox: An/Aus)
- Sicherungs-Verzeichnis für die Kurven-Dateien
Erforderliche Parameter:
DIALOGBOX wie unter 2.1.1
Um verfälschte Intensitätsmessungen aufgrund eines nichtkonstanten
Röntgenstrahls Rechnung zu tragen, ist es möglich, beim Standard-
sowie Omega2Theta-Scan einen zweiten Detektor als Monitor-Detektor zu benutzen,
der in jedem Schritt die Intensität der Röntgenquelle mißt.
Im Einzelnen werden eingestellt:
- Monitor-Signal (CheckBox: An)
- Monitor-Signal-Button zur Auswahl eines Kontroll-Detektors
Erforderliche Parameter:
DIALOGBOX:
In diesem Modus wird die Probe von einem Startpunkt beginnend über
eine Achse mit einer bestimmten Geschwindigkeit bewegt. Während dieser
kontinuierlichen Bewegung der Probe wird eine bestimmte Zahl von Messungen
der reflektierten Strahlung mit einem 0-dimensionalen Detektor über
eine bestimmte Zeit durchgeführt. Der Bereich, über den die Probe
bezüglich der Achse bewegt wird, ergibt sich aus der Anzahl der Messungen,
der Zeit pro Messung und der Geschwindigkeit, mit der die Probe bewegt
wird.
Der Continuous Scan ist sinnvoll als Übersichtsscan, zum Anschauen
der Strukturen und um Peaks zu erkennen.
Im Einzelnen werden eingestellt:
- Der Motor ('Scan-Achse'), über den die Probe bewegt wird mit
dem Startwinkel und der Geschwindigkeit des Motors.
- Der Detektor('Sensor') zum Messen des reflektierten Röntgenstrahls.
Die Meßzeit gibt an, wie lange der Detektor die Impulse für
einen Meßpunkt zählt.
- Die Anzahl der Meßpunkte der Messung.
Erforderliche Parameter:
2.1.6 Start und Beenden der Teilfunktionen
Nur nachdem gültige Parameter eingegeben wurden (d.h. eine
der Einstellungsdialogboxen wurde bereits aufgerufen) 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'
DIALOGBOX
Daraufhin wird eine Dialogbox angezeigt, in der man einen Dateinamen auswählen bzw. eingeben kann.(#Fehler:10)
MESSAGEBOX
Wird diese Dialogbox verlassen ohne einen Dateinamen anzugeben bekommt
die Datei automatisch den Namen 'SCANXXX.crv'. Wobei XXX für die kleinste
nicht neg. 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
Scan-modus(Standard,Omeg2Theta, Continuous), die Scanachse über 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. fortsetzen.
a) StandardScan
Anschließend wird über der Motorposition die dazugehörige
Detektorintensität ins Koordinatensystem des StepScanfensters 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, der aktuellen Motorposition + der eingestellten Schrittweite aus der
Einstellungsdialogbox. 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 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
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 komplete 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(2.2.1
a)) ausgegeben.
c)ContinuousScan --> siehe 2.1.5
DIALOGBOX
Bei einer Datei wird der Ladevorgang abgebrochen, wenn der Headerteil
der Datei weniger als 100 Byte enthält, die [Header]-marke nicht existiert,
oder (bei einer CRV-Datei) in den Headerinformationen ein Filetyp<>1
eingetragen ist. Folgende Fehlermeldung wird ausgegeben:
MESSAGEBOX
Außerdem wird das Nachladen abgebrochen, wenn keine Meßwerte
hinter der [DATA]-marke folgen.
DIALOGBOX wie unter 2.2.1
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 ...'.
b) fixierte Kurve
b) fixierte Kurve
Ein Linescanfenster kann über den Hauptfenster-Menüpunkt 'Öffnen'
-> 'Scan-Fenster' geöffnet werden. Dies ist nur möglich, wenn
nicht bereits ein anderes Scanfenster geöffnet ist oder die Anzahl
der geöffneten RTK-Fenster kleiner als 5 ist. Dabei werden die im
[Scan]-Abschnitt des Ini-Files befindlichen Parameter eingelesen bzw. wenn
nicht vorhanden auf ihre Defaultwerte gesetzt. Anschließend wird
das Scanfenster an die im Ini-File (siehe 3.2.1) angegebene Position gezeichnet.
In das Scanfenster wird ein Koordinatensystem gezeichnet(siehe Pflichtenheft
'Bildnerische Darstellung'). Außerdem wird der Ausdruck 'untitled.crv'
in die Titelleiste des Fensters eingetragen. Die Funktionen unter 2.3.1
bis 2.3.4 lassen sich nur anwählen,wenn ein Scanfenster geöffnet
ist. Nach dem Öffnen eines Scanfensters läßt sich das Scanfenstermenü
durch betätigen der rechten Maustaste an der aktuellen Position des
Mauszeigers aufrufen.
- Die Dialogbox ist mausgesteuert.
- [Combobox]:Auswahl der Scan-Achse (Motor)
- [Textfeld]:Einheit
- [Textfeld]:Minimum
- [Textfeld]:Schrittweite
-[Textfeld]:Maximum
b) Gruppenfeld:[Scan-Typ]
- [Combobox]: Auswahl des Scan-Typs
c) Gruppenfeld:[Detektor]
- [Combobox]:Auswahl des Detektors
- [Textfeld]: Zeit ... sec
- [Textfeld]: Counts
Detektor-Zeit und -Counts sind durch ein log. ODER verknüpft. Bei
Erfüllung einer Bedingung erfolgt eine Reaktion.
d) Gruppenfeld:[?]
- [Checkbox]:Monitor-Signal
- [Button]:?
e) Gruppenfeld:[Speicher-Optionen]
- [Checkbox]:Ständig Sichern
-[Checkbox]:Bei Beenden speichern
-[Textfeld]:Sicherungs-Verzeichnis
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:
3.1.2 Dialogbox ,Einstellungen ContinuousScan'
DIALOGBOX
- Die Dialogbox ist mausgesteuert.
a)Gruppenfeld :[Scan-Achse]
- [Combobox]:Auswahl der Scan-Achse (Motor)
- [Textfeld]:Einheit
- [Textfeld]:Startpunkt
- [Textfeld]:Geschwindigkeit
b)Gruppenfeld:[Sensor]
- [Combobox]:Auswahl des Sensors
-[Textfeld]:Meßzeit ... sec
-[Textfeld]:Meßpunkte
c) Aktionsschalter: [Abbrechen]
Dialogbox schließen, bereits eingegebene Werte werden verworfen.
??
d) 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 event.
werden einige Einstellungen automatisch geändert:
[Scan]
Erklärung:
Die Meßwertreihen werden in folgendem Dateiformat abgelegt:
Beispiel:
Erklärung:
Fixierte Kurven werden in folgendem Format gespeichert:
Beispiel:
Erklärung:
Folgende Abläufe beinhalten eine minimale Überdeckung der
Funktionalitäten von LineScan und AreaScan. Dabei wurde auf den Test
der fehlerhaften Funktionalitäten (ContinuousScan, External sync.)
verzichtet.
Bei allen Fehlern siehe auch die Fehlerliste.
Nach dem Durcharbeiten des Dokuments Diffraktometrie/Reflektometrie-Gesamtvorgang,
Analyse des RTK-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 Pflichtenheft der Topograhie.
dynamische Schrittweitensteuerung
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
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
Anschließend wird über der Omegamotorposition die dazugehörige
Detektorintensität ins Koordinatensystem des StepScanfensters eingezeichnet
und bei aktiviertem 'Ständig sichern' inclusive 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 Einstellungsdialogbox. 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. ...
Ein laufender Scan kann unterbrochen werden. Dies geschieht entweder
über den Hauptfenster-Menüpunkt 'Ausführen'->'Messung unterbrechen'
oder durch drücken der ESC-Taste. Daraufhin wird der Motor gestoppt.
Bei einem Standard- oder Omega2ThetaScan erscheint in der Statusleiste
die Meldung 'Messung wurde unterbrochen'. 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 Scan gestartet
werden (der Menüpunkt 'Scan starten' ist wieder aktiv).
Bei einem ContinuousScan erscheint in der Statusleiste keine Meldung
und der Scan kann auch nicht fortgesetzt werden. Der Menüpunkt 'Messung
unterbrechen' wird nicht geändert... --> siehe 2.1.5
Ein unterbrochener Standard- bzw. Omega2ThetaScan 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.
!Achtung! Wenn der Motor während der unterbrochenen Messung
bewegt wurde, so wird ab einer falschen Position weitergemessen.
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'.
Ein ContinuousScan kann nicht fortgesetzt werden.
Eine in einer Datei abgelegte Meßkurve (Formate '.bk/.crv')
kann über den Hauptfenster-Menüpunkt 'Datei' -> 'Nachladen...'
geladen und im Scanfenster dargestellt werden.Dieser Menüpunkt ist
nur anwählbar, wenn ein StepScanfenster geöffnet ist. Eine Auswahl
der zu ladenden Datei geschieht über folgende Dialogbox.
Zunächst werden folgende Headerinformationen in die allgemeinen
Einstellungen übernommen(nur bei CRV):
Während die Meßwerte geladen werden, erfolgt alle 30 Meßwerte
folgende Ausgabe in die Statusleiste 'Points : X' wobei X die Anzahl der
schon geladenen Meßpunkte angibt. Nachdem alle Meßpunkte geladen
wurden, wird die Kurve in das auf diese Kurve angepaßte Koordinatensystem
des Stepscan-Fensters gezeichnet. Eine eventuell im Scanfenster gezeichnete
Kurve wird gelöscht, sofern sie nicht fixiert wurde. Der Dateiname
der geladenen Datei wird nun in die Titelleiste des Stepscan-Fensters eingetragen.
a) Hauptkurve
Eine im Scanfenster dargestellte 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.
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 Scanfensters eingetragen.
Eine fixierte Kurve läßt sich über das Scanfenstermenü
'Scan' -> 'Speichern' in einer über eine Dialogbox (wie unter a))
ausgewählten Datei im BK-Format ablegen. Nun werden die Headerinformationen
sowie die Daten in diese Datei gespeichert(siehe 3.2.3)
a) Hauptkurve
Eine Hauptkurve läßt sich über das Hauptfenstermenü
'Datei' -> 'Neu' löschen. Dabei wird die Kurve aus dem Scanfenster
entfernt und die Titelleiste erhält den Eintrag 'untitled.crv'.
Eine fixierte Kurve läßt sich über das Scanfenstermenü
'Scan' -> 'Löschen' löschen. Dabei wird die fixierte Kurve aus
dem Scanfenster entfernt.
Eine Hauptkurve läßt sich fixieren, um so die Möglichkeit
zu haben sie direkt mit anderen Kurven im Scanfenster vergleichen zu können.
Dabei wird eine bereits fixierte Kurve gelöscht. Diese Funktion wird
über das Scanfenstermenü 'Scan' -> 'Fixieren' aufgerufen. Diese
Kurve wird aber erst bei Start eines neuen Scans bzw. nach dem Laden einer
Kurve farblich als fixiert gekennzeichnet( blau ).Sie bleibt solange fixiert,
bis sie gelöscht wird(siehe 2.3.3 b)) oder eine andere Kurve fixiert
wird.
FENSTER
Ein StepScanfenster läßt sich nur über das 'x'-Symbol
in der Titelleiste des Scanfensters schließen. Ein gerade laufender
Scan wird abgebrochen. Wenn sich im Fenster eine Hauptkurve befindet, die
noch nicht gespeichert wurde, so 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).
- 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.
a) Gruppenfeld :[Scan-Achse]
Ü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.
Dieses nicht duch den Nutzer editierbare Feld zeigt die zum eingestellten
Motor zugehörige Einheit an.
--> Wert kommt vom Motor (aus ini-File des akt.Motors)
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.
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 ungleich null]
Hier wird die Endposition des ausgwä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]
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.
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.
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: [Wert ungleich null ]
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 ungleich null]
Hier kann man einstellen, ob ein Kontrolldetektor benutzt werden soll
oder nicht.
--> Beim ersten Aufruf der Box nicht markiert.
--> Bei wiederholtem Aufruf der Box werden die Werte vom letzten Aufruf
gesetzt
Läßt sich nur aktivieren, wenn ein Detektor zur Verfügung
steht.
Hier läßt sich ein Monitordetektor auswählen.
Durch anklicken dieses Buttons wählt man nach dem Rotationsprinzip
einen in der .ini-Datei spezifizierten und physisch verfügbaren
Detektor.
Der Button erhält jeweils den Namen des aktuellen Monitors.
-->
Dieser Button ist nur dann aktiv, wenn die Checkbox 'Monitor-Signal'
markiert ist.
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
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
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]
- '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.
- 'Schrittweite' wird übernommen, wenn der Eintrag ungleich 0
ist. (#Fehler:08)
- '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 ungleich 0 ist. (#Fehler:08)
- 'Impulse' wird nur übernommen, wenn der Wert ungleich 0 ist.
(#Fehler:08)
- '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.1 Steuerung
- Der Wechsel zwischen den Dialogelementen ist mittels TAB möglich.
- Das Drücken von Return innerhalb der Dialogbox aktiviert das
OK-Button.
Ü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 werden alle Felder außer Meßzeit
auf die jeweiligen Defaultwerte gesetzt.
Dieses nicht duch den Nutzer editierbare Feld zeigt die zum eingestellten
Motor zugehörige Einheit an.
--> Wert kommt vom Motor (aus ini-File des akt.Motors)
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]
Hier kann man die Geschwindigkeit eingeben, mit der die Probe während
des Scans bewegt werden soll.
--> Beim ersten Aufruf der Box wird Geschwindigkeit des aktuellen Motors
gesetzt.
--> Bei wiederholtem Aufruf der Box werden die Werte vom letzten Aufruf
gesetzt
zulässiger Wertebereich[keine Einschränkung]
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.
Bei Auswahl eines neuen Sensors werden alle Felder außer Meßzeit
auf die jeweiligen Defaultwerte gesetzt.
Hier kann man die Zeit eingeben, während der der Detektor die
Impulse für einen Meßpunkt 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 ungleich null]
Hier kann man die Anzahl der Meßpunkte des Scans eingeben.
--> Beim ersten Aufruf der Box auf 100 gesetzt
--> Bei wiederholtem Aufruf der Box werden die Werte vom letzten Aufruf
gesetzt
zulässiger Wertebereich[Werte ungleich null]
- 'Meßpunkte' werden übernommen, wenn der Wert ungleich
0, sonst wird er auf 10 gesetzt.
- 'Startpunkt' wird übernommen, wenn Wert größer oder
gleich dem Minimum des Motors ist. Er wird sonst auf (akt. Winkel des
Motors)-30 gesetzt.
- 'Geschwindigkeit' wird ohne Prüfung übernommen.
- 'Meßzeit' wird übernommen, wenn Wert ungleich 0.
DataPath=C:\DATA\
ExposureTime=1.00
ExposureCounts=150000
Failure=0.02
xo=18
yo=61
dx=694
dy=662
SaveOnReady=1
DynamicStepWidth=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
Level a b c
Comment=Diffraktometrie-Meßplatz
[Header]
User=Gartstein
Date=15.05.2000 Time=17:42:08
DataOffset=1000
Point_Number=21
FileType=1
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
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' Der Wert ist vom Programm auf 1 festgesetzt.
- '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)
[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
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)
Testabläufe
Die Fehlernummern entsprechen den Nummern der Fehlerliste.
7. Offene Fragen
Neuerungen zur Version 2.0:
9. Verwandte Dokumente
10. Glossar
Kurve
Eine Kurve ist eine Folge von Tripeln (x,y,z), wobei x die Motorposition,
y die an dieser Motorposition gemessene Intensität und z eine Zusatzinformation
(z.B. die Monitorintensität), die nicht im LineScanfenster dargestellt
wird, angibt. Die Messungen während eines LineScans werden in einer
solchen Struktur abgelegt.
Die dynamische Schrittweitensteuerung ist ein Mechanismus, der es erlaubt,
während des laufenden Scans 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.