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

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 11

Thema: Baustein aufruf

  1. #1
    Registriert seit
    11.12.2008
    Beiträge
    226
    Danke
    92
    Erhielt 2 Danke für 2 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Programmiersprache: AWL
    Habe den gleichen Baustein mehrmals als Multiinstanz mit Parameter - Übergabe in einem Netzwerk aufgerufen. Und jetzt kommen mir die zweifel:
    Wie oft kann ich einen Baustein mit Parameterübergabe / Netzwerk aufrufen??


    Danke im Vorraus:::
    Zitieren Zitieren Baustein aufruf  

  2. #2
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.218
    Danke
    533
    Erhielt 2.696 Danke für 1.948 Beiträge

    Standard

    Zitat Zitat von zloyduh Beitrag anzeigen
    Programmiersprache: AWL
    Habe den gleichen Baustein mehrmals als Multiinstanz mit Parameter - Übergabe in einem Netzwerk aufgerufen. Und jetzt kommen mir die zweifel:
    Wie oft kann ich einen Baustein mit Parameterübergabe / Netzwerk aufrufen??


    Danke im Vorraus:::
    Soviele Bausteine wie du vom Platz her hineinbekommst, kannst du auch aufrufen. Wichtig natürlich, jeder FB muß seinen eigenen Instanz-DB-bekommen.
    Gruß
    Ralle

    ... there\'re 10 kinds of people ... those who understand binaries and those who don\'t …
    and the third kinds of people … those who love TIA-Portal

  3. #3
    Registriert seit
    08.08.2007
    Beiträge
    14
    Danke
    0
    Erhielt 1 Danke für 1 Beitrag

    Standard

    jo richtig und wenn es in die tiefe geht ( Verschachtelungstiefe / Multiinstanz ) dann must du gucken was deine CPU hergibt

  4. #4
    zloyduh ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    11.12.2008
    Beiträge
    226
    Danke
    92
    Erhielt 2 Danke für 2 Beiträge

    Standard

    Zitat Zitat von Ralle Beitrag anzeigen
    Soviele Bausteine wie du vom Platz her hineinbekommst, kannst du auch aufrufen. Wichtig natürlich, jeder FB muß seinen eigenen Instanz-DB-bekommen.

    Wie ist es wenn ich den gleichen FB in einem FB mit zugehörigen DB mehrmals als Multiinstanz aufrufe.

  5. #5
    Registriert seit
    08.08.2007
    Beiträge
    14
    Danke
    0
    Erhielt 1 Danke für 1 Beitrag

    Standard

    verstehe nit ganz was du meinst...

    Code:
    CALL FB1,DB1
    CALL FB1,DB1
    CALL FB1,DB1
    ergibt genau das gleiche wie

    Code:
    CALL FB1,DB1
    wenn du das mehrmals aufrufen möchtest dann must du für jede Instanz einen neuen DB nehmen.


    Code:
    CALL FB1,DB1
    CALL FB1,DB2
    CALL FB1,DB3


    ist es das was du meinst?

  6. #6
    Registriert seit
    19.07.2010
    Beiträge
    1.288
    Danke
    213
    Erhielt 267 Danke für 233 Beiträge

    Standard

    Multiinstanz heist das die Instanz eines FB im Instanz-DB des aufrufenden FB liegt.

    Das heißt FB1 wird in FB 2 drei mal aufgerufen.
    Dann besteht der Instanz-DB des FB2 aus drei mal Instanz-DB von FB1
    mfG Aventinus

  7. #7
    Registriert seit
    19.06.2003
    Ort
    Im Staub ...
    Beiträge
    337
    Danke
    115
    Erhielt 26 Danke für 23 Beiträge

    Standard

    Du programmierst z.B. den FB1 mit der gewünschten Funktion und den gewünschen Parametern.

    Dann kannst du es so machen, wie es SB-Soft bereits geschrieben hat.
    Im FB2 ...
    Code:
    Call FB1, DB1
    ... Parameter
    
    Call FB1, DB2
    ... Parameter
    
    Call FB1, DB3
    ... Parameter
    Du kannst aber auch im FB2 in die Parameterliste statische Parameter vom Typ FB1 eintragen.
    Z.B.
    Name: Schrittkette1 vom Typ FB1
    Name: Schrittkette2 vom Typ FB1
    Name: Schrittkette3 vom Typ FB1

    Dann schreibst Du im FB2 ...
    Code:
    Call "Schrittkette1"
    ... Parameter
    
    Call "Schrittkette2"
    ... Parameter
    
    Call "Schrittkette3"
    ... Parameter
    Im OB1 schreibst Du dann ...
    Code:
    Call FB2, DB2
    Es wird dann ein Instanz-DB mit 3 Instanz-Blöcken eingerichtet (Multi-Instanz-DB).
    Call Schrittkette1 arbeitet mit dem 1.ten Block
    Call Schrittkette2 arbeitet mit dem 2.ten Block
    usw.

    Gruß

  8. Folgender Benutzer sagt Danke zu ssound1de für den nützlichen Beitrag:

    zloyduh (19.08.2010)

  9. #8
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.218
    Danke
    533
    Erhielt 2.696 Danke für 1.948 Beiträge

    Standard

    Zitat Zitat von SB-Soft Beitrag anzeigen
    verstehe nit ganz was du meinst...

    Code:
    CALL FB1,DB1
    CALL FB1,DB1
    CALL FB1,DB1
    ergibt genau das gleiche wie

    Code:
    CALL FB1,DB1
    Da würde ich aber nicht drauf wetten, interessante Dreckeffekte wären vorprogrammiert, je nachdem, was im FB steckt!
    Gruß
    Ralle

    ... there\'re 10 kinds of people ... those who understand binaries and those who don\'t …
    and the third kinds of people … those who love TIA-Portal

  10. Folgende 2 Benutzer sagen Danke zu Ralle für den nützlichen Beitrag:

    ssound1de (19.08.2010),zloyduh (19.08.2010)

  11. #9
    Registriert seit
    13.10.2007
    Beiträge
    12.024
    Danke
    2.784
    Erhielt 3.268 Danke für 2.156 Beiträge

    Standard

    Komische Antworten hier
    Für mich ist eine Multiinstanz folgendes, im
    Kopf (Statische Lokalvariabeln) eines FB, in
    unseren fall zb FB1 wird ein anderer FB Deklariert,
    zb FB2.

    Code:
    FB1
    
    Stat_VAR
    Aufruf_1   FB2
    Aufruf_2   FB2
    
    Call Aufruf_1
    Call Aufruf_2
    Wenn jetzt der FB1 mit seiner eigener Instanz zb DB1,
    aufgerufen wird, stehen die Daten von diesen mehrfach
    aufrufen in einer Instanz.
    Geändert von rostiger Nagel (19.08.2010 um 18:55 Uhr) Grund: Mit IPhone antworten, ist echt Käse.
    - - -
    Wer als Werkzeug nur einen Hammer hat, sieht in jedem Problem einen Nagel.

  12. Folgender Benutzer sagt Danke zu rostiger Nagel für den nützlichen Beitrag:

    zloyduh (19.08.2010)

  13. #10
    Registriert seit
    19.06.2003
    Ort
    Im Staub ...
    Beiträge
    337
    Danke
    115
    Erhielt 26 Danke für 23 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von Helmut_von_der_Reparatur Beitrag anzeigen
    Wenn jetzt der FB1 mit seiner eigener Instanz zb DB1,
    aufgerufen wird, stehen die Daten von diesen mehrfach
    aufrufen in einer Instanz.
    Siehe unterer Teil von Beitrag 7. Ein DB enthält mehrere Instanz-Blöcke (Multi-Instanz-DB).
    Die Daten von Schrittkette1 stehen z.B. in DBB0-9
    die Daten von Schrittkette2 in DBB10-19
    usw.
    Der DB wird ja von Step7 selbst angelegt mit der benötigten Anzahl an Instanzen, je nachdem, wieviele Stat-Var vom Typ FB1 angelegt wurden.
    Man kann den Multi-Instanz-DB ja auch gleich für 10 Schrittketten vorbereiten, indem man 10 Stat-Var vom Typ FB1 anlegt.

    Natürlich geht auch...
    Code:
    Call FB1, DB1
    Call FB1, DB2
    Call FB1, DB3
    Hier wird dann für jeden Aufruf ein eigener DB erzeugt, mit der Anzahl und Größe der im FB1 hinterlegten Stat-Variablen.

    Wie Ralle schon geschrieben hat, würde ich aber auf keinen Fall schreiben ...
    Code:
    Call FB1, DB1
    Call FB1, DB1
    Call FB1, DB1
    Könnte ungut enden.

Ähnliche Themen

  1. FB Aufruf in S7 SCL
    Von Starter im Forum Simatic
    Antworten: 5
    Letzter Beitrag: 24.10.2011, 14:16
  2. Antworten: 17
    Letzter Beitrag: 08.03.2011, 10:00
  3. SFC-Aufruf in SCL
    Von Vatter im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 05.04.2008, 16:43
  4. aufruf von FC
    Von awl-scl im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 10.12.2007, 12:49
  5. Wie oft FC1/FC2 aufruf?
    Von Kojote im Forum Feldbusse
    Antworten: 1
    Letzter Beitrag: 04.11.2004, 09:33

Lesezeichen

Berechtigungen

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