> Projekt: Software-Sanierung > Entwicklerdokumentation > Tabelle zu den Entwicklerdokumenten > Motorsteuerung > Test > Testfälle

Motorsteuerung

Test

Testfälle

 

Dokumentversion: 2.4 (30.08.2002)
Autor: S. Lützkendorf (Erstautor), J. Hanisch (Überarbeitung)
Zustand: in Bearbeitung

Letzter erfolgreicher Durchlauf aller Testfälle:


Inhalt

Aufgabe
Bemerkungen
Testfälle

 

Aufgabe

Diese Testfallsammlung überprüft die Funktionalitäten zur Motorsteuerung über die dafür bereitgestellten Dialogboxen. Die Motorsteuerung enthält Kernfunktionen zur Initialisierung, Ansteuerung und Verwaltung von Motoren im XCTL-Programm. Die Testfälle müssen dabei Funktionen zum Referenzpunktlauf mit Anfahren der Grundstellung (bzw. Ausgangsstellung), Funktionen zur Kalibrierung sowie Funktionen zur Einstellung und Optimierung der Motorparameter überprüfen. Auch die Möglichkeit, die Antriebe über interne Schritte (Encoder-Positionen) direkt zu positionieren, darf dabei als Funktion nicht übersehen werden.

 

Bemerkungen

Diese Testfallsammlung überpüft eigentlich im Rahmen der Umgebungssimulation nur die Kommunikation mit der neu entwickelten Motorensimulation (DLL). Reale Motoren-Controller werden dabei nicht angesprochen. Die Programmfunktionalität dieser Komponente mit allen Aktionen und Reaktionen läßt sich dennoch sehr gut überprüfen.

Die Testfälle zur Überprüfung dieses Anwendungsfalles erfordern häufig das Umschalten zwischen unterschiedlichen Dialogen. Eine saubere Zuordnung der Dialoge und Fenster zu den untersuchten Funktionalitäten, wie in den Testfällen anderer Anwendungsfälle, läßt sich daher schwer realisieren. Viele Ergebnisse von Eingaben in Dialoge werden erst in anderen Dialogen sichtbar. Bis auf das "LineScan"-Fenster, das bei der "Optimierung" Anwendung findet, werden dennoch nur Dialoge verwendet, die zum Anwendungsfall Motorsteuerung gehören, womit sich auch dieser Anwendungsfall isoliert von den anderen untersuchen läßt.

Einige Parameter, die in der HARDWARE.INI oder in den Dialogboxen eingestellt werden, beeinflussen nicht die Arbeit der Antriebe innerhalb der Umgebungssimulation. Da ihre Werte keine auswertbaren Ergebnisse hervorrufen, spielen sie für die Spezifikation von Testfällen keine Rolle und können beliebig gesetzt werden, sofern das die jeweilige Eingabemaske zuläßt. Für die Dialoge betrifft das die Parameter P-Filter (DynamicGain), I-Filter (IntegralGain), L-Filter (IntegralLimit), D-Filter (Gain) bei C-832 Antrieben sowie Gain, Torque und DynamicGain bei C-812 Antrieben.

Der Vorgang des "Optimierens" findet normalerweise nur über Kurvenausgaben auf dem Bildschirm statt. Um den automatisierten Test dieser Funktion zu unterstützen, wird zusätzlich die Beschleunigungskurve als *.bk Datei abgespeichert.

 

Testfälle: Testfall 1

ID: MS.1
Skript: .\seq\Test_MS.1.HTS
Name: Grundstellung Anfahren für zwei Antriebe

Kurzbeschreibung

Die Dialogboxen "Grundstellung anfahren" und "Verfahren nach Encoder-Position" werden benutzt.
Der Antrieb DF wird auf seinen absoluten Nullpunkt zurück gesetzt, auf seine Indexposition und schließlich auf seine Grundstellung gefahren.
Über die "Direkte Steuerung" wird schließlich der Antrieb DF wieder auf 0 gefahren. Hier wird ausserdem ein Testmotor vom Typ TMotor ausgewählt und bewegt.
Der Antrieb Tilt wird neu kalibriert und seine Position über die "Direkte Steuerung" ausgelesen.

