Step 7 PCS7 V8.2 Lokaldatenbedarf S7-416F-3PN/DP CPU - völlig außer Rand und Band ??!

Draco Malfoy

Level-1
Beiträge
1.168
Reaktionspunkte
82
Zuviel Werbung?
-> Hier kostenlos registrieren
Hi zusammen

ich habe noch ganz so ganz so viel Erfahrung mit PCS7 und, ich muss sagen, die aktuelle Situation macht mich völlig meschugge.

Also, ich habe ein vergleichsweise sehr kleines PCS7 Projekt mit wirklich überschaubarer Menge an Peripherie und an Prozessobjekten. Habe dazu eine halbwegs aktuelle CPU, Sachnummer 6ES7416-3FS05-0AB0. Die Anlage ist auch weit davon entfernt, vollständig abgebildet zu werden. Dennoch ist es so, daß selbst bei den wenigen Bausteinen mir CFC schon einen Lokaldatenbedarf von ca 1500 und mehr pro Ablaufebene anmeldet, und ich damit so langsam an die Grenzen der Hardware komme.

Wie kann das sein ? Wie kommt dieser Lokaldatenbedarf überhaupt zustande? Da ist doch gerade mal der Baugruppentreiber und zwei drei Messtellen drin ?

Falls jemand weiß, was ich falsch mache, Danke für sachdienliche Hinweise. Ach ja, auf der CPU werden gerade noch Paar eigenentwickelte Bausteine getestet, wobei die SCL Option "DebugInfo erstellen" zugeschaltet ist. Kanns vielleicht damit was zu tun haben ??
 
Bei der S7-400 kannst du die Größe der Lokaldatenbereiche pro Ablaufebene einstellen. Bei PCS7 gibt es dazu auch eine Vorgabe von Siemens was dort einzustellen ist, auch für die anderen Parameter.
Um das Warum habe ich mich bei PCS7 nie gekümmert, man kann es ja eh nicht ändern.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Bei der S7-400 kannst du die Größe der Lokaldatenbereiche pro Ablaufebene einstellen. Bei PCS7 gibt es dazu auch eine Vorgabe von Siemens was dort einzustellen ist, auch für die anderen Parameter.
Um das Warum habe ich mich bei PCS7 nie gekümmert, man kann es ja eh nicht ändern.

Hör mal, ich will ja nur sichergehen, daß ich des richtig verstehe.
Ich habe bei dieser Baugruppe nur 32kB Lokaldaten für alle Ablaufebenen. Dieser Wert ist die oberste Decke. Dabei ist es eine aktuelle CPU und nicht die schwächste. Aber irgendwas stimmt doch hier ganz gewaltig nicht ?
 
Das CFC-System arbeitet hauptsächlich mit den Pool-DBs, verwendet so gut wie keine Lokaldaten.

Wenn du in deinen eigenen Bausteinen mit Strings arbeitest, dann bist du recht schnell bei dieser Menge an Lokaldaten. DebugInfo benötigt etwas mehr an Lokaldaten, aber nicht so extrem viel. Sieht mir auch etwas seltsam aus.
Eigene Bausteine rauslöschen und übersetzen, und wenn der Bedarf immer noch so hoch ist an Siemens wenden (oder wenn du ruhig schlafen willst, einfach ignorieren - iss so). Ansonsten in den eigenen Bausteinen nachsehen was da abläuft. PCS7 ist ja nichts großartig anderes als bei einem Projekt mit CFC+SCL.
 
oder wenn du ruhig schlafen willst, einfach ignorieren - iss so). Ansonsten in den eigenen Bausteinen nachsehen was da abläuft.

Hm, naja, meine BST haben vielleicht 250 Byte im Deklarationsteil. Da bringt ja jeder FB aus dem Baugruppentreiber mehr mit, solche wie RACK_PN zum Beispiel. Nach dem Löschen musste ich erst die Referenzdaten neu generieren, bis des Ding gemerkt hat, daß sich was verändert hat.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Wo siehst du denn diese 1500 Bytes Lokaldatenbedarf, in den CFC-Plan Referenzdaten?
In den Bausteineigenschaften der einzelnen Bausteine kannst du dir auch den Lokaldatenbedarf anzeigen lassen. Da kannst du dir ja mal ein paar Kandidaten rauspicken und nachsehen wie viel die einzelnen Bausteine benötigen.
 
Was ich mir noch vorstellen könnte: Die CPU die du dir da ausgesucht hast ist für PCS 7 ja gar nicht freigegeben. Daher kommt vielelicht der Treiberwizzard bei der Berechnung des Lokaldatenbedarfs ins straucheln. Projektiere doch spaßeshalber mal eine CPU die in HW-Konfig im Katalogprofil PCS 7 zu finden ist.
 
