5.8 KiB
TIA Portal Projektbibliothek — Anleitung
Projekt: HundM_Fortna
Stand: 2026-06-29
Ziel: Kanonische Bausteine aus _CommonLib/ in die TIA Portal Projektbibliothek übernehmen
Voraussetzungen
- TIA Portal V17 oder höher
- Alle 5 PLCs (UH01–UH05) im selben TIA Portal Projekt geöffnet
_CommonLib/Programmbausteine/als Referenz-Ordner vorhanden (dieses Repository)
Schritt 1: SCL-Datei in einen PLC importieren
Für jeden Baustein aus _CommonLib/ einmalig:
- Im TIA Portal Projektbaum: Beliebigen PLC auswählen (z.B. UH01)
Programmbausteine→ Rechtsklick → "Externe Quelldatei einfügen"- SCL-Datei aus
_CommonLib/Programmbausteine/<Pfad>/auswählen - Der Baustein erscheint unter
Programmbausteine→ Kompilieren (F11) - Sicherstellen: Keine Kompilierfehler
Gruppe-A-Blöcke (direkt importierbar, keine Anpassung nötig):
| SCL-Datei | PLC-Pfad nach Import |
|---|---|
PROFINET/FC_GET_PROFINET_DEVICE_STATES.scl |
PLC → Programmbausteine → PROFINET |
SCADA/FB-OPC_UA_System-Stat.scl |
PLC → Programmbausteine → SCADA |
970_Visu/FC_CarrierManipulator.scl |
PLC → Programmbausteine → 970_Visu |
400_BasicFunctions/FC/FC_Int2String.scl |
PLC → Programmbausteine → 400_BasicFunctions |
900_Communications/FB_FortnaTele_Placeholder.scl |
PLC → Programmbausteine → 900_Communications |
_IBN/FC_S7.scl |
PLC → Programmbausteine → _IBN |
Gruppe-B-Blöcke (vor Import Hinweise beachten → siehe Abschnitt "Gruppe B"):
| SCL-Datei | Besonderheit |
|---|---|
Programming error.scl |
OB — direkt importierbar |
_PerformanceMeasurement_/FB_PerfTest.scl |
Kein Default-Wert; falls gewünscht im Instanz-DB setzen |
900_Communications/TCP-Logger/FB_CommunicationLogger.scl |
connectionID anpassen! Jam-Referenz prüfen! |
970_Visu/FB_Visu_Jam.scl |
VAR_INPUT nInJamCount entfernt — Aufrufe prüfen |
970_Visu/FB_Visu_JamStorage.scl |
Nur für UH01/UH02/UH03 relevant |
Schritt 2: Baustein in Projektbibliothek speichern
Nachdem der Baustein in einem PLC kompiliert wurde:
- Baustein im Projektbaum markieren
- Rechtsklick → "In Projektbibliothek kopieren"
- Im Dialog:
- Bibliotheksname:
HundM_CommonLib - Typ: Typ (nicht Instanz)
- Version:
V1.0.0
- Bibliotheksname:
- Bestätigen → Baustein erscheint unter Projektbibliothek → Typen
Schritt 3: Lokale Kopien in anderen PLCs ersetzen
Für jeden weiteren PLC (UH02–UH05):
- Lokalen Baustein in diesem PLC löschen (Rechtsklick → Löschen)
- TIA Portal warnt, falls der Baustein noch aufgerufen wird — dann erst Aufrufe anpassen
- In der Projektbibliothek (linkes Panel):
HundM_CommonLib → Typen - Baustein per Drag & Drop in
Programmbausteinedes Ziel-PLCs ziehen - TIA Portal erstellt automatisch eine Bibliotheksreferenz (kein lokaler SCL-Code mehr)
- Kompilieren und Konsistenzprüfung durchführen
Schritt 4: Konsistenzprüfung aller PLCs
Nach Abschluss aller Blöcke:
- Gesamtprojekt kompilieren: Menü → Kompilieren → Alle Bausteine
- Konsistenzprüfung: Extras → Konsistenz prüfen
- Alle 5 PLCs müssen ohne Fehler kompilieren
Gruppe B: Besondere Hinweise vor dem Import
FB_CommunicationLogger — connectionID
Die connectionID in diesem Block ist ein TCP-Verbindungsparameter, der je PLC eindeutig sein muss:
| PLC | Aktuelle connectionID |
|---|---|
| UH01 | 99 |
| UH02 | 100 (bewusst verschieden!) |
| UH03 | 99 |
| UH04 | 99 |
| UH05 | 99 |
Empfehlung: Nach Übernahme in die Projektbibliothek die connectionID als FB-Parameter
herausziehen (VAR_INPUT), damit jeder PLC seinen eigenen Wert im Aufruf setzen kann.
Alternativ: Im Instanz-DB der jeweiligen PLC nach dem Drag & Drop anpassen.
Zusätzlich: Zeile mit "DB_JamArea0102" ist UH01-spezifisch. In anderen PLCs
diesen Abschnitt anpassen oder auskommentieren.
FB_Visu_Jam — VAR_INPUT entfernt
Die CommonLib-Version hat nInJamCount : UInt aus VAR_INPUT entfernt (war unbenutzt).
Falls bestehende Aufrufe in UH01 diesen Parameter übergeben:
→ Den Aufruf in UH01 anpassen (Parameter entfernen)
Git-Workflow nach TIA-Export
Nach erfolgter Bibliotheksintegration und erneutem TIA Portal Export:
# Erwartete Git-Änderungen:
# - Lokale .scl Dateien in UH01-UH05 werden ersetzt durch TIA-interne Library-Referenz
# - Möglicherweise erscheinen neue .liblink Dateien für die CommonLib-Blöcke
git status
# Geänderte/gelöschte .scl Dateien überprüfen
# _CommonLib/*.scl bleiben unverändert (Quelle der Wahrheit)
git add _CommonLib/
git commit -m "CommonLib angelegt: 11 standardisierte P1/P2-Bausteine"
Regel: Änderungen an standardisierten Blöcken immer in _CommonLib/ beginnen,
dann in TIA Portal aktualisieren, dann exportieren und committen.
Übersicht: Was wurde standardisiert
Gruppe A (6 Blöcke — 100% identisch)
FC_GET_PROFINET_DEVICE_STATES— PROFINET-GerätezuständeFB-OPC_UA_System-Stat— OPC-UA StatusübersetzungFC_S7— S7 PUT-Wrapper (CPU-zu-CPU)FC_CarrierManipulator— HMI Carrier-ManipulationFC_Int2String— String-KonvertierungFB_FortnaTele_Placeholder— Fortna UDT-Platzhalter
Gruppe B (5 Blöcke — bereinigt)
Programming error(OB) — UH02-VAR_TEMP entferntFB_PerfTest— Default-Wert bereinigtFB_CommunicationLogger— connectionID-Hinweis ergänztFB_Visu_Jam— nInJamCount entfernt, REGION vereinheitlichtFB_Visu_JamStorage— UH01 als kanonische Version
Nicht standardisiert (Gruppe D — 11 Blöcke)
Topologie-spezifische Blöcke (FB_Main, FB_PreMain, FB_CallSensors, FB_Visu, FB_CommunicationWCSBL, FC_Call_Jams, FC_Direction, FB_Visu_Jams, FC_CARR_GLOB_CORRECTION, FC_BARCODE_SEARCH, FC_Jam) bleiben je UH individuell — Pflege weiterhin getrennt.