Probleme mit Merkeradressen

ETim

Level-1
Beiträge
55
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Guten Morgen,

ich habe/hatte ein funktionstüchtiges Programm auf meiner SPS laufen (CPU 314). Nun wollte ich das Programm um eine Regelung erweitern diese wollte ich im FB 20, den ich im OB 35 aufrufe, programmieren. Zuerst wollte ich mir mittels des FC 105 meine Analogeingangswerte für den Sollwert skalieren. Lange rede kurzer Sinn... es hat ein paar Probleme gegeben. Ich habe die Regelung erstmal wieder rausgenommen. Nachdem ich die betreffenden Bausteine wieder entfernt habe, habe ich ein neues Problem bekommen. Mein normales Programm funktioniert nicht mehr richtig. Ich habe bemerkt, das alles Programmteile mit den Merkeradressen M1.0 - M2.7 probleme machen. Ich habe evtl. versehentlich beim Versuch zu skalieren auf das MW 1 geschrieben. Das überschneidet sich mit meinen anderen Adressen. Nur leider bekomme ich den Zustand nicht mehr weg. Wähle ich andere Adressen funktioniert alles wie gewollt. Kann man irgendwie die Merkeradressen zurücksetzen? Ich habe schon alles diesbezüglich gelöscht... aber mit den Merkeradressen habe ich immernoch Probleme.

Weiß jemand Rat?

LG Tim
 
Löschen:

L#0
T MDxx

ansonsten bleibt der Merker gesetzt, fallks er gesetzt war, und jetzt nicht mehr bearbeitet wird.

Noch was NIE auf ungerade adressen zugreife. Soll heissen: MW0 MW2,4 usw oder MD0, MD4 MD8 usw Ausnahme natürlich die Bytes.
 
Zuletzt bearbeitet:
Sorry, muss heissen

L L#0
T MDx

so gehts

lass den code mal drinnen stehen. so wird alles im MD 0 "niedergebügelt". So ist sicher alles 0 kontrolliers mal
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich habe evtl. versehentlich beim Versuch zu skalieren auf das MW 1 geschrieben. Das überschneidet sich mit meinen anderen Adressen. Nur leider bekomme ich den Zustand nicht mehr weg. Wähle ich andere Adressen funktioniert alles wie gewollt. Kann man irgendwie die Merkeradressen zurücksetzen? Ich habe schon alles diesbezüglich gelöscht... aber mit den Merkeradressen habe ich immernoch Probleme.

hi,
hast du schonmal bei den Referenzdaten nachgesehen, ob deine Merker irgendwo benutzt werden, wo sie nicht sollen?
 
mal eine dumme Vermutung, hat vielleicht jemand das Takmerkerbyte zufällig auf 1 gelegt?

Mmhhhh, wo finde ich das Taktmerkerbyte? Bzw. wo kann ich es setzen?

In den Referenzdaten habe ich nachgeschaut. Da fällt mir nichts auf. Ich hatte halt vorher mit meinem FC 105 auf das MW 1 geschrieben..das war ziemlich dämlich. Habe aber eigentlich alles gelöscht... aber irgendwie hat er sich das gemerkt.

Mein Programm (als *pdf) befindet sich im Anhang... er setzt scheinbar alle Merker von 1.0 - 1.7 auf 0. Denn die im Programm verwendeten RS FLip Flops mit den benannten Merkern kann man lassen sich nichtmehr setzen.
 

Anhänge

  • OB1_20_08.pdf
    29,5 KB · Aufrufe: 25
  • Symbole_20_08.pdf
    10,2 KB · Aufrufe: 16
In den Referenzdaten habe ich nachgeschaut. Da fällt mir nichts auf. Ich hatte halt vorher mit meinem FC 105 auf das MW 1 geschrieben..das war ziemlich dämlich. Habe aber eigentlich alles gelöscht... aber irgendwie hat er sich das gemerkt.

Hast du auch wirklich dein testprogramm aus der CPU gelöscht oder vielleicht doch nur im Offline Programm ???
 
Sorry, muss heissen

L L#0
T MDx

so gehts

lass den code mal drinnen stehen. so wird alles im MD 0 "niedergebügelt". So ist sicher alles 0 kontrolliers mal

Ich habe es mal gemacht. Problem ist nur, dass jetzt jeder Merker zwanghaft auf 0 ist. Nun funktionieren kein Merker mehr ordentlich. Wenn ich es einmal löschen und anschließend wieder rausnehme habe ich wieder das selbe Problem.

Hier mal mein Projekt als S7 Datei...
 

Anhänge

  • Prüfstan.zip
    274,8 KB · Aufrufe: 12
Hast du die MC gezogen?

Urlöschen mit gesteckter MMC bring nix, da das Programm evtl auf der MMC ist. Spiel ein leeres Projekt auf die MMC und danach nochmal urlöschen
 
Habe den OB1 überschrieben... nachdem das nicht funktionierte habe ich auch "urlöschen" gemacht und das Programm neu draufgezogen. Immernoch der gleiche Fehler...

Schau doch trotzdem mal in der Onlineansicht nach ob der OB 35 (+FB 20) wirklich leer ist, denn du hast ja geschrieben, dass du im OB 35 programmiert hast, da bringt dir ja das überschreiben vom OB 1 nicht viel ;)
 
Zuviel Werbung?
-> Hier kostenlos registrieren
zwanghaft 0 heißt das es das Taktmerkerbyte sowieso nicht sein kann

beschreibst du irgendwo das MW0 oder MD 0
möchte dein Projekt ungern auf dem Firmen Notebook öffnen
 
Lade dein Programm doch testweise mal in eine andere CPU oder in PLCSIM. Dann hast du zumindest keine Altlasten aus deiner jetzigen CPU
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Also doch mal die MMC löschen damit nichts in der CPU ist, was da nicht hingehört

Hier die Anleitung dazu aus der Siemens FAQ

...
Anleitung:
Um die Bausteine auf einer MMC in der CPU zu löschen, können Sie die folgende Vorgehensweise anwenden:

  • Die zu löschende MMC steckt in der CPU.
  • Wechseln Sie im SIMATIC Manager über "Ansicht > Online" oder die entsprechende Schaltfläche in den Online Modus.
  • Wählen Sie im Online Fenster den Bausteinordner an.
  • Markieren Sie alle Bausteine im Ordner.
  • Wählen Sie rechte Maustaste "Löschen" (die Meldung, dass Systemfunktionen nicht gelöscht werden konnten, kann bestätigt werden).
Hinweis:
Wenn Sie eine passwortgeschützte MMC löschen wollen, gehen Sie folgendermaßen vor

  • Stecken Sie die MMC ins PG (USB-Brenner an Laptop/PC)
  • wählen Sie im SIMATIC Manager "Datei" aus
  • wählen Sie "S7-Memory Card" ==> "Löschen..."
...
 
Ich habe jetzt mal die SPS direkt ausgelesen und festgestellt das der ganze "Müll" noch drauf war. Ich habe es jetzt manuel gelöscht und nun geht alles wieder.

Ich wundere mich nur warum er beim "urlöschen" vorher nicht glöscht hat. Ich bin davon ausgegangen die SPS ist sauber und ich kann mein Programm übertragen. Dem war nicht so...

Jetzt gehts..Dankeschön für die vielen Tips...
 
Guten morgen,

beim Urlöschen wird die MMC-Card nicht gelöscht!
Wenn du die SPS auf RUN stellst, holt er sich die Bausteine von der Karte wieder in den Speicher und du hast das "alte" Programm wieder drauf.

Gruß wolder
 
Zurück
Oben