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

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

Thema: Bausteinschnittstelle im OB1

  1. #1
    Registriert seit
    04.09.2012
    Beiträge
    252
    Danke
    45
    Erhielt 3 Danke für 3 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,

    wollte fragen, wozu man eigentlich die Bausteinschnittstelle im OB1 benötigt. Und kann man im OB1, wenn man mehrere FC´s und FB´s aufruft, an diesen FC's und FB´s immer den selben Ausgang %A1.0 beschreiben? Z.B rufe ich beim OB1 im Netzwerk1 die FC auf jund übergebe diesen %A1.0 an dessen out-Variable und im Netzwerk2 rufe ich einen FB auf und übergebe diesen %A1.0 an dessen out-Variable. Ist das erlaubt?

    Grüße
    Zitieren Zitieren Bausteinschnittstelle im OB1  

  2. #2
    Registriert seit
    09.08.2006
    Beiträge
    3.627
    Danke
    912
    Erhielt 656 Danke für 542 Beiträge

    Standard

    Es ist kein guter Programmierstil, einen Ausgang mehrfach zu beschreiben. Irgendwann findet man sich im Programm nicht mehr zurecht.

  3. #3
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.718
    Danke
    398
    Erhielt 2.400 Danke für 2.000 Beiträge

    Standard

    Hallo,
    - die OB1-Baustein-Schnittstelle ermöglicht es dir zum Einen die OB1-Systemvariablen zur verwenden (z.B. OB1_Prev_Cycle welche dir dir Dauer des letzten Programmzyklusses angibt).
    Zum Anderen kannst du darin weitere eigene TEMP-Variablen anlegen, wie in jedem anderen Baustein (FC,FB) auch.
    - wenn du einen Ausgang mehrfach zuweist dann gilt für den Ausgang nur das Resultat der letzten Zuweisung.

    Was ist der Hintergrund der Frage ?

    Gruß
    Larry

  4. #4
    siegener19 ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    04.09.2012
    Beiträge
    252
    Danke
    45
    Erhielt 3 Danke für 3 Beiträge

    Standard

    Danke für eure Antworten.
    Habe nur gefragt, da ich mehrmals auf den Ausgang zugreifen muss, also je nach Bedingung soll diese Funktion oder jene aufgerufen werden, die auf diesen Ausgang zugreift.
    Und wenn ich eine Temp-Variable, also jetzt nicht das "OB1_Prev_Cycle" im OB1 deklariere, wofür benötigt man diese?

  5. #5
    Registriert seit
    27.06.2009
    Ort
    am Nordharz
    Beiträge
    3.717
    Danke
    443
    Erhielt 919 Danke für 740 Beiträge

    Standard

    Zitat Zitat von siegener19 Beitrag anzeigen
    da ich mehrmals auf den Ausgang zugreifen muss, also je nach Bedingung soll diese Funktion oder jene aufgerufen werden, die auf diesen Ausgang zugreift.
    Auf die Hardwareausgänge muss man nicht mehrfach zugreifen.
    Das ist einfach nur eine "unschöne" Methode. Die ich aber leider auch selbst noch so in der Schule gelernt habe. (Genau wie die Benutzung von Merkern statt lokalen Variablen.)
    Besser ist es, alle Bedingungen für die Zuweisung an einer Stelle abzufragen bzw. die Bedingungen je nach Situation zu ersetzen und erst ganz zum Schluß das Ergebnis an die Ausgänge zu überweisen.


    Zitat Zitat von siegener19 Beitrag anzeigen
    Und wenn ich eine Temp-Variable, also jetzt nicht das "OB1_Prev_Cycle" im OB1 deklariere, wofür benötigt man diese?
    Z.B. um die Ergebnisse des Bausteinaufrufs in NW1 (schreibend) an den Bausteinaufruf in NW2 (lesend) zu übertragen.

  6. Folgender Benutzer sagt Danke zu hucki für den nützlichen Beitrag:

    siegener19 (19.07.2013)

  7. #6
    siegener19 ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    04.09.2012
    Beiträge
    252
    Danke
    45
    Erhielt 3 Danke für 3 Beiträge

    Standard

    Was ich noch schnell fragen wollte, darf man in einem Baustein, der bibliotheksfähig sein soll, sprich nur lokale Variablen hat, Globale Datenbaustein verwenden. Also ich habe in einen Global-DB Bits hinterlegt, später für die Visualisierung. D.h, wenn ein Bit in diesem true wird, soll z.B. eine Fehlermeldung auf dem Touchpanel angezeigt werden. Darf man das?

  8. #7
    Registriert seit
    27.06.2009
    Ort
    am Nordharz
    Beiträge
    3.717
    Danke
    443
    Erhielt 919 Danke für 740 Beiträge

    Standard

    Dürfen darf man so ziemlich alles.
    Aber machen sollte man das nicht.

    Woher weißt Du denn, das genau dieser DB mit dem gleichen Aufbau auch im nächsten Projekt wieder vorhanden ist?
    Solche Sachen gehören alle an die Schnittstelle und dort kannst Du dann außerhalb des Bausteins den DB angeben und innerhalb die Lokaldaten verwenden.
    Und dies sollte man sich prinzipiell angewöhnen, egal ob bibliotheksfähig oder nicht.

  9. #8
    siegener19 ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    04.09.2012
    Beiträge
    252
    Danke
    45
    Erhielt 3 Danke für 3 Beiträge

    Standard

    Ach so. Also keinen DB in den FC's und FB's verwenden, sondern die Daten im DB in der Schnittstelle verschalten. Danke dir.

  10. #9
    Registriert seit
    27.06.2009
    Ort
    am Nordharz
    Beiträge
    3.717
    Danke
    443
    Erhielt 919 Danke für 740 Beiträge

    Standard

    Zitat Zitat von siegener19 Beitrag anzeigen
    Ach so. Also keinen DB in den FC's und FB's verwenden, sondern die Daten im DB in der Schnittstelle verschalten.
    Genau so ist es.

    Und was glaubst Du, was bei einem Austausch des DBs einfacher ist - die Angaben an der Schnittstelle zu ändern oder den ganzen Baustein zu durchsuchen, wo überall Daten des DBs verwendet werden (auch wenn's da Hilfsmittel gibt)?
    Schon mal drüber nachgedacht?

  11. #10
    Registriert seit
    27.06.2009
    Ort
    am Nordharz
    Beiträge
    3.717
    Danke
    443
    Erhielt 919 Danke für 740 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Sorry, Doppelpost.

Ähnliche Themen

  1. Step 7 Any-Pointer über Bausteinschnittstelle
    Von Mathias im Forum Simatic
    Antworten: 18
    Letzter Beitrag: 24.02.2014, 08:51
  2. FC Abarbeitung im OB1
    Von K3ul3 im Forum Simatic
    Antworten: 7
    Letzter Beitrag: 17.11.2008, 08:55
  3. FB im OB1
    Von Jackjackson im Forum Simatic
    Antworten: 34
    Letzter Beitrag: 15.10.2008, 17:16
  4. SFC12 in OB1
    Von M4RKU5 im Forum Simatic
    Antworten: 8
    Letzter Beitrag: 17.07.2008, 08:15
  5. Aufruf DB im OB1
    Von tino2512 im Forum Simatic
    Antworten: 6
    Letzter Beitrag: 18.09.2007, 12:43

Lesezeichen

Berechtigungen

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