Vorbereitung

Schritt Aktionen Erklärung
1. Existenz aller Umgebungsdateien des XCTL-Systems im Programmverzeichnis überprüfen Gültigen und startfähigen Ausgangszustand des XCTL-Systems sicherstellen
2.
  1. Umbenennen der Datei DEVELOP.INI in DEVELOP.BAK
  2. Kopieren der Datei .\ini\TEST_DEVELOP.INI in das Programmverzeichnis des XCTL-Systems und Umbenennen in DEVELOP.INI
Sicherung der originalen Datei DEVELOP.INI und Ersetzung durch eine präparierte Konfiguration
3.
  1. Umbenennen der Datei HARDWARE.INI in HARDWARE.BAK
  2. Kopieren der Datei .\ini\1TOPO_HARDWARE.INI in das Programmverzeichnis des XCTL-Systems und Umbenennen in HARDWARE.INI
Sicherung der originalen Datei HARDWARE.INI und Ersetzung durch eine präparierte Konfiguration

Testsequenz

Schritt Aktionen und Eingaben Ereignisse und Ausgaben
1. Starten des XCTL-Systems
(Ausführen der Develop.exe)
Das Hauptfenster des XCTL-Systems öffnet sich
2. 20 Sekunden warten
(Initialisierung des XCTL-Systems abwarten)
 
3. Hauptmenü: Einstellungen -> Antriebe -> Grundstellung... Dialogbox "Grundstellung anfahren" öffnet sich
4.
  1. Anrieb auf DF setzen
  2. Button Absoluter Nullpunkt anklicken
In der Dialogbox "Grundstellung anfahren" erscheint:
Absolute Null für Motor DF
5.
  1. Anrieb auf DF setzen
  2. Position beibehalten deaktivieren
  3. Grundstellung für alle Antriebe deaktivieren
  4. Gültige Kalibrierungsdaten aktivieren


  5. Button Referenzpunktlauf anklicken
  1. Button "Absoluter Nullpunkt" ist ausgegraut
  2. Button "Referenzpunktlauf" ist ausgegraut
  3. Checkbox "Antriebsauswahl" ist ausgegraut
  4. Text "Absolute Null für Motor DF" verschwindet
6. 30 Sekunden warten
(Kalibrierung abwarten)
In der Dialogbox "Grundstellung anfahren" erscheint der Text:
Index DF
7. 35 Sekunden warten
(Positionierung abwarten)
  1. In der Dialogbox "Grundstellung anfahren" erscheint:
    Target Pos DF
  2. Eine Messagebox "Meldung" erscheint:
    Kalibrierung beendet !
8. Button Ok in der Messagebox anklicken
    Messagebox "Meldung" schließt sich
  1. Button "Absoluter Nullpunkt" ist aktivierbar
  2. Button "Referenzpunktlauf" ist aktivierbar
  3. Checkbox "Antriebsauswahl" ist aktivierbar
9. Button Ok anklicken Dialogbox "Grundstellung anfahren" schließt sich
10. Hauptmenü: Einstellungen -> Antriebe -> Direkte Steuerung... Dialogbox "Verfahren nach Encoder-Position" öffnet sich
11. "Motor:" auf DF setzen "Position" und "Neue Position" stehen auf 10247
12.
  1. "Neue Position" auf 0 setzen
  2. Enter drücken
Schieberegler bewegt sich sichtbar nach links
13. 5 Sekunden warten
(Motorbewegung abwarten)
"Position" und "Neue Position" stehen wieder auf 0
14. "Motor:" auf Test setzen "Position" und "Neue Position" stehen auf 0
15.
  1. "Neue Position" auf 50 setzen
  2. Enter drücken
Schieberegler bewegt sich sichtbar nach rechts
16. 1 Sekunden warten
(Motoreinstellung abwarten)
"Position" und "Neue Position" stehen auf 50
17.
  1. "Neue Position" auf -50 setzen
  2. Enter drücken