Da kannst du dir ja mal ein paar Kandidaten rauspicken und nachsehen wie viel die einzelnen Bausteine benötigen.

Das tue ich ja schon fleißig. Deswegen wundert mich es auch, wo diese 1500 alle herkommen. Außerdem dürfte sich das Volumen an Lokaldaten ja nicht ändern, ob ich 1 oder 2 oder 20 FBs vom gleichen Typ im Plan platziere. Hatte aber irgendwie den Eindruck, daß sich das z.T. summiert hat

Die CPU die du dir da ausgesucht hast ist für PCS 7 ja gar nicht freigegeben.
Wäre auch mal so ne Frage: warum ? Baugruppentreiber wird jedenfalls anstandlos erzeugt. F-CPUs, die für PCS7 freigegeben sind, kosten heiden Geld.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Das tue ich ja schon fleißig. Deswegen wundert mich es auch, wo diese 1500 alle herkommen. Außerdem dürfte sich das Volumen an Lokaldaten ja nicht ändern, ob ich 1 oder 2 oder 20 FBs vom gleichen Typ im Plan platziere. Hatte aber irgendwie den Eindruck, daß sich das z.T. summiert hat

Es wird schon die genaue Hierarchie geprüft.
Also z.B. beim OB35:
- 22 Bytes OB35
- 2 Bytes Task FC
- 2 Bytes Group FC
und dann kommen deine in den CFC-Plänen platzierte Bausteine dazu. Es wird dann der Baustein mit den größten verwendeten Lokaldaten dazugerechnet,

Hast du vielleicht sehr tief verschachtelte Bausteinaufrufe in deinen eigenen Bausteinen? Ruft z.B. dein eigener FC A den FC B und dieser FC C auf, und jeder benötigt 500 Bytes Lokaldaten dann hast du deine 1500 (bzw. wenn im OB35 mit den obigen Werten dann 1526).
Die PCS7 APL Bausteine rufen nur sehr selten oder nie Unterfunktionen auf.

Die nicht PCS7 kompatible CPU dürfte für die Berechnung der Werte keine Auswirkungen haben, denn das ist überhaupt nichts PCS7 spezifisches sondern im ganz normalen CFC-Editor vorhanden.

Wobei ich in einem PCS7-Projekt niemals eine nicht kompatible Baugruppe verwenden würde. Ich hatte das mal bei einem Kunden bei dem ich an einem Bestandsteil etwas erweitern musste, und dieser hat bei PCS7 v7 nicht freigegebene Baugruppen verwendet. Aufgrund eines anderen Problems musste ich mich an den Siemens Support wenden, und die schlagen die Hände über dem Kopf zusammen wenn die so etwas sehen. Du kannst von Glück reden wenn du dann überhaupt Support erhältst. Spätestens wenn du ein PCS7 Versionsupgrade machen willst, fällt dir das alles auf die Füße. Und dann sind deine vlt. einmal eingesparten 5000 Euro schnell wieder weg.
 
Die nicht PCS7 kompatible CPU dürfte für die Berechnung der Werte keine Auswirkungen haben, denn das ist überhaupt nichts PCS7 spezifisches sondern im ganz normalen CFC-Editor vorhanden.


Wie Leguan75 son schreibt, bei PCS7 werden im CFC ja die ganzen "Systempläne" erzeugt, also Baugruppentreiber, welche die ganze Diagnose usw. machen. Da kommen schon ne Menge Extra-Pläne zustande, welche Standalone-CFC nicht hat.

Wobei ich in einem PCS7-Projekt niemals eine nicht kompatible Baugruppe verwenden würde. Ich hatte das mal bei einem Kunden bei dem ich an einem Bestandsteil etwas erweitern musste, und dieser hat bei PCS7 v7 nicht freigegebene Baugruppen verwendet. Aufgrund eines anderen Problems musste ich mich an den Siemens Support wenden, und die schlagen die Hände über dem Kopf zusammen wenn die so etwas sehen. Du kannst von Glück reden wenn du dann überhaupt Support erhältst. Spätestens wenn du ein PCS7 Versionsupgrade machen willst, fällt dir das alles auf die Füße. Und dann sind deine vlt. einmal eingesparten 5000 Euro schnell wieder weg.

Jo, sehe ich genauso, wenn man bei PCS7 das basteln anfängt hast Du komplett verloren, bei ner nicht freigegebenen CPU würd ich hier auch nur noch ungern was zu dem eigentlichen Problem schreiben ;)

Ansonsten ist es nicht so, dass die Lokaldaten benötigt werden, wenn man im CFC solche Sachen wie UND/ODER verwendet, welche also kein eigener FC oder FB sind? Hast Du da viele solcher Logikverknüpfungen im CFC? Hast Du Deine eigenen Bausteine in CFC geschrieben oder in SCL/AWL?

Gruß.
 
Zurück
Oben