Sonstiges Ein paar Fragen zu safety

Pikador

Level-1
Beiträge
244
Reaktionspunkte
17
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

ich mache mein erstes Projekt mit F-CPU. Dazu habe ich ein paar Fragen.

- Darf man Variablen die in sicheren DB's sind in "normalen" Programm abfragen?
- Kollege sagte mir, dass man eine Schnittstelle zwischen safety und normalen Programm machen sollte. Man soll in dem OB in dem das safety Programm aufgerufen wird Merker Mappen.
Etwa so:

L MW10 // Beschreiben in normalen Programm
T MW20 // Abfragen in safety Programm
CALL Safety_Prog
L MW30 // Beschreiben in safety Programm
T MW40 // Abfragen in normalen Programm

Stimmt das?

- Kennt jemand eine gute Doku zu Programmieren mit Beispielen? Siemens Doku inkl. Getting Started habe ich schon.

Vielen Dank
 
Hallo,
es spricht nichts dagegen, wenn du deinen Merkerbereich sortierst/organisierst ...
Allerdings werden Merker im F-Programm ohnehin als unsichere Veriablen eingestuft. Diese Form der Trennung bringt also schlichtweg gar nichts. Es ist sogar so, dass du über Merker Informationen vom "normalen" Programm zum F-Programm übergeben solltest (und umgekehrt) ...

Gruß
Larry
 
Zuviel Werbung?
-> Hier kostenlos registrieren
L MW10 // Beschreiben in normalen Programm
T MW20 // Abfragen in safety Programm
CALL Safety_Prog
L MW30 // Beschreiben in safety Programm
T MW40 // Abfragen in normalen Programm

Unbedingt! Wenn sich ein Merker während der F-Laufzeit ändert wird das Programm inkonsistent!
Unmittelbar vor dem F-call die Merker umkopieren, genau.
Man kann im F-Teil Merker nur lesend, oder nur schreibend bearbeiten, darum das Ganze auch umgekehrt.

- Kennt jemand eine gute Doku zu Programmieren mit Beispielen? Siemens Doku inkl. Getting Started habe ich schon.

Die Schulungsunterlagen
 
... das kann ich nun auch überhaupt nicht nachvollziehen ...

@Manfred:
Wie ist das mit dem "inkonsistent" von dir gemeint ?

Gruß
Larry
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Man braucht nur während des F-Ablaufs eine HMI-Taste drücken, die einen Merker ändert.

Naja, halt nicht inkonsistent, irgendwas in der Art. Hab momentan nix da, dass ich schauen kann was im Diagnosepuffer steht.
 
... ich denke, du meinst hier eher das Ändern der Zustände (z.B. über die Visu) in einem der F-Instanz-DB's. Das könnte das F-Programm u.U. gar nicht mögen ...

Gruß
Larry
 
Das mit den Merkern war, so viel ich weiß, eine Empfehlung von Siemens Mitarbeiter. Warum? Weiß ich nicht. Ich könnte mir vorstellen, dass wenn OB1 durch Aufruf von OB35 unterbrochen wird, nach der Rückkehr zu OB1 die Zustände in F-Programm könnten sich geändert haben und der "Rest" von OB1 arbeitet mit anderen Zuständen. Um das zu vermeiden müssten die Merker aber in OB1 gemappt werden.
Ich habe bisschen rumtelefoniert und festgestellt, dass alle so machen wie ich in den ersten Beitrag geschrieben habe, aber keiner weiß warum. :confused:
 
Zuviel Werbung?
-> Hier kostenlos registrieren
... Ich habe bisschen rumtelefoniert und festgestellt, dass alle so machen wie ich in den ersten Beitrag geschrieben habe, aber keiner weiß warum. :confused:

Das ist schon mal ein gute Voraussetzung (nennt man glaube ich nachäffen).
Einen sinnvollen Grund habe ich noch nicht erkennen können - der hätte mich allerdings schon mal interessiert ...

Gruß
Larry
 
Hallo,
das mit der Konsistenz ist so zu verstehen, daß sich ein nicht fehlersicherer Merker in der Abarbeitung im fehlersicheren Programm, z.B. wenn es ein Button aus einer Visualisierung ist, ändern kann.
Zu Beginn des fehlersicheren Teils im OB35 ist der Button noch "0" und während der Abarbeitung wird der Button "1". Im fehlersicheren Teil kann er also bei mehrfacher Verwendung im selben Aufruf unterschiedliche Werte haben.
Bei Verwendung des Taktmerkerbytes soll man daher auch dieses vor dem F-Call in ein anderes MB umkopieren. Damit werden die Bits wie "eingefroren". Wie eine Art Prozessabbild.

