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

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

Thema: Arbeitsweise der sps

  1. #1
    Registriert seit
    19.10.2010
    Beiträge
    325
    Danke
    15
    Erhielt 36 Danke für 31 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Guten Abend,

    ich hatte vor einigen Tagen ein Problem in einem meinem sps Programm, konnte dies zwar lösen aber ich weiß leider immer noch nicht wieso.

    und zwar hatte ich einen Ablauf bei dem das ablaufende per sprung (spbn) einige Merker zurücksetzen sollte. Dies hat leider nicht funktioniert weil das Ablaufende nur einen Zyklus lange da war wobei das betreffende Netzwerk direkt unter dem setzten des Ablauf Ende stand. Jetzt ist mir eigentlich bekannt wie eine SPS arbeitet. Die Frage die ich mir nun stelle ist, wie Verhält sich ein Merker der gesetzt wird. Ist dieser noch im gleichen Zyklus in anderen Netzwerken gültig oder wird dieser, wie Ein- und Ausgänge erst beim neuen Zyklus eingelesen? Ich hoffe ihr könnt mir da weiterhelfen.
    Und entschuldigt meine Rechtschreibung, ich schreibe vom Handy und das hat es nicht so genau mit Groß und Kleinschreibung.

    SPS-Freak
    Zitieren Zitieren Arbeitsweise der sps  

  2. #2
    Registriert seit
    22.11.2006
    Ort
    CH
    Beiträge
    3.620
    Danke
    777
    Erhielt 647 Danke für 493 Beiträge

    Standard

    Ein merker verliert seine gültigkeit bei Zyklusende nicht, wenn du ihn im zyklus veränderst ist der genau ab da natürlich mit dem neuen Zustand gültig. Das gilt für Merker, Merkerworte genau gleich.
    Dasselbe gilt übrigens für alle speicher in der SPS auch z.B. DBs, Timer, Zähler etc.

    mfG René

  3. #3
    SPS-freak1 ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    19.10.2010
    Beiträge
    325
    Danke
    15
    Erhielt 36 Danke für 31 Beiträge

    Standard

    Hey, ja so hab ich auch gedacht aber genau das hat nicht funktioniert. Ich habe den Merker gesetzt, dieser setzt im nächsten Zyklus den Verriegelungsmerker zurück und nicht der VM rücksetzt das Ablaufende zurück. Und wie gesagt das ablaufende steht als einziger vor der Sprungmarke und sollte dort ein DINT mit 0 zu laden. Das funktioniert aber nur wenn ich dieses Netzwerk vor das Netzwerk des ablaufendes schreibe. Ich verstehe die Welt nicht mehr.

  4. #4
    Registriert seit
    22.11.2006
    Ort
    CH
    Beiträge
    3.620
    Danke
    777
    Erhielt 647 Danke für 493 Beiträge

    Standard

    Poste bitte mal den code. Deine beschreibung ist uverständlich.

  5. #5
    SPS-freak1 ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    19.10.2010
    Beiträge
    325
    Danke
    15
    Erhielt 36 Danke für 31 Beiträge

    Standard

    Guten Abend,

    unten seht ihr mal den Code als Prinzip wie der Ablauf aufgebaut ist.
    Ich habe leider meinen Laptop nicht zur Hand.

    Code:
    U 1.Schritt
    S Verriegelungsmerker
    O Ablaufende
    R Verriegelungsmerker
    
    UN Verriegelungsmerker
    U Startbedinung
    S 1. Schritt
    O 2. Schritt
    R 1. Schritt
    
    usw
    .
    .
    .
    .
    
    U n.Schritt
    S Ablaufende
    ON Verriegelungsmerker
    R Ablaufende
    
    //Direkt im nächsten Netzwerk
    
    U Ablaufende
    SPBN M001
    
    L L#0
    T DB81.DBD0
    
    M001: NOP 0
    Dieses Schema funktioniert so nicht. Schreibe ich dieses Netzwerk mit den Sprung vor das Netzwerk in dem das Ablaufende gesetzt wird
    dann funktioniert das rücksetzen. Ich kann mir das Verhalten aber überhaupt nicht erklären.
    Wisst ihr weshalb dies passieren kann?
    Nach meinem Verständniss ist doch das Ablaufende sofort in diesem Zyklus gültig und kann das Laden ausführen?!

    Gruß

    SPS-Freak1

  6. #6
    Registriert seit
    30.10.2009
    Ort
    10 km vom Herzen der Natur
    Beiträge
    1.626
    Danke
    120
    Erhielt 340 Danke für 255 Beiträge

    Standard

    Wenn der Aufbau im Originalcode genauso ist, dann ist es unerklärlich.
    Kannst Du bitte den Originalcode posten?
    Vielleicht bringt es Dich weiter, wenn Du Dir das Ganze mal mit Haltepunkten genauer anschaust.
    Gruß
    Michael

  7. #7
    Registriert seit
    08.02.2007
    Ort
    A-2320
    Beiträge
    2.252
    Danke
    244
    Erhielt 332 Danke für 303 Beiträge

    Standard

    Zyklus x:
    VM=1 (weil Kette ja läuft)

    jetzt kommt der n.Schritt, der setzt den "Ablaufende", im gleichen Zyklus wird ins DB81.DBD0 L#0 geschrieben.

    Zyklus x+1:
    "Ablaufende" resetet VM, wenn Startbedingung erfüllt ist rattert es wieder bei 1.schritt los, aber jedenfalls wird "Ablaufende" durch "ON Verriegelungsmerker" wieder resetet.

    Ist zwar nicht ganz übersichtlich, schaut aber nicht falsch aus.

  8. #8
    Registriert seit
    25.05.2013
    Beiträge
    6
    Danke
    1
    Erhielt 1 Danke für 1 Beitrag

    Standard

    Dein Aufbau ist etwas ungeschickt. Zum Beispiel wird der Schritt 1 kontinuierlich gesetzt solange die Startbedingung da ist. Ist das sinnvoll? Des weiteren werden nach diesem Prinzip für jeden Schritt sprich n Rücksetzbefehle benötigt. Da kann sich schnell mal ein Fehler einschleichen...

    Ich würde Dir empfehlen deinen Ansatz nicht weiterzuverfolgen und Dir stattdessen mal folgenden Aufbau einer Ablaufsteuerung anzusehen:

    SK_B1.JPGSK_B2.JPGSK_B3.JPGSK_B4.JPGSK_B5.JPG

    Diese Ablaufsteuerung hat folgende Vorteile:
    - auch bei vielen Schritten unheimlich schnell
    - sehr flexibel, man kann springen wie man will
    - übersichtlich

    Im Moment fängt sie nach Schritt 6 wieder mit Schritt 1 an. Wenn Du aber willst dass sie am Ende beendet wird, dann einfach anstelle der 1 eine 0 an "move" übergeben.

    Die ganzen "true"s sind natürlich Bedingungen die Du frei definieren kannst.
    Zitieren Zitieren Ungünstiger Aufbau....  

  9. #9
    Registriert seit
    25.05.2013
    Beiträge
    6
    Danke
    1
    Erhielt 1 Danke für 1 Beitrag

    Standard

    Hier ist das Projekt, sonst musst Du ja alles abtippen

    Viel Spaß beim testen!
    Angehängte Dateien Angehängte Dateien

  10. Folgender Benutzer sagt Danke zu johnhenri für den nützlichen Beitrag:

    vollmi (11.10.2013)

  11. #10
    SPS-freak1 ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    19.10.2010
    Beiträge
    325
    Danke
    15
    Erhielt 36 Danke für 31 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Guten Abend,
    danke für die Antworten. Ich wollte hier jetzt keine Diskussion über die beste und verständlichste Programmierstrategie aufbrechen. Ich habe in solche Varianten auch schon auf einigen unterschiedlichen Systemen realisiert.
    Ich wollte einfach nochmal mich Rückversichern das ein Merker etc. in dem Baustein indem er gesetzt wird ab dieser Zeile auch schon seine Gültigkeit hat und nicht erst im nächsten Zyklus gültig ist.

    schönen abend

Ähnliche Themen

  1. Arbeitsweise Siemens HMI Panels
    Von msg im Forum HMI
    Antworten: 2
    Letzter Beitrag: 21.08.2013, 14:41
  2. Antworten: 6
    Letzter Beitrag: 27.11.2011, 11:58
  3. Arbeitsweise CPU - Diskussionsfutter
    Von Lobo im Forum Simatic
    Antworten: 6
    Letzter Beitrag: 24.01.2007, 13:39
  4. Arbeitsweise S7 300/400
    Von RobRoy94 im Forum Simatic
    Antworten: 6
    Letzter Beitrag: 23.11.2006, 13:37
  5. Daten speichern in der SPS / ausserhalb der SPS
    Von MSP im Forum Programmierstrategien
    Antworten: 16
    Letzter Beitrag: 30.06.2005, 19:33

Lesezeichen

Berechtigungen

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