ANY//DOCS
ENZur Website

Forge — Bausteintyp-Bibliothek

Forge ist Ihre wiederverwendbare Bausteintyp-Bibliothek: Sie nehmen bestehende Bausteine aus einem PLC-Projekt auf, sammeln und organisieren sie an einem Ort und spielen die gesamte Bibliothek später in jede verbundene PLC aus — die Ordnerstruktur der Bibliothek wird dabei als Gruppenstruktur in der PLC wiederhergestellt. Dazu zeichnet Forge bestehende Projekte als Projektgraphen nach, die Sie durchsuchen, prüfen, bearbeiten und wieder in eine PLC ausspielen können.

Öffnen Sie den Forge-View-Container in der Aktivitätsleiste. In der Seitenleiste erscheint die Bausteintyp-Bibliothek als Baum aus Ordnern und Typen.

Voraussetzung: Forge ist Teil der kostenpflichtigen Editionen. Bei fehlender Lizenz bleiben die Forge-Befehle deaktiviert — siehe Lizenzierung.

Mit Forge verbinden

  1. Öffnen Sie die Befehlspalette (Strg+Umschalt+P) und führen Sie „Mit Forge verbinden" aus — oder klicken Sie im Forge-View-Container auf Verbinden.
  2. Sobald die Verbindung steht, zeigt die Statusleiste Forge: Verbunden und die Bibliothek wird geladen.

Zum Trennen führen Sie „Verbindung zu Forge trennen" aus.

Bausteine in die Bibliothek aufnehmen

Sie füllen die Bibliothek direkt aus einem geöffneten TIA-Projekt (siehe Projekt-Explorer). Forge und das TIA-Projekt müssen beide verbunden sein.

  1. Rechtsklick auf eine PLC, eine Gruppe oder einen einzelnen Baustein im Projekt-Explorer.
  2. „In Forge-Bibliothek erfassen" auswählen.
  3. Bestätigen Sie, wie viele Elemente erfasst werden sollen.
  4. Forge legt für jedes Element einen wiederverwendbaren Typ an und spiegelt dabei die Gruppenstruktur des Projekts als Ordner in der Bibliothek.

Die erfassten Typen liegen unter einem Ordner mit dem Projektnamen (zum Beispiel MixingPlant). So bleiben Typen aus verschiedenen Projekten sauber getrennt – Sie sehen auf einen Blick, was woher stammt, und das Erfassen eines zweiten Projekts vermischt seine Bausteine nicht mit denen des ersten.

Erfasst werden Bausteine, Datentypen und Variablentabellen — auch solche, die in Software Units liegen.

Nach Abschluss meldet eine Mitteilung, wie viele Typen neu angelegt und wie viele aktualisiert wurden. Elemente, die sich nicht erfassen lassen, werden mit Name und Grund aufgeführt; identische Duplikate werden automatisch übersprungen und nicht als Fehler gezählt.

Bibliothek organisieren

Alle Operationen erreichen Sie per Rechtsklick in der Bausteintyp-Bibliothek:

  • Neuer Bausteintyp — legt einen neuen, selbst gepflegten Typ an.
  • Bausteintyp bearbeiten / duplizieren / löschen — auf einem Typ.
  • Ordner / Unterordner — gliedern die Bibliothek beliebig tief.
  • Umbenennen — auf Typ oder Ordner.
  • Verschieben nach … — ordnet einen Typ einem anderen Ordner zu; eine Auswahlliste zeigt alle vorhandenen Ordner.

Jeder Eintrag in der Liste trägt hinter dem Bausteinnamen ein kurzes, neutrales TypkürzelSCL, DB, UDT oder XML –, das Ihnen auf einen Blick zeigt, um welche Art von Typ es sich handelt. In der Liste Plugins erscheint der Codegenerator als TIA SCL.

Die Reihenfolge der Einträge lässt sich per Ziehen ändern. Die Ordnerstruktur, die Sie hier aufbauen, bestimmt später die Gruppenstruktur in der PLC.

Beim Schreiben eigener Typ-Vorlagen hilft der KI-Chat: Fragen Sie den Forge Engineer-Agenten — er kennt die Vorlagensprache und unterstützt beim Erstellen, Prüfen und Korrigieren Ihrer Vorlagen.

Das mitgelieferte Beispiel installieren

Damit Sie nicht bei null anfangen müssen, bringt Forge ein fertiges Beispiel mit: eine vollständige Bausteintyp-Bibliothek samt passendem Beispiel-Projektgraphen, an dem Sie sich alles in Ruhe ansehen können.

  1. Klicken Sie in der Titelleiste der Bausteintyp-Bibliothek auf Beispiel installieren (MixingPlant), oder führen Sie denselben Befehl über die Befehlspalette (Strg+Umschalt+P) aus.
  2. Eine kurze Mitteilung meldet, wie viele Typen hinzugefügt (und wie viele bereits vorhanden) waren und ob der Beispielgraph hinzugefügt wurde.

Sie können den Befehl jederzeit erneut ausführen: Er überschreibt niemals Ihre eigenen Typen oder Graphen. Bereits vorhandene Elemente werden übersprungen, hinzugefügt wird nur, was noch fehlt.

Nach der Installation zeigt die Bibliothek einen einzelnen Ordner Mixing Plant Demo, der das vollständige Beispiel enthält — die originalgetreuen Anlagenbausteine zusammen mit den wiederverwendbaren Beispieltypen; der Beispielgraph erscheint in der Liste Project Graphs.

Öffnen Sie einen beliebigen Typ, um zu sehen, wie er aufgebaut ist: Die Vorlagen sind ausführlich kommentiert und erklären Schritt für Schritt, wie die Generierung abläuft und wann welcher Teil zum Einsatz kommt. Anschliessend generieren Sie daraus Code und spielen ihn genauso in TIA aus wie Ihre eigenen Typen.

Speicherort & Git-Versionierung

Sowohl die Bausteintyp-Bibliothek als auch Ihre Projektgraphen können in Ordnern liegen, die Sie selbst bestimmen — so lassen sie sich gemeinsam mit Ihrer übrigen Arbeit unter Versionskontrolle stellen. Sie richten das in den AnyAutomation-Einstellungen → Forge ein.

Speicherort der Bibliothek wählen

Ihre wiederverwendbaren Bausteintypen werden in einem Bibliotheksordner gehalten. Standardmäßig verwendet Forge einen eigenen Speicherort, doch Sie können die Bibliothek auf jeden beliebigen Ordner verweisen lassen — zum Beispiel auf einen, den Sie bereits in einem Git-Repository pflegen, sodass die gesamte Bibliothek mit Ihrer Versionshistorie mitwandert.

  • Setzen Sie in den AnyAutomation-Einstellungen → Forge den Bibliotheksordner auf den gewünschten Ordner. Wählen Sie ihn über Durchsuchen … aus oder lassen Sie das Feld leer, um den Standardspeicherort beizubehalten.
  • Das Ordnersymbol am Feld öffnet diesen Ordner auf der Festplatte (bei leerem Feld den Standardspeicherort), damit Sie das dort Gespeicherte mit der integrierten Versionskontrolle von Studio prüfen und versionieren können.

Projektgraphen im Projekt speichern

Projektgraphen werden als Textdateien gespeichert. Da es sich um reinen Text handelt, können Sie sie mit Git versionieren, und Änderungen erscheinen wie bei jeder anderen Datei in Ihren Diffs. Der Projektbaum ist Teil des Graphen und wird daher zusammen mit ihm versioniert. Ihre Graphen werden immer gespeichert und beim nächsten Start wieder geladen.

Auf der Festplatte ist jeder Projektgraph ein Ordner mit einer Datei forge.yaml — ein Graphen-Ordner enthält also einen solchen Unterordner pro Graph. Auch die Einstellungen beschreiben diesen Aufbau, damit Sie beim Auswählen eines Ordners wissen, worauf Sie achten müssen.

In den AnyAutomation-Einstellungen → Forge legen Sie unter Projektgraphen fest, wo die Graphen liegen:

  • Projektgraphen-Ordner — wählen Sie über Durchsuchen … einen festen Ordner, in dem Ihre Graphen abgelegt werden. Verweisen Sie ihn zum Beispiel auf einen Ordner, den Sie bereits in einem Git-Repository pflegen. Das Ordnersymbol am Feld öffnet diesen Ordner auf der Festplatte.
  • Lassen Sie das Feld leer, werden die Graphen im geöffneten Projekt abgelegt — in einem Unterordner (standardmäßig .forge) direkt neben dem Projekt, den Sie unter Projektunterordner anpassen können. Ist kein Projekt geöffnet, verwendet Forge einen Standardspeicherort, sodass Ihre Graphen trotzdem erhalten bleiben.

