S7-317-2 per Programmcode neu starten

marac

Level-1
Beiträge
3
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo allerseits!

Ich bin auf der Suche nach einer Möglichkeit, an einer S7-317-2 aus ihrem eigenen Programmcode heraus einen Neustart zu verursachen.
Ich habe an anderer Stelle schon den Hinweis auf den SFB19 bekommen, habe diesen aber so verstanden, dass es dabei nur darum geht, eine andere Steuerung remote neu zu starten. Außerdem ist in der Hilfe des Simatic Managers hier nur die Rede von S7-400-Steuerungen...

Kann mir da jemand weiterhelfen?

Viele Grüße,
marac
 
Mir ist nicht so ganz klar was Du damit bezwecken willst?

Möchtest Du eine CPU aus dem Betriebszustand STOP wieder zum laufen bringen? Oder möchtest Du die CPU einfach in einem gewissen Anlagenstellung neu starten?

Ersteres ist definitiv nicht möglich - eine S7-CPU, welche im Betriebszustand STOP ist, führt keine Befehle aus, und kann daher aus dem eigenen Code nicht neu gestartet werden. Es besteht lediglich die Möglichkeit, von einer anderen CPU aus per SFB einen Neustart auszuführen. Dies ist aber nur möglich, wenn zwischen den beiden CPUs eine S7-Verbindung projektiert wurde (was ja z.T. nur eingeschränkt möglich ist).

Letzteres ist für mich nicht sinnvoll, da es immer eine Möglichkeit gibt, aus verzwickten Betriebszuständen per Programm herauszukommen, ohne die CPU neu zu starten. Möglich ist es aber, in dem man mit einem Ausgang (evtl. mit nachgeschaltetem abfallverzögerten Zeitrelais) die Spannungsversorgung der SPS abschaltet.


Also nochmal die Frage: Was willst Du damit bezwecken??

Ich würde an Deiner Stelle eher über Maßnahmen nachdenken, die verhindern, dass die CPU in STOP geht!


mfg
Maxl
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Es geht um den zweiten Fall, also tatsächlich darum, unter bestimmten Bedingungen einen Neustart der CPU zu veranlassen.
Prinzipiell hast du sicher recht, dass das nicht das Mittel der Wahl sein sollte, sondern dass eher versucht werden sollte, den Zustand, der diesen Neustart erforderlich macht, zu vermeiden. Das Problem ist hier, dass auf besagter SPS Software-Komponenten von zwei Firmen laufen, die sich gegenseitig den schwarzen Peter zuschieben, wer für diese merkwürdige Konstellation verantwortlich ist. Nachstellen lässt sich der Fehlerfall auch nicht, er tritt eben sporadisch auf und lässt sich durch einen Neustart der CPU aus der Welt schaffen (spricht also irgendwo für einen hängen bleibenden Merker über den eine Flankenauswertung gemacht wird, oder Ähnliches). Jetzt ist es dem Kunden zu blöd geworden, und er hat uns eben gebeten, eine Möglichkeit zu schaffen, die Steuerung per Kommando vom PC neu zu starten. Nachdem wir die Bediener aber nicht mit dem Simatic-Manager auf die Steuerung loslassen wollten, aber die Möglichkeit haben, per Knopfdruck irgendwo ein Bit in der Steuerung zu setzen, war eben die Überlegung, ob man dieses Bit irgendwo in einem zyklischen Baustein abprüfen und ggf. den Neustart veranlassen könnte.
Ein Trennen der Versorgungsspannung wäre natürlich eine Variante, wenn es denn gar nicht anders geht... Im Moment sieht es aber so aus, als würde der Kunde einsehen, dass die Idee nicht wirklich gut ist, sondern dass wir uns lieber darauf konzentrieren sollten, die Ursache für diese verfahrene Situation zu finden und zu beseitigen...

Trotzdem Danke! (Und falls noch jemand eine Idee hat - interessant fänd ich's ja schon...)

Viele Grüße,
marac
 
Wenns um Merker geht, dann kann man natürlich auch alle verwendeten Merkerwort beim "Neustart" mit 0 überschreiben. (Blockmove ginge auch).
Das käme in diesem Fall ja einem Neustart gleich. DB's könnte man auch zurücksetzen. Aber ein Eingrenzen der Ursache wäre schon die saubere Lösung.
 
Naja, dass ein hängen gebliebener Merker die Störungsursache sein könnte, ist ja auch nur Spekulation, dazu müsste ich mir doch nochmal die "fremde" Software in der Steuerung genauer ansehen... Das Einzige, was ich sicher weiß, ist dass das Programm nach einem CPU-Neustart wieder läuft...
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ok, ist klar, bei einem Neustart passiert ja eigentlich auch nicht allzuviel. Abhängig von den Remanenzeinstellungen gehen die Merker, Timer und Zähler verloren. Ich glaube die DB behalten ihre Werte jetzt generell. Damit würde ich mal einfach anfangen, alle Merker auf Null und sehen, ob man die Anlage wieder zum Laufen bringt. Wenn das geht, kann man sich die Merker ja genau ansehen, bzw. einzelne Merkerbereiche zurücksetzen ...
 
Wenn ein PC sowieso zur Verfügung steht, geht so ein Neustart/Wiederanlauf sehr einfach mit libnodave oder ACCON-AGLink. Der Simatic-Mamnager ist dazu dann nicht erforderlich. Allerdings ist Verbindungshardware zwischen PC und SPS erforderlich.
 
Hallo marac,

wie meine Vorredner, halte ich die Ursachenbehebung für die sinnvollste Methode. Was mir da als erstes einfällt: Was steht im Diagnosepuffer der CPU? Der sollte auf jeden Fall einen Hinweis auf das Problem geben. Außerdem kann Dir mit den Meldungen im Meldepuffer am ehesten hier im Forum weitergeholfen werden.

Gruß Hagen
 
Zurück
Oben