SPS auf RUN überwachen

Steve38

Level-1
Beiträge
486
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hi zusammen,

möchte ganz gerne meine SPS überwachen, das alle Bausteine auch korrekt druchlaufen werden.

Allerdings nicht so:

L #OB1_SCAN_1
T MW 40 //Wertübernahme nach MW60

L MW 40
L 1
==I
= "CPU1xok" // CPU 1x durchlaufen

L MW 40
L 3
==I
= "CPU3xok"


Möchte gerne auch überwachen ob die CPU auf Run steht.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
steuere ein Relais über einen Ausgang an und eine rote Lampe über einen Öffner des Relais...... CPU auf Stop > Ausgang auf 0 > Relais fällt ab > Lampe geht an.........


hab ich allerdings noch nie gemacht. wenn die CPU auf Stop gehen sollte (was sie eigentlich nach der IB nie macht) merken wir das sehr schnell :ROFLMAO:
 
Nichts macht die SPS mehr dann, schon klar.

Aber möchte halt gerne in der Leitwarte ein Lämpchen setzten wenn irgendeine SPS auf Stop steht, egal ob Händisch oder wegen einem Fehler.

Deswegen in jeder SPS die Überwachung
 
Run-Überwachung

Hi Steve,

falls die SPS'en miteinander vernetzt sind sollte das kein Problem sein. Ich habe sowas mal per Globaldaten (MPI) gemacht.

Einfach einen "Blinkmerker" an eine andere SPS geschickt und dort auf "blinken" kontrolliert. Ändert sich dort der Wert nicht mehr, ist die entsprechende CPU auf Stop (oder defekt :D).

Das ganze dann nochmal zurück und schon hatte ich beide SPS'en unter Kontrolle. Dumm nur wenn beide ausfallen. Aber ich denke sowas passiert nur bei kompletten Spannungsausfall. Und dann sind die Monitore oder Lämpchen eh dunkel :D

MfG, Iris
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Du kannst aber die System-Zustands-Listen (SZL) abfragen:

Beispiel für LibNoDave:
Code:
var
  SzlBuffer: array[0..32] of Byte;
  pcDummy: Array[0..21] of AnsiChar;
begin
  if dmMain.NoDave.Active and (dmMain.NoDave.ReadSZLData($0019, 0, @SzlBuffer, SizeOf(SzlBuffer)) = DaveResOk) then begin
    SF_Led := SzlBuffer[10] = 1;
    RUN_Led := SzlBuffer[14] = 1;
    STOP_Led := SzlBuffer[18] = 1;
    FRCE_Led := SzlBuffer[22] = 1;
    BF_Led := SzlBuffer[26] = 1;
  end else begin
    SF_Led := False;
    RUN_Led := False;
    STOP_Led := False;
    FRCE_Led := False;
    BF_Led := False;
    PlcType := '';
  end;

Vielleicht hilft dir das ja weiter ....
 
Ja danke das ist schon nicht schlecht, aber noch nicht so ganz das was ich mir vorstelle.

Gibts nichts, wie ich den Zustand des Dipp-Schalters vorne abfragen kann?
 
[Spassmodus EIN]

Doch gibt es... Kamerasystem *ROFL*

[Spassmodus AUS]


Auch die Schalterstellung bekommst du über die SZL, ich weiss gerade nicht mit welcher ID, aber da schau mal in das Systemhandbuch, da steht einiges drin.
 
Zurück
Oben