Document Title

| ALPHA-VISION® SoftPlc7

# Fehlerbehandlung

## 1. Allgemein

Gerade in der Projektierungsphase wird häufig der Fall eintreten, dass ein STEP7-Programm sich nicht wie erwartet verhält. Mögliche Ursachen sind zum einen falsche oder ungünstige Parameter in den Konfigurationsdateien, diese lassen sich durch sorgfältige Prüfung leicht beheben. Zum anderen können auch echte Programmfehler auftreten, die die CPU zum stoppen veranlassen. Die Fehlerquellen lassen sich nicht immer sofort lokalisieren, da oft dynamische Werte zu unzulässigen Zugriffen auf Resourcen führen. Die SoftPlc7 bietet deshalb eine Reihe von komfortablen Debug-Möglichkeiten, die den Projektierer bei der Fehlersuche unterstützen.

## 2. Programmfehler

Bei der Implementierung wurde darauf geachtet, dass sich die SoftPlc7 auch bei Programmfehlern wie eine originale SIMATIC S7 verhält. Es wird zunächst geprüft, ob der synchrone Programmierfehler-OB (OB 121) im STEP7-Programm vorliegt, und im positiven Fall wie in ein FC dorthin verzweigt. Nach Abarbeitung des OB 121 wird nach der fehlerhaften Anweisung fortgefahren. Wenn kein OB 121 projektiert ist, geht die CPU in den STOP-Zustand. Der Indikator INTF im Panel färbt sich dann rot und weist somit auf einen Programmfehler hin.
Natürlich können auch bei der Bearbeitung des OB 121 Programmfehler auftreten; in diesem Fall geht die CPU der SoftPlc7 wie das Original in den STOP-Zustand.

Die CPU speichert beim Stopp den aktuellen B-Stack, L-Stack und Klammerstack. Diese Daten können über die PG-Schnittstelle mit dem SIMATIC Manager angezeigt werden. Eine schnellere Alternative ist der interne Debugger, den man über den Menüpunkt "Ansicht->Testbetrieb" aktiviert. Die Stacks lassen sich direkt im erweiterten Fenster ablesen. Lokale Haltepunkte mit Triggerbedingung wie auch globale Haltepunkte mit Bedingungen an Bausteindaten können nun eingesetzt werden, um an festgelegten Programmstellen oder in bestimmten Situationen die CPU in den Haltezustand zu überführen und Werte abzufragen (-> Einzelheiten).

## 3. Maskierung/Demaskierung

Die Programmverzweigung in den OB 121 lässt sich softwaretechnisch über die SFC 36 "MSK_FLT" und SFC 37 "DMSK_FLT" steuern. So kann bei bestimmten Klassen von Programmierfehlern die Ausführung des OB 121 zugelassen und bei anderen Klassen unterbunden werden. Näheres ist der Hilfe des SIMATIC Managers zu entnehmen.