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

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

Thema: FB mehrmals benutzen

  1. #1
    Registriert seit
    29.07.2006
    Beiträge
    14
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Grüße dich,

    SPS: 315-2DP
    Software: Step 7
    Aufgabe: ich möchte einen Baustein erstellen, der eine Funktion ausführt, die ich mehrmals im Programm aufrufen kann.

    Frage: Welcher Lösungsweg ist der Vorteilhafte?

    1) FB1 -> für Baustein mit der Funktion,
    FB2, DB12 -> mit: call FB1, DB1
    FB3, DB13 -> mit: call FB1, DB2
    FB4, DB14 -> mit: call FB1, DB3 usw.

    Oder anders?

    Danke für deine Erklärung..
    Zitieren Zitieren FB mehrmals benutzen  

  2. #2
    Registriert seit
    14.11.2006
    Ort
    Aalen
    Beiträge
    43
    Danke
    7
    Erhielt 0 Danke für 0 Beiträge

    Standard



    ich würde es so machen du programmierst einen Funktionsbaustein und rufst ihn dann mehrmals auf.
    Der Name des FBs bleibt gleich, nur die Datenbausteine musst du anders benennen.

    Gruß
    Geändert von IBN_Christian (15.11.2006 um 13:54 Uhr)

  3. #3
    Registriert seit
    07.05.2004
    Ort
    Campbelltown
    Beiträge
    2.437
    Danke
    131
    Erhielt 276 Danke für 86 Beiträge

    Standard

    Die Beschreibung lässt viel offen.

    Du könntest den FB in einem anderen FB auch als Multiinstanz aufrufen --> du sparst DB´s.

    Im FB möglichst keine Absolutadressen verwenden.

    pt
    Gegen Schwachsinn, Schwachköpfe und armselige Trittbrettfahrer kann man nicht argumentieren.

    Gott sieht alles, auch Signaturen in Geheimschrift,,... aber er petzt nicht.

  4. #4
    Registriert seit
    07.05.2004
    Ort
    Campbelltown
    Beiträge
    2.437
    Danke
    131
    Erhielt 276 Danke für 86 Beiträge

    Standard

    Gegen Schwachsinn, Schwachköpfe und armselige Trittbrettfahrer kann man nicht argumentieren.

    Gott sieht alles, auch Signaturen in Geheimschrift,,... aber er petzt nicht.

  5. #5
    Registriert seit
    28.06.2006
    Ort
    Königreich Neuseeland
    Beiträge
    2.027
    Danke
    133
    Erhielt 96 Danke für 76 Beiträge

    Standard

    Zitat Zitat von Zapot Beitrag anzeigen
    Grüße dich,

    SPS: 315-2DP
    Software: Step 7
    Aufgabe: ich möchte einen Baustein erstellen, der eine Funktion ausführt, die ich mehrmals im Programm aufrufen kann.

    Frage: Welcher Lösungsweg ist der Vorteilhafte?

    1) FB1 -> für Baustein mit der Funktion,
    FB2, DB12 -> mit: call FB1, DB1
    FB3, DB13 -> mit: call FB1, DB2
    FB4, DB14 -> mit: call FB1, DB3 usw.

    Oder anders?

    Danke für deine Erklärung..
    Nimm nur dann einen FB, wenn du wirklich soviele (remanente) Daten brauchst.
    Im allgemeinen bist du mit einem FC gut bedient, du brauchst dir dann keine Gedanken um den Instanz-DB zu machen.

  6. #6
    Registriert seit
    07.05.2004
    Ort
    Campbelltown
    Beiträge
    2.437
    Danke
    131
    Erhielt 276 Danke für 86 Beiträge

    Standard

    Da hat er auf jeden Fall Recht.

    siehe auch: http://www.sps-forum.de/showthread.php?t=5409
    Gegen Schwachsinn, Schwachköpfe und armselige Trittbrettfahrer kann man nicht argumentieren.

    Gott sieht alles, auch Signaturen in Geheimschrift,,... aber er petzt nicht.

  7. #7
    Registriert seit
    20.11.2004
    Ort
    Linz, OÖ
    Beiträge
    1.365
    Danke
    96
    Erhielt 177 Danke für 133 Beiträge

    Standard

    Zitat Zitat von Zapot Beitrag anzeigen
    Aufgabe: ich möchte einen Baustein erstellen, der eine Funktion ausführt, die ich mehrmals im Programm aufrufen kann.

    Frage: Welcher Lösungsweg ist der Vorteilhafte?

    1) FB1 -> für Baustein mit der Funktion,
    FB2, DB12 -> mit: call FB1, DB1
    FB3, DB13 -> mit: call FB1, DB2
    FB4, DB14 -> mit: call FB1, DB3 usw.
    Ich sehe das so:
    - Handelt es sich um einen sehr langen Baustein mit viel Logik und Berechnungen würde ich die Variante FB2,DB12 - FB3,DB13 - FB4,DB14 bevorzugen.
    - Ist der Status eindeutig aus dem Instanz-DB ersichtlich, ist das mehrmalige Verwenden eines FB mit mehreren Instanz-DBs sicher kein Problem!

    Absolute Operanden haben in einem FB meiner Meinung nach nichts zu suchen!


    Multiinstanzen
    Die mögen toll für den Programmierer sein, der das Programm schreibt und der den Anwedungsfall kennt. Sie sind allerdings für einen Laien oder Servicetechniker eine Katastrophe.
    Bei heutigen S7-CPUs mit 2047 DBs sollten Multiinstanzen (ausgenommen bei SFBs) kein Thema mehr sein! Bei uns ist erst 1 mal ein Multiinstanz-System zum Einsatz gekommen, welches in unregelmäßigen Abständen unerklärliche Phänomene gezeigt hat. Es ist mittlerweile durch FB mit Instanz-DBs ersetzt worden - Multiinstanzen sind bei uns nun verboten!



    mfg
    Maxl

  8. #8
    Registriert seit
    07.05.2004
    Ort
    Campbelltown
    Beiträge
    2.437
    Danke
    131
    Erhielt 276 Danke für 86 Beiträge

    Standard

    Zitat Zitat von Maxl Beitrag anzeigen


    Multiinstanzen
    Die mögen toll für den Programmierer sein, der das Programm schreibt und der den Anwedungsfall kennt. Sie sind allerdings für einen Laien oder Servicetechniker eine Katastrophe.
    Bei heutigen S7-CPUs mit 2047 DBs sollten Multiinstanzen (ausgenommen bei SFBs) kein Thema mehr sein! Bei uns ist erst 1 mal ein Multiinstanz-System zum Einsatz gekommen, welches in unregelmäßigen Abständen unerklärliche Phänomene gezeigt hat. Es ist mittlerweile durch FB mit Instanz-DBs ersetzt worden - Multiinstanzen sind bei uns nun verboten!



    mfg
    Maxl
    Es gibt viele Gründe MI zu nehmen, oder auch nicht. Ich habe oft mehrere gleiche Maschinenfunktionen in einer SPS => FB. In diesem FB rufe ich viele andere Standard-FB´s auf, als Multiinst. Nun sind 10 FB im FB und ich habe 10 mal die gleiche Maschine, da sind die Fehler beim FB,DB-Aufruf schon vorprogrammiert, deshalb Multi. Das die Inst damit nicht klar kommt, oder wehr auch immer, ich kenne diese Aussagen, juckt mich nicht. Bei den Preiskämpfen am Markt kürze ich auch ab, genauso setzte ich ja Zeiger ein und AWL, ebenfalls zum grauen der meisten Nichttäglichprogrammierer. Wenn ich an einem Audi mit 2,5L TDI Motor den Zahnriemen wechseln möchte, verliefe ich auch, an meinem Audi 80 Bj. 78 konnte ich locker 10 Stück am Tag wechseln und dabei auch noch 20 Umpen nebenbei mitwechseln .

    Probleme hatte ich auch schon mal mit den MI´s. Irgendetwas verbiegt sich bei den Bausteinen, wenn sie größer werden, mit FB, DB Aufruf ging es dann . Ist aber schon länger her, das es so war.

    Gruß, pt
    Gegen Schwachsinn, Schwachköpfe und armselige Trittbrettfahrer kann man nicht argumentieren.

    Gott sieht alles, auch Signaturen in Geheimschrift,,... aber er petzt nicht.

  9. #9
    Registriert seit
    02.04.2006
    Ort
    nähe Muc
    Beiträge
    2.787
    Danke
    115
    Erhielt 126 Danke für 107 Beiträge

    Standard

    u kannst auch vom Programm einen temporären DB öffen und deien Werte hinein kopieren
    Ein späterer Programmierer wird dich aber dafür verfluchen und das nicht zu knapp.


    Gegen Multiinstanz DB`s wüsste ich nicht was bei sauberer Programmierung dagegen sprechen sollte.


    Bei einen FB Aufruf nimmt man natürlich jeweils einen eigenen DB für die Aufruffunktion. Mit den Daten musst du ihn halt füttern. Parallel dazu kannst du ja andere DB für deine direkten Daten verwenden. Der FB muss für die Kommikation jedoch immer seinen ganz eigenen DB und auch VAR erhalten.
    ___________________________________________





    Sende eine SMS mit dem Stichwort "Feuer" an die 112 und innerhalb von 10 Minuten steht ein roter Partybus mit derbem Sound vor deiner Tür.


    AGB: Wer Rechtschreibfehler findet darf diese behalten. Bitte meine in eile gefertigten, selten anfallenden Vertipsler zu entschuldigen.

  10. #10
    Registriert seit
    22.11.2005
    Ort
    kl.Odenwald
    Beiträge
    716
    Danke
    111
    Erhielt 85 Danke für 71 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von plc_tippser Beitrag anzeigen


    Es gibt viele Gründe MI zu nehmen, oder auch nicht. Ich habe oft mehrere gleiche Maschinenfunktionen in einer SPS => FB. In diesem FB rufe ich viele andere Standard-FB´s auf, als Multiinst. Nun sind 10 FB im FB und ich habe 10 mal die gleiche Maschine, da sind die Fehler beim FB,DB-Aufruf schon vorprogrammiert, deshalb Multi. Das die Inst damit nicht klar kommt, oder wehr auch immer, ich kenne diese Aussagen, juckt mich nicht. Bei den Preiskämpfen am Markt kürze ich auch ab, genauso setzte ich ja Zeiger ein und AWL, ebenfalls zum grauen der meisten Nichttäglichprogrammierer. Wenn ich an einem Audi mit 2,5L TDI Motor den Zahnriemen wechseln möchte, verliefe ich auch, an meinem Audi 80 Bj. 78 konnte ich locker 10 Stück am Tag wechseln und dabei auch noch 20 Umpen nebenbei mitwechseln .

    Probleme hatte ich auch schon mal mit den MI´s. Irgendetwas verbiegt sich bei den Bausteinen, wenn sie größer werden, mit FB, DB Aufruf ging es dann . Ist aber schon länger her, das es so war.

    Gruß, pt
    Vielleicht liegt's an der Hantierung mit Adressregistern? Sind die Dinger in awl geschrieben?
    Hab bisher selten MI's eingesetzt, und wenn, dann den Baustein richtig zu gemacht um Fehler beim Akutalisieren der Instanz-DB's zu vermeiden.
    ( Dies bekommen andere PLC-hersteller auch einfacher hin, als Siemens, der Anwender sollte sich normalerweise gar nicht um die Instanzen DBs kümmern müssen)

    hth


    Kiestumpe

Ähnliche Themen

  1. erstellter FB mehrmals verwenden
    Von S7Sync im Forum Simatic
    Antworten: 14
    Letzter Beitrag: 27.07.2011, 17:57
  2. Baustein mehrmals aufrufen...
    Von pinolino im Forum Simatic
    Antworten: 12
    Letzter Beitrag: 02.06.2010, 21:29
  3. meldefenster popt mehrmals auf
    Von wachsi im Forum HMI
    Antworten: 1
    Letzter Beitrag: 21.11.2008, 11:44
  4. Instanz DB mehrmals aufrufen
    Von Deep Blue im Forum Simatic
    Antworten: 1
    Letzter Beitrag: 14.08.2007, 12:39
  5. Timer in FB mehrmals verwenden
    Von Mike_S7 im Forum Simatic
    Antworten: 9
    Letzter Beitrag: 10.12.2006, 12:38

Lesezeichen

Berechtigungen

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