Instanzen verwenden?

ottopaul

Level-1
Beiträge
160
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
folgendes. Ich habe einen FB programmiert. Dieser hat einen Instaz-DB.
Nun wird direkt auf diesen zugegriffen. einmal für die Visu (ProTool) und auch so im SPS Programm.
was spricht dagegen? Der Kunde will es nicht so. er sagt, bei erweiterung dieses FB'S verschiebt sich alles und es passt nix mehr.
auch kann man keinen Status am Ausgang sehen. ER sagt, es muss ein globaler DB oder Merker dort dran stehen. Hm

aber was spricht dagegen direkt die Instazen zu nutzen?

danke
 
...
aber was spricht dagegen direkt die Instazen zu nutzen?
...

1. Das sind lokale statische Variablen. Das lokal bedeutet das nur der FB darauf zu greifen soll.

2. Der Kunde!

Und sei froh das ich nicht der Kunde bin. Dann wärst Du ein Zulieferer gewesen.

Wo hast Du denn misst gelernt quer auf die Instanz zuzugreifen?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hi OttoPaul,

klar kann man es machen. Du machst es ja auch. Deinen Kunden kann ich aber trotzdem verstehen. Es weniger eine Frage ob es geht, als eine Frage der aufgebauten Struktur. Es gibt einfach einen globalen DB der die Schnittstelle zur Visu darstellt. In diesem befinden sich nur Daten, die auch gekoppelt werden sollen. Das ist einfach übersichtlicher.

Gruß aus Kiel
 
Also es gibt viele Kundenvorschriften die Diskussionswürdig sind,
sowas gehört aber definitiv nicht dazu.

P.S. das wichtigste Argument gegen deine Vorgehensweise hast du selbst schon geliefert,
du änderst den FB, dabei verschieben sich dann zwangsweise deine Variablen,
du darfst dein gesamtes Programm durchsuchen, das HMI durchsuchen ...

Und das alles nur weil du eine einzige IN-Variable hinzugefügt hast.

Das ist doch Scheiße, Mist, Murks.

P.S. Bete das Markus diesen Thread nicht sieht. :sm8:

Edit: @Kieler, das hat überhaupt nichts mit Übersicht zu tun. Schlimm genug das ein Zugriff bei Siemens auf die Instanz überhaupt möglich ist.

Mfg
Manuel
 
Zuletzt bearbeitet:
Hallo,
folgendes. Ich habe einen FB programmiert. Dieser hat einen Instaz-DB.
Nun wird direkt auf diesen zugegriffen. einmal für die Visu (ProTool) und auch so im SPS Programm.
was spricht dagegen? Der Kunde will es nicht so. er sagt, bei erweiterung dieses FB'S verschiebt sich alles und es passt nix mehr.
auch kann man keinen Status am Ausgang sehen. ER sagt, es muss ein globaler DB oder Merker dort dran stehen. Hm

aber was spricht dagegen direkt die Instazen zu nutzen?

danke

Zitat von MSB
P.S. Bete das Markus diesen Thread nicht sieht. :sm8:

Markus wird dich schlagen! :sm1:
Markus wird dich schlagen! :s11:

;)

Stimme natürlich den anderen Antworten zu!
Und so ein Mist will echt kein Kunde sehen!

godi
 
Zuletzt bearbeitet:
War auch mal so Einer

Wo hast Du denn misst gelernt quer auf die Instanz zuzugreifen?
So was lernt man nicht, sondern man merkt einfach das es geht und es erscheint einem dann als der "einfachste Weg".
Ich oute mich jetzt mal als einer, der das früher auch mal so gemacht hat.:sm11:
Solange man nur einen Instanz-DB hat auf den man quer zugreift "geht" das ja gerade noch, obwohl auch das schon Mist ist, da in den Referenzdaten nicht die kompletten Variablenzugriffe angezeigt werden (d.H. ich muss die Variablen einmal mit der globalen Referenzliste auf Zugriffe überprüfen und dann noch mal in dem jeweilig dazugehörigen FB auf die lokalen Zugriffe). Kommen dann noch direkte VISU- Zugriffe auf den Instanz-DB dazu wird´s noch besch***ner.
Wenn es dann noch mehrere Instanz-DB´s werden, mit denen man in dieser Art "Programmierstil" verfährt, verliert man in seinem eigenen Programm die Übersicht, bis hin zur völligen Unpflegbarkeit der Software.

Das sowas kein Kunde der etwas davon versteht haben will, ist völlig nachvollziehbar!
 
Viele Wege führen nach Rom.

Es gibt immer mehrere Varianten etwas zu realisieren.

Die Abneigungen gegen Multiinstanzen kann ich ehrlich gesagt nicht nachverfolgen. Sicherlich haben diese nicht nur Vorteile - es kommt halt auf die Anwendung an. Die Sachen mit den Verschiebungen lässt sich bei symbolischer Programmierung (damit ist nicht die Darstellungsform im Editor gemeint) problemlos korrigieren - das hat aber nichts mit Multiinstanzen zu tun. Im übrigen spielt es keine Rolle, ob ich die Daten im Global- oder im Instanz-FB verschiebe - das Ergebnis bleibt das Gleiche. Bei symbolischer Programmierung lassen sich diese Verschiebungen problemlos anpassen (man sollte dann aber die Finger von Indirekten Adressierungen mit Adressen statt Symbolen lassen) - das funktioniert auch bis ins Protool, WinCC und WinCC flex.