Eine Änderung dieser Einstellungen wirkt sofort: Die Liste Project Graphs wechselt auf den neu gewählten Ordner und zeigt dessen Graphen, ohne dass Sie die Ansicht neu öffnen müssen.

Einen Graphen aus einer Datei laden und die Liste neu laden

Die Liste Project Graphs hat zwei weitere Schaltflächen in der Titelleiste (sichtbar, sobald Sie mit Forge verbunden sind):

  • Projektgraph aus Datei laden (Ordnersymbol) — öffnet eine Dateiauswahl, mit der Sie einen Graphen laden, der nicht automatisch erkannt wurde oder außerhalb des eingestellten Ordners liegt. Wählen Sie die Datei forge.yaml des Graphen; der Graph erscheint danach in der Liste, öffnet sich direkt, und eine Kopie wird in Ihrem aktuellen Graphen-Ordner gespeichert.
  • Projektgraphen neu laden (Aktualisieren-Symbol) — liest den Graphen-Ordner neu von der Festplatte ein, zum Beispiel nachdem Graphdateien außerhalb von Studio geändert wurden.

Einen Ordner unter Versionskontrolle stellen

Um einen Ordner zu versionieren, verwenden Sie die Schaltfläche Git-Repository initialisieren in der Titelleiste der Forge-Ansicht selbst — der Ansicht Bausteintyp-Bibliothek für Ihre Bausteintypen und der Ansicht Projektgraphen für Ihre Graphen (beide werden angezeigt, sobald Sie mit Forge verbunden sind):

  • Klicken Sie auf Git-Repository initialisieren, und Studio legt direkt in diesem Ordner ein Git-Repository an und bestätigt es mit einer kurzen Meldung.
  • Von dort aus prüfen, merken vor und committen Sie Ihre Bausteintypen oder Projektgraphen mit der integrierten Versionskontrolle von Studio wie jeden anderen Ordner. Um den Ordner auf der Festplatte zu erreichen, verwenden Sie das Ordnersymbol am zugehörigen Pfadfeld in den Einstellungen oben.

Einen Bausteintyp bearbeiten

Ein Doppelklick auf einen Typ in der Bausteintyp-Bibliothek öffnet ihn als Tab: links die Felder des Typs, rechts je ein Vorlagen-Tab pro Ausgabeziel. Die Schaltfläche Speichern in der Symbolleiste speichert den gesamten Typ — Felder und alle Vorlagen zusammen.

Ungespeicherte Änderungen gehen nicht verloren: Der Tab markiert sie mit dem üblichen Punkt, beim Wechsel zu einem anderen Tab und zurück bleibt alles erhalten — Felder wie Vorlagentext —, und beim Schließen fragt der Tab zuerst, ob gespeichert oder verworfen werden soll, wie bei jeder anderen Datei.

Eine Vorlage im Texteditor öffnen

Eine Vorlage lässt sich auch in einem normalen Editor-Tab bearbeiten — praktisch, um sie neben anderen Dateien zu platzieren:

  • Klicken Sie in der Symbolleiste des Bausteintyp-Tabs auf „Vorlage im Texteditor öffnen", oder
  • klicken Sie mit der rechten Maustaste auf den Typ in der Bausteintyp-Bibliothek und wählen „Vorlage im Texteditor öffnen" — hat der Typ mehrere Vorlagen, fragt zuerst eine Auswahlliste, welche geöffnet werden soll.

Der Text-Tab und der Bausteintyp-Tab zeigen immer denselben Inhalt — was Sie im einen tippen, erscheint sofort im anderen. Strg+S im Text-Tab speichert nur diese Vorlage; die Schaltfläche Speichern im Bausteintyp-Tab speichert weiterhin alles.

Ein ganz neuer Bausteintyp muss einmal gespeichert werden, bevor sich seine Vorlagen so öffnen lassen — dasselbe gilt für ein frisch hinzugefügtes Ausgabeziel bis zum nächsten Speichern.

Der Chat sieht Ihre Vorlage

Solange der Bausteintyp-Tab (oder einer seiner Vorlagen-Text-Tabs) aktiv ist, hat der Chat-Assistent diese Vorlage automatisch als Kontext — sie erscheint über dem Chat-Eingabefeld. Fragen Sie direkt zur Vorlage: Der Assistent kennt ihren Inhalt und die verfügbaren Vorlagen-Hilfsfunktionen — ohne dass Sie etwas einfügen müssen.

Ein Projekt zurückentwickeln

Forge kann ein bestehendes PLC-Programm in einem Schritt als Projektgraph nachzeichnen und gleichzeitig alle Inhalte als gekoppelte Bibliothekstypen erfassen — die Grundlage dafür, das Programm später aus dem Graphen heraus wieder auszuspielen.

  1. Verbinden Sie zuerst Forge und das TIA-Projekt — erst dann erscheint der passende Eintrag im Rechtsklickmenü. Anschliessend Rechtsklick auf eine PLC im Projekt-Explorer.
  2. „Projekt in gekoppelte Bibliothek zurückentwickeln" auswählen und bestätigen — gleichnamige Bibliothekstypen werden überschrieben.
  3. Eine Fortschrittsanzeige begleitet den Vorgang; am Ende öffnet sich der neue Graph als Tab, und eine Mitteilung fasst zusammen, wie viele Typen erfasst und wie viele Objekte und Verbindungen gezeichnet wurden. Der Graph und der zugehörige Projektbaum werden nach dem Projekt benannt, und die erfassten Bibliothekstypen liegen unter einem gleichnamigen Ordner mit dem Projektnamen – so bleiben sie von Typen aus anderen Projekten getrennt.

Elemente, die sich nicht erfassen lassen, nennt die Mitteilung mit Name und Grund — sie erscheinen trotzdem im Graphen, bleiben aber ohne gekoppelten Bibliothekstyp. Greift ein Objekt mehrfach auf dasselbe andere Objekt zu, zeigt der Graph dafür eine einzige Verbindung statt eines Bündels paralleler Linien.

Den Projektgraphen ansehen

Wenn Forge ein bestehendes Projekt einliest, können Sie es als Abhängigkeits-Browser durchsuchen. Öffnen Sie einen Graphen aus der Liste Project Graphs im Forge-View-Container — ein Doppelklick öffnet ihn als Tab. Auch sehr grosse Projekte mit Tausenden von Bausteinen öffnen sich sofort.

Der Tab gliedert sich in zwei Bereiche: links ein Baum aller Bausteine, rechts die Abhängigkeiten des gewählten Bausteins.

Einen Baustein im Baum wählen

Der Baum links zeigt alle Bausteine des Projekts, nach Ordner und Kategorie gruppiert — dieselbe Struktur wie im Projekt. Jede Zeile trägt ein Symbol für die Bausteinart und einen kleinen Kopplungsbalken, der auf einen Blick zeigt, wie stark der Baustein mit anderen verbunden ist. Klicken Sie einen Baustein an, um rechts seine Abhängigkeiten zu sehen.

Über ein Suchfeld geben Sie einen Bausteinnamen ein: Der Baum öffnet die Ordner auf dem Weg zum Treffer und springt direkt dorthin, sodass Sie ohne Blättern jeden Baustein finden.

Sehen, was einen Baustein verwendet — und was er verwendet

Rechts erscheinen für den gewählten Baustein zwei Listen:

  • Wird verwendet von — alle Bausteine, die diesen Baustein verwenden (zum Beispiel ein Organisationsbaustein, der ihn aufruft).
  • Verwendet — alle Bausteine, die dieser Baustein selbst verwendet (aufgerufene Bausteine, genutzte Datentypen und so weiter).

Jeder Eintrag nennt den Bausteinnamen und die Art der Beziehung als farbiges Kürzel. Über die Filterschalter oben blenden Sie eine Beziehungsart aus oder zeigen wieder alle an. Ein Kopplungsanzeiger im Kopf fasst zusammen, wie stark der Baustein eingebunden ist. Verwendet der Baustein nichts oder wird er nirgends verwendet, steht das ausdrücklich da.

Klicken Sie einen Eintrag an, um direkt zu diesem Baustein zu springen — er wird im Baum ausgewählt und rechts erscheinen seine Abhängigkeiten. So hangeln Sie sich Schritt für Schritt durch das Projekt.

Zwischen Liste und Nachbarschaft umschalten