Schieberegler bewegt sich sichtbar nach rechts
18. 1 Sekunden warten
(Motoreinstellung abwarten)
"Position" und "Neue Position" stehen auf -50
19. Button Abbrechen anklicken Dialogbox "Verfahren nach Encoder-Position" schließt sich
20. Hauptmenü: Einstellungen -> Antriebe -> Grundstellung... Dialogbox "Grundstellung anfahren" öffnet sich
21.
  1. Anrieb auf Tilt setzen
  2. Position beibehalten deaktivieren
  3. Grundstellung für alle Antriebe deaktivieren
  4. Gültige Kalibrierungsdaten deaktivieren
  1. Checkbox "Position beibehalten" ist ausgegraut
  2. Checkbox "Grundstellung für alle Antriebe" ist ausgegraut
22. Button Referenzpunktlauf anklicken Messagebox "Meldung" erscheint:
Es wird davon ausgegangen, dass sich der Antrieb
in der Position der physikalischen Null befindet.
Es werden Kalibrierungsdaten geaendert !
23. Button Ja anklicken
  1. Button "Referenzpunktlauf" ist ausgegraut
  2. Checkbox "Antriebsauswahl" ist ausgegraut
24. 15 Sekunden warten
(Kalibrierung abwarten)
In der Dialogbox "Grundstellung anfahren" erscheint der Text:
Index Tilt
25. 15 Sekunden warten
(Positionierung abwarten)
  1. In der Dialogbox "Grundstellung anfahren" erscheint:
    Target Pos Tilt
  2. Eine Messagebox "Meldung" erscheint:
    Kalibrierung beendet !
26. Button Ok in der Messagebox anklicken
    Messagebox "Meldung" schließt sich
  1. Button "Absoluter Nullpunkt" ist aktivierbar
  2. Button "Referenzpunktlauf" ist aktivierbar
  3. Checkbox "Antriebsauswahl" ist aktivierbar
27. Button Ok anklicken Dialogbox "Grundstellung anfahren" schließt sich
28. Hauptmenü: Einstellungen -> Antriebe -> Direkte Steuerung... Dialogbox "Verfahren nach Encoder-Position" öffnet sich
29. "Motor:" auf Tilt setzen "Position" und "Neue Position" stehen auf 0
30. Button Abbrechen anklicken Dialogbox "Verfahren nach Encoder-Position" schließt sich
31. Hauptmenü: Datei -> Beenden Das Hauptfenster des XCTL-Systems schließt sich
32. 10 Sekunden warten
(Beendigungsvorgang des XCTL-Systems abwarten)
 

Nachbereitung

Schritt Aktionen Erklärung
1. Umbenennen der Datei DEVELOP.BAK in DEVELOP.INI Wiederherstellung der originalen Datei DEVELOP.INI
2. Umbenennen der Datei HARDWARE.BAK in HARDWARE.INI Wiederherstellung der originalen Datei HARDWARE.INI




Testfälle: Testfall 2

ID: MS.2
Skript: .\seq\Test_MS.2.HTS
Name: Einstellung und Optimierung von Antriebsparametern

Kurzbeschreibung

Die Dialogboxen "Grundstellung anfahren" und "Verfahren nach Encoder-Position" werden benutzt.
Der Winkelbereich des Antriebs "Azimutal Rot" wird verkleinert und durch die Funktion "Bereichsmaximierung" wieder auf seinen ursprünglichen Wert gesetzt.
Die Antriebe "Azimutal Rot" und "DF" werden danach mit den entsprechenden Dialogen optimiert, wobei jeweils eine Beschleunigungskurve als *.bk Datei abgespeichert wird.

Vorbereitung

Schritt Aktionen Erklärung
1. Existenz aller Umgebungsdateien des XCTL-Systems im Programmverzeichnis überprüfen Gültigen und startfähigen Ausgangszustand des XCTL-Systems sicherstellen
2.
  1. Umbenennen der Datei DEVELOP.INI in DEVELOP.BAK
  2. Kopieren der Datei .\ini\TEST_DEVELOP.INI in das Programmverzeichnis des XCTL-Systems und Umbenennen in DEVELOP.INI
