TIA Frage zu Speichergliedern

SDavid

Level-2
Beiträge
8
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
meine Frage bezieht sich darauf ob es bei SR Gliedern grundsätzlich nötig ist einen Merker anzugeben,bzw ob es eine Vorschrift gibt, die dies vorschreibt.
Oder anders gefragt:
Ist das Sr Glieder.PNG richtiger als das SR Glied 2.PNG?

mfg
 
Du musst dafür nicht unbedingt einen Merker nutzen.
Wenn du mit einem FB arbeitest, kannst du auch eine statische Variable verwenden.
Du kannst auch eine Variable aus einem Global DB dafür nutzen.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Grundsätzlich würde ich sagen Variante 1 "richtiger" ist. Obwohl natürlich beides funktioniert. Eine überall gültige Vorschrift gibt es nicht. Als erstes zählt das Lastenheft deines Kunden (falls es ein Programmierspezifisches gibt), dann der Standard deiner Firma, dann die Wünsche der Instandhaltung deines Kunden (falls die kein Lastenheft geschrieben haben) und irgendwo gibts auch noch Siemens Programmierleitfäden.

Ich sage Variante 1 ist besser weil:
1. Ausgänge sollten nur einmal beschrieben werden (bei einem SR Glied sinds streng genommen zweimal)
2. Ausgänge sollten nicht gelesen werden. Falls du in deinem Programm mal wissen musst ob die Hydraulik an ist, ist es "schöner" den Merker SR1 zu lesen als den Ausgang.

Und anstatt einem Merker würde ich einen Variable in einem Global-DB verwenden und die sinnvoll benennen. z.B. Maschinenstatus.Hydraulik_ein
 
Und was soll das für einen Nutzen bringen. Wills Du die Instandhalter verwirren ?

Was soll den Instandhalter verwirren, wenn ich DB-Bereiche nutze?

Wir arbeiten komplett ohne Merkerbereiche und machen alles über Global-DBs oder in einem FB, wenn die Variable nicht außerhalb vom Baustein genutzt wird, mit statischen Variablen.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Es müssen auf jeden Fall Bool-Variablen sein, die sich was merken (speichern) können bis zum nächsten Programmdurchlauf.
- Merker (%M..), Ausgänge (%Q..), DB-Variablen, Static-Variablen sind geeignet
- TEMP-Variablen und Eingänge (%I..) sind nicht geeignet

In Deinem zweiten Bild benutzt Du %I10.2 als Speichervariable - das wird nicht funktionieren wenn an der Adresse %I10.2 eine Eingangsbaugruppe existiert, oder ist das ein Tippfehler?

Harald
 
Oh du hast Recht. Ja das war ein Tippfehler. Mir ging es bei den Bildern auch lediglich um die Form und nicht den Inhalt :-?
 
Zurück
Oben