Ein Umschalter wechselt die rechte Seite zwischen zwei Ansichten:

  • Liste — die beiden Spalten Wird verwendet von / Verwendet (oben beschrieben).
  • Nachbarschaft — eine kleine Grafik, die den gewählten Baustein in der Mitte und seine direkten Nachbarn ringsum zeigt. Klicken Sie einen Nachbarn an, um die Ansicht auf ihn zu zentrieren und weiterzuwandern. Mit dem Scrollrad zoomen Sie um den Mauszeiger, mit gedrückter mittlerer Maustaste verschieben Sie die Ansicht, und ein Doppelklick auf eine leere Stelle passt die Grafik wieder ein. Mit dem Tiefe-Schalter oben links zeigen Sie mehr oder weniger Ebenen rund um den Baustein, um mehrere Schritte weit zu verfolgen, was er verwendet (und was ihn verwendet), statt sich Baustein für Baustein durchzuklicken. Zeigt eine Ebene nur einen Teil der Bausteine, blendet ein +N-Hinweis bei jedem Klick die nächsten Bausteine ein, und Weniger klappt sie wieder zu; die Tabelle listet immer alle Bausteine. Rechtsklick auf einen Baustein (den zentralen oder einen Nachbarn) bietet Projektobjekte öffnen, Verbinden, Verbindung entfernen, Knoten löschen und Auswahl erstellen.

Welche Ansicht Sie zuletzt gewählt haben, wird pro Graph gemerkt.

Mehrere Graphen aus der Liste entfernen

In der Liste Project Graphs lassen sich auch mehrere Graphen gleichzeitig auswählen: Strg+Klick fügt einen Eintrag zur Auswahl hinzu oder entfernt ihn, Umschalt+Klick wählt einen zusammenhängenden Bereich, und Strg+A wählt alle. Drücken Sie anschließend Entf (solange die Liste den Fokus hat) oder klicken Sie mit der rechten Maustaste auf die Auswahl und wählen „N Projektgraphen löschen" — eine einzige Rückfrage deckt die gesamte Auswahl ab. Einen einzelnen Graphen entfernen Sie über das Papierkorb-Symbol, das beim Überfahren einer Zeile erscheint.

Einen Graphen umbenennen

Klicken Sie in der Liste Project Graphs mit der rechten Maustaste auf einen Graphen und wählen „Projektgraph umbenennen" — oder klicken Sie im Projektbaum auf das Stift-Symbol in der Titelleiste. Geben Sie den neuen Namen ein; er erscheint überall: in der Liste, im Projektbaum und in einem bereits geöffneten Tab. (Projektgraph und Projektbaum sind derselbe Graph, deshalb wirkt das Umbenennen an beiden Stellen.)

Den Graphen bearbeiten

Knoten und Verbindungen ändern Sie über die Schaltflächen in der Symbolleiste: Knoten hinzufügen, Verbinden, Knoten entfernen, Verbindung entfernen und Aktualisieren. Verbinden und Knoten entfernen werden aktiv, sobald Sie einen Baustein gewählt haben; Verbindung entfernen bietet Ihnen die Verbindungen des gewählten Bausteins zur Auswahl an. Nach jeder Änderung aktualisiert sich die Ansicht; lässt sich eine Änderung nicht anwenden, erklärt eine Mitteilung den Grund und nichts wird verändert.

Entfernen Sie einen Knoten, der als einziger andere Objekte verwendet — etwa einen Baustein, dessen Datentypen sonst niemand referenziert —, listet der Bestätigungsdialog diese Objekte namentlich auf und bietet ein vorangekreuztes Kontrollkästchen „Auch N Objekte entfernen, die nur dieser Knoten referenziert". Lassen Sie es angekreuzt, um sie zusammen mit dem Knoten aufzuräumen, oder entfernen Sie den Haken, um nur den Knoten zu löschen. Objekte, die ein anderer Knoten noch verwendet, werden nie aufgelistet und nie entfernt.

Nur für ausgewählte Objekte Code generieren

Sie müssen nicht das ganze Projekt auf einmal generieren — Code lässt sich auch für nur die Objekte erzeugen, die Sie auswählen.

  1. Wählen Sie die gewünschten Bausteine im Baum aus: Halten Sie Strg/Cmd gedrückt und klicken Sie mehrere an, oder halten Sie Umschalt gedrückt und wählen Sie einen zusammenhängenden Bereich.
  2. Wählen Sie „Ausgewählte Knoten erstellen" — über die Schaltfläche Auswahl erstellen in der Symbolleiste oder über die Befehlspalette.

Es werden nur die ausgewählten Objekte (neu) generiert; alles, was Sie zuvor erzeugt haben, bleibt unverändert. Das übrige Projekt wird im Hintergrund weiterhin geprüft, damit Querverweise korrekt aufgelöst werden, und das Erstellen bricht nur ab, wenn mit einem der ausgewählten Objekte etwas nicht stimmt.

Wenn Sie mit dem Auswählen fertig sind, generieren Sie jederzeit wieder das gesamte Projekt mit „Projektgraph erstellen" (Befehlspalette).

Codegeneratoren und Ausgabeziele

Aus jedem Objekt erzeugt Forge Quelltext über einen Codegenerator. Welche Generatoren verfügbar sind, sehen Sie in der Ansicht Plugins im Forge-View-Container; der eingebaute Generator für Siemens-SCL erscheint als TIA SCL. Jede Zeile nennt den Generator samt Version. Die Liste ist rein informativ — Sie wählen hier kein Ziel aus. Über Plugins neu laden wird die Liste aktualisiert, nachdem Sie Generatoren hinzugefügt oder geändert haben.

Auswählen, was generiert wird

Das Ausgabeziel legen Sie bei jedem Erstellen fest — weder in den Einstellungen noch in der Plugins-Liste. Sobald Sie „Projektgraph erstellen" oder „Ausgewählte Knoten erstellen" ausführen, fragt eine Auswahlliste, für welche Ziele generiert werden soll; alle verfügbaren Ziele sind vorausgewählt. Bestätigen Sie die Auswahl, und der Quelltext entsteht je Ziel. TIA SCL ist das eingebaute Ziel für Siemens-SCL.

Welcher Codegenerator ein einzelnes Objekt bedient, hängt von dessen Bibliothekstyp ab — oder, falls keiner gesetzt ist, von dessen Untertyp. Beide stellen Sie im Abschnitt Ein Objekt inspizieren und bearbeiten ein.

Auswählen, welche generierten Dateien importiert werden

Nach einem Erstellen erscheinen die generierten Dateien in der Ansicht Erstellungsausgabe, jede mit einem Kontrollkästchen (und ein Kontrollkästchen je Gruppe, das alle Dateien der Gruppe auf einmal an- oder abwählt).

  • Haken Sie die gewünschten Dateien an und wählen Sie „Auswahl in TIA Portal importieren", um nur diese in die verbundene PLC zu übernehmen. Diese Aktion bleibt deaktiviert, solange keine importierbare Datei angehakt ist.
  • Wählen Sie „Alle in TIA Portal importieren", um sämtliche generierten Bausteine zu übernehmen — unabhängig von den Kontrollkästchen.

Für beide gelten die üblichen Regeln: Forge und das TIA-Projekt müssen verbunden sein, bei mehreren PLCs wählen Sie die Ziel-PLC, gleichnamige Bausteine werden erst nach Ihrer Bestätigung überschrieben, und eine Mitteilung meldet, wie viele Bausteine übernommen wurden.

Objekte im Projektbaum durchsuchen

Die Ansicht Projektbaum in der Forge-Seitenleiste zeigt die Objekte eines Projektgraphen als Ordnerbaum — dieselbe Ordnerstruktur wie im Projekt. Enthält eine Ordnerebene mehrere Arten von Objekten, gruppiert der Baum sie zusätzlich nach Kategorie (Funktionsbausteine, Datenbausteine, Datentypen usw.).

  • Existieren mehrere Graphen, wählt eine Auswahlliste im Kopf der Ansicht, welcher Graph angezeigt wird — jeder Eintrag nennt den Namen samt Erstellungsdatum.
  • Das Papierkorb-Symbol in der Titelleiste der Ansicht löscht den angezeigten Graphen (nach Rückfrage).
  • Ein Klick auf ein Objekt zeigt seine Details an; ein Doppelklick (oder Enter) öffnet den Graphen als Tab und springt direkt zum Objekt.
  • Rechtsklick auf ein Objekt: „Im Graph anzeigen", „Projektobjekte öffnen" (öffnet die Tabelle, vorgefiltert auf den Ordner des Objekts) und „Knoten löschen" (mit Rückfrage). Rechtsklick auf einen Ordner: „Projektobjekte im Ordner öffnen".

Der Baum aktualisiert sich live, sobald sich der Graph ändert.

Objekte in der Tabelle bearbeiten

