Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Seite 2 von 2 ErsteErste 12
Ergebnis 11 bis 14 von 14

Thema: Wie kann man übersichtlich DBs im FB als IN aufrufen?

  1. #11
    Jan ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    01.01.2009
    Ort
    Niedersachsen
    Beiträge
    813
    Danke
    180
    Erhielt 79 Danke für 75 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von uncle_tom Beitrag anzeigen
    das hab ich ja oben schon beschrieben dass man mittels STRUCT oder eben einem UDT auch arbeiten kann. Dann hast du aber die doppelten Daten in der CPU (1x im Global-DB und einmal im Instanz-DB).



    Nicht viel - da dies nicht besonders elegant gelöst ist. In einem mehrfach zu verwendenden FB sollte man keine absoluten Adressen bei globalen Variablen verwenden.
    Da muss ich dir zustimmen. Das mag ich auch nicht, aber als Alternative so viel in AWL drumherum zu programmieren scheint mir den FB zu unübersichtlich zu machen, da ich ja so schon etwa 200 Signale händeln muss.
    Der FB wird nicht mehrfach aufgerufen. Immer nur einmal pro CPU.

    Ich denke, ich werde es erstmal so machen, weil auch etwas Zeitdruck dahinter steht.

    Auf jeden Fall werde ich mir später die Vorschläge genauer ansehen um den FB zu verbessern.

    Aber allen vielen Dank für die Tips.
    Gruß Jan

    Wer fragt, bekommt Antworten.

  2. #12
    Registriert seit
    17.05.2010
    Ort
    Paderborn
    Beiträge
    824
    Danke
    84
    Erhielt 125 Danke für 94 Beiträge

    Standard

    Zitat Zitat von uncle_tom Beitrag anzeigen
    das hab ich ja oben schon beschrieben dass man mittels STRUCT oder eben einem UDT auch arbeiten kann. Dann hast du aber die doppelten Daten in der CPU (1x im Global-DB und einmal im Instanz-DB).
    Hast Du Deinen Speicherplatz so eng bemessen um auf Komfort zu verzichten? Brauchst Du zwingend einen FB? Ansonsten nimm einen FC, der hat keine Instanzdaten! Wäre sinnvoll, wenn Du keine oder kaum Instanzdaten hättest!
    Grüße
    Michael

    1001101110110100... Das ist meine Welt

  3. #13
    Registriert seit
    07.06.2006
    Ort
    Bayern
    Beiträge
    623
    Danke
    27
    Erhielt 156 Danke für 139 Beiträge

    Standard

    Zitat Zitat von MCerv Beitrag anzeigen
    Hast Du Deinen Speicherplatz so eng bemessen um auf Komfort zu verzichten? Brauchst Du zwingend einen FB?
    Nehmen wir mal an, es gibt einen Softwarestandard mit Standardbausteinen. Hier gibt es dann z.B. FB´s für Antriebe, Analogeingänge, Regler, etc.
    Jeder dieser Standard-FB´s hat eine zugehörige Schnittstelle, die mittels UDT in einem Global-DB zwecks Zugriff von HMI, PLS, etc. definiert ist.
    Wenn jetzt diese Schnittstellen, den FB´s via UDT-Parameter übergeben werden, dann werden diese Schnittstellenvariablen, wie schon geschildert doppelt angelegt (Global-DB und Instanz-DB).
    Bei einer grossen Anlage mit vielen Antrieben, Analogeingängen, Reglern, etc. gibt es dann natürlich auch jede Menge solcher Schnittstellen in Global-DB´s - da kommt dan schon ein bissel was zusammen.

    Von daher ist es sinnvoller und effizienter, wenn man diese Schnittstellen bzw. Global-DB´s den FB´s als Any-Pointer übergibt, und dann mittels Any-Pointer im FB die Datenbereiche auf den TEMP-Bereich im FB um- und am Ende wieder zurückkopiert.

    Das Auflösen der Any-Pointer ist zwar etwas "gefriemel" - wenn man sich das aber einmal zurecht gelegt hat, dann ist es immer wieder das gleiche.

  4. #14
    Registriert seit
    09.06.2008
    Beiträge
    138
    Danke
    16
    Erhielt 13 Danke für 13 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von uncle_tom Beitrag anzeigen
    Das Auflösen der Any-Pointer ist zwar etwas "gefriemel" - wenn man sich das aber einmal zurecht gelegt hat, dann ist es immer wieder das gleiche.
    Genau etwas Arbeit die aber lohnt. Kannst Du immer wieder nutzen und sparst auf Dauer Zeit

Ähnliche Themen

  1. Wie kann man CP443-5 als Slave definieren?
    Von Taddy im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 11.07.2011, 14:44
  2. Wie kann man eine*.sym_xml Datei öffnen
    Von HK09 im Forum CODESYS und IEC61131
    Antworten: 2
    Letzter Beitrag: 06.07.2010, 08:35
  3. Broadcast-wie kann man das programmieren/nutzen
    Von Holger Levetzow im Forum Feldbusse
    Antworten: 1
    Letzter Beitrag: 26.05.2010, 11:10
  4. Wie kann man in Deutschland obdachlos werden ?
    Von trinitaucher im Forum Stammtisch
    Antworten: 8
    Letzter Beitrag: 09.02.2007, 00:39
  5. Wie kann man auf ein MP zugreifen.....
    Von Frustrated im Forum HMI
    Antworten: 2
    Letzter Beitrag: 19.12.2006, 14:24

Stichworte

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •