ILC 300 er Umgang mit Systemfehler

schaible.r

Level-1
Beiträge
217
Reaktionspunkte
28
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen.

Ber den ILC SPSen gibt es ja auch eine FehlerBehandlung über verschiedene System Task.
So früher haben wir S7 ein gesetzt und dort gab es ja die OBs die verschiedene Fehler ab gefangen haben und die SPS lief weiter.

Vom Prinzip her ist es ja ähnlich nur das bei der ILC der entsprechende Task nur einmal beim Auftreten aufgerufen wird.
Ich habe auch schon mal mit DIV durch Null experimentiert und in dem Fall kann ich dann z.B. einen Neustart ausführen.

Grundsätzlich wird natürlich versucht so was zu vermeiden.

Aber es gibt ja noch andere Mögliche Fehler.

Jetzt einfach mal die Frage, wie löst ihr so was? Oder reagiert Ihr überhaupt auf Fehler?
Oder lasst Ihr die SPS dann hin stehen ubd schaut dann nach dem Problem?

Über einen Austausch zu dem Thema würde ich mich freuen.

Grüß

René S.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Schaible.r,

ich glaube jeder Programmierer hat sich bereits mit dem Thema beschäftigt, aber ich glaube es gibt keine "immer passende" Strategie.

Aus meiner Sicht gibt es im Grunde die folgenden Möglichkeiten.

1) In einer idealen Welt müssten eigentlich alle "kritischen" Programmteile abgefangen werden.
D.h. bei einer dynamische Division auf > 0 abfragen, oder Index prüfen usw. ...
Aber natürlich ist nicht immer alles ideal ;-)

2) Als Programmierer sollte ich aber dennoch wissen welche Probleme auftreten können (sprich, gibt es dynamisch Divisionen, oder dynamische
Arrayzugriffe) und wie kritisch die Bereiche sind.

Davon leitet sich dann letzten Endes ab welche Systemtask implementiert werden müssen, und wie darauf regiert werden muss.
Sprich, bei Fehler A reicht ggf. Quittieren (Continiue), bei Fehler B muss ein Warmstart durchgeführt werden oder bei Fehler C eine Schrittkette neu
initialisiert werden.

Häufig macht es auch Sinn einen Fehler x mal zu akzeptieren und dann bei x+1 ggf. einen Neustart durchzuführen.

Ich persönlich glaube das wichtigste ist sich beim Programmieren zu überlegen welche Funktionen genutzt werden (z.B. Array, Div, String usw. ...) und welche Auswirkungen ein Stop haben kann. Davon leiten sich dann die entsprechenden Maßnahmen ab.

Sofern du ein spezifisches Projekt hast, schlage ich vor das du dich direkt mit unserer kostenfreien Hotline (05281 9462888) in Verbindung setzt.

Gruß

Frank
 
Naja. Danke auf jeden Fall für die Antwort.

Das es spezifisch für jeden Fehler zu betrachten ist war mir schon klar.

Aber um gleich bei der DIV Null zu bleiben.
Mir ist es schlicht weg egal ob eine DIV durch Null erfolgt. Eine evtl. dran hängende Rechnung/Regelung wird dann sowieso ab gestellt und auf Handbetrieb geschaltet.

Aber es war schon ein passender Hinweis Ihn dem Post Continue also Quittieren. Das werde ich gleich mal auf greifen.

Natürlich ist es ebenfalls klar das dies keine Pauschal Lösung ist.

Auf jeden Fall Danke nochmal.
 
Zurück
Oben