Files
kabellaengen/README.md
T

4.1 KiB

Kabeltool - Automatisierte Kabellängenermittlung

Automatisiertes Toolset zur Ermittlung von Kabellängen in industriellen Anlagenlayouts. Aus einer DXF-Zeichnung werden Gerätepositionen und Kabeltrassen extrahiert, optimale Kabelwege berechnet und Stücklisten mit SIVAS-Artikelnummern erzeugt.

Die Übersetzungswerkzeuge ermöglichen den einfachen Transfer der .dxf Dateien in eine andere Sprache.

Liste der vorhandenen Werkzeuge

Workflow Skript Beschreibung Ausgabe
Cable Routing getexdraw.bat Vollständige Kabelberechnung mit Wegführung und Stücklisten *_cables.dxf, *_cables.xlsx, *_BOM.xlsx
I/O Conversion ioconverter.bat Export von Gerätelisten für TIA Portal, WSCAD u.a. *-TIA.xlsx, *-WSCAD.xlsx
Text Extraction extract.bat Textextraktion aus DXF für Übersetzung *_texts.xlsx, *_texts.json
Translation tr2dxf_<lang>.bat Übersetzung von DXF-Texten (CS, EN, FR, IT, ES) *_<lang>.dxf

Verwendung

DXF-Datei per Drag & Drop auf die Desktop-Verknüpfung ziehen (erstellt via bin\dropItem_create.bat) oder direkt aufrufen:

bin\getexdraw.bat <meine_anlage.dxf>

Pipelines

Cable Routing (getexdraw.bat)

DXF-Datei
  1. getpositions.py  -->  Positionen extrahieren   -->  *_positionsdraw.json
  2. routing.py       -->  Kabelwege berechnen       -->  *_todraw.json
  3. drawdxf.py       -->  DXF + Excel erzeugen      -->  *_cables.dxf, *_cables.xlsx, *_BOM.xlsx

I/O Conversion (ioconverter.bat)

DXF-Datei
  1. getpositions.py  -->  Positionen extrahieren   -->  *_positionsconv.json
  2. portalexport.py  -->  Excel-Export erzeugen     -->  *-TIA.xlsx, *-WSCAD.xlsx, *-EA.xlsx

Text Extraction & Translation (extract.bat / tr2dxf_<lang>.bat)

DXF-Datei
  1. translate.py --extract  -->  Texte extrahieren  -->  *_texts.xlsx, *_texts.json
  2. translate.py --translate -->  Texte übersetzen   -->  *_<lang>.dxf

Installation

# Repository klonen
git clone http://gitea.schoenenberger.de/mistangl/kabellaengen.git

# Python-Abhängigkeiten installieren
bin\install_py.bat

# Desktop-Verknüpfungen erstellen
bin\dropItem_create.bat

Voraussetzung: Python 3.x (lokal installiert oder via NETWORK_INTERPRETER_PATH Umgebungsvariable).

Konfiguration

Konfigurationsdateien in cfg/ steuern das Verhalten:

Datei Zweck
allgemein.cfg Layernamen, geometrische Toleranzen
BMK.cfg Betriebsmittelkennzeichnung, Kabeltyp-Zuordnung, Routing-Regeln
kabel.cfg SIVAS-Artikelnummern je Kabeltyp und Kabellänge
bezeichner.cfg Artikelnummern-Bezeichner (automatisch aus SIVAS ergänzt)

Hinweis: Neuer BMK-Prefix muss in BMK.cfg unter [Routing-Include] und [Cable-Mapping] eingetragen werden. Die zugewiesene Kabel-Sektion muss in kabel.cfg existieren.

Tests

# Alle Tests
bin\run_tests.bat

# Einzeltest
bin\run_test.bat easy

# Unit-Tests
bin\run_unittests.bat

Projektstruktur

bin/        Batch- und Shell-Skripte
cfg/        Konfigurationsdateien
lib/        Python-Module
work/       Arbeitsverzeichnis (Ausgabedateien)
testdata/   Test-DXF-Dateien und Referenzdaten
data/       SIVAS-Artikeldaten (CSV)
doc/        Dokumentation (Deutsch)

Dokumentation

Lizenz

Intern - Schoenenberger