Datenbaustein auf Existenz überprüfen

Supervisor

Level-1
Beiträge
93
Reaktionspunkte
2
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo SPS-Experten,

ich habe folgende Frage bzw. folgendes Problem:

Wie kann man einen globalen Datenbaustein (DB) auf Existenz überprüfen, ohne dass die SPS in STOP-Modus geht und ohne dass man vorhandene Siemens-Bausteine (z.B. SFC 24) verwendet?

Wenn man mit

AUF DB xy

einen nicht existierenden DB öffnen will, dann geht sofort die rote SF-LED an und die SPS stoppt. Wie kann man das verhindern? Ich verwende Step 7, Version 5.4.

Ich möchte mir in AWL eine Art Suchfunktion schreiben, die eine gewisse Anzahl von DBs absucht. Als Parameter wird die erste und die letzte DB-Nummer angegeben. Die Funktion soll nun prüfen, ob in dem angegebenen Bereich die DBs existieren, wenn nicht, dann einfach zur nächsten DB-Nummer springen bis der letzte DB erreicht ist. Das ganze muss aber ohne zusätzliche Bausteine funktionieren.

Wer weiß rat?
Danke!
 
der ob121 wird angesprungen.
im temp-parameter #OB121_FLT_REG steht der fehlende db

wenn du den einsetzt, solltest du aber sicherstellen, dass die cpu bei anderen fehler in stop geht.


ungefähr so.

set
= m3.0 //fehler abfangen
....db's in einer schleife prüfen.
clr
= m3.0

im ob121

un m3.0
spb stop
#OB121_FLT_REG auswerten
bea
stop: call sfc46
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Volker,

tausend Dank für deine Hilfe :) , aber gibt es nicht eine Möglichkeit, gänzlich auf Einträge in anderen OBs und auf die Verwendung von SFCs zu verzichten?
Wenn man den SFC 24 "TEST_DB" benutzt und als Eingangs-DB einen nicht existierenden DB angibt, dann bekommt man einfach einen Fehlercode bzw. der Baustein wird nicht bearbeitet. Der SFC 24 benötigt ja auch keine Einträge im OB 121.

Ist das Problem nicht noch irgendwie anders zu lösen ?
 
wie die sfc das macht weiss niemand ausser siemens.
der fehler wird in der sfc vermutlich direkt abgefangen, oder die prüft das register direkt.

ohne ob gehts nicht. wo liegt das problem die zu benutzen?
 
Das Problem liegt darin, dass die Suchfunktion bibliotheksfähig sein muss. Der Baustein mit der Suchfunktion soll auch auf anderen SPSen lauffähig sein. Von daher ist es ganz schlecht, solche Einträge in anderen OBs zu machen. Ansonsten
wärs gar kein Problem.

PS: Ich habe deinen obigen Code ausprobiert und er funktioniert einwandfrei. Danke für die Hilfe!
 
Zuletzt bearbeitet:
Hallo seeba,

es gibt kein Problem bei der Verwendung von TEST_DB! Das Problem liegt bei der Verwendung von dem zusätzlichen OB mit einem Merker.

Kann mir aber jemand sagen, ob die SFC 24 "Test_DB" auf allen Siemens-SPSen verfügbar ist? Wenn das so ist, dann wäre mein Problem ja gelöst.
 
Zuletzt bearbeitet:
Zurück
Oben