Step 7 Der Bibliotheksbaustein kann nicht verwendet werden, da das Attribut "Parameterversorgung über Register" für den Baustein aktiviert ist

Willi Meier

Level-1
Beiträge
3
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Guten Tag

Ich muss ein Projekt aus S7-300/400 in S7-1500 Konvertieren, und habe folgendes Problem.

Bibliotheks-Bausteine wie TCON, TRCV und TSEND können nicht in die Static Variablen eines FB integriert werden, wenn dieser über "Parameterversorgung über Register" aufgerufen wird.

Fehler Meldung TIA Übersetzer:
«Der Bibliotheksbaustein kann nicht verwendet werden, da das Attribut "Parameterversorgung über Register" für den Baustein aktiviert ist»

Im Baustein für die Kommunikation «DiFbComControll» wird Pro Verbindung (60x) der Baustein "fbComKanal_01" bis "fbComKanal_60" der in den Static Variablen des «DiFbComControll» als Datentyp "FbComOsi1Kanal" eingebettet ist.

Der FB "fbComKanal_nn" muss daher über "Parameterversorgung über Register" aufgerufen werden, und in diesem werden dann die Bibliotheks-Bausteine TCON, TRCV und TSEND verwendet, was ja nicht geht.

1677059361857.png

Hat jemand eine Lösung wie ich das Programm umbauen kann, ohne viel ändern zu müssen.

Schon mal Danke fürs mit Denken.
 
Zuletzt bearbeitet:
Versuch mal:
Parameterversorgung über Register aktivieren (S7-1500)

Voraussetzung​

  • Die Option "Optimierter Bausteinzugriff" ist deaktiviert.
  • Die Bausteinschnittstelle enthält keine Parameter.

Vorgehen​

Um die Parameterversorgung über Register zu aktivieren, gehen Sie folgendermaßen vor:

  1. Öffnen Sie in der Projektnavigation den Ordner "Programmbausteine".
  2. Klicken Sie mit der rechten Maustaste auf den Baustein, für den Sie die Parameterversorgung über Register ermöglichen möchten.
  3. Wählen Sie im Kontextmenü den Befehl "Eigenschaften".
  4. Der Eigenschaftsdialog des Bausteins wird geöffnet.
  5. Klicken Sie in der Bereichsnavigation auf "Attribute".
  6. Aktivieren Sie die Option "Parameterversorgung über Register".
  7. Bestätigen Sie Ihre Eingaben mit "OK".

ansonsten musst viel ändern , weil die 1500 mit Register nicht wirklich was anfangen kann

Die Möglichkeit der Wertübergabe über Register (z. B. Akkumulatoren, AR1, AR2, DB, DI) oder
das Statuswort besteht in KOP und FUP nicht. In AWL ist die Wertübergabe mit einigen
Einschränkungen möglich.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Die Baustein Eigenschaften des "FbComControll" sind wie Du oben beschrieben hast eingestellt
Die Option "Parameterversorgung über Register" ist aktiviert
Die Option "Optimierter Bausteinzugriff" ist deaktiviert
so verweigert TIA den Aufruf der Bibliotheks-Bausteine TCON, TRCV und TSEND
 
Wie im eingefügten Bild ersichtlich hat die Bausteinschnittstelle des "FbComOsi1Kanal" keine Parameter.

Vermutlich wird es nicht ohne grösseren Umbau zu lösen sein.
Meine Idee:
Ein weitern FB erstellen in dem ich ein Array von Typ "FbComOsi1Kanal" erstelle.
Dem neuen FB kann ich dann, den Kommunikationskanal übergeben der mit dem Array Index übereinstimmen muss.

Leider widerholt sich das im Projekt für weitere Programm Komponenten.
War in S7-Classic eine Elegante Lösung die aber TIA S7 nicht mehr zulässt. Da es nicht möglich ist Aufruf von Bibliotheks-Bausteinen,
in Bausteinen zu verwenden die über "Parameterversorgung über Register" aufgerufen werden.
 
Zurück
Oben