Windows-Einrichtung (2): PCS-Tool-Bootstrap¶
Diese Seite folgt nach Windows-Einrichtung (1) und Git- und Repository-Einrichtung. Zu diesem Zeitpunkt sollte der Engineer Git konfiguriert, den Repository-Zugriff akzeptiert und das PCS-Repository lokal geklont haben.
Gemeinsamer PCS-Tool-Bootstrap¶
Öffne ein normales Windows Terminal als Administrator, wechsle in den Repository-Root und führe den Projekt-Bootstrap-Befehl aus:
cd $env:USERPROFILE\source\pcs
.\pcs.cmd install tools
Verwende das Administrator-Windows-Terminal nur für diesen ersten Maschinen-Setup-Schritt. Nach Setup und Neustart laufen die normalen pcs ...-Befehle aus nicht erhöhten VS-Code-Terminals.
Er übernimmt:
- das Hinzufügen des Repository-Roots zum Benutzer-
PATH, - das Setzen der CurrentUser-PowerShell-Execution-Policy auf
RemoteSigned, - die Prüfung von Python für die repo-lokale virtuelle Umgebung,
- die Prüfung von Java für PlantUML,
- die Prüfung von Graphviz
dotfür das PlantUML-Layout, - die Prüfung der Mitgliedschaft in der lokalen Gruppe
Siemens TIA Openness, - die Installation fehlender Python-, Java- und Graphviz-Pakete mit
wingetnach Bestätigung, - die Installation des PlantUML-CLI-Wrappers unter
%LOCALAPPDATA%\PCS\PlantUMLnach Bestätigung.
Verwende einen trockenen Check, wenn du die Workstation nur inspizieren willst:
.\pcs.cmd install tools --check-only
Verwende die nicht interaktive Installation nur, wenn die Workstation-Policy winget-Automatisierung erlaubt:
.\pcs.cmd install tools --yes
PowerShell Execution Policy¶
.\pcs.cmd install tools setzt die CurrentUser-PowerShell-Execution-Policy automatisch auf RemoteSigned. Wenn eine Firmen- oder Domain-Policy diese Einstellung blockiert, gibt der Befehl eine Warnung und den manuellen Befehl für den Workstation-Administrator aus.
Folge danach den nächsten Schritten, die install tools ausgibt. Der Befehl prüft, ob die Gruppe Siemens TIA Openness in der aktuellen Windows-Sitzung bereits aktiv ist. Wenn sie aktiv ist, schließe das Administrator-Terminal und arbeite in VS Code weiter. Wenn sie noch nicht aktiv ist, melde dich zuerst ab und wieder an oder starte Windows neu.
Öffne anschließend das Repository in VS Code, öffne ein VS-Code-Terminal und führe aus:
pcs init
Das erstellt .venv, installiert requirements.txt, prüft pcs.config.json und führt einen MkDocs-Build aus.
Wenn die Execution Policy durch eine Workstation-Policy blockiert wird, verwende die Wrapper-Form:
.\pcs.cmd init
MkDocs-Pakete nicht nebenbei upgraden
Der Dokumentations-Stack ist in requirements.txt gepinnt. Upgrade bewusst und prüfe danach mit pcs init oder einem Docs-Build.
TIA Portal und Openness¶
Bei nativer Host-Installation installierst du TIA Portal V20 und das passende Openness-Paket manuell vor dieser Seite. In der vorkonfigurierten VM sind beide bereits installiert.
Erwarteter V20-API-Pfad:
Test-Path "C:\Program Files\Siemens\Automation\Portal V20\PublicAPI\V20\Siemens.Engineering.dll"
Info
Der PCS-Deployment-Wrapper leitet die Openness-Version aus der TIA-Projekterweiterung ab, zum Beispiel .ap20.
Openness-Benutzergruppe¶
Nach der Installation von TIA Openness muss dein Windows-Benutzer Mitglied der lokalen Openness-Gruppe sein. .\pcs.cmd install tools und pcs init prüfen das automatisch. Das Hinzufügen des Benutzers benötigt Administratorrechte, deshalb sollte der erste Lauf von .\pcs.cmd install tools aus einem als Administrator geöffneten Windows Terminal erfolgen.
Mitgliedschaft prüfen:
whoami
Get-LocalGroupMember "Siemens TIA Openness"
Wenn dein Benutzer fehlt und der Bootstrap-Befehl ihn nicht automatisch hinzufügen konnte, füge ihn aus einer erhöhten PowerShell hinzu:
Add-LocalGroupMember -Group "Siemens TIA Openness" -Member "$env:USERDOMAIN\$env:USERNAME"
Nach Gruppenänderungen abmelden
Windows lädt Gruppenmitgliedschaften beim Login. install tools prüft die aktuelle Sitzung. Wenn der Befehl meldet, dass die aktuelle Sitzung Siemens TIA Openness noch nicht enthält, melde dich ab und wieder an oder starte Windows neu.
PlantUML und Graphviz¶
Graphviz und der PlantUML-CLI-Wrapper können mit .\pcs.cmd install tools installiert werden. Java ist weiterhin erforderlich, weil der lokale PlantUML-Wrapper plantuml.jar ausführt.
Microsoft Store WinPlantUml App vermeiden
Sie stellt den vom Repository-Dokumentationsworkflow verwendeten Befehl plantuml nicht bereit. Verwende stattdessen .\pcs.cmd install tools.
Prüfe beide Befehle nach der Einrichtung:
plantuml -version
dot -V
TIA-Projektpfad konfigurieren¶
Passe den TIA Portal Projektpfad in pcs.config.json vor dem ersten echten Deployment an:
"projectPath": "%USERPROFILE%\\Documents\\TIA-Projekte\\PCS\\PCS.ap20"
Prüfe danach den aufgelösten Wert:
pcs config show
Der Pfad kann absolut sein oder Environment-Variable-Templates wie %USERPROFILE% verwenden.
PCS-Autorennamen konfigurieren¶
Generierte Baustein-Header verwenden die in pcs.config.json konfigurierte Autorenvariable.
Setze sie einmal für deinen Windows-Benutzer:
[Environment]::SetEnvironmentVariable("PCS_AUTHOR", "Max Mustermann", "User")
Öffne ein neues VS-Code-Terminal und prüfe:
$env:PCS_AUTHOR
Fallback-Variablen
Wenn PCS_AUTHOR nicht gesetzt ist, versucht die CLI Fallback-Variablen aus pcs.config.json, zum Beispiel GIT_AUTHOR_NAME, USERNAME und USER.
Erster Openness-Lauf¶
Das erste Deployment kann Folgendes auslösen:
- Windows-Firewall-Abfrage
- TIA Portal Openness-Prozessautorisierung
- TIA Portal Trust-Abfrage für die generierte CLI-Executable
Tip
Öffne das TIA-Projekt vor dem ersten Deployment manuell, wenn Abfragen bestätigt werden müssen, und führe dann ein fokussiertes Deployment ohne Compile aus:
pcs deploy plcs=PLC_1 blocks=FB_AlarmRouting no-compile
Abschließender Check¶
Öffne nach der Einrichtung ein neues Terminal und prüfe:
git --version
python --version
pcs config show
pcs list blocks
pcs docs build
plantuml -version
dot -V
Erwartetes Ergebnis
pcs config show sollte den aufgelösten TIA-Projektpfad, den Exports-Root, die PLC-Liste, die Autorenvariable und den Autorenwert ausgeben. pcs list blocks sollte Quelldateien aus tia\exports auflisten. pcs docs build sollte ohne Fehler abschließen.
Nächster Schritt¶
Fahre mit dem ersten Smoke-Test fort. Diese Seite baut das lokale Openness-Tooling und führt die erste sichere Deployment-Vorschau aus.