Wenn der Kunde sowas nicht will - nimmt man die Methode die der Kunde bevorzugt, oder lässt es - also in diesem Fall die Variante mit Global-DB.
 
nur ne Feststellung Ralle. Ich benutze es aber auch. Mal ne Frage: wer benutzt das DP-Diagnosepaket mit FB125 mit den HMI-Bildern zusammen?

André

Das ist nicht zu vergleichen, man bekommt einen feststehenden FB, der knowhowgeschützt ist. Außerdem ist auch ein Siemensprogrammierer nicht unbedingt das Maß aller Dinge:ROFLMAO:.

Ansonsten, siehe MSB, er hat vollkommen Recht. Viel Spaß übrigens in einem Fremdprogramm (aber auch in einem Eigenen), in welchem bei einem FB In-Parameter eingefügt werden ohne daß man von der zahlreichen Verquickungen weiß, das gibt lustige Effekte.

@Heizdüse

0% Ack.
Das ist viel zu unsicher, geht bei kleinsten Fehlern voll daneben. Außerdem sind, WinCCFlex sei Dank, andere Visualisierungen wieder im Kommen und da verbietet sich so etwas ohnehin.
 
Könntest Du das vielleicht näher erörtern?? Welche Probleme gibt es dabei?

Ich hab schon einige Male Pleiten damit erlebt, Ursachen kann man oft nicht sicher angeben. Aber zumindest Folgendes. Wenn mehrere Leute ein Projekt bearbeiten, wenn nicht alle Symbole in der Visu angebunden sind, wenn an DB geändert wird, die Bausteinkonsistenz aber nicht auf dem Laufenden ist, wenn die Anbindung von DB verloren ging (DB aus SPS zurückgeladen, vorher am DB geändert). Wenn Projekte mit unterschiedlichen Step7-Versionsständen bearbeitet werden. Wenn jemand in der Symbolik ändert, löscht.
Klar, wenn ich in DB neue Bereiche einfüge, nutze ich diese Funktion auch, aber nie ohne vorherige Sicherung des Projektes.

Ein weiteres Problem von Programmen, die von außen in Instanz-DB reinschmieren: Niemand (oft nicht mal der Ersteller nach 10 Tagen) kann mit Sicherheit sagen, wer wann was warum wohin schreibt. Referenzdaten und Referenzsuche für solche Daten ist dann wirklich Detektivsache. Am Besten, man greift von Außen noch über UDT-Adressierung oder Struct in die Instanz-DB, das blickt dann wirklich niemand mehr.
 
Hallo,

das mit den Instanzen kenne ich auch. Musste mal eine Änderung machen. Man sucht sich einen Wolf, wenn man das Programm nicht kennt!
Vor kurzem habe ich Anlagen in Betrieb genommen bei denen ich einen DB für Meldungen, einen DB für Befehle, einen DB für Sollwerte und einen DB für Analogwerte verwendet habe. Zusäzlich noch einen DB für den Schnittstellenbereich und die Störmeldungen für das Panel. So behält man die Übersicht, wenn man einen Fehler sucht.

Gruß Arne
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich hab schon einige Male Pleiten damit erlebt, Ursachen kann man oft nicht sicher angeben. Aber zumindest Folgendes. Wenn mehrere Leute ein Projekt bearbeiten, wenn nicht alle Symbole in der Visu angebunden sind, wenn an DB geändert wird, die Bausteinkonsistenz aber nicht auf dem Laufenden ist, wenn die Anbindung von DB verloren ging (DB aus SPS zurückgeladen, vorher am DB geändert). Wenn Projekte mit unterschiedlichen Step7-Versionsständen bearbeitet werden. Wenn jemand in der Symbolik ändert, löscht.
Klar, wenn ich in DB neue Bereiche einfüge, nutze ich diese Funktion auch, aber nie ohne vorherige Sicherung des Projektes.

Dann oute ich mich hier jetzt auch mal.
Die von Ralle genannten Problem treffen auf auf einen normalen DB unter gleichen Bedingungen zu. Ein bißchen Disziplin muss schon sein und wenn aus 3 Ecken an einem Programm herumgebastelt wird, dann bleibt immer etwas auf der Strecke. Fakt ist aber : DI's lassen sich in einer Visu genauso schön anzeigen wie DB's. Ob ich dareinschreiben würde ist so eine Sache - wobei auch da das Gleiche gilt wie beim DB ...

Ich hätte und habe kein Problem damit die Inhalte anzuzeigen ...:twisted:
 
Dann oute ich mich hier jetzt auch mal.

Hat doch nichts mit Outen zu tun, du kannst ja tun und lassen was du willst. Mir ist es ja im Prinzip schnuppe, wie andere Programmierer ihre Programme verwursten.

Die von Ralle genannten Problem treffen auf auf einen normalen DB unter gleichen Bedingungen zu.

Ja sicher, aber dann ändere ich direkt am DB und kann auch einfach etwas hintenanhängen, es verschiebt sich somit nichts. Das ist ja mal beim IDB völlig anders, oder?
 
Das ist nicht zu vergleichen, man bekommt einen feststehenden FB, der knowhowgeschützt ist. Außerdem ist auch ein Siemensprogrammierer nicht unbedingt das Maß aller Dinge:ROFLMAO:.

.

Das ist dafür,das halt auch der einfach gestrickte Progger das einsetzen kann. Dafür sollte es OK sein, aber Recht haste.

Grundsätzlich würde ich auch auf diesen Querzugriff verzichten.

pt
 
Zurück
Oben