Sicherung der originalen Datei DEVELOP.INI und Ersetzung durch eine präparierte Konfiguration
3.
  1. Umbenennen der Datei HARDWARE.INI in HARDWARE.BAK
  2. Kopieren der Datei .\ini\1TOPO_HARDWARE.INI in das Programmverzeichnis des XCTL-Systems und Umbenennen in HARDWARE.INI
Sicherung der originalen Datei HARDWARE.INI und Ersetzung durch eine präparierte Konfiguration
4. Löschen der evt. vorhandenen Dateien AZIMUT.BK und DF.BK auf C:\ Die Dateien AZIMUT.BK und DF.BK sollen durch den Testfall erzeugt werden

Testsequenz

Schritt Aktionen und Eingaben Ereignisse und Ausgaben
1. Starten des XCTL-Systems
(Ausführen der Develop.exe)
Das Hauptfenster des XCTL-Systems öffnet sich
2. 20 Sekunden warten
(Initialisierung des XCTL-Systems abwarten)
 
3. Hauptmenü: Einstellungen -> Antriebe -> Parameter... Dialogbox "Motor-Parameter" öffnet sich
4. Antrieb auf Azimutal Rot setzen Werte des Antriebs "Azimutal Rot" werden angezeigt
5.
    Winkel in Grad
  1. "Minimum" auf -10 setzen
  2. "Maximum" auf 20 setzen

  3. Button Ok anklicken
Dialogbox "Motor-Parameter" schließt sich
6. Hauptmenü: Einstellungen -> Antriebe -> Bereichsmaximierung  
7. Hauptmenü: Einstellungen -> Antriebe -> Parameter... Dialogbox "Motor-Parameter" öffnet sich
8. Antrieb auf Azimutal Rot setzen Werte des Antriebs "Azimutal Rot" werden angezeigt
    Position in Encoder-Steps
  1. Minimum -676000
  2. Schritt 1868
  3. Maximum 674000
  4. Limit 4000

  5. Winkel in Grad
  6. Minimum -296.91
  7. Schritt 0.100
  8. Maximum 296.04

  9. Geschwindigkeit 1360.082
9. Button Abbrechen anklicken Dialogbox "Motor-Parameter" schließt sich
10. Hauptmenü: Einstellungen -> Antriebe -> Optimieren...
  1. Dialogbox "DCM-Paramter für Azimutal Rot optimieren" öffnet sich
  2. "LineScan"-Fenster öffnet sich
11.
  1. "Acceleration" auf 5000 setzen
  2. Button Start Scan anklicken
 
12. 2 Sekunden warten
(Messung abwarten)
  1. In Statuszeile erscheint:
    MoveFinish: 1867 >>> Letzter Wert: 1867
  2. anklicken ! Kurvengrafik entspricht ungefähr dieser Vorlage
13. Button Ok anklicken Dialogbox "DCM-Paramter für Azimutal Rot optimieren" schließt sich
14. Fenster-Menüpunkt: "Scan -> Speichern" aktivieren File-Dialogbox "Vergleichs-Scan speichern..." erscheint
15.
  1. Unter "Dateiname:" C:\AZIMUT.BK eintragen
  2. Button Ok anklicken
File-Dialogbox "Vergleichs-Scan speichern..." schließt sich
16. Hauptmenü: Einstellungen -> Antriebe -> Parameter... Dialogbox "Motor-Parameter" öffnet sich
17. Antrieb auf DF setzen Werte des Antriebs "DF" werden angezeigt
18. Button Ok anklicken Dialogbox "Motor-Parameter" schließt sich
19. Hauptmenü: Einstellungen -> Antriebe -> Optimieren...
  1. Dialogbox "DCM-Paramter für DF optimieren" öffnet sich
20. Button Start Scan anklicken  
21. 3 Sekunden warten
(Messung abwarten)
  1. In Statuszeile erscheint:
    MoveFinish: 19 >>> Letzter Wert: 19
  2. anklicken ! Kurvengrafik entspricht ungefähr dieser Vorlage
