Zyklussynchronisierung S7-200

Noelthebrain

Level-1
Beiträge
9
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo S7-Profis,

habe mal wieder ein Problem.
Ich betreibe 2 S7-200 Anlagen miteinander. Auf beiden laufen die gleichen Programme und die beiden tauschen Daten miteinander aus um eine Ausfallsicherheit der zu steuernden Anlage zu gewährleisten und um zu erkennen ob eine S7 einen Fehler aufweist.
Klappt so weit alles ganz gut, bis auf die Blinklichtfunktion, da die beiden Anlagen, je nachdem wie sie eingeschaltet werden, nicht Synchron laufen. So wird der Blinktakt teils gegenseitig überlagert von der S7 die später läuft.

Jetzt bräuchte ich eine Art Takt- oder Zyklussynchronisation. Soll heißen beide S7 warten bis zu eine Sekunde und machen erst dann weiter wenn beide S7 mit Ihrem Zyklus durch sind. Sollte die Sekunde vorbei sein, ist klar dass eine S7 ausgefallen ist und die intakte läuft alleine weiter.

Gibt es dafür irgendeine einfache Lösung? Steh da momentan wohl etwas am Schlauch. :ROFLMAO:

Danke schon mal im voraus für die Unterstützung.

Schönen Tag noch.

Michael
 
ich habe Mühe, mir diese Anlage vorzustellen. Insbesondere die Koordination beider SPSen muss doch bereits irgendwie gelöst sein, so irgend wie in der Art, dass die eine steuert und die andere kontrolliert, ob das, was die eine tut, richtig ist (wobei man dann recht bald auf das Problem stößt, dass man eine dritte SPS benötigt, um beurteilen zu können, ob man nicht selbst der Geisterfahrer ist).
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

ich weiß, hab selber erst 1 Monat gebraucht um hinter die Funktion der Anlage zu kommen.
Ich versuchs mal...
Es geht hauptsächlich nur um Eingänge --> Verknüpfung --> Ausgang
Die Eingänge werden auf jede der beiden S7 gelegt und die Ausgänge über eine extra Klemmleiste mit Dioden (Rückkopplungsschutz) an die anzusteuernde Hardware ausgegeben. So wird auf alle Fälle ein Signal nach außen gegeben sollte eine ausfallen.
Es gilt also, egal ob eine S7 ausfällt, die Anlage muss (natürlich nur bis zu einem bestimmten Grad :)) weiterlaufen.
Deshalb tausche ich mit jeder S7, alle Relevanten Bits über NETW/NETR aus und binde sie in das eigene Programm mit ein.
So sehe ich z.B. wenn ein Eingang der anderen S7 fehlt und kann sagen da ist ein Fehler in der Steuerung. Wenn beide Eingänge fehlen ist Hardwaretechnisch der Fehler zu suchen.
Meldungen gehen natürlich nur von einer S7 an mein Textdisplay.

Da die Programme gleich sind, haben sie auch die selbe zykluszeit und können sich nicht gegenseitig überholen. Es kann aber dennoch sein (wie gesagt je nach einschaltzeitpunkt) dass ein halber zyklus unterschied ist und somit die eine S7 das Blinklicht für die erste hälfte leuchten lässt und die 2. S7 die zweite hälfte.

Mhh, ich glaub jetzt hab ich nur noch mehr verwirrt :ROFLMAO:

Hoffe trotzdem ich kanns irgendwie verständlich machen...

MFG

Michi
 
Hallo!

Mit was erzeugst du dein Blinklicht? Timer oder den SM Taktmerker?
Ich glaube nicht das beide SPS'n genau die gleiche Zykluszeit immer haben und wenn das blinklicht einen halben Takt daneben ist dann sind die Zyklen mehrere auseinander und nicht nur einen halben.
Aber du kannst ja das Blinklicht über die Kommunikation Synchronisieren. also wenn du das über Zeiten realisiert hast dann kannst du ja auch das Blinksignal übertragen und die Zeiten danach starten.

godi
 
beide CPUs stellen also jeweils einen Taktgenerator zur Verfügung. Dein Ansatz ist, diese Taktgeneratoren zu synchronisieren.

Mein Ansatz wäre, dass die beiden CPUs über die NETR/NETW-Verbindung miteinander aushandeln, wer das Blinklicht steuert und somit von den zwei verfügbaren Taktgeneratoren nur einer genutzt wird.

Edit: bei den Postings hier klappt das mit der Synchronisation auch immer recht gut - man sollte im Chat erstmal aushandeln, wer was antwortet ;-) :)
 
Zuletzt bearbeitet:
Zurück
Oben