„Projektobjekte öffnen" (Befehlspalette oder Kontextmenü des Projektbaums) öffnet die Objekte eines Graphen als Tabelle in einem Editor-Tab — die zentrale Stelle, um Eigenschaften zu prüfen und über viele Objekte hinweg zu bearbeiten.

  • Filtern: Schalter je Objekt-Art, eine Untertyp-Auswahl, ein Feld für das Ordnerpräfix, eine Suche über Symbol und Beschreibung sowie der Schalter „Ohne Kanten" für Objekte ohne Verbindungen. Eine Sortier-Auswahl mit Auf-/Absteigend-Schalter ordnet die Zeilen.
  • Spalten: Symbol, Art, Untertyp, Ordner, Beschreibung und Kanten. Zeigt die Tabelle nur Objekte eines einzigen Untertyps, kommt pro Eigenschaft eine eigene Spalte hinzu.
  • Live-Werte: Sind Sie online mit einer Steuerung verbunden, schalten Sie oben rechts Monitor ein — die Spalte Live zeigt dann für jedes Tag den aktuellen Wert und hält ihn laufend nach, solange der Monitor an ist. Strukturierte Objekte und Felder (Arrays) zeigen einen Bindestrich (), da sie keinen einzelnen Wert haben. Möchten Sie nur ein einzelnes Tag verfolgen, ohne alles zu beobachten, klicken Sie das Auge in seiner Zeile an, um genau diesen Wert zu beobachten; ein erneuter Klick beendet die Beobachtung.
  • Inline bearbeiten: Klicken Sie eine Zelle (Symbol, Beschreibung oder eine Eigenschaft) an und ändern Sie den Wert direkt — gespeichert wird sofort. Wurde das Objekt zwischenzeitlich an anderer Stelle geändert, lädt die Tabelle die aktuellen Werte nach, statt sie zu überschreiben.
  • „Spalte setzen…": Wählen Sie mehrere Zeilen aus und setzen Sie eine Eigenschaft für alle auf denselben Wert. Der Vorgang läuft mit Fortschrittsanzeige und lässt sich abbrechen; tritt ein Konflikt auf, stoppt er und meldet, wie viele Objekte gesetzt wurden — die übrigen bleiben unverändert.

Wird der Projektgraph gelöscht, während seine Tabelle geöffnet ist, zeigt der Tab einen entsprechenden Hinweis und lässt sich einfach schließen — eine Fehlermeldung erscheint nicht.

Ein Objekt inspizieren und bearbeiten

Wählen Sie ein Objekt (im Projektbaum, in der Tabelle oder auf der Karte), zeigt der Inspector im Forge-View-Container alle seine Felder — gegliedert in Profile, Knoten, Eigenschaften und Datenpunkte. Die meisten Felder bearbeiten Sie direkt hier; jede Änderung wird sofort gespeichert. Wurde dasselbe Objekt zwischenzeitlich an anderer Stelle geändert, fragt der Inspector, ob die aktuellen Werte neu geladen werden sollen, statt Ihre Eingabe blind zu überschreiben.

Profile — Profil und Variante des Graphen