22. Button Ok anklicken Dialogbox "DCM-Paramter für DF optimieren" schließt sich
23. Fenster-Menüpunkt: "Scan -> Speichern" aktivieren File-Dialogbox "Vergleichs-Scan speichern..." erscheint
24.
  1. Unter "Dateiname:" C:\DF.BK eintragen
  2. Button Ok anklicken
File-Dialogbox "Vergleichs-Scan speichern..." schließt sich
25. Kreuzchen im Scan-Fenster oben rechts anklicken "LineScan"-Fenster schließt sich
26. Hauptmenü: Datei -> Beenden Das Hauptfenster des XCTL-Systems schließt sich
27. 10 Sekunden warten
(Beendigungsvorgang des XCTL-Systems abwarten)
 
28. Anwenden von .\bin\DataDiff.exe auf die Dateien C:\AZIMUT.BK, C:\DF.BK und AZIMUT.BK.REF, DF.BK.REF Vergleich der Messwertedateien mit ihren zugehörigen Solldateien muss erfolgreich sein

Nachbereitung

Schritt Aktionen Erklärung
1. Umbenennen der Datei DEVELOP.BAK in DEVELOP.INI Wiederherstellung der originalen Datei DEVELOP.INI
2. Umbenennen der Datei HARDWARE.BAK in HARDWARE.INI Wiederherstellung der originalen Datei HARDWARE.INI
3. Löschen der Dateien AZIMUT.BK und DF.BKauf C:\ Ausgangszustand auf C:\ wieder herstellen




Testfälle: Testfall 3

ID: MS.3
Skript: .\seq\Test_MS.3.HTS
Name: Spezielle Arbeiten mit C832-Antrieben

Kurzbeschreibung

Die Dialogboxen "Grundstellung anfahren", "Motor-Parameter" und "Manuelle Justage" werden benutzt.
Der Antrieb Omega wird auf seinen absoluten Nullpunkt zurück gesetzt, auf seine Indexposition und schließlich auf seine Grundstellung gefahren.
Im Dialog "Motor-Parameter" wird der Antrieb Theta ausgewählt und seine Endschalter-Funktion aktiviert. Um die Auslösung des Endschalters zu testen, muss der Antrieb über eine seiner Schranken gefahren werden. Das wird erreicht, indem die Absolute Null sehr weit rechts gesetzt wird und der Antrieb über die rechte Schranke gefahren wird.

Vorbereitung

Schritt Aktionen Erklärung
1. Existenz aller Umgebungsdateien des XCTL-Systems im Programmverzeichnis überprüfen Gültigen und startfähigen Ausgangszustand des XCTL-Systems sicherstellen
2.
  1. Umbenennen der Datei DEVELOP.INI in DEVELOP.BAK
  2. Kopieren der Datei .\ini\TEST_DEVELOP.INI in das Programmverzeichnis des XCTL-Systems und Umbenennen in DEVELOP.INI
Sicherung der originalen Datei DEVELOP.INI und Ersetzung durch eine präparierte Konfiguration
3.
  1. Umbenennen der Datei HARDWARE.INI in HARDWARE.BAK
  2. Kopieren der Datei .\ini\1DIFF_HARDWARE.INI in das Programmverzeichnis des XCTL-Systems und Umbenennen in HARDWARE.INI
Sicherung der originalen Datei HARDWARE.INI und Ersetzung durch eine präparierte Konfiguration

Testsequenz

Schritt Aktionen und Eingaben Ereignisse und Ausgaben
1. Starten des XCTL-Systems
(Ausführen der Develop.exe)
Das Hauptfenster des XCTL-Systems öffnet sich
2. 20 Sekunden warten
(Initialisierung des XCTL-Systems abwarten)
 
3. Hauptmenü: Einstellungen -> Antriebe -> Grundstellung... Dialogbox "Grundstellung anfahren" öffnet sich
4.
  1. Anrieb auf Omega setzen
  2. Button Absoluter Nullpunkt anklicken
