Profibus DP bei Ausfall DP Slave Eingangsdaten auf DP Master "0"

hubert

Level-2
Beiträge
405
Reaktionspunkte
26
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Miteinander,

ist in der DP Norm festgelegt, dass beim Ausfall eines DP Slaves alle Eingangsdaten beim DP-Master den Wert "0" haben? Wenn ja wie heißt die Norm und wo ist das in der Norm niedergeschrieben. Brauche dies für einen Kunden, da ich dies nachweisen muss. Den bei dieser Anlage ist es so, dass wenn der DP-Slave ausfällt allle Eingangdaten beim DP Master den Wert "0" haben.
Ich hoffe ihr könnte mir da helfen. Wäre sehr wichtig für mich.
 
eine norm kenn ich nicht. aber was soll der master denn für werte haben, wenn er seinen slave nicht mehr findet?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo.

theoretisch wäre auch möglich das er sich die letzten Werte behält, die er vom Slave bekommen hat. Aber die Werte sind immer noch. Also ist das nirgends niedergeschrieben, dass das so sein soll, dass er immer "0"Werte bei Stationsausfall liest?
 
Keine Ahnung von Norm in dem Zusammenhang ..

Prinzipiell erlaubt die Norm aber wohl div. Einstellmöglichkeiten.
Stichworte: Ansprechüberwachung, Ersatzwert

Das mit "Null" ist in aller Regel ganz einfach die sicherste Variante,
ist aber ein "Service" des Masters, und steht in unmittelbaren Zusammenhang mit der Ansprechüberwachung.

Mfg
Manuel
 
Soweit ich weiß, kann man das bei vielen PB Mastern einstellen ob sie die Werte auf 0 setzen oder den letzten Stand beibehalten. Letztere Variante würde ich aber nur verwenden wenn ich gleichzeitig die Diagnosedaten des Masters überwache oder ein LiveBit toggle und auf diese Art und Weise eine Busstörung feststellen kann.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Stichworte: Ansprechüberwachung

In der Step7-Hilfe steht dann dazu:
Mit der Ansprechüberwachung haben Sie die Möglichkeit, daß der DP-Slave auf einen Fehler vom DP-Master oder auf eine Unterbrechung des Datenverkehrs auf dem Bus reagieren kann.
Wenn der DP-Slave innerhalb der projektierten Ansprechüberwachungszeit nicht angesprochen wird, dann geht der DP-Slave in den sicheren Zustand (alle Ausgänge auf "0" gesetzt oder Ersatzwertausgabe).
Gefahr
Wenn Sie die Ansprechüberwachung ausschalten, dann werden unter Umständen im Fehlerfall die Ausgänge des entsprechenden DP-Slaves auf nicht "0" gesetzt.
Wir empfehlen Ihnen deswegen dringend, die Ansprechüberwachung nur für die Inbetriebnahme auszuschalten.

Für die "Ansprechüberwachung" gibt's dann nen Haken, den man setzen oder nichtsetzen kann.

Gruß.

PS: die Ansprechüberwachung bezieht sich somit nach meinem Verständnis auf den Slave und seine Ausgänge. Zum Verhalten des Masters, bzw. dessen Eingangswerten fällt mir grad nix ein.
 
Zuletzt bearbeitet:
Hallo Miteinander,

danke schon mal für die Antworten. Ist die Sache mit der Ansprechüberwachung und des Ersatzwertes in einer Profibus Norm festgelegt? Wenn ja, wie heißt diese Norm
 
Wenn dann in der Profibus-Spezifikation.
Ich habe mal nachgeguckt ob man da was findet. Das Dokument ist mit fast 1000 Seiten aber etwas unübersichtlich.
Es gibt dort aber die Beschreibung einer Zustandsmaschine für einen Profibus-Slave. Dort gibt es einige Transitionen bei denen dort steht dass bei diesem Übergang u.a. die Aktion "Input_Data = 0" ausgelöst werden soll. "Input_Data" sind die Eingangsdaten eines Slaves für das User-Interface.
Im Bild im Anhang z.B. beim Übergang von WDATA über ERR0 auf UNLCK, oder SUNLCK über STOP7 auf STOP

Ist nur die Frage ob man sich bei einer SPS auf diese Norm beziehen kann, denn dazwischen sitzt bei einer SPS noch das Betriebssystem der Steuerung oder des Profibus CPs mit einer Menge Anwendungsebenen dazwischen. D.h. es könnte sein dass das User-Interface in der Profibus Norm nicht das Interface ist welches du in deinem SPS-Programm zu Gesicht bekommst.
 

Anhänge

  • Profibis-State-Slave-Handler.jpg
    Profibis-State-Slave-Handler.jpg
    55,6 KB · Aufrufe: 25
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Thomas,

das hört sich schon sehr interessant an. Was ich allerdings nicht in dem Diagramm sehe, ist der "Input_Data = 0".
Mal noch eine andere frage, kannst du mir dieses Handbuch auch zukommen lassen oder ist es nicht für die Allgemeine Öffentlichkeit zugänglich?
 
