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

Ergebnis 1 bis 10 von 10

Thema: Subroutine / Unterprogramm oder wie auch immer in AWL

  1. #1
    Registriert seit
    02.08.2006
    Beiträge
    150
    Danke
    47
    Erhielt 5 Danke für 2 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,

    verstehe ich das richtig.
    Jedes Unterprogramm / subroutine muss ich in einen eigenen FB oder FC legen.

    Beispiel.
    In einem FC soll des öfteren in ein Unterprogramm gesprungen werden(wobei auch der ein oder andere Parameter übergeben werden soll)
    Muss dieses Unterprogramm nun in einem eigenen FC oder FB liegen oder kann es der selbe sein ?

    Ich danke für euere Antwort und Hilfe.

    noeppkes ...
    Zitieren Zitieren Subroutine / Unterprogramm oder wie auch immer in AWL  

  2. #2
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.712
    Danke
    398
    Erhielt 2.398 Danke für 1.998 Beiträge

    Standard

    Hallo,
    du hast das richtig verstanden. Das was du unter Subroutine verstehst ist in Step7 ein FC oder FB - je nach Anwendungsfall.
    Ein FB hat immer auch einen eigenen Datenbereich (Instanz). Dies kann ein zugehöriger DB sein oder auch ein Bestandteil des DB's vom aufrufenden FB (wenn Multi-Instanz-fähig).

  3. #3
    Registriert seit
    13.12.2006
    Beiträge
    628
    Danke
    109
    Erhielt 42 Danke für 39 Beiträge

    Standard

    Und

    wie sieht das mit den Sprüngen aus, kann man die net auch als Unterprogramm bezeichen? Damit kann man doch schön auch in einem FB/ FC rumhopsen... Dann zum Ende des Bausteins, fertig. Stichwort Sprungmarken

    Für manch kleine Auswahl, Verzweigung und so hat sich das oft schon bewährt.

    ok, wenn die Aufgabe, die ich gezielt abarbeiten muss, oft vorkommt und fest abgegrenzt ist, dann nehme ich nat auch den Sprung zu nem anderen Baustein..

    Greetz, Tom

  4. #4
    noeppkes ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    02.08.2006
    Beiträge
    150
    Danke
    47
    Erhielt 5 Danke für 2 Beiträge

    Standard

    Hallo ThommyG,

    wenn ich gezielt auf ein Programm springe, dann ist das doch kein Unterprogramm mehr.
    Unter Unterprogramm verstehe ich den Aufruf eines Programmteiles, welches mir wieder an Stelle zurückspringt, wo es auch rausgesprungen ist.
    Das bekomme ich mit einer Sprungmarke doch nicht hin oder ?

    noeppkes ...
    Zitieren Zitieren Unterprogramm  

  5. #5
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.712
    Danke
    398
    Erhielt 2.398 Danke für 1.998 Beiträge

    Standard

    ... nein, wie du schon richtig annimmst.

    TommyG hat seinen Beitrag ja auch relativiert ... Es kommt eben auf die Aufgabenstellung an ...

  6. #6
    Registriert seit
    22.11.2006
    Ort
    CH
    Beiträge
    3.618
    Danke
    775
    Erhielt 646 Danke für 492 Beiträge

    Standard

    Zitat Zitat von noeppkes Beitrag anzeigen
    Hallo ThommyG,

    wenn ich gezielt auf ein Programm springe, dann ist das doch kein Unterprogramm mehr.
    Unter Unterprogramm verstehe ich den Aufruf eines Programmteiles, welches mir wieder an Stelle zurückspringt, wo es auch rausgesprungen ist.
    Das bekomme ich mit einer Sprungmarke doch nicht hin oder ?

    Doch schon, du kannst auch zurückspringen.
    Dann macht das Programm da weiter wo du rausgesprungen bist.

    Code:
          U     M     10.0
          SPB   NOR1 // Unterprogramm aufrufen
    NOR2: NOP   0 // Rückkehr aus Unterprogramm
    
    // [Unterprogramm]
    NOR1: NOP   0
          SPA   NOR2
    Nur mag ich keine Rücksprünge.

    mfG René

  7. #7
    Registriert seit
    15.01.2005
    Ort
    In der Mitte zwischen Bayreuth/Weiden
    Beiträge
    6.727
    Danke
    314
    Erhielt 1.519 Danke für 1.282 Beiträge

    Standard

    Vor allem birgt ein Rücksprung ein erhebliches Risiko einer Zykluszeitüberschreitung ... und somit einer roten Lampe / Anlagenstillstand.

    Mfg
    Manuel
    Warum denn einfach, wenn man auch Siemens einsetzen kann!

    Wer die grundlegenden Freiheiten aufgibt, um vorübergehend ein wenig Sicherheit zu bekommen, verdient weder Freiheit noch Sicherheit (B. Franklin).

  8. #8
    noeppkes ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    02.08.2006
    Beiträge
    150
    Danke
    47
    Erhielt 5 Danke für 2 Beiträge

    Standard

    Hallo Vollmi,

    ja das weiss ich, dass man so springen kann.
    Nur, wenn ich das Unterprogramm mehrfach benutze, dann geht das so nicht, da das Unterprogramm ja immer an die gleiche Adresse zurückspringt.

    noeppkes ...
    Zitieren Zitieren Unterprogramm  

  9. #9
    Registriert seit
    27.08.2003
    Ort
    Schweitenkirchen
    Beiträge
    472
    Danke
    101
    Erhielt 73 Danke für 59 Beiträge

    Standard

    Zitat Zitat von noeppkes Beitrag anzeigen
    Nur, wenn ich das Unterprogramm mehrfach benutze, dann geht das so nicht, da das Unterprogramm ja immer an die gleiche Adresse zurückspringt.

    noeppkes ...
    Gewohn dir bitte NIEMALS so einen Schwachfug an.
    Schreib nen FC/FB und gut ists...

  10. #10
    Registriert seit
    22.11.2006
    Ort
    CH
    Beiträge
    3.618
    Danke
    775
    Erhielt 646 Danke für 492 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von noeppkes Beitrag anzeigen
    ja das weiss ich, dass man so springen kann.
    Nur, wenn ich das Unterprogramm mehrfach benutze, dann geht das so nicht, da das Unterprogramm ja immer an die gleiche Adresse zurückspringt.
    Und darum gibts ja auch die Möglichkeit der FB und FCs. Davon hats mehr als genug, also kein Grund etwas komplizierter als nötig zu machen.

    mfG René

Ähnliche Themen

  1. Stromeingang zeigt immer nur 7FFFh oder 8000h
    Von Jochen im Forum Simatic
    Antworten: 15
    Letzter Beitrag: 30.08.2011, 17:14
  2. Antworten: 10
    Letzter Beitrag: 22.06.2010, 15:10
  3. Antworten: 4
    Letzter Beitrag: 14.10.2009, 13:01
  4. Aufruf Unterprogramm / Subroutine in SCL
    Von noeppkes im Forum Simatic
    Antworten: 1
    Letzter Beitrag: 20.07.2009, 15:33
  5. Antworten: 10
    Letzter Beitrag: 27.06.2004, 17:17

Lesezeichen

Berechtigungen

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