Pflichtenheft XCTL-Steuerprogramm

Hauptfunktion: Diffraktometrie/Reflektometrie
Teilfunktion: Einstellungen und Ablauf beim LineScan
Erweiterung: Dynamische Schrittweite

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



Gliederung

1. Überblick
2. Funktionale Beschreibung
3. Daten
3.1. Benutzerschnittstelle
3.2. Dateien
4. Qualitätsbestimmung
5. Anmerkungen
6. Verwandte Dokumente
7. Testfälle
8. Glossar

1. Überblick

Die dynamische Schrittweiten-Steuerung ist als eine Teilfunktion der Diffraktometrie/Reflektometrie in das Programm zu integrieren. Sie findet beim StepScan, einer Teilfunktion des LineScan Anwendung. Die Funktion dient zu einer variablen Schrittweitenbestimmung während der Messung in Abhängigkeit von der gerade gemessenen Intensität. So lassen sich interessante Intensitätsbereiche genauer betrachten, während weniger interessante Bereiche schneller übergangen werden.
Diese Funktionalität ist bereits implementiert, sie läßt sich aber bisher nur über Einstellungen im ini-File aktivieren. Den Anwendern der Software war diese Funktion bisher unbekannt.

2. Funktionale Beschreibung

2.1. Einstellungen

DIALOGBOX



Das Aktivieren eines StepScans mit dynamischer Schrittweitensteuerung erfolgt in der StepScan-Einstellungsdialogbox durch das Markieren der Checkbox 'aktivieren' innerhalb des Gruppenfeldes 'dynamische Schrittweite'. Erst nach erfolgter Auswahl dieser Checkbox ist es nun möglich die Werte für die Schrittweitensteuerung einzugeben, da erst jetzt der bis zu diesem Zeitpunkt ausgegraute Einstellungen-Button anwählbar wird.

In dieser Einstellungsbox können maximal 10 verschiedenen Intensitätswerten Verhältniswerte zugeordnet werden. Dabei ist zu beachten, daß die Intensitätswerte aufsteigend sortiert sein müssen.

Einzustellende Parameter:

2.2. Ablauf

Es wird für einen StepScan wie bisher eine Schrittweite festgelegt. Wird die dynamische Schrittweiten-Steuerung vor der Messung aktiviert, dies geschieht über eine CheckBox im Einstellungsfenster für den StepScan, wird immer nach der Aufnahme eines Messwertes der nächste anzufahrende Messpunkt anhand einer Schrittweiten-Berechnung bestimmt. Die Schrittweite ermittelt sich hierbei aus der für die Messung vorgegebenen Schrittweite und einem Verhältniswert in Abhängigkeit von der zuletzt gemessenen Intensität:

Dazu werden die in der Einstellunsbox für die dynamische Schrittweiten-Steuerung durchgegangen und wenn ein Intensitätswert größer ist als die zuletzt gemessene Intensität wird der zugehörige Verhältniswert für die Berechnung des nächsten Schrittes benutzt.
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
Die Angabe der verbleibenden Messzeit während der Messung entfällt im Gegensatz zum normalen StepScan, da sie nicht eindeutig zu bestimmen ist.

3. Daten

3.1 Benutzerschnittstelle

3.1.1 Dialogbox 'Einstellungen StepScan'

DIALOGBOX

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.
  • 3.1.2.2 Eingabe/Ausgabe und Prüfung

    Es gilt zunächst das selbe wie zur Dialogbox im Pflichtenheft zum LineScan beschrieben. Hinzu kommt:

    a)[Gruppenfeld]:Dynamische Schrittweite

    [Checkbox]: aktivieren
    - bei erstmaligem Aufruf der Dialogbox abhängig von Eintrag im Ini-File
    - bei wiederholtem Aufruf werden die Einstellungen vom vorigen Aufruf gesetzt

    [Button]:Einstellungen
    - hier erscheint eine Dialogbox, in der Einstellungen zur dynamischen Schrittweite vorgenommen werden können
    - Button ist nur bei aktivierter Checkbox 'aktivieren' auswählbar

    3.1.2 Dialogbox 'Dynamische Schrittweite'

    DIALOGBOX

    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 das OK-Button.
  • 3.1.2.2 Eingabe/Ausgabe und Prüfung

    a) Gruppenfeld :[Level]
    Diese nicht duch 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 [Verhältnis] 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 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
  • 3.2 Dateien

    3.2.1 Ini-Datei

    Die bisherigen Einträge für die dynamische Schrittweite bleiben bis auf den Eintrag DynamicStepWidth erhalten:

    [Scan]
    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:
  • 'Dynamic StepWidth' ist die dynamische Schrittweite; Dieser Eintrag wurde entfernt, um zu verhindern, daß versehentlich ein Scan mit dynamischer Schrittweitensteuerung gestartet wird; die Aktivierung muß explizit in der Stepscan-Dialogbox erfolgen.
  • 'Leveli' mit i=0..n (n Anzahl der Level (Standard:10) im Ini-File-Abschnitt, dabei müssen alle Indizes vorkommen) enthält alle Werte für dynamische Schrittweitensteuerung hinter jedem Level stehen jeweils 2 Werte, der erste gibt die Intensität an, bei der die Schrittweite um den Faktor des 2.Wertes geändert werden soll
  • Level a b c
    - Default-Wert:""
    - Einheit: (a,b,c) (Level,Impulse,Schrittweitenfaktor)
    - Wertebereich:(a,b,c) (int,float,float)
    - repräsentiert durch: Scaler[20], dabei sind die Impulse eines bestimmten Levels in Scaler[Level] und die zugehörigen Schrittweitefaktoren in Scaler[Level+10]
    - sinnvoller Wert:(a,b,c) (natürliche Zahlen von 0 bis 9,positive Integerwerte,positive Floatwerte)
  • 4. Qualitätsbestimmung

    Produktqualität Sehr gut Gut Normal Nicht relevant
    Funktionalität . X . .
    Zuverlässigkeit . X . .
    Benutzbarkeit . X . .
    Effizienz . . . X
    Änderbarkeit . X . .
    Übertragbarkeit . . X .

    5. Anmerkungen

  • Betriebssystem: Windows 9x
  • Compiler: Borland C++ 4.5
  • 6. Verwandte Dokumente

    Grundlage für dieses Dokument sind die Absprachen mit den Physikern und die vorhandenen Quellen, in denen die dynamische Schrittweiten-Steuerung bereits vollständig implementiert ist.

    7. Testfälle

    Folgende Tests sollten durchgeführt werden:

    8. Glossar