In der Dialogbox "Grundstellung anfahren" erscheint:
Absolute Null für Motor Omega
5.
  1. Anrieb auf Omega setzen
  2. Position beibehalten deaktivieren
  3. Grundstellung für alle Antriebe deaktivieren
  4. Gültige Kalibrierungsdaten aktivieren


  5. Button Referenzpunktlauf anklicken
  1. Button "Absoluter Nullpunkt" ist ausgegraut
  2. Button "Referenzpunktlauf" ist ausgegraut
  3. Checkbox "Antriebsauswahl" ist ausgegraut
  4. Text "Absolute Null für Motor Omega" verschwindet
6. 25 Sekunden warten
(Kalibrierung abwarten)
In der Dialogbox "Grundstellung anfahren" erscheint der Text:
Index Omega
7. 20 Sekunden warten
(Positionierung abwarten)
  1. In der Dialogbox "Grundstellung anfahren" erscheint:
    Target Pos Omega
  2. Eine Messagebox "Meldung" erscheint:
    Kalibrierung beendet !
8. Button Ok in der Messagebox anklicken
  1. Messagebox "Meldung" schließt sich
  2. Button "Absoluter Nullpunkt" ist aktivierbar
  3. Button "Referenzpunktlauf" ist aktivierbar
  4. Checkbox "Antriebsauswahl" ist aktivierbar
9. Button Ok anklicken Dialogbox "Grundstellung anfahren" schließt sich
10. Hauptmenü: Einstellungen -> Antriebe -> Parameter... Dialogbox "Motor-Parameter" öffnet sich
11. Antrieb auf Theta setzen Werte des Antriebs "Theta" werden angezeigt
12. Button End-Schalter anklicken In Statuszeile unten links dreht sich ein Strich zur Andeutung eines aktiven End-Schalters
13. Button Ok anklicken Dialogbox "Motor-Parameter" schließt sich
14. Hauptmenü: Einstellungen -> Antriebe -> Grundstellung... Dialogbox "Grundstellung anfahren" öffnet sich
15.
  1. Anrieb auf Theta setzen
  2. Button Absoluter Nullpunkt anklicken
In der Dialogbox "Grundstellung anfahren" erscheint:
Absolute Null für Motor Theta
16. Button Ok anklicken Dialogbox "Grundstellung anfahren" schließt sich
17. Hauptmenü: Ausführen -> Manuelle Justage... Dialogbox "Manuelle Justage" öffnet sich
18. "Aktueller Antrieb" auf Theta setzen Werte des Antriebs Theta erscheinen in der Dialogbox
19.
  1. "Neuer Winkel" auf 0.348 Grad setzen
  2. Enter drücken
 
20. 35 Sekunden warten
(Bewegung abwarten)
  1. Schieberegler bewegt sich sichtbar nach rechts
  2. "Winkel" und "Neuer Winkel" stehen auf 0.348 Grad
  3. Mehrere Messageboxen "Motor-Steuerung" erscheinen (BUG!?):
    Endlage von Motor 1 angesprochen.
21. Button Verlassen anklicken Dialogbox "Manuelle Justage" schließt sich
22. Hauptmenü: Einstellungen -> Antriebe -> Parameter... Dialogbox "Motor-Parameter" öffnet sich
23. Antrieb auf Theta setzen Werte des Antriebs "Theta" werden angezeigt
24. Button End-Schalter anklicken In Statuszeile stoppt der drehende Strich
25. Button Ok anklicken Dialogbox "Motor-Parameter" schließt sich
26. Hauptmenü: Datei -> Beenden Das Hauptfenster des XCTL-Systems schließt sich
27. 10 Sekunden warten
(Beendigungsvorgang des XCTL-Systems abwarten)
 

Nachbereitung

Schritt Aktionen Erklärung
1. Umbenennen der Datei DEVELOP.BAK in DEVELOP.INI Wiederherstellung der originalen Datei DEVELOP.INI
2. Umbenennen der Datei HARDWARE.BAK in HARDWARE.INI Wiederherstellung der originalen Datei HARDWARE.INI