Gruß Frank
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
"knarf"
Danke für die Erklärung. OK, HMI kann die Merker verändern. Wenn aber meine HMI keine Merker benutzt, wer kann noch die Merker zur Laufzeit des F-Programms verändern? Alle andere OBs werden ja nicht bearbeitet.
Ich lese die Tasten für F-Programm, so wie vorgeschrieben, mit der F-Funktion "F_ACK_OP" und für "normales" Programm werden nur DB's benutzt.
 
Hallo Pikador,
in dem Falle dürften sich Deine Merker im fehlersicheren Teil nicht verändern. So eine Veränderung könnte nur von "außen" , wie z.B. ein HMI oder durch Verwendung des Taktmerkerbytes erfolgen.

Gruß Frank
 
Hallo,

Noch eine Frage. Darf man sichere Eingänge in normalen Programm abfragen? Ein Kollege sagte mir, dass man das nicht machen sollte. Es kann sein, dass bei passivieren der Karten normale Programm davon nichts mitkriegt und falsche Zustände anzeigt. Ist da was dran?

Noch eine Sache. Gibt es von Siemens vielleicht Beispiel/lern Projekte mit safety?

Viele Grüße
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Pikador,
in dem Falle dürften sich Deine Merker im fehlersicheren Teil nicht verändern. So eine Veränderung könnte nur von "außen" , wie z.B. ein HMI oder durch Verwendung des Taktmerkerbytes erfolgen.

Gruß Frank

Bei Veränderung von "aussen" wird auch immer wieder gern OPC genommen. Da ist es auch nicht vorhersehbar wann die Merker geschrieben werden.
 
Darf man sichere Eingänge in normalen Programm abfragen? Ein Kollege sagte mir, dass man das nicht machen sollte. Es kann sein, dass bei passivieren der Karten normale Programm davon nichts mitkriegt und falsche Zustände anzeigt. Ist da was dran?

Hallo,
das kommt ganz darauf an. Welche Eingänge passivierst du denn und warum ?
Grundsätzlich kannst du natürlich den Zustand der F-Eingänge auch im Standard-Programm abfragen.

Gruß
Larry
 
Hallo,
das fehlersichere PAE wird zusammen mit dem Standard PAE zyklisch eingelesen und es wird außerdem noch vor jedem F-Call aktualisiert. Da die Abarbeitung des Standard-Programms durch den OB35 des Sicherheitsprogramms unterbrochen wird, ist das fehlersichere PAE aus Sicht des Standard-Programms nicht konsistent.
Das nicht fehlersichere Programm bekommt aber das 0-Signal beim Passievieren eines fehlerhaften DI-Kanals mit.

Gruß Frank
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich hätte da auch mal eine kurze Frage.
Ich habe einen 2 kanaligen Sicherheitsschalter auf eine ET200SP geführt. Den 1. Kanal habe ich in der Var-tabelle deklariert, den 2. nicht.
Wie kann ich den Zustand des 2 Kanals online TiA V14 anschauen?? Gibt es da eine Möglichkeit ohne ihn zu deklarieren?
In der Beobachtungstabelle funzt es nicht ohne weiteres.
 
Also ich weiß nicht genau wie das im TIA ist, aber im Step7 5.6 konnte man in Beobachtungstabellen nur sichere DIs beobachten die im Sicherheitsprogramm auch verwendet wurden. Bei TIA hat man keine Beobachtungstabellen mehr, also vermute ich wird das so wie du das vor hast nicht gehen. Ist aber nur ne Vermutung...
 
Das liegt an der Definition deines Eingangs auf der Karte. In dem Moment wo den den DI als 2-kanalig deklariert hast steht dir der 2. Kanal nicht mehr seperat zur Verfügung - die Karte wertet den dann intern aus.
Es gibt dadurch den z.B. zum Eingang 16.0 zugehörigen E16.4 gar nicht mehr.
Benötigst du den Schalter nicht wirklich 2-kanalig (ich kenne deine Anforderung nicht) dann schalte die HW-Konfig auf 1-kanalig und schon siehst du beide Spuren wieder einzeln ...

Gruß
Larry
 
Zurück
Oben