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

Ergebnis 1 bis 8 von 8

Thema: Transitionen einer Schrittkette

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

    Frage


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo!

    Ich muss als Projektaufgabe eine Schrittkette für eine Maschine programmieren.
    Die Maschine muss Werkstücke umsetzen und hat dabei folgende Funktionen:
    Heben, Senken, Vorfahren, Zurückfahren.

    Ich habe die Transitionen in einen eigenen FC geschrieben (die gesamte Schrittkette besteht aus ca. 30 Schritten):

    NW1
    Transition 0 zu 5

    U #Programm_starten
    UN #Position_oben
    U #Position_unten
    UN #Vorfahren
    UN #Rueckfahren
    = #Tr0_5 ==> heben

    NW2
    Transition 5 zu 10

    UN #Position_unten
    U #Position_oben
    UN #Rueckfahren
    = #Tr5_10 ==>Vorfahren

    NW3
    Transition 10 zu 15

    UN #Position_unten
    U #Position_oben
    UN #Vorfahren
    UN #Rueckfahren
    = #Tr10_15 ==>senken


    NW4
    Transition 15 zu 20

    U #Position_unten
    UN #Position_oben
    UN #Vorfahren
    = #Tr15_20 ==>rückfahren


    .....
    ....
    jetzt habe ich das Problem, dass u.U. die Bedingung für zwei Transitionen nacheinander zutreffen.
    Und deswegen eine Transition garnicht abgearbeitet wird, weil das Programm gleich eine weiter springt.

    Beispiel:
    1. Greifer ist gesenkt (endschalter unten ein), Maschine steht (startposition).

    2. Greifer heben (endschalter unten aus, endschalter oben ein).
    3. Maschine soll vorfahren (endschalter oben aus).
    ==>da aber die Maschine noch nicht vorfährt ist auch die Bedingung im NW3 erfüllt, und der Greifer senkt wieder.

    Gibt es eine Möglichkeit, das Programm dazu zu zwingen dass die Transitionen definiert nacheinander abgearbeitet werden?

    Mit Graph kenne ich mich nicht aus, und in der Schule benutzen wir leider kein Graph.
    Deswegen programmiere ich es mit Merkern und verschiedenen Bausteinen.

    Ich benutze für die Schrittkette ein FB für die Aktionen einen FB und für die Transitionen einen FC.


    mfg neon
    Zitieren Zitieren Transitionen einer Schrittkette  

  2. #2
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.262
    Danke
    537
    Erhielt 2.707 Danke für 1.956 Beiträge

    Standard

    Hast du dir dieses Schrittkettenkonzept selbst ausgedacht?
    Ich finde die Aufteilung in unterschiedliche FB/FC eher unpraktisch,
    besonders für die Fehlersuche.

    Sieh dir das einmal an, ist zwar unter dem Stichwort Step5, so lief es
    aber dann auch ersmal unter Step7 :

    http://www.sps-forum.de/showthread.p...t=Schrittkette
    http://www.sps-forum.de/showthread.p...prungverteiler

    Eine weitere gute Möglichkeit für Schrittketten in Step7 ist der Sprungverteiler:

    http://www.sps-forum.de/showthread.p...ht=Sprungliste
    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
    Avatar von neon
    neon ist offline Benutzer
    Themenstarter
    Registriert seit
    16.07.2006
    Beiträge
    45
    Danke
    14
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Ich weiß, dass Schrittketten normalerweise in Graph/SPL programmiert werden.
    Aber leider will das unser Lehrer auf diese Art machen.

    Gibt es eine Möglichkeit, das ich es so programmieren kann?
    Oder bin ich hier an der Grenze angekommen und muss doch auf SPL umsteigen?


  4. #4
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.262
    Danke
    537
    Erhielt 2.707 Danke für 1.956 Beiträge

    Standard

    Du mußt gar nichts in Graph7 machen, ich habe in den letzten 14 Jahren erst einmal mit Graph7 gearbeitet und programmiere auch mit Schrittketten. Die ersten zwei Links oben zeigen dir doch Merkerbasierte Schrittketten, das wäre schon Mal ein Weg für dich.
    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

  5. #5
    Registriert seit
    30.03.2005
    Beiträge
    2.096
    Danke
    0
    Erhielt 673 Danke für 541 Beiträge

    Standard

    Zitat Zitat von neon Beitrag anzeigen
    NW1
    Transition 0 zu 5

    U #Programm_starten
    UN #Position_oben
    U #Position_unten
    UN #Vorfahren
    UN #Rueckfahren
    = #Tr0_5 ==> heben

    NW2
    Transition 5 zu 10

    UN #Position_unten
    U #Position_oben
    UN #Rueckfahren
    = #Tr5_10 ==>Vorfahren

    NW3
    Transition 10 zu 15

    UN #Position_unten
    U #Position_oben
    UN #Vorfahren
    UN #Rueckfahren
    = #Tr10_15 ==>senken


    NW4
    Transition 15 zu 20

    U #Position_unten
    UN #Position_oben
    UN #Vorfahren
    = #Tr15_20 ==>rückfahren
    Das kann so nicht funktionieren.

    Hast Du keine Endschalter Position_vor und Position_zurück?

    Wenn die Maschine am Vorfahren oder am Rückfahren ist, woher soll die Maschine wissen, wann sie anhalten soll, wenn sie keine Endschalter hat?

    Du könntest höchstens mit einer Zeitverzögerung arbeiten, also die Maschine eine bestimmte Zeit Vorfahren und Rückfahren lassen und nach Ablauf der Zeit die Maschine anhalten.

    Gruß Kai

  6. #6
    Registriert seit
    07.09.2006
    Beiträge
    75
    Danke
    6
    Erhielt 6 Danke für 5 Beiträge

    Standard

    Zitat Zitat von neon Beitrag anzeigen

    ....
    jetzt habe ich das Problem, dass u.U. die Bedingung für zwei Transitionen nacheinander zutreffen.
    Und deswegen eine Transition garnicht abgearbeitet wird, weil das Programm gleich eine weiter springt.
    ....

    Gibt es eine Möglichkeit, das Programm dazu zu zwingen dass die Transitionen definiert nacheinander abgearbeitet werden?
    Hallo,

    du kannst die die Reihenfolge in Schrittketten beeinflussen in dem du in einem Punkt der Kette einen Merker setzt. In der nachfolgen Transition prüfst du dann über eine UND verknüpfung zusätzlich zu deinen anderen Bedingungen ob der Merker gesetzt ist (Die Merker zurücksetzen nicht vergessen). Wenn du dies konsequent machst sollte eigentlich jeder Schritt mindestens einen Zyklus aktiv sein.

  7. #7
    Avatar von neon
    neon ist offline Benutzer
    Themenstarter
    Registriert seit
    16.07.2006
    Beiträge
    45
    Danke
    14
    Erhielt 0 Danke für 0 Beiträge

    Ausrufezeichen

    Danke für die Antworten,

    ich bin inzwischen auf den Fehler gekommen:

    Ich habe vergessen in die UND-Verknüpfung nach dem Vorfahren den Positionsmerker mit einzufügen.

    Wie Kai schon geschrieben hat weiß ja die Maschine sonst garnicht wo der Greifer überhaupt steht.

  8. #8
    Registriert seit
    16.09.2006
    Beiträge
    36
    Danke
    1
    Erhielt 2 Danke für 2 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    HAI neon,

    um zu verihindern, daß du einen schritt überspringst,
    kannst du schrittketten immer von hinten programmieren.
    Also nicht mit schritt 1 sonder mit 10 oben anfangen, so
    ist jeder schritt min einen zyclus gültig.

    FF

Ähnliche Themen

  1. Antworten: 7
    Letzter Beitrag: 12.06.2011, 19:14
  2. PID-Regler in einer Schrittkette
    Von zloyduh im Forum Simatic
    Antworten: 4
    Letzter Beitrag: 23.05.2009, 17:56
  3. Zeiten in Graph Transitionen
    Von Astralavista im Forum Simatic
    Antworten: 10
    Letzter Beitrag: 11.09.2008, 10:44
  4. Antworten: 10
    Letzter Beitrag: 26.11.2007, 16:34
  5. Timer in einer Schrittkette
    Von DirkKuhn im Forum Simatic
    Antworten: 8
    Letzter Beitrag: 22.08.2005, 16:53

Lesezeichen

Berechtigungen

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