TIA: DBs statt Merker

michi*

Level-2
Beiträge
100
Reaktionspunkte
3
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
an sich ein alter Hut und es gibt viele Themen schon dazu.
Jedoch wollte ich euch mal fragen wie Ihr das handhabt.

Ich würde gerne auch die Merker aus meinem SPS Programm verschwinden lassen und stattdessen mit einer DB arbeiten.


Meine Frage ist: Wie teilt ihr das auf?
Macht Ihr für jeden Teilbereich einen neuen Datenbaustein und tragt dort dann die jeweiligen "Merker" ein oder
benutzt ihr meist einen DB und benutzt den für alle Merker aufgaben.?
 
Wenn du Systemmerker verwenden willst kannst du nicht drauf verzichten.
(Clockbyte und Always true. und so weiter).

Ich würde gerne auch komplett auf Merker verzichten aber mach es nicht.
In ein begrenzte Zahl benutze ich die doch.
Unser Anlagen sind mit das KKS System programmiert.
Und dann ist nur die KKS-Beschriftung am Merker (ohne vorbeschriftung vom DB) natürlich toll.

Bram
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Dann aber auch versuchen, diese nur Lokal anzuwenden.

Ich weiss, dass die Globale Verwendung von IDB-Variablen eher pfui ist, bzw. als schlechter Programmierstil angesehen wird. Sicherlich gibt es für diese Meinung auch Gründe. Aber es gibt auch Gründe die für eine globale Verwendung sprechen, wenn das Gesamtkonzept/Programmierstil darauf abgestimmt ist.

Kommt halt immer auf den konkreten Anwendungsfall an.

Für FBs in denen die Steuerungslogik für die Anlage programmiert wird, und dieser FB NIE mehrmals verwendet wird, und dieser FB so viele IN, OUTs benötigen würde, um alle benötigten Daten per Schnittstelle an wen auch immer zu übergeben, und dieser FB nicht multiinstanzfähig, beliebig verwendet wird, und die Struktur des IDB ordentlich definiert wurde/ist/bleibt... Dann greife ich auch global auf die IDB Variablen zu.

Bei einem mehrfach verwendbaren universellen Motorbaustein z.B. sollte man sowas natürlich vermeiden, wobei da aber selbst der Zugriff vom HMI auf die IDB-Variablen oft gemacht wird.

Gruß.
 
Ich habe es früher auch so gemacht, versuche es mir gerade ab zu gewöhnen.

Mann schafft sich mit dieser Art der strickten Trennung natürlich ein DB Grab.
 
Und dann ist nur die KKS-Beschriftung am Merker (ohne vorbeschriftung vom DB) natürlich toll.

Merker haben natürlich auch Vorteile gegenüber DBs... Wenn ich alleine an die Reinitialisierungswut von TIA denke, hatten wir kurzzeitig überlegt, unter TIA wieder komplett von DBs auf Merker zurückzugehen... Haben uns aber dann für die Ausprogrammierung von DB-Rettungsverfahren entschieden...

Gruß.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich habe es früher auch so gemacht, versuche es mir gerade ab zu gewöhnen.

Mann schafft sich mit dieser Art der strickten Trennung natürlich ein DB Grab.

Der Vorteil bei uns: Die Steuerlogik, Freigaben,verriegelungen, Aufruf Motorbaustein, was auch immer für einen Motor werden bei uns in einem Netzwerk eines FB programmiert. Pro Netzwerk gibt es weiterhin ein Struct in den Stat Variablen dieses FB. Dort liegt dann alles was so benötigt wird. Im nächsten Netzwerk wird dann der nächste Motor behandelt usw. Dadruch liegen immer alle zugehörigen Variablen in diesem IDB und nicht sonstwo in nem Merkerbereich, GlobalDB etc.

Wenn ich jetzt von ausserhalb einige von diesen Variablen benötige, z.B. um Meldungen zu generieren, oder am Messwert Meldungen zu sperren, was auch immer... greife ich auf diese IDB-Variablen von ausserhalb des FB zu. Darin sehe ich generell keine Probleme, und da bei uns 100erte Anlagen so gebaut sind und werden, weiss auch jeder Mitarbeiter Bescheid.

