Files
HundM_Fortna/CLAUDE.md
T

113 lines
4.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# CLAUDE.md — Projektübersicht HundM_Fortna
## Projektbeschreibung
Siemens TIA Portal / STEP 7 SPS-Projekt für ein Fördertechnik-Automatisierungssystem (Kunde: Hund & Metzler, System: Fortna WES/WCS).
Das Repository enthält den exportierten SCL-Quellcode (Structured Control Language, IEC 61131-3) von **5 SPS-Konfigurationen** (Steuerungen), die gemeinsam eine Förderanlage steuern.
---
## Repository-Struktur
```
HundM_Fortna/
├── =A01+UH01-KF00/ # SPS-Konfiguration UH01 (Steuerung 1)
├── =A01+UH02-KF00/ # SPS-Konfiguration UH02 (Steuerung 2)
├── =A01+UH03-KF00/ # SPS-Konfiguration UH03 (Steuerung 3)
├── =A01+UH04-KF00/ # SPS-Konfiguration UH04 (Steuerung 4)
├── =A01+UH05-KF00/ # SPS-Konfiguration UH05 (Steuerung 5)
├── .vci/ # TIA Portal VCS-Workspace-Konfiguration
└── SCL_Analyse_Standardisierung.md # Analyse: Duplikate / Standardisierungspotenzial
```
### Konfigurationsname-Schema
`=A01+UH0x-KF00`
- `A01` = Anlage / Projekt-ID
- `UH0x` = Unit Handler / Steuerungsnummer (0105)
- `KF00` = Konfigurationsbezeichner
### Struktur je Konfiguration (Unterordner)
Jede `=A01+UH0x-KF00/`-Konfiguration enthält:
```
PLC-Datentypen/ # UDTs (User Defined Types), als .xml / .liblink
Programmbausteine/ # SCL-Bausteine (FB, FC, OB) — projektspezifisch
├── 050_Sensors/ # Sensoraufruf
├── 075_PreMain/ # Vorverarbeitung
├── 100_Main/ # Hauptprogramm
├── 200_MFR/ # Material Flow Routing
├── 400_BasicFunctions/ # Hilfsfunktionen (FC)
├── 700_Jams/ # Staubehandlung
├── 800_Storage/ # Puffer / Lagerverwaltung (nur UH02/UH03)
├── 900_Communications/ # Fortna WES-WCS Kommunikation
├── 970_Visu/ # HMI-Visualisierung
├── PROFINET/ # PROFINET-Diagnose
├── SCADA/ # OPC-UA / SCADA-Anbindung
├── Längenmessung/ # Längenmessung (UH01, UH05)
├── _AutomatedIntelligence/# KI-gestützte Lagerlogik (UH02, UH03)
├── _CPU-CPU-Exchange/ # SPS-zu-SPS-Kommunikation (UH02, UH03)
└── _IBN/ # Inbetriebnahme / Testbausteine
Bibliotheksreferenzen/ # Verweise auf externe Libs (BaseSystemLib, ILSLib)
```
---
## Verwendete Bibliotheken (bereits bibliothekarisiert)
| Bibliothek | Beschreibung |
|---|---|
| `BaseSystemLib` | Siemens-Basisbausteine: Zustandsmaschinen, Sensoren, PROFINET, Monitoring, TCP, Safety |
| `ILSLib` / `2_ILSLib` | Integrated Logistics System: Carrier-Tracking, Separator, Priority Manager, Switch |
Diese Bibliotheken sind **nicht** im Git-Repository als Quellcode enthalten, sondern nur als `.liblink`-Referenzen (Verweise auf externe Bibliotheksdateien).
---
## Technologie-Stack
| Bereich | Technologie |
|---|---|
| SPS-Plattform | Siemens S7 (TIA Portal) |
| Programmiersprache | SCL (Structured Control Language, IEC 61131-3) |
| Versionskontrolle | TIA Portal VCS (.vci), Git |
| Feldbus | PROFINET |
| SCADA | OPC-UA |
| WES/WCS-Kommunikation | TCP/IP — Fortna-Telegrammprotokoll |
| Barcode-Erkennung | Cognex DM-Scanner |
| Carrier-Tracking | ILS (Integrated Logistics System) |
---
## Wichtige Konzepte
- **Carrier**: Transporteinheit (Tablar/Tray) auf der Foerderanlage; wird mit Barcode identifiziert und durch das System geroutet
- **TRO** (Transfer Object): Datenobjekt fuer den Carrier-Transport zwischen Stationen
- **WES** (Warehouse Execution System) / **WCS** (Warehouse Control System): Uebergeordnete Leitsysteme, die per TCP-Telegramm mit den SPSen kommunizieren
- **MFR** (Material Flow Routing): Logik fuer die Weichensteuerung und Carrier-Verteilung
- **Separator**: Vereinzelungseinheit fuer Carrier
- **Jam**: Stau auf der Foerderstrecke
---
## Standardisierungsanalyse
Die Datei [SCL_Analyse_Standardisierung.md](SCL_Analyse_Standardisierung.md) dokumentiert das Ergebnis einer Duplikatanalyse ueber alle 5 Konfigurationen (Stand: 2026-06-23):
- **49 Bausteine** mit Standardisierungspotenzial identifiziert
- **22 Bausteine (P1)** sind in allen 5 Konfigurationen identisch vorhanden → sofort in gemeinsame Projektbibliothek auslagern
- **Top-5 Quick Wins**: `FC_GET_PROFINET_DEVICE_STATES`, `FB-OPC_UA_System-Stat`, `Programming error` (OB), String-Konvertierungen, `FB_CommunicationLogger`
- Sonderanalyse: Versionschaos bei `StockRemoval`-Bausteinen in UH02/UH03
---
## Arbeitsweise mit diesem Repository
- Dateien werden aus TIA Portal exportiert (SCL-Export) und per Git versioniert
- Aenderungen werden in TIA Portal gemacht, exportiert und dann committed
- `.scl`-Dateien enthalten den Quellcode der Bausteine; `.xml`-Dateien enthalten UDTs und Datenbloecke
- `.liblink`-Dateien sind nur Referenzen auf externe Bibliotheken (kein Quellcode)
- Die `.vci/`-Konfiguration steuert das TIA Portal VCS-Verhalten