Die Einstellung ganz oben gilt für den gesamten Graphen, nicht für das einzelne Objekt: ein Profil aus der Liste („— Keine —" hebt die Zuordnung auf) und optional eine Variante. Damit fliessen die Standardwerte des Profils in alle Objekte ein — ausführlich beschrieben unter Profile — Standardwerte staffeln.

Knoten — Symbol, Art, Beschreibung, Untertyp und Bibliothekstyp

  • Symbol — der Name des Objekts, wie er im Baum, auf der Karte und in Verweisen erscheint. Frei editierbar.
  • Art — die Grundkategorie des Objekts. Mögliche Werte: Equipment, Zelle / Station, Ressource, Werkstück, E/A-Punkt, Hardware und Verbund. Dieses Feld ist schreibgeschützt. Zurückentwickelte Bausteine erhalten immer die Art Verbund — daher zeigt ein aus einem Projekt erfasster Baustein stets denselben Wert; die übrigen Arten vergeben Sie nur beim eigenen Modellieren einer Anlage.
  • Beschreibung — ein freier Kommentartext. Frei editierbar.
  • Untertyp — die konkrete Bausteinart, die das Objekt darstellt. Tippen Sie sie direkt ein, oder klicken Sie auf das Auswahl-Symbol und wählen aus den Bausteinarten (OB, FB, InstanceDB, FC, DB, UDT, TO, Tag), den fehlersicheren Arten (FOB, FFB, FFC, FDB) oder geben über Benutzerdefiniert … eine eigene Kennung ein.
  • Bibliothekstyp — verknüpft das Objekt mit einem wiederverwendbaren Typ aus der Bausteintyp-Bibliothek; aus diesem Typ wird der Quelltext erzeugt. Tippen Sie ihn ein, oder wählen Sie über das Auswahl-Symbol aus Ihrer Bibliothek bzw. den eingebauten Typen; „Keiner" löst die Verknüpfung. Ist ein Bibliothekstyp gesetzt, hat er beim Generieren Vorrang vor dem Untertyp; ohne Bibliothekstyp greift der Untertyp. Benötigt der gewählte Typ einen gemeinsam genutzten Datentyp, fügt Forge diesen Datentyp für Sie in den Graphen ein: Er erscheint als eigener Knoten mit einer Verbindungslinie, sodass die Abhängigkeit sichtbar ist und beim Ausspielen mit dem Graphen mitwandert. Dieselbe Verknüpfung erneut zu setzen erzeugt keine Duplikate.
  • Version — eine schreibgeschützte Revisionsnummer, die mit jeder Änderung steigt. Sie verhindert, dass eine andernorts vorgenommene Änderung versehentlich überschrieben wird.

Eigenschaften

Der Abschnitt Eigenschaften zeigt die Eigenschaften des Objekts, je eine pro Zeile:

  • Vorgegebene Eigenschaften des Untertyps bzw. Bibliothekstyps erscheinen als passende Eingabefelder — Zahl, Schalter, Auswahlliste oder Text —, teils mit Pflicht-Markierung (*) oder Einheit. Ihren Wert können Sie leeren, die Zeile selbst aber nicht entfernen.
  • Freie Eigenschaften lassen sich beliebig bearbeiten und über das Papierkorb-Symbol entfernen. Zurückentwickelte Objekte bringen solche freien Einträge mit, etwa die Bausteinnummer, den Ordnerpfad im Projekt, eine Kennzeichnung für fehlersichere Bausteine und den ursprünglichen TIA-Namen.

Datenpunkte

Der Abschnitt Datenpunkte listet die benannten Datenpunkte eines Objekts mit ihrem Datentyp (und, sofern vorhanden, Einheit und Wert). Die Liste ist schreibgeschützt. Bei zurückentwickelten oder frisch angelegten Objekten ist sie meist leer — Datenpunkte erscheinen nur, wenn ein Objekt mit solchen geladen oder angelegt wurde.

Profile — Standardwerte staffeln

Ein Profil ist ein benannter Satz von Standardwerten, der über einen Projektgraphen hinweg gilt. Statt denselben Wert an vielen Objekten einzeln zu setzen, legen Sie ihn einmal im Profil fest — er fliesst dann als Vorgabe in die Effektiver Wert-Spalte der Projektobjekte und in den generierten Code ein. Werte lassen sich nach Typ, Rolle und Variante staffeln: Ein spezifischerer Wert überschreibt einen allgemeineren.

Profile verwalten

Die Ansicht Profile im Forge-View-Container listet alle Profile. Per Rechtsklick auf einen Eintrag — oder über die Schaltflächen der Ansicht:

  • Neues Profil — Sie vergeben einen Bezeichner und einen Anzeigenamen. Bezeichner dürfen nur Buchstaben, Ziffern und Unterstriche enthalten.
  • Profil umbenennen / duplizieren / löschen — auf einem Profil (Löschen mit Rückfrage).

Ein Doppelklick öffnet das Profil als Tab.

Ein Profil bearbeiten

Der Profil-Editor ist auf die Auflösung ausgerichtet: Oben wählen Sie ein Ziel, darunter sehen Sie für jede Eigenschaft den Wert, der sich daraus ergibt, und woher er stammt.

  1. Ziel wählen: Stellen Sie Typ auf den Bausteintyp, dessen Vorgaben Sie setzen wollen — oder geben Sie eine Rolle an —, optional dazu eine Variante. Typ und Rolle schliessen sich gegenseitig aus; der Editor weist Sie darauf hin (zum Beispiel „Rolle löschen, um einen Typ anzusteuern").
  2. Die Tabelle zeigt drei Spalten: Eigenschaft, Effektiver Wert und Quellebene.
    • Geerbte Zeilen sind gedimmt; die Quellebene nennt, woher der Wert stammt — etwa der eingebaute Typ-Standard, die Basis des Profils oder eine allgemeinere Ebene.
    • Zeilen, die Sie selbst gesetzt haben, tragen in der Quellebene Eigen.
  3. Wert setzen: Doppelklick auf eine Zelle in Effektiver Wert und Wert eingeben — die Zeile wird damit Eigen (Ihr eigener Wert für genau dieses Ziel) und zeigt den getippten Wert sofort.
  4. Zurücksetzen: Das Rücksetz-Symbol am Ende einer Eigen-Zeile löscht Ihre Überschreibung wieder; die Zeile fällt auf den geerbten Wert zurück.
  5. Speichern: Speichern (oder Strg+S) sichert das Profil; ungespeicherte Änderungen markiert der Tab mit dem üblichen Punkt. Speichern Sie ein Profil, das noch keine eigenen Werte enthält, bestätigt Studio das Speichern und weist darauf hin, dass nichts gespeichert wird, bis Sie einen Typ wählen und einen Effektiven Wert bearbeiten — einen Typ allein zu wählen speichert nichts.

Steht Typ auf „—", zeigt die Tabelle die Werte der Profil-Basis (bei einem neuen Profil ist sie zunächst leer). Wählen Sie einen Typ, um dessen Eigenschaften zu sehen und zu setzen. Der Editor merkt sich den zuletzt gewählten Typ, die Rolle und die Variante je Profil und stellt sie beim nächsten Öffnen wieder her, sodass Ihre eigenen Werte sofort sichtbar sind.

Ein Profil deckt mehrere Ziele ab. Sie sind nicht auf einen einzigen Typ beschränkt: Stellen Sie oben den Typ (oder die Rolle / Variante) um und setzen Sie erneut Werte — jedes bearbeitete Ziel bleibt im selben Profil erhalten. So kann ein Profil zum Beispiel Basiswerte sowie getrennte Werte für mixerT und agitator nebeneinander tragen. Wird das Profil angewendet, übernimmt ein Objekt die Werte aus den passenden Schichten, wobei eine spezifischere Schicht eine allgemeinere überstimmt — Typ vor Basis, und eine Kombination Typ+Variante vor Typ allein. Ein Objekt eines Typs, den Sie nie gesetzt haben, erhält einfach die Basis- (oder die eingebauten) Werte.

Werte als Ausdruck

Ein Wert muss keine feste Konstante sein — Sie können stattdessen einen Ausdruck hinterlegen, der pro Objekt beim Generieren ausgewertet wird. Schreiben Sie ihn mit führendem =, zum Beispiel ={{ node.symbol }} Störung oder ={{ node.props.openTime + 2 }}. Ein Ausdruck kann den Namen des Objekts (node.symbol), seine Rolle (node.role), seinen Typ (node.type) sowie die bereits gesetzten festen Eigenschaften des Objekts (node.props.<name>) lesen.

  • Soll ein Wert wörtlich mit = beginnen, stellen Sie ihm = voran (=Start ergibt den Text =Start).
  • Im Editor erscheint der Ausdruck so, wie Sie ihn eingegeben haben; ausgewertet wird er erst beim Generieren am jeweiligen Objekt.
  • Lässt sich ein Ausdruck nicht auswerten, meldet der Build einen Fehler für das betroffene Objekt und es wird nichts generiert — ein fehlerhafter Wert wird nie stillschweigend übernommen.

Ein Profil auf einen Graphen anwenden

Welches Profil und welche Variante für einen Projektgraphen gelten, wählen Sie in dessen Inspector im Abschnitt Profile: ein Profil aus der Liste („— Keine —" hebt die Zuordnung auf) und optional eine Variante. Die Standardwerte des gewählten Profils erscheinen daraufhin in der Effektiver Wert-Spalte der Projektobjekte und fliessen in den generierten Code ein.

Generierten Quelltext live ansehen

Mit einem ausgewählten Projektobjekt (im Projektbaum, in der Tabelle oder auf der Karte) öffnet „Generierten Quelltext in Vorschau anzeigen" (Befehlspalette) den generierten Quelltext dieses Objekts — schreibgeschützt, direkt neben Ihrer Arbeit. Beim ersten Mal fragt Forge, für welche Codegenerierungsziele die Vorschau erzeugt werden soll; die Auswahl wird pro Graph gemerkt. Hat das Objekt keinen generierten Quelltext, erscheint ein kurzer Hinweis in der Statusleiste.

Soll die Vorschau Ihrer Auswahl automatisch folgen, aktivieren Sie in den Einstellungen im Abschnitt Forge die Option Preview: Auto Open — die Vorschau aktualisiert sich dann von selbst, während Sie durch die Objekte klicken.

Den Projektgraphen prüfen

„Projektgraph prüfen" (Befehlspalette) durchsucht einen Graphen nach Auffälligkeiten — etwa eine Verbindung, die vergleichbare Objekte haben, diesem aber fehlt; eine leere Pflichteigenschaft; oder ein ungewöhnlicher Zahlenwert. Eine Mitteilung fasst Warnungen und Hinweise zusammen, und die Funde erscheinen in der Ansicht Diagnose unter Auffälligkeitsprüfungen. Ein Klick auf einen Fund springt direkt zum betroffenen Objekt auf der Karte. Die Prüfung ist rein lesend — sie ändert nichts am Graphen.

KI-Unterstützung

Der Chat-Assistent kennt Ihre Projektgraphen: Er kann Objekte und ihre Eigenschaften lesen, den Graphen prüfen und auf Ihre Anweisung Objekte und Verbindungen anlegen, ändern oder entfernen. Jede Änderung am Graphen fragt vorher nach Ihrer Bestätigung, und Sie können sie einmalig, für die Sitzung oder dauerhaft freigeben, wenn Sie nicht jedes Mal gefragt werden möchten.

Auch den Maschinenkatalog- und CMS-Kreislauf bedient der Assistent: Bitten Sie ihn, einen Graphen als Maschinen-Template zu deklarieren, den Maschinenkatalog in eine Datei zu exportieren oder an Ihr Maschinenkatalog-CMS zu senden, die dort veröffentlichten Konfigurationen aufzulisten, eine Konfiguration zu materialisieren (aus einer Datei oder direkt aus dem CMS, inklusive Rückmeldung des As-Built-Manifests) oder das As-Built-Manifest einer Maschine nach dem Ausspielen erneut zu senden. Jeder Schritt, der etwas ändert oder mit dem CMS spricht, fragt vorher nach Ihrer Bestätigung, sofern Sie ihn nicht für die Sitzung oder dauerhaft freigegeben haben, und es gilt dieselbe strenge Prüfung wie bei den Befehlen: eine ungültige Konfiguration materialisiert nichts.

Bibliothek in eine PLC ausspielen

Mit einem Befehl materialisieren Sie die gesamte Bibliothek als Bausteine in einer verbundenen PLC.

  1. Stellen Sie sicher, dass Forge verbunden ist und im TIA-Projekt eine PLC vorhanden ist (verbinden Sie das Projekt über „Mit Openness Manager verbinden").
  2. Klicken Sie in der Titelleiste der Bausteintyp-Bibliothek auf Ausspielen (Wolken-Symbol) — oder führen Sie über die Befehlspalette „Bibliothek in TIA Portal ausspielen" aus.
  3. Enthält das Projekt mehrere PLCs, wählen Sie die Ziel-PLC aus der Liste.
  4. Existieren bereits gleichnamige Bausteine, erscheint eine Bestätigung mit der Anzahl der zu überschreibenden Bausteine — bestätigen Sie mit „Ausspielen und überschreiben" oder brechen Sie ab.
  5. Eine Fortschrittsmeldung begleitet das Ausspielen; am Ende meldet eine Mitteilung, wie viele Bausteine in die PLC übernommen wurden. Anschließend wird das Projekt kompiliert und gespeichert.

Die Bausteine landen in derselben Gruppenstruktur wie in der Bibliothek — verschachtelte Ordner werden als verschachtelte Gruppen in der PLC angelegt. Ein erneutes Ausspielen verwendet bestehende Gruppen wieder und überschreibt die Bausteine.

Unterstützte Inhalte: Programmbausteine (FB/FC/OB, Global- und Instanz-DBs), PLC-Datentypen (UDTs) und PLC-Tag-Tabellen. Typen aus nicht unterstützten Kategorien werden vor dem Ausspielen übersprungen und in der Abschlussmeldung gezählt; Anweisungsliste-Bausteine (AWL/STL) werden ebenfalls vorab übersprungen und in der Abschlussmeldung mit Name und Grund genannt. Auch Inhalte aus Software Units werden vorab übersprungen und in der Abschlussmeldung mit Name und Grund genannt — das Ausspielen in Software Units wird noch nicht unterstützt.

Einen Projektgraphen ausspielen

Auch ein Projektgraph lässt sich direkt in eine verbundene PLC ausspielen — mit allem, was er enthält: Bausteine, Datentypen und Variablentabellen. Die Datentypen, auf die die Schnittstelle eines Bausteins angewiesen ist, werden zusammen mit dem Baustein ausgespielt, sodass seine Schnittstelle in TIA Portal aufgelöst wird, statt einen fehlenden Datentyp anzuzeigen.

  1. Öffnen Sie den Graphen als Tab und klicken Sie in dessen Titelleiste auf Ausspielen (Raketen-Symbol, sichtbar bei verbundenem TIA-Projekt) — oder klicken Sie auf die Rakete in der Titelleiste der Liste Project Graphs: Ausgespielt wird der gerade geöffnete Graph; ist keiner geöffnet, wird der einzige vorhandene Graph verwendet, und bei mehreren wählen Sie ihn aus einer Liste. Alternativ führen Sie über die Befehlspalette „Graph in TIA Portal ausspielen" aus.
  2. Enthält das Projekt mehrere PLCs, wählen Sie die Ziel-PLC aus der Liste.
  3. Existieren bereits gleichnamige Bausteine, bestätigen Sie das Überschreiben mit „Ausspielen und überschreiben".
  4. Am Ende meldet eine Mitteilung, wie viele Bausteine in die PLC übernommen wurden. Schlägt ein Baustein fehl, nennt die Meldung Name und Grund — alle übrigen Inhalte werden trotzdem übernommen. Auch vorab übersprungene Elemente — etwa AWL/STL-Bausteine oder Variablentabellen aus Software Units — führt die Meldung mit Name und Grund auf.

Maschinen-Konfigurator: vom Template zur fertigen Maschine

Mit dem Maschinen-Konfigurator machen Sie aus einem Projektgraphen ein wiederverwendbares Maschinen-Template mit wählbaren Optionen — und erzeugen daraus beliebig viele konkrete Maschinenvarianten, fertig verdrahtet, adressiert und bereit zum Ausspielen in eine PLC.

Der Ablauf in Kürze: Sie definieren einmalig ein Template (welche Geräte, welche Optionen), erhalten pro Auftrag eine Konfigurationsdatei mit den gewählten Optionen, materialisieren daraus einen konkreten Projektgraphen und spielen ihn in die PLC aus. Ein As-Built-Manifest dokumentiert anschliessend maschinenlesbar, was gebaut wurde.

Ein Maschinen-Template definieren

  1. Öffnen Sie den Projektgraphen, der als Vorlage dienen soll — typischerweise ein zurückentwickeltes Musterprojekt.
  2. Verknüpfen Sie die Geräte-Knoten mit ihren Gerätetypen: Wählen Sie einen Knoten aus und füllen Sie im Inspector den Abschnitt Gerätebindung aus — dort legen Sie fest, welcher erfasste Gerätetyp dahintersteht und wie oft er entstehen soll: als feste Anzahl oder gesteuert durch eine Option. Auch die Namen bestimmen Sie hier: ein Muster für die Instanznamen und ein Muster für die Bausteinnamen jeder Instanz (etwa damit aus dbPress je Presse dbPress_Presse_1, dbPress_Presse_2 … wird).
  3. Wählen Sie im Titelmenü () des Graph-Tabs „Maschinen-Template-Optionen bearbeiten" (auch über die Befehlspalette erreichbar). Ein JSON-Editor öffnet sich mit den Template-Optionen.
  4. Beschreiben Sie dort Kennung und Anzeigenamen des Templates sowie seine Optionen — Ja/Nein-Optionen, Stückzahlen mit Minimum und Maximum oder Auswahllisten — und optional Regeln zwischen Optionen („erfordert" / „schliesst aus").
  5. Speichern Sie über „Maschinen-Template-Optionen speichern" im Titelmenü des JSON-Tabs. Ungültige Eingaben werden abgewiesen, und nichts wird gespeichert.

Sobald ein Graph ein Maschinen-Template ist, lässt er sich nicht mehr direkt erstellen oder ausspielen — er ist eine abstrakte Vorlage. Ein Hinweis fordert Sie stattdessen auf, zuerst eine Konfiguration zu materialisieren.

Den Maschinenkatalog exportieren

„Maschinenkatalog exportieren" (über das Wolken-Symbol in der Titelleiste der Liste Project Graphs oder die Befehlspalette) schreibt eine Katalogdatei mit allen Maschinen-Templates des Projekts — Optionen, Regeln und einer Zusammenfassung der Geräte, aber ohne die Interna Ihrer Vorlagen. Ein externes Auswahlsystem (etwa ein CMS oder Ihr Vertriebstool) kann daraus eine Auswahloberfläche aufbauen und fertige Konfigurationsdateien erzeugen.

Eine Konfiguration materialisieren

  1. Wählen Sie „Maschinenkonfiguration materialisieren" (über das Wolken-Symbol in der Titelleiste der Liste Project Graphs oder die Befehlspalette) und wählen Sie die Konfigurationsdatei aus.
  2. Forge prüft die Datei streng: Unbekannte Optionen, verletzte Grenzen oder Regeln brechen ab, und nichts wird angelegt. Wurde das Template seit Erstellung der Konfiguration geändert, fragt eine Rückfrage, ob trotzdem materialisiert werden soll.
  3. Existiert bereits eine früher materialisierte Maschine derselben Konfiguration, fragt Studio, ob sie ersetzt werden soll — Einheiten, die in der neuen Konfiguration nicht mehr vorkommen, werden namentlich genannt.
  4. Am Ende entsteht ein neuer, konkreter Projektgraph in der Liste Project Graphs: die gemeinsamen Typbausteine (etwa der Funktionsbaustein der Presse) genau einmal mit ihren Originalnamen, dazu je Instanz eigene Datenbausteine nach Ihrem Namensmuster, komplett verdrahtet und mit überschneidungsfreien S7-Adressen. Neben der Konfigurationsdatei wird automatisch das As-Built-Manifest abgelegt, und eine Mitteilung nennt die Anzahl der erzeugten Instanzen.

Die materialisierte Maschine ausspielen

Die materialisierte Maschine spielen Sie wie jeden Projektgraphen aus (siehe oben). In der PLC entsteht das gewohnte Bild: ein Typbaustein je Gerätetyp unter seinem Originalnamen in der normalen Gruppenstruktur, daneben die Instanz-Datenbausteine jeder konfigurierten Instanz mit ihren eindeutigen Namen — drei konfigurierte Pressen ergeben einen fbPress und drei Instanz-DBs.

Das As-Built-Manifest

Das Manifest beschreibt maschinenlesbar, was gebaut wurde: alle Instanzen mit ihren Bausteinnamen, Adressen und Datenpunkten samt Verbindungen — die Grundlage für nachgelagerte Systeme, etwa ein SCADA, das sich damit an die PLC bindet. Es entsteht automatisch beim Materialisieren; „As-Built-Manifest exportieren" (Titelmenü des Graph-Tabs, sichtbar nur auf materialisierten Maschinen, oder Befehlspalette) erzeugt es jederzeit neu — etwa nach dem Ausspielen.

Mit einem Maschinenkatalog-CMS arbeiten (optional)

Statt Katalog-, Konfigurations- und Manifest-Dateien von Hand weiterzureichen, kann Studio den gesamten Kreislauf direkt mit einem Maschinenkatalog-CMS abwickeln — der zentralen Katalog-Ablage Ihres Unternehmens, in der Vertrieb oder Auftragsabwicklung Maschinen konfigurieren. Adresse und Zugangstoken erhalten Sie von Ihrem Administrator. Die Katalog- und CMS-Befehle finden Sie gesammelt hinter dem Wolken-Symbol in der Titelleiste der Liste Project Graphs — ein Klick öffnet das Menü.

Einrichten: Tragen Sie in den Einstellungen unter Forge Maschinenkatalog-CMS die Basisadresse ein und hinterlegen Sie den Token über den Befehl „Maschinenkatalog-CMS-Token festlegen" — er wird sicher gespeichert und nie wieder angezeigt. „Maschinenkatalog-CMS-Token löschen" entfernt ihn wieder. Solange Adresse oder Token fehlen, sagt Ihnen jeder CMS-Befehl mit einem klaren Hinweis, was noch fehlt.

Katalog senden: „Maschinenkatalog an CMS senden" (Wolken-Symbol der Liste Project Graphs oder Befehlspalette) lädt alle Maschinen-Templates des Projekts samt Gerätetyp-Zusammenfassungen hoch; die Abschlussmeldung nennt die Anzahl. Erneutes Senden aktualisiert die Einträge, ohne Duplikate anzulegen.

Konfiguration direkt materialisieren: „Konfiguration aus CMS materialisieren" (ebenfalls hinter dem Wolken-Symbol) zeigt die im CMS veröffentlichten Maschinenkonfigurationen zur Auswahl (Name, Template und letzter Stand). Nach der Auswahl läuft dieselbe strenge Prüfung und derselbe Ablauf wie beim Datei-Weg — inklusive aller Rückfragen. Das As-Built-Manifest wird im Arbeitsbereich im Ordner forge-manifests abgelegt und automatisch an das CMS zurückgemeldet, wo der Auftrag damit als gebaut dokumentiert ist. Enthält eine Konfiguration aus dem CMS Daten, die nicht dem erwarteten Format entsprechen, bricht Studio ab, ohne etwas anzulegen.

Manifest nachsenden: „As-Built-Manifest an CMS senden" (Wolken-Symbol der Liste Project Graphs, Titelmenü des Graph-Tabs auf materialisierten Maschinen, oder Befehlspalette) sendet das Manifest jederzeit erneut — etwa nach dem Ausspielen. Studio findet die zugehörige CMS-Konfiguration über den Namen; gibt es mehrere Kandidaten, wählen Sie aus einer Liste. Mit der Einstellung „Das As-Built-Manifest nach erfolgreichem Ausspielen eines materialisierten Graphen automatisch an das Maschinenkatalog-CMS zurücksenden" geschieht das nach jedem erfolgreichen Ausspielen von selbst.

SCADA-Konfiguration aus einer Auswahl exportieren

Für nachgelagerte Systeme (etwa ein SCADA) erzeugt Forge aus einer Canvas-Auswahl eine maschinenlesbare SCADA-Konfiguration: die Datenpunkte Ihrer SCADA-Schnittstellen-Bausteine samt Datentyp, Startwert und Kommentar, dazu die Variablen der ausgewählten Variablentabellen mit Adresse und Kommentar.

  1. Schnittstellen markieren: Rechtsklick auf einen Datenbaustein-Knoten im Graphen → „Als SCADA-Schnittstelle markieren". Es können beliebig viele sein; der Inspector zeigt die Markierung, erneutes Ausführen entfernt sie. Die Markierung bleibt im Graphen gespeichert.
  2. Auswahl treffen: Im Graphen die gewünschten Knoten auswählen (dieselbe Mehrfachauswahl wie beim selektiven Erstellen) — markierte Datenbausteine und Variablen, die dazugehören sollen.
  3. „Export SCADA Configuration" (Rechtsklick auf die Auswahl oder Befehlspalette): Namen vergeben, Speicherort wählen — fertig ist die Datei <Name>.scada.json. Verschachtelte Strukturen erscheinen als Punktpfade (Antrieb.Sollwert).
  4. „Push SCADA Configuration to CMS" legt dieselbe Konfiguration stattdessen im Maschinenkatalog-CMS ab (Adresse + Token wie oben eingerichtet). Erneutes Senden aktualisiert den Eintrag, ohne Duplikate; Ihre SCADA-Toolchain kann die Konfigurationen dort abrufen.

Kann etwas nicht gelesen werden — etwa weil die Bausteinquelle fehlt und kein passendes TIA-Projekt verbunden ist —, bricht der Export mit einer klaren Meldung ab, und es entsteht keine halbe Datei. Variablen-Adressen und -Kommentare kommen aus dem verbundenen TIA-Projekt; ohne Verbindung nennt die Meldung die betroffene Tabelle.

Direkt aus dem Projektbaum exportieren

Sie müssen für eine SCADA-Konfiguration nicht den Umweg über einen Forge-Graphen gehen. Im Projektbaum genügt ein Rechtsklick auf einen Datenbaustein, einen PLC-Datentyp (UDT), eine Variablentabelle oder einen Ordner und „Als JSON exportieren" — es entsteht dieselbe <Name>.scada.json. Angehakte Elemente werden mitgenommen, ein Ordner nimmt alle passenden Bausteine darunter mit. Variablentabellen bringen jetzt auch ihre Konstanten und die Kommentare der Variablen mit; PLC-Datentypen landen mit ihrer vollständigen Mitgliederstruktur, den Vorbelegungen, Kommentaren und der externen Erreichbarkeit in der Datei.

Aus den OPC-UA-Knoten einer CPU erzeugen

Am reichhaltigsten wird die Konfiguration aus dem OPC-UA-Adressraum der CPU selbst. Exportieren Sie diesen über das CPU-Kontextmenü („Export OPC UA Nodes"), dann Rechtsklick auf die entstandene Datei und „SCADA aus OPC-UA-Knoten erzeugen". Das Ergebnis trägt die echten Adressen, mit denen Ihr SCADA verbindet, die Baumstruktur, den Datentyp jedes Signals und ob es nur gelesen oder auch geschrieben werden darf — also genau das, was der Server tatsächlich bereitstellt.

Ein Web-Dashboard erzeugen

Aus einer SCADA-Konfiguration erzeugt Studio auf Wunsch ein lauffähiges Web-Dashboard. Adresse Ihres Dashboard-Servers in den Einstellungen hinterlegen (Bereich Forge), dann „Generate FUXA Project" auf einer .scada.json (oder direkt beim Erzeugen aus den OPC-UA-Knoten): Studio baut Anzeigen und Bedienfelder für jedes Signal und spielt sie auf den Server, oder legt sie als Datei zum manuellen Import ab. Schreibbare Signale erscheinen als Eingabefeld, nur lesbare als Anzeige. Das Übertragen ersetzt das gesamte Projekt auf dem Server und wird vorher zur Bestätigung angezeigt. Für ein strukturiertes Dashboard mit mehreren Screens und einer Navigationsleiste planen Sie die Screens zuerst auf der SCADA-Seite (siehe unten).

Ein kurzes Video zeigt den ganzen Ablauf, vom TIA-Portal-Projekt zum laufenden FUXA-Dashboard mit Live-Werten über OPC UA: Generate a FUXA Web SCADA from a Siemens TIA Portal Project.

Die SCADA-Seite

Statt die Schritte einzeln als Befehle auszuführen, öffnen Sie die SCADA-Seite (Befehlspalette → „SCADA-Seite öffnen") und erledigen alles an einem Ort, von oben nach unten:

  • Verbindung: Adresse Ihres Dashboard-Servers eintragen, das Zugriffs-Token setzen oder löschen, dann „Verbindung testen" – Studio liest das Projekt zurück, das aktuell auf dem Server liegt: seinen Namen und wie viele Geräte, Ansichten und Signale es enthält.
  • Deployment (optional): Wenn Sie Ihren Dashboard-Server mit Docker betreiben, spielen Sie hier direkt eine fertige FUXA-Instanz aus – auf dem eigenen Rechner oder einem entfernten Host – und starten, stoppen oder starten sie neu. Die Seite wartet, bis sie antwortet, und trägt die Adresse für Sie ein.
  • Node Set: Laden Sie die OPC-UA-Knoten einer CPU, entweder durch Export aus einer verbundenen CPU oder durch Öffnen einer zuvor exportierten Node-Set-Datei.
  • Baum und Auswahl: Durchsuchen Sie die geladenen Knoten als Kontrollkästchen-Baum und haken Sie genau die Signale an, die auf das Dashboard sollen; eine laufende Zählung zeigt, wie viele Bausteine, Signale und schreibbaren Punkte Sie gewählt haben.
  • Screens (optional): Machen Sie aus den gewählten Signalen ein strukturiertes Dashboard aus mehreren Screens (eine Übersicht mit einer Kachel je Anlagenmodul, dann einen Screen pro Modul) und bearbeiten Sie diesen Plan, bevor Sie erzeugen. Siehe „Ein Dashboard mit mehreren Screens planen" weiter unten.
  • Erzeugen: Tragen Sie den OPC-UA-Endpunkt ein, mit dem Ihr Dashboard verbindet, dann erzeugen und senden Sie das Dashboard an den Server, oder speichern es als .fuxa.json- oder .scada.json-Datei. Ist ein Screen-Plan aktiv, trägt das erzeugte Dashboard alle geplanten Screens samt Navigationsleiste; ohne Plan erhalten Sie eine einzelne Ansicht der gewählten Signale. Nur die angehakten Signale kommen mit, und das Senden ersetzt nach einer Bestätigung das gesamte Projekt auf dem Server.

Alles, was die Seite tut, gibt es auch als die einzelnen Befehle oben; die Seite fasst sie nur zu einem bequemen Ablauf zusammen.

Ein Dashboard mit mehreren Screens planen

Der Bereich Screens der SCADA-Seite macht aus Ihren gewählten Signalen einen Satz fertiger Screens statt einer einzigen flachen Ansicht. Er liegt zwischen dem Node-Set-Baum und den Erzeugen-Optionen.

  • „Screens vorschlagen": Mit geladenem Node Set und ausgewählten Signalen baut ein Klick einen Screen-Plan für Sie. Sie erhalten einen Übersicht-Screen mit einer Kachel je Anlagenmodul (jede Kachel zeigt den Namen des Moduls, eine Statuslampe, sobald das Modul ein Statussignal hat, und öffnet den Screen des Moduls), dazu einen Screen pro Modul mit seinen Signalen in Abschnitte gruppiert. Sehr grosse Gruppen erhalten einen eigenen Detail-Screen, erreichbar über eine Schaltfläche, und jeder Screen hat eine „Zurück"-Schaltfläche, damit Sie jederzeit wieder heraustreten können.
  • Plan bearbeiten: Die vorgeschlagenen Screens erscheinen als bearbeitbare Liste. Zu jedem Screen können Sie ihn umbenennen, sein Layout ändern (Kacheln, Abschnitte, Tabelle oder Frei), ihn nach oben oder unten verschieben, ihn über „Zusammenführen mit…" in einen anderen Screen überführen oder ihn entfernen. Eine Zusammenfassungszeile nennt, wie viele Screens und wie viele Widgets der Plan enthält.
  • Hintergrund: Jede Screen-Zeile trägt eine Schaltfläche „Hintergrund…", mit der Sie ein SVG-Bild (zum Beispiel eine Anlagenzeichnung oder ein aus einem Designwerkzeug exportiertes Layout) hinter die Widgets dieses Screens legen. Ist bereits eine Datei gewählt, öffnet die Schaltfläche ein kleines Menü, um eine andere Datei zu wählen oder den Hintergrund zu entfernen. Unsicherer Inhalt in der Datei (Skripte, Klick-Handler, Verweise auf externe Adressen) wird automatisch entfernt, und ein kurzer Hinweis meldet, wenn etwas entfernt wurde. Eine Datei, die sich nicht lesen lässt oder kein brauchbares SVG ist, wird gemeldet, und der Screen bleibt ohne Hintergrund.
  • Speichern, laden und verwerfen: „Plan speichern" legt den Plan als Datei .scadaplan.json ab, und „Plan laden" holt ihn später wieder (laden Sie zuerst ein Node Set, denn der Plan gehört zu dessen Signalen). „Plan verwerfen" verwirft den aktuellen Plan.

Ist ein Plan aktiv und Sie wählen „An FUXA erzeugen und senden" oder „Als .fuxa.json speichern", baut Studio das gesamte geplante Projekt. Jedes Signal wird zum passenden Bedienelement: eine Lampe für Ein/Aus-Signale, eine Umschalt-Schaltfläche für schaltbare, eine Balkenanzeige für Werte (mit Grenzen aus den Min- und Max-Kommentaren des Signals), ein Schieberegler für schreibbare Werte mit Grenzen und sonst ein einfaches Wertefeld. Die Bedienelemente werden auf die geplanten Screens verteilt, mit einer Navigationsleiste und anklickbaren Kacheln, und jeder Screen, dem Sie einen Hintergrund gegeben haben, zeigt dieses Bild hinter seinen Elementen. „Als .scada.json speichern" schreibt weiterhin die reine Signal-Momentaufnahme Ihrer aktuellen Auswahl, ohne die Screens.

Laden Sie ein anderes Node Set, wird der Plan verworfen, denn er gehört zu den Signalen, die Sie geladen haben. Das Panel Assistant Preview zeigt die geplanten Screens, sodass Sie sie vor dem Erzeugen prüfen können.

Screens vom Assistenten vorschlagen lassen

Statt den Screen-Plan von Hand zusammenzustellen, können Sie den Chat-Assistenten bitten, ihn für Sie vorzuschlagen. Laden Sie zuerst ein Node Set auf der SCADA-Seite, öffnen Sie dann den Chat und beschreiben Sie, was Sie möchten, etwa „Baue aus diesem Node Set eine übersichtliche SCADA mit einem Screen je Anlagenteil". Der Assistent liest die geladenen Signale, gruppiert sie in einen Übersichts-Screen und Modul-Screens und wählt für jedes Signal das passende Bedienelement: eine Anzeige oder ein Rundinstrument für Messwerte, eine Lampe für Status, einen Schieberegler oder ein Eingabefeld für Sollwerte, eine Schaltfläche für Befehle, ein Diagramm für Verläufe, dazu Navigationskacheln zwischen den Screens. Der Vorschlag erscheint im Bereich Screens und im Panel Assistant Preview, wo Sie ihn wie einen selbst geplanten Screen-Satz prüfen und anpassen können, bevor Sie erzeugen. Nichts wird ohne Ihre Bestätigung an den Server gesendet.

Eigene Symbolbibliothek bereitstellen

Wenn Sie über die SCADA-Seite eine FUXA-Instanz ausspielen, erhält der Bereich Deployment eine Schaltfläche „Symbolbibliothek bereitstellen…", sobald eine FUXA-Instanz läuft. Damit wählen Sie einen Ordner mit Ihren eigenen SVG-Symboldateien – zum Beispiel einen Tank, eine Pumpe oder ein Ventil, das Sie selbst gezeichnet haben. Studio macht daraus eine Symbolgruppe und lädt sie in das laufende FUXA, sodass die Symbole im FUXA-Editor neben den eingebauten Formen erscheinen, wenn Sie die erzeugten Screens bearbeiten. Ein kurzer Status meldet, wie viele Symbole bereitgestellt und wie viele Dateien übersprungen wurden.

Wiederholen Sie das, sobald die FUXA-Instanz neu aufgebaut wird: Bereitgestellte Symbole bleiben beim Neuaufbau nicht erhalten.

Eigenes Symbol als Schalter

Ein eigenes Symbol können Sie direkt als geschalteten Anzeiger in die erzeugte SCADA übernehmen, nicht nur zum Bearbeiten in FUXA. Wählen Sie auf der SCADA-Seite über die Schaltfläche beim Screens-Bereich einen Ordner mit Ihren SVG-Symbolen. Danach geben Sie einem Schalter Ihr Symbol: entweder im Screens-Bereich über die Symbol-Auswahl der jeweiligen Zeile, oder Sie bitten den Assistenten im Chat, ein bestimmtes Symbol mit einer Variable zu verbinden. Der Schalter bekommt Ihr Symbol, eine Variable und je eine Farbe für Aus und Ein. Nach dem Erzeugen wechselt das Symbol im Betrieb die Farbe je nach Wert der Variable. Mehr als zwei Zustände sind möglich, wenn Sie mehrere Farbbereiche vergeben. Zeichnen Sie das Symbol so, dass ein Farbwechsel der Flächen sinnvoll aussieht, denn die Aus- und Ein-Farbe überschreibt die Farben der Form.

Was Forge gerade tut

Das Ausgabe-Panel hat einen eigenen Kanal Forge: Dort sehen Sie laufend, was der Generator und die Forge-Verbindung tun — hilfreich, wenn ein Erfassen oder Ausspielen nicht das erwartete Ergebnis liefert.

Hinweise & Einschränkungen

  • Forge und das TIA-Projekt müssen verbunden sein. Fehlt eine der beiden Verbindungen oder enthält das Projekt keine PLC, weist eine Mitteilung darauf hin und es wird nichts verändert.
  • Überschreiben ist bestätigungspflichtig — gleichnamige Bausteine werden erst nach Ihrer Zustimmung ersetzt.
  • Grafische Bausteine (KOP/FUP) kann TIA Portal je nach Ziel-CPU ablehnen; SCL-Bausteine, Instanz- und Global-DBs, UDTs und Tag-Tabellen werden zuverlässig ausgespielt. Nicht übernommene Bausteine weist die Abschlussmeldung samt Grund aus.
  • Anweisungsliste-Bausteine (AWL/STL) werden beim Ausspielen vorab übersprungen und in der Abschlussmeldung mit Name und Grund genannt — statt eines Fehlers aus TIA Portal.
  • Gleiche Namen an mehreren Orten: Tragen zwei Elemente denselben Namen — etwa ein Datentyp in den PLC-Datentypen und ein gleichnamiger in einer Software Unit —, werden beide erfasst; das Element aus der Software Unit erhält in der Bibliothek eine eindeutige, an der Software Unit erkennbare Kennung. Nur identische Duplikate am selben Ort werden still übersprungen.
  • Variablentabellen aus Software Units werden beim Ausspielen derzeit vorab übersprungen und in der Abschlussmeldung mit Name und Grund genannt — das Ausspielen in Software Units wird noch nicht unterstützt.
  • Das Ausspielen verschachtelter Gruppen erfordert TIA Portal V17 oder neuer.