Peripheriezugriffsfehler

In den Profibus-Normen ist nur standardisiert wie sich der Profibus-Slave verhält - man googele nach "Profibus Ansprechüberwachung".
Wie sich der Profibus-Master verhält ist nicht Bestandteil der Profibus-Normen.

Beim S7-Master richtet sich das Verhalten nach dem Verhalten der CPU bei "Peripherie-Zugriffsfehler" (PZF).
Wenn ein Profibus-Slave nicht erreichbar ist, dann werden durch die Firmware der CPU die Eingangsbytes auf "0" gesetzt und OB85 (bei PZF bei PAE-Aktualisierung) oder OB122 (bei PZF bei Peripherie-Direktzugriff) aufgerufen. Wenn OB85 oder OB122 nicht vorhanden sind, dann geht die CPU in STOP.

Hilfe zu STEP 7 schrieb:
Peripheriezugriffsfehler (PZF) bei Prozessabbild-Aktualisierung

Die voreingestellte Reaktion der CPU-Familien (S7-300 und S7-400) ist bei einem Fehler während der Prozessabbild-Aktualisierung unterschiedlich:
  • S7-300: Kein Diagnosepuffer-Eintrag, kein OB-Aufruf; die entsprechenden Eingangsbytes werden auf "0" gesetzt und bleiben auf "0", bis der Fehler wieder geht.
  • S7-400: Diagnosepuffer-Eintrag und Start des OB 85 bei jedem Zugriff auf die Peripherie bei jeder Aktualisierung des entsprechenden Prozessabbilds. Die fehlerhaften Eingangsbytes werden bei jedem Zugriff auf das Prozessabbild auf "0" gesetzt.
Bei neuen CPUs (ab 4/99) können Sie die Reaktion bei Peripheriezugriffsfehlern umparametrieren, so dass die CPU
  • nur bei kommendem und gehendem PZF einen Diagnosepuffer-Eintrag erzeugt und den OB 85 startet (vor Aufruf des OB 85 werden die fehlerhaften Eingangsbytes auf "0" gesetzt und danach bis zum gehenden PZF nicht mehr vom Betriebssystem überschrieben) oder
  • das voreingestellte Verhalten der S7-300 zeigt (kein OB-85-Aufruf, die entsprechenden Eingangsbytes werden auf "0" gesetzt und vom Betriebssystem nicht mehr überschrieben, bis der Fehler behoben ist) oder
  • das voreingestellte Verhalten der S7-400 zeigt (OB-85-Aufruf bei jedem einzelnen Zugriff, die fehlerhaften Eingangsbytes werden bei jedem Zugriff auf das Prozessabbild auf "0" gesetzt)

Welcher Ersatzwert bei PZF bei Peripherie-Direktzugriff für die nicht vorhandene Eingangsbaugruppe geliefert werden soll kann man im OB122 mit der SFC44 RPL_VAL festlegen.
Hilfe zu STEP 7 schrieb:
Einfügen von Ersatzwerten bei Fehlererkennung

Fällt eine Eingabebaugruppe aus, erzeugt die Bearbeitung der Anweisung L PEB0 einen synchronen Fehler und startet den OB 122. Standardmäßig liest der Ladebefehl den Wert 0 ein. Sie können jedoch mit der SFC 44 beliebige zum Prozess passende Ersatzwerte definieren. Die SFC ersetzt den AKKU-Inhalt durch den vorgegebenen Ersatzwert.

Harald
 
Hallo Harald,

das ist ja sehr interssant. Darf man fragen, woher du diese Informationen hast? Sind die aus einem Siemens FAQ?
 
PN/DP hat da mal wieder das richtige ausgegraben :s12:

d.h. eine Ersatzwertaufschaltung oder auch Aufschaltung des letzten gültigen Wertes müsste man in Step7 händisch im Fehler-OB programmieren.

In PCS7 machen das die Treiberbausteine der PCS7-Bibliothek, nur weil abundzu mal die Frage aufkommt, wozu PCS7 gut ist :)

Gruß.
 
Darf man fragen, woher du diese Informationen hast? Sind die aus einem Siemens FAQ?
Die sind aus der Hilfe zu STEP 7 (wie bei den Zitaten angegeben).
Falls Du kein STEP 7 hast, dann kannst Du das auch z.B. in diesem Handbuch nachlesen:
Handbuch: Programmieren mit STEP 7 V5.5
- Seite 579 im Kapitel 27.2.3.2: Prozessabbild der Ein-/Ausgänge - Peripheriezugriffsfehler (PZF) bei Prozessabbild-Aktualisierung
- Seite 507 Kapitel 23.9.3: Einfügen von Ersatzwerten bei Fehlererkennung

Allerdings finde ich nichts Entsprechendes über das Verhalten von Profibus-CP als DP-Master (z.B. CP342-5).
Da ist es ja kein Peripheriezugriffsfehler der CPU. Der CP342-5 setzt ebenfalls die Eingangsdaten auf 0. Ich weiß nicht, wie und wo man das beeinflussen könnte.

Harald
 
Zurück
Oben