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

Seite 1 von 3 123 LetzteLetzte
Ergebnis 1 bis 10 von 21

Thema: Probleme mit Lokaldatenstack

  1. #1
    Registriert seit
    19.01.2009
    Ort
    Hamm
    Beiträge
    83
    Danke
    24
    Erhielt 9 Danke für 8 Beiträge

    Unglücklich


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,
    ich habe das Problem gehabt das ein Lokaldatenbit nicht mehr mit dem VKE ausgegeben wie es geschrieben wurde.

    Beispiel (im FCxxx):
    Code:
    O L25.3
    O L23.5
    = L40.4
    = L40.5
    = L40.6
    .
    .
    .
    .
    .
    L LW40
    T #W_Befehl1
    Jetzt konnte ich im Baustein sehen das die Lokalbits 40.4 bis 40.6 auf 1 waren, im LW40 fehlte jedoch L40.5 (war 0), L40.4 und L40.6 waren 1. Das Bit wird später im Programm nicht mehr geschrieben, sonden nur noch im LW40 gelesen (deswegen die vertikalen Punkte im Code).
    Abhilfe brachte nur das löschen des gesamten Programms in der CPU (es handelt sich um eine 414-2DP) und anschließendem einspielen des gesamten Programms in die CPU (DB's habe ich drin gelassen).
    Hat das schonmal jemand gehabt?
    LG, Sascha
    Geändert von Sesssko (25.05.2009 um 15:37 Uhr) Grund: Tippfehlerkorrektur
    Zitieren Zitieren Probleme mit Lokaldatenstack  

  2. #2
    Registriert seit
    04.01.2008
    Ort
    Wien
    Beiträge
    772
    Danke
    136
    Erhielt 39 Danke für 35 Beiträge

    Standard

    schreibst du tatsächlich

    U LW40

    oder doch

    L LW40

    ?
    irgendetwas ist ja immer...
    ING. Gerald Miedler

  3. #3
    Registriert seit
    30.01.2009
    Beiträge
    441
    Danke
    25
    Erhielt 48 Danke für 44 Beiträge

    Standard

    Hi,

    ich glaube hier wird Ihnen geholfen :

    http://www.sps-forum.de/showthread.p...511#post166511

    Gruß

  4. #4
    Registriert seit
    04.01.2008
    Ort
    Wien
    Beiträge
    772
    Danke
    136
    Erhielt 39 Danke für 35 Beiträge

    Standard

    das erklärt aber noch nicht das Problem sondern beschreibt nur die Grundlagen
    irgendetwas ist ja immer...
    ING. Gerald Miedler

  5. #5
    Registriert seit
    19.01.2009
    Ort
    Hamm
    Beiträge
    83
    Danke
    24
    Erhielt 9 Danke für 8 Beiträge

    Standard

    Danke für die Beiträge.
    Problem ist das es ein bestehendes Programm ist das schon gut zwei Jahre so läuft und jetzt kam halt dieser Fehler auf. Wie gesagt, das Problem wurde dadurch "behoben" das ich alle Bausteine nach dem löschen nochmal neu aufgespielt habe.

  6. #6
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.227
    Danke
    534
    Erhielt 2.698 Danke für 1.950 Beiträge

    Standard

    Zitat Zitat von Sesssko Beitrag anzeigen
    Hallo,
    ich habe das Problem gehabt das ein Lokaldatenbit nicht mehr mit dem VKE ausgegeben wie es geschrieben wurde.

    Beispiel (im FCxxx):
    Code:
    O L25.3
    O L23.5
    = L40.4
    = L40.5
    = L40.6
    .
    .
    .
    .
    .
    L LW40
    T #W_Befehl1
    Jetzt konnte ich im Baustein sehen das die Lokalbits 40.4 bis 40.6 auf 1 waren, im LW40 fehlte jedoch L40.5 (war 0), L40.4 und L40.6 waren 1. Das Bit wird später im Programm nicht mehr geschrieben, sonden nur noch im LW40 gelesen (deswegen die vertikalen Punkte im Code).
    Abhilfe brachte nur das löschen des gesamten Programms in der CPU (es handelt sich um eine 414-2DP) und anschließendem einspielen des gesamten Programms in die CPU (DB's habe ich drin gelassen).
    Hat das schonmal jemand gehabt?
    LG, Sascha
    Ist sichergestellt, daß der Code, der die Lokaldaten schreibt, in jedem Zyklus aufgerufen wird? Ansonsten kann tatsächlich eine beliebige andere Variable, die auf den L-Stack gelegt wird das LW40 beeinflussen. Lokaldaten sind ab dem Moment des Beschreibens nur im Rest des betreffenden Bausteins für genau den Zyklus, in welchem sie geschrieben wurden, gültig! Das Löschen aller Bausteine und Wiedereinspielen, könnte da etwas verschoben haben und nun paßt es zufällig wieder (weil z.Bsp. keine anderes Ergebnis auf dem Stack landet), bis zum nächsten Mal.
    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

  7. #7
    Registriert seit
    30.01.2009
    Beiträge
    441
    Danke
    25
    Erhielt 48 Danke für 44 Beiträge

    Standard

    Zitat Zitat von Gerri Beitrag anzeigen
    das erklärt aber noch nicht das Problem sondern beschreibt nur die Grundlagen
    Nun ja,

    die Temp Variablen liegen auf dem lokal Stack der CPU. Dh. mehrere Bausteine nutzen den gleichen Stack, sodaß dann Zufallsprodukte erzeugt werden können, wie oben beschrieben.
    Wenn man so programmiert wie der Kollege, dann kann es gut gehen (häufig ist es so), muss es aber nicht. Das beweist auch die Strategie, das nach CPU neuladen alles wieder i.O. ist. Man erzeugt immer undefinierte Zustände die nicht nachvollziehbar sind.

    Gruß

  8. #8
    Registriert seit
    19.01.2009
    Ort
    Hamm
    Beiträge
    83
    Danke
    24
    Erhielt 9 Danke für 8 Beiträge

    Standard

    Der Baustein wird zyklisch aufgerufen und wird für die Steuerung eines FU eingesetzt. Ich persönlich arbeite dann auch lieber mit den Lokaldaten wenn diese benannt sind. Aber der Anlagenlieferant hat es so programmiert...

  9. #9
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.227
    Danke
    534
    Erhielt 2.698 Danke für 1.950 Beiträge

    Standard

    Sind auch keine Sprünge vorhanden, die u.U. Teile des Codes überspringen?
    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

  10. #10
    Registriert seit
    29.03.2004
    Beiträge
    5.742
    Danke
    143
    Erhielt 1.688 Danke für 1.226 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Ist der Baustein in FUP/KOP programmiert?
    Bei Bausteinaufrufen in dieser Darstellung werden Lokaldaten verwendet die dir deine eingenen Daten überschreiben könnten. Wenn ja, den Baustein mal auf AWL umstellen und nachsehen was der FUP/KOP-Umsetzer für Adressen verwendet hat.
    (Wenn man symbolisch programmiert gibt der Editor eine Warnung dass die Lokaldaten schon verwendet werden)

Ähnliche Themen

  1. Probleme mit CPU
    Von Elmi im Forum Simatic
    Antworten: 5
    Letzter Beitrag: 27.10.2010, 12:16
  2. Lokaldatenstack Adressiert in SCL nutzen?
    Von chstad im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 17.01.2010, 20:10
  3. Probleme über Probleme!
    Von tom_2802 im Forum Simatic
    Antworten: 25
    Letzter Beitrag: 12.06.2008, 22:19
  4. Probleme mit OPC
    Von ILW im Forum Hochsprachen - OPC
    Antworten: 1
    Letzter Beitrag: 01.11.2007, 12:37
  5. Probleme mit FB
    Von Regeldas im Forum Simatic
    Antworten: 5
    Letzter Beitrag: 05.10.2006, 21:19

Stichworte

Lesezeichen

Berechtigungen

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