Gruß.
 
Hi,
was bei mir mindestens gegen IDB Zugriffe spricht ist die Tatsache das diese nicht in der Querverweisliste zumindest in Classic nicht gefunden werden. Einzige Ausnahme ist bei mir der HMI Zugriff da der eh gar nicht gesucht werden kann (bei Fremd HMI).

Gruß
Mario
 
Hi,
was bei mir mindestens gegen IDB Zugriffe spricht ist die Tatsache das diese nicht in der Querverweisliste zumindest in Classic nicht gefunden werden. Einzige Ausnahme ist bei mir der HMI Zugriff da der eh gar nicht gesucht werden kann (bei Fremd HMI).
Das mit den Querverweisen unter TIA werd ich mal testen. Letzte Woche wollte ich mal nen Querverweis auf nen GlobalDB machen, dabei ist's TIA abgestürzt ;) Interessante Frage.
Gruß.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Apropos Querverweise: wie bekommt man Querverweise für einen beliebigen Operand?

(also einen Operand, der nicht im angezeigten Programmstück verwendet wird, z.B. ich habe keinen Schimmer und will wissen wo %I0.0 verwendet wird)

Harald
 
Das mit den Querverweisen unter TIA werd ich mal testen. Letzte Woche wollte ich mal nen Querverweis auf nen GlobalDB machen, dabei ist's TIA abgestürzt ;) Interessante Frage.
Gruß.

Im FUP sehts du nur die querverweise vom idb variabe selber.
Im SCl kannst du auch auf das teil der variable klicken "was der DB ist" und dann hast du die querverweis zum idb aufruf
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich würde gerne auch komplett auf Merker verzichten ....
Warum denn?

Als die ersten Gerüchte über TIA und die 1500er erschienen hieß es:
Kein AWL und keine Merker mehr.
Beides waren Falschmeldungen.
Merker sind einfach Speicherbereiche und sogar die Remanenz-Zuweisung ist bei der 1500er komfortabler geworden.
 
Merker sind einfach Speicherbereiche und sogar die Remanenz-Zuweisung ist bei der 1500er komfortabler geworden.

Ja stimmt.
Ich hab 1 migriertes S7 classic Programm nach nach eine 1516 wo ich sogar die Remanenz der Merker benutzt hab.
Da war vorher ein Rettungs DB projektiert in S7 Classic.

Das verzichten auf Merker hat auch mit der wiederverwendbarkeit zu tun.
Aber das ist jetzt nichts neues vom TIA. War in classic auch so.

Bram
 
Also wir nutzen einen speziellen Merker-DB. Dort sind dann die einzelnen Programmteile als struct hinterlegt. Beispielsweise Maschinenzustand oder Störung als struct und dann darunter die Merker.
So ist es übersichtlich und die Merker sind von überall erreichbar.
Die Reinitialisierung spielt bei unseren Maschinen aber keine Rolle.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
warum keine Merker?
Bei Merker muß der Programmierer die Adressen verwalten (Adressüberschneidungen sind möglich),
bei DBs übernimmt das System die Speicherverwaltung.

Gruß
Felix
 
Von irgendwoher habe ich im Hinterkopf, dass mal gesagt wurde, dass Merker die SPS langsamer machen als wenn man sie aus einem DB nimmt.

Kann aber auch totaler Quatsch sein.
Ich persönlich finde aber die Struktur mit DB besser zum wiederfinden von Merkern.
 
Also laut Siemens sind "Optimierte Global-DB's" leistungsfähiger, wie gesagt aber nur solange du den DB optimiert lässt.

Ich bin Aktuell an meinem Techniker Abschlussprojekt und werde keine Merker verwenden. Der Aufwand ist zwar etwas größer da es noch keine Struktur in dem Unternehmen diesbezüglich gibt, aber ich denke es wird sich lohnen. :)
Obwohl die komplette Abteilung "Merkerfiziert" ist.
